diff --git a/DEPS b/DEPS
index 3743a0d..ab4e433 100644
--- a/DEPS
+++ b/DEPS
@@ -167,7 +167,7 @@
   # 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': '647c7a97d32d2ac39150b067f17bcfeddcb189da',
+  'skia_revision': 'a718a61003d1e58c225b600cde9322f1c6ab3998',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling V8
   # and whatever else without interference from each other.
@@ -179,11 +179,11 @@
   # 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': 'e94f473753bea6cb8ddbfa5e894f55e4a272bf28',
+  'angle_revision': '2682b5a02d16d03094e579fea17c802b23999251',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling SwiftShader
   # and whatever else without interference from each other.
-  'swiftshader_revision': '036463457e5f11a9257553fadb5e8c193bec6f7e',
+  'swiftshader_revision': 'ae022faf53b9f648324874063d7147ba7b555417',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling PDFium
   # and whatever else without interference from each other.
@@ -862,7 +862,7 @@
 
   # Build tools for Chrome OS. Note: This depends on third_party/pyelftools.
   'src/third_party/chromite': {
-      'url': Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '37a1d28c005888adf7f0f471f1f989b0c566e835',
+      'url': Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '40324d671c257be329238223356da4e77ab16540',
       'condition': 'checkout_linux',
   },
 
@@ -887,7 +887,7 @@
   },
 
   'src/third_party/depot_tools':
-    Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '4102985e142727b11c90f9a1eb77fe8b81963f50',
+    Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '3306bbe476fd4b069aad347afdd5b4e3564234aa',
 
   'src/third_party/devtools-node-modules':
     Var('chromium_git') + '/external/github.com/ChromeDevTools/devtools-node-modules' + '@' + Var('devtools_node_modules_revision'),
@@ -956,7 +956,7 @@
   },
 
   'src/third_party/glslang/src':
-    Var('chromium_git') + '/external/github.com/KhronosGroup/glslang.git' + '@' + '34cccdc65d79fda20fa7a3eac271add45493cacb',
+    Var('chromium_git') + '/external/github.com/KhronosGroup/glslang.git' + '@' + '4b97a1108114107a8082a55e9e0721a40f9536d3',
 
   'src/third_party/google_toolbox_for_mac/src': {
       'url': Var('chromium_git') + '/external/github.com/google/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
@@ -1280,7 +1280,7 @@
   },
 
   'src/third_party/perfetto':
-    Var('android_git') + '/platform/external/perfetto.git' + '@' + 'f4389a6ddae53ba6e9ea2c9212ef3603ca676caf',
+    Var('android_git') + '/platform/external/perfetto.git' + '@' + '603e7a0e5a97307a45bfe5903be23c6e384393be',
 
   'src/third_party/perl': {
       'url': Var('chromium_git') + '/chromium/deps/perl.git' + '@' + '6f3e5028eb65d0b4c5fdd792106ac4c84eee1eb3',
@@ -1470,7 +1470,7 @@
     Var('chromium_git') + '/external/khronosgroup/webgl.git' + '@' + '7c4e67ff117d6c640e6dd17989afe2fb7da7eecb',
 
   'src/third_party/webrtc':
-    Var('webrtc_git') + '/src.git' + '@' + 'b441acf656520aa6ff9d8864b0aa1b065f1771c8',
+    Var('webrtc_git') + '/src.git' + '@' + 'a639f7a2447777d126b25bdf1536c22e3f698c49',
 
   'src/third_party/xdg-utils': {
       'url': Var('chromium_git') + '/chromium/deps/xdg-utils.git' + '@' + 'd80274d5869b17b8c9067a1022e4416ee7ed5e0d',
@@ -1532,7 +1532,7 @@
     Var('chromium_git') + '/v8/v8.git' + '@' +  Var('v8_revision'),
 
   'src-internal': {
-    'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@af16026220a05afda7de692c707e873687500df4',
+    'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@fa01042385e555b5340e1e732038fba9929bae29',
     'condition': 'checkout_src_internal',
   },
 
@@ -3110,7 +3110,6 @@
         'src/third_party/blink/renderer/build/scripts',
         'src/third_party/blink/tools',  # See http://crbug.com/625877.
         'src/third_party/catapult',
-        'src/third_party/closure_compiler/build',
         'src/tools',
     ],
   },
diff --git a/WATCHLISTS b/WATCHLISTS
index 9c06409d..f6e375c3 100644
--- a/WATCHLISTS
+++ b/WATCHLISTS
@@ -2095,7 +2095,6 @@
     'blink_layers': ['blink-layers+watch@chromium.org'],
     'blink_layout': ['blink-reviews-layout@chromium.org',
                      'eae+blinkwatch@chromium.org',
-                     'pdr+renderingwatchlist@chromium.org',
                      'szager+layoutwatch@chromium.org',
                      'zoltan@webkit.org'],
     'blink_layout_ng': ['cbiesinger@chromium.org',
diff --git a/android_webview/browser/aw_feature_list_creator.cc b/android_webview/browser/aw_feature_list_creator.cc
index 21d08d1..fdb0b75 100644
--- a/android_webview/browser/aw_feature_list_creator.cc
+++ b/android_webview/browser/aw_feature_list_creator.cc
@@ -51,6 +51,8 @@
     // Random seed value for variation's entropy providers. Used to assign
     // experiment groups.
     metrics::prefs::kMetricsLowEntropySource,
+    // Logged directly in the ChromeUserMetricsExtension proto.
+    metrics::prefs::kMetricsSessionID,
     // Current and past country codes, to filter variations studies by country.
     variations::prefs::kVariationsCountry,
     variations::prefs::kVariationsPermanentConsistencyCountry,
diff --git a/ash/app_list/views/search_result_page_view.cc b/ash/app_list/views/search_result_page_view.cc
index 3b4966c..a54dac8 100644
--- a/ash/app_list/views/search_result_page_view.cc
+++ b/ash/app_list/views/search_result_page_view.cc
@@ -58,6 +58,9 @@
 // due to the round up.
 constexpr int kSearchBoxBottomSpacing = 1;
 
+// Minimum spacing between shelf and bottom of search box.
+constexpr int kSearchResultPageMinimumBottomMargin = 24;
+
 constexpr SkColor kSeparatorColor = SkColorSetA(gfx::kGoogleGrey900, 0x24);
 
 // The shadow elevation value for the shadow of the expanded search box.
@@ -268,10 +271,11 @@
 }
 
 void SearchResultPageView::OnBoundsChanged(const gfx::Rect& previous_bounds) {
-  // This bounds change is produced by search result movement (rotation, etc)
-  // and all content has to follow.
-  if (previous_bounds != GetContentsBounds())
-    layer()->SetClipRect(GetContentsBounds());
+  // The clip rect set for page state animations needs to be reset when the
+  // bounds change because page size change invalidates the previous bounds.
+  // This allows content to properly follow target bounds when screen rotates.
+  if (previous_bounds.size() != bounds().size())
+    layer()->SetClipRect(gfx::Rect());
 }
 
 void SearchResultPageView::ReorderSearchResultContainers() {
@@ -529,8 +533,16 @@
     // Hides this view behind the search box by using the same bounds.
     return search_box_bounds;
   }
-  return gfx::Rect(search_box_bounds.origin(),
-                   gfx::Size(search_box_bounds.width(), kHeight));
+
+  gfx::Rect bounding_rect = contents_bounds;
+  bounding_rect.Inset(0, 0, 0, kSearchResultPageMinimumBottomMargin);
+
+  gfx::Rect preferred_bounds =
+      gfx::Rect(search_box_bounds.origin(),
+                gfx::Size(search_box_bounds.width(), kHeight));
+  preferred_bounds.Intersect(bounding_rect);
+
+  return preferred_bounds;
 }
 
 views::View* SearchResultPageView::GetFirstFocusableView() {
diff --git a/ash/public/cpp/app_list/app_list_mojom_traits.cc b/ash/public/cpp/app_list/app_list_mojom_traits.cc
deleted file mode 100644
index 06ec819c5..0000000
--- a/ash/public/cpp/app_list/app_list_mojom_traits.cc
+++ /dev/null
@@ -1,41 +0,0 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "ash/public/cpp/app_list/app_list_mojom_traits.h"
-
-#include "mojo/public/cpp/base/string16_mojom_traits.h"
-#include "ui/gfx/image/mojom/image_skia_mojom_traits.h"
-#include "ui/gfx/range/mojom/range_mojom_traits.h"
-
-namespace mojo {
-
-////////////////////////////////////////////////////////////////////////////////
-// SearchResultTag:
-
-// static
-bool StructTraits<ash::mojom::SearchResultTagDataView, ash::SearchResultTag>::
-    Read(ash::mojom::SearchResultTagDataView data, ash::SearchResultTag* out) {
-  if (!data.ReadRange(&out->range))
-    return false;
-  out->styles = data.styles();
-  return true;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-// SearchResultAction:
-
-// static
-bool StructTraits<
-    ash::mojom::SearchResultActionDataView,
-    ash::SearchResultAction>::Read(ash::mojom::SearchResultActionDataView data,
-                                   ash::SearchResultAction* out) {
-  if (!data.ReadTooltipText(&out->tooltip_text))
-    return false;
-  if (!data.ReadImage(&out->image))
-    return false;
-  out->visible_on_hover = data.visible_on_hover();
-  return true;
-}
-
-}  // namespace mojo
diff --git a/ash/public/cpp/app_list/app_list_mojom_traits.h b/ash/public/cpp/app_list/app_list_mojom_traits.h
deleted file mode 100644
index 3dfb1f8..0000000
--- a/ash/public/cpp/app_list/app_list_mojom_traits.h
+++ /dev/null
@@ -1,247 +0,0 @@
-// Copyright 2018 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 ASH_PUBLIC_CPP_APP_LIST_APP_LIST_MOJOM_TRAITS_H_
-#define ASH_PUBLIC_CPP_APP_LIST_APP_LIST_MOJOM_TRAITS_H_
-
-#include "ash/public/cpp/app_list/app_list_types.h"
-#include "ash/public/cpp/ash_public_export.h"
-#include "ash/public/mojom/app_list.mojom-shared.h"
-#include "base/containers/span.h"
-#include "base/strings/string16.h"
-#include "mojo/public/mojom/base/string16.mojom.h"
-
-namespace mojo {
-
-////////////////////////////////////////////////////////////////////////////////
-// AppListState:
-
-template <>
-struct EnumTraits<ash::mojom::AppListState, ash::AppListState> {
-  static ash::mojom::AppListState ToMojom(ash::AppListState input) {
-    switch (input) {
-      case ash::AppListState::kStateApps:
-        return ash::mojom::AppListState::kStateApps;
-      case ash::AppListState::kStateSearchResults:
-        return ash::mojom::AppListState::kStateSearchResults;
-      case ash::AppListState::kStateStart_DEPRECATED:
-        return ash::mojom::AppListState::kStateStart_DEPRECATED;
-      case ash::AppListState::kStateEmbeddedAssistant:
-        return ash::mojom::AppListState::kStateEmbeddedAssistant;
-      case ash::AppListState::kInvalidState:
-        break;
-    }
-    NOTREACHED();
-    return ash::mojom::AppListState::kStateApps;
-  }
-
-  static bool FromMojom(ash::mojom::AppListState input,
-                        ash::AppListState* out) {
-    switch (input) {
-      case ash::mojom::AppListState::kStateApps:
-        *out = ash::AppListState::kStateApps;
-        return true;
-      case ash::mojom::AppListState::kStateSearchResults:
-        *out = ash::AppListState::kStateSearchResults;
-        return true;
-      case ash::mojom::AppListState::kStateStart_DEPRECATED:
-        *out = ash::AppListState::kStateStart_DEPRECATED;
-        return true;
-      case ash::mojom::AppListState::kStateEmbeddedAssistant:
-        *out = ash::AppListState::kStateEmbeddedAssistant;
-        return true;
-    }
-    NOTREACHED();
-    return false;
-  }
-};
-
-////////////////////////////////////////////////////////////////////////////////
-// AppListModelStatus:
-
-template <>
-struct EnumTraits<ash::mojom::AppListModelStatus, ash::AppListModelStatus> {
-  static ash::mojom::AppListModelStatus ToMojom(ash::AppListModelStatus input) {
-    switch (input) {
-      case ash::AppListModelStatus::kStatusNormal:
-        return ash::mojom::AppListModelStatus::kStatusNormal;
-      case ash::AppListModelStatus::kStatusSyncing:
-        return ash::mojom::AppListModelStatus::kStatusSyncing;
-    }
-    NOTREACHED();
-    return ash::mojom::AppListModelStatus::kStatusNormal;
-  }
-
-  static bool FromMojom(ash::mojom::AppListModelStatus input,
-                        ash::AppListModelStatus* out) {
-    switch (input) {
-      case ash::mojom::AppListModelStatus::kStatusNormal:
-        *out = ash::AppListModelStatus::kStatusNormal;
-        return true;
-      case ash::mojom::AppListModelStatus::kStatusSyncing:
-        *out = ash::AppListModelStatus::kStatusSyncing;
-        return true;
-    }
-    NOTREACHED();
-    return false;
-  }
-};
-
-////////////////////////////////////////////////////////////////////////////////
-// SearchResultType:
-
-template <>
-struct EnumTraits<ash::mojom::SearchResultType, ash::SearchResultType> {
-  static ash::mojom::SearchResultType ToMojom(ash::SearchResultType input) {
-    switch (input) {
-      case ash::SearchResultType::kInstalledApp:
-        return ash::mojom::SearchResultType::kInstalledApp;
-      case ash::SearchResultType::kPlayStoreApp:
-        return ash::mojom::SearchResultType::kPlayStoreApp;
-      case ash::SearchResultType::kInstantApp:
-        return ash::mojom::SearchResultType::kInstantApp;
-      case ash::SearchResultType::kInternalApp:
-        return ash::mojom::SearchResultType::kInternalApp;
-      case ash::SearchResultType::kOmnibox:
-        return ash::mojom::SearchResultType::kOmnibox;
-      case ash::SearchResultType::kLauncher:
-        return ash::mojom::SearchResultType::kLauncher;
-      case ash::SearchResultType::kAnswerCard:
-        return ash::mojom::SearchResultType::kAnswerCard;
-      case ash::SearchResultType::kPlayStoreReinstallApp:
-        return ash::mojom::SearchResultType::kPlayStoreReinstallApp;
-      case ash::SearchResultType::kArcAppShortcut:
-        return ash::mojom::SearchResultType::kArcAppShortcut;
-      case ash::SearchResultType::kUnknown:
-        break;
-    }
-    NOTREACHED();
-    return ash::mojom::SearchResultType::kInstalledApp;
-  }
-
-  static bool FromMojom(ash::mojom::SearchResultType input,
-                        ash::SearchResultType* out) {
-    switch (input) {
-      case ash::mojom::SearchResultType::kInstalledApp:
-        *out = ash::SearchResultType::kInstalledApp;
-        return true;
-      case ash::mojom::SearchResultType::kPlayStoreApp:
-        *out = ash::SearchResultType::kPlayStoreApp;
-        return true;
-      case ash::mojom::SearchResultType::kInstantApp:
-        *out = ash::SearchResultType::kInstantApp;
-        return true;
-      case ash::mojom::SearchResultType::kInternalApp:
-        *out = ash::SearchResultType::kInternalApp;
-        return true;
-      case ash::mojom::SearchResultType::kOmnibox:
-        *out = ash::SearchResultType::kOmnibox;
-        return true;
-      case ash::mojom::SearchResultType::kLauncher:
-        *out = ash::SearchResultType::kLauncher;
-        return true;
-      case ash::mojom::SearchResultType::kAnswerCard:
-        *out = ash::SearchResultType::kAnswerCard;
-        return true;
-      case ash::mojom::SearchResultType::kPlayStoreReinstallApp:
-        *out = ash::SearchResultType::kPlayStoreReinstallApp;
-        return true;
-      case ash::mojom::SearchResultType::kArcAppShortcut:
-        *out = ash::SearchResultType::kArcAppShortcut;
-        return true;
-    }
-    NOTREACHED();
-    return false;
-  }
-};
-
-////////////////////////////////////////////////////////////////////////////////
-// SearchResultDisplayType:
-
-template <>
-struct EnumTraits<ash::mojom::SearchResultDisplayType,
-                  ash::SearchResultDisplayType> {
-  static ash::mojom::SearchResultDisplayType ToMojom(
-      ash::SearchResultDisplayType input) {
-    switch (input) {
-      case ash::SearchResultDisplayType::kNone:
-        return ash::mojom::SearchResultDisplayType::kNone;
-      case ash::SearchResultDisplayType::kList:
-        return ash::mojom::SearchResultDisplayType::kList;
-      case ash::SearchResultDisplayType::kTile:
-        return ash::mojom::SearchResultDisplayType::kTile;
-      case ash::SearchResultDisplayType::kRecommendation:
-        return ash::mojom::SearchResultDisplayType::kRecommendation;
-      case ash::SearchResultDisplayType::kCard:
-        return ash::mojom::SearchResultDisplayType::kCard;
-      case ash::SearchResultDisplayType::kLast:
-        break;
-    }
-    NOTREACHED();
-    return ash::mojom::SearchResultDisplayType::kNone;
-  }
-
-  static bool FromMojom(ash::mojom::SearchResultDisplayType input,
-                        ash::SearchResultDisplayType* out) {
-    switch (input) {
-      case ash::mojom::SearchResultDisplayType::kNone:
-        *out = ash::SearchResultDisplayType::kNone;
-        return true;
-      case ash::mojom::SearchResultDisplayType::kList:
-        *out = ash::SearchResultDisplayType::kList;
-        return true;
-      case ash::mojom::SearchResultDisplayType::kTile:
-        *out = ash::SearchResultDisplayType::kTile;
-        return true;
-      case ash::mojom::SearchResultDisplayType::kRecommendation:
-        *out = ash::SearchResultDisplayType::kRecommendation;
-        return true;
-      case ash::mojom::SearchResultDisplayType::kCard:
-        *out = ash::SearchResultDisplayType::kCard;
-        return true;
-    }
-    NOTREACHED();
-    return false;
-  }
-};
-
-////////////////////////////////////////////////////////////////////////////////
-// SearchResultTag:
-
-template <>
-struct StructTraits<ash::mojom::SearchResultTagDataView, ash::SearchResultTag> {
-  static int styles(const ash::SearchResultTag& tag) { return tag.styles; }
-  static const gfx::Range& range(const ash::SearchResultTag& tag) {
-    return tag.range;
-  }
-  static bool Read(ash::mojom::SearchResultTagDataView data,
-                   ash::SearchResultTag* out);
-};
-
-////////////////////////////////////////////////////////////////////////////////
-// SearchResultAction:
-
-template <>
-struct StructTraits<ash::mojom::SearchResultActionDataView,
-                    ash::SearchResultAction> {
-  static bool Read(ash::mojom::SearchResultActionDataView data,
-                   ash::SearchResultAction* out);
-
-  static const base::string16& tooltip_text(
-      const ash::SearchResultAction& action) {
-    return action.tooltip_text;
-  }
-
-  static const gfx::ImageSkia& image(const ash::SearchResultAction& action) {
-    return action.image;
-  }
-
-  static bool visible_on_hover(const ash::SearchResultAction& action) {
-    return action.visible_on_hover;
-  }
-};
-
-}  // namespace mojo
-
-#endif  // ASH_PUBLIC_CPP_APP_LIST_APP_LIST_MOJOM_TRAITS_H_
diff --git a/ash/strings/ash_strings_am.xtb b/ash/strings/ash_strings_am.xtb
index a0384f8..bf7482ad 100644
--- a/ash/strings/ash_strings_am.xtb
+++ b/ash/strings/ash_strings_am.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">በማንጸባረቅ ላይ</translation>
 <translation id="4281007048406351813">ወደ ጊዜ ቆጣሪው 1 ደቂቃ ያክሉ</translation>
 <translation id="4296136865091727875">ሁሉንም <ph name="COUNT" /> ማሳወቂያዎች አጽዳ</translation>
+<translation id="4303223480529385476">የሁኔታ አካባቢን ዘርጋ</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">የከፍተኛ ንጽጽር የቁልፍ ሰሌዳ አቋራጩን ተጭነዋል። ሊያበሩት ይፈልጋሉ?</translation>
 <translation id="4331809312908958774">Chrome ስርዓተ ክወና</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" /> ላይ ተመልሰው ይምጡ።</translation>
 <translation id="7025533177575372252">የእርስዎን <ph name="DEVICE_NAME" /> ከስልክዎ ጋር ያገናኙት</translation>
 <translation id="7029814467594812963">ከክፍለ-ጊዜ ውጣ</translation>
+<translation id="7042322267639375032">የሁኔታ አካባቢን ሰብስብ</translation>
 <translation id="7066646422045619941">ይህ አውታረ መረብ በአስተዳዳሪዎ ነው የተሰናከለው።</translation>
 <translation id="7067196344162293536">በራስ-አሽከርክር</translation>
 <translation id="7068360136237591149">ፋይሎችን ይክፈቱ</translation>
diff --git a/ash/strings/ash_strings_ar.xtb b/ash/strings/ash_strings_ar.xtb
index 1380e73..b6022738 100644
--- a/ash/strings/ash_strings_ar.xtb
+++ b/ash/strings/ash_strings_ar.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">النسخ المطابق</translation>
 <translation id="4281007048406351813">إضافة دقيقة واحدة إلى الموقِّت</translation>
 <translation id="4296136865091727875">محو جميع الإشعارات التي يبلغ عددها <ph name="COUNT" /></translation>
+<translation id="4303223480529385476">توسيع منطقة الحالة</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">لقد ضغطت على اختصار لوحة المفاتيح للتباين العالي. هل ترغب في تفعيله؟</translation>
 <translation id="4331809312908958774">‏نظام تشغيل Chrome</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">يمكنك العودة لاستخدام الجهاز في <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">يمكنك ربط الجهاز <ph name="DEVICE_NAME" /> بهاتفك</translation>
 <translation id="7029814467594812963">إنهاء الجلسة</translation>
+<translation id="7042322267639375032">تصغير منطقة الحالة</translation>
 <translation id="7066646422045619941">تم إيقاف هذه الشبكة من قِبل مشرفك.</translation>
 <translation id="7067196344162293536">تدوير تلقائي</translation>
 <translation id="7068360136237591149">فتح الملفات</translation>
diff --git a/ash/strings/ash_strings_bg.xtb b/ash/strings/ash_strings_bg.xtb
index e716b91..df5f880a 100644
--- a/ash/strings/ash_strings_bg.xtb
+++ b/ash/strings/ash_strings_bg.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Дублиране</translation>
 <translation id="4281007048406351813">Добавяне на 1 минута към таймера</translation>
 <translation id="4296136865091727875">Изчистване на всичките <ph name="COUNT" /> известия</translation>
+<translation id="4303223480529385476">Разгъване на лентата на състоянието</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Използвахте клавишната комбинация за режима на висок контраст. Искате ли да го включите?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Ще бъда отново на ваше разположение в <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Свързване на устройството ви <ph name="DEVICE_NAME" /> с телефона ви</translation>
 <translation id="7029814467594812963">Изход от сесията</translation>
+<translation id="7042322267639375032">Свиване на лентата на състоянието</translation>
 <translation id="7066646422045619941">Тази мрежа е деактивирана от администратора ви.</translation>
 <translation id="7067196344162293536">Автоматично завъртане</translation>
 <translation id="7068360136237591149">„Open files“ („Отвори файлове“)</translation>
diff --git a/ash/strings/ash_strings_bn.xtb b/ash/strings/ash_strings_bn.xtb
index 05ff540b..46a4a14 100644
--- a/ash/strings/ash_strings_bn.xtb
+++ b/ash/strings/ash_strings_bn.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">অনুকরণ করা হচ্ছে</translation>
 <translation id="4281007048406351813">টাইমারে ১ মিনিট যোগ করুন</translation>
 <translation id="4296136865091727875"><ph name="COUNT" />টি বিজ্ঞপ্তি মুছে ফেলুন</translation>
+<translation id="4303223480529385476">স্ট্যাটাস এরিয়া বড় করুন</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">উচ্চ কনট্রাস্টের জন্য আপনি কীবোর্ড শর্টকাট টিপেছেন। আপনি কি এটি চালু করতে চান?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" />-এ আবার ব্যবহার করতে পারবেন।</translation>
 <translation id="7025533177575372252"><ph name="DEVICE_NAME" />-কে আপনার ফোনের সাথে কানেক্ট করুন</translation>
 <translation id="7029814467594812963">সেশন থেকে প্রস্থান</translation>
+<translation id="7042322267639375032">স্ট্যাটাস এরিয়া আড়াল করুন</translation>
 <translation id="7066646422045619941">এই নেটওয়ার্কটি আপনার প্রশাসকের দ্বারা অক্ষম করা হয়েছে৷</translation>
 <translation id="7067196344162293536">স্বতঃ ঘূর্ণন</translation>
 <translation id="7068360136237591149">ফাইল খুলুন</translation>
diff --git a/ash/strings/ash_strings_ca.xtb b/ash/strings/ash_strings_ca.xtb
index 38086f9..9c430111 100644
--- a/ash/strings/ash_strings_ca.xtb
+++ b/ash/strings/ash_strings_ca.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">S'està creant una rèplica</translation>
 <translation id="4281007048406351813">Afegeix 1 minut al temporitzador</translation>
 <translation id="4296136865091727875">Esborra les <ph name="COUNT" /> notificacions</translation>
+<translation id="4303223480529385476">Desplega l'àrea d'estat</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Has premut la tecla de drecera de l'alt contrast. Vols activar-lo?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Pots tornar a aquesta hora: <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Connecta <ph name="DEVICE_NAME" /> al telèfon</translation>
 <translation id="7029814467594812963">Tanca la sessió</translation>
+<translation id="7042322267639375032">Replega l'àrea d'estat</translation>
 <translation id="7066646422045619941">L'administrador ha desactivat aquesta xarxa.</translation>
 <translation id="7067196344162293536">Rotació automàtica</translation>
 <translation id="7068360136237591149">Obre fitxers</translation>
diff --git a/ash/strings/ash_strings_cs.xtb b/ash/strings/ash_strings_cs.xtb
index 6579abb0..8aaaa1c0 100644
--- a/ash/strings/ash_strings_cs.xtb
+++ b/ash/strings/ash_strings_cs.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Zrcadlení</translation>
 <translation id="4281007048406351813">Přidat k časovači 1 min</translation>
 <translation id="4296136865091727875">Vymazat všechna oznámení (<ph name="COUNT" />)</translation>
+<translation id="4303223480529385476">Rozbalit stavovou oblast</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Stiskli jste klávesovou zkratku pro vysoký kontrast. Chcete ho zapnout?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Vraťte se v <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Propojte zařízení <ph name="DEVICE_NAME" /> s telefonem</translation>
 <translation id="7029814467594812963">Ukončit relaci</translation>
+<translation id="7042322267639375032">Sbalit stavovou oblast</translation>
 <translation id="7066646422045619941">Tato síť je zakázána vaším administrátorem.</translation>
 <translation id="7067196344162293536">Automatické otáčení</translation>
 <translation id="7068360136237591149">Otevřít soubory</translation>
diff --git a/ash/strings/ash_strings_da.xtb b/ash/strings/ash_strings_da.xtb
index 18672fa..8f7a697 100644
--- a/ash/strings/ash_strings_da.xtb
+++ b/ash/strings/ash_strings_da.xtb
@@ -224,13 +224,14 @@
 <translation id="4181841719683918333">Sprog</translation>
 <translation id="4195877955194704651">Knap til automatisk klik</translation>
 <translation id="4217571870635786043">Diktering</translation>
-<translation id="421885205185866088">Pinkode til Smart Card for <ph name="USER_EMAIL_ADDRESS" /></translation>
+<translation id="421885205185866088">Pinkode til chipkort for <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="4239069858505860023">GPRS</translation>
 <translation id="4261870227682513959">Vis indstillinger for notifikationer. Notifikationer er slået fra</translation>
 <translation id="4269883910223712419">Administratoren af denne enhed kan gøre følgende:</translation>
 <translation id="4279490309300973883">Spejling</translation>
 <translation id="4281007048406351813">Føj 1 minut til timeren</translation>
 <translation id="4296136865091727875">Ryd alle <ph name="COUNT" /> notifikationer</translation>
+<translation id="4303223480529385476">Udvid statusområde</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Du trykkede på tastaturgenvejen for høj kontrast. Vil du aktivere indstillingen?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -341,7 +342,7 @@
 <translation id="6043212731627905357">Denne skærm fungerer ikke sammen med <ph name="DEVICE_TYPE" /> (skærmen understøttes ikke).</translation>
 <translation id="6043994281159824495">Log ud nu</translation>
 <translation id="6047696787498798094">Skærmdeling ophører, når du skifter til en anden bruger. Vil du fortsætte?</translation>
-<translation id="6054305421211936131">Log ind med Smart Card</translation>
+<translation id="6054305421211936131">Log ind med chipkort</translation>
 <translation id="6062360702481658777">Du bliver automatisk logget ud om <ph name="LOGOUT_TIME_LEFT" />.</translation>
 <translation id="6064337552080329342">Din adgangskode blev ikke bekræftet. Prøv igen.</translation>
 <translation id="607652042414456612">Din computer kan registreres af Bluetooth-enheder i nærheden, og den vil blive vist som "<ph name="NAME" />" med adressen <ph name="ADDRESS" /></translation>
@@ -370,7 +371,7 @@
 <translation id="6459472438155181876">Udvider skærmen til <ph name="DISPLAY_NAME" /></translation>
 <translation id="6482559668224714696">Forstørrelse af fuld skærm</translation>
 <translation id="6490471652906364588">USB-C-enhed (højre port)</translation>
-<translation id="649452524636452238">Pinkode til Smart Card</translation>
+<translation id="649452524636452238">Pinkode til chipkort</translation>
 <translation id="6501401484702599040">Caster skærmen til <ph name="RECEIVER_NAME" /></translation>
 <translation id="6521655319214113338">Indtastning via håndskrift</translation>
 <translation id="6528179044667508675">Vil ikke forstyrres</translation>
@@ -400,13 +401,14 @@
 <translation id="6857811139397017780">Aktivér <ph name="NETWORKSERVICE" /></translation>
 <translation id="6910714959251846841">Denne opdatering kræver, at der udføres en powerwash på din enhed. Få flere oplysninger om den nyeste <ph name="SYSTEM_APP_NAME" />-opdatering.</translation>
 <translation id="6911468394164995108">Vælg et andet...</translation>
-<translation id="6919251195245069855">Dit Smart Card kunne ikke genkendes. Prøv igen.</translation>
+<translation id="6919251195245069855">Dit chipkort blev ikke genkendt. Prøv igen.</translation>
 <translation id="6972754398087986839">Kom godt i gang</translation>
 <translation id="6981982820502123353">Hjælpefunktioner</translation>
 <translation id="698231206551913481">Alle filer og lokale data, der er knyttet til denne bruger, slettes permanent, når brugeren fjernes.</translation>
 <translation id="7015766095477679451">Vend tilbage kl. <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Slut <ph name="DEVICE_NAME" /> til din telefon</translation>
 <translation id="7029814467594812963">Afslut session</translation>
+<translation id="7042322267639375032">Skjul statusområde</translation>
 <translation id="7066646422045619941">Din administrator har deaktiveret dette netværk.</translation>
 <translation id="7067196344162293536">Automatisk rotering</translation>
 <translation id="7068360136237591149">Åbn filer</translation>
diff --git a/ash/strings/ash_strings_de.xtb b/ash/strings/ash_strings_de.xtb
index 0140034..c0b72d5 100644
--- a/ash/strings/ash_strings_de.xtb
+++ b/ash/strings/ash_strings_de.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Spiegelung</translation>
 <translation id="4281007048406351813">Timer um 1 Min. verlängern</translation>
 <translation id="4296136865091727875">Alle <ph name="COUNT" /> Benachrichtigungen löschen</translation>
+<translation id="4303223480529385476">Statusbereich maximieren</translation>
 <translation id="4321179778687042513">Strg</translation>
 <translation id="4321776623976362024">Sie haben die Tastenkombination für den Modus "Hoher Kontrast" gedrückt. Möchten Sie ihn aktivieren?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Um <ph name="COME_BACK_TIME" /> kannst du weitermachen.</translation>
 <translation id="7025533177575372252"><ph name="DEVICE_NAME" /> mit Ihrem Smartphone verbinden</translation>
 <translation id="7029814467594812963">Sitzung beenden</translation>
+<translation id="7042322267639375032">Statusbereich minimieren</translation>
 <translation id="7066646422045619941">Dieses Netzwerk wurde von Ihrem Administrator deaktiviert.</translation>
 <translation id="7067196344162293536">Automatisch drehen</translation>
 <translation id="7068360136237591149">Dateien öffnen</translation>
diff --git a/ash/strings/ash_strings_el.xtb b/ash/strings/ash_strings_el.xtb
index c6aac12..5724ffd 100644
--- a/ash/strings/ash_strings_el.xtb
+++ b/ash/strings/ash_strings_el.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Κατοπτρισμός</translation>
 <translation id="4281007048406351813">Προσθήκη ενός λεπτού στο χρονόμετρο</translation>
 <translation id="4296136865091727875">Διαγραφή και των <ph name="COUNT" /> ειδοποιήσεων</translation>
+<translation id="4303223480529385476">Ανάπτυξη περιοχής κατάστασης</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Πατήσατε τη συντόμευση πληκτρολογίου για την υψηλή αντίθεση. Θέλετε να την ενεργοποιήσετε;</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Επιστρέψτε ξανά στις <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Συνδέστε τη συσκευή <ph name="DEVICE_NAME" /> με το τηλέφωνό σας</translation>
 <translation id="7029814467594812963">Έξοδος από συνεδρία</translation>
+<translation id="7042322267639375032">Σύμπτυξη περιοχής κατάστασης</translation>
 <translation id="7066646422045619941">Το δίκτυο αυτό έχει απενεργοποιηθεί από το διαχειριστή σας.</translation>
 <translation id="7067196344162293536">Αυτόματη περιστροφή</translation>
 <translation id="7068360136237591149">Άνοιγμα αρχείων</translation>
diff --git a/ash/strings/ash_strings_en-GB.xtb b/ash/strings/ash_strings_en-GB.xtb
index 3e85b60c..2c7955a2 100644
--- a/ash/strings/ash_strings_en-GB.xtb
+++ b/ash/strings/ash_strings_en-GB.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Mirroring</translation>
 <translation id="4281007048406351813">Add 1 min to timer</translation>
 <translation id="4296136865091727875">Clear all <ph name="COUNT" /> notifications</translation>
+<translation id="4303223480529385476">Expand status area</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">You pressed the keyboard shortcut for high contrast. Do you want to turn it on?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Come back at <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Connect your <ph name="DEVICE_NAME" /> with your phone</translation>
 <translation id="7029814467594812963">Exit session</translation>
+<translation id="7042322267639375032">Collapse status area</translation>
 <translation id="7066646422045619941">This network is disabled by your administrator.</translation>
 <translation id="7067196344162293536">Auto rotate</translation>
 <translation id="7068360136237591149">Open files</translation>
diff --git a/ash/strings/ash_strings_es-419.xtb b/ash/strings/ash_strings_es-419.xtb
index 509f93a2..4b36eff 100644
--- a/ash/strings/ash_strings_es-419.xtb
+++ b/ash/strings/ash_strings_es-419.xtb
@@ -232,6 +232,7 @@
 <translation id="4279490309300973883">Duplicando</translation>
 <translation id="4281007048406351813">Agregar 1 minuto al cronómetro</translation>
 <translation id="4296136865091727875">Borrar las <ph name="COUNT" /> notificaciones</translation>
+<translation id="4303223480529385476">Expandir el área de estado</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Presionaste la combinación de teclas para activar el modo de contraste alto. ¿Quieres activarlo?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">Regresa a las <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Conectar tu dispositivo <ph name="DEVICE_NAME" /> a tu teléfono</translation>
 <translation id="7029814467594812963">Salir de la sesión</translation>
+<translation id="7042322267639375032">Contraer el área de estado</translation>
 <translation id="7066646422045619941">El administrador inhabilitó esta red.</translation>
 <translation id="7067196344162293536">Rotación automática</translation>
 <translation id="7068360136237591149">Abrir archivos</translation>
diff --git a/ash/strings/ash_strings_es.xtb b/ash/strings/ash_strings_es.xtb
index 06fdd107..4f3e1b3 100644
--- a/ash/strings/ash_strings_es.xtb
+++ b/ash/strings/ash_strings_es.xtb
@@ -232,6 +232,7 @@
 <translation id="4279490309300973883">Duplicando</translation>
 <translation id="4281007048406351813">Añadir 1 minuto al temporizador</translation>
 <translation id="4296136865091727875">Borrar las <ph name="COUNT" /> notificaciones</translation>
+<translation id="4303223480529385476">Mostrar área de estado</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Has pulsado la combinación de teclas que activa el contraste alto. ¿Quieres activarlo?</translation>
 <translation id="4331809312908958774">SO de Chrome</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">Hora a la que puedes volver: <ph name="COME_BACK_TIME" /></translation>
 <translation id="7025533177575372252">Conecta tu <ph name="DEVICE_NAME" /> al teléfono</translation>
 <translation id="7029814467594812963">Cerrar sesión</translation>
+<translation id="7042322267639375032">Ocultar área de estado</translation>
 <translation id="7066646422045619941">El administrador ha inhabilitado esta red.</translation>
 <translation id="7067196344162293536">Rotación automática</translation>
 <translation id="7068360136237591149">Abrir un archivo</translation>
diff --git a/ash/strings/ash_strings_et.xtb b/ash/strings/ash_strings_et.xtb
index 70b8ddcf..2c4b9cec 100644
--- a/ash/strings/ash_strings_et.xtb
+++ b/ash/strings/ash_strings_et.xtb
@@ -232,6 +232,7 @@
 <translation id="4279490309300973883">Peegeldamine</translation>
 <translation id="4281007048406351813">Lisa taimerile 1 minut</translation>
 <translation id="4296136865091727875">Kustuta kõik <ph name="COUNT" /> märguannet</translation>
+<translation id="4303223480529385476">Laienda olekuala</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Vajutasite suure kontrastsusega režiimi otseteed. Kas soovite režiimi sisse lülitada?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">Tulge tagasi kell <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Ühendage seade <ph name="DEVICE_NAME" /> oma telefoniga</translation>
 <translation id="7029814467594812963">Välju seansist</translation>
+<translation id="7042322267639375032">Ahenda olekuala</translation>
 <translation id="7066646422045619941">Teie administraator on selle võrgu keelanud.</translation>
 <translation id="7067196344162293536">Automaatne pööramine</translation>
 <translation id="7068360136237591149">Ava failid</translation>
diff --git a/ash/strings/ash_strings_fa.xtb b/ash/strings/ash_strings_fa.xtb
index ce18bb86..dbee3a98 100644
--- a/ash/strings/ash_strings_fa.xtb
+++ b/ash/strings/ash_strings_fa.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">بازتاب می‌شود</translation>
 <translation id="4281007048406351813">افزون ۱ دقیقه به تایمر</translation>
 <translation id="4296136865091727875">پاک کردن همه <ph name="COUNT" /> اعلان</translation>
+<translation id="4303223480529385476">بزرگ کردن ناحیه نشانگر وضعیت</translation>
 <translation id="4321179778687042513">مهار</translation>
 <translation id="4321776623976362024">میان‌بر صفحه‌کلید مربوط به کنتراست بالا را فشار دادید. می‌خواهید آن را روشن کنید؟</translation>
 <translation id="4331809312908958774">‏سیستم عامل Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">ساعت <ph name="COME_BACK_TIME" /> دوباره برگردید.</translation>
 <translation id="7025533177575372252"><ph name="DEVICE_NAME" /> را به تلفنتان متصل کنید</translation>
 <translation id="7029814467594812963">خروج از جلسه</translation>
+<translation id="7042322267639375032">کوچک کردن ناحیه نشانگر وضعیت</translation>
 <translation id="7066646422045619941">این شبکه توسط سرپرست شما غیرفعال شده است.</translation>
 <translation id="7067196344162293536">چرخش خودکار</translation>
 <translation id="7068360136237591149">‏Open files (فایل‌ها را باز کن)</translation>
diff --git a/ash/strings/ash_strings_fi.xtb b/ash/strings/ash_strings_fi.xtb
index d8d7429..5d26ead 100644
--- a/ash/strings/ash_strings_fi.xtb
+++ b/ash/strings/ash_strings_fi.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Peilaus päällä</translation>
 <translation id="4281007048406351813">Lisää 1 min ajastimeen</translation>
 <translation id="4296136865091727875">Poista kaikki <ph name="COUNT" /> ilmoitusta</translation>
+<translation id="4303223480529385476">Laajenna tila-alue</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Painoit suuren kontrastin pikanäppäintä. Haluatko ottaa sen käyttöön?</translation>
 <translation id="4331809312908958774">Chrome-käyttöjärjestelmä</translation>
@@ -408,6 +409,7 @@
 <translation id="7015766095477679451">Palaa kello <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Yhdistä <ph name="DEVICE_NAME" /> puhelimeesi</translation>
 <translation id="7029814467594812963">Sulje käyttökerta</translation>
+<translation id="7042322267639375032">Tiivistä tila-alue</translation>
 <translation id="7066646422045619941">Järjestelmänvalvoja on poistanut tämän verkon käytöstä.</translation>
 <translation id="7067196344162293536">Automaattinen kierto</translation>
 <translation id="7068360136237591149">Avaa tiedostot</translation>
diff --git a/ash/strings/ash_strings_fil.xtb b/ash/strings/ash_strings_fil.xtb
index f8d40f37..d37db0e 100644
--- a/ash/strings/ash_strings_fil.xtb
+++ b/ash/strings/ash_strings_fil.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Nagmi-mirror</translation>
 <translation id="4281007048406351813">Magdagdag ng 1 minuto sa timer</translation>
 <translation id="4296136865091727875">I-clear ang lahat ng <ph name="COUNT" /> (na) notification</translation>
+<translation id="4303223480529385476">I-expand ang lugar ng status</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Napindot mo ang keyboard shortcut para sa mataas na contrast. Gusto mo ba itong i-on?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Bumalik nang <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Ikonekta ang iyong <ph name="DEVICE_NAME" /> sa telepono mo</translation>
 <translation id="7029814467594812963">Lumabas sa session</translation>
+<translation id="7042322267639375032">I-collapse ang lugar ng status</translation>
 <translation id="7066646422045619941">Na-disable ng iyong administrator ang network na ito.</translation>
 <translation id="7067196344162293536">Awtomatikong pag-rotate</translation>
 <translation id="7068360136237591149">Magbukas ng mga file</translation>
diff --git a/ash/strings/ash_strings_fr.xtb b/ash/strings/ash_strings_fr.xtb
index e20c022..4a39338 100644
--- a/ash/strings/ash_strings_fr.xtb
+++ b/ash/strings/ash_strings_fr.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Mise en miroir</translation>
 <translation id="4281007048406351813">Ajouter une minute au minuteur</translation>
 <translation id="4296136865091727875">Effacer les <ph name="COUNT" /> notifications</translation>
+<translation id="4303223480529385476">Développer la zone d'état</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Vous avez appuyé sur le raccourci clavier du contraste élevé. Voulez-vous l'activer ?</translation>
 <translation id="4331809312908958774">Système d’exploitation Google Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Revenez à <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Associer votre <ph name="DEVICE_NAME" /> à votre téléphone</translation>
 <translation id="7029814467594812963">Quitter la session</translation>
+<translation id="7042322267639375032">Réduire la zone d'état</translation>
 <translation id="7066646422045619941">Votre administrateur a désactivé ce réseau.</translation>
 <translation id="7067196344162293536">Rotation automatique</translation>
 <translation id="7068360136237591149">Ouvre des fichiers</translation>
diff --git a/ash/strings/ash_strings_gu.xtb b/ash/strings/ash_strings_gu.xtb
index 2aabd594..19b9b41 100644
--- a/ash/strings/ash_strings_gu.xtb
+++ b/ash/strings/ash_strings_gu.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">પ્રતિબિંબત થઈ રહ્યું છે</translation>
 <translation id="4281007048406351813">ટાઇમરમાં 1 મિનિટ ઉમેરો</translation>
 <translation id="4296136865091727875">બધા <ph name="COUNT" /> નોટિફિકેશન સાફ કરો</translation>
+<translation id="4303223480529385476">સ્ટેટસ એરિયા વધારો</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">તમે હાઇ કૉન્ટ્રાસ્ટ માટેનો કીબોર્ડ શૉર્ટકટ દબાવેલ છે. શું તમે તેને ચાલુ કરવા માગો છો?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" /> વાગ્યે પાછા આવો.</translation>
 <translation id="7025533177575372252">તમારા <ph name="DEVICE_NAME" />ને તમારા ફોન સાથે કનેક્ટ કરો</translation>
 <translation id="7029814467594812963">સત્રમાંથી બહાર નીકળો</translation>
+<translation id="7042322267639375032">સ્ટેટસ એરિયા ઓછો કરો</translation>
 <translation id="7066646422045619941">આ નેટવર્ક તમારા વ્યવસ્થાપક દ્વારા અક્ષમ કરેલ છે.</translation>
 <translation id="7067196344162293536">સ્વતઃ ફેરવો</translation>
 <translation id="7068360136237591149">ફાઇલો ખોલો</translation>
diff --git a/ash/strings/ash_strings_hi.xtb b/ash/strings/ash_strings_hi.xtb
index 59d934f..dbff6bd 100644
--- a/ash/strings/ash_strings_hi.xtb
+++ b/ash/strings/ash_strings_hi.xtb
@@ -232,6 +232,7 @@
 <translation id="4279490309300973883">स्क्रीन शेयर करने की सुविधा चालू है</translation>
 <translation id="4281007048406351813">टाइमर में एक मिनट जोड़ें</translation>
 <translation id="4296136865091727875">सभी <ph name="COUNT" /> सूचनाएं हटाएं</translation>
+<translation id="4303223480529385476">स्टेटस बताने वाली जगह को बड़ा करें</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">आपने 'हाई कंट्रास्ट' का कीबोर्ड शॉर्टकट दबाया है. क्या आप इसे चालू करना चाहते हैं?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" /> बजे फिर से देखें.</translation>
 <translation id="7025533177575372252">अपने <ph name="DEVICE_NAME" /> को अपने फ़ोन से कनेक्ट करें</translation>
 <translation id="7029814467594812963">सत्र से बाहर निकलें</translation>
+<translation id="7042322267639375032">स्टेटस बताने वाली जगह को छोटा करें</translation>
 <translation id="7066646422045619941">यह नेटवर्क आपके व्यवस्थापक द्वारा अक्षम किया गया है.</translation>
 <translation id="7067196344162293536">अपने आप घूमना</translation>
 <translation id="7068360136237591149">फ़ाइल खोलो</translation>
diff --git a/ash/strings/ash_strings_hr.xtb b/ash/strings/ash_strings_hr.xtb
index e5099a4..58b757d 100644
--- a/ash/strings/ash_strings_hr.xtb
+++ b/ash/strings/ash_strings_hr.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Zrcaljenje</translation>
 <translation id="4281007048406351813">Dodaj odbrojavanju 1 min</translation>
 <translation id="4296136865091727875">Brisanje svih obavijesti (<ph name="COUNT" />)</translation>
+<translation id="4303223480529385476">Proširite područje statusa</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Pritisnuli ste tipkovni prečac za visoki kontrast. Želite li ga uključiti?</translation>
 <translation id="4331809312908958774">OS Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Vratite se u <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Povežite <ph name="DEVICE_NAME" /> i telefon</translation>
 <translation id="7029814467594812963">Izlazak iz sesije</translation>
+<translation id="7042322267639375032">Sažmite područje statusa</translation>
 <translation id="7066646422045619941">Tu mrežu onemogućio je vaš administrator.</translation>
 <translation id="7067196344162293536">Automatski izmjenjuj</translation>
 <translation id="7068360136237591149">Otvori datoteke</translation>
diff --git a/ash/strings/ash_strings_hu.xtb b/ash/strings/ash_strings_hu.xtb
index 8ba2328..baab5e00 100644
--- a/ash/strings/ash_strings_hu.xtb
+++ b/ash/strings/ash_strings_hu.xtb
@@ -232,6 +232,7 @@
 <translation id="4279490309300973883">Tükrözés</translation>
 <translation id="4281007048406351813">1 perc hozzáadása az időzítőhöz</translation>
 <translation id="4296136865091727875">Az összes (<ph name="COUNT" />) értesítés törlése</translation>
+<translation id="4303223480529385476">Állapotsor kibontása</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Lenyomta a nagy kontraszt billentyűparancsát. Bekapcsolja a funkciót?</translation>
 <translation id="4331809312908958774">Chrome operációs rendszer</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">Térjen vissza ekkor: <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">A(z) <ph name="DEVICE_NAME" /> eszköz csatlakoztatása a telefonjával</translation>
 <translation id="7029814467594812963">Kilépés a munkamenetből</translation>
+<translation id="7042322267639375032">Állapotsor összecsukása</translation>
 <translation id="7066646422045619941">Ezt a hálózatot letiltotta a rendszergazda.</translation>
 <translation id="7067196344162293536">Automatikus forgatás</translation>
 <translation id="7068360136237591149">Fájlok megnyitása</translation>
diff --git a/ash/strings/ash_strings_id.xtb b/ash/strings/ash_strings_id.xtb
index 639c962..1e87a42d 100644
--- a/ash/strings/ash_strings_id.xtb
+++ b/ash/strings/ash_strings_id.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Mencerminkan</translation>
 <translation id="4281007048406351813">Tambahkan 1 mnt ke timer</translation>
 <translation id="4296136865091727875">Hapus semua (<ph name="COUNT" />) notifikasi</translation>
+<translation id="4303223480529385476">Luaskan area status</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Anda menekan pintasan keyboard untuk kontras tinggi. Ingin mengaktifkannya?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Coba lagi pukul <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Hubungkan <ph name="DEVICE_NAME" /> dengan ponsel Anda</translation>
 <translation id="7029814467594812963">Keluar dari sesi</translation>
+<translation id="7042322267639375032">Ciutkan area status</translation>
 <translation id="7066646422045619941">Jaringan ini dinonaktifkan oleh administrator Anda.</translation>
 <translation id="7067196344162293536">Putar otomatis</translation>
 <translation id="7068360136237591149">Buka file</translation>
diff --git a/ash/strings/ash_strings_it.xtb b/ash/strings/ash_strings_it.xtb
index 5197b64..fd604475 100644
--- a/ash/strings/ash_strings_it.xtb
+++ b/ash/strings/ash_strings_it.xtb
@@ -232,6 +232,7 @@
 <translation id="4279490309300973883">Mirroring</translation>
 <translation id="4281007048406351813">Aggiungi un minuto al timer</translation>
 <translation id="4296136865091727875">Cancella tutte e <ph name="COUNT" /> le notifiche</translation>
+<translation id="4303223480529385476">Espandi area di stato</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Hai premuto la scorciatoia da tastiera per l'alto contrasto. Vuoi attivarlo?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">Ritorna alle ore <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Connetti il tuo dispositivo <ph name="DEVICE_NAME" /> con il telefono</translation>
 <translation id="7029814467594812963">Esci da sessione</translation>
+<translation id="7042322267639375032">Comprimi area di stato</translation>
 <translation id="7066646422045619941">Questa rete è stata disattivata dall'amministratore.</translation>
 <translation id="7067196344162293536">Ruota in modo automatico</translation>
 <translation id="7068360136237591149">Apri file</translation>
diff --git a/ash/strings/ash_strings_iw.xtb b/ash/strings/ash_strings_iw.xtb
index e146ebe..c4d56df 100644
--- a/ash/strings/ash_strings_iw.xtb
+++ b/ash/strings/ash_strings_iw.xtb
@@ -436,7 +436,7 @@
 <translation id="7510334386202674593">Ctrl+Shift+L</translation>
 <translation id="7526573455193969409">ייתכן שהרשת מנוטרת</translation>
 <translation id="7536035074519304529">‏כתובת IP: <ph name="ADDRESS" /></translation>
-<translation id="7548434653388805669">קדימה, לילה טוב!</translation>
+<translation id="7548434653388805669">לילה טוב!</translation>
 <translation id="7561014039265304140"><ph name="DISPLAY_NAME" /> אינו תומך ב-<ph name="SPECIFIED_RESOLUTION" />. הרזולוציה שונתה ל-<ph name="FALLBACK_RESOLUTION" /></translation>
 <translation id="7562368315689366235">לוח סמלי אמוג'י</translation>
 <translation id="7564874036684306347">העברת חלונות לשולחן עבודה אחר עלולה לגרום להתנהגות בלתי צפויה.
@@ -490,7 +490,7 @@
 <translation id="8190698733819146287">התאם אישית שפה וקלט...</translation>
 <translation id="8192202700944119416">ההודעות מוסתרות.</translation>
 <translation id="8203795194971602413">לחיצה ימנית</translation>
-<translation id="8236042855478648955">הגיע הזמן לקחת הפסקה</translation>
+<translation id="8236042855478648955">הגיע הזמן להפסקה</translation>
 <translation id="8261506727792406068">מחיקה</translation>
 <translation id="8297006494302853456">חלש</translation>
 <translation id="8308637677604853869">התפריט הקודם</translation>
diff --git a/ash/strings/ash_strings_ja.xtb b/ash/strings/ash_strings_ja.xtb
index 8ccfd96..c3da3e0 100644
--- a/ash/strings/ash_strings_ja.xtb
+++ b/ash/strings/ash_strings_ja.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">ミラーリング</translation>
 <translation id="4281007048406351813">タイマーに 1 分追加</translation>
 <translation id="4296136865091727875"><ph name="COUNT" /> 件の通知をすべて消去</translation>
+<translation id="4303223480529385476">ステータス領域を表示</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">ハイ コントラストのキーボード ショートカットを押しました。この機能をオンにしますか?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" /> になったら利用を再開できます。</translation>
 <translation id="7025533177575372252">スマートフォンを使って <ph name="DEVICE_NAME" /> を接続する</translation>
 <translation id="7029814467594812963">セッションを終了</translation>
+<translation id="7042322267639375032">ステータス領域を表示しない</translation>
 <translation id="7066646422045619941">このネットワークは管理者によって無効にされています。</translation>
 <translation id="7067196344162293536">自動回転</translation>
 <translation id="7068360136237591149">ファイルを開いて</translation>
diff --git a/ash/strings/ash_strings_kn.xtb b/ash/strings/ash_strings_kn.xtb
index 3b65db2e..5e87d09 100644
--- a/ash/strings/ash_strings_kn.xtb
+++ b/ash/strings/ash_strings_kn.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">ಪ್ರತಿಬಿಂಬಿಸುವಿಕೆ</translation>
 <translation id="4281007048406351813">ಟೈಮರ್‌ಗೆ 1 ನಿಮಿಷವನ್ನು ಸೇರಿಸಿ</translation>
 <translation id="4296136865091727875">ಎಲ್ಲಾ <ph name="COUNT" /> ಅಧಿಸೂಚನೆಗಳನ್ನು ತೆರವುಗೊಳಿಸಿ</translation>
+<translation id="4303223480529385476">ಸ್ಥಿತಿ ಪ್ರದೇಶವನ್ನು ಹಿಗ್ಗಿಸಿ</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">ನೀವು ಅಧಿಕ ಕಾಂಟ್ರಾಸ್ಟ್‌ನ ಕೀಬೋರ್ಡ್ ಶಾರ್ಟ್‌ಕಟ್ ಒತ್ತಿದ್ದೀರಿ. ನೀವು ಅದನ್ನು ಆನ್ ಮಾಡಲು ಬಯಸುವಿರಾ?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" /> ಸಮಯಕ್ಕೆ ಹಿಂತಿರುಗಿ</translation>
 <translation id="7025533177575372252">ನಿಮ್ಮ ಫೋನ್ ಮೂಲಕ ನಿಮ್ಮ <ph name="DEVICE_NAME" /> ಸಾಧನವನ್ನು ಸಂಪರ್ಕಿಸಿ</translation>
 <translation id="7029814467594812963">ಸೆಶನ್‌ನಿಂದ ನಿರ್ಗಮಿಸಿ</translation>
+<translation id="7042322267639375032">ಸ್ಥಿತಿ ಕ್ಷೇತ್ರವನ್ನು ಕುಗ್ಗಿಸಿ</translation>
 <translation id="7066646422045619941">ಈ ನೆಟ್‌ವರ್ಕ್ ಅನ್ನು ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ್ದಾರೆ.</translation>
 <translation id="7067196344162293536">ಸ್ವಯಂ ತಿರುಗಿಸು</translation>
 <translation id="7068360136237591149">ಫೈಲ್‌ಗಳನ್ನು ತೆರೆಯಿರಿ</translation>
diff --git a/ash/strings/ash_strings_ko.xtb b/ash/strings/ash_strings_ko.xtb
index eb6e48bb..d7b9602 100644
--- a/ash/strings/ash_strings_ko.xtb
+++ b/ash/strings/ash_strings_ko.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">미러링</translation>
 <translation id="4281007048406351813">타이머에 1분 추가</translation>
 <translation id="4296136865091727875">알림 <ph name="COUNT" />개 모두 지우기</translation>
+<translation id="4303223480529385476">상태 영역 확장</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">고대비 단축키를 누르셨습니다. 사용 설정할까요?</translation>
 <translation id="4331809312908958774">크롬 OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" />에 다시 사용해 주세요.</translation>
 <translation id="7025533177575372252">휴대전화와 <ph name="DEVICE_NAME" /> 연결</translation>
 <translation id="7029814467594812963">세션 종료</translation>
+<translation id="7042322267639375032">상태 영역 접기</translation>
 <translation id="7066646422045619941">관리자가 사용 중지한 네트워크입니다.</translation>
 <translation id="7067196344162293536">자동 회전</translation>
 <translation id="7068360136237591149">파일을 열어 줘</translation>
diff --git a/ash/strings/ash_strings_lt.xtb b/ash/strings/ash_strings_lt.xtb
index f8e2db7..132489f 100644
--- a/ash/strings/ash_strings_lt.xtb
+++ b/ash/strings/ash_strings_lt.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Dubliuojama</translation>
 <translation id="4281007048406351813">Pridėti 1 min. prie laikmačio</translation>
 <translation id="4296136865091727875">Išvalykite visus pranešimus (<ph name="COUNT" />)</translation>
+<translation id="4303223480529385476">Išskleisti būsenos sritį</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Paspaudėte didelio kontrasto spartųjį klavišą. Ar norite jį įjungti?</translation>
 <translation id="4331809312908958774">„Chrome“ OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Grįžkite <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Susiekite „<ph name="DEVICE_NAME" />“ įrenginį su telefonu</translation>
 <translation id="7029814467594812963">Išeiti iš sesijos</translation>
+<translation id="7042322267639375032">Sutraukti būsenos sritį</translation>
 <translation id="7066646422045619941">Šį tinklą išjungė jūsų administratorius.</translation>
 <translation id="7067196344162293536">Automatinis kaitaliojimas</translation>
 <translation id="7068360136237591149">„Open files“ (Atidaryk failus)</translation>
diff --git a/ash/strings/ash_strings_lv.xtb b/ash/strings/ash_strings_lv.xtb
index a80a48e..417bc09f 100644
--- a/ash/strings/ash_strings_lv.xtb
+++ b/ash/strings/ash_strings_lv.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Spoguļošana</translation>
 <translation id="4281007048406351813">Pievienot taimerim 1 min</translation>
 <translation id="4296136865091727875">Notīrīt visus paziņojumus (kopā <ph name="COUNT" />)</translation>
+<translation id="4303223480529385476">Izvērst statusa apgabalu</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Jūs nospiedāt augsta kontrasta īsinājumtaustiņu. Vai vēlaties to ieslēgt?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Atgriezieties plkst. <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Savienojiet ierīci <ph name="DEVICE_NAME" /> ar tālruni</translation>
 <translation id="7029814467594812963">Iziet no sesijas</translation>
+<translation id="7042322267639375032">Sakļaut statusa apgabalu</translation>
 <translation id="7066646422045619941">Jūsu administrators atspējoja šo tīklu.</translation>
 <translation id="7067196344162293536">Pagriezt automātiski</translation>
 <translation id="7068360136237591149">Atvērt failus</translation>
diff --git a/ash/strings/ash_strings_ml.xtb b/ash/strings/ash_strings_ml.xtb
index 86e2ef8..8dff5ad 100644
--- a/ash/strings/ash_strings_ml.xtb
+++ b/ash/strings/ash_strings_ml.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">മിററിംഗ്</translation>
 <translation id="4281007048406351813">ടൈമറിൽ ഒരു മിനിറ്റ് ചേർക്കുക</translation>
 <translation id="4296136865091727875">എല്ലാ <ph name="COUNT" /> അറിയിപ്പുകളും മായ്ക്കുക</translation>
+<translation id="4303223480529385476">സ്റ്റാറ്റസ് ഏരിയ വികസിപ്പിക്കുക</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">നിങ്ങൾ ഉയർന്ന ദൃശ്യതീവ്രതയ്‌ക്കുള്ള കീബോഡ് കുറുക്കുവഴി അമർത്തി. അത് ഓണാക്കണോ?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" />-ന് തിരികെ വരിക.</translation>
 <translation id="7025533177575372252">നിങ്ങളുടെ ഫോണുമായി <ph name="DEVICE_NAME" /> കണക്‌റ്റ് ചെയ്യുക</translation>
 <translation id="7029814467594812963">സെഷനിൽ നിന്ന് പുറത്തുകടക്കുക</translation>
+<translation id="7042322267639375032">സ്റ്റാറ്റസ് ഏരിയ ചുരുക്കുക</translation>
 <translation id="7066646422045619941">നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ ഈ നെറ്റ്‌വർക്ക് പ്രവർത്തനരഹിതമാക്കി.</translation>
 <translation id="7067196344162293536">സ്വയമേവ തിരിക്കുക</translation>
 <translation id="7068360136237591149">ഫയലുകൾ തുറക്കുക</translation>
diff --git a/ash/strings/ash_strings_mr.xtb b/ash/strings/ash_strings_mr.xtb
index 808e3c1..62ee27d9 100644
--- a/ash/strings/ash_strings_mr.xtb
+++ b/ash/strings/ash_strings_mr.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">मिररिंग</translation>
 <translation id="4281007048406351813">टायमरला एक मिनिट जोडा</translation>
 <translation id="4296136865091727875">सर्व <ph name="COUNT" /> सूचना साफ करा</translation>
+<translation id="4303223480529385476">स्थिती क्षेत्राचा विस्तार करा</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">तुम्ही उच्च कॉंट्रास्टसाठी कीबोर्ड शॉर्टकट दाबला आहे. तुम्हाला ते सुरू करायचे आहे का?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" /> वाजता परत या.</translation>
 <translation id="7025533177575372252">तुमचे <ph name="DEVICE_NAME" /> तुमच्या फोनशी कनेक्ट करा</translation>
 <translation id="7029814467594812963">सेशनमधून बाहेर पडा</translation>
+<translation id="7042322267639375032">स्थिती क्षेत्र कोलॅप्स करा</translation>
 <translation id="7066646422045619941">हे नेटवर्क तुमच्या अॅडमिनिस्ट्रेटरने अक्षम केले आहे.</translation>
 <translation id="7067196344162293536">स्वयं फिरवा</translation>
 <translation id="7068360136237591149">फायली उघडा</translation>
diff --git a/ash/strings/ash_strings_ms.xtb b/ash/strings/ash_strings_ms.xtb
index c629d72..81a457f 100644
--- a/ash/strings/ash_strings_ms.xtb
+++ b/ash/strings/ash_strings_ms.xtb
@@ -232,6 +232,7 @@
 <translation id="4279490309300973883">Pencerminan</translation>
 <translation id="4281007048406351813">Tambah 1 min pada pemasa</translation>
 <translation id="4296136865091727875">Kosongkan kesemua <ph name="COUNT" /> pemberitahuan</translation>
+<translation id="4303223480529385476">Kembangkan area status</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Anda menekan pintasan papan kekunci untuk kontras tinggi. Adakah anda ingin menghidupkannya?</translation>
 <translation id="4331809312908958774">OS Chrome</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">Datang semula pada <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Sambungkan <ph name="DEVICE_NAME" /> anda dengan telefon anda</translation>
 <translation id="7029814467594812963">Keluar dari sesi</translation>
+<translation id="7042322267639375032">Runtuhkan area status</translation>
 <translation id="7066646422045619941">Rangkaian ini dilumpuhkan oleh pentadbir anda.</translation>
 <translation id="7067196344162293536">Auto putar</translation>
 <translation id="7068360136237591149">Buka fail</translation>
diff --git a/ash/strings/ash_strings_nl.xtb b/ash/strings/ash_strings_nl.xtb
index 5c1c52f..aaf8fc5 100644
--- a/ash/strings/ash_strings_nl.xtb
+++ b/ash/strings/ash_strings_nl.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Mirroring</translation>
 <translation id="4281007048406351813">1 min toevoegen aan timer</translation>
 <translation id="4296136865091727875">Alle <ph name="COUNT" /> meldingen wissen</translation>
+<translation id="4303223480529385476">Statusgedeelte uitvouwen</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Je hebt op de sneltoets voor hoog contrast gedrukt. Wil je deze functie inschakelen?</translation>
 <translation id="4331809312908958774">Besturingssysteem Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Kom terug om <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Koppel je <ph name="DEVICE_NAME" /> aan je telefoon</translation>
 <translation id="7029814467594812963">Sessie sluiten</translation>
+<translation id="7042322267639375032">Statusgedeelte samenvouwen</translation>
 <translation id="7066646422045619941">Dit netwerk is uitgeschakeld door je beheerder.</translation>
 <translation id="7067196344162293536">Automatisch draaien</translation>
 <translation id="7068360136237591149">Open bestanden</translation>
diff --git a/ash/strings/ash_strings_no.xtb b/ash/strings/ash_strings_no.xtb
index 1b7e5df..2097a11 100644
--- a/ash/strings/ash_strings_no.xtb
+++ b/ash/strings/ash_strings_no.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Speiling</translation>
 <translation id="4281007048406351813">Legg til 1 min i nedtellingen</translation>
 <translation id="4296136865091727875">Fjern alle <ph name="COUNT" /> varsler</translation>
+<translation id="4303223480529385476">Vis statusområdet</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Du trykket på hurtigtasten for høy kontrast. Vil du slå det på?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Kom tilbake <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Koble <ph name="DEVICE_NAME" /> til telefonen</translation>
 <translation id="7029814467594812963">Avslutt økten</translation>
+<translation id="7042322267639375032">Skjul statusområdet</translation>
 <translation id="7066646422045619941">Administratoren din har slått av dette nettverket.</translation>
 <translation id="7067196344162293536">Automatisk retning</translation>
 <translation id="7068360136237591149">Åpne filer</translation>
diff --git a/ash/strings/ash_strings_pl.xtb b/ash/strings/ash_strings_pl.xtb
index 593de48..a2b18274 100644
--- a/ash/strings/ash_strings_pl.xtb
+++ b/ash/strings/ash_strings_pl.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Odbicie lustrzane</translation>
 <translation id="4281007048406351813">Dodaj minutę do minutnika</translation>
 <translation id="4296136865091727875">Wyczyść wszystkie powiadomienia (<ph name="COUNT" />)</translation>
+<translation id="4303223480529385476">Rozwiń pasek stanu</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Naciśnięto skrót klawiszowy wysokiego kontrastu. Czy chcesz go włączyć?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Możesz wrócić o <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Połącz urządzenie <ph name="DEVICE_NAME" /> z telefonem</translation>
 <translation id="7029814467594812963">Zakończ sesję</translation>
+<translation id="7042322267639375032">Zwiń pasek stanu</translation>
 <translation id="7066646422045619941">Ta sieć została wyłączona przez administratora.</translation>
 <translation id="7067196344162293536">Obracanie automatyczne</translation>
 <translation id="7068360136237591149">Otwórz pliki</translation>
diff --git a/ash/strings/ash_strings_pt-BR.xtb b/ash/strings/ash_strings_pt-BR.xtb
index 2e8f876..2a7ab0f 100644
--- a/ash/strings/ash_strings_pt-BR.xtb
+++ b/ash/strings/ash_strings_pt-BR.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Espelhamento</translation>
 <translation id="4281007048406351813">Adicionar 1 min ao timer</translation>
 <translation id="4296136865091727875">Limpar todas as <ph name="COUNT" /> notificações</translation>
+<translation id="4303223480529385476">Expandir área de status</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Você pressionou o atalho de teclado para o alto contraste. Gostaria de ativá-lo?</translation>
 <translation id="4331809312908958774">Sistema operacional Chrome</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">Volte às <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Conecte seu <ph name="DEVICE_NAME" /> ao smartphone</translation>
 <translation id="7029814467594812963">Sair da sessão</translation>
+<translation id="7042322267639375032">Recolher área de status</translation>
 <translation id="7066646422045619941">Esta rede foi desativada pelo seu administrador.</translation>
 <translation id="7067196344162293536">Rotação automática</translation>
 <translation id="7068360136237591149">Abrir arquivos</translation>
diff --git a/ash/strings/ash_strings_pt-PT.xtb b/ash/strings/ash_strings_pt-PT.xtb
index 173f2ea..8755d97b 100644
--- a/ash/strings/ash_strings_pt-PT.xtb
+++ b/ash/strings/ash_strings_pt-PT.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Espelhamento</translation>
 <translation id="4281007048406351813">Adicionar 1 min ao temporizador</translation>
 <translation id="4296136865091727875">Limpar todas as <ph name="COUNT" /> notificações</translation>
+<translation id="4303223480529385476">Expandir área de estado</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Premiu o atalho de teclado de alto contraste. Pretende ativá-lo?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Volte à(s) <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Ligue o dispositivo <ph name="DEVICE_NAME" /> ao telemóvel.</translation>
 <translation id="7029814467594812963">Sair da sessão</translation>
+<translation id="7042322267639375032">Reduzir área de estado</translation>
 <translation id="7066646422045619941">Esta rede foi desativada pelo gestor.</translation>
 <translation id="7067196344162293536">Rotação automática</translation>
 <translation id="7068360136237591149">Abrir ficheiros</translation>
diff --git a/ash/strings/ash_strings_ro.xtb b/ash/strings/ash_strings_ro.xtb
index db31c4b..c1196bd7 100644
--- a/ash/strings/ash_strings_ro.xtb
+++ b/ash/strings/ash_strings_ro.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Oglindire</translation>
 <translation id="4281007048406351813">Adaugă un minut la temporizator</translation>
 <translation id="4296136865091727875">Șterge toate cele <ph name="COUNT" /> notificări</translation>
+<translation id="4303223480529385476">Extinde zona de stare</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Ai accesat comanda rapidă de la tastatură pentru contrast ridicat. Vrei să-l activezi?</translation>
 <translation id="4331809312908958774">Sistemul de operare Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Revino la <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Conectează-ți dispozitivul <ph name="DEVICE_NAME" /> cu telefonul</translation>
 <translation id="7029814467594812963">Ieșiți din sesiune</translation>
+<translation id="7042322267639375032">Restrânge zona de stare</translation>
 <translation id="7066646422045619941">Această rețea este dezactivată de administrator.</translation>
 <translation id="7067196344162293536">Rotire automată</translation>
 <translation id="7068360136237591149">Deschide fișierele</translation>
diff --git a/ash/strings/ash_strings_ru.xtb b/ash/strings/ash_strings_ru.xtb
index d472ca1..1477dab 100644
--- a/ash/strings/ash_strings_ru.xtb
+++ b/ash/strings/ash_strings_ru.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Отражение</translation>
 <translation id="4281007048406351813">Добавить к таймеру 1 мин.</translation>
 <translation id="4296136865091727875">Удалить все уведомления: <ph name="COUNT" /></translation>
+<translation id="4303223480529385476">Развернуть панель состояния</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Вы нажали сочетание клавиш для включения режима высокой контрастности. Выполнить это действие?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Увидимся снова в <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Подключите <ph name="DEVICE_NAME" /> к своему телефону</translation>
 <translation id="7029814467594812963">Завершить сеанс</translation>
+<translation id="7042322267639375032">Свернуть панель состояния</translation>
 <translation id="7066646422045619941">Эта сеть отключена администратором.</translation>
 <translation id="7067196344162293536">Автоповорот</translation>
 <translation id="7068360136237591149">Открыть файлы</translation>
diff --git a/ash/strings/ash_strings_sk.xtb b/ash/strings/ash_strings_sk.xtb
index a275657a..7a13b59 100644
--- a/ash/strings/ash_strings_sk.xtb
+++ b/ash/strings/ash_strings_sk.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Zrkadlenie</translation>
 <translation id="4281007048406351813">Pridať 1 minútu k časovaču</translation>
 <translation id="4296136865091727875">Vymazať všetky upozornenia (počet: <ph name="COUNT" />)</translation>
+<translation id="4303223480529385476">Rozbaliť stavovú oblasť</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Stlačili ste klávesovú skratku pre vysoký kontrast. Chcete ho zapnúť?</translation>
 <translation id="4331809312908958774">OS Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Vráťte sa späť o <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Pripojte zariadenie <ph name="DEVICE_NAME" /> k svojmu telefónu</translation>
 <translation id="7029814467594812963">Ukončiť reláciu</translation>
+<translation id="7042322267639375032">Zbaliť stavovú oblasť</translation>
 <translation id="7066646422045619941">Táto sieť je zakázaná správcom.</translation>
 <translation id="7067196344162293536">Automatické otáčanie</translation>
 <translation id="7068360136237591149">Otvoriť súbory</translation>
diff --git a/ash/strings/ash_strings_sl.xtb b/ash/strings/ash_strings_sl.xtb
index e98efa6..88bdc40d 100644
--- a/ash/strings/ash_strings_sl.xtb
+++ b/ash/strings/ash_strings_sl.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Zrcaljenje</translation>
 <translation id="4281007048406351813">Dodaj 1 min časovniku</translation>
 <translation id="4296136865091727875">Izbris vseh <ph name="COUNT" /> obvestil</translation>
+<translation id="4303223480529385476">Razširitev območja stanja</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Pritisnili ste bližnjično tipko za visoki kontrast. Ali ga želite vklopiti?</translation>
 <translation id="4331809312908958774">OS Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Vrnite se ob <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Povežite napravo <ph name="DEVICE_NAME" /> s telefonom</translation>
 <translation id="7029814467594812963">Zapusti sejo</translation>
+<translation id="7042322267639375032">Strnitev območja stanja</translation>
 <translation id="7066646422045619941">To omrežje je onemogočil skrbnik.</translation>
 <translation id="7067196344162293536">Samodejno sukanje</translation>
 <translation id="7068360136237591149">Odpri datoteke</translation>
diff --git a/ash/strings/ash_strings_sr.xtb b/ash/strings/ash_strings_sr.xtb
index 49ed9e4..b4eb4d5 100644
--- a/ash/strings/ash_strings_sr.xtb
+++ b/ash/strings/ash_strings_sr.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Пресликавање</translation>
 <translation id="4281007048406351813">Додај 1 мин у тајмер</translation>
 <translation id="4296136865091727875">Обришите сва обавештења (<ph name="COUNT" />)</translation>
+<translation id="4303223480529385476">Проширите област статуса</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Притиснули сте тастерску пречицу за високи контраст. Желите ли да је укључите?</translation>
 <translation id="4331809312908958774">Chrome ОС</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Вратите се у <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Повежите <ph name="DEVICE_NAME" /> са телефоном</translation>
 <translation id="7029814467594812963">Изађи из сесије</translation>
+<translation id="7042322267639375032">Скупите област статуса</translation>
 <translation id="7066646422045619941">Ову мрежу је онемогућио администратор.</translation>
 <translation id="7067196344162293536">Аутоматски ротирај</translation>
 <translation id="7068360136237591149">Отвори датотеке</translation>
diff --git a/ash/strings/ash_strings_sv.xtb b/ash/strings/ash_strings_sv.xtb
index 535d2c57..e7687893 100644
--- a/ash/strings/ash_strings_sv.xtb
+++ b/ash/strings/ash_strings_sv.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Spegling</translation>
 <translation id="4281007048406351813">Lägg till en minut på timern</translation>
 <translation id="4296136865091727875">Rensa alla <ph name="COUNT" /> aviseringar</translation>
+<translation id="4303223480529385476">Utöka statusfält</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Du tryckte på kortkommandot för högkontrastläge. Vill du aktivera funktionen?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Prova igen klockan <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Anslut <ph name="DEVICE_NAME" /> med mobilen</translation>
 <translation id="7029814467594812963">Avsluta session</translation>
+<translation id="7042322267639375032">Komprimera statusfält</translation>
 <translation id="7066646422045619941">Det här nätverket har inaktiverats av administratören.</translation>
 <translation id="7067196344162293536">Rotera automatiskt</translation>
 <translation id="7068360136237591149">Öppna filer</translation>
diff --git a/ash/strings/ash_strings_sw.xtb b/ash/strings/ash_strings_sw.xtb
index 2de3fbf..0414883 100644
--- a/ash/strings/ash_strings_sw.xtb
+++ b/ash/strings/ash_strings_sw.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Kuakisi</translation>
 <translation id="4281007048406351813">Ongeza dakika 1 kwenye kipima muda</translation>
 <translation id="4296136865091727875">Futa arifa zote <ph name="COUNT" /></translation>
+<translation id="4303223480529385476">Panua eneo la hali</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Umebofya mikato ya kibodi ya utofautishaji wa juu. Ungependa kuuwasha?</translation>
 <translation id="4331809312908958774">Mfumo wa Uendeshaji wa Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Rejea saa <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Unganisha <ph name="DEVICE_NAME" /> na simu yako</translation>
 <translation id="7029814467594812963">Toka kwenye kipindi</translation>
+<translation id="7042322267639375032">Kunja eneo la hali</translation>
 <translation id="7066646422045619941">Mtandao huu umezimwa na msimamizi wako.</translation>
 <translation id="7067196344162293536">Zungusha kiotomatiki</translation>
 <translation id="7068360136237591149">Fungua faili</translation>
diff --git a/ash/strings/ash_strings_ta.xtb b/ash/strings/ash_strings_ta.xtb
index 013e842..2c64a011 100644
--- a/ash/strings/ash_strings_ta.xtb
+++ b/ash/strings/ash_strings_ta.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">பிரதிபலிக்கிறது</translation>
 <translation id="4281007048406351813">டைமரில் 1 நிமிடத்தைச் சேர்</translation>
 <translation id="4296136865091727875"><ph name="COUNT" /> அறிவிப்புகளையும் அழிக்கும்</translation>
+<translation id="4303223480529385476">நிலைப் பகுதியை விரிவாக்கும்</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">உயர் ஒளி மாறுபாட்டின் கீபோர்ட் ஷார்ட்கட்டை அழுத்தியுள்ளீர்கள். அதை இயக்க விரும்புகிறீர்களா?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" />க்கு மீண்டும் சாதனத்தைப் பயன்படுத்தலாம்.</translation>
 <translation id="7025533177575372252">உங்கள் <ph name="DEVICE_NAME" />ஐ ஃபோனுடன் இணைக்கவும்</translation>
 <translation id="7029814467594812963">அமர்விலிருந்து வெளியேறவும்</translation>
+<translation id="7042322267639375032">நிலைப் பகுதியை சுருக்கும்</translation>
 <translation id="7066646422045619941">இந்த நெட்வொர்க் உங்கள் நிர்வாகியால் முடக்கப்பட்டுள்ளது.</translation>
 <translation id="7067196344162293536">தானியங்கு சுழற்றல்</translation>
 <translation id="7068360136237591149">கோப்புகளைத் திற</translation>
diff --git a/ash/strings/ash_strings_te.xtb b/ash/strings/ash_strings_te.xtb
index 18b39c4..5d94f3f 100644
--- a/ash/strings/ash_strings_te.xtb
+++ b/ash/strings/ash_strings_te.xtb
@@ -232,6 +232,7 @@
 <translation id="4279490309300973883">మిర్రరింగ్</translation>
 <translation id="4281007048406351813">టైమర్‌కు 1 నిమి జోడించు</translation>
 <translation id="4296136865091727875">మొత్తం <ph name="COUNT" /> నోటిఫికేషన్‌లను క్లియర్ చేస్తుంది</translation>
+<translation id="4303223480529385476">విస్తరించు స్థితి ప్రాంతం</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">మీరు అధిక కాంట్రాస్ట్‌ కోసం కీబోర్డ్ షార్ట్‌కట్‌ను నొక్కారు. మీరు దీన్ని ఆన్ చేయాలనుకుంటున్నారా?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">తిరిగి <ph name="COME_BACK_TIME" />కి రండి.</translation>
 <translation id="7025533177575372252">మీ <ph name="DEVICE_NAME" />ని మీ ఫోన్‌కి కనెక్ట్ చేయండి</translation>
 <translation id="7029814467594812963">సెషన్‌ను నిష్క్రమించు</translation>
+<translation id="7042322267639375032">కుదించు స్థితి ప్రాంతం</translation>
 <translation id="7066646422045619941">ఈ నెట్‌వర్క్‌ను మీ నిర్వాహ‌కుడు నిలిపివేశారు.</translation>
 <translation id="7067196344162293536">స్వయంచాలకంగా తిప్పు</translation>
 <translation id="7068360136237591149">ఫైల్‌లు తెరువు</translation>
diff --git a/ash/strings/ash_strings_th.xtb b/ash/strings/ash_strings_th.xtb
index 28ccf78..ef2fe4d 100644
--- a/ash/strings/ash_strings_th.xtb
+++ b/ash/strings/ash_strings_th.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">กำลังแสดงผล</translation>
 <translation id="4281007048406351813">เพิ่มเวลาตัวจับเวลาอีก 1 นาที</translation>
 <translation id="4296136865091727875">ล้างการแจ้งเตือนทั้งหมด <ph name="COUNT" /> รายการ</translation>
+<translation id="4303223480529385476">ขยายพื้นที่แสดงสถานะ</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">คุณกดแป้นพิมพ์ลัดสำหรับคอนทราสต์สูง จะเปิดคอนทราสต์สูงไหม</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">กลับมาเมื่อถึงเวลา <ph name="COME_BACK_TIME" /></translation>
 <translation id="7025533177575372252">เชื่อมต่อ <ph name="DEVICE_NAME" /> กับโทรศัพท์</translation>
 <translation id="7029814467594812963">ออกจากเซสชัน</translation>
+<translation id="7042322267639375032">ยุบพื้นที่แสดงสถานะ</translation>
 <translation id="7066646422045619941">ผู้ดูแลระบบปิดใช้เครือข่ายนี้</translation>
 <translation id="7067196344162293536">หมุนอัตโนมัติ</translation>
 <translation id="7068360136237591149">เปิดไฟล์</translation>
diff --git a/ash/strings/ash_strings_tr.xtb b/ash/strings/ash_strings_tr.xtb
index 0137d5f..fc417232 100644
--- a/ash/strings/ash_strings_tr.xtb
+++ b/ash/strings/ash_strings_tr.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Yansıtılıyor</translation>
 <translation id="4281007048406351813">Zamanlayıcıya 1 dakika ekle</translation>
 <translation id="4296136865091727875"><ph name="COUNT" /> bildirimin tümünü temizle</translation>
+<translation id="4303223480529385476">Durum alanını genişlet</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Yüksek kontrast kısayoluna bastınız. Bu özelliği açmak istiyor musunuz?</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -407,6 +408,7 @@
 <translation id="7015766095477679451">Saat <ph name="COME_BACK_TIME" /> olduğunda geri gelin.</translation>
 <translation id="7025533177575372252"><ph name="DEVICE_NAME" /> cihazınızı telefonunuza bağlayın</translation>
 <translation id="7029814467594812963">Oturumdan çık</translation>
+<translation id="7042322267639375032">Durum alanını daralt</translation>
 <translation id="7066646422045619941">Bu ağ, yöneticiniz tarafından devre dışı bırakıldı.</translation>
 <translation id="7067196344162293536">Otomatik döndür</translation>
 <translation id="7068360136237591149">Dosya aç</translation>
diff --git a/ash/strings/ash_strings_uk.xtb b/ash/strings/ash_strings_uk.xtb
index e546b29..898e97ed 100644
--- a/ash/strings/ash_strings_uk.xtb
+++ b/ash/strings/ash_strings_uk.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">Дзеркальне відображення</translation>
 <translation id="4281007048406351813">Додати 1 хвилину до таймера</translation>
 <translation id="4296136865091727875">Видаліть усі сповіщення (<ph name="COUNT" />)</translation>
+<translation id="4303223480529385476">Розгорнути панель стану</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">Ви натиснули комбінацію клавіш для високого контрасту. Увімкнути?</translation>
 <translation id="4331809312908958774">ОС Chrome</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">Поверніться о <ph name="COME_BACK_TIME" />.</translation>
 <translation id="7025533177575372252">Під’єднайте <ph name="DEVICE_NAME" /> до телефона</translation>
 <translation id="7029814467594812963">Завершити сеанс</translation>
+<translation id="7042322267639375032">Згорнути панель стану</translation>
 <translation id="7066646422045619941">Ваш адміністратор вимкнув цю мережу.</translation>
 <translation id="7067196344162293536">Автоматичне обертання</translation>
 <translation id="7068360136237591149">Відкрий файли</translation>
diff --git a/ash/strings/ash_strings_zh-CN.xtb b/ash/strings/ash_strings_zh-CN.xtb
index 399e301..ecff9d143 100644
--- a/ash/strings/ash_strings_zh-CN.xtb
+++ b/ash/strings/ash_strings_zh-CN.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">正在镜像</translation>
 <translation id="4281007048406351813">给定时器加 1 分钟</translation>
 <translation id="4296136865091727875">清除所有 <ph name="COUNT" /> 条通知</translation>
+<translation id="4303223480529385476">展开状态区</translation>
 <translation id="4321179778687042513">ctrl</translation>
 <translation id="4321776623976362024">您按下了高对比度的键盘快捷键。要开启这项功能吗?</translation>
 <translation id="4331809312908958774">Chrome 操作系统</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451">您需要等到<ph name="COME_BACK_TIME" /> 才能再次使用此设备。</translation>
 <translation id="7025533177575372252">将您的<ph name="DEVICE_NAME" />连接到手机</translation>
 <translation id="7029814467594812963">退出会话</translation>
+<translation id="7042322267639375032">收起状态区</translation>
 <translation id="7066646422045619941">您的管理员已禁用此网络。</translation>
 <translation id="7067196344162293536">自动旋转</translation>
 <translation id="7068360136237591149">打开文件</translation>
diff --git a/ash/strings/ash_strings_zh-TW.xtb b/ash/strings/ash_strings_zh-TW.xtb
index 21630a0..47ecd4b 100644
--- a/ash/strings/ash_strings_zh-TW.xtb
+++ b/ash/strings/ash_strings_zh-TW.xtb
@@ -231,6 +231,7 @@
 <translation id="4279490309300973883">鏡像</translation>
 <translation id="4281007048406351813">將計時器時間增加 1 分鐘</translation>
 <translation id="4296136865091727875">清除全部 <ph name="COUNT" /> 則通知</translation>
+<translation id="4303223480529385476">展開狀態區</translation>
 <translation id="4321179778687042513">Ctrl</translation>
 <translation id="4321776623976362024">你按下了高對比的鍵盤快速鍵。確定要啟用這項功能嗎?</translation>
 <translation id="4331809312908958774">Chrome 作業系統</translation>
@@ -406,6 +407,7 @@
 <translation id="7015766095477679451"><ph name="COME_BACK_TIME" /> 裝置就會解除鎖定。</translation>
 <translation id="7025533177575372252">將 <ph name="DEVICE_NAME" /> 連結到你的手機</translation>
 <translation id="7029814467594812963">結束工作階段</translation>
+<translation id="7042322267639375032">收合狀態區</translation>
 <translation id="7066646422045619941">您的管理員已停用這個網路。</translation>
 <translation id="7067196344162293536">自動旋轉</translation>
 <translation id="7068360136237591149">開啟檔案</translation>
diff --git a/ash/wm/overview/overview_grid.cc b/ash/wm/overview/overview_grid.cc
index ae75865..198d10b 100644
--- a/ash/wm/overview/overview_grid.cc
+++ b/ash/wm/overview/overview_grid.cc
@@ -13,9 +13,11 @@
 #include "ash/public/cpp/ash_features.h"
 #include "ash/public/cpp/fps_counter.h"
 #include "ash/public/cpp/presentation_time_recorder.h"
+#include "ash/public/cpp/shelf_config.h"
 #include "ash/public/cpp/shelf_types.h"
 #include "ash/public/cpp/window_properties.h"
 #include "ash/root_window_controller.h"
+#include "ash/root_window_settings.h"
 #include "ash/rotator/screen_rotation_animator.h"
 #include "ash/screen_util.h"
 #include "ash/shelf/shelf.h"
@@ -37,7 +39,6 @@
 #include "ash/wm/overview/scoped_overview_animation_settings.h"
 #include "ash/wm/resize_shadow_controller.h"
 #include "ash/wm/splitview/split_view_constants.h"
-#include "ash/wm/splitview/split_view_controller.h"
 #include "ash/wm/splitview/split_view_divider.h"
 #include "ash/wm/splitview/split_view_drag_indicators.h"
 #include "ash/wm/tablet_mode/tablet_mode_controller.h"
@@ -219,6 +220,86 @@
   return widget;
 }
 
+// Returns the bounds for the overview window grid according to the split view
+// state. If split view mode is active, the overview window should open on the
+// opposite side of the default snap window. If |divider_changed| is true, maybe
+// clamp the bounds to a minimum size and shift the bounds offscreen.
+gfx::Rect GetGridBoundsInScreen(aura::Window* root_window,
+                                bool divider_changed) {
+  gfx::Rect work_area =
+      screen_util::GetDisplayWorkAreaBoundsInScreenForActiveDeskContainer(
+          root_window);
+
+  // If the shelf is in auto hide, overview will force it to be in auto hide
+  // shown, but we want to place the thumbnails as if the shelf was shown, so
+  // manually update the work area.
+  if (Shelf::ForWindow(root_window)->GetVisibilityState() == SHELF_AUTO_HIDE) {
+    const int inset = ShelfConfig::Get()->shelf_size();
+    switch (Shelf::ForWindow(root_window)->alignment()) {
+      case SHELF_ALIGNMENT_BOTTOM:
+      case SHELF_ALIGNMENT_BOTTOM_LOCKED:
+        work_area.Inset(0, 0, 0, inset);
+        break;
+      case SHELF_ALIGNMENT_LEFT:
+        work_area.Inset(inset, 0, 0, 0);
+        break;
+      case SHELF_ALIGNMENT_RIGHT:
+        work_area.Inset(0, 0, inset, 0);
+        break;
+      default:
+        NOTREACHED();
+        break;
+    }
+  }
+
+  SplitViewController* split_view_controller =
+      Shell::Get()->split_view_controller();
+  if (!split_view_controller->InSplitViewMode())
+    return work_area;
+
+  SplitViewController::SnapPosition opposite_position =
+      (split_view_controller->default_snap_position() ==
+       SplitViewController::LEFT)
+          ? SplitViewController::RIGHT
+          : SplitViewController::LEFT;
+  gfx::Rect bounds = split_view_controller->GetSnappedWindowBoundsInScreen(
+      root_window, opposite_position);
+  if (!divider_changed)
+    return bounds;
+
+  const bool landscape = IsCurrentScreenOrientationLandscape();
+  const int min_length =
+      (landscape ? work_area.width() : work_area.height()) / 3;
+  const int current_length = landscape ? bounds.width() : bounds.height();
+
+  if (current_length > min_length)
+    return bounds;
+
+  // Clamp bounds' length to the minimum length.
+  if (landscape)
+    bounds.set_width(min_length);
+  else
+    bounds.set_height(min_length);
+
+  // The |opposite_position| will be physically on the left or top of the screen
+  // (depending on whether the orientation is landscape or portrait
+  //  respectively), if |opposite_position| is left AND current orientation is
+  // primary, OR |opposite_position| is right AND current orientation is not
+  // primary. This is an X-NOR condition.
+  const bool primary = IsCurrentScreenOrientationPrimary();
+  const bool left_or_top =
+      (primary == (opposite_position == SplitViewController::LEFT));
+  if (left_or_top) {
+    // If we are shifting to the left or top we need to update the origin as
+    // well.
+    const int offset = min_length - current_length;
+    bounds.Offset(landscape ? gfx::Vector2d(-offset, 0)
+                            : gfx::Vector2d(0, -offset));
+  }
+
+  return bounds;
+}
+
 // Get the grid bounds if a window is snapped in splitview, or what they will be
 // when snapped based on |indicator_state|.
 gfx::Rect GetGridBoundsInScreenForSplitview(
@@ -366,11 +447,10 @@
 
 OverviewGrid::OverviewGrid(aura::Window* root_window,
                            const std::vector<aura::Window*>& windows,
-                           OverviewSession* overview_session,
-                           const gfx::Rect& bounds_in_screen)
+                           OverviewSession* overview_session)
     : root_window_(root_window),
       overview_session_(overview_session),
-      bounds_(bounds_in_screen) {
+      bounds_(GetGridBoundsInScreen(root_window, /*divider_changed=*/false)) {
   for (auto* window : windows) {
     if (window->GetRootWindow() != root_window)
       continue;
@@ -395,6 +475,7 @@
 OverviewGrid::~OverviewGrid() = default;
 
 void OverviewGrid::Shutdown() {
+  Shell::Get()->split_view_controller()->RemoveObserver(this);
   ScreenRotationAnimator::GetForRootWindow(root_window_)->RemoveObserver(this);
   Shell::Get()->wallpaper_controller()->RemoveObserver(this);
   grid_event_handler_.reset();
@@ -435,6 +516,7 @@
 
   for (const auto& window : window_list_)
     window->PrepareForOverview();
+  Shell::Get()->split_view_controller()->AddObserver(this);
   if (Shell::Get()->tablet_mode_controller()->InTabletMode())
     ScreenRotationAnimator::GetForRootWindow(root_window_)->AddObserver(this);
 
@@ -819,6 +901,66 @@
              : nullptr;
 }
 
+void OverviewGrid::OnDisplayMetricsChanged() {
+  // In case of split view mode, the grid bounds and item positions will be
+  // updated in |OnSplitViewDividerPositionChanged|.
+  if (Shell::Get()->split_view_controller()->InSplitViewMode())
+    return;
+  SetBoundsAndUpdatePositions(
+      GetGridBoundsInScreen(root_window_, /*divider_changed=*/false),
+      /*ignored_items=*/{}, /*animate=*/false);
+}
+
+void OverviewGrid::OnSplitViewStateChanged(
+    SplitViewController::State previous_state,
+    SplitViewController::State state) {
+  // Do nothing if overview is being shutdown.
+  OverviewController* overview_controller = Shell::Get()->overview_controller();
+  if (!overview_controller->InOverviewSession())
+    return;
+
+  SplitViewController* split_view_controller =
+      Shell::Get()->split_view_controller();
+  const bool unsnappable_window_activated =
+      state == SplitViewController::State::kNoSnap &&
+      split_view_controller->end_reason() ==
+          SplitViewController::EndReason::kUnsnappableWindowActivated;
+
+  // Restore focus unless either a window was just snapped (and activated) or
+  // split view mode was ended by activating an unsnappable window.
+  if (state != SplitViewController::State::kNoSnap ||
+      unsnappable_window_activated) {
+    overview_session_->ResetFocusRestoreWindow(false);
+  }
+
+  // If two windows were snapped to both sides of the screen or an unsnappable
+  // window was just activated, or we're in single split mode in clamshell mode
+  // and there is no window in overview, end overview mode and bail out.
+  if (state == SplitViewController::State::kBothSnapped ||
+      unsnappable_window_activated ||
+      (split_view_controller->InClamshellSplitViewMode() &&
+       overview_session_->IsEmpty())) {
+    overview_controller->EndOverview();
+    return;
+  }
+
+  // Adjust the grid bounds and update the cannot snap warnings.
+  SetBoundsAndUpdatePositions(
+      GetGridBoundsInScreen(root_window_, /*divider_changed=*/false),
+      /*ignored_items=*/{}, /*animate=*/false);
+  UpdateCannotSnapWarningVisibility();
+
+  // Activate the overview focus window, to match the behavior of entering
+  // overview mode in the beginning.
+  wm::ActivateWindow(overview_session_->GetOverviewFocusWindow());
+}
+
+void OverviewGrid::OnSplitViewDividerPositionChanged() {
+  SetBoundsAndUpdatePositions(GetGridBoundsInScreen(root_window_,
+                                                    /*divider_changed=*/true),
+                              /*ignored_items=*/{}, /*animate=*/false);
+}
+
 void OverviewGrid::OnScreenCopiedBeforeRotation() {
   Shell::Get()->overview_controller()->PauseOcclusionTracker();
 
diff --git a/ash/wm/overview/overview_grid.h b/ash/wm/overview/overview_grid.h
index 65da1904..f94929e 100644
--- a/ash/wm/overview/overview_grid.h
+++ b/ash/wm/overview/overview_grid.h
@@ -13,6 +13,8 @@
 #include "ash/public/cpp/wallpaper_controller_observer.h"
 #include "ash/rotator/screen_rotation_animator_observer.h"
 #include "ash/wm/overview/overview_session.h"
+#include "ash/wm/splitview/split_view_controller.h"
+#include "ash/wm/splitview/split_view_observer.h"
 #include "ash/wm/window_state.h"
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
@@ -51,13 +53,13 @@
 //    0, 1, 2, 3, 4, 5, 6
 // The selector is switched to the next window grid (if available) or wrapped if
 // it reaches the end of its movement sequence.
-class ASH_EXPORT OverviewGrid : public ScreenRotationAnimatorObserver,
+class ASH_EXPORT OverviewGrid : public SplitViewObserver,
+                                public ScreenRotationAnimatorObserver,
                                 public WallpaperControllerObserver {
  public:
   OverviewGrid(aura::Window* root_window,
                const std::vector<aura::Window*>& window_list,
-               OverviewSession* overview_session,
-               const gfx::Rect& bounds_in_screen);
+               OverviewSession* overview_session);
   ~OverviewGrid() override;
 
   // Exits overview mode.
@@ -169,6 +171,15 @@
   // Returns nullptr if overview does not have the drop target.
   OverviewItem* GetDropTarget();
 
+  // Called by |OverviewSession::OnDisplayMetricsChanged|, only for the display
+  // with this grid.
+  void OnDisplayMetricsChanged();
+
+  // SplitViewObserver:
+  void OnSplitViewStateChanged(SplitViewController::State previous_state,
+                               SplitViewController::State state) override;
+  void OnSplitViewDividerPositionChanged() override;
+
   // ScreenRotationAnimatorObserver:
   void OnScreenCopiedBeforeRotation() override;
   void OnScreenRotationAnimationFinished(ScreenRotationAnimator* animator,
diff --git a/ash/wm/overview/overview_grid_unittest.cc b/ash/wm/overview/overview_grid_unittest.cc
index 8f03122..fa7a471 100644
--- a/ash/wm/overview/overview_grid_unittest.cc
+++ b/ash/wm/overview/overview_grid_unittest.cc
@@ -34,10 +34,7 @@
   void InitializeGrid(const std::vector<aura::Window*>& windows) {
     ASSERT_FALSE(grid_);
     aura::Window* root = Shell::GetPrimaryRootWindow();
-    grid_ = std::make_unique<OverviewGrid>(
-        root, windows, nullptr,
-        screen_util::GetDisplayWorkAreaBoundsInParentForActiveDeskContainer(
-            root));
+    grid_ = std::make_unique<OverviewGrid>(root, windows, nullptr);
   }
 
   void CheckAnimationStates(
@@ -222,7 +219,7 @@
 
 // Tests that only one window animates when entering overview from splitview
 // double snapped.
-TEST_F(OverviewGridTest, SnappedWindow) {
+TEST_F(OverviewGridTest, DISABLED_SnappedWindow) {
   auto window1 = CreateTestWindow(gfx::Rect(100, 100));
   auto window2 = CreateTestWindow(gfx::Rect(100, 100));
   auto window3 = CreateTestWindow(gfx::Rect(100, 100));
diff --git a/ash/wm/overview/overview_session.cc b/ash/wm/overview/overview_session.cc
index 4d13894..7a534a1 100644
--- a/ash/wm/overview/overview_session.cc
+++ b/ash/wm/overview/overview_session.cc
@@ -12,11 +12,10 @@
 #include "ash/app_list/app_list_controller_impl.h"
 #include "ash/metrics/user_metrics_recorder.h"
 #include "ash/public/cpp/ash_features.h"
-#include "ash/public/cpp/shelf_config.h"
 #include "ash/public/cpp/shell_window_ids.h"
 #include "ash/public/cpp/window_properties.h"
+#include "ash/root_window_settings.h"
 #include "ash/screen_util.h"
-#include "ash/shelf/shelf.h"
 #include "ash/shell.h"
 #include "ash/strings/grit/ash_strings.h"
 #include "ash/wm/desks/desk.h"
@@ -73,86 +72,6 @@
 constexpr int kKeyboardPressScrollingDp = 75;
 constexpr int kKeyboardHoldScrollingDp = 15;
 
-// Returns the bounds for the overview window grid according to the split view
-// state. If split view mode is active, the overview window should open on the
-// opposite side of the default snap window. If |divider_changed| is true, maybe
-// clamp the bounds to a minimum size and shift the bounds offscreen.
-gfx::Rect GetGridBoundsInScreen(aura::Window* root_window,
-                                bool divider_changed) {
-  gfx::Rect work_area =
-      screen_util::GetDisplayWorkAreaBoundsInScreenForActiveDeskContainer(
-          root_window);
-
-  // If the shelf is in auto hide, overview will force it to be in auto hide
-  // shown, but we want to place the thumbnails as if the shelf was shown, so
-  // manually update the work area.
-  if (Shelf::ForWindow(root_window)->GetVisibilityState() == SHELF_AUTO_HIDE) {
-    const int inset = ShelfConfig::Get()->shelf_size();
-    switch (Shelf::ForWindow(root_window)->alignment()) {
-      case SHELF_ALIGNMENT_BOTTOM:
-      case SHELF_ALIGNMENT_BOTTOM_LOCKED:
-        work_area.Inset(0, 0, 0, inset);
-        break;
-      case SHELF_ALIGNMENT_LEFT:
-        work_area.Inset(inset, 0, 0, 0);
-        break;
-      case SHELF_ALIGNMENT_RIGHT:
-        work_area.Inset(0, 0, inset, 0);
-        break;
-      default:
-        NOTREACHED();
-        break;
-    }
-  }
-
-  SplitViewController* split_view_controller =
-      Shell::Get()->split_view_controller();
-  if (!split_view_controller->InSplitViewMode())
-    return work_area;
-
-  SplitViewController::SnapPosition opposite_position =
-      (split_view_controller->default_snap_position() ==
-       SplitViewController::LEFT)
-          ? SplitViewController::RIGHT
-          : SplitViewController::LEFT;
-  gfx::Rect bounds = split_view_controller->GetSnappedWindowBoundsInScreen(
-      root_window, opposite_position);
-  if (!divider_changed)
-    return bounds;
-
-  const bool landscape = IsCurrentScreenOrientationLandscape();
-  const int min_length =
-      (landscape ? work_area.width() : work_area.height()) / 3;
-  const int current_length = landscape ? bounds.width() : bounds.height();
-
-  if (current_length > min_length)
-    return bounds;
-
-  // Clamp bounds' length to the minimum length.
-  if (landscape)
-    bounds.set_width(min_length);
-  else
-    bounds.set_height(min_length);
-
-  // The |opposite_position| will be physically on the left or top of the screen
-  // (depending on whether the orientation is landscape or portrait
-  //  respectively), if |opposite_position| is left AND current orientation is
-  // primary, OR |opposite_position| is right AND current orientation is not
-  // primary. This is an X-NOR condition.
-  const bool primary = IsCurrentScreenOrientationPrimary();
-  const bool left_or_top =
-      (primary == (opposite_position == SplitViewController::LEFT));
-  if (left_or_top) {
-    // If we are shifting to the left or top we need to update the origin as
-    // well.
-    const int offset = min_length - current_length;
-    bounds.Offset(landscape ? gfx::Vector2d(-offset, 0)
-                            : gfx::Vector2d(0, -offset));
-  }
-
-  return bounds;
-}
-
 void EndOverview() {
   Shell::Get()->overview_controller()->EndOverview();
 }
@@ -215,9 +134,7 @@
       observed_windows_.insert(container);
     }
 
-    auto grid = std::make_unique<OverviewGrid>(
-        root, windows, this,
-        GetGridBoundsInScreen(root, /*divider_changed=*/false));
+    auto grid = std::make_unique<OverviewGrid>(root, windows, this);
     num_items_ += grid->size();
     grid_list_.push_back(std::move(grid));
   }
@@ -773,6 +690,31 @@
   return true;
 }
 
+void OverviewSession::ResetFocusRestoreWindow(bool focus) {
+  if (!restore_focus_window_)
+    return;
+
+  if (features::IsVirtualDesksEnabled()) {
+    // Do not restore focus to a window that exists on an inactive desk.
+    focus &= base::Contains(DesksController::Get()->active_desk()->windows(),
+                            restore_focus_window_);
+  }
+
+  // Ensure the window is still in the window hierarchy and not in the middle
+  // of teardown.
+  if (focus && restore_focus_window_->GetRootWindow()) {
+    base::AutoReset<bool> restoring_focus(&ignore_activations_, true);
+    wm::ActivateWindow(restore_focus_window_);
+  }
+  // If the window is in the observed_windows_ list it needs to continue to be
+  // observed.
+  if (observed_windows_.find(restore_focus_window_) ==
+      observed_windows_.end()) {
+    restore_focus_window_->RemoveObserver(this);
+  }
+  restore_focus_window_ = nullptr;
+}
+
 void OverviewSession::OnHighlightedItemActivated(OverviewItem* item) {
   UMA_HISTOGRAM_COUNTS_100("Ash.WindowSelector.ArrowKeyPresses",
                            num_key_presses_);
@@ -802,14 +744,23 @@
 
 void OverviewSession::OnDisplayMetricsChanged(const display::Display& display,
                                               uint32_t metrics) {
+  GetGridWithRootWindow(Shell::GetRootWindowForDisplayId(display.id()))
+      ->OnDisplayMetricsChanged();
+
   if (split_view_drag_indicators_)
     split_view_drag_indicators_->OnDisplayBoundsChanged();
 
-  // For metrics changes that happen when the split view mode is active, the
-  // display bounds will be adjusted in OnSplitViewDividerPositionChanged().
+  // The no windows widget is on the primary root window. If |display|
+  // corresponds to another root window, then we are done.
+  if (display.id() !=
+      GetRootWindowSettings(Shell::GetPrimaryRootWindow())->display_id) {
+    return;
+  }
+  // In case of split view mode, the no windows widget bounds will be updated in
+  // |OnSplitViewDividerPositionChanged|.
   if (Shell::Get()->split_view_controller()->InSplitViewMode())
     return;
-  OnDisplayBoundsChanged();
+  RefreshNoWindowsWidgetBounds(/*animate=*/false);
 }
 
 void OverviewSession::OnWindowHierarchyChanged(
@@ -956,74 +907,11 @@
   if (!Shell::Get()->overview_controller()->InOverviewSession())
     return;
 
-  const bool unsnappable_window_activated =
-      state == SplitViewController::State::kNoSnap &&
-      Shell::Get()->split_view_controller()->end_reason() ==
-          SplitViewController::EndReason::kUnsnappableWindowActivated;
-
-  // Restore focus unless either a window was just snapped (and activated) or
-  // split view mode was ended by activating an unsnappable window.
-  if (state != SplitViewController::State::kNoSnap ||
-      unsnappable_window_activated)
-    ResetFocusRestoreWindow(false);
-
-  // If two windows were snapped to both sides of the screen or an unsnappable
-  // window was just activated, or we're in single split mode in clamshell mode
-  // and there is no window in overview, end overview mode and bail out.
-  if (state == SplitViewController::State::kBothSnapped ||
-      unsnappable_window_activated ||
-      (Shell::Get()->split_view_controller()->InClamshellSplitViewMode() &&
-       IsEmpty())) {
-    EndOverview();
-    return;
-  }
-
-  // Adjust the overview window grid bounds if overview mode is active.
-  OnDisplayBoundsChanged();
-  for (auto& grid : grid_list_)
-    grid->UpdateCannotSnapWarningVisibility();
-
-  // Transfer focus from |window| to |overview_focus_widget_| to match the
-  // behavior of entering overview mode in the beginning.
-  DCHECK(overview_focus_widget_);
-  wm::ActivateWindow(GetOverviewFocusWindow());
-}
-
-void OverviewSession::OnSplitViewDividerPositionChanged() {
-  DCHECK(Shell::Get()->split_view_controller()->InSplitViewMode());
-  // Re-calculate the bounds for the window grids and position all the windows.
-  for (std::unique_ptr<OverviewGrid>& grid : grid_list_) {
-    grid->SetBoundsAndUpdatePositions(
-        GetGridBoundsInScreen(const_cast<aura::Window*>(grid->root_window()),
-                              /*divider_changed=*/true),
-        /*ignored_items=*/{}, /*animate=*/false);
-  }
   RefreshNoWindowsWidgetBounds(/*animate=*/false);
 }
 
-void OverviewSession::ResetFocusRestoreWindow(bool focus) {
-  if (!restore_focus_window_)
-    return;
-
-  if (features::IsVirtualDesksEnabled()) {
-    // Do not restore focus to a window that exists on an inactive desk.
-    focus &= base::Contains(DesksController::Get()->active_desk()->windows(),
-                            restore_focus_window_);
-  }
-
-  // Ensure the window is still in the window hierarchy and not in the middle
-  // of teardown.
-  if (focus && restore_focus_window_->GetRootWindow()) {
-    base::AutoReset<bool> restoring_focus(&ignore_activations_, true);
-    wm::ActivateWindow(restore_focus_window_);
-  }
-  // If the window is in the observed_windows_ list it needs to continue to be
-  // observed.
-  if (observed_windows_.find(restore_focus_window_) ==
-      observed_windows_.end()) {
-    restore_focus_window_->RemoveObserver(this);
-  }
-  restore_focus_window_ = nullptr;
+void OverviewSession::OnSplitViewDividerPositionChanged() {
+  RefreshNoWindowsWidgetBounds(/*animate=*/false);
 }
 
 void OverviewSession::Move(bool reverse) {
@@ -1075,17 +963,6 @@
     restore_focus_window_->RemoveObserver(this);
 }
 
-void OverviewSession::OnDisplayBoundsChanged() {
-  // Re-calculate the bounds for the window grids and position all the windows.
-  for (std::unique_ptr<OverviewGrid>& grid : grid_list_) {
-    grid->SetBoundsAndUpdatePositions(
-        GetGridBoundsInScreen(const_cast<aura::Window*>(grid->root_window()),
-                              /*divider_changed=*/false),
-        /*ignored_items=*/{}, /*animate=*/false);
-  }
-  RefreshNoWindowsWidgetBounds(/*animate=*/false);
-}
-
 void OverviewSession::UpdateNoWindowsWidget() {
   if (is_shutting_down_)
     return;
diff --git a/ash/wm/overview/overview_session.h b/ash/wm/overview/overview_session.h
index 3b17ad0..eb327b8 100644
--- a/ash/wm/overview/overview_session.h
+++ b/ash/wm/overview/overview_session.h
@@ -239,6 +239,10 @@
   // Returns true if all its window grids don't have any window item.
   bool IsEmpty() const;
 
+  // If |focus| is true, restores focus to |restore_focus_window_|. Sets
+  // |restore_focus_window_| to null regardless of |focus|.
+  void ResetFocusRestoreWindow(bool focus);
+
   // Handles requests to active or close the currently highlighted |item|.
   void OnHighlightedItemActivated(OverviewItem* item);
   void OnHighlightedItemClosed(OverviewItem* item);
@@ -305,9 +309,6 @@
   friend class DesksAcceleratorsTest;
   friend class OverviewSessionTest;
 
-  // |focus|, restores focus to the stored window.
-  void ResetFocusRestoreWindow(bool focus);
-
   // Helper function that moves the selection widget to forward or backward on
   // the corresponding window grid.
   void Move(bool reverse);
@@ -320,9 +321,6 @@
   // initialization.
   void RemoveAllObservers();
 
-  // Called when the display area for the overview window grids changed.
-  void OnDisplayBoundsChanged();
-
   void UpdateNoWindowsWidget();
 
   void RefreshNoWindowsWidgetBounds(bool animate);
diff --git a/base/BUILD.gn b/base/BUILD.gn
index 27dbe41..da70270 100644
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -34,6 +34,7 @@
 import("//build/timestamp.gni")
 import("//testing/libfuzzer/fuzzer_test.gni")
 import("//testing/test.gni")
+import("//third_party/icu/config.gni")
 
 if (is_mac) {
   # Used to generate fuzzer corpus :base_mach_port_rendezvous_convert_corpus.
@@ -2549,6 +2550,7 @@
     "i18n/character_encoding_unittest.cc",
     "i18n/file_util_icu_unittest.cc",
     "i18n/icu_string_conversions_unittest.cc",
+    "i18n/icu_util_unittest.cc",
     "i18n/message_formatter_unittest.cc",
     "i18n/number_formatting_unittest.cc",
     "i18n/rtl_unittest.cc",
@@ -2929,6 +2931,15 @@
     ]
   }
 
+  if (icu_use_data_file) {
+    if (is_android) {
+      deps += [ "//third_party/icu:icu_extra_assets" ]
+    } else {
+      deps += [ "//third_party/icu:extra_icudata" ]
+      data += [ "$root_out_dir/icudtl_extra.dat" ]
+    }
+  }
+
   if (is_ios) {
     # ios does not use test_launcher to run gtests.
     sources -= [
diff --git a/base/i18n/icu_util.cc b/base/i18n/icu_util.cc
index f494287..1440689 100644
--- a/base/i18n/icu_util.cc
+++ b/base/i18n/icu_util.cc
@@ -69,9 +69,11 @@
 // build pkg configurations, etc). 'l' stands for Little Endian.
 // This variable is exported through the header file.
 const char kIcuDataFileName[] = "icudtl.dat";
+const char kIcuExtraDataFileName[] = "icudtl_extra.dat";
+
 #if defined(OS_ANDROID)
-const char kAndroidAssetsIcuDataFileName[] = "assets/icudtl.dat";
-#endif
+const char kAssetsPathPrefix[] = "assets/";
+#endif  // defined(OS_ANDROID)
 
 // File handle intentionally never closed. Not using File here because its
 // Windows implementation guards against two instances owning the same
@@ -79,25 +81,31 @@
 PlatformFile g_icudtl_pf = kInvalidPlatformFile;
 MemoryMappedFile* g_icudtl_mapped_file = nullptr;
 MemoryMappedFile::Region g_icudtl_region;
+PlatformFile g_icudtl_extra_pf = kInvalidPlatformFile;
+MemoryMappedFile* g_icudtl_extra_mapped_file = nullptr;
+MemoryMappedFile::Region g_icudtl_extra_region;
 
-void LazyInitIcuDataFile() {
-  if (g_icudtl_pf != kInvalidPlatformFile) {
-    return;
-  }
+struct PfRegion {
+ public:
+  PlatformFile pf;
+  MemoryMappedFile::Region region;
+};
+
+std::unique_ptr<PfRegion> OpenIcuDataFile(const std::string& filename) {
+  auto result = std::make_unique<PfRegion>();
 #if defined(OS_ANDROID)
-  int fd =
-      android::OpenApkAsset(kAndroidAssetsIcuDataFileName, &g_icudtl_region);
-  g_icudtl_pf = fd;
-  if (fd != -1) {
-    return;
+  result->pf =
+      android::OpenApkAsset(kAssetsPathPrefix + filename, &result->region);
+  if (result->pf != -1) {
+    return result;
   }
-// For unit tests, data file is located on disk, so try there as a fallback.
 #endif  // defined(OS_ANDROID)
+  // For unit tests, data file is located on disk, so try there as a fallback.
 #if !defined(OS_MACOSX)
   FilePath data_path;
   if (!PathService::Get(DIR_ASSETS, &data_path)) {
-    LOG(ERROR) << "Can't find " << kIcuDataFileName;
-    return;
+    LOG(ERROR) << "Can't find " << filename;
+    return nullptr;
   }
 #if defined(OS_WIN)
   // TODO(brucedawson): http://crbug.com/445616
@@ -105,7 +113,7 @@
   wcscpy_s(tmp_buffer, as_wcstr(data_path.value()));
   debug::Alias(tmp_buffer);
 #endif
-  data_path = data_path.AppendASCII(kIcuDataFileName);
+  data_path = data_path.AppendASCII(filename);
 
 #if defined(OS_WIN)
   // TODO(brucedawson): http://crbug.com/445616
@@ -116,8 +124,7 @@
 
 #else  // !defined(OS_MACOSX)
   // Assume it is in the framework bundle's Resources directory.
-  ScopedCFTypeRef<CFStringRef> data_file_name(
-      SysUTF8ToCFStringRef(kIcuDataFileName));
+  ScopedCFTypeRef<CFStringRef> data_file_name(SysUTF8ToCFStringRef(filename));
   FilePath data_path = mac::PathForFrameworkBundleResource(data_file_name);
 #if defined(OS_IOS)
   FilePath override_data_path = ios::FilePathOfEmbeddedICU();
@@ -126,8 +133,8 @@
   }
 #endif  // !defined(OS_IOS)
   if (data_path.empty()) {
-    LOG(ERROR) << kIcuDataFileName << " not found in bundle";
-    return;
+    LOG(ERROR) << filename << " not found in bundle";
+    return nullptr;
   }
 #endif  // !defined(OS_MACOSX)
   File file(data_path, File::FLAG_OPEN | File::FLAG_READ);
@@ -139,8 +146,8 @@
     g_debug_icu_pf_filename[0] = 0;
 #endif  // OS_WIN
 
-    g_icudtl_pf = file.TakePlatformFile();
-    g_icudtl_region = MemoryMappedFile::Region::kWholeFile;
+    result->pf = file.TakePlatformFile();
+    result->region = MemoryMappedFile::Region::kWholeFile;
   }
 #if defined(OS_WIN)
   else {
@@ -150,6 +157,47 @@
     wcscpy_s(g_debug_icu_pf_filename, as_wcstr(data_path.value()));
   }
 #endif  // OS_WIN
+
+  return result;
+}
+
+void LazyOpenIcuDataFile() {
+  if (g_icudtl_pf != kInvalidPlatformFile) {
+    return;
+  }
+  auto pf_region = OpenIcuDataFile(kIcuDataFileName);
+  if (!pf_region) {
+    return;
+  }
+  g_icudtl_pf = pf_region->pf;
+  g_icudtl_region = pf_region->region;
+}
+
+int LoadIcuData(PlatformFile data_fd,
+                const MemoryMappedFile::Region& data_region,
+                std::unique_ptr<MemoryMappedFile>* out_mapped_data_file,
+                UErrorCode* out_error_code) {
+  if (data_fd == kInvalidPlatformFile) {
+    LOG(ERROR) << "Invalid file descriptor to ICU data received.";
+    return 1;  // To debug http://crbug.com/445616.
+  }
+
+  out_mapped_data_file->reset(new MemoryMappedFile());
+  if (!(*out_mapped_data_file)->Initialize(File(data_fd), data_region)) {
+    LOG(ERROR) << "Couldn't mmap icu data file";
+    return 2;  // To debug http://crbug.com/445616.
+  }
+
+  (*out_error_code) = U_ZERO_ERROR;
+  udata_setCommonData(const_cast<uint8_t*>((*out_mapped_data_file)->data()),
+                      out_error_code);
+  if (U_FAILURE(*out_error_code)) {
+    LOG(ERROR) << "Failed to initialize ICU with data file: "
+               << u_errorName(*out_error_code);
+    return 3;  // To debug http://crbug.com/445616.
+  }
+
+  return 0;
 }
 
 bool InitializeICUWithFileDescriptorInternal(
@@ -160,28 +208,20 @@
     g_debug_icu_load = 0;  // To debug http://crbug.com/445616.
     return true;
   }
-  if (data_fd == kInvalidPlatformFile) {
-    g_debug_icu_load = 1;  // To debug http://crbug.com/445616.
-    LOG(ERROR) << "Invalid file descriptor to ICU data received.";
+
+  std::unique_ptr<MemoryMappedFile> mapped_file;
+  UErrorCode err;
+  g_debug_icu_load = LoadIcuData(data_fd, data_region, &mapped_file, &err);
+  if (g_debug_icu_load == 1 || g_debug_icu_load == 2) {
     return false;
   }
+  g_icudtl_mapped_file = mapped_file.release();
 
-  std::unique_ptr<MemoryMappedFile> icudtl_mapped_file(new MemoryMappedFile());
-  if (!icudtl_mapped_file->Initialize(File(data_fd), data_region)) {
-    g_debug_icu_load = 2;  // To debug http://crbug.com/445616.
-    LOG(ERROR) << "Couldn't mmap icu data file";
-    return false;
-  }
-  g_icudtl_mapped_file = icudtl_mapped_file.release();
-
-  UErrorCode err = U_ZERO_ERROR;
-  udata_setCommonData(const_cast<uint8_t*>(g_icudtl_mapped_file->data()), &err);
-  if (err != U_ZERO_ERROR) {
-    g_debug_icu_load = 3;  // To debug http://crbug.com/445616.
+  if (g_debug_icu_load == 3) {
     g_debug_icu_last_error = err;
   }
 #if defined(OS_ANDROID)
-  else {
+  else if (g_debug_icu_load == 0) {
     // On Android, we can't leave it up to ICU to set the default timezone
     // because ICU's timezone detection does not work in many timezones (e.g.
     // Australia/Sydney, Asia/Seoul, Europe/Paris ). Use JNI to detect the host
@@ -195,7 +235,7 @@
 #endif
   // Never try to load ICU data from files.
   udata_setFileAccess(UDATA_ONLY_PACKAGES, &err);
-  return err == U_ZERO_ERROR;
+  return U_SUCCESS(err);
 }
 #endif  // ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
 #endif  // !defined(OS_NACL)
@@ -204,7 +244,23 @@
 
 #if !defined(OS_NACL)
 #if ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
-#if defined(OS_ANDROID)
+bool InitializeExtraICUWithFileDescriptor(
+    PlatformFile data_fd,
+    const MemoryMappedFile::Region& data_region) {
+  if (g_icudtl_pf != kInvalidPlatformFile) {
+    // Must call InitializeExtraICUWithFileDescriptor() before
+    // InitializeICUWithFileDescriptor().
+    return false;
+  }
+  std::unique_ptr<MemoryMappedFile> mapped_file;
+  UErrorCode err;
+  if (LoadIcuData(data_fd, data_region, &mapped_file, &err) != 0) {
+    return false;
+  }
+  g_icudtl_extra_mapped_file = mapped_file.release();
+  return true;
+}
+
 bool InitializeICUWithFileDescriptor(
     PlatformFile data_fd,
     const MemoryMappedFile::Region& data_region) {
@@ -220,7 +276,14 @@
   *out_region = g_icudtl_region;
   return g_icudtl_pf;
 }
-#endif
+
+PlatformFile GetIcuExtraDataFileHandle(MemoryMappedFile::Region* out_region) {
+  if (g_icudtl_extra_pf == kInvalidPlatformFile) {
+    return kInvalidPlatformFile;
+  }
+  *out_region = g_icudtl_extra_region;
+  return g_icudtl_extra_pf;
+}
 
 const uint8_t* GetRawIcuMemory() {
   CHECK(g_icudtl_mapped_file);
@@ -244,7 +307,28 @@
 #endif
 }
 
-#endif  // ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
+bool InitializeExtraICU() {
+  if (g_icudtl_pf != kInvalidPlatformFile) {
+    // Must call InitializeExtraICU() before InitializeICU().
+    return false;
+  }
+  auto pf_region = OpenIcuDataFile(kIcuExtraDataFileName);
+  if (!pf_region) {
+    return false;
+  }
+  g_icudtl_extra_pf = pf_region->pf;
+  g_icudtl_extra_region = pf_region->region;
+  std::unique_ptr<MemoryMappedFile> mapped_file;
+  UErrorCode err;
+  if (LoadIcuData(g_icudtl_extra_pf, g_icudtl_extra_region, &mapped_file,
+                  &err) != 0) {
+    return false;
+  }
+  g_icudtl_extra_mapped_file = mapped_file.release();
+  return true;
+}
+
+#endif  // (ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE)
 
 bool InitializeICU() {
 #if DCHECK_IS_ON()
@@ -261,7 +345,7 @@
   // it is needed.  This can fail if the process is sandboxed at that time.
   // Instead, we map the file in and hand off the data so the sandbox won't
   // cause any problems.
-  LazyInitIcuDataFile();
+  LazyOpenIcuDataFile();
   result =
       InitializeICUWithFileDescriptorInternal(g_icudtl_pf, g_icudtl_region);
 #if defined(OS_WIN)
@@ -299,5 +383,16 @@
 #endif
 }
 
+#if !defined(OS_NACL)
+#if ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
+void ResetGlobalsForTesting() {
+  g_icudtl_pf = kInvalidPlatformFile;
+  g_icudtl_mapped_file = nullptr;
+  g_icudtl_extra_pf = kInvalidPlatformFile;
+  g_icudtl_extra_mapped_file = nullptr;
+}
+#endif  // ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
+#endif  // !defined(OS_NACL)
+
 }  // namespace i18n
 }  // namespace base
diff --git a/base/i18n/icu_util.h b/base/i18n/icu_util.h
index a861ce6..4324dc5 100644
--- a/base/i18n/icu_util.h
+++ b/base/i18n/icu_util.h
@@ -23,18 +23,28 @@
 BASE_I18N_EXPORT bool InitializeICU();
 
 #if ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
-#if defined(OS_ANDROID)
-// Returns the PlatformFile and Region that was initialized by InitializeICU().
-// Use with InitializeICUWithFileDescriptor().
+// Loads ICU's extra data tables from disk for the current process. If used must
+// be called before InitializeICU().
+BASE_I18N_EXPORT bool InitializeExtraICU();
+// Returns the PlatformFile and Region that was initialized by InitializeICU()
+// or InitializeExtraICU(). Use with InitializeICUWithFileDescriptor() or
+// InitializeExtraICUWithFileDescriptor().
 BASE_I18N_EXPORT PlatformFile GetIcuDataFileHandle(
     MemoryMappedFile::Region* out_region);
+BASE_I18N_EXPORT PlatformFile
+GetIcuExtraDataFileHandle(MemoryMappedFile::Region* out_region);
 
-// Android uses a file descriptor passed by browser process to initialize ICU
-// in render processes.
+// Loads ICU extra data file from file descriptor passed by browser process to
+// initialize ICU in render processes. If used must be called before
+// InitializeICUWithFileDescriptor().
+BASE_I18N_EXPORT bool InitializeExtraICUWithFileDescriptor(
+    PlatformFile data_fd,
+    const MemoryMappedFile::Region& data_region);
+// Loads ICU data file from file descriptor passed by browser process to
+// initialize ICU in render processes.
 BASE_I18N_EXPORT bool InitializeICUWithFileDescriptor(
     PlatformFile data_fd,
     const MemoryMappedFile::Region& data_region);
-#endif
 
 // Returns a void pointer to the memory mapped ICU data file.
 //
@@ -60,6 +70,12 @@
 // In a test binary, the call above might occur twice.
 BASE_I18N_EXPORT void AllowMultipleInitializeCallsForTesting();
 
+#if !defined(OS_NACL)
+#if ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
+BASE_I18N_EXPORT void ResetGlobalsForTesting();
+#endif  // ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
+#endif  // !defined(OS_NACL)
+
 }  // namespace i18n
 }  // namespace base
 
diff --git a/base/i18n/icu_util_unittest.cc b/base/i18n/icu_util_unittest.cc
new file mode 100644
index 0000000..75b6c4a
--- /dev/null
+++ b/base/i18n/icu_util_unittest.cc
@@ -0,0 +1,82 @@
+// Copyright (c) 2019 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 "base/i18n/icu_util.h"
+
+#include "build/build_config.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+#if !defined(OS_NACL)
+#if ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
+
+namespace base {
+namespace i18n {
+
+class IcuUtilTest : public testing::Test {
+ protected:
+  void SetUp() override { ResetGlobalsForTesting(); }
+};
+
+#if defined(OS_ANDROID)
+
+TEST_F(IcuUtilTest, InitializeIcuSucceeds) {
+  bool success = InitializeICU();
+
+  ASSERT_TRUE(success);
+}
+
+TEST_F(IcuUtilTest, ExtraFileNotInitializedAtStart) {
+  MemoryMappedFile::Region region;
+  PlatformFile file = GetIcuExtraDataFileHandle(&region);
+
+  ASSERT_EQ(file, kInvalidPlatformFile);
+}
+
+TEST_F(IcuUtilTest, InitializeExtraIcuSucceeds) {
+  bool success = InitializeExtraICU();
+
+  ASSERT_TRUE(success);
+}
+
+TEST_F(IcuUtilTest, CannotInitializeExtraIcuAfterIcu) {
+  InitializeICU();
+  bool success = InitializeExtraICU();
+
+  ASSERT_FALSE(success);
+}
+
+TEST_F(IcuUtilTest, ExtraFileInitializedAfterInit) {
+  InitializeExtraICU();
+  MemoryMappedFile::Region region;
+  PlatformFile file = GetIcuExtraDataFileHandle(&region);
+
+  ASSERT_NE(file, kInvalidPlatformFile);
+}
+
+TEST_F(IcuUtilTest, InitializeExtraIcuFromFdSucceeds) {
+  InitializeExtraICU();
+  MemoryMappedFile::Region region;
+  PlatformFile pf = GetIcuExtraDataFileHandle(&region);
+  bool success = InitializeExtraICUWithFileDescriptor(pf, region);
+
+  ASSERT_TRUE(success);
+}
+
+TEST_F(IcuUtilTest, CannotInitializeExtraIcuFromFdAfterIcu) {
+  InitializeExtraICU();
+  InitializeICU();
+  MemoryMappedFile::Region region;
+  PlatformFile pf = GetIcuExtraDataFileHandle(&region);
+  bool success = InitializeExtraICUWithFileDescriptor(pf, region);
+
+  ASSERT_FALSE(success);
+}
+
+#endif  // defined(OS_ANDROID)
+
+}  // namespace i18n
+}  // namespace base
+
+#endif  // ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
+#endif  // !defined(OS_NACL)
diff --git a/build/android/BUILD.gn b/build/android/BUILD.gn
index 4f36326..486fc1c 100644
--- a/build/android/BUILD.gn
+++ b/build/android/BUILD.gn
@@ -92,6 +92,7 @@
   if (build_with_chromium) {
     data += [
       "//third_party/android_build_tools/bundletool/bundletool-all-0.10.3.jar",
+      "//tools/android/avd/proto/",
     ]
     data_deps +=
         [ "//third_party/android_platform/development/scripts:stack_py" ]
diff --git a/build/android/gyp/dex.py b/build/android/gyp/dex.py
index 955c8f6..a30dcf3 100755
--- a/build/android/gyp/dex.py
+++ b/build/android/gyp/dex.py
@@ -402,8 +402,7 @@
       output_paths=output_paths,
       input_paths=input_paths,
       input_strings=dex_cmd + [bool(options.incremental_dir)],
-      pass_changes=True,
-      add_pydeps=False)
+      pass_changes=True)
 
 
 if __name__ == '__main__':
diff --git a/build/android/gyp/javac.py b/build/android/gyp/javac.py
index c94f3da..6826826a 100755
--- a/build/android/gyp/javac.py
+++ b/build/android/gyp/javac.py
@@ -600,8 +600,7 @@
       depfile_deps=depfile_deps,
       input_paths=input_paths,
       input_strings=input_strings,
-      output_paths=output_paths,
-      add_pydeps=False)
+      output_paths=output_paths)
   logging.info('Script complete: %s', __file__)
 
 
diff --git a/build/android/gyp/lint.py b/build/android/gyp/lint.py
index 605a478e..dfb9d089 100755
--- a/build/android/gyp/lint.py
+++ b/build/android/gyp/lint.py
@@ -439,8 +439,7 @@
       input_paths=input_paths,
       input_strings=input_strings,
       output_paths=output_paths,
-      depfile_deps=classpath,
-      add_pydeps=False)
+      depfile_deps=classpath)
 
 
 if __name__ == '__main__':
diff --git a/build/android/gyp/prepare_resources.py b/build/android/gyp/prepare_resources.py
index 6147f1a0..cb0a244 100755
--- a/build/android/gyp/prepare_resources.py
+++ b/build/android/gyp/prepare_resources.py
@@ -295,8 +295,7 @@
       input_paths=input_paths,
       input_strings=input_strings,
       output_paths=output_paths,
-      depfile_deps=depfile_deps,
-      add_pydeps=False)
+      depfile_deps=depfile_deps)
 
 
 if __name__ == '__main__':
diff --git a/build/android/gyp/util/build_utils.py b/build/android/gyp/util/build_utils.py
index 5d02405a..18a92dd 100644
--- a/build/android/gyp/util/build_utils.py
+++ b/build/android/gyp/util/build_utils.py
@@ -642,8 +642,7 @@
                                output_paths=None,
                                force=False,
                                pass_changes=False,
-                               depfile_deps=None,
-                               add_pydeps=True):
+                               depfile_deps=None):
   """Wraps md5_check.CallAndRecordIfStale() and writes a depfile if applicable.
 
   Depfiles are automatically added to output_paths when present in the |options|
@@ -661,10 +660,7 @@
   input_strings = list(input_strings or [])
   output_paths = list(output_paths or [])
 
-  python_deps = None
-  if hasattr(options, 'depfile') and options.depfile:
-    python_deps = _ComputePythonDependencies()
-    input_paths += python_deps
+  input_paths += _ComputePythonDependencies()
 
   md5_check.CallAndRecordIfStale(
       on_stale_md5,
@@ -678,9 +674,6 @@
   # Write depfile even when inputs have not changed to ensure build correctness
   # on bots that build with & without patch, and the patch changes the depfile
   # location.
-  if python_deps is not None:
-    all_depfile_deps = list(python_deps) if add_pydeps else []
-    if depfile_deps:
-      all_depfile_deps.extend(depfile_deps)
+  if hasattr(options, 'depfile') and options.depfile:
     WriteDepfile(
-        options.depfile, output_paths[0], all_depfile_deps, add_pydeps=False)
+        options.depfile, output_paths[0], depfile_deps, add_pydeps=False)
diff --git a/build/android/gyp/write_build_config.py b/build/android/gyp/write_build_config.py
index 3d842a3fc..b98bd4f 100755
--- a/build/android/gyp/write_build_config.py
+++ b/build/android/gyp/write_build_config.py
@@ -348,9 +348,9 @@
 Path to the final classes.dex file (or classes.zip in case of multi-dex)
 for this APK.
 
-* `deps_info['final_dex']['dependency_dex_files']`:
-The list of paths to all `deps_info['dex_path']` entries for all library
-dependencies for this APK.
+* `deps_info['final_dex']['all_dex_files']`:
+The list of paths to all `deps_info['dex_path']` entries for all libraries
+that comprise this APK. Valid only for debug builds.
 
 * `native['libraries']`
 List of native libraries for the primary ABI to be embedded in this APK.
@@ -1191,6 +1191,9 @@
         raise Exception('Not all deps support the Android platform: '
             + str(deps_not_support_android))
 
+  if is_apk_or_module_target:
+    all_dex_files = [c['dex_path'] for c in all_library_deps]
+
   if is_java_target:
     # Classpath values filled in below (after applying tested_apk_config).
     config['javac'] = {}
@@ -1200,6 +1203,8 @@
       deps_info['interface_jar_path'] = options.interface_jar_path
     if options.dex_path:
       deps_info['dex_path'] = options.dex_path
+      if is_apk_or_module_target:
+        all_dex_files.append(options.dex_path)
     if options.type == 'android_apk':
       deps_info['apk_path'] = options.apk_path
       deps_info['incremental_apk_path'] = options.incremental_apk_path
@@ -1318,9 +1323,6 @@
     if options.res_size_info:
       config['deps_info']['res_size_info'] = options.res_size_info
 
-  if is_apk_or_module_target:
-    deps_dex_files = [c['dex_path'] for c in all_library_deps]
-
   if options.type == 'group':
     if options.extra_classpath_jars:
       # These are .jars to add to javac classpath but not to runtime classpath.
@@ -1590,8 +1592,9 @@
     #     within proguard.py. Move the logic for the proguard case to here.
     tested_apk_library_deps = tested_apk_deps.All('java_library')
     tested_apk_deps_dex_files = [c['dex_path'] for c in tested_apk_library_deps]
-    deps_dex_files = [
-        p for p in deps_dex_files if not p in tested_apk_deps_dex_files]
+    all_dex_files = [
+        p for p in all_dex_files if not p in tested_apk_deps_dex_files
+    ]
 
   if options.type in ('android_apk', 'dist_aar', 'dist_jar',
                       'android_app_bundle_module', 'android_app_bundle'):
@@ -1605,7 +1608,7 @@
     dex_config = config['final_dex']
     dex_config['path'] = options.final_dex_path
   if is_apk_or_module_target:
-    dex_config['dependency_dex_files'] = deps_dex_files
+    dex_config['all_dex_files'] = all_dex_files
 
   if is_java_target:
     config['javac']['classpath'] = javac_classpath
@@ -1723,7 +1726,7 @@
     RemoveObjDups(config, base, 'deps_info', 'javac_full_classpath')
     RemoveObjDups(config, base, 'deps_info', 'javac_full_interface_classpath')
     RemoveObjDups(config, base, 'deps_info', 'jni', 'all_source')
-    RemoveObjDups(config, base, 'final_dex', 'dependency_dex_files')
+    RemoveObjDups(config, base, 'final_dex', 'all_dex_files')
     RemoveObjDups(config, base, 'extra_android_manifests')
 
   build_utils.WriteJson(config, options.build_config, only_if_changed=True)
diff --git a/build/android/incremental_install/write_installer_json.py b/build/android/incremental_install/write_installer_json.py
index 75bd6d1..5c3789a 100755
--- a/build/android/incremental_install/write_installer_json.py
+++ b/build/android/incremental_install/write_installer_json.py
@@ -31,19 +31,12 @@
                       default=[],
                       help='A glob matching the apk splits. '
                            'Can be specified multiple times.')
-  parser.add_argument('--native-libs-list',
-                      action='append',
-                      default=[],
-                      help='GN-list of paths to native libraries relative to '
-                           'output directory. Can be repeated.')
-  parser.add_argument('--dex-file',
-                      action='append',
-                      default=[],
-                      dest='dex_files',
-                      help='.dex file to include relative to output directory. '
-                           'Can be repeated')
-  parser.add_argument('--dex-file-list',
-                      help='GN-list of dex paths relative to output directory.')
+  parser.add_argument(
+      '--native-libs',
+      help='GN-list of paths to native libraries relative to '
+      'output directory. Can be repeated.')
+  parser.add_argument(
+      '--dex-files', help='GN-list of dex paths relative to output directory.')
   parser.add_argument('--show-proguard-warning',
                       action='store_true',
                       default=False,
@@ -52,11 +45,8 @@
                       help='Prints the given message and exits.')
 
   options = parser.parse_args(args)
-  options.dex_files += build_utils.ParseGnList(options.dex_file_list)
-  all_libs = []
-  for gn_list in options.native_libs_list:
-    all_libs.extend(build_utils.ParseGnList(gn_list))
-  options.native_libs_list = all_libs
+  options.dex_files = build_utils.ParseGnList(options.dex_files)
+  options.native_libs = build_utils.ParseGnList(options.native_libs)
   return options
 
 
@@ -65,7 +55,7 @@
 
   data = {
       'apk_path': options.apk_path,
-      'native_libs': options.native_libs_list,
+      'native_libs': options.native_libs,
       'dex_files': options.dex_files,
       'dont_even_try': options.dont_even_try,
       'show_proguard_warning': options.show_proguard_warning,
diff --git a/build/android/resource_sizes.py b/build/android/resource_sizes.py
index da74d91f..a48a951 100755
--- a/build/android/resource_sizes.py
+++ b/build/android/resource_sizes.py
@@ -462,7 +462,7 @@
   # devices running Android O (which ~= uncompressed dex size).
   # Use a constant compression factor to account for fluctuations.
   normalized_apk_size -= java_code.ComputeZippedSize()
-  normalized_apk_size += int(java_code.ComputeUncompressedSize() * 1.5)
+  normalized_apk_size += java_code.ComputeUncompressedSize()
   # Unaligned size should be ~= uncompressed size or something is wrong.
   # As of now, padding_fraction ~= .007
   padding_fraction = -_PercentageDifference(
diff --git a/build/config/android/internal_rules.gni b/build/config/android/internal_rules.gni
index bd988f1..291c66d 100644
--- a/build/config/android/internal_rules.gni
+++ b/build/config/android/internal_rules.gni
@@ -227,12 +227,15 @@
       args += [ "--annotation-processor-configs=$_rebased_processor_configs" ]
     }
 
+    # Dex path for library targets, or the the intermediate library for apks.
     if (defined(invoker.dex_path)) {
       args += [
         "--dex-path",
         rebase_path(invoker.dex_path, root_build_dir),
       ]
     }
+
+    # Dex path for the final apk.
     if (defined(invoker.final_dex_path)) {
       args += [
         "--final-dex-path",
@@ -1143,7 +1146,6 @@
     }
 
     assert(!_proguard_enabled || !(defined(invoker.input_dex_filearg) ||
-                                       defined(invoker.input_dex_jars) ||
                                        defined(invoker.input_classes_filearg) ||
                                        defined(invoker.input_class_jars)),
            "Cannot explicitly set inputs when proguarding a dex.")
@@ -1375,12 +1377,6 @@
           inputs += [ invoker.build_config ]
           args += [ "--dex-inputs-filearg=${invoker.input_dex_filearg}" ]
         }
-        if (defined(invoker.input_dex_jars) && invoker.input_dex_jars != []) {
-          inputs += invoker.input_dex_jars
-          _rebased_input_dex_jars =
-              rebase_path(invoker.input_dex_jars, root_build_dir)
-          args += [ "--dex-inputs=${_rebased_input_dex_jars}" ]
-        }
         if (defined(invoker.input_classes_filearg)) {
           inputs += [ invoker.build_config ]
           args += [ "--class-inputs-filearg=${invoker.input_classes_filearg}" ]
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
index df0d178..15fe274 100644
--- a/build/config/android/rules.gni
+++ b/build/config/android/rules.gni
@@ -2161,7 +2161,6 @@
     # JUnit tests use resource zip files. These must not be put in gen/
     # directory or they will not be available to tester bots.
     _jar_path = "$_base_path.jar"
-    _lib_dex_path = "$_base_path.dex.jar"
     _template_name = target_name
 
     _is_bundle_module =
@@ -2813,7 +2812,6 @@
       deps = _deps
       srcjar_deps = _srcjar_deps
       final_jar_path = _jar_path
-      dex_path = _lib_dex_path
       final_dex_path = _final_dex_path
 
       if (_is_bundle_module) {
@@ -2919,8 +2917,8 @@
           deps += _deps + [ ":$_compile_resources_target" ]
           proguard_mapping_path = _proguard_mapping_path
         } else {
-          input_dex_jars = [ _lib_dex_path ]
-          input_dex_filearg = "@FileArg(${_rebased_build_config}:final_dex:dependency_dex_files)"
+          input_dex_filearg =
+              "@FileArg(${_rebased_build_config}:final_dex:all_dex_files)"
           if (_enable_main_dex_list) {
             main_dex_list_input_classes_filearg = "@FileArg(${_rebased_build_config}:deps_info:java_runtime_classpath)"
           }
@@ -3207,13 +3205,10 @@
             rebase_path(_final_apk_path_no_ext, root_build_dir)
         _rebased_incremental_install_json_path =
             rebase_path(_incremental_install_json_path, root_build_dir)
-        _rebased_lib_dex_path = rebase_path(_lib_dex_path, root_build_dir)
-        _dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files"
         args = [
           "--apk-path=${_rebased_apk_path_no_ext}_incremental.apk",
           "--output-path=$_rebased_incremental_install_json_path",
-          "--dex-file=$_rebased_lib_dex_path",
-          "--dex-file-list=@FileArg($_dex_arg_key)",
+          "--dex-file=@FileArg($_rebased_build_config:final_dex:all_dex_files)",
         ]
         if (_proguard_enabled) {
           args += [ "--show-proguard-warning" ]
diff --git a/build/fuchsia/linux.sdk.sha1 b/build/fuchsia/linux.sdk.sha1
index b63f736..0fc43629 100644
--- a/build/fuchsia/linux.sdk.sha1
+++ b/build/fuchsia/linux.sdk.sha1
@@ -1 +1 @@
-8900273976449024176
\ No newline at end of file
+8900242650300651232
\ No newline at end of file
diff --git a/build/fuchsia/mac.sdk.sha1 b/build/fuchsia/mac.sdk.sha1
index 56688bb8..a30bcc9 100644
--- a/build/fuchsia/mac.sdk.sha1
+++ b/build/fuchsia/mac.sdk.sha1
@@ -1 +1 @@
-8900272273093088256
\ No newline at end of file
+8900242342079817824
\ No newline at end of file
diff --git a/cc/metrics/frame_sequence_tracker.cc b/cc/metrics/frame_sequence_tracker.cc
index 3785a41..ee9c8e2f 100644
--- a/cc/metrics/frame_sequence_tracker.cc
+++ b/cc/metrics/frame_sequence_tracker.cc
@@ -227,7 +227,7 @@
   base::Optional<ThroughputData> slower_throughput;
   if (impl_throughput_percent &&
       (!main_throughput_percent ||
-       impl_throughput_percent.value() < main_throughput_percent.value())) {
+       impl_throughput_percent.value() <= main_throughput_percent.value())) {
     slower_throughput = impl_throughput_;
   }
   if (main_throughput_percent &&
diff --git a/cc/metrics/frame_sequence_tracker_unittest.cc b/cc/metrics/frame_sequence_tracker_unittest.cc
index c04def2..a2f081f 100644
--- a/cc/metrics/frame_sequence_tracker_unittest.cc
+++ b/cc/metrics/frame_sequence_tracker_unittest.cc
@@ -149,6 +149,19 @@
         "Graphics.Smoothness.Throughput.MainThread.TouchScroll", 1u);
     histogram_tester.ExpectTotalCount(
         "Graphics.Smoothness.Throughput.SlowerThread.TouchScroll", 2u);
+
+    // Test the case where compositor and main thread have the same throughput.
+    tracker_->impl_throughput_.frames_expected = 20u;
+    tracker_->impl_throughput_.frames_produced = 18u;
+    tracker_->main_throughput_.frames_expected = 20u;
+    tracker_->main_throughput_.frames_produced = 18u;
+    tracker_->ReportMetrics();
+    histogram_tester.ExpectTotalCount(
+        "Graphics.Smoothness.Throughput.CompositorThread.TouchScroll", 3u);
+    histogram_tester.ExpectTotalCount(
+        "Graphics.Smoothness.Throughput.MainThread.TouchScroll", 2u);
+    histogram_tester.ExpectTotalCount(
+        "Graphics.Smoothness.Throughput.SlowerThread.TouchScroll", 3u);
   }
 
  protected:
diff --git a/cc/test/layer_tree_test.cc b/cc/test/layer_tree_test.cc
index 6b6fc12..add3fa4 100644
--- a/cc/test/layer_tree_test.cc
+++ b/cc/test/layer_tree_test.cc
@@ -848,12 +848,10 @@
   beginning_ = true;
   SetupTree();
   WillBeginTest();
-  bool allocate_local_surface_id = !skip_allocate_initial_local_surface_id_ &&
-                                   settings_.enable_surface_synchronization;
-  if (allocate_local_surface_id)
+  if (!skip_allocate_initial_local_surface_id_)
     GenerateNewLocalSurfaceId();
   BeginTest();
-  if (allocate_local_surface_id) {
+  if (!skip_allocate_initial_local_surface_id_) {
     PostSetLocalSurfaceIdAllocationToMainThread(
         GetCurrentLocalSurfaceIdAllocation());
   }
diff --git a/cc/trees/layer_tree_host.cc b/cc/trees/layer_tree_host.cc
index 0449e27..86ed8f7 100644
--- a/cc/trees/layer_tree_host.cc
+++ b/cc/trees/layer_tree_host.cc
@@ -457,8 +457,7 @@
 void LayerTreeHost::UpdateDeferMainFrameUpdateInternal() {
   proxy_->SetDeferMainFrameUpdate(
       defer_main_frame_update_count_ > 0 ||
-      (settings_.enable_surface_synchronization &&
-       !local_surface_id_allocation_from_parent_.IsValid()));
+      !local_surface_id_allocation_from_parent_.IsValid());
 }
 
 bool LayerTreeHost::IsUsingLayerLists() const {
@@ -1377,11 +1376,8 @@
 }
 
 void LayerTreeHost::RequestNewLocalSurfaceId() {
-  // If surface synchronization is enabled, then we can still request a new
-  // viz::LocalSurfaceId but that request will be deferred until we have a valid
-  // viz::LocalSurfaceId from the parent.
-  DCHECK(settings_.enable_surface_synchronization ||
-         local_surface_id_allocation_from_parent_.IsValid());
+  // We can still request a new viz::LocalSurfaceId but that request will be
+  // deferred until we have a valid viz::LocalSurfaceId from the parent.
   if (new_local_surface_id_request_)
     return;
   new_local_surface_id_request_ = true;
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
index 4fd7db0..a624cef 100644
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -2391,20 +2391,18 @@
       resources, &compositor_frame.resource_list,
       layer_tree_frame_sink_->context_provider());
   compositor_frame.render_pass_list = std::move(frame->render_passes);
-  // TODO(fsamuel): Once all clients get their viz::LocalSurfaceId from their
-  // parent, the viz::LocalSurfaceId should hang off CompositorFrameMetadata.
-  if (settings_.enable_surface_synchronization) {
-    // If surface synchronization is on, we should always have a valid
-    // LocalSurfaceId in LayerTreeImpl unless we don't have a scheduler because
-    // without a scheduler commits are not deferred and LayerTrees without valid
-    // LocalSurfaceId might slip through, but single-thread-without-scheduler
-    // mode is only used in tests so it doesn't matter.
-    CHECK(!settings_.single_thread_proxy_scheduler ||
-          active_tree()->local_surface_id_allocation_from_parent().IsValid());
-    layer_tree_frame_sink_->SetLocalSurfaceId(
-        child_local_surface_id_allocator_.GetCurrentLocalSurfaceIdAllocation()
-            .local_surface_id());
-  }
+
+  // We should always have a valid LocalSurfaceId in LayerTreeImpl unless we
+  // don't have a scheduler because without a scheduler commits are not deferred
+  // and LayerTrees without valid LocalSurfaceId might slip through, but
+  // single-thread-without-scheduler mode is only used in tests so it doesn't
+  // matter.
+  CHECK(!settings_.single_thread_proxy_scheduler ||
+        active_tree()->local_surface_id_allocation_from_parent().IsValid());
+  layer_tree_frame_sink_->SetLocalSurfaceId(
+      child_local_surface_id_allocator_.GetCurrentLocalSurfaceIdAllocation()
+          .local_surface_id());
+
   last_draw_local_surface_id_allocation_ =
       child_local_surface_id_allocator_.GetCurrentLocalSurfaceIdAllocation();
   return compositor_frame;
diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc
index c256a7c..c81c31a 100644
--- a/cc/trees/layer_tree_host_impl_unittest.cc
+++ b/cc/trees/layer_tree_host_impl_unittest.cc
@@ -151,7 +151,6 @@
 
   LayerTreeSettings DefaultSettings() {
     LayerListSettings settings;
-    settings.enable_surface_synchronization = true;
     settings.minimum_occlusion_tracking_size = gfx::Size();
     return settings;
   }
diff --git a/cc/trees/layer_tree_host_unittest.cc b/cc/trees/layer_tree_host_unittest.cc
index 04b477a..76e55fe5 100644
--- a/cc/trees/layer_tree_host_unittest.cc
+++ b/cc/trees/layer_tree_host_unittest.cc
@@ -641,13 +641,13 @@
 class LayerTreeHostFreeContextResourcesOnDestroy
     : public LayerTreeHostContextCacheTest {
  public:
-  void InitializeSettings(LayerTreeSettings* settings) override {
-    // TODO(crbug.com/985009): Fix test with surface sync enabled.
-    settings->enable_surface_synchronization = false;
-  }
-
   void WillBeginImplFrameOnThread(LayerTreeHostImpl* host_impl,
                                   const viz::BeginFrameArgs& args) override {
+    if (!first_will_begin_impl_frame_)
+      return;
+
+    first_will_begin_impl_frame_ = false;
+
     // Ensure that our initialization expectations have completed.
     Mock::VerifyAndClearExpectations(mock_main_context_support_);
     Mock::VerifyAndClearExpectations(mock_worker_context_support_);
@@ -659,6 +659,9 @@
                 SetAggressivelyFreeResources(true));
     EndTest();
   }
+
+ private:
+  bool first_will_begin_impl_frame_ = true;
 };
 
 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostFreeContextResourcesOnDestroy);
diff --git a/cc/trees/layer_tree_settings.h b/cc/trees/layer_tree_settings.h
index 29ff566..182eb5f 100644
--- a/cc/trees/layer_tree_settings.h
+++ b/cc/trees/layer_tree_settings.h
@@ -110,10 +110,6 @@
 
   LayerTreeDebugState initial_debug_state;
 
-  // Indicates that the LayerTreeHost should defer commits unless it has a valid
-  // viz::LocalSurfaceId set.
-  bool enable_surface_synchronization = true;
-
   // Indicates the case when a sub-frame gets its own LayerTree because it's
   // rendered in a different process from its ancestor frames.
   bool is_layer_tree_for_subframe = false;
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
index a440668..b948109 100644
--- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn
@@ -1746,7 +1746,6 @@
     ]
 
     deps = [
-      "//chrome/android/modules/test_dummy/provider:native",
       "//chrome/browser/ui",
       "//chrome/child",
       "//chrome/common",
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
index 9f6c153..9c02bd36 100644
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -390,7 +390,6 @@
   deps += feed_deps
 
   srcjar_deps = [
-    ":browser_build_config",
     ":chrome_android_java_enums_srcjar",
     ":chrome_android_java_switches_srcjar",
     ":chrome_android_java_google_api_keys_srcjar",
@@ -610,18 +609,6 @@
   template = "//chrome/android/java_templates/ChromeSwitches.java.tmpl"
 }
 
-java_cpp_template("browser_build_config") {
-  sources = [
-    "//chrome/android/java_templates/BuildConfig.template",
-  ]
-  package_path = "org/chromium/chrome/browser"
-
-  defines = []
-  if (!notouch_build) {
-    defines += [ "_ENABLE_OFFLINE_PAGES" ]
-  }
-}
-
 proto_java_library("partner_location_descriptor_proto_java") {
   proto_path = "java/src/org/chromium/chrome/browser/omnibox/geo"
   sources = [
@@ -1190,7 +1177,6 @@
     deps += [ "//chrome/browser/android/vr:module_factory" ]
   }
 
-  allow_partitions = true
   module_descs = chrome_modern_module_descs
 }
 
@@ -1460,7 +1446,6 @@
     }
 
     is_monochrome = true
-    allow_partitions = true
     module_descs = monochrome_module_descs
   }
 }
diff --git a/chrome/android/chrome_common_shared_library.gni b/chrome/android/chrome_common_shared_library.gni
index 2c612f2..783f3fd 100644
--- a/chrome/android/chrome_common_shared_library.gni
+++ b/chrome/android/chrome_common_shared_library.gni
@@ -22,12 +22,8 @@
 #    is_monochrome: Optional. If set, the library is for use in monochrome.
 #    is_webview: If true, the library is for webview, and browser-specific
 #      config is skipped.
-#    allow_partitions: If true, and the build config supports it, the library
-#      is linked as a partitioned library, and separate feature libs are
-#      generated if specified. Those libraries may later be packaged into
-#      dynamic feature modules or APKs.
-#    module_descs: Optional. Descriptors of modules for which to extract
-#      partitions. Can only be set if |allow_partitions| is true. See
+#    module_descs: Optional. Descriptors of feature modules from which deps
+#      should be included, and if enabled, partition libraries created. See
 #      //chrome/android/modules/chrome_feature_modules.gni for the descriptor
 #      format.
 template("chrome_common_shared_library") {
@@ -39,16 +35,10 @@
   _linker_script_target = "${target_name}_linker_script"
 
   # Create a partitioned libraries if the build config supports it, and the
-  # invoker wants partitions.
-  _allow_partitions =
-      defined(invoker.allow_partitions) && invoker.allow_partitions
-  _generate_partitions = _allow_partitions && use_native_modules
-  if (_generate_partitions) {
-    assert(defined(invoker.module_descs))
-  } else {
-    if (defined(invoker.module_descs)) {
-      not_needed(invoker, [ "module_descs" ])
-    }
+  # invoker has supplied module descriptors.
+  _generate_partitions = defined(invoker.module_descs) && use_native_partitions
+  if (defined(invoker.module_descs)) {
+    not_needed(invoker, [ "module_descs" ])
   }
 
   # Create a custom linker script based on JNI and feature module requirements.
@@ -107,7 +97,7 @@
       }
     }
 
-    if (_allow_partitions) {
+    if (defined(invoker.module_descs)) {
       partitions = []
       foreach(_module_desc, invoker.module_descs) {
         if (defined(_module_desc.native_deps)) {
diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni
index 1023e174..d1e968d 100644
--- a/chrome/android/chrome_public_apk_tmpl.gni
+++ b/chrome/android/chrome_public_apk_tmpl.gni
@@ -29,7 +29,6 @@
   "channel=$android_channel",
   "enable_vr=$enable_vr",
   "include_arcore_manifest_flag=false",
-  "notouch_build=$notouch_build",
 ]
 
 # Enable stack unwinding only on official build with specific channels. It is
diff --git a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/BaseSessionController.java b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/BaseSessionController.java
index a6da019..859dfe6f 100644
--- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/BaseSessionController.java
+++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/BaseSessionController.java
@@ -22,9 +22,7 @@
 import org.chromium.chrome.browser.media.router.MediaSink;
 import org.chromium.chrome.browser.media.router.MediaSource;
 
-import java.lang.ref.WeakReference;
 import java.util.ArrayList;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Random;
 
@@ -57,7 +55,7 @@
     private final CafBaseMediaRouteProvider mProvider;
     private CreateRouteRequestInfo mRouteCreationInfo;
     private final RemoteMediaClient.Callback mRemoteMediaClientCallback;
-    private final List<WeakReference<Callback>> mCallbacks = new ArrayList<>();
+    private final List<Callback> mCallbacks = new ArrayList<>();
 
     public BaseSessionController(CafBaseMediaRouteProvider provider) {
         mProvider = provider;
@@ -65,17 +63,11 @@
     }
 
     public void addCallback(Callback callback) {
-        mCallbacks.add(new WeakReference<>(callback));
+        mCallbacks.add(callback);
     }
 
     public void removeCallback(Callback callback) {
-        Iterator<WeakReference<Callback>> iterator = mCallbacks.iterator();
-
-        while (iterator.hasNext()) {
-            if (iterator.next().get() == callback) {
-                iterator.remove();
-            }
-        }
+        mCallbacks.remove(callback);
     }
 
     public void requestSessionLaunch() {
@@ -266,15 +258,8 @@
     }
 
     private void notifyCallback(NotifyCallbackAction action) {
-        Iterator<WeakReference<Callback>> iterator = mCallbacks.iterator();
-
-        while (iterator.hasNext()) {
-            Callback callback = iterator.next().get();
-            if (callback == null) {
-                iterator.remove();
-            } else {
-                action.notify(callback);
-            }
+        for (Callback callback : mCallbacks) {
+            action.notify(callback);
         }
     }
 
diff --git a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/CafExpandedControllerActivity.java b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/CafExpandedControllerActivity.java
index 22e5ff3..58fa766 100644
--- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/CafExpandedControllerActivity.java
+++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/CafExpandedControllerActivity.java
@@ -153,6 +153,12 @@
     }
 
     @Override
+    protected void onDestroy() {
+        mSessionController.removeCallback(this);
+        super.onDestroy();
+    }
+
+    @Override
     public void onSessionStarted() {}
 
     @Override
diff --git a/chrome/android/features/media_router/junit/src/org/chromium/chrome/browser/media/router/caf/BaseSessionControllerTest.java b/chrome/android/features/media_router/junit/src/org/chromium/chrome/browser/media/router/caf/BaseSessionControllerTest.java
index d9ee7d0..7dbab32 100644
--- a/chrome/android/features/media_router/junit/src/org/chromium/chrome/browser/media/router/caf/BaseSessionControllerTest.java
+++ b/chrome/android/features/media_router/junit/src/org/chromium/chrome/browser/media/router/caf/BaseSessionControllerTest.java
@@ -165,6 +165,18 @@
     }
 
     @Test
+    public void testSessionLifecyleNotNotifiedAfterCallbackRemoved() {
+        mController.removeCallback(mNotificationController);
+
+        mController.attachToCastSession(mCastSession);
+        mController.onSessionStarted();
+        verify(mNotificationController, never()).onSessionStarted();
+
+        mController.onSessionEnded();
+        verify(mNotificationController, never()).onSessionEnded();
+    }
+
+    @Test
     public void testGetCapabilities() {
         mController.attachToCastSession(mCastSession);
 
diff --git a/chrome/android/features/tab_ui/BUILD.gn b/chrome/android/features/tab_ui/BUILD.gn
index c41d21f..806ecfe 100644
--- a/chrome/android/features/tab_ui/BUILD.gn
+++ b/chrome/android/features/tab_ui/BUILD.gn
@@ -140,6 +140,7 @@
     "java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsRanker.java",
     "java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionProviderConfiguration.java",
     "java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsFetcher.java",
+    "java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsOrchestrator.java",
     "java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsFetcherResults.java",
     "java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsClientFetcher.java",
   ]
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementDelegate.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementDelegate.java
index 8b787aa..42b68c6 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementDelegate.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementDelegate.java
@@ -15,6 +15,7 @@
 import org.chromium.chrome.browser.tabmodel.TabModel;
 import org.chromium.chrome.browser.tasks.TasksSurface;
 import org.chromium.chrome.browser.tasks.tab_groups.TabGroupModelFilter;
+import org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestions;
 import org.chromium.chrome.features.start_surface.StartSurface;
 import org.chromium.components.module_installer.builder.ModuleInterface;
 import org.chromium.ui.modelutil.PropertyModel;
@@ -85,4 +86,11 @@
      * @return The {@link TabGroupModelFilter}.
      */
     TabGroupModelFilter createTabGroupModelFilter(TabModel tabModel);
+
+    /**
+     * Create a {@link TabSuggestions} for the given {@link ChromeActivity}
+     * @param activity the {@link ChromeActivity} creates this {@link TabSuggestions}.
+     * @return the {@link TabSuggestions} for the activity
+     */
+    TabSuggestions createTabSuggestions(ChromeActivity activity);
 }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementDelegateImpl.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementDelegateImpl.java
index da7852a..d595035 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementDelegateImpl.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementDelegateImpl.java
@@ -21,6 +21,8 @@
 import org.chromium.chrome.browser.tasks.TasksSurface;
 import org.chromium.chrome.browser.tasks.TasksSurfaceCoordinator;
 import org.chromium.chrome.browser.tasks.tab_groups.TabGroupModelFilter;
+import org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestions;
+import org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestionsOrchestrator;
 import org.chromium.chrome.features.start_surface.StartSurface;
 import org.chromium.chrome.features.start_surface.StartSurfaceCoordinator;
 import org.chromium.chrome.features.start_surface.StartSurfaceLayout;
@@ -84,4 +86,10 @@
     public TabGroupModelFilter createTabGroupModelFilter(TabModel tabModel) {
         return new TabGroupModelFilter(tabModel);
     }
+
+    @Override
+    public TabSuggestions createTabSuggestions(ChromeActivity activity) {
+        return new TabSuggestionsOrchestrator(
+                activity.getTabModelSelector(), activity.getLifecycleDispatcher());
+    }
 }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestions.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestions.java
new file mode 100644
index 0000000..365f0e7
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestions.java
@@ -0,0 +1,12 @@
+// Copyright 2019 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.
+
+package org.chromium.chrome.browser.tasks.tab_management.suggestions;
+
+import java.util.List;
+
+/**
+ * Interface for the Tab Suggestions framework.
+ */
+public interface TabSuggestions { List<TabSuggestion> getSuggestions(TabContext tabContext); }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsOrchestrator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsOrchestrator.java
new file mode 100644
index 0000000..1f7e6eca
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsOrchestrator.java
@@ -0,0 +1,110 @@
+// Copyright 2019 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.
+
+package org.chromium.chrome.browser.tasks.tab_management.suggestions;
+
+import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
+import org.chromium.chrome.browser.lifecycle.Destroyable;
+import org.chromium.chrome.browser.tabmodel.TabModelSelector;
+
+import java.util.Collections;
+import java.util.LinkedList;
+import java.util.List;
+
+/**
+ * Represents the entry point for the TabSuggestions component. Responsible for
+ * registering and invoking the different {@link TabSuggestionsFetcher}.
+ */
+public class TabSuggestionsOrchestrator implements TabSuggestions, Destroyable {
+    public static final String TAB_SUGGESTIONS_UMA_PREFIX = "TabSuggestionsOrchestrator";
+    private static final String TAG = "TabSuggestionsDetailed";
+    private static final int MIN_CLOSE_SUGGESTIONS_THRESHOLD = 3;
+
+    protected TabContextObserver mTabContextObserver;
+    private final ActivityLifecycleDispatcher mActivityLifecycleDispatcher;
+    private List<TabSuggestionsFetcher> mTabSuggestionsFetchers;
+    private List<TabSuggestion> mPrefetchedResults = new LinkedList<>();
+    private TabContext mPrefetchedTabContext;
+    private TabModelSelector mTabModelSelector;
+
+    public TabSuggestionsOrchestrator(
+            TabModelSelector selector, ActivityLifecycleDispatcher activityLifecycleDispatcher) {
+        mTabModelSelector = selector;
+        mTabSuggestionsFetchers = new LinkedList<>();
+        mTabSuggestionsFetchers.add(new TabSuggestionsClientFetcher());
+        mTabContextObserver = new TabContextObserver(selector) {
+            @Override
+            public void onTabContextChanged(@TabContextChangeReason int changeReason) {
+                prefetchSuggestions();
+            }
+        };
+        mActivityLifecycleDispatcher = activityLifecycleDispatcher;
+        activityLifecycleDispatcher.register(this);
+    }
+
+    @Override
+    public List<TabSuggestion> getSuggestions(TabContext tabContext) {
+        synchronized (mPrefetchedResults) {
+            if (tabContext.equals(mPrefetchedTabContext)) {
+                return aggregateResults(mPrefetchedResults);
+            }
+            return new LinkedList<>();
+        }
+    }
+
+    private List<TabSuggestion> aggregateResults(List<TabSuggestion> tabSuggestions) {
+        List<TabSuggestion> aggregated = new LinkedList<>();
+        for (TabSuggestion tabSuggestion : tabSuggestions) {
+            switch (tabSuggestion.getAction()) {
+                case TabSuggestion.TabSuggestionAction.CLOSE:
+                    if (tabSuggestion.getTabsInfo().size() >= MIN_CLOSE_SUGGESTIONS_THRESHOLD) {
+                        aggregated.add(tabSuggestion);
+                    }
+                    break;
+                case TabSuggestion.TabSuggestionAction.GROUP:
+                    if (!tabSuggestion.getTabsInfo().isEmpty()) {
+                        aggregated.add(tabSuggestion);
+                    }
+                    break;
+                default:
+                    android.util.Log.e(
+                            TAG, String.format("Unknown action: %d", tabSuggestion.getAction()));
+                    break;
+            }
+        }
+        Collections.shuffle(aggregated);
+        return aggregated;
+    }
+
+    @Override
+    public void destroy() {
+        mTabContextObserver.destroy();
+        mActivityLifecycleDispatcher.unregister(this);
+    }
+
+    /**
+     * Acquire suggestions and store so suggestions are available for the UI
+     * thread on demand.
+     */
+    protected void prefetchSuggestions() {
+        TabContext tabContext = TabContext.createCurrentContext(mTabModelSelector);
+        synchronized (mPrefetchedResults) {
+            mPrefetchedTabContext = tabContext;
+            mPrefetchedResults = new LinkedList<>();
+            for (TabSuggestionsFetcher tabSuggestionsFetcher : mTabSuggestionsFetchers) {
+                if (tabSuggestionsFetcher.isEnabled()) {
+                    tabSuggestionsFetcher.fetch(tabContext, res -> prefetchCallback(res));
+                }
+            }
+        }
+    }
+
+    private void prefetchCallback(TabSuggestionsFetcherResults suggestions) {
+        synchronized (mPrefetchedResults) {
+            if (suggestions.tabContext.equals(mPrefetchedTabContext)) {
+                mPrefetchedResults.addAll(suggestions.tabSuggestions);
+            }
+        }
+    }
+}
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_am.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_am.xtb
index 0cde86f..1ce3587 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_am.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_am.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="am">
+<translation id="1181037720776840403">አስወግድ</translation>
 <translation id="125153950246128346">ሌላ ትር ለመመልከት መታ ያድርጉ</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> ትር}one{<ph name="TABS_COUNT_MANY" /> ትሮች}other{<ph name="TABS_COUNT_MANY" /> ትሮች}}</translation>
 <translation id="257674075312929031">ቡድን</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ar.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ar.xtb
index e3561e43..622bd2bc 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ar.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ar.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ar">
+<translation id="1181037720776840403">إزالة</translation>
 <translation id="125153950246128346">يُرجى النقر للاطِّلاع على علامة تبويب أخرى</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{علامة تبويب واحدة (<ph name="TABS_COUNT_ONE" />)}zero{<ph name="TABS_COUNT_MANY" /> علامة تبويب}two{علامتا تبويب (<ph name="TABS_COUNT_MANY" />)}few{<ph name="TABS_COUNT_MANY" /> علامات تبويب}many{<ph name="TABS_COUNT_MANY" /> علامة تبويب}other{<ph name="TABS_COUNT_MANY" /> علامة تبويب}}</translation>
 <translation id="257674075312929031">مجموعة</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bg.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bg.xtb
index 832a053..70dcab6 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bg.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bg.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="bg">
+<translation id="1181037720776840403">Премахване</translation>
 <translation id="125153950246128346">Докоснете, за да видите друг раздел</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> раздел}other{<ph name="TABS_COUNT_MANY" /> раздела}}</translation>
 <translation id="257674075312929031">Група</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bn.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bn.xtb
index f41f7e7..d26a4e0a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bn.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bn.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="bn">
+<translation id="1181037720776840403">সরান</translation>
 <translation id="125153950246128346">অন্য ট্যাব দেখতে ট্যাপ করুন</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" />টি ট্যাব}one{<ph name="TABS_COUNT_MANY" />টি ট্যাব}other{<ph name="TABS_COUNT_MANY" />টি ট্যাব}}</translation>
 <translation id="257674075312929031">গ্রুপ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ca.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ca.xtb
index de3c61f..e717e90 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ca.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ca.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ca">
+<translation id="1181037720776840403">Suprimeix</translation>
 <translation id="125153950246128346">Toca per veure una altra pestanya</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> pestanya}other{<ph name="TABS_COUNT_MANY" /> pestanyes}}</translation>
 <translation id="257674075312929031">Grup</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cs.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cs.xtb
index b3365a0..1d140d6 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cs.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cs.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="cs">
+<translation id="1181037720776840403">Odebrat</translation>
 <translation id="125153950246128346">Další kartu zobrazíte klepnutím</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> karta}few{<ph name="TABS_COUNT_MANY" /> karty}many{<ph name="TABS_COUNT_MANY" /> karty}other{<ph name="TABS_COUNT_MANY" /> karet}}</translation>
 <translation id="257674075312929031">Skupina</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_da.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_da.xtb
index 69252534..a55ed47 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_da.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_da.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="da">
+<translation id="1181037720776840403">Fjern</translation>
 <translation id="125153950246128346">Tryk for at se en anden fane</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> fane}one{<ph name="TABS_COUNT_MANY" /> fane}other{<ph name="TABS_COUNT_MANY" /> faner}}</translation>
 <translation id="257674075312929031">Gruppe</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_de.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_de.xtb
index 8984132..9b7788d 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_de.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_de.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="de">
+<translation id="1181037720776840403">Entfernen</translation>
 <translation id="125153950246128346">Tippen, um einen anderen Tab zu sehen</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> Tab}other{<ph name="TABS_COUNT_MANY" /> Tabs}}</translation>
 <translation id="257674075312929031">Gruppe</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_el.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_el.xtb
index 2ec23fe..c7c56ad 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_el.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_el.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="el">
+<translation id="1181037720776840403">Κατάργηση</translation>
 <translation id="125153950246128346">Πατήστε για να δείτε μια άλλη καρτέλα</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> καρτέλα}other{<ph name="TABS_COUNT_MANY" /> καρτέλες}}</translation>
 <translation id="257674075312929031">Ομάδα</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_en-GB.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_en-GB.xtb
index 1f012aa..9d1b564b 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_en-GB.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_en-GB.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="en-GB">
+<translation id="1181037720776840403">Remove</translation>
 <translation id="125153950246128346">Tap to see another tab</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> tab}other{<ph name="TABS_COUNT_MANY" /> tabs}}</translation>
 <translation id="257674075312929031">Group</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es-419.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es-419.xtb
index 98e826e..299f2148 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es-419.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es-419.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="es-419">
+<translation id="1181037720776840403">Quitar</translation>
 <translation id="125153950246128346">Presiona para ver otra pestaña</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> pestaña}other{<ph name="TABS_COUNT_MANY" /> pestañas}}</translation>
 <translation id="257674075312929031">Grupo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es.xtb
index d9c2406..c48673a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="es">
+<translation id="1181037720776840403">Quitar</translation>
 <translation id="125153950246128346">Pulsa para ver otra pestaña</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> pestaña}other{<ph name="TABS_COUNT_MANY" /> pestañas}}</translation>
 <translation id="257674075312929031">Grupo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_et.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_et.xtb
index 9f34be1..48188ca2 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_et.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_et.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="et">
+<translation id="1181037720776840403">Eemalda</translation>
 <translation id="125153950246128346">Puudutage muu vahelehe vaatamiseks</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> vaheleht}other{<ph name="TABS_COUNT_MANY" /> vahelehte}}</translation>
 <translation id="257674075312929031">Rühm</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fa.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fa.xtb
index 23d829aa..0b1f26a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fa.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fa.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="fa">
+<translation id="1181037720776840403">حذف</translation>
 <translation id="125153950246128346">برای دیدن برگه دیگر ضربه بزنید</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> برگه}one{<ph name="TABS_COUNT_MANY" /> برگه}other{<ph name="TABS_COUNT_MANY" /> برگه}}</translation>
 <translation id="257674075312929031">گروه</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fi.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fi.xtb
index 371e022..b853963 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fi.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fi.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="fi">
+<translation id="1181037720776840403">Poista</translation>
 <translation id="125153950246128346">Näytä toinen välilehti napauttamalla</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> välilehti}other{<ph name="TABS_COUNT_MANY" /> välilehteä}}</translation>
 <translation id="257674075312929031">Ryhmä</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fil.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fil.xtb
index 5ffe4a3..db04230 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fil.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fil.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="fil">
+<translation id="1181037720776840403">Alisin</translation>
 <translation id="125153950246128346">I-tap para tumingin ng iba pang tab</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> tab}one{<ph name="TABS_COUNT_MANY" /> tab}other{<ph name="TABS_COUNT_MANY" /> na tab}}</translation>
 <translation id="257674075312929031">Pangkat</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr.xtb
index ea8e15c..2cccdd1 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="fr">
+<translation id="1181037720776840403">Supprimer</translation>
 <translation id="125153950246128346">Appuyer pour afficher un autre onglet</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> onglet}one{<ph name="TABS_COUNT_MANY" /> onglet}other{<ph name="TABS_COUNT_MANY" /> onglets}}</translation>
 <translation id="257674075312929031">Groupe</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gu.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gu.xtb
index da0660d..d55bc77 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gu.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gu.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="gu">
+<translation id="1181037720776840403">કાઢી નાખો</translation>
 <translation id="125153950246128346">અન્ય ટૅબ જોવા માટે ટૅપ કરો</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> ટૅબ}one{<ph name="TABS_COUNT_MANY" /> ટૅબ}other{<ph name="TABS_COUNT_MANY" /> ટૅબ}}</translation>
 <translation id="257674075312929031">જૂથ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hi.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hi.xtb
index 7520c74..2a82108c 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hi.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hi.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="hi">
+<translation id="1181037720776840403">हटाएं</translation>
 <translation id="125153950246128346">कोई दूसरा टैब देखने के लिए टैप करें</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> टैब}one{<ph name="TABS_COUNT_MANY" /> टैब}other{<ph name="TABS_COUNT_MANY" /> टैब}}</translation>
 <translation id="257674075312929031">समूह</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hr.xtb
index 78d4172..586b23d6 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hr.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="hr">
+<translation id="1181037720776840403">Ukloni</translation>
 <translation id="125153950246128346">Dodirnite za prikaz druge kartice</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> kartica}one{<ph name="TABS_COUNT_MANY" /> kartica}few{<ph name="TABS_COUNT_MANY" /> kartice}other{<ph name="TABS_COUNT_MANY" /> kartica}}</translation>
 <translation id="257674075312929031">Grupa</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hu.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hu.xtb
index 4e7d406..7459460 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hu.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hu.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="hu">
+<translation id="1181037720776840403">Eltávolítás</translation>
 <translation id="125153950246128346">Koppintson másik lap megtekintéséhez</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> lap}other{<ph name="TABS_COUNT_MANY" /> lap}}</translation>
 <translation id="257674075312929031">Csoport</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_id.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_id.xtb
index 1d1de88..27e9e95c 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_id.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_id.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="id">
+<translation id="1181037720776840403">Hapus</translation>
 <translation id="125153950246128346">Ketuk untuk melihat tab lainnya</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> tab}other{<ph name="TABS_COUNT_MANY" /> tab}}</translation>
 <translation id="257674075312929031">Grup</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_it.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_it.xtb
index 459319f..192d55c 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_it.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_it.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="it">
+<translation id="1181037720776840403">Rimuovi</translation>
 <translation id="125153950246128346">Tocca per visualizzare un'altra scheda</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> scheda}other{<ph name="TABS_COUNT_MANY" /> schede}}</translation>
 <translation id="257674075312929031">Gruppo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_iw.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_iw.xtb
index b07408c..0e8d1ea3 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_iw.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_iw.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="iw">
+<translation id="1181037720776840403">הסרה</translation>
 <translation id="125153950246128346">יש להקיש כדי לראות כרטיסייה אחרת</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{כרטיסייה אחת (<ph name="TABS_COUNT_ONE" />)}two{<ph name="TABS_COUNT_MANY" /> כרטיסיות}many{<ph name="TABS_COUNT_MANY" /> כרטיסיות}other{<ph name="TABS_COUNT_MANY" /> כרטיסיות}}</translation>
 <translation id="257674075312929031">קבוצה</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ja.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ja.xtb
index 0b7cc2e..ae7ba21 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ja.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ja.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ja">
+<translation id="1181037720776840403">削除</translation>
 <translation id="125153950246128346">タップすると他のタブが表示されます</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> 個のタブ}other{<ph name="TABS_COUNT_MANY" /> 個のタブ}}</translation>
 <translation id="257674075312929031">グループ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kn.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kn.xtb
index 0731272..0bf8ea9 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kn.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kn.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="kn">
+<translation id="1181037720776840403">ತೆಗೆದುಹಾಕು</translation>
 <translation id="125153950246128346">ಇನ್ನೊಂದು ಟ್ಯಾಬ್ ನೋಡಲು ಟ್ಯಾಪ್ ಮಾಡಿ</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> ಟ್ಯಾಬ್}one{<ph name="TABS_COUNT_MANY" /> ಟ್ಯಾಬ್‌ಗಳು}other{<ph name="TABS_COUNT_MANY" /> ಟ್ಯಾಬ್‌ಗಳು}}</translation>
 <translation id="257674075312929031">ಗುಂಪು</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ko.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ko.xtb
index 6c01104..e30512b 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ko.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ko.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ko">
+<translation id="1181037720776840403">삭제</translation>
 <translation id="125153950246128346">다른 탭을 보려면 탭하세요.</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{탭 <ph name="TABS_COUNT_ONE" />개}other{탭 <ph name="TABS_COUNT_MANY" />개}}</translation>
 <translation id="257674075312929031">그룹</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lt.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lt.xtb
index 261514d..ebacba0c 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lt.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lt.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="lt">
+<translation id="1181037720776840403">Pašalinti</translation>
 <translation id="125153950246128346">Palieskite, kad peržiūrėtumėte kitą skirtuką</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> skirtukas}one{<ph name="TABS_COUNT_MANY" /> skirtukas}few{<ph name="TABS_COUNT_MANY" /> skirtukai}many{<ph name="TABS_COUNT_MANY" /> skirtuko}other{<ph name="TABS_COUNT_MANY" /> skirtukų}}</translation>
 <translation id="257674075312929031">Grupė</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lv.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lv.xtb
index 5d1458c..6b38fbe 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lv.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lv.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="lv">
+<translation id="1181037720776840403">Noņemt</translation>
 <translation id="125153950246128346">Pieskarieties, lai skatītu citu cilni</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> cilne}zero{<ph name="TABS_COUNT_MANY" /> cilnes}one{<ph name="TABS_COUNT_MANY" /> cilne}other{<ph name="TABS_COUNT_MANY" /> cilnes}}</translation>
 <translation id="257674075312929031">Grupa</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ml.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ml.xtb
index eb842f5..667d05f 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ml.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ml.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ml">
+<translation id="1181037720776840403">നീക്കംചെയ്യൂ</translation>
 <translation id="125153950246128346">മറ്റൊരു ടാബ് കാണാൻ ടാപ്പ് ചെയ്യുക</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> ടാബ്}other{<ph name="TABS_COUNT_MANY" /> ടാബുകൾ}}</translation>
 <translation id="257674075312929031">ഗ്രൂപ്പ്</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mr.xtb
index 3d25c2f..65a7a9a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mr.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="mr">
+<translation id="1181037720776840403">काढून टाका</translation>
 <translation id="125153950246128346">दुसरा टॅब पाहण्यासाठी टॅप करा</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> टॅब}other{<ph name="TABS_COUNT_MANY" /> टॅब}}</translation>
 <translation id="257674075312929031">गट</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ms.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ms.xtb
index c380537..ce20cf1 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ms.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ms.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ms">
+<translation id="1181037720776840403">Alih keluar</translation>
 <translation id="125153950246128346">Ketik untuk melihat tab lain</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> tab}other{<ph name="TABS_COUNT_MANY" /> tab}}</translation>
 <translation id="257674075312929031">Kumpulan</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_nl.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_nl.xtb
index 710826a..1de82e4 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_nl.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_nl.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="nl">
+<translation id="1181037720776840403">Verwijderen</translation>
 <translation id="125153950246128346">Tik om nog een tabblad te bekijken</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> tabblad}other{<ph name="TABS_COUNT_MANY" /> tabbladen}}</translation>
 <translation id="257674075312929031">Groep</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_no.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_no.xtb
index 428a5de5..1b00a35 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_no.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_no.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="no">
+<translation id="1181037720776840403">Fjern</translation>
 <translation id="125153950246128346">Trykk for å se en annen fane</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> fane}other{<ph name="TABS_COUNT_MANY" /> faner}}</translation>
 <translation id="257674075312929031">Gruppe</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pl.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pl.xtb
index 36bc524..11d1aa9c 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pl.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pl.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="pl">
+<translation id="1181037720776840403">Usuń</translation>
 <translation id="125153950246128346">Kliknij, by zobaczyć inną kartę</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> karta}few{<ph name="TABS_COUNT_MANY" /> karty}many{<ph name="TABS_COUNT_MANY" /> kart}other{<ph name="TABS_COUNT_MANY" /> karty}}</translation>
 <translation id="257674075312929031">Grupa</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-BR.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-BR.xtb
index 586a9277..60905ab 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-BR.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-BR.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="pt-BR">
+<translation id="1181037720776840403">Remover</translation>
 <translation id="125153950246128346">Toque para ver outra guia</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> guia}one{<ph name="TABS_COUNT_MANY" /> guia}other{<ph name="TABS_COUNT_MANY" /> guias}}</translation>
 <translation id="257674075312929031">Grupo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-PT.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-PT.xtb
index fa2fbe5..cd85e45 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-PT.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-PT.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="pt-PT">
+<translation id="1181037720776840403">Remover</translation>
 <translation id="125153950246128346">Toque para ver outro separador.</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> separador}other{<ph name="TABS_COUNT_MANY" /> separadores}}</translation>
 <translation id="257674075312929031">Grupo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ro.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ro.xtb
index dd153266..772bb8d 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ro.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ro.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ro">
+<translation id="1181037720776840403">Elimină</translation>
 <translation id="125153950246128346">Atinge pentru a vedea altă filă</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> filă}few{<ph name="TABS_COUNT_MANY" /> file}other{<ph name="TABS_COUNT_MANY" /> de file}}</translation>
 <translation id="257674075312929031">Grup</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ru.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ru.xtb
index 9443cfd..411c004 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ru.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ru.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ru">
+<translation id="1181037720776840403">Удалить</translation>
 <translation id="125153950246128346">Нажмите, чтобы перейти на другую вкладку</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> вкладка}one{<ph name="TABS_COUNT_MANY" /> вкладка}few{<ph name="TABS_COUNT_MANY" /> вкладки}many{<ph name="TABS_COUNT_MANY" /> вкладок}other{<ph name="TABS_COUNT_MANY" /> вкладки}}</translation>
 <translation id="257674075312929031">Группа.</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sk.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sk.xtb
index 906df1b..249b480 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sk.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sk.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="sk">
+<translation id="1181037720776840403">Odstrániť</translation>
 <translation id="125153950246128346">Klepnutím zobrazíte ďalšiu kartu</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> karta}few{<ph name="TABS_COUNT_MANY" /> karty}many{<ph name="TABS_COUNT_MANY" /> tabs}other{<ph name="TABS_COUNT_MANY" /> kariet}}</translation>
 <translation id="257674075312929031">Skupina</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sl.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sl.xtb
index ea652f1..5e786f82 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sl.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sl.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="sl">
+<translation id="1181037720776840403">Odstrani</translation>
 <translation id="125153950246128346">Dotaknite se, če želite prikazati drug zavihek</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> zavihek}one{<ph name="TABS_COUNT_MANY" /> zavihek}two{<ph name="TABS_COUNT_MANY" /> zavihka}few{<ph name="TABS_COUNT_MANY" /> zavihki}other{<ph name="TABS_COUNT_MANY" /> zavihkov}}</translation>
 <translation id="257674075312929031">Skupina</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr.xtb
index b36826b..74b182d 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="sr">
+<translation id="1181037720776840403">Уклони</translation>
 <translation id="125153950246128346">Додирните да бисте видели неку другу картицу</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> картица}one{<ph name="TABS_COUNT_MANY" /> картица}few{<ph name="TABS_COUNT_MANY" /> картице}other{<ph name="TABS_COUNT_MANY" /> картица}}</translation>
 <translation id="257674075312929031">Група</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sv.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sv.xtb
index b1039e5b..f99fc11 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sv.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sv.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="sv">
+<translation id="1181037720776840403">Ta bort</translation>
 <translation id="125153950246128346">Tryck för att visa en annan flik</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> flik}other{<ph name="TABS_COUNT_MANY" /> flikar}}</translation>
 <translation id="257674075312929031">Grupp</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sw.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sw.xtb
index 1f02903..55ee6ee 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sw.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sw.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="sw">
+<translation id="1181037720776840403">Ondoa</translation>
 <translation id="125153950246128346">Gusa ili uone kichupo kingine</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{Kichupo <ph name="TABS_COUNT_ONE" />}other{Vichupo <ph name="TABS_COUNT_MANY" />}}</translation>
 <translation id="257674075312929031">Kikundi</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ta.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ta.xtb
index 25ad254d..36f7b969 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ta.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ta.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ta">
+<translation id="1181037720776840403">அகற்று</translation>
 <translation id="125153950246128346">வேறொரு தாவலைப் பார்க்க, தட்டவும்</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> தாவல்}other{<ph name="TABS_COUNT_MANY" /> தாவல்கள்}}</translation>
 <translation id="257674075312929031">குழு</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb
index eaec56d..b5f5c974 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="te">
+<translation id="1181037720776840403">తీసివేయి</translation>
 <translation id="125153950246128346">మరొక ట్యాబ్‌ను చూడటానికి నొక్కండి</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> ట్యాబ్}other{<ph name="TABS_COUNT_MANY" /> ట్యాబ్‌లు}}</translation>
 <translation id="257674075312929031">సమూహం</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_th.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_th.xtb
index 952cca0..2efdd6f 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_th.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_th.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="th">
+<translation id="1181037720776840403">นำออก</translation>
 <translation id="125153950246128346">แตะเพื่อดูแท็บอื่น</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> แท็บ}other{<ph name="TABS_COUNT_MANY" /> แท็บ}}</translation>
 <translation id="257674075312929031">กลุ่ม</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_tr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_tr.xtb
index 31aa24c..984f164 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_tr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_tr.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="tr">
+<translation id="1181037720776840403">Kaldır</translation>
 <translation id="125153950246128346">Başka bir sekmeyi görmek için dokunun</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> sekme}other{<ph name="TABS_COUNT_MANY" /> sekme}}</translation>
 <translation id="257674075312929031">Grup</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uk.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uk.xtb
index e36d139..1be2a3c 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uk.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uk.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="uk">
+<translation id="1181037720776840403">Видалити</translation>
 <translation id="125153950246128346">Натисніть, щоб побачити іншу вкладку</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> вкладка}one{<ph name="TABS_COUNT_MANY" /> вкладка}few{<ph name="TABS_COUNT_MANY" /> вкладки}many{<ph name="TABS_COUNT_MANY" /> вкладок}other{<ph name="TABS_COUNT_MANY" /> вкладки}}</translation>
 <translation id="257674075312929031">Група</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_vi.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_vi.xtb
index 0727bf1..4b15929 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_vi.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_vi.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="vi">
+<translation id="1181037720776840403">Xóa</translation>
 <translation id="125153950246128346">Nhấn để xem một tab khác</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> tab}other{<ph name="TABS_COUNT_MANY" /> tab}}</translation>
 <translation id="257674075312929031">Nhóm</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-CN.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-CN.xtb
index e499a99a..bba9a06 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-CN.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-CN.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="zh-CN">
+<translation id="1181037720776840403">删除</translation>
 <translation id="125153950246128346">点按即可查看另一标签页</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> 个标签页}other{<ph name="TABS_COUNT_MANY" /> 个标签页}}</translation>
 <translation id="257674075312929031">群组</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-TW.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-TW.xtb
index 63a58659..92b275f5 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-TW.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-TW.xtb
@@ -1,6 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="zh-TW">
+<translation id="1181037720776840403">移除</translation>
 <translation id="125153950246128346">輕觸即可查看另一個分頁</translation>
 <translation id="1869137256605757565">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> 個分頁}other{<ph name="TABS_COUNT_MANY" /> 個分頁}}</translation>
 <translation id="257674075312929031">群組</translation>
diff --git a/chrome/android/features/tab_ui/junit/DEPS b/chrome/android/features/tab_ui/junit/DEPS
index 0d9a090..bc1d9fc 100644
--- a/chrome/android/features/tab_ui/junit/DEPS
+++ b/chrome/android/features/tab_ui/junit/DEPS
@@ -1,4 +1,5 @@
 include_rules = [
  "+content/public/android/java/src/org/chromium/content_public/browser",
- "+components/feature_engagement/public/android/java/src/org/chromium/components/feature_engagement"
+ "+components/feature_engagement/public/android/java/src/org/chromium/components/feature_engagement",
+ "+chrome/lib/lifecycle/public/android/java/src/org/chromium/chrome/browser/lifecycle"
 ]
diff --git a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsOrchestratorTest.java b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsOrchestratorTest.java
new file mode 100644
index 0000000..37167ff22
--- /dev/null
+++ b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsOrchestratorTest.java
@@ -0,0 +1,120 @@
+// Copyright 2019 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.
+
+package org.chromium.chrome.browser.tasks.tab_management.suggestions;
+
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.anyInt;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.TestRule;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.annotation.Config;
+
+import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
+import org.chromium.chrome.browser.tab.Tab;
+import org.chromium.chrome.browser.tabmodel.TabModelFilter;
+import org.chromium.chrome.browser.tabmodel.TabModelFilterProvider;
+import org.chromium.chrome.browser.tabmodel.TabModelObserver;
+import org.chromium.chrome.browser.tabmodel.TabModelSelector;
+import org.chromium.chrome.test.util.browser.Features;
+import org.chromium.testing.local.LocalRobolectricTestRunner;
+
+import java.util.List;
+
+/**
+ * Tests functionality of {@link TabSuggestionsOrchestrator}.
+ */
+@RunWith(LocalRobolectricTestRunner.class)
+@Config(manifest = Config.NONE)
+public class TabSuggestionsOrchestratorTest {
+    private static final int[] TAB_IDS = {0, 1, 2};
+
+    @Rule
+    public TestRule mProcessor = new Features.JUnitProcessor();
+
+    @Mock
+    private TabModelSelector mTabModelSelector;
+
+    @Mock
+    private TabModelFilterProvider mTabModelFilterProvider;
+
+    @Mock
+    private TabModelFilter mTabModelFilter;
+
+    @Mock
+    private TabSuggestionsOrchestrator mTabSuggestionsOrchestrator;
+
+    @Mock
+    private ActivityLifecycleDispatcher mDispatcher;
+
+    private static Tab[] sTabs = {mockTab(TAB_IDS[0]), mockTab(TAB_IDS[1]), mockTab(TAB_IDS[2])};
+
+    private static Tab mockTab(int id) {
+        Tab tab = mock(Tab.class);
+        doReturn(id).when(tab).getId();
+        return tab;
+    }
+
+    @Before
+    public void setUp() throws Exception {
+        MockitoAnnotations.initMocks(this);
+        doReturn(mTabModelFilterProvider).when(mTabModelSelector).getTabModelFilterProvider();
+        doNothing()
+                .when(mTabModelFilterProvider)
+                .addTabModelFilterObserver(any(TabModelObserver.class));
+        doReturn(mTabModelFilter).when(mTabModelFilterProvider).getCurrentTabModelFilter();
+        doReturn(null).when(mTabModelFilter).getRelatedTabList(anyInt());
+    }
+
+    @Test
+    public void verifyResultsPrefetched() {
+        doReturn(TAB_IDS.length).when(mTabModelFilter).getCount();
+        for (int idx = 0; idx < TAB_IDS.length; idx++) {
+            doReturn(sTabs[idx]).when(mTabModelFilter).getTabAt(eq(idx));
+        }
+        TabSuggestionsOrchestrator tabSuggestionsOrchestrator =
+                new TabSuggestionsOrchestrator(mTabModelSelector, mDispatcher);
+        tabSuggestionsOrchestrator.mTabContextObserver.mTabModelObserver.didAddTab(null, 0);
+        List<TabSuggestion> suggestions = tabSuggestionsOrchestrator.getSuggestions(
+                TabContext.createCurrentContext(mTabModelSelector));
+        Assert.assertEquals(1, suggestions.size());
+        Assert.assertEquals(TAB_IDS.length, suggestions.get(0).getTabsInfo().size());
+        for (int idx = 0; idx < TAB_IDS.length; idx++) {
+            Assert.assertEquals(TAB_IDS[idx], suggestions.get(0).getTabsInfo().get(idx).id);
+        }
+    }
+
+    @Test
+    public void testRegisterUnregister() {
+        TabSuggestionsOrchestrator tabSuggestionsOrchestrator =
+                new TabSuggestionsOrchestrator(mTabModelSelector, mDispatcher);
+        verify(mDispatcher, times(1)).register(eq(tabSuggestionsOrchestrator));
+        tabSuggestionsOrchestrator.destroy();
+        verify(mDispatcher, times(1)).unregister(eq(tabSuggestionsOrchestrator));
+    }
+
+    @Test
+    public void testTabFiltering() {
+        doReturn(1).when(mTabModelFilter).getCount();
+        doReturn(sTabs[0]).when(mTabModelFilter).getTabAt(eq(0));
+        TabSuggestionsOrchestrator tabSuggestionsOrchestrator =
+                new TabSuggestionsOrchestrator(mTabModelSelector, mDispatcher);
+        tabSuggestionsOrchestrator.mTabContextObserver.mTabModelObserver.didAddTab(null, 0);
+        List<TabSuggestion> suggestions = tabSuggestionsOrchestrator.getSuggestions(
+                TabContext.createCurrentContext(mTabModelSelector));
+        Assert.assertEquals(0, suggestions.size());
+    }
+}
diff --git a/chrome/android/features/tab_ui/tab_management_java_sources.gni b/chrome/android/features/tab_ui/tab_management_java_sources.gni
index 08a3ff1..e63a27e 100644
--- a/chrome/android/features/tab_ui/tab_management_java_sources.gni
+++ b/chrome/android/features/tab_ui/tab_management_java_sources.gni
@@ -16,6 +16,7 @@
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabManagementModuleProvider.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcher.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabContext.java",
+  "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestions.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestion.java",
 ]
 
@@ -44,6 +45,7 @@
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediatorUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabContextTests.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabContextObserverTest.java",
+  "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsOrchestratorTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/StaleTabSuggestionProviderTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/suggestions/TabSuggestionsClientFetcherTest.java",
 ]
diff --git a/chrome/android/features/vr/java/strings/translations/android_chrome_vr_strings_ml.xtb b/chrome/android/features/vr/java/strings/translations/android_chrome_vr_strings_ml.xtb
index 2b12aaae..f6a5b81 100644
--- a/chrome/android/features/vr/java/strings/translations/android_chrome_vr_strings_ml.xtb
+++ b/chrome/android/features/vr/java/strings/translations/android_chrome_vr_strings_ml.xtb
@@ -4,7 +4,7 @@
 <translation id="1729516292547892356">വെർച്വൽ റിയാലിറ്റി ഉള്ളടക്കം കാണാൻ, Google VR സേവനങ്ങൾ അപ്‌ഡേറ്റ് ചെയ്യുക</translation>
 <translation id="1938981467853765413">ഫീഡ്‌ബാക്ക് നല്‍കുക</translation>
 <translation id="360207483134687714">Chrome-ലെ VR അനുഭവം ‌മെച്ചപ്പെടുത്താൻ സഹായിക്കുക</translation>
-<translation id="3789841737615482174">ഇന്‍സ്റ്റാളുചെയ്യുക</translation>
+<translation id="3789841737615482174">ഇന്‍സ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="473775607612524610">അപ്ഡേറ്റ് ചെയ്യുക</translation>
 <translation id="9071742570345586758">വെർച്വൽ റിയാലിറ്റി ഉള്ളടക്കം കാണാൻ, Google VR സേവനങ്ങൾ ഇൻസ്‌റ്റാൾ ചെയ്യുക</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/android/features/vr/vr_module.gni b/chrome/android/features/vr/vr_module.gni
index 76533bd..0e20f34 100644
--- a/chrome/android/features/vr/vr_module.gni
+++ b/chrome/android/features/vr/vr_module.gni
@@ -12,7 +12,7 @@
   java_deps = [ "//chrome/android/features/vr:java" ]
   android_manifest = "//chrome/android/features/vr/java/AndroidManifest.xml"
   proguard_async = async_vr
-  if (use_native_modules && modularize_vr_native) {
+  if (use_native_partitions) {
     native_deps = [ "//chrome/browser/vr:vr_ui" ]
     native_entrypoints = "//chrome/browser/vr/module_exports.lst"
   }
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
index 486b386..2a0f7c61 100644
--- a/chrome/android/java/AndroidManifest.xml
+++ b/chrome/android/java/AndroidManifest.xml
@@ -36,11 +36,7 @@
     <uses-permission-sdk-23 android:name="android.permission.BLUETOOTH_ADMIN"/>
     <uses-permission-sdk-23 android:name="android.permission.READ_CONTACTS"/>
     <uses-permission-sdk-23 android:name="android.permission.REORDER_TASKS"/>
-    <!-- notouch build doesn't support downloads home and shouldn't need this permission -->
-    {% set notouch_build = notouch_build|default(0) %}
-    {% if notouch_build == "false" %}
-        <uses-permission-sdk-23 android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
-    {% endif %}
+    <uses-permission-sdk-23 android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
 
     <uses-permission android:name="android.permission.CAMERA" />
     <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
@@ -505,22 +501,13 @@
         <!-- ChromeTabbedActivity related -->
         <activity android:name="org.chromium.chrome.browser.ChromeTabbedActivity"
             android:theme="@style/Theme.Chromium.TabbedMode"
-            {% if notouch_build == "true" %}
-            android:exported="false"
-            {% else %}
             android:exported="true"
-            {% endif %}
             android:launchMode="singleTask"
             {# We can only use blocks once in Jinja, for future substitutions we use
             self.supports_video_persistence(). #}
             {% block supports_video_persistence %}
-            {% if notouch_build == "true" %}
-            android:supportsPictureInPicture="false"
-            android:resizeableActivity="false"
-            {% else %}
             android:supportsPictureInPicture="true"
             android:resizeableActivity="true"
-            {% endif %}
             {% endblock %}
             {% block chrome_activity_common %}
             android:windowSoftInputMode="adjustResize"
diff --git a/chrome/android/java/res/layout/bookmark_add_edit_folder_activity.xml b/chrome/android/java/res/layout/bookmark_add_edit_folder_activity.xml
index 5ffbf2c..ab4fa76 100644
--- a/chrome/android/java/res/layout/bookmark_add_edit_folder_activity.xml
+++ b/chrome/android/java/res/layout/bookmark_add_edit_folder_activity.xml
@@ -34,7 +34,6 @@
                 <android.support.design.widget.TextInputEditText
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:textAppearance="@style/TextAppearance.BlackHeadline"
                     android:imeOptions="flagNoExtractUi"
                     android:inputType="textCapSentences|textAutoCorrect" />
             </org.chromium.chrome.browser.bookmarks.BookmarkTextInputLayout>
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
index 18d6479c..b2e4bda 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
@@ -472,9 +472,6 @@
 
         if (isIntentForMhtmlFileOrContent(intent) && tabOpenType == TabOpenType.OPEN_NEW_TAB
                 && referrerUrl == null && extraHeaders == null) {
-            if (!OfflinePageUtils.isEnabled()) {
-                return false;
-            }
             handleMhtmlFileOrContentIntent(url, intent);
             return true;
         }
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java
index ddc5c00..e7144ba7 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java
@@ -232,13 +232,6 @@
     }
 
     /**
-     * Returns false if offline pages features should be disabled.
-     */
-    public static boolean isEnabled() {
-        return org.chromium.chrome.browser.BuildConfig.ENABLE_OFFLINE_PAGES;
-    }
-
-    /**
      * Returns the number of free bytes on the storage.
      */
     public static long getFreeSpaceInBytes() {
@@ -512,8 +505,9 @@
 
         // If the scheme is not one we recognize, return false.
         if (!TextUtils.equals(uri.getScheme(), UrlConstants.HTTP_SCHEME)
-                && !TextUtils.equals(uri.getScheme(), UrlConstants.HTTPS_SCHEME))
+                && !TextUtils.equals(uri.getScheme(), UrlConstants.HTTPS_SCHEME)) {
             return false;
+        }
 
         // If we have a http or https page with no file path, we cannot share it.
         if (offlinePath.isEmpty()) {
@@ -532,7 +526,6 @@
         return isContentScheme || isFileScheme;
     }
 
-
     /**
      * For internal pages, we must publish them, then share them.
      * @param offlinePageBridge Bridge to native code for offline pages use.
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
index 2b92c5b..1e01d05 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
@@ -1242,9 +1242,11 @@
             // opaque to Chrome sub-instruments inside, representing each card in the user account.
             // Hence Chrome forwards the updateWith() calls to the currently invoked
             // PaymentInstrument object.
+            // Todo(sahel): handlesShipping must be true when the payment handler is responsible for
+            // handling shipping. crbug.com/984694
             mInvokedPaymentInstrument.updateWith(
                     PaymentDetailsConverter.convertToPaymentMethodChangeResponse(
-                            details, this /* methodChecker */));
+                            details, false /* handlesShipping */, this /* methodChecker */));
             return;
         }
 
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/SuggestionsNavigationDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/suggestions/SuggestionsNavigationDelegate.java
index d75c0157..d695e6b 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/SuggestionsNavigationDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/suggestions/SuggestionsNavigationDelegate.java
@@ -62,27 +62,25 @@
     public void openSnippet(final int windowOpenDisposition, final SnippetArticle article) {
         NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_SNIPPET);
 
-        if (OfflinePageUtils.isEnabled()) {
-            // We explicitly open an offline page only for prefetched offline pages when Data
-            // Reduction Proxy is enabled. For all other sections the URL is opened and it is up to
-            // Offline Pages whether to open its offline page (e.g. when offline).
-            if (DataReductionProxySettings.getInstance().isDataReductionProxyEnabled()
-                    && article.isPrefetched()) {
-                assert article.getOfflinePageOfflineId() != null;
-                assert windowOpenDisposition == WindowOpenDisposition.CURRENT_TAB
-                        || windowOpenDisposition == WindowOpenDisposition.NEW_WINDOW
-                        || windowOpenDisposition == WindowOpenDisposition.NEW_BACKGROUND_TAB;
-                OfflinePageUtils.getLoadUrlParamsForOpeningOfflineVersion(article.mUrl,
-                        article.getOfflinePageOfflineId(), LaunchLocation.SUGGESTION,
-                        (loadUrlParams) -> {
-                            if (loadUrlParams == null) return;
-                            // Extra headers are not read in loadUrl, but verbatim headers are.
-                            loadUrlParams.setVerbatimHeaders(loadUrlParams.getExtraHeadersString());
-                            openDownloadSuggestion(windowOpenDisposition, article, loadUrlParams);
-                        });
+        // We explicitly open an offline page only for prefetched offline pages when Data
+        // Reduction Proxy is enabled. For all other sections the URL is opened and it is up to
+        // Offline Pages whether to open its offline page (e.g. when offline).
+        if (DataReductionProxySettings.getInstance().isDataReductionProxyEnabled()
+                && article.isPrefetched()) {
+            assert article.getOfflinePageOfflineId() != null;
+            assert windowOpenDisposition == WindowOpenDisposition.CURRENT_TAB
+                    || windowOpenDisposition == WindowOpenDisposition.NEW_WINDOW
+                    || windowOpenDisposition == WindowOpenDisposition.NEW_BACKGROUND_TAB;
+            OfflinePageUtils.getLoadUrlParamsForOpeningOfflineVersion(article.mUrl,
+                    article.getOfflinePageOfflineId(), LaunchLocation.SUGGESTION,
+                    (loadUrlParams) -> {
+                        if (loadUrlParams == null) return;
+                        // Extra headers are not read in loadUrl, but verbatim headers are.
+                        loadUrlParams.setVerbatimHeaders(loadUrlParams.getExtraHeadersString());
+                        openDownloadSuggestion(windowOpenDisposition, article, loadUrlParams);
+                    });
 
-                return;
-            }
+            return;
         }
 
         LoadUrlParams loadUrlParams = new LoadUrlParams(article.mUrl, PageTransition.AUTO_BOOKMARK);
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
index 9c3c9e28..254fce9 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
@@ -66,7 +66,6 @@
 import org.chromium.chrome.browser.ntp.IncognitoNewTabPage;
 import org.chromium.chrome.browser.ntp.NewTabPage;
 import org.chromium.chrome.browser.offlinepages.OfflinePageBridge;
-import org.chromium.chrome.browser.offlinepages.OfflinePageUtils;
 import org.chromium.chrome.browser.omaha.UpdateMenuItemHelper;
 import org.chromium.chrome.browser.omnibox.LocationBar;
 import org.chromium.chrome.browser.omnibox.SearchEngineLogoUtils;
@@ -629,8 +628,7 @@
 
                 OfflinePageBridge bridge = OfflinePageBridge.getForProfile(tab.getProfile());
                 if (bridge == null
-                        || !bridge.isShowingDownloadButtonInErrorPage(tab.getWebContents())
-                        || !OfflinePageUtils.isEnabled()) {
+                        || !bridge.isShowingDownloadButtonInErrorPage(tab.getWebContents())) {
                     return;
                 }
 
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_am.xtb b/chrome/android/java/strings/translations/android_chrome_strings_am.xtb
index 7117fd3..dfa1e802c 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_am.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_am.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">እገዛ እና ግብረመልስ</translation>
 <translation id="2501278716633472235">ወደ ኋላ ተመለስ</translation>
 <translation id="2513403576141822879">ከግላዊነት፣ ደህንነት እና የውሂብ ስብስብ ጋር ለሚዛመዱ ተጨማሪ ቅንብሮች <ph name="BEGIN_LINK" />ስምረት እና የGoogle አገልግሎቶች<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">በቀላል ሁነታ ላይ Chrome ገጾችን በበለጠ ፍጥነት የሚጭን ሲሆን እስከ 60 በመቶ ያነሰ ውሂብ ይጠቀማል። የሚጎበኟቸው ገጾችን ለማትባት Chrome የድር ትራፊክዎን ወደ Google ይልካል። <ph name="BEGIN_LINK" />የበለጠ ለመረዳት<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">የሚጎበኙዋቸውን ገጾች ዩአርኤሎች ወደ Google ይልካል</translation>
 <translation id="2532336938189706096">የድር ዕይታ</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ንጥሎች ተሰርዟል</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ar.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ar.xtb
index 9333ff9..a7bbfd9 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ar.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ar.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">المساعدة والتعليقات</translation>
 <translation id="2501278716633472235">الرجوع</translation>
 <translation id="2513403576141822879">‏لعرض مزيد من الإعدادات المتعلِّقة بالخصوصية والأمان وجمع البيانات، يُرجى الاطِّلاع على <ph name="BEGIN_LINK" />خدمات Google والمزامنة<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">‏في الوضع البسيط، يُحمِّل Chrome الصفحات بشكلٍ أسرع ويستخدم بيانات أقل بنسبة تصل إلى 60%. لتحسين مستوى أداء الصفحات التي تزورها، يرسل Chrome عدد زيارات الويب إلى Google. <ph name="BEGIN_LINK" />مزيد من المعلومات<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">‏يتم إرسال عناوين URL للصفحات التي تزورها إلى Google.</translation>
 <translation id="2532336938189706096">عرض الويب</translation>
 <translation id="2534155362429831547">تم حذف <ph name="NUMBER_OF_ITEMS" /> من العناصر</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_bg.xtb b/chrome/android/java/strings/translations/android_chrome_strings_bg.xtb
index d4a8afec..5d1674c 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_bg.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_bg.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Помощ и отзиви</translation>
 <translation id="2501278716633472235">Назад</translation>
 <translation id="2513403576141822879">За още настройки за поверителността, сигурността и събирането на данни вижте <ph name="BEGIN_LINK" />Синхронизиране и услуги на Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">В олекотения режим на Chrome страниците се зареждат по-бързо и се използват до 60 процента по-малко данни. С цел оптимизиране на посещаваните от вас страници Chrome изпраща до Google уеб трафика ви. <ph name="BEGIN_LINK" />Научете повече<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Изпраща до Google URL адресите на страниците, които посещавате</translation>
 <translation id="2532336938189706096">Изглед в мрежата</translation>
 <translation id="2534155362429831547">Изтрихте <ph name="NUMBER_OF_ITEMS" /> елемента</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_bn.xtb b/chrome/android/java/strings/translations/android_chrome_strings_bn.xtb
index cf08ec8..822adac 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_bn.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_bn.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">সহায়তা ও প্রতিবার্তা</translation>
 <translation id="2501278716633472235">ফিরে যান</translation>
 <translation id="2513403576141822879">আপনার গোপনীয়তা, নিরাপত্তা এবং ডেটা সংগ্রহের সাথে সম্পর্কযুক্ত আরও সেটিংসের জন্য <ph name="BEGIN_LINK" />সিঙ্ক এবং Google পরিষেবাগুলি<ph name="END_LINK" /> দেখুন</translation>
+<translation id="2518590038762162553">লাইট মোডে, Chrome আরও দ্রুত পৃষ্ঠা লোড করে এবং ৬০ শতাংশ পর্যন্ত কম ডেটা ব্যবহার করে। আপনার ভিজিট করা পৃষ্ঠাকে অপ্টিমাইজ করার জন্য Chrome আপনার ওয়েব ট্রাফিককে Google-এ পাঠায়। <ph name="BEGIN_LINK" />আরও জানুন<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">আপনার দেখা পৃষ্ঠাগুলির ইউআরএল Google-এ পাঠায়</translation>
 <translation id="2532336938189706096">ওয়েব দর্শন</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" />টি আইটেম মোছা হয়েছে</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ca.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ca.xtb
index 6354fb4..78a4fbf 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ca.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ca.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Ajuda i suggeriments </translation>
 <translation id="2501278716633472235">Torna</translation>
 <translation id="2513403576141822879">Per trobar més opcions de configuració relacionades amb la privadesa, la seguretat i la recollida de dades, consulta <ph name="BEGIN_LINK" />Sincronització i serveis de Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">En el mode bàsic, Chrome carrega les pàgines més ràpidament i utilitza fins a un 60 per cent menys de dades. Per optimitzar les pàgines que visites, Chrome envia el teu trànsit web a Google. <ph name="BEGIN_LINK" />Més informació<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Envia a Google els URL de les pàgines que visites</translation>
 <translation id="2532336938189706096">Visualització web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elements suprimits</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_cs.xtb b/chrome/android/java/strings/translations/android_chrome_strings_cs.xtb
index 3bc10f0daa..614a283 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_cs.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_cs.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Nápověda a zpětná vazba</translation>
 <translation id="2501278716633472235">Zpět</translation>
 <translation id="2513403576141822879">Další nastavení související s ochranou soukromí, zabezpečením a shromažďováním dat naleznete v části <ph name="BEGIN_LINK" />Synchronizace a služby Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Ve zjednodušeném režimu načítá Chrome stránky rychleji a používá až o 60 procent méně dat. Kvůli optimalizaci navštěvovaných stránek odesílá Chrome váš webový provoz do Googlu. <ph name="BEGIN_LINK" />Další informace<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Odesílá do Googlu adresy URL stránek, které navštěvujete</translation>
 <translation id="2532336938189706096">Webové zobrazení</translation>
 <translation id="2534155362429831547">Byly smazány položky (celkem <ph name="NUMBER_OF_ITEMS" />)</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_da.xtb b/chrome/android/java/strings/translations/android_chrome_strings_da.xtb
index 8c60e84d..43961ba 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_da.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_da.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Hjælp og feedback</translation>
 <translation id="2501278716633472235">Gå tilbage</translation>
 <translation id="2513403576141822879">Du kan finde flere indstillinger vedrørende privatliv, sikkerhed og dataindsamling ved at gå til <ph name="BEGIN_LINK" />Synkronisering og Google-tjenester<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Chrome indlæser sider hurtigere og bruger op til 60 procent mindre data i Lite-tilstand. Chrome sender din webtrafik til Google for at optimere de sider, du besøger. <ph name="BEGIN_LINK" />Få flere oplysninger<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Sender webadresser på de sider, du besøger, til Google</translation>
 <translation id="2532336938189706096">Webvisning</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementer blev slettet</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_de.xtb b/chrome/android/java/strings/translations/android_chrome_strings_de.xtb
index f61e7f8..2d9bb833 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_de.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_de.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Hilfe &amp; Feedback</translation>
 <translation id="2501278716633472235">Zurück</translation>
 <translation id="2513403576141822879">Weitere Einstellungen in Verbindung mit Datenschutz, Sicherheit und der Erhebung von Daten finden Sie unter <ph name="BEGIN_LINK" />Synchronisierung und Google-Dienste<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Im Lite-Modus werden Seiten schneller in Chrome geladen und es werden bis zu 60 % weniger Daten verbraucht. Zum Optimieren der von Ihnen besuchten Seiten sendet Chrome Ihren Datenverkehr an Google. <ph name="BEGIN_LINK" />Weitere Informationen<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">URLs der von Ihnen besuchten Seiten werden an Google gesendet</translation>
 <translation id="2532336938189706096">Web-Ansicht</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> Einträge gelöscht</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_el.xtb b/chrome/android/java/strings/translations/android_chrome_strings_el.xtb
index 17325911..5041b65 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_el.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_el.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Βοήθεια και σχόλια</translation>
 <translation id="2501278716633472235">Επιστροφή</translation>
 <translation id="2513403576141822879">Για περισσότερες ρυθμίσεις που σχετίζονται με το απόρρητο, την ασφάλεια και τη συλλογή δεδομένων, ανατρέξτε στην ενότητα <ph name="BEGIN_LINK" />Συγχρονισμός και υπηρεσίες Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Στη λειτουργία Lite, το Chrome φορτώνει τις σελίδες πιο γρήγορα και χρησιμοποιεί έως και 60% λιγότερα δεδομένα. Για να βελτιστοποιήσει τις σελίδες που επισκέπτεστε, το Chrome στέλνει την επισκεψιμότητα ιστού σας στο Google. <ph name="BEGIN_LINK" />Μάθετε περισσότερα<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Αποστέλλει στην Google URL των σελίδων που επισκέπτεστε</translation>
 <translation id="2532336938189706096">Προβολή ιστού</translation>
 <translation id="2534155362429831547">Διαγράφηκαν <ph name="NUMBER_OF_ITEMS" /> στοιχεία</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_en-GB.xtb b/chrome/android/java/strings/translations/android_chrome_strings_en-GB.xtb
index 45c2b8e..81ca7503 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_en-GB.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_en-GB.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Help &amp; feedback</translation>
 <translation id="2501278716633472235">Go back</translation>
 <translation id="2513403576141822879">For more settings that relate to privacy, security and data collection, see <ph name="BEGIN_LINK" />Sync and Google services<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">In Lite mode, Chrome loads pages faster and uses up to 60 per cent less data. To optimise the pages that you visit, Chrome sends your web traffic to Google. <ph name="BEGIN_LINK" />Find out more<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Sends URLs of pages that you visit to Google</translation>
 <translation id="2532336938189706096">Web View</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> items deleted</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_es-419.xtb b/chrome/android/java/strings/translations/android_chrome_strings_es-419.xtb
index bb81b4b3..689cdb2 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_es-419.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_es-419.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Ayuda y comentarios</translation>
 <translation id="2501278716633472235">Ir atrás</translation>
 <translation id="2513403576141822879">Para obtener más opciones de configuración relacionadas con la privacidad, la seguridad y la recopilación de datos, visita <ph name="BEGIN_LINK" />Sincronización y servicios<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">En el modo lite, Chrome carga las páginas más rápido y usa hasta un 60% menos de datos. Para optimizar las páginas que visitas, Chrome envía tu tráfico en la Web a Google. <ph name="BEGIN_LINK" />Más información<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Envía a Google las URL de las páginas que visitas</translation>
 <translation id="2532336938189706096">Vista web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementos borrados</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_es.xtb b/chrome/android/java/strings/translations/android_chrome_strings_es.xtb
index 3414115..0d7288c0b 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_es.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_es.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Ayuda y sugerencias</translation>
 <translation id="2501278716633472235">Volver</translation>
 <translation id="2513403576141822879">Para ver más opciones relacionadas con la privacidad, la seguridad y la recogida de datos, accede a <ph name="BEGIN_LINK" />Servicios de Google y sincronización<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">En el modo básico, Chrome carga las páginas más rápido y reduce el uso de datos hasta un 60 %. Chrome envía tu tráfico web a Google para optimizar las páginas que visitas. <ph name="BEGIN_LINK" />Más información<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Envía las URL de las páginas que visitas a Google</translation>
 <translation id="2532336938189706096">Vista web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementos eliminados</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_et.xtb b/chrome/android/java/strings/translations/android_chrome_strings_et.xtb
index 2794892c..3d55ae9c 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_et.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_et.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Abi ja tagasiside</translation>
 <translation id="2501278716633472235">Mine tagasi</translation>
 <translation id="2513403576141822879">Privaatsuse, turvalisuse ning andmete kogumisega seotud lisaseadete nägemiseks avage valik <ph name="BEGIN_LINK" />Sünkroonimine ja Google'i teenused<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Lihtsustatud režiimis laadib Chrome lehti kiiremini ja kasutab kuni 60% vähem andmemahtu. Külastatud lehtede optimeerimiseks saadab Chrome teie veebiliikluse Google’ile. <ph name="BEGIN_LINK" />Lisateave<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Saadab Google'ile teie külastatud lehtede URL-id</translation>
 <translation id="2532336938189706096">Veebi kuva</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> üksust kustutati</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fa.xtb b/chrome/android/java/strings/translations/android_chrome_strings_fa.xtb
index 1faa3bd..1cb73d0 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_fa.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_fa.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">راهنمایی و بازخورد</translation>
 <translation id="2501278716633472235">بازگشت</translation>
 <translation id="2513403576141822879">‏برای تنظیمات بیشتر مرتبط با حریم خصوصی، امنیت و جمع‌آوری داده‌ها، <ph name="BEGIN_LINK" />همگام‌سازی و سرویس‌های Google<ph name="END_LINK" /> را ببینید</translation>
+<translation id="2518590038762162553">‏در «حالت ساده»، Chrome صفحه‌ها را سریع‌تر بار می‌کند و تا ۶۰ درصد مصرف داده را کاهش می‌دهد. برای بهینه‌سازی صفحاتی که بازدید می‌کنید، Chrome ترافیک وب شما را به Google ارسال می‌کند. <ph name="BEGIN_LINK" />بیشتر بدانید<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">‏نشانی وب صفحه‌هایی را که بازدید می‌کنید برای Google ارسال می‌کند</translation>
 <translation id="2532336938189706096">نمای وب</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> مورد حذف شد</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fi.xtb b/chrome/android/java/strings/translations/android_chrome_strings_fi.xtb
index d77ef12..b789388 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_fi.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_fi.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Ohjeet ja palaute</translation>
 <translation id="2501278716633472235">Takaisin</translation>
 <translation id="2513403576141822879">Näet lisää yksityisyyteen, tietoturvaan ja datankeruuseen liittyviä asetuksia <ph name="BEGIN_LINK" />Synkronointi ja Google-palvelut<ph name="END_LINK" /> ‑kohdassa.</translation>
+<translation id="2518590038762162553">Yksinkertaistetussa tilassa Chrome lataa sivuja nopeammin ja käyttää jopa 60 % vähemmän dataa. Chrome lähettää verkkoliikenteesi tietoja Googlelle avaamiesi sivujen optimoimiseksi. <ph name="BEGIN_LINK" />Lue lisää<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Lähettää avaamiesi sivujen URL-osoitteet Googlelle</translation>
 <translation id="2532336938189706096">Verkkonäkymä</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> kohdetta poistettu</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fil.xtb b/chrome/android/java/strings/translations/android_chrome_strings_fil.xtb
index b428997..5de49a8 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_fil.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_fil.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Tulong at feedback</translation>
 <translation id="2501278716633472235">Bumalik</translation>
 <translation id="2513403576141822879">Para sa higit pang setting na nauugnay sa privacy, seguridad, at pangongolekta ng data, tingnan ang <ph name="BEGIN_LINK" />Pag-sync at mga serbisyo ng Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Sa Lite mode, mas mabilis na naglo-load ng mga page ang Chrome at gumagamit ito ng hanggang 60 porsyentong mas kaunting data. Para i-optimize ang mga page na binibisita mo, ipinapadala ng Chrome ang iyong trapiko sa web sa Google. <ph name="BEGIN_LINK" />Matuto pa<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Ipinapadala sa Google ang mga URL ng mga page na binibisita mo</translation>
 <translation id="2532336938189706096">View ng Web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> (na) item ang na-delete</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_fr.xtb
index daa426c..e8db9109 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_fr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_fr.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Aide et commentaires</translation>
 <translation id="2501278716633472235">Retour</translation>
 <translation id="2513403576141822879">Pour accéder à d'autres paramètres liés à la confidentialité, à la sécurité et à la collecte de données, consultez la section <ph name="BEGIN_LINK" />Services Google/Synchronisation<ph name="END_LINK" />.</translation>
+<translation id="2518590038762162553">En mode simplifié, Chrome charge les pages plus rapidement et consomme jusqu'à 60 % de données en moins. Pour optimiser les pages que vous consultez, Chrome envoie votre trafic Web à Google. <ph name="BEGIN_LINK" />En savoir plus<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Envoie les URL des pages que vous consultez à Google</translation>
 <translation id="2532336938189706096">Vue Web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> éléments supprimés</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_gu.xtb b/chrome/android/java/strings/translations/android_chrome_strings_gu.xtb
index 8ca16d5..3eceb4a 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_gu.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_gu.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">સહાય અને પ્રતિસાદ</translation>
 <translation id="2501278716633472235">પાછા જાઓ</translation>
 <translation id="2513403576141822879">ગોપનીયતા, સુરક્ષા, અને ડેટા સંગ્રહથી સંબંધિત વધુ સેટિંગ માટે, <ph name="BEGIN_LINK" />સિંક અને Google સેવાઓ<ph name="END_LINK" /> જુઓ</translation>
+<translation id="2518590038762162553">લાઇટ મોડમાં, Chrome પેજને વધુ ઝડપથી લોડ કરે છે અને તે 60 ટકા ઓછા ડેટાનો વપરાશ કરે છે. તમે જે પેજની મુલાકાત લેતા હો તેને ઑપ્ટિમાઇઝ કરવા માટે, Chrome તમારો વેબ ટ્રાફિક Googleને મોકલે છે. <ph name="BEGIN_LINK" />વધુ જાણો<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">તમે મુલાકાત લો તે પેજના URLs Googleને મોકલે છે</translation>
 <translation id="2532336938189706096">વેબ દૃશ્ય</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> આઇટમ કાઢી નાખી</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hi.xtb b/chrome/android/java/strings/translations/android_chrome_strings_hi.xtb
index f1da70a..f5d724b 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_hi.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_hi.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">सहायता और फ़ीडबैक</translation>
 <translation id="2501278716633472235">वापस जाएं</translation>
 <translation id="2513403576141822879">निजता, सुरक्षा और डेटा इकट्ठा करने से जुड़ी ज़्यादा सेटिंग के लिए, <ph name="BEGIN_LINK" />सिंक और Google सेवाएं<ph name="END_LINK" /> देखें</translation>
+<translation id="2518590038762162553">Chrome, लाइट मोड में पेजों को ज़्यादा तेज़ी से लोड करता है और 60 प्रतिशत तक कम डेटा इस्तेमाल करता है. जिन पेजों पर आप जाते हैं उनको ऑप्टिमाइज़ करने के लिए Chrome आपके वेब ट्रैफ़िक की जानकारी Google को भेजता है. <ph name="BEGIN_LINK" />ज़्यादा जानें<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">आप जिन पेजों पर जाते हैं उनके यूआरएल Google को भेजती है</translation>
 <translation id="2532336938189706096">वेब व्यू</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> आइटम मिटाए गए</translation>
@@ -673,6 +674,7 @@
 <translation id="5962718611393537961">छोटा करने के लिए टैप करें</translation>
 <translation id="6000066717592683814">Google को डिफ़ॉल्ट बनाए रखें</translation>
 <translation id="6005538289190791541">सुझाया गया पासवर्ड</translation>
+<translation id="6036057147555329831">कुछ और ICU</translation>
 <translation id="6039379616847168523">सीधे अगले टैब पर जाएं</translation>
 <translation id="6040143037577758943">बंद करें</translation>
 <translation id="6042308850641462728">और ज़्यादा</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_hr.xtb
index 6d6b1ee0..6da7f82f 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_hr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_hr.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Pomoć i povratne informacije</translation>
 <translation id="2501278716633472235">Natrag</translation>
 <translation id="2513403576141822879">Više postavki koje se odnose na privatnost, sigurnost i prikupljanje podataka dostupno je u odjeljku <ph name="BEGIN_LINK" />Sinkronizacija i prilagodba<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">U Jednostavnom načinu Chrome učitava stranice brže i smanjuje podatkovni promet do 60 posto. Chrome šalje vaš web-promet Googleu radi optimizacije stranica koje posjećujete. <ph name="BEGIN_LINK" />Saznajte više<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Šalje Googleu URL-ove stranica koje posjećujete</translation>
 <translation id="2532336938189706096">Web-prikaz</translation>
 <translation id="2534155362429831547">Broj izbrisanih stavki: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hu.xtb b/chrome/android/java/strings/translations/android_chrome_strings_hu.xtb
index 9556662..362d5a0 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_hu.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_hu.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Súgó és visszajelzés</translation>
 <translation id="2501278716633472235">Visszalépés</translation>
 <translation id="2513403576141822879">A <ph name="BEGIN_LINK" />Szinkronizálás és Google<ph name="END_LINK" /> részben további beállításokat talál az adatvédelemre, biztonságra és adatgyűjtésre vonatkozóan</translation>
+<translation id="2518590038762162553">Lite módban a Chrome gyorsabban betölti az oldalakat, és akár 60 százalékkal kisebb adatforgalmat generál. A felkeresett oldalak optimalizálása érdekében a Chrome elküldi az internetes forgalmát a Google-nak. <ph name="BEGIN_LINK" />További információ<ph name="END_LINK" />.</translation>
 <translation id="2523184218357549926">A felkeresett oldalak URL-címének elküldése a Google-nak</translation>
 <translation id="2532336938189706096">Internetes megtekintés</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elem törölve</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_id.xtb b/chrome/android/java/strings/translations/android_chrome_strings_id.xtb
index ae1e7f46..c5ac73c 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_id.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_id.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Bantuan &amp; masukan</translation>
 <translation id="2501278716633472235">Kembali</translation>
 <translation id="2513403576141822879">Untuk setelan lainnya yang berkaitan dengan privasi, keamanan, dan pengumpulan data, lihat <ph name="BEGIN_LINK" />Sinkronisasi dan layanan Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Dalam mode Ringan, Chrome memuat halaman lebih cepat dan menghemat data hingga 60 persen. Untuk mengoptimalkan halaman yang Anda kunjungi, Chrome akan mengirimkan traffic web ke Google. <ph name="BEGIN_LINK" />Pelajari lebih lanjut<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Mengirimkan URL halaman yang Anda buka ke Google</translation>
 <translation id="2532336938189706096">Tampilan Web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> item dihapus</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_it.xtb b/chrome/android/java/strings/translations/android_chrome_strings_it.xtb
index eb772ca..8a6d533 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_it.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_it.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Guida e feedback</translation>
 <translation id="2501278716633472235">Indietro</translation>
 <translation id="2513403576141822879">Per altre impostazioni relative a privacy, sicurezza e raccolta dei dati, consulta la sezione <ph name="BEGIN_LINK" />Sincronizzazione e servizi Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Nella modalità Lite, Chrome carica le pagine più rapidamente e utilizza fino al 60 percento di dati in meno. Per ottimizzare le pagine che visiti, Chrome invia il tuo traffico web a Google. <ph name="BEGIN_LINK" />Ulteriori informazioni<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Invia a Google gli URL delle pagine che visiti</translation>
 <translation id="2532336938189706096">Visualizzazione web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementi eliminati</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ja.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ja.xtb
index 22ba335..331f8c3 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ja.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ja.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">ヘルプとフィードバック</translation>
 <translation id="2501278716633472235">戻る</translation>
 <translation id="2513403576141822879">プライバシー、セキュリティ、データ収集に関連するその他の設定については、<ph name="BEGIN_LINK" />同期と Google サービス<ph name="END_LINK" />をご覧ください</translation>
+<translation id="2518590038762162553">ライトモードを使用すると、Chrome でページの読み込みが高速化され、データ使用量も最大 60% 抑えることができます。アクセスするページを最適化するため、ウェブ トラフィックが Chrome から Google に送信されます。<ph name="BEGIN_LINK" />詳細<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">アクセスしたページの URL を Google に送信します</translation>
 <translation id="2532336938189706096">ウェブ表示</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" />件の項目を削除しました</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_kn.xtb b/chrome/android/java/strings/translations/android_chrome_strings_kn.xtb
index 6d0c8cc..373121a 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_kn.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_kn.xtb
@@ -209,6 +209,7 @@
 <translation id="2498359688066513246">ಸಹಾಯ ಮತ್ತು ಪ್ರತಿಕ್ರಿಯೆ</translation>
 <translation id="2501278716633472235">ಹಿಂದಿರುಗಿ</translation>
 <translation id="2513403576141822879">ಗೌಪ್ಯತೆ, ಸುರಕ್ಷತೆ ಮತ್ತು ಡೇಟಾ ಸಂಗ್ರಹಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಹೆಚ್ಚಿನ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಗಾಗಿ <ph name="BEGIN_LINK" />ಸಿಂಕ್ ಮತ್ತು Google ಸೇವೆಗಳನ್ನು<ph name="END_LINK" /> ನೋಡಿ</translation>
+<translation id="2518590038762162553">ಲೈಟ್ ಮೋಡ್‍ನಲ್ಲಿ, Chrome ವೇಗವಾಗಿ ಪುಟಗಳನ್ನು ಲೋಡ್ ಮಾಡುತ್ತದೆ, ಮತ್ತು ಸುಮಾರು ಶೇಕಡಾ 60 ರಷ್ಟು ಕಡಿಮೆ ಡೇಟಾವನ್ನು ಬಳಸುತ್ತದೆ. ನೀವು ಭೇಟಿ ನೀಡುವ ಪುಟಗಳನ್ನು ಆಪ್ಟಿಮೈಸ್ ಮಾಡಲು, Chrome ನಿಮ್ಮ ವೆಬ್ ಟ್ರಾಫಿಕ್ ಕುರಿತ ಮಾಹಿತಿಯನ್ನು Google ಗೆ ಕಳುಹಿಸುತ್ತದೆ. <ph name="BEGIN_LINK" />ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">ನೀವು ಭೇಟಿ ನೀಡುವ ಪುಟಗಳ URLಗಳನ್ನು Google ಗೆ ಕಳುಹಿಸುತ್ತದೆ</translation>
 <translation id="2532336938189706096">ವೆಬ್ ವೀಕ್ಷಣೆ</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ಐಟಂಗಳನ್ನು ಅಳಿಸಲಾಗಿದೆ</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ko.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ko.xtb
index e36698a..366672f 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ko.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ko.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">고객센터</translation>
 <translation id="2501278716633472235">뒤로 이동</translation>
 <translation id="2513403576141822879">개인정보 보호, 보안, 데이터 수집에 관한 설정을 더 보려면 <ph name="BEGIN_LINK" />동기화 및 Google 서비스<ph name="END_LINK" />를 참조하세요.</translation>
+<translation id="2518590038762162553">Chrome의 라이트 모드를 사용하면 페이지가 더 빠르게 로드되고 데이터가 최대 60퍼센트 절약됩니다. Chrome에서는 사용자가 방문하는 페이지를 최적화하기 위해 웹 트래픽을 Google에 전송합니다. <ph name="BEGIN_LINK" />자세히 알아보기<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">방문한 페이지의 URL을 Google에 전송</translation>
 <translation id="2532336938189706096">웹 보기</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" />개 항목 삭제함</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_lt.xtb b/chrome/android/java/strings/translations/android_chrome_strings_lt.xtb
index a59108d..b360d26 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_lt.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_lt.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Pagalba ir atsiliepimai</translation>
 <translation id="2501278716633472235">Grįžti</translation>
 <translation id="2513403576141822879">Daugiau nustatymų, susijusių su privatumu, sauga ir duomenų rinkimu, žr. skiltyje <ph name="BEGIN_LINK" />„Sinchronizavimas ir „Google“ paslaugos“<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Kai įjungtas supaprastintasis režimas, „Chrome“ sparčiau įkelia puslapius ir sunaudoja iki 60 proc. mažiau duomenų. „Chrome“ siunčia žiniatinklio srauto duomenis sistemai „Google“, kad optimizuotų puslapius, kuriuose lankotės. <ph name="BEGIN_LINK" />Sužinokite daugiau<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Siunčiami „Google“ puslapių, kuriuose lankotės, URL</translation>
 <translation id="2532336938189706096">Žiniatinklio rodinys</translation>
 <translation id="2534155362429831547">Ištrinta elementų: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_lv.xtb b/chrome/android/java/strings/translations/android_chrome_strings_lv.xtb
index 3ee48693..48bf920 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_lv.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_lv.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Palīdzība un atsauksmes</translation>
 <translation id="2501278716633472235">Doties atpakaļ</translation>
 <translation id="2513403576141822879">Papildu iestatījumus, kas attiecas uz konfidencialitāti, drošību un datu apkopošanu, skatiet lapā <ph name="BEGIN_LINK" />Sinhronizēšana un Google pakalpojumi<ph name="END_LINK" />.</translation>
+<translation id="2518590038762162553">Pārlūka Chrome vienkāršotajā režīmā lapas tiek ielādētas ātrāk un tiek patērēts pat par 60 procentiem mazāk datu. Lai optimizētu jūsu apmeklētās lapas, no pārlūka Chrome tiek nosūtīta jūsu tīmekļa datplūsma uzņēmumam Google. <ph name="BEGIN_LINK" />Uzziniet vairāk<ph name="END_LINK" />.</translation>
 <translation id="2523184218357549926">Nosūta Google serveriem apmeklēto lapu vietrāžus URL</translation>
 <translation id="2532336938189706096">Tīmekļa skatījums</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> vienumi tika izdzēsti</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ml.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ml.xtb
index 328d159..e3eeb3b1 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ml.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ml.xtb
@@ -164,7 +164,7 @@
 <translation id="2131665479022868825"><ph name="DATA" /> ലാഭിച്ചു</translation>
 <translation id="213279576345780926"><ph name="TAB_TITLE" /> അടച്ചു</translation>
 <translation id="2139186145475833000">ഹോംസ്‌ക്രീനിൽ ചേർക്കുക</translation>
-<translation id="2146738493024040262">തൽക്ഷണ ആപ്പ് തുറക്കുക</translation>
+<translation id="2146738493024040262">ഇൻസ്റ്റന്‍റ് ആപ്പ് തുറക്കുക</translation>
 <translation id="2148716181193084225">ഇന്ന്</translation>
 <translation id="2154484045852737596">കാർഡ് എഡിറ്റുചെയ്യുക</translation>
 <translation id="2154710561487035718">URL പകര്‍ത്തുക</translation>
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">സഹായവും ഫീഡ്ബാക്കും</translation>
 <translation id="2501278716633472235">പിന്നോട്ട് പോകുക</translation>
 <translation id="2513403576141822879">സ്വകാര്യത, സുരക്ഷ, ഡാറ്റാ ശേഖരണം എന്നിവയുമായി ബന്ധപ്പെട്ട കൂടുതൽ ക്രമീകരണത്തിന്, <ph name="BEGIN_LINK" />സമന്വയവും Google സേവനങ്ങളും<ph name="END_LINK" /> കാണുക</translation>
+<translation id="2518590038762162553">ലൈറ്റ് മോഡിൽ Chrome, പേജുകൾ വേഗത്തിൽ ലോഡ് ചെയ്യുകയും 60 ശതമാനം വരെ കുറവ് ഡാറ്റ ഉപയോഗിക്കുകയും ചെയ്യുന്നു. നിങ്ങൾ സന്ദർശിക്കുന്ന പേജുകൾ ഓപ്‌റ്റിമൈസ് ചെയ്യാൻ Chrome നിങ്ങളുടെ വെബ് ട്രാഫിക് Google-ന് അയയ്ക്കുന്നു. <ph name="BEGIN_LINK" />കൂടുതലറിയുക<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Google-ൽ നിങ്ങൾ സന്ദർശിക്കുന്ന പേജുകളുടെ URL-കൾ അയയ്ക്കുന്നു</translation>
 <translation id="2532336938189706096">വെബ് കാഴ്‌ച</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ഇനങ്ങൾ ഇല്ലാതാക്കി</translation>
@@ -364,7 +365,7 @@
 <translation id="3773755127849930740">ജോടിയാക്കാൻ, <ph name="BEGIN_LINK" />Bluetooth ഓണാക്കുക<ph name="END_LINK" /></translation>
 <translation id="3775705724665058594">നിങ്ങളുടെ ഉപകരണങ്ങളിലേക്ക് അയയ്‌ക്കുക</translation>
 <translation id="3778956594442850293">ഹോം സ്‌ക്രീനിലേക്ക് ചേർത്തു</translation>
-<translation id="3789841737615482174">ഇന്‍സ്റ്റാളുചെയ്യുക</translation>
+<translation id="3789841737615482174">ഇന്‍സ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="3810838688059735925">വീഡിയോ</translation>
 <translation id="3810973564298564668">മാനേജ് ചെയ്യുക</translation>
 <translation id="381841723434055211">ഫോൺ നമ്പറുകൾ</translation>
@@ -449,7 +450,7 @@
 <translation id="447252321002412580">Chrome-ന്റെ ഫീച്ചറുകളും പ്രകടനവും മെച്ചപ്പെടുത്താൻ സഹായിക്കുക</translation>
 <translation id="4479647676395637221">നിങ്ങളുടെ ക്യാമറ ഉപയോഗിക്കാൻ സൈറ്റുകളെ അനുവദിക്കുന്നതിന് മുമ്പ് ആദ്യം ചോദിക്കുക (ശുപാർശചെയ്‌തിരിക്കുന്നു)</translation>
 <translation id="4479972344484327217">Chrome-നുള്ള <ph name="MODULE" /> ഇൻസ്‌റ്റാൾ ചെയ്യുന്നു…</translation>
-<translation id="4487967297491345095">Chrome-ന്റെ എല്ലാ ആപ്പ് വിവരങ്ങളും ശാശ്വതമായി ഇല്ലാതാക്കും. ഇതിൽ എല്ലാ ഫയലുകളും ക്രമീകരണവും അക്കൗണ്ടുകളും ഡാറ്റാബേസുകളും മറ്റും ഉൾപ്പെടുന്നു.</translation>
+<translation id="4487967297491345095">Chrome-ന്‍റെ എല്ലാ ആപ്പ് വിവരങ്ങളും ശാശ്വതമായി ഇല്ലാതാക്കും. ഇതിൽ എല്ലാ ഫയലുകളും ക്രമീകരണവും അക്കൗണ്ടുകളും ഡാറ്റാബേസുകളും മറ്റും ഉൾപ്പെടുന്നു.</translation>
 <translation id="4493497663118223949">ലൈറ്റ് മോഡ് ഓണാണ്</translation>
 <translation id="4513387527876475750">{DAYS,plural, =1{# ദിവസം മുമ്പ്}other{# ദിവസം മുമ്പ്}}</translation>
 <translation id="451872707440238414">നിങ്ങളുടെ ബുക്ക്‌മാർക്കുകൾ തിരയുക</translation>
@@ -543,7 +544,7 @@
 <translation id="510275257476243843">ഒരു മണിക്കൂർ ശേഷിക്കുന്നു</translation>
 <translation id="5123685120097942451">അദൃശ്യ ടാബ്</translation>
 <translation id="5127805178023152808">സമന്വയം ഓഫാണ്</translation>
-<translation id="5129038482087801250">വെബ് ആപ്പ് ഇൻസ്‌റ്റാൾ ചെയ്യുക</translation>
+<translation id="5129038482087801250">വെബ്ആപ്പ് ഇൻസ്‌റ്റാൾചെയ്യുക</translation>
 <translation id="5132942445612118989">നിങ്ങളുടെ പാസ്‌വേഡുകളും ചരിത്രവും മറ്റും എല്ലാ ഉപകരണങ്ങളിലും സമന്വയിപ്പിക്കുക</translation>
 <translation id="5139940364318403933">Google ഡ്രൈവ് എങ്ങനെ ഉപയോഗിക്കണമെന്ന് അറിയുക</translation>
 <translation id="515227803646670480">സംഭരിച്ച വിവരം മായ്‌ക്കുക</translation>
@@ -579,7 +580,7 @@
 <translation id="5368958499335451666">{OPEN_TABS,plural, =1{<ph name="OPEN_TABS_ONE" /> ടാബ് തുറന്നിരിക്കുന്നു, ടാബുകൾ മാറാനായി ടാപ്പ് ചെയ്യുക}other{<ph name="OPEN_TABS_MANY" /> ടാബുകൾ തുറന്നിരിക്കുന്നു, മാറാനായി ടാപ്പ് ചെയ്യുക}}</translation>
 <translation id="5391532827096253100">ഈ സൈറ്റിലേക്കുള്ള നിങ്ങളുടെ കണക്ഷൻ സുരക്ഷിതമല്ല. സൈറ്റ് വിവരങ്ങള്‍</translation>
 <translation id="5394307150471348411">{DETAIL_COUNT,plural, =1{(+ ഒരെണ്ണം കൂടി)}other{(+ # എണ്ണം കൂടി)}}</translation>
-<translation id="5400569084694353794">ഈ അപ്ലിക്കേഷൻ ഉപയോഗിക്കുന്നതിലൂടെ, നിങ്ങൾ Chrome-ന്റെ <ph name="BEGIN_LINK1" />സേവന നിബന്ധനകളും<ph name="END_LINK1" /> <ph name="BEGIN_LINK2" />സ്വകാര്യതാ അറിയിപ്പും<ph name="END_LINK2" /> അംഗീകരിക്കുന്നു.</translation>
+<translation id="5400569084694353794">ഈ ആപ്പ് ഉപയോഗിക്കുന്നതിലൂടെ, നിങ്ങൾ Chrome-ന്റെ <ph name="BEGIN_LINK1" />സേവന നിബന്ധനകളും<ph name="END_LINK1" /> <ph name="BEGIN_LINK2" />സ്വകാര്യതാ അറിയിപ്പും<ph name="END_LINK2" /> അംഗീകരിക്കുന്നു.</translation>
 <translation id="5403592356182871684">പേരുകൾ</translation>
 <translation id="5403644198645076998">ചില സൈറ്റുകളെ മാത്രം അനുവദിക്കുക</translation>
 <translation id="5414836363063783498">പരിശോധിച്ചുറപ്പിക്കുന്നു...</translation>
@@ -974,7 +975,7 @@
 <translation id="8168435359814927499">ഉള്ളടക്കം</translation>
 <translation id="8186512483418048923"><ph name="FILES" /> ഫയലുകൾ ശേഷിക്കുന്നു</translation>
 <translation id="8190358571722158785">ഒരു ദിവസം ശേഷിക്കുന്നു</translation>
-<translation id="8200772114523450471">തുടരൂ</translation>
+<translation id="8200772114523450471">പുനരാരംഭിക്കുക</translation>
 <translation id="8209050860603202033">ചിത്രം തുറക്കുക</translation>
 <translation id="8218622182176210845">നിങ്ങളുടെ അക്കൗണ്ട് മാനേജ് ചെയ്യുക</translation>
 <translation id="8224471946457685718">വൈഫൈ ഉപയോഗിച്ച് നിങ്ങൾക്കായി ലേഖനങ്ങൾ ഡൗൺലോഡ് ചെയ്യുക</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_mr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_mr.xtb
index 1d4db1b..57ad96f 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_mr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_mr.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">मदत आणि अभिप्राय</translation>
 <translation id="2501278716633472235">परत जा</translation>
 <translation id="2513403576141822879">गोपनीयता, सुरक्षितता आणि डेटा संकलनाशी संबंधित अधिक सेटिंग्जसाठी, <ph name="BEGIN_LINK" />सिंक आणि Google सेवा<ph name="END_LINK" /> पाहा</translation>
+<translation id="2518590038762162553">लाइट मोडमध्ये, Chrome पेज आणखी जलद लोड करते आणि ६० टक्के कमी डेटा वापरते. तुम्ही भेट दिलेली पेज ऑप्टिमाइझ करण्यासाठी, Chrome तुमचे वेब ट्रॅफिक Google ला पाठवते. <ph name="BEGIN_LINK" />अधिक जाणून घ्या<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">तुम्ही भेट दिलेल्या पेजच्या URL Google ला पाठवते</translation>
 <translation id="2532336938189706096">वेब दृश्य</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> आयटम हटवले</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ms.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ms.xtb
index 53c24f1..a13734e20 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ms.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ms.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Bantuan &amp; maklum balas</translation>
 <translation id="2501278716633472235">Kembali</translation>
 <translation id="2513403576141822879">Untuk mendapatkan lebih banyak tetapan yang berkaitan dengan privasi, keselamatan dan pengumpulan data, lihat <ph name="BEGIN_LINK" />Penyegerakan dan perkhidmatan Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Dalam mod Ringkas, Chrome memuatkan halaman lebih pantas dan mengurangkan penggunaan data sehingga 60 peratus. Untuk mengoptimumkan halaman yang anda lawati, Chrome menghantar trafik web anda kepada Google. <ph name="BEGIN_LINK" />Ketahui lebih lanjut<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Menghantar URL halaman yang anda lawati kepada Google</translation>
 <translation id="2532336938189706096">Paparan Web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> item dipadamkan</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_nl.xtb b/chrome/android/java/strings/translations/android_chrome_strings_nl.xtb
index 573db615..3c59a6f 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_nl.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_nl.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Hulp en feedback</translation>
 <translation id="2501278716633472235">Terug</translation>
 <translation id="2513403576141822879">Bekijk <ph name="BEGIN_LINK" />Synchronisatie en Google-services<ph name="END_LINK" /> voor meer instellingen die verband houden met privacy, beveiliging en gegevensverzameling.</translation>
+<translation id="2518590038762162553">In de Lite-versie van Chrome worden pagina's sneller geladen en wordt tot wel 60 procent minder data verbruikt. Chrome stuurt je webverkeer naar Google om de pagina's te optimaliseren die je bezoekt. <ph name="BEGIN_LINK" />Meer informatie<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Hiermee worden de URL's van pagina's die je bezoekt, verzonden naar Google</translation>
 <translation id="2532336938189706096">Webweergave</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> items verwijderd</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_no.xtb b/chrome/android/java/strings/translations/android_chrome_strings_no.xtb
index e3fd244..5427327 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_no.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_no.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Hjelp og tilbakemelding</translation>
 <translation id="2501278716633472235">Gå tilbake</translation>
 <translation id="2513403576141822879">Se <ph name="BEGIN_LINK" />Synkronisering og Google tjenester<ph name="END_LINK" /> for flere innstillinger knyttet til personvern, sikkerhet og datainnsamling.</translation>
+<translation id="2518590038762162553">I forenklet modus laster Chrome inn sider raskere og bruker opptil 60 prosent mindre data. For å optimalisere sidene du besøker, sender Chrome nettrafikken din til Google. <ph name="BEGIN_LINK" />Finn ut mer<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Sender Google nettadressene til sider du besøker</translation>
 <translation id="2532336938189706096">Nettvisning</translation>
 <translation id="2534155362429831547">Slettet <ph name="NUMBER_OF_ITEMS" /> elementer</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pl.xtb b/chrome/android/java/strings/translations/android_chrome_strings_pl.xtb
index e6190e9f..18bfae9 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_pl.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_pl.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Pomoc i opinie</translation>
 <translation id="2501278716633472235">Wróć</translation>
 <translation id="2513403576141822879">Więcej ustawień związanych z prywatnością, bezpieczeństwem i zbieraniem danych znajdziesz w sekcji <ph name="BEGIN_LINK" />Synchronizacja i usługi Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">W wersji uproszczonej Chrome szybciej ładuje strony, używając nawet o 60% mniej danych. Aby optymalizować strony, które odwiedzasz, Chrome przesyła ruch sieciowy do Google. <ph name="BEGIN_LINK" />Więcej informacji<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Adresy URL odwiedzanych stron będą wysyłane do Google</translation>
 <translation id="2532336938189706096">Widok sieci</translation>
 <translation id="2534155362429831547">Usunięte elementy: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pt-BR.xtb b/chrome/android/java/strings/translations/android_chrome_strings_pt-BR.xtb
index e65c553..dec57085 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_pt-BR.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_pt-BR.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Ajuda e feedback</translation>
 <translation id="2501278716633472235">Voltar</translation>
 <translation id="2513403576141822879">Para ver mais configurações relacionadas à privacidade, segurança e coleta de dados, acesse <ph name="BEGIN_LINK" />Serviços do Google e de sincronização<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Com o Modo Lite, as páginas são carregadas mais rapidamente no Chrome, e há uma economia de dados de até 60%. Para otimizar as páginas visitadas, o Chrome envia seu tráfego da Web para o Google. <ph name="BEGIN_LINK" />Saiba mais<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Envia URLs das páginas que você visita para o Google</translation>
 <translation id="2532336938189706096">Visualização da Web</translation>
 <translation id="2534155362429831547">Itens excluídos: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pt-PT.xtb b/chrome/android/java/strings/translations/android_chrome_strings_pt-PT.xtb
index 349658a5..0a9efb3 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_pt-PT.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_pt-PT.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Ajuda e comentários</translation>
 <translation id="2501278716633472235">Voltar</translation>
 <translation id="2513403576141822879">Para obter mais definições relacionadas com privacidade, segurança e recolha de dados, consulte <ph name="BEGIN_LINK" />Sincronização e serviços Google<ph name="END_LINK" />.</translation>
+<translation id="2518590038762162553">No Modo Lite, o Chrome carrega páginas mais rapidamente e utiliza até menos 60 por cento de dados. Para otimizar as páginas que vista, o Chrome envia o seu tráfego da Web para a Google. <ph name="BEGIN_LINK" />Saiba mais<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Envia para a Google os URLs das páginas que visita.</translation>
 <translation id="2532336938189706096">Visualização na Web</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> itens eliminados</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ro.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ro.xtb
index fcc55d8e..b7591bf 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ro.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ro.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Ajutor și feedback</translation>
 <translation id="2501278716633472235">Înapoi</translation>
 <translation id="2513403576141822879">Pentru mai multe setări privind confidențialitatea, securitatea și colectarea datelor, consultă <ph name="BEGIN_LINK" />Sincronizare și servicii Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">În modul Lite, Chrome încarcă mai repede paginile și folosește cu până la 60 % mai puține date. Pentru a optimiza paginile pe care le accesezi, Chrome trimite traficul tău web la Google. <ph name="BEGIN_LINK" />Află mai multe<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Trimite la Google adresele URL ale paginilor pe care le accesezi</translation>
 <translation id="2532336938189706096">Vizualizare pe web</translation>
 <translation id="2534155362429831547">Elemente șterse: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ru.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ru.xtb
index ee4fe703..bab2ccf 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ru.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ru.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Справка/отзыв</translation>
 <translation id="2501278716633472235">Назад</translation>
 <translation id="2513403576141822879">Остальные настройки конфиденциальности, безопасности и сбора данных вы можете найти в разделе <ph name="BEGIN_LINK" />Синхронизация сервисов Google<ph name="END_LINK" />.</translation>
+<translation id="2518590038762162553">В упрощенном режиме Chrome быстрее загружает страницы и экономит до 60 % трафика. Чтобы оптимизировать страницы, которые вы посещаете, Chrome отправляет ваш интернет-трафик в Google. <ph name="BEGIN_LINK" />Подробнее…<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Отправлять URL посещенных страниц в Google</translation>
 <translation id="2532336938189706096">Веб-версия</translation>
 <translation id="2534155362429831547">Удалено записей: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sk.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sk.xtb
index 185021c..db29359f 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_sk.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sk.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Pomocník a spätná väzba</translation>
 <translation id="2501278716633472235">Prejsť späť</translation>
 <translation id="2513403576141822879">Ďalšie nastavenia týkajúce sa ochrany súkromia, zabezpečenia a zhromažďovania dát nájdete v časti <ph name="BEGIN_LINK" />Synchronizácia a služby Googlu<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">V zjednodušenom režime načítava Chrome stránky rýchlejšie a využíva až o 60 percent menej dát. Chrome odosiela údaje o návštevnosti vášho webu do Googlu, ktorý na základe nich optimalizuje vami navštevované stránky. <ph name="BEGIN_LINK" />Ďalšie informácie<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Odosiela Googlu webové adresy navštívených stránok</translation>
 <translation id="2532336938189706096">Webové zobrazenie</translation>
 <translation id="2534155362429831547">Odstránené položky: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sl.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sl.xtb
index 242e9e60..2aba8dd 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_sl.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sl.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Pomoč in povratne inform.</translation>
 <translation id="2501278716633472235">Nazaj</translation>
 <translation id="2513403576141822879">Če vas zanima več nastavitev, povezanih z zasebnostjo, varnostjo in zbiranjem podatkov, si oglejte razdelek <ph name="BEGIN_LINK" />Sinhronizacija in Googlove storitve<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Chrome v lahkem načinu naloži strani hitreje in uporabi do 60 odstotkov manj podatkov. Chrome zaradi optimiziranja strani, ki jih obiščete, Googlu pošlje vaš spletni promet. <ph name="BEGIN_LINK" />Več o tem<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Googlu pošlje URL-je strani, ki jih obiščete</translation>
 <translation id="2532336938189706096">Spletni pogled</translation>
 <translation id="2534155362429831547">Št. izbrisanih elementov: <ph name="NUMBER_OF_ITEMS" /></translation>
@@ -673,7 +674,7 @@
 <translation id="5962718611393537961">Dotik za strnitev</translation>
 <translation id="6000066717592683814">Ohrani Google</translation>
 <translation id="6005538289190791541">Predlagano geslo</translation>
-<translation id="6036057147555329831">Dodatni model ICU</translation>
+<translation id="6036057147555329831">Dodatni modul ICU</translation>
 <translation id="6039379616847168523">Premik na naslednji zavihek</translation>
 <translation id="6040143037577758943">Zapri</translation>
 <translation id="6042308850641462728">Več</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sr.xtb
index e8200df6..dc45d13 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_sr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sr.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Помоћ и повратне информације</translation>
 <translation id="2501278716633472235">Назад</translation>
 <translation id="2513403576141822879">Више подешавања у вези са приватношћу, безбедношћу и прикупљањем података потражите у одељку <ph name="BEGIN_LINK" />Синхронизација и Google услуге<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">У Lite режиму Chrome учитава странице брже и користи и до 60 процената мање података. Да би оптимизовао странице које посећујете, Chrome шаље Google-у ваш саобраћај на вебу. <ph name="BEGIN_LINK" />Сазнајте више<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">URL-ови страница које посећујете се шаљу Google-у</translation>
 <translation id="2532336938189706096">Веб-приказ</translation>
 <translation id="2534155362429831547">Избрисаних ставки: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sv.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sv.xtb
index e12bbc86..3d54f57 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_sv.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sv.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Hjälp och feedback</translation>
 <translation id="2501278716633472235">Föregående</translation>
 <translation id="2513403576141822879">Fler inställningar som rör sekretess, säkerhet och datainsamling finns under <ph name="BEGIN_LINK" />Synkronisering och Googles tjänster<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">I begränsat läge läses sidorna in snabbare och dataförbrukningen minskar med upp till 60 procent. Webbtrafiken skickas till Google från Chrome för att optimera sidorna du besöker. <ph name="BEGIN_LINK" />Läs mer<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Skickar webbadresserna till sidor du besöker till Google</translation>
 <translation id="2532336938189706096">Webbvy</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> objekt har tagits bort</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sw.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sw.xtb
index 20245ab..d813340 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_sw.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sw.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Usaidizi na maoni</translation>
 <translation id="2501278716633472235">Rudi nyuma</translation>
 <translation id="2513403576141822879">Ili upate mipangilio zaidi inayohusiana na faragha, usalama na ukusanyaji wa data, angalia <ph name="BEGIN_LINK" />Usawazishaji na huduma za Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">Katika Hali Nyepesi, Chrome hupakia kurasa haraka zaidi na huokoa hadi asilimia 60 ya data. Ili kuboresha kurasa unazotembelea, Chrome hutuma trafiki ya wavuti yako kwa Google. <ph name="BEGIN_LINK" />Pata maelezo zaidi<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Hutuma URL za kurasa unazotembelea kwa Google</translation>
 <translation id="2532336938189706096">Mwonekano wa Wavuti</translation>
 <translation id="2534155362429831547">Umefuta vipengee <ph name="NUMBER_OF_ITEMS" /></translation>
@@ -814,7 +815,7 @@
 <translation id="7053983685419859001">Zuia</translation>
 <translation id="7055152154916055070">Imezuiwa kuelekeza kwingine:</translation>
 <translation id="7063006564040364415">Haikuweza kuunganisha kwenye seva ya usawazishaji.</translation>
-<translation id="7066151586745993502">{NUM_SELECTED,plural, =1{1 kimechaguliwa}other{# vimechaguliwa}}</translation>
+<translation id="7066151586745993502">{NUM_SELECTED,plural, =1{1 imechaguliwa}other{# vimechaguliwa}}</translation>
 <translation id="7071521146534760487">Dhibiti akaunti</translation>
 <translation id="7077143737582773186">Kadi ya SD</translation>
 <translation id="7087918508125750058">Imechagua <ph name="ITEM_COUNT" />. Chaguo zinapatikana karibu na sehemu ya juu ya skrini</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ta.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ta.xtb
index 47ae8ac5..1bbcac0 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_ta.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ta.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">உதவி &amp; கருத்து</translation>
 <translation id="2501278716633472235">திரும்பிச் செல்</translation>
 <translation id="2513403576141822879">தனியுரிமை, பாதுகாப்பு, தரவுச் சேகரிப்பு ஆகியவற்றுடன் தொடர்புடைய மேலும் பல அமைப்புகளுக்கு, <ph name="BEGIN_LINK" />ஒத்திசைவும் Google சேவைகளும்<ph name="END_LINK" /> என்பதைப் பார்க்கவும்</translation>
+<translation id="2518590038762162553">லைட் பயன்முறையில் பக்கங்களை Chrome வேகமாக ஏற்றுவதோடு டேட்டாவை 60 சதவீதம் குறைவாகவும் பயன்படுத்தும். நீங்கள் பார்க்கும் பக்கங்களை மேம்படுத்த Chrome உங்கள் இணைய டிராஃபிக்கை Googleளுக்கு அனுப்பும். <ph name="BEGIN_LINK" />மேலும் அறிக<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">நீங்கள் பார்வையிடும் பக்கங்களின் URLகளை Googleளுக்கு அனுப்பும்</translation>
 <translation id="2532336938189706096">இணைய பார்வை</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> வரலாற்று உள்ளடக்கங்கள் நீக்கப்பட்டன</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_te.xtb b/chrome/android/java/strings/translations/android_chrome_strings_te.xtb
index 401bf41..7e1abee 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_te.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_te.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">సహాయం &amp; అభిప్రాయం</translation>
 <translation id="2501278716633472235">వెనుకకు వెళ్ళు</translation>
 <translation id="2513403576141822879">గోప్యత, భద్రత మరియు డేటా సేకరణకు సంబంధించిన మరిన్ని సెట్టింగ్‌ల కోసం, <ph name="BEGIN_LINK" />సమకాలీకరణ మరియు Google సేవలను<ph name="END_LINK" /> చూడండి</translation>
+<translation id="2518590038762162553">లైట్ మోడ్‌లో, Chrome పేజీలను వేగంగా లోడ్ చేస్తుంది, అలాగే 60 శాతం తక్కువ డేటాను ఉపయోగిస్తుంది. మీరు సందర్శించే పేజీలను ఆప్టిమైజ్ చేయడానికి, Chrome మీ వెబ్ ట్రాఫిక్‌ను Googleకు పంపుతుంది. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">మీరు సందర్శించే పేజీల URLలను Googleకి పంపుతుంది</translation>
 <translation id="2532336938189706096">వెబ్ వీక్షణ</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> అంశాలు తొలగించబడ్డాయి</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_th.xtb b/chrome/android/java/strings/translations/android_chrome_strings_th.xtb
index 3bf57c1..57bad71 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_th.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_th.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">ความช่วยเหลือและความคิดเห็น</translation>
 <translation id="2501278716633472235">ย้อนกลับ</translation>
 <translation id="2513403576141822879">ดูการตั้งค่าเพิ่มเติมเกี่ยวกับความเป็นส่วนตัว ความปลอดภัย และการรวบรวมข้อมูลได้ที่<ph name="BEGIN_LINK" />การซิงค์และบริการต่างๆ ของ Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">ในโหมด Lite เบราว์เซอร์ Chrome จะโหลดหน้าเว็บได้เร็วขึ้นและใช้เน็ตน้อยลงสูงสุดถึง 60 เปอร์เซ็นต์ Chrome จะส่งการเข้าชมเว็บของคุณไปให้ Google เพื่อเพิ่มประสิทธิภาพหน้าเว็บที่คุณเข้าชม <ph name="BEGIN_LINK" />ดูข้อมูลเพิ่มเติม<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">ส่ง URL ของหน้าที่คุณเข้าชมไปยัง Google</translation>
 <translation id="2532336938189706096">มุมมองเว็บ</translation>
 <translation id="2534155362429831547">ลบแล้ว <ph name="NUMBER_OF_ITEMS" /> รายการ</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_tr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_tr.xtb
index f8861f0..657ea0a 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_tr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_tr.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Yardım ve geri bildirim</translation>
 <translation id="2501278716633472235">Geri dön</translation>
 <translation id="2513403576141822879">Gizlilik, güvenlik ve veri toplamayla ilgili daha fazla ayar için <ph name="BEGIN_LINK" />Senkronizasyon ve Google hizmetleri<ph name="END_LINK" /> konusuna bakın</translation>
+<translation id="2518590038762162553">Chrome, Basit modda sayfaları daha hızlı yükler ve yüzde 60'a kadar daha az veri kullanır. Chrome, ziyaret ettiğiniz sayfaları iyileştirmek için web trafiğinizi Google'a gönderir. <ph name="BEGIN_LINK" />Daha fazla bilgi<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Ziyaret ettiğiniz sayfaların URL'lerini Google'a gönderir</translation>
 <translation id="2532336938189706096">Web Görüntüleme</translation>
 <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> öğe silindi</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_uk.xtb b/chrome/android/java/strings/translations/android_chrome_strings_uk.xtb
index d709087..64993495 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_uk.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_uk.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">Довідка й відгуки</translation>
 <translation id="2501278716633472235">Назад</translation>
 <translation id="2513403576141822879">Інші налаштування конфіденційності, безпеки та збору даних доступні в розділі <ph name="BEGIN_LINK" />Синхронізація та сервіси Google<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">У спрощеному режимі Chrome завантажує сторінки швидше та використовує на 60% менше трафіку. Щоб оптимізувати сторінки, які ви відвідуєте, Chrome надсилає ваш веб-трафік у Google. <ph name="BEGIN_LINK" />Докладніше<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">Надсилає в Google URL-адреси відвіданих сторінок</translation>
 <translation id="2532336938189706096">Веб-версія</translation>
 <translation id="2534155362429831547">Видалено елементів: <ph name="NUMBER_OF_ITEMS" /></translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_zh-CN.xtb b/chrome/android/java/strings/translations/android_chrome_strings_zh-CN.xtb
index 7e1daad..a212ef3 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_zh-CN.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_zh-CN.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">帮助和反馈</translation>
 <translation id="2501278716633472235">返回</translation>
 <translation id="2513403576141822879">若想了解更多与隐私、安全和数据收集相关的设置,请参阅<ph name="BEGIN_LINK" />同步功能和 Google 服务<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">在精简模式下,Chrome 可更快速地加载网页,并可节省多达 60% 的流量。为了优化您访问的网页,Chrome 会将您的网络流量数据发送给 Google。<ph name="BEGIN_LINK" />了解详情<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">将您所访问的网页的网址发送给 Google</translation>
 <translation id="2532336938189706096">网页视图</translation>
 <translation id="2534155362429831547">删除了 <ph name="NUMBER_OF_ITEMS" /> 项</translation>
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_zh-TW.xtb b/chrome/android/java/strings/translations/android_chrome_strings_zh-TW.xtb
index 57900c3..c1fddc0 100644
--- a/chrome/android/java/strings/translations/android_chrome_strings_zh-TW.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_zh-TW.xtb
@@ -208,6 +208,7 @@
 <translation id="2498359688066513246">說明與意見回饋</translation>
 <translation id="2501278716633472235">返回</translation>
 <translation id="2513403576141822879">如需更多隱私權、安全性和資料收集的相關設定,請參閱<ph name="BEGIN_LINK" />同步處理和 Google 服務<ph name="END_LINK" /></translation>
+<translation id="2518590038762162553">使用精簡模式時,Chrome 可加快網頁載入速度,並可節省多達 60% 的數據用量。Chrome 會將你的網路流量傳送給 Google,以便針對你造訪的網頁進行最佳化處理。<ph name="BEGIN_LINK" />瞭解詳情<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">將你造訪的網頁網址傳送給 Google</translation>
 <translation id="2532336938189706096">網頁檢視</translation>
 <translation id="2534155362429831547">已刪除 <ph name="NUMBER_OF_ITEMS" /> 個項目</translation>
diff --git a/chrome/android/java_templates/BuildConfig.template b/chrome/android/java_templates/BuildConfig.template
deleted file mode 100644
index 552ff5a..0000000
--- a/chrome/android/java_templates/BuildConfig.template
+++ /dev/null
@@ -1,17 +0,0 @@
-// Copyright 2019 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.
-
-package org.chromium.chrome.browser;
-
-/**
- *  Build configuration specific to chrome/ portion of Chromium on Android.
- */
-public class BuildConfig {
-#if defined(_ENABLE_OFFLINE_PAGES)
-    public static final boolean ENABLE_OFFLINE_PAGES = true;
-#else
-    public static final boolean ENABLE_OFFLINE_PAGES = false;
-#endif
-
-}
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageAutoFetchTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageAutoFetchTest.java
index 70e9c23..5e57245 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageAutoFetchTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageAutoFetchTest.java
@@ -56,8 +56,8 @@
 
 /** Unit tests for auto-fetch-on-net-error-page. */
 @RunWith(ChromeJUnit4ClassRunner.class)
-@CommandLineFlags.Add({ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE,
-        "enable-features=AutoFetchOnNetErrorPage", "disable-features=NewNetErrorPageUI"})
+@CommandLineFlags.
+Add({ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE, "enable-features=AutoFetchOnNetErrorPage"})
 public class OfflinePageAutoFetchTest {
     private static final String TAG = "AutoFetchTest";
     private static final long WAIT_TIMEOUT_MS = 20000;
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/search_engines/TemplateUrlServiceTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/search_engines/TemplateUrlServiceTest.java
index 4596c0c2..4b3ae19 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/search_engines/TemplateUrlServiceTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/search_engines/TemplateUrlServiceTest.java
@@ -53,6 +53,8 @@
     private static final String PREFETCH_PARAMETER = "pf";
     private static final String PREFETCH_VALUE = "c";
 
+    private static final String PLAY_API_SEARCH_URL = "https://play.search.engine?q={searchTerms}";
+
     @Test
     @SmallTest
     @Feature({"ContextualSearch"})
@@ -270,30 +272,15 @@
     @Test
     @SmallTest
     @Feature({"SearchEngines"})
-    public void testSetPlayAPISearchEngine() {
+    public void testSetPlayAPISearchEngine_CreateNew() {
         final TemplateUrlService templateUrlService = waitForTemplateUrlServiceToLoad();
 
-        // Add regular search engine. It will be used to test conflict with Play API search engine.
-        TestThreadUtils.runOnUiThreadBlocking(
-                () -> { templateUrlService.addSearchEngineForTesting("keyword1", 0); });
-
-        // Adding Play API search engine with the same keyword should fail.
-        Assert.assertFalse(
-                TestThreadUtils.runOnUiThreadBlockingNoException(new Callable<Boolean>() {
-                    @Override
-                    public Boolean call() {
-                        return templateUrlService.setPlayAPISearchEngine("SearchEngine1",
-                                "keyword1", "https://search.engine?q={searchTerms}",
-                                "https://fav.icon");
-                    }
-                }));
-
-        // Adding Play API search engine with unique keyword should succeed.
+        // Adding Play API search engine should succeed.
         Assert.assertTrue(TestThreadUtils.runOnUiThreadBlockingNoException(new Callable<Boolean>() {
             @Override
             public Boolean call() {
-                return templateUrlService.setPlayAPISearchEngine("SearchEngine2", "keyword2",
-                        "https://search.engine?q={searchTerms}", "https://fav.icon");
+                return templateUrlService.setPlayAPISearchEngine(
+                        "SearchEngine1", "keyword1", PLAY_API_SEARCH_URL, "https://fav.icon");
             }
         }));
         TemplateUrl defaultSearchEngine =
@@ -303,19 +290,50 @@
                         return templateUrlService.getDefaultSearchEngineTemplateUrl();
                     }
                 });
-        Assert.assertEquals("keyword2", defaultSearchEngine.getKeyword());
+        Assert.assertEquals("keyword1", defaultSearchEngine.getKeyword());
         Assert.assertTrue(defaultSearchEngine.getIsPrepopulated());
+        Assert.assertEquals(PLAY_API_SEARCH_URL, defaultSearchEngine.getURL());
+    }
+
+    @Test
+    @SmallTest
+    @Feature({"SearchEngines"})
+    public void testSetPlayAPISearchEngine_UpdateExisting() {
+        final TemplateUrlService templateUrlService = waitForTemplateUrlServiceToLoad();
+
+        // Add regular search engine. It will be used to test conflict with Play API search engine.
+        TestThreadUtils.runOnUiThreadBlocking(
+                () -> { templateUrlService.addSearchEngineForTesting("keyword1", 0); });
+
+        // Adding Play API search engine with the same keyword should succeed.
+        Assert.assertTrue(TestThreadUtils.runOnUiThreadBlockingNoException(new Callable<Boolean>() {
+            @Override
+            public Boolean call() {
+                return templateUrlService.setPlayAPISearchEngine(
+                        "SearchEngine1", "keyword1", PLAY_API_SEARCH_URL, "https://fav.icon");
+            }
+        }));
+        TemplateUrl defaultSearchEngine =
+                TestThreadUtils.runOnUiThreadBlockingNoException(new Callable<TemplateUrl>() {
+                    @Override
+                    public TemplateUrl call() {
+                        return templateUrlService.getDefaultSearchEngineTemplateUrl();
+                    }
+                });
+        Assert.assertEquals("keyword1", defaultSearchEngine.getKeyword());
+        Assert.assertTrue(defaultSearchEngine.getIsPrepopulated());
+        Assert.assertEquals(PLAY_API_SEARCH_URL, defaultSearchEngine.getURL());
 
         // Adding Play API search engine again should fail.
         Assert.assertFalse(
                 TestThreadUtils.runOnUiThreadBlockingNoException(new Callable<Boolean>() {
                     @Override
                     public Boolean call() {
-                        return templateUrlService.setPlayAPISearchEngine("SearchEngine3",
-                                "keyword3", "https://search.engine?q={searchTerms}",
-                                "https://fav.icon");
+                        return templateUrlService.setPlayAPISearchEngine("SearchEngine2",
+                                "keyword2", PLAY_API_SEARCH_URL, "https://fav.icon");
                     }
                 }));
+
         defaultSearchEngine =
                 TestThreadUtils.runOnUiThreadBlockingNoException(new Callable<TemplateUrl>() {
                     @Override
@@ -323,7 +341,7 @@
                         return templateUrlService.getDefaultSearchEngineTemplateUrl();
                     }
                 });
-        Assert.assertEquals("keyword2", defaultSearchEngine.getKeyword());
+        Assert.assertEquals("keyword1", defaultSearchEngine.getKeyword());
     }
 
     private int getSearchEngineCount(final TemplateUrlService templateUrlService) {
diff --git a/chrome/android/modules/buildflags.gni b/chrome/android/modules/buildflags.gni
index 14050b9..fe809d67 100644
--- a/chrome/android/modules/buildflags.gni
+++ b/chrome/android/modules/buildflags.gni
@@ -6,13 +6,6 @@
 import("//build/config/compiler/compiler.gni")
 import("//device/vr/buildflags/buildflags.gni")
 
-# This variable indicates whether the native feature module system is engaged.
-# Currently, this implies a build configuration that supports native modules,
-# and that at least one feature is using a native module.
-# TODO(https://crbug.com/1004329): Partitioning should work with is_debug. When
-# this bug is fixed, remove that condition here.
-if (is_android && is_clang && use_lld && !is_component_build && !is_debug) {
-  use_native_modules = enable_vr && modularize_vr_native
-} else {
-  use_native_modules = false
-}
+# If true, lld is used to partition feature code into separate libraries, which
+# in turn are included in Dynamic Feature Modules.
+use_native_partitions = is_android && is_clang && use_lld && !is_component_build
diff --git a/chrome/android/modules/chrome_feature_module_tmpl.gni b/chrome/android/modules/chrome_feature_module_tmpl.gni
index ca326ec..6ac1d0d 100644
--- a/chrome/android/modules/chrome_feature_module_tmpl.gni
+++ b/chrome/android/modules/chrome_feature_module_tmpl.gni
@@ -65,7 +65,7 @@
       _loadable_modules_64_bit += _module_desc.loadable_modules_64_bit
     }
 
-    if (use_native_modules && defined(_module_desc.native_deps) &&
+    if (use_native_partitions && defined(_module_desc.native_deps) &&
         _module_desc.native_deps != []) {
       _arch = ""
       _toolchain = ""
diff --git a/chrome/android/modules/extra_icu/extra_icu_module.gni b/chrome/android/modules/extra_icu/extra_icu_module.gni
index 732dca1..ace0b82 100644
--- a/chrome/android/modules/extra_icu/extra_icu_module.gni
+++ b/chrome/android/modules/extra_icu/extra_icu_module.gni
@@ -7,7 +7,7 @@
   android_manifest =
       "//chrome/android/modules/extra_icu/internal/java/AndroidManifest.xml"
   java_deps = [
-    "//chrome/android/modules/extra_icu/internal:icudtl_extra_assets",
+    "//third_party/icu:icu_extra_assets",
     "//chrome/android/modules/extra_icu/internal:java",
   ]
 }
diff --git a/chrome/android/modules/extra_icu/internal/BUILD.gn b/chrome/android/modules/extra_icu/internal/BUILD.gn
index 0b041aa4..4adc899 100644
--- a/chrome/android/modules/extra_icu/internal/BUILD.gn
+++ b/chrome/android/modules/extra_icu/internal/BUILD.gn
@@ -12,10 +12,3 @@
     "//chrome/android/modules/extra_icu/public:java",
   ]
 }
-
-android_assets("icudtl_extra_assets") {
-  sources = [
-    "//third_party/icu/android_small/icudtl_extra.dat",
-  ]
-  disable_compression = true
-}
diff --git a/chrome/android/modules/test_dummy/internal/BUILD.gn b/chrome/android/modules/test_dummy/internal/BUILD.gn
index 4318f9d..f9759da 100644
--- a/chrome/android/modules/test_dummy/internal/BUILD.gn
+++ b/chrome/android/modules/test_dummy/internal/BUILD.gn
@@ -36,7 +36,7 @@
   ]
 
   # Test dummy native entrypoints belong in the partition.
-  if (use_native_modules) {
+  if (use_native_partitions) {
     cflags = [ "-fsymbol-partition=libtest_dummy.so" ]
   }
 }
diff --git a/chrome/android/modules/test_dummy/provider/BUILD.gn b/chrome/android/modules/test_dummy/provider/BUILD.gn
index d35d89f..4e5988a6 100644
--- a/chrome/android/modules/test_dummy/provider/BUILD.gn
+++ b/chrome/android/modules/test_dummy/provider/BUILD.gn
@@ -2,9 +2,7 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-import("//build/buildflag_header.gni")
 import("//build/config/android/rules.gni")
-import("//chrome/android/modules/buildflags.gni")
 
 android_library("java") {
   deps = [
@@ -14,22 +12,4 @@
     "//chrome/android/modules/test_dummy/public:java",
   ]
   java_files = [ "java/src/org/chromium/chrome/modules/test_dummy/TestDummyModuleProvider.java" ]
-  annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
-}
-
-generate_jni("jni_headers") {
-  sources = [
-    "java/src/org/chromium/chrome/modules/test_dummy/TestDummyModuleProvider.java",
-  ]
-}
-
-source_set("native") {
-  deps = [
-    ":jni_headers",
-    "//base",
-    "//ui/base",
-  ]
-  sources = [
-    "test_dummy_module_provider.cc",
-  ]
 }
diff --git a/chrome/android/modules/test_dummy/provider/java/src/org/chromium/chrome/modules/test_dummy/TestDummyModuleProvider.java b/chrome/android/modules/test_dummy/provider/java/src/org/chromium/chrome/modules/test_dummy/TestDummyModuleProvider.java
index 028cbb2..c8ebfdd 100644
--- a/chrome/android/modules/test_dummy/provider/java/src/org/chromium/chrome/modules/test_dummy/TestDummyModuleProvider.java
+++ b/chrome/android/modules/test_dummy/provider/java/src/org/chromium/chrome/modules/test_dummy/TestDummyModuleProvider.java
@@ -4,19 +4,12 @@
 
 package org.chromium.chrome.modules.test_dummy;
 
-import org.chromium.base.ThreadUtils;
-import org.chromium.base.annotations.JNINamespace;
-import org.chromium.base.annotations.NativeMethods;
 import org.chromium.components.module_installer.engine.InstallListener;
 
 /** Installs and loads the test dummy module. */
-@JNINamespace("test_dummy")
 public class TestDummyModuleProvider {
-    private static boolean sIsModuleLoaded;
-
     /** Returns true if the module is installed. */
     public static boolean isModuleInstalled() {
-        ThreadUtils.assertOnUiThread();
         return TestDummyModule.isInstalled();
     }
 
@@ -25,11 +18,10 @@
      *
      * Can only be called if the module is not installed.
      *
-     * @param onFinished Called when the install has finished.
+     * @param listener Called when the install has finished.
      */
-    public static void installModule(InstallListener onFinished) {
-        ThreadUtils.assertOnUiThread();
-        TestDummyModule.install(onFinished);
+    public static void installModule(InstallListener listener) {
+        TestDummyModule.install(listener);
     }
 
     /**
@@ -39,17 +31,6 @@
      * call.
      */
     public static TestDummyProvider getTestDummyProvider() {
-        ThreadUtils.assertOnUiThread();
-        assert isModuleInstalled();
-        if (!sIsModuleLoaded) {
-            TestDummyModuleProviderJni.get().loadNative();
-            sIsModuleLoaded = true;
-        }
         return TestDummyModule.getImpl();
     }
-
-    @NativeMethods
-    interface Natives {
-        void loadNative();
-    }
 }
diff --git a/chrome/android/modules/test_dummy/provider/test_dummy_module_provider.cc b/chrome/android/modules/test_dummy/provider/test_dummy_module_provider.cc
deleted file mode 100644
index 7c5f6fd..0000000
--- a/chrome/android/modules/test_dummy/provider/test_dummy_module_provider.cc
+++ /dev/null
@@ -1,49 +0,0 @@
-// Copyright 2019 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 "base/android/apk_assets.h"
-#include "base/threading/thread_restrictions.h"
-#include "chrome/android/modules/test_dummy/provider/jni_headers/TestDummyModuleProvider_jni.h"
-#include "ui/base/resource/resource_bundle.h"
-#include "ui/base/resource/scale_factor.h"
-
-// Native partner of the Java TestDummyModuleProvider. Used to load native
-// resources of the test dummy module into memory.
-// TODO(tiborg): Move to //components/module_installer so that it can be used by
-// other modules.
-
-namespace module_installer {
-
-// Allows memory mapping module PAK files on the main thread.
-//
-// We expect the memory mapping step to be quick. All it does is retrieveing a
-// region from the APK file that should already be memory mapped and reading the
-// PAK file header. Most of the disk IO is happening when accessing a resource.
-// And this traditionally happens synchronously on the main thread.
-class ScopedAllowModulePakLoad {
- public:
-  ScopedAllowModulePakLoad() {}
-  ~ScopedAllowModulePakLoad() {}
-
- private:
-  base::ScopedAllowBlocking allow_blocking_;
-};
-
-}  // namespace module_installer
-
-namespace test_dummy {
-
-static void JNI_TestDummyModuleProvider_LoadNative(JNIEnv* env) {
-  module_installer::ScopedAllowModulePakLoad resource_loader;
-  std::string path = "assets/test_dummy_resources.pak";
-  base::MemoryMappedFile::Region region;
-  int fd = base::android::OpenApkAsset(path, &region);
-  if (fd < 0) {
-    NOTREACHED() << "Cannot find " << path << " in APK.";
-  }
-  ui::ResourceBundle::GetSharedInstance().AddDataPackFromFileRegion(
-      base::File(fd), region, ui::SCALE_FACTOR_NONE);
-}
-
-}  // namespace test_dummy
diff --git a/chrome/android/touchless/java/src/org/chromium/chrome/browser/touchless/TouchlessNewTabPage.java b/chrome/android/touchless/java/src/org/chromium/chrome/browser/touchless/TouchlessNewTabPage.java
deleted file mode 100644
index a7be9503..0000000
--- a/chrome/android/touchless/java/src/org/chromium/chrome/browser/touchless/TouchlessNewTabPage.java
+++ /dev/null
@@ -1,202 +0,0 @@
-// Copyright 2019 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.
-
-package org.chromium.chrome.browser.touchless;
-
-import android.support.v4.view.ViewCompat;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.FrameLayout;
-
-import org.chromium.base.ApiCompatibilityUtils;
-import org.chromium.base.TraceEvent;
-import org.chromium.chrome.browser.ChromeActivity;
-import org.chromium.chrome.browser.GlobalDiscardableReferencePool;
-import org.chromium.chrome.browser.native_page.BasicNativePage;
-import org.chromium.chrome.browser.native_page.ContextMenuManager;
-import org.chromium.chrome.browser.native_page.NativePageHost;
-import org.chromium.chrome.browser.ntp.NewTabPage;
-import org.chromium.chrome.browser.ntp.NewTabPageUma;
-import org.chromium.chrome.browser.ntp.cards.NewTabPageAdapter;
-import org.chromium.chrome.browser.ntp.snippets.SuggestionsSource;
-import org.chromium.chrome.browser.profiles.Profile;
-import org.chromium.chrome.browser.suggestions.SuggestionsDependencyFactory;
-import org.chromium.chrome.browser.suggestions.SuggestionsEventReporter;
-import org.chromium.chrome.browser.suggestions.SuggestionsNavigationDelegate;
-import org.chromium.chrome.browser.suggestions.SuggestionsUiDelegate;
-import org.chromium.chrome.browser.suggestions.SuggestionsUiDelegateImpl;
-import org.chromium.chrome.browser.tab.Tab;
-import org.chromium.chrome.browser.tabmodel.TabModelSelector;
-import org.chromium.chrome.browser.ui.widget.displaystyle.UiConfig;
-import org.chromium.chrome.browser.util.UrlConstants;
-import org.chromium.chrome.touchless.R;
-import org.chromium.ui.modaldialog.ModalDialogManager;
-import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
-
-/**
- * Condensed new tab page for touchless devices.
- *
- * Acts as Coordinator for the new tab view structure, a recyclerview, that recycles content
- * suggestions. Will own the coordinators for the other subsections:
- *    - Most Likley carousel
- *    - Recent tab button
- */
-public class TouchlessNewTabPage extends BasicNativePage {
-    private static final String TAG = "TouchlessNewTabPage";
-
-    private ModalDialogManager mModalDialogManager;
-    private String mTitle;
-    private int mBackgroundColor;
-
-    private TouchlessNewTabPageMediator mMediator;
-    private OpenLastTabCoordinator mOpenLastTabCoordinator;
-
-    private FrameLayout mView;
-    private TouchlessNewTabPageTopLayout mRecyclerTopmostView;
-    private TouchlessRecyclerView mRecyclerView;
-    private Tab mTab;
-    private TouchlessContextMenuManager mContextMenuManager;
-    private SiteSuggestionsCoordinator mSiteSuggestionsCoordinator;
-
-    public TouchlessNewTabPage(ChromeActivity activity, NativePageHost host) {
-        super(activity, host); // Super calls initialize at the beginning of the constructor.
-    }
-
-    @Override
-    protected void initialize(ChromeActivity activity, NativePageHost nativePageHost) {
-        TraceEvent.begin(TAG);
-
-        mModalDialogManager = activity.getModalDialogManager();
-        mTab = nativePageHost.getActiveTab();
-        Profile profile = mTab.getProfile();
-
-        mTitle = activity.getResources().getString(R.string.button_new_tab);
-        mBackgroundColor = ApiCompatibilityUtils.getColor(
-                activity.getResources(), R.color.modern_primary_color);
-
-        mView = (FrameLayout) LayoutInflater.from(activity).inflate(
-                R.layout.new_tab_page_touchless_view, null);
-
-        mMediator = new TouchlessNewTabPageMediator(nativePageHost.getActiveTab());
-
-        mRecyclerView = mView.findViewById(R.id.suggestions_recycler_view);
-        mRecyclerTopmostView = (TouchlessNewTabPageTopLayout) LayoutInflater.from(activity).inflate(
-                R.layout.new_tab_page_touchless, mRecyclerView, false);
-
-        OpenLastTabView openLastTabButton =
-                mRecyclerTopmostView.findViewById(R.id.open_last_tab_button);
-        mOpenLastTabCoordinator = new OpenLastTabCoordinator(activity, profile, nativePageHost,
-                openLastTabButton, mRecyclerView.getTouchlessLayoutManager());
-
-        // TODO(dewittj): Initialize the tile suggestions coordinator here.
-
-        initializeContentSuggestions(
-                activity, nativePageHost, mRecyclerView.getTouchlessLayoutManager());
-
-        NewTabPageUma.recordIsUserOnline();
-        NewTabPageUma.recordLoadType(activity);
-        TraceEvent.end(TAG);
-    }
-
-    /*
-     * TODO(dewittj): This uses SuggestionsRecyclerView and NewTabPageAdapter in a legacy manner
-     * that does not properly support modern MVC code architecture.
-     */
-    private void initializeContentSuggestions(ChromeActivity activity,
-            NativePageHost nativePageHost, TouchlessLayoutManager layoutManager) {
-        long constructedTimeNs = System.nanoTime();
-
-        NewTabPageUma.trackTimeToFirstDraw(mRecyclerView, constructedTimeNs);
-
-        Profile profile = mTab.getProfile();
-        SuggestionsDependencyFactory depsFactory = SuggestionsDependencyFactory.getInstance();
-        SuggestionsSource suggestionsSource = depsFactory.createSuggestionSource(profile);
-        SuggestionsEventReporter eventReporter = depsFactory.createEventReporter();
-        SuggestionsNavigationDelegate navigationDelegate = new SuggestionsNavigationDelegate(
-                activity, profile, nativePageHost, TabModelSelector.from(mTab));
-        SuggestionsUiDelegate suggestionsUiDelegate = new SuggestionsUiDelegateImpl(
-                suggestionsSource, eventReporter, navigationDelegate, profile, nativePageHost,
-                GlobalDiscardableReferencePool.getReferencePool(), activity.getSnackbarManager());
-        suggestionsUiDelegate.addDestructionObserver(this::destroy);
-
-        assert suggestionsUiDelegate.getSuggestionsSource() != null;
-
-        // Don't store a direct reference to the activity, because it might change later if the tab
-        // is reparented.
-        Runnable closeContextMenuCallback = () -> mTab.getActivity().closeContextMenu();
-        mContextMenuManager = new TouchlessContextMenuManager(activity,
-                activity.getModalDialogManager(), suggestionsUiDelegate.getNavigationDelegate(),
-                mRecyclerView::setTouchEnabled, closeContextMenuCallback,
-                NewTabPage.CONTEXT_MENU_USER_ACTION_PREFIX);
-        mTab.getWindowAndroid().addContextMenuCloseListener(mContextMenuManager);
-
-        UiConfig uiConfig = new UiConfig(mRecyclerView);
-        mRecyclerView.init(uiConfig, closeContextMenuCallback);
-
-        // Infinite scrolling view for site suggestions.
-        mSiteSuggestionsCoordinator = new SiteSuggestionsCoordinator(mRecyclerTopmostView, profile,
-                navigationDelegate, mContextMenuManager, suggestionsUiDelegate.getImageFetcher(),
-                layoutManager);
-
-        NewTabPageAdapter newTabPageAdapter = new TouchlessNewTabPageAdapter(suggestionsUiDelegate,
-                mRecyclerTopmostView, uiConfig,
-                SuggestionsDependencyFactory.getInstance().getOfflinePageBridge(profile),
-                mContextMenuManager, mMediator.getModel(),
-                mOpenLastTabCoordinator.getFocusableComponent(),
-                mSiteSuggestionsCoordinator.getFocusableComponent(),
-                layoutManager.createCallbackToSetViewToFocus());
-
-        PropertyModelChangeProcessor.create(
-                mMediator.getModel(), mRecyclerView, ContentSuggestionsViewBinder::bind);
-
-        newTabPageAdapter.refreshSuggestions();
-        eventReporter.onSurfaceOpened();
-
-        // Set after the Mediator is constructed so that it has time to refresh the suggestions
-        // before requesting a layout.
-        mRecyclerView.setAdapter(newTabPageAdapter);
-    }
-
-    @Override
-    public View getView() {
-        return mView;
-    }
-
-    @Override
-    public String getHost() {
-        return UrlConstants.NTP_HOST;
-    }
-
-    @Override
-    public String getTitle() {
-        return mTitle;
-    }
-
-    @Override
-    public int getBackgroundColor() {
-        return mBackgroundColor;
-    }
-
-    @Override
-    public void destroy() {
-        assert !ViewCompat.isAttachedToWindow(getView())
-            : "Destroy called before removed from window";
-
-        mMediator.destroy();
-        mTab.getWindowAndroid().removeContextMenuCloseListener(mContextMenuManager);
-        mSiteSuggestionsCoordinator.destroy();
-        mOpenLastTabCoordinator.destroy();
-
-        super.destroy();
-    }
-
-    public void showContextMenu() {
-        View focusedView = getView().findFocus();
-        if (focusedView == null) return;
-        ContextMenuManager.Delegate delegate =
-                ContextMenuManager.getDelegateFromFocusedView(focusedView);
-        if (delegate == null) return;
-        mContextMenuManager.showTouchlessContextMenu(mModalDialogManager, delegate);
-    }
-}
diff --git a/chrome/android/webapk/strings/translations/android_webapk_strings_ml.xtb b/chrome/android/webapk/strings/translations/android_webapk_strings_ml.xtb
index de1802d..4a9b3e05 100644
--- a/chrome/android/webapk/strings/translations/android_webapk_strings_ml.xtb
+++ b/chrome/android/webapk/strings/translations/android_webapk_strings_ml.xtb
@@ -5,7 +5,7 @@
 <translation id="2697679025356221813"><ph name="APP_NAME" /> ആപ്പിന് വെബ് ബ്രൗസർ ആവശ്യമാണ്</translation>
 <translation id="3858759029325727987">ഈ ആപ്പിന് അനുയോജ്യമായ ബ്രൗസർ തിരഞ്ഞെടുക്കുക:</translation>
 <translation id="6377677440246641805"><ph name="BROWSER_NAME" />\nഅനുയോജ്യമല്ല</translation>
-<translation id="7671141431838911305">ഇൻസ്റ്റാളുചെയ്യുക</translation>
+<translation id="7671141431838911305">ഇൻസ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="8252328707312954493">അടയ്‌ക്കുക</translation>
 <translation id="987264212798334818">പൊതുവായ</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/app/resources/chromium_strings_am.xtb b/chrome/app/resources/chromium_strings_am.xtb
index 679c59fe..7f0c5e9 100644
--- a/chrome/app/resources/chromium_strings_am.xtb
+++ b/chrome/app/resources/chromium_strings_am.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium የእርስዎን የይለፍ ቃላት ወደ ውጭ መላክ ይፈልጋል። ይህንን ለመፍቀድ የWindows የይለፍ ቃልዎን ይተይቡ።</translation>
 <translation id="1115445892567829615">Chromium የእርስዎን ውሂብ ማመሳሰል አልቻለም። የእርስዎን የማመሳሰያ የይለፍ ሐረግ እባክዎ ያዘምኑ።</translation>
 <translation id="113122355610423240">Chromium የእርስዎ ነባሪ አሳሽ ነው</translation>
-<translation id="1170115874949214249">Chromiumን በእርስዎ ስልክ ላይ ይጫኑ። አንድ ኤስኤምኤስ ወደ የእርስዎ ስልክ እንልካለን።</translation>
-<translation id="1174473354587728743">ኮምፒውተር ይጋራሉ? አሁን Chromiumን ልክ እንደሚፈልጉት አድርገው ማዋቀር ይችላሉ።</translation>
 <translation id="1185134272377778587">ስለChromium</translation>
-<translation id="1298199220304005244">Chromium ስርዓተ ክወና መጠቀም ላይ እገዛ ያግኙ</translation>
 <translation id="1396446129537741364">Chromium የይለፍ ቃላትን ለማሳየት እየሞከረ ነው።</translation>
 <translation id="1414495520565016063">ወደ Chromium ገብተዋል!</translation>
 <translation id="151962892725702025">ማመሳሰል ለጎራዎ ስለማይገኝ Chromium OS ውሂብዎን ማመሳሰል አይችልም።</translation>
 <translation id="1524282610922162960">የChromium ትር ያጋሩ</translation>
-<translation id="1668054258064581266">መለያዎን ከChromium ካስወገዱ በኋላ፣ ክፍት ትሮችዎ እንዲሰሩ መልሰው መጫን ሊኖርብዎ ይችላል።</translation>
-<translation id="1688750314291223739">ግላዊነት የተላበሰው የአሳሽ ባህሪዎችዎ ድር ላይ ለማስቀመጥና ከዚያ Chromium ካለው ማንኛውም ኮምፒውተር ለመድረስ አመሳስልን ያዋቅሩ።</translation>
 <translation id="1708666629004767631">አዲስና ደህንነቱ ይበልጥ የተጠበቀ የChromium ስሪት አለ።</translation>
 <translation id="1766096484055239003">አንድ ዝማኔ ለመተግበር አስተዳዳሪዎ Chromiumን ዳግም እንዲያስጀምሩት ይፈልግብዎታል</translation>
 <translation id="1774152462503052664">Chromium ጀርባ ላይ ይሂድ</translation>
 <translation id="1779356040007214683">Chromium ይበልጥ ደህንነቱ የተጠበቀ እንዲሆን ለማድረግ፣ በ<ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ውስጥ ያልተጠቀሱ እና እርስዎ ሳያውቋቸው የታከሉ ሊሆኑ የሚችሉ የተወሰኑ ዝርዝሮችን አሰናክለናል።</translation>
 <translation id="1808667845054772817">Chromiumን ዳግም ጫን</translation>
-<translation id="1869480248812203386">የደህንነት ሊሆኑ የሚችሉ ክስተቶችን በራስ-ሰር ለGoogle ሪፖርት በማድረግ Chromium ይበልጥ ደህነንቱ የተጠበቀ እና ለመጠቀም ቀላል እንዲሆን ማድረግ ማገዝ ይችላሉ።</translation>
 <translation id="1881322772814446296">በሚተዳደር መለያ እየገቡ ነው፣ እና አስተዳዳሪው በእርስዎ Chromium መገለጫ ላይ ቁጥጥር እየሰጡት ነው። እንደ እርስዎ መተግበሪያዎች፣ ዕልባቶች፣ ታሪክ፣ የይለፍ ቃላት እና ሌሎች ቅንብሮች ያሉ የእርስዎ Chromium ውሂብ እስከ መጨረሻው ከ<ph name="USER_NAME" /> ጋር የተያያዙ ይሆናሉ። ይህን ውሂብ በGoogle የመለያዎች Dashboard አማካኝነት ሊሰርዙት ይችላሉ፣ ነገር ግን ይህን ውሂብ ከሌላ መለያ ጋር ሊያጎዳኙት አይችሉም። ነባሩ የእርስዎ Chromium ውሂብ ለይተው ለማስቀመጥም አዲስ መገለጫ እንደ አማራጭ መፍጠር ይችላሉ። <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">ይህንን በማጥፋት፣ እንደ Gmail ወደ መሰሉ የGoogle ጣቢያዎች ወደ Chromium በመለያ ሳይገቡ መግባት ይችላሉ</translation>
 <translation id="1929939181775079593">Chromium መልስ አይሰጥም። አሁን ዳግም ይጀምር?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">ይህን ዝማኔ ለመተግበር አስተዳዳሪዎ Chromiumን ዳግም እንዲያስጀምሩ ይጠይቀዎታል</translation>
 <translation id="2119636228670142020">&amp;ስለChromium ስርዓተ ክወና</translation>
 <translation id="2241627712206172106">ኮምፒውተር የሚጋሩ ከሆኑ ጓደኛዎች እና ቤተሰብ ተለይተው ሊያስሱ እና Chromiumን በሚፈልጉበት መንገድ ማዋቀር ይችላሉ።</translation>
-<translation id="2265088490657775772">በእርስዎ iPhone ላይ Chromiumን ያግኙት</translation>
 <translation id="2347108572062610441">ይህ ቅጥያ Chromiumን ሲጀምሩት የሚታየውን ገጽ ቀይሮታል።</translation>
 <translation id="2396765026452590966">ይህ «<ph name="EXTENSION_NAME" />» ቅጥያ Chromiumን ሲጀምሩት የሚታየውን ገጽ ቀይሮታል።</translation>
 <translation id="2483889755041906834">በChromium ውስጥ</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">ለማዘመን Chromium በዚህ ኮምፒውተር ላይ መሥራቱን ማቆም አለበት። ይህ በዚህ ኮምፒውተር ላይ በመለያ የገቡ የሌሎች ተጠቃሚዎች ያልተቀመጡ ለውጦች ሊያጠፋባቸው ይችላል።</translation>
 <translation id="2847479871509788944">ከChromium አስወግድ...</translation>
 <translation id="2886012850691518054">ከተፈለገ፦ የአጠቃቀም ስታትስቲክስ እና የብልሽት ሪፖርቶችን ወደ Google በራስ-ሰር በመላክ Chromium የተሻለ እንዲሆን ያግዙ።</translation>
-<translation id="2898082584336937987">Chromiumን በእርስዎ ስልክ ላይ ይጫኑት። አንድ ኤስኤምኤስ ወደዚህ ስልክዎ እንልካለን፦ <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">ስለ &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium የተዘመነ ነው</translation>
 <translation id="3032787606318309379">ወደ Chromium በማከል ላይ...</translation>
-<translation id="3046695367536568084">መተግበሪያዎችን ለመጠቀም ወደ Chromium መግባት አለብዎት። ይሄ Chromium መተግበሪያዎችዎን፣ ዕልባቶችዎን፣ ታሪክዎን፣ የይለፍ ቃላትዎን እና ሌሎች ቅንብሮችዎን በተለያዩ መሣሪያዎች ላይ እንዲያመሳስል ያስችለዋል።</translation>
 <translation id="3068515742935458733">የብልሽት ሪፖርቶችን እና <ph name="UMA_LINK" /> ወደ Google በመላክ Chromiumን የተሻለ ለማድረግ እገዛ ያድርጉ</translation>
 <translation id="3103660991484857065">ጫኚው መዝገቡን መበተን አልቻለም። እባክዎ Chromiumን እንደገና ያውርዱት።</translation>
 <translation id="3130323860337406239">Chromium ማይክሮፎንዎን እየተጠቀመ ነው።</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">አገናኙን በChromium ማን&amp;ነትን በማያሳውቅ መስኮት ውስጥ ክፈት</translation>
 <translation id="3190315855212034486">ኧረ ገዳይ! Chromium ብልሽት አጋጥሞታል። አሁን ዳግም ይጀምር?</translation>
 <translation id="3229526316128325841">Chromium የእርስዎን የይለፍ ቃላት ወደ ውጭ መላክ ይፈልጋል።</translation>
-<translation id="3256316712990552818">ወደ Chromium ተቀድቷል</translation>
 <translation id="3258596308407688501">Chromium የውሂብ አቃፊው ላይ ማንበብ እና መጻፍ አይችልም፦
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">አስፈላጊ የደህንነት ማሻሻያዎች እና አዲስ ባህሪያት በቅርብ ጊዜው ስሪቱ ላይ ይገኛሉ።</translation>
 <translation id="421369550622382712">ለChromium ምርጥ መተግበሪያዎችን፣ ጨዋታዎችን፣ ቅጥያዎችን እና ገጽታዎችን ያግኙ።</translation>
 <translation id="4216212958613226427">ይህ ቋንቋ የChromium ዩአይን ለማሳየት ስራ ላይ ይውላል</translation>
-<translation id="4222580632002216401">አሁን ወደ Chromium ገብተዋል! ማመሳሰል በአስተዳዳሪዎ ተሰናክሏል።</translation>
 <translation id="4230135487732243613">የChromium ውሂዎ ከዚህ መለያ ጋር ይገናኝ?</translation>
 <translation id="4271805377592243930">Chromium ላይ እገዛ ያግኙ</translation>
 <translation id="4285930937574705105">ተለይቶ ባልታወቀ ስህተት ምክንያት ጭነት ከሽፏል። Chromium አሁን እያሄደ ከሆነ እባክዎ ይዝጉትና እንደገና ይሞክሩ።</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Chromium በጀርባ ሁነታ ላይ ነው።</translation>
 <translation id="4987820182225656817">እንግዳዎች ማንኛውንም ነገር ወደኋላ ሳይተዉ Chromium መጠቀም ይችላሉ።</translation>
 <translation id="4994636714258228724">እራስዎን በChromium ላይ ያክሉ</translation>
-<translation id="5181952534059945058">ይህ ገጽ በጣም ብዙ ማህደረ ትውስታን ይጠቀማል፣ ስለዚህ Chromium አንዳንድ ይዘትን አስወግዷል።</translation>
 <translation id="5277894862589591112">የእርስዎን ለውጦች ተፈጻሚ ለማድረግ፣ Chromiumን ዳግም ያስጀምሩ</translation>
 <translation id="5358375970380395591">በሚተዳደር መለያ እየገቡ ነው፣ እና አስተዳዳሪው በእርስዎ Chromium መገለጫ ላይ ቁጥጥር እየሰጡት ነው። እንደ እርስዎ  መተግበሪያዎች፣ ዕልባቶች፣ ታሪክ፣ የይለፍ ቃላት እና ሌሎች ቅንብሮች ያሉ የእርስዎ Chromium ውሂብ እስከ መጨረሻው ከ<ph name="USER_NAME" /> ጋር የተያያዙ ይሆናሉ። ይህን ውሂብ በGoogle የመለያዎች Dashboard አማካኝነት ሊሰርዙት ይችላሉ፣ ነገር ግን ይህን ውሂብ ከሌላ መለያ ጋር ሊያጎዳኙት አይችሉም። <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromiumን በማዘመን ላይ (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">እንደገና ጀምር</translation>
 <translation id="5987687638152509985">ስምረትን ለመጀመር Chromiumን ያዘምኑ</translation>
 <translation id="6013050204643758987">Chromium OS ልክ እንደ <ph name="BEGIN_LINK_LINUX_OSS" />Linux (ቅድመ-ይሁንታ)<ph name="END_LINK_LINUX_OSS" /> ሊሠሩ የቻሉት በተጨማሪ <ph name="BEGIN_LINK_CROS_OSS" />የክፍት ምንጭ ሶፍትዌር<ph name="END_LINK_CROS_OSS" /> ነው።</translation>
-<translation id="6040143037577758943">ዝጋ</translation>
 <translation id="6055895534982063517">አዲስ የChromium ስሪት ይገኛል፣ እና ከመቼውም በበለጠ ፈጣን ሆኗል።</translation>
 <translation id="6063093106622310249">በChromium ውስጥ &amp;ክፈት</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> ወደ Chromium ታክሏል።</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Chromium OS ሥርዓት</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium በ1 ሰከንድ ውስጥ ዳግም ይጀምራል}one{Chromium በ# ሰከንዶች ውስጥ ዳግም ይጀምራል}other{Chromium በ# ሰከንዶች ውስጥ ዳግም ይጀምራል}}</translation>
 <translation id="6475912303565314141">እንዲሁም Chromiumን ሲጀምሩት የሚታየውን ገጽ ይቆጣጠራል።</translation>
-<translation id="6485906693002546646">የChromium ነገሮችዎን ለማመሳሰል <ph name="PROFILE_EMAIL" />ን እየተጠቀሙ ነው። የማመሳሰል ምርጫዎን ለማዘመን ወይም Chromium ያለGoogle መለያ መጠቀም የሚፈልጉ ከሆኑ <ph name="SETTINGS_LINK" />ን ይጎብኙ።</translation>
 <translation id="6510925080656968729">Chromiumን ያራግፉ</translation>
 <translation id="6570579332384693436">የሥርዓተ ፊደል አጻጻፍ ስህተቶችን ለማስተካከል፣ Chromium እርስዎ በጽሑፍ መስኮች ውስጥ የሚተይቡትን ጽሑፍ ወደ Google ይልካል</translation>
 <translation id="6598877126913850652">ወደ የChromium ማሳወቂያ ቅንብሮች ይሂዱ</translation>
@@ -164,7 +150,6 @@
 አንዳንድ ባህሪያት ላይገኙ ይችላሉ። እባክዎ የተለየ የመገለጫ አቃፊ ይግለጹ ወይም ይበልጥ አዲስ የሆነ የChromium ስሪት ይጠቀሙ።</translation>
 <translation id="6734080038664603509">&amp;Chromiumን አዘምን</translation>
 <translation id="6734291798041940871">Chromium ለሁሉም በእርስዎ ኮምፒውተር ላይ ላሉ ተጠቃሚዎች አስቀድሞ ተጭኗል።</translation>
-<translation id="6810143991807788455">የአሁኖቹ ቅንብሮችን ሪፖርት በማድረግ Chromium የተሻለ እንዲሆን ያግዙ</translation>
 <translation id="6847869444787758381">Chromium የእርስዎ የይለፍ ቃላት ከተነጠቁ እርስዎ እንዲያውቁት ያደርግዎታል</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (ወደ Chromium ተቀድቷል)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">የምርጫዎች ፋይልዎ የተበላሸ ወይም ልክ ያልሆነ ነው።
 
 Chromium ቅንብሮችዎን ማስመለስ አልቻለም።</translation>
-<translation id="7331920710658926971">Chromiumን በእርስዎ ስልክ ላይ ይጫኑ። አንድ ኤስኤምኤስ ወደ የእርስዎ ስልክ እንልካለን።</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">አዲሰ መስኮት</translation>
 <translation id="734373864078049451">የእርስዎ ድር፣ ዕልባቶች እና ሌሎች የChromium ነገሮች እዚህ ይኖራሉ።</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">በChromium ምናሌ ውስጥ ደብቅ</translation>
 <translation id="8013436988911883588">አንዴ Chromium መዳረሻ ከኖረው በኋላ ድር ጣቢያዎች እርስዎን መዳረሻ መጠየቅ ይችላሉ።</translation>
 <translation id="81770708095080097">ይህ ፋይል አደገኛ ስለሆነ Chromium አግዶታል።</translation>
-<translation id="8222496066431494154">Chromiumን በእርስዎ ስልክ ላይ ይጫኑ። አንድ ኤስኤምኤስ ወደዚህ የመለያ መልሶ ማግኛ ስልክዎ እንልካለን፦ <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">አንድ ምስል ጠቃሚ መግለጫ ከሌለው Chromium ለእርስዎ አንድ ለማቅረብ ይሞክራል። ዝርዝር መግለጫዎችን ለመፍጠር፣ ምስሎች ወደ Google ይላካሉ። ይህን በማንኛውም ጊዜ በቅንብሮች ውስጥ ሊያጠፉት ይችላሉ።</translation>
-<translation id="8269379391216269538">Chromium ይበልጥ የተሻለ እንዲሆን ያግዙ</translation>
 <translation id="8290862415967981663">ይህ ፋይል አደገኛ ሊሆን ስለሚችል Chromium አግዶታል።</translation>
 <translation id="8330519371938183845">Chromiumን በመላ መሣሪያዎችዎ ላይ ለማሳመር እና ግላዊነት ለማላበስ</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> ከዚህ ቀደም Chromiumን እየተጠቀመ ነበር</translation>
 <translation id="8417404458978023919">{0,plural, =1{በአንድ ቀን ውስጥ Chromiumን ዳግም አስጀምር}one{በ# ቀኖች ውስጥ Chromiumን ዳግም አስጀምር}other{በ# ቀኖች ውስጥ Chromiumን ዳግም አስጀምር}}</translation>
 <translation id="8453117565092476964">የጫኚው መዝገብ ተበላሽቷል ወይም ትክክል አይደለም። እባክዎ Chromiumን እንደገና ያውርዱ።</translation>
 <translation id="8493179195440786826">Chromium ጊዜው አልፎበታል</translation>
-<translation id="85843667276690461">Chromiumን መጠቀም ላይ እገዛ ያግኙ</translation>
 <translation id="8586442755830160949">የቅጂ መብት <ph name="YEAR" /> የChromium ደራሲያን። ሁሉም መብቶች የተጠበቁ ናቸው።</translation>
 <translation id="8619360774459241877">Chromiumን በማስጀመር ላይ...</translation>
 <translation id="8621669128220841554">ተለይቶ ባልታወቀ ስህተት ምክንያት ጭነት ከሽፏል። እባክዎ Chromiumን እንደገና ያውርዱ።</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">Chromium የይለፍ ቃሎችን ለማሳየት እየሞከረ ነው። ይህንን ለመፍቀድ የWindows የይለፍ ቃልዎን ይተይቡ።</translation>
 <translation id="8941642502866065432">Chromiumን ማዘመን አልተቻለም</translation>
 <translation id="8974095189086268230">Chromium ስርዓተ ክወና በተጨማሪ <ph name="BEGIN_LINK_CROS_OSS" />ክፍት ምንጭ ሶፍትዌር<ph name="END_LINK_CROS_OSS" /> እውን ሊሆን ችሏል።</translation>
-<translation id="8985587603644336029">የሆነ ሰው ከዚህ ቀደም በዚህ ኮምፒውተር ላይ እንደ <ph name="ACCOUNT_EMAIL_LAST" /> ሆኖ ወደ Chromium ገብቶ ነበር። ያ መለያዎ ካልሆነ መረጃዎን ለይተው ለማስቀመጥ አዲስ የChromium ተጠቃሚ ይፍጠሩ።
-
-ዝም ብሎ መግባት እንደ ዕልባቶች፣ ታሪክ እና ሌሎች ቅንብሮች ያሉ የChromium መረጃዎችን ከ<ph name="ACCOUNT_EMAIL_NEW" /> ጋር ያዋህዳቸዋል።</translation>
 <translation id="9019929317751753759">Chromiumን ይበልጥ ደህንነቱ የተጠበቀ እንዲሆን ለማድረግ፣ በ<ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ውስጥ ያልተዘረዘረውን የሚከተለውን ቅጥያ አሰናክለነዋል እና እርስዎ ሳያውቁት የታከለ ሊሆን ይችላል።</translation>
 <translation id="9022552996538154597">Chromium ውስጥ ይግቡ</translation>
-<translation id="9025992965467895364">ይህ ገጽ በጣም ብዙ ማህደረ ትውስታን ይጠቀማል፣ ስለዚህ Chromium ባለበት አቁሞታል።</translation>
-<translation id="9036189287518468038">Chromium የመተግበሪያ አስጀማሪ</translation>
 <translation id="9089354809943900324">Chromium ጊዜው አልፎበታል</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium በአንድ ሰዓት ውስጥ ዳግም ይጀምራል}one{Chromium በ# ሰዓቶች ውስጥ ዳግም ይጀምራል}other{Chromium በ# ሰዓቶች ውስጥ ዳግም ይጀምራል}}</translation>
 <translation id="91086099826398415">አገናኙን በChromium አዲስ &amp;ትር ውስጥ ክፈት</translation>
 <translation id="911206726377975832">የአሰሳ ውሂብዎም ይሰረዝ?</translation>
 <translation id="9158494823179993217">የእርስዎ የስርዓት አስተዳዳሪ <ph name="TARGET_URL_HOSTNAME" />ን ለመድረስ Chromium ተለዋጭ አሳሽን እንዲከፍት አዋቅረውታል።</translation>
-<translation id="918373042641772655">የ<ph name="USERNAME" /> ግንኙነትን ማቋረጥ ታሪክዎን፣ እልባቶችዎን፣ ቅንብሮችዎንና በዚህ መሳሪያ ላይ የተከማቹ ሌሎች የChromium ውሂቦችን ያጸዳል። በGoogle መለያዎ ውስጥ ያለ ውሂብ የማይጸዳ ሲሆን በ<ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" /> ላይ መተዳደር ይችላል።</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">አሁን በመለያ ወደ Chromium ገብተዋል</translation>
 <translation id="93478295209880648">Chromium በWindows XP ወይም Windows Vista ላይ ከእንግዲህ ስለማይደገፍ በአግባቡ ላይሰራ ይችላል</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> ይህን መሣሪያ ከመጠቀምዎ በፊት የሚከተለውን የአገልግሎት ውል እንዲያነቡት እና እንዲቀበሉት ይፈለጋል። ይህ ውል የChromium ስርዓተ ክወና ውሉን አያስፋፋውም፣ አይቀይረውም ወይም አይገድበውም።</translation>
 <translation id="985602178874221306">የChromium ደራሲዎች</translation>
diff --git a/chrome/app/resources/chromium_strings_ar.xtb b/chrome/app/resources/chromium_strings_ar.xtb
index dae85aa..6f1e321 100644
--- a/chrome/app/resources/chromium_strings_ar.xtb
+++ b/chrome/app/resources/chromium_strings_ar.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">‏يرغب Chromium في تصدير كلمات المرور، لذا يُرجى كتابة كلمة مرور Windows للسماح بذلك.</translation>
 <translation id="1115445892567829615">‏تعذر على Chromium مزامنة البيانات. يُرجى تحديث عبارة مرور المزامنة.</translation>
 <translation id="113122355610423240">‏Chromium هو متصفحك التلقائي</translation>
-<translation id="1170115874949214249">‏بادِر بتثبيت Chromium على هاتفك. سنرسل رسالة قصيرة SMS إلى رقم هاتف استرداد حسابك.</translation>
-<translation id="1174473354587728743">‏هل تشارك جهاز كمبيوتر؟ يمكنك الآن إعداد Chromium بالطريقة التي تعجبك تمامًا.</translation>
 <translation id="1185134272377778587">‏حول Chromium</translation>
-<translation id="1298199220304005244">‏الحصول على مساعدة بشأن استخدام نظام التشغيل Chromium</translation>
 <translation id="1396446129537741364">‏يحاول Chromium إظهار كلمات المرور.</translation>
 <translation id="1414495520565016063">‏تم تسجيل دخولك إلى Chromium!</translation>
 <translation id="151962892725702025">‏تعذر على نظام التشغيل Chromium مزامنة البيانات نظرًا لأن المزامنة غير متاحة في نطاقك.</translation>
 <translation id="1524282610922162960">‏مشاركة علامة تبويب Chromium</translation>
-<translation id="1668054258064581266">‏بعد إزالة حسابك من Chromium، قد تحتاج إلى إعادة تحميل علامات التبويب المفتوحة لتفعيلها.</translation>
-<translation id="1688750314291223739">‏يمكنك إعداد المزامنة لحفظ ميزات المتصفح المخصصة على الويب والدخول إليها من Chromium على أي كمبيوتر.</translation>
 <translation id="1708666629004767631">‏يتوفر إصدار جديد وأكثر أمانًا Chromium.</translation>
 <translation id="1766096484055239003">‏يتطلّب المُشرف إعادة تشغيل Chromium لتطبيق تحديث.</translation>
 <translation id="1774152462503052664">‏دع Chromium يعمل في الخلفية</translation>
 <translation id="1779356040007214683">‏لجعل Chromium أكثر أمانًا، تم إيقاف بعض الإضافات غير المدرجة في <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> والتي ربما تمت إضافتها بدون علمك.</translation>
 <translation id="1808667845054772817">‏إعادة تثبيت Chromium</translation>
-<translation id="1869480248812203386">‏يمكنك المساعدة في جعل Chromium أكثر أمانًا وأسهل استخدامًا بإبلاغ Google تلقائيًا بتفاصيل أي مخاطر أمنية محتملة.</translation>
 <translation id="1881322772814446296">‏أنت تسجل الدخول باستخدام حساب يخضع للإدارة وتتيح للمشرف إمكانية التحكم في ملفك الشخصي على Chromium. وستكون بياناتك في Chromium مثل تطبيقاتك وإشاراتك المرجعية وسجلك وكلمات المرور التابعة لك والإعدادات الأخرى مرتبطة دائمًا بالمستخدم <ph name="USER_NAME" />. ستتمكن من حذف هذه البيانات عبر لوحة تحكم حسابات Google، ولكنك لن تتمكن من إقران هذه البيانات بحساب آخر. ويُمكنك اختيار إنشاء ملف شخصي جديد للإبقاء على بياناتك الحالية في Chromium بشكل مستقل. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">‏من خلال إيقاف هذا الإعداد، يمكنك تسجيل الدخول إلى "مواقع Google" مثل Gmail بدون الحاجة إلى تسجيل الدخول إلى Chromium</translation>
 <translation id="1929939181775079593">‏لا يستجيب Chromium. هل تريد إعادة التشغيل الآن؟</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">‏يطلب المشرف إعادة تشغيل Chromium لتطبيق هذا التحديث.</translation>
 <translation id="2119636228670142020">‏حول ن&amp;ظام التشغيل Chromium</translation>
 <translation id="2241627712206172106">‏إذا كنت تشارك الكمبيوتر مع أصدقائك وعائلتك، فبإمكانهم التصفح على حدة وإعداد Chromium على النحو الذي يريدونه.</translation>
-<translation id="2265088490657775772">‏الحصول على Chromium على جهاز iPhone</translation>
 <translation id="2347108572062610441">‏غيّرت هذه الإضافة الصفحة التي تظهر عند بدء Chromium.</translation>
 <translation id="2396765026452590966">‏غيّرت الإضافة "<ph name="EXTENSION_NAME" />" الصفحة التي تظهر عند بدء Chromium.</translation>
 <translation id="2483889755041906834">‏في Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">‏يجب إيقاف تشغيل Chromium على جهاز الكمبيوتر هذا لإجراء التحديث. وجرّاء ذلك، إنّ المستخدمين الآخرين الذين سجَّلوا الدخول إلى جهاز الكمبيوتر هذا قد يفقدون التغييرات غير المحفوظة.</translation>
 <translation id="2847479871509788944">‏إزالة من Chromium</translation>
 <translation id="2886012850691518054">‏اختياري: ساعد في تحسين Chromium عن طريق إرسال إحصائيات الاستخدام وتقارير الأعطال إلى Google تلقائيًا.</translation>
-<translation id="2898082584336937987">‏بادِر بتثبيت Chromium على هاتفك. سنرسل رسالة قصيرة SMS إلى هاتفك: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">‏حو&amp;ل Chromium</translation>
 <translation id="2977470724722393594">‏Chromium محدّث</translation>
 <translation id="3032787606318309379">‏جارٍ الإضافة إلى Chromium...</translation>
-<translation id="3046695367536568084">‏يجب أن تسجّل الدخول إلى Chromium لاستخدام التطبيقات. ويتيح هذا مزامنة Chromium لتطبيقاتك وإشاراتك المرجعية وسجلك وكلمات المرور التابعة لك، فضلاً عن الإعدادات الأخرى على جميع الأجهزة.</translation>
 <translation id="3068515742935458733">‏يمكنك المساعدة في تحسين Chromium عن طريق إرسال تقارير الأعطال و<ph name="UMA_LINK" /> إلى Google</translation>
 <translation id="3103660991484857065">‏تعذّرت أداة التثبيت في فك ضغط الأرشيف. يُرجى إعادة تنزيل Chromium.</translation>
 <translation id="3130323860337406239">‏يستخدم Chromium الميكروفون.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">‏فتح الرابط في نافذة تصفح متخفٍ في Chromium</translation>
 <translation id="3190315855212034486">‏للأسف! تعطل Chromium. هل تريد إعادة التشغيل الآن؟</translation>
 <translation id="3229526316128325841">‏يرغب Chromium في تصدير كلمات المرور.</translation>
-<translation id="3256316712990552818">‏تم النسخ إلى Chromium</translation>
 <translation id="3258596308407688501">‏يتعذر على Chromium القراءة والكتابة في دليل البيانات الخاص به:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">تحسينات الأمان المهمة والميزات الجديدة متاحة في أحدث إصدار.</translation>
 <translation id="421369550622382712">‏اكتشف تطبيقات، وألعاب، وإضافات، ومظاهر رائعة لمتصفح Chromium.</translation>
 <translation id="4216212958613226427">‏يتم استخدام هذه اللغة لعرض واجهة مستخدم Chromium</translation>
-<translation id="4222580632002216401">‏لقد سجلت الدخول الآن إلى Chromium! أوقف المشرف المزامنة.</translation>
 <translation id="4230135487732243613">‏هل ترغب في ربط بياناتك في Chromium بهذا الحساب؟</translation>
 <translation id="4271805377592243930">‏الحصول على مساعدة في Chromium</translation>
 <translation id="4285930937574705105">‏تعذّر إتمام عملية التثبيت بسبب خطأ غير محدد. إذا كان Chromium في حالة التشغيل حاليًا، فالرجاء إغلاقه وإعادة المحاولة.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">‏Chromium في وضع الخلفية.</translation>
 <translation id="4987820182225656817">‏يمكن للضيف استخدام Chromium بدون أن يترك أي أثر وراءه.</translation>
 <translation id="4994636714258228724">‏إضافة نفسك إلى Chromium</translation>
-<translation id="5181952534059945058">‏تستهلك هذه الصفحة مساحة كبيرة من الذاكرة، لذلك أزال Chromium بعضًا من محتواها.</translation>
 <translation id="5277894862589591112">‏لتطبيق التغييرات، يُرجى إعادة تشغيل Chromium</translation>
 <translation id="5358375970380395591">‏أنت تسجل الدخول باستخدام حساب يخضع للإدارة وتتيح للمشرف إمكانية التحكم في ملفك الشخصي على Chromium. وستكون بياناتك في Chromium مثل تطبيقاتك وإشاراتك المرجعية وسجلك وكلمات المرور التابعة لك والإعدادات الأخرى مرتبطة دائمًا بالمستخدم <ph name="USER_NAME" />. ستتمكن من حذف هذه البيانات عبر لوحة تحكم حسابات Google، ولكنك لن تتمكن من إقران هذه البيانات بحساب آخر. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">‏جارٍ تحديث Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">إعادة التشغيل</translation>
 <translation id="5987687638152509985">‏تحديث Chromium لبدء المزامنة</translation>
 <translation id="6013050204643758987">‏أصبح نظام التشغيل Chromium متاحًا من خلال <ph name="BEGIN_LINK_CROS_OSS" />برنامج مفتوح المصدر<ph name="END_LINK_CROS_OSS" />إضافي، كما في نظام التشغيل <ph name="BEGIN_LINK_LINUX_OSS" />Linux (الإصدار التجريبي)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">إغلاق</translation>
 <translation id="6055895534982063517">‏يتوفر إصدار جديد من Chromium، وهو أسرع بكثير من ذي قبل.</translation>
 <translation id="6063093106622310249">‏&amp;فتح في Chromium</translation>
 <translation id="6072279588547424923">‏تمت إضافة <ph name="EXTENSION_NAME" /> إلى Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">‏نظام التشغيل Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{‏ستتم إعادة تشغيل Chromium خلال ثانية واحدة}zero{‏ستتم إعادة تشغيل Chromium خلال # ثانية}two{‏ستتم إعادة تشغيل Chromium خلال ثانيتين (#)}few{‏ستتم إعادة تشغيل Chromium خلال # ثوانٍ}many{‏ستتم إعادة تشغيل Chromium خلال # ثانيةً}other{‏ستتم إعادة تشغيل Chromium خلال # ثانية}}</translation>
 <translation id="6475912303565314141">‏كما أنها تتحكم في الصفحة التي تظهر عند تشغيل Chromium.</translation>
-<translation id="6485906693002546646">‏أنت تستخدم <ph name="PROFILE_EMAIL" /> لمزامنة عناصرك في Chromium. لتحديث تفضيل المزامنة أو استخدام Chromium بدون حساب Google، يُرجى الانتقال إلى <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">‏إزالة Chromium</translation>
 <translation id="6570579332384693436">‏لإصلاح الأخطاء الإملائية، يُرسِل Chromium ما تكتبه في حقول النص إلى Google</translation>
 <translation id="6598877126913850652">‏الانتقال إلى إعدادات الإشعارات في Chromium</translation>
@@ -162,7 +148,6 @@
 قد تكون بعض الميزات غير متاحة. يُرجى تحديد دليل ملف شخصي مختلف أو استخدام إصدار أحدث من Chromium.</translation>
 <translation id="6734080038664603509">‏تح&amp;ديث Chromium</translation>
 <translation id="6734291798041940871">‏يتم تثبيت Chromium بالفعل لجميع المستخدمين على جهاز الكمبيوتر.</translation>
-<translation id="6810143991807788455">‏ساعد في تحسين Chromium بالإبلاغ عن الإعدادات الحالية</translation>
 <translation id="6847869444787758381">‏يتم إعلامك من خلال Chromium في حال تم اختراق كلمات المرور في أي وقت.</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">‏Google Pay (تم النسخ إلى Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">‏ملف التفضيلات تالف أو غير صالح.
 
 يتعذر على Chromium استعادة إعداداتك.</translation>
-<translation id="7331920710658926971">‏بادِر بتثبيت Chromium على هاتفك. سنرسل رسالة قصيرة SMS إلى هاتفك.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">نافذة جديدة</translation>
 <translation id="734373864078049451">‏الويب والإشارات المرجعية وغيرها من عناصر Chromium توجد هنا.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">‏الإخفاء في قائمة Chromium</translation>
 <translation id="8013436988911883588">‏بعد حصول Chromium على إمكانية الوصول، ستتمكن المواقع الإلكترونية من مطالبتك بإمكانية الوصول.</translation>
 <translation id="81770708095080097">‏هذا الملف ضار، لذلك فقد حظره Chromium.</translation>
-<translation id="8222496066431494154">‏بادِر بتثبيت Chromium على هاتفك. سنرسل رسالة قصيرة SMS إلى رقم هاتف استرداد حسابك: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">‏في حال لم تتضمن صورة ما وصفًا مفيدًا، سيحاول Chromium توفير وصف لك. لإنشاء الأوصاف، سيتم إرسال الصور إلى Google. ويمكنك إيقاف هذه الميزة في الإعدادات في أي وقت.</translation>
-<translation id="8269379391216269538">‏المساعدة في تحسين Chromium</translation>
 <translation id="8290862415967981663">‏قد يكون هذا الملف ضارًا، لذلك فقد حظره Chromium.</translation>
 <translation id="8330519371938183845">‏يمكنك تسجيل الدخول لمزامنة Chromium وتخصيصه على جميع أجهزتك.</translation>
 <translation id="8340674089072921962">‏كان <ph name="USER_EMAIL_ADDRESS" /> يستخدم Chromium مسبقًا</translation>
 <translation id="8417404458978023919">{0,plural, =1{‏يجب إعادة تشغيل Chromium في غضون يوم واحد}zero{‏يجب إعادة تشغيل Chromium في غضون # يوم}two{‏يجب إعادة تشغيل Chromium في غضون يومين}few{‏يجب إعادة تشغيل Chromium في غضون # أيام}many{‏يجب إعادة تشغيل Chromium في غضون # يومًا}other{‏يجب إعادة تشغيل Chromium في غضون # يوم}}</translation>
 <translation id="8453117565092476964">‏أرشيف أداة التثبيت تالف أو غير صالح. يُرجى إعادة تنزيل Chromium.</translation>
 <translation id="8493179195440786826">‏إصدار Chromium قديم</translation>
-<translation id="85843667276690461">‏الحصول على مساعدة بشأن استخدام Chromium</translation>
 <translation id="8586442755830160949">‏حقوق الطبع والنشر لعام <ph name="YEAR" /> لصالح The Chromium Authors. جميع الحقوق محفوظة.</translation>
 <translation id="8619360774459241877">‏جارٍ إطلاق Chromium...</translation>
 <translation id="8621669128220841554">‏تعذّر التثبيت نظرًا لحدوث خطأ غير محدد. يُرجى إعادة تنزيل Chromium.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">‏يحاول Chromium عرض كلمات المرور. اكتب كلمة مرور Windows للسماح بذلك.</translation>
 <translation id="8941642502866065432">‏تعذّر تحديث Chromium</translation>
 <translation id="8974095189086268230">‏أصبح نظام التشغيل Chromium متاحًا من خلال المزيد من <ph name="BEGIN_LINK_CROS_OSS" />البرامج مفتوحة المصدر<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">‏سجّل شخص ما الدخول من قبل إلى Chromium على هذا الكمبيوتر باعتباره <ph name="ACCOUNT_EMAIL_LAST" />. فإذا لم يكن هذا هو حسابك، فأنشئ حساب مستخدم Chromium جديدًا للإبقاء على معلوماتك بشكل منفصل.
-
-سيؤدي تسجيل الدخول على أيّ حال إلى دمج معلومات Chromium مثل الإشارات المرجعية والسجل والإعدادات الأخرى مع <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">‏لجعل Chromium أكثر أمنًا، أوقفنا الإضافة التالية التي لم تُدرج في <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> وربما تكون قد أضيفت دون علمك.</translation>
 <translation id="9022552996538154597">‏تسجيل الدخول إلى Chromium</translation>
-<translation id="9025992965467895364">‏تستهلك هذه الصفحة مساحة كبيرة من الذاكرة، لذلك أوقفها Chromium مؤقتًا.</translation>
-<translation id="9036189287518468038">‏مشغل تطبيقات Chromium</translation>
 <translation id="9089354809943900324">‏إصدار Chromium قديم</translation>
 <translation id="9093206154853821181">{0,plural, =1{‏ستتم إعادة تشغيل Chromium في غضون ساعة واحدة}zero{‏ستتم إعادة تشغيل Chromium في غضون # ساعة}two{‏ستتم إعادة تشغيل Chromium في غضون ساعتين}few{‏ستتم إعادة تشغيل Chromium في غضون # ساعات}many{‏ستتم إعادة تشغيل Chromium في غضون # ساعةً}other{‏ستتم إعادة تشغيل Chromium في غضون # ساعة}}</translation>
 <translation id="91086099826398415">‏فتح الرابط في علامة تبويب جديدة في Chromium</translation>
 <translation id="911206726377975832">هل تريد أيضًا حذف بيانات التصفح؟</translation>
 <translation id="9158494823179993217">‏ضَبَط مشرف النظام Chromium لفتح متصفِّح بديل للوصول إلى <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">‏سيؤدي فصل <ph name="USERNAME" />إلى مسح السجّل والإشارات المرجعية والإعدادات و بيانات Chrome الأخرى المخزنة على هذا الجهاز. لن يتم مسح البيانات المخزنة في حساب Google ويمكن إدارتها على <ph name="GOOGLE_DASHBOARD_LINK" />لوحة تحكم Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">‏تم تسجيل دخولك الآن إلى Chromium</translation>
 <translation id="93478295209880648">‏قد لا يعمل Chromium بشكل صحيح لأنه لم يعد مدعومًا على أنظمة التشغيل Windows XP أو Windows Vista.</translation>
 <translation id="95514773681268843">‏<ph name="DOMAIN" /> يتطلب قراءة وقبول بنود الخدمة التالية قبل استخدام هذا الجهاز. وهذه البنود لا توسع أو تعدّل أو تقيّد بنود نظام التشغيل Chromium.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_bg.xtb b/chrome/app/resources/chromium_strings_bg.xtb
index 5aa13de..73cdc55 100644
--- a/chrome/app/resources/chromium_strings_bg.xtb
+++ b/chrome/app/resources/chromium_strings_bg.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium иска да експортира паролите ви. За да разрешите това, въведете паролата си за Windows.</translation>
 <translation id="1115445892567829615">Chromium не можа да синхронизира данните ви. Моля, актуализирайте пропуска си за синхронизиране.</translation>
 <translation id="113122355610423240">Chromium е браузърът ви по подразбиране</translation>
-<translation id="1170115874949214249">Инсталирайте Chromium на телефона си. Ще изпратим SMS на телефонния номер за възстановяване на профила ви.</translation>
-<translation id="1174473354587728743">Споделяте компютър? Вече можете да настроите Chromium точно по свой вкус.</translation>
 <translation id="1185134272377778587">Всичко за Chromium</translation>
-<translation id="1298199220304005244">Получаване на помощ за използването на Chromium OS</translation>
 <translation id="1396446129537741364">Chromium опитва да покаже паролите.</translation>
 <translation id="1414495520565016063">Влязохте в Chromium!</translation>
 <translation id="151962892725702025">Chromium OS не можа да синхронизира данните ви, защото тази функция не е налице за домейна ви.</translation>
 <translation id="1524282610922162960">Споделяне на раздел в Chromium</translation>
-<translation id="1668054258064581266">За да влезе в сила премахването на профила ви от Chromium, може да се наложи да презаредите отворените си раздели.</translation>
-<translation id="1688750314291223739">Настройте синхронизирането, за да запазите онлайн персонализираните функции на браузъра си и да осъществявате достъп до тях от Chromium на всеки компютър.</translation>
 <translation id="1708666629004767631">Налице е нова, по-сигурна версия на Chromium.</translation>
 <translation id="1766096484055239003">Администраторът ви изисква да рестартирате Chromium, за да се приложи актуализация</translation>
 <translation id="1774152462503052664">Нека Chromium да се изпълнява на заден план</translation>
 <translation id="1779356040007214683">За да направим Chromium по-безопасен, деактивирахме някои разширения, които не са посочени в <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> и може да са били добавени без ваше знание.</translation>
 <translation id="1808667845054772817">Повторно инсталиране на Chromium</translation>
-<translation id="1869480248812203386">Можете да ни помогнете да направим Chromium по-надежден и по-лесен за използване, като автоматично ни съобщавате подробности за инциденти, свързани със сигурността.</translation>
 <translation id="1881322772814446296">Влизате с управляван профил и давате на администратора му контрол над потребителския си профил в Chromium. Данните ви там, като например приложения, отметки, история, пароли и други настройки, ще се свържат за постоянно с/ъс <ph name="USER_NAME" />. Ще можете да ги изтриете чрез таблото за управление на Google Профили, но не и да ги свържете с друг профил. По избор можете да създадете нов потребителски профил, за да отделите съществуващите си данни в Chromium. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">С изключването на тази функция можете да влизате в сайтовете на Google, като например Gmail, без да влизате в Chromium</translation>
 <translation id="1929939181775079593">Chromium блокира. Да се стартира ли отново сега?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Администраторът ви моли да рестартирате Chromium, за да се приложи тази актуализация</translation>
 <translation id="2119636228670142020">Всичко за &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Ако споделяте компютър, близките и приятелите ви могат да сърфират отделно и да настроят Chromium точно така, както искат.</translation>
-<translation id="2265088490657775772">Изтеглете Chromium за своя iPhone</translation>
 <translation id="2347108572062610441">Това разширение промени страницата, която се показва при стартиране на Chromium.</translation>
 <translation id="2396765026452590966">Разширението „<ph name="EXTENSION_NAME" />“ промени страницата, която се показва при стартиране на Chromium.</translation>
 <translation id="2483889755041906834">В Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">За да се извърши актуализацията, Chromium трябва да спре работа на този компютър. Това може да доведе до изтриване на незапазените промени на други потребители, които са влезли в профила си на този компютър.</translation>
 <translation id="2847479871509788944">Премахване от Chromium...</translation>
 <translation id="2886012850691518054">По избор: Помогнете ни да подобрим Chromium, като автоматично изпращате на Google статистически данни за използването му и сигнали за сривове.</translation>
-<translation id="2898082584336937987">Инсталирайте Chromium на телефона си. Ще ви изпратим SMS на него: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Всичко за &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium е актуален</translation>
 <translation id="3032787606318309379">Добавя се към Chromium...</translation>
-<translation id="3046695367536568084">Трябва да сте влезли в Chromium, за да използвате приложения. Това разрешава на браузъра да синхронизира на устройствата вашите приложения, отметки, история, пароли и други настройки.</translation>
 <translation id="3068515742935458733">Помогнете ни да подобрим Chromium, като ни изпращате <ph name="UMA_LINK" /> му и сигнали за сривове</translation>
 <translation id="3103660991484857065">Инсталационната програма не успя да декомпресира архива. Моля, изтеглете отново Chromium.</translation>
 <translation id="3130323860337406239">Chromium използва микрофона ви.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Отваряне на връзката в прозорец в режим „инко&amp;гнито“ на Chromium</translation>
 <translation id="3190315855212034486">О, не! Chromium претърпя срив. Да се стартира ли отново сега?</translation>
 <translation id="3229526316128325841">Chromium иска да експортира паролите ви.</translation>
-<translation id="3256316712990552818">Копирано в Chromium</translation>
 <translation id="3258596308407688501">Chromium не може да чете и записва в директорията си за данни: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">Ключовете на приложния програмен интерфейс (API) на Google липсват. Някои функции на Chromium ще бъдат деактивирани.</translation>
 <translation id="3296368748942286671">Да продължават да се изпълняват приложения на заден план, когато Chromium е затворен</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">В последната версия са налице важни подобрения в сигурността и нови функции.</translation>
 <translation id="421369550622382712">Открийте отлични приложения, игри, разширения и теми за Chromium.</translation>
 <translation id="4216212958613226427">Този език служи за показване на ПИ на Chromium</translation>
-<translation id="4222580632002216401">Вече влязохте в Chromium! Синхронизирането е деактивирано от администратора ви.</translation>
 <translation id="4230135487732243613">Да се свържат ли данните ви в Chromium с този профил?</translation>
 <translation id="4271805377592243930">Получаване на помощ за Chromium</translation>
 <translation id="4285930937574705105">Инсталирането не бе успешно поради неизвестна грешка. Ако Chromium понастоящем се изпълнява, моля, затворете го и опитайте отново.</translation>
@@ -105,7 +94,6 @@
 <translation id="4943838377383847465">Chromium работи на заден план.</translation>
 <translation id="4987820182225656817">Гостите могат да използват Chromium, без да оставят следи.</translation>
 <translation id="4994636714258228724">Добавяне на вас към Chromium</translation>
-<translation id="5181952534059945058">Тази страница използва твърде много памет, така че Chromium премахна част от съдържанието.</translation>
 <translation id="5277894862589591112">За да приложите промените си, рестартирайте Chromium</translation>
 <translation id="5358375970380395591">Влизате с управляван профил и давате на администратора му контрол над потребителския си профил в Chromium. Данните ви там, като например приложения, отметки, история, пароли и други настройки, ще се свържат за постоянно с/ъс <ph name="USER_NAME" />. Ще можете да ги изтриете чрез таблото за управление на Google Профили, но не и да ги свържете с друг профил. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium се актуализира (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -128,7 +116,6 @@
 <translation id="5895138241574237353">Рестартиране</translation>
 <translation id="5987687638152509985">Актуализирайте Chromium, за да стартира синхронизирането</translation>
 <translation id="6013050204643758987">Chromium OS е възможна благодарение на допълнителен <ph name="BEGIN_LINK_CROS_OSS" />софтуер с отворен код<ph name="END_LINK_CROS_OSS" />. Това се отнася и за <ph name="BEGIN_LINK_LINUX_OSS" />Linux (бета)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Затваряне</translation>
 <translation id="6055895534982063517">Налице е нова версия на Chromium, която е по-бърза от всякога.</translation>
 <translation id="6063093106622310249">&amp;Отваряне в Chromium</translation>
 <translation id="6072279588547424923">Разширението <ph name="EXTENSION_NAME" /> бе добавено към Chromium</translation>
@@ -150,7 +137,6 @@
 <translation id="6434250628340475518">Система Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium ще се рестартира след 1 секунда}other{Chromium ще се рестартира след # секунди}}</translation>
 <translation id="6475912303565314141">То също контролира коя страница се показва при стартиране на Chromium.</translation>
-<translation id="6485906693002546646">Използвате <ph name="PROFILE_EMAIL" /> за синхронизиране на нещата си в Chromium. За да актуализирате съответното предпочитание или да ползвате браузъра без профил в Google, посетете <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Деинсталиране на Chromium</translation>
 <translation id="6570579332384693436">С цел поправка на правописни грешки Chromium изпраща до Google текста, който въвеждате в текстовите полета</translation>
 <translation id="6598877126913850652">Към настройките за известия в Chromium</translation>
@@ -158,7 +144,6 @@
 <translation id="6717134281241384636">Потребителският ви профил не може да се използва, защото е от по-нова версия на Chromium. Някои функции може да не са налице. Моля, посочете друга директория в потребителския профил или използвайте по-нова версия на Chromium.</translation>
 <translation id="6734080038664603509">Актуализиране на &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium вече е инсталиран за всички потребители на компютъра ви.</translation>
-<translation id="6810143991807788455">Помогнете за подобряването на Chromium, като подадете сигнал за текущите настройки</translation>
 <translation id="6847869444787758381">Chromium ви уведомява, ако паролите ви бъдат компрометирани</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (копирано в Chromium)</translation>
@@ -175,7 +160,6 @@
 <translation id="731644333568559921">Актуализиране на &amp;Chromium OS</translation>
 <translation id="731795002583552498">Chromium се актуализира</translation>
 <translation id="7318036098707714271">Файлът с предпочитанията ви е повреден или невалиден. Chromium не може да възстанови настройките ви.</translation>
-<translation id="7331920710658926971">Инсталирайте Chromium на телефона си. Ще ви изпратим SMS на него.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Нов прозорец</translation>
 <translation id="734373864078049451">Тук ще намерите посещаваните от вас места в мрежата, отметките и другите си неща в Chromium.</translation>
@@ -206,16 +190,13 @@
 <translation id="7979877361127045932">Скриване в менюто на Chromium</translation>
 <translation id="8013436988911883588">След като Chromium получи достъп, уебсайтовете ще могат да искат достъп от вас.</translation>
 <translation id="81770708095080097">Chromium блокира този файл, тъй като е опасен.</translation>
-<translation id="8222496066431494154">Инсталирайте Chromium на телефона си. Ще изпратим SMS на телефонния номер за възстановяване на профила ви: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Ако няма полезно описание за дадено изображение, Chromium ще се опита да предостави такова. За да бъдат създадени описания, съответните изображения се изпращат до Google. По всяко време можете да изключите тази функция от настройките.</translation>
-<translation id="8269379391216269538">Помощ за подобряването на Chromium</translation>
 <translation id="8290862415967981663">Chromium блокира този файл, тъй като може да е опасен.</translation>
 <translation id="8330519371938183845">Влезте в профила си, за да синхронизирате и персонализирате Chromium на всичките си устройства</translation>
 <translation id="8340674089072921962">По-рано <ph name="USER_EMAIL_ADDRESS" /> използва Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Повторно стартиране на Chromium до 1 ден}other{Повторно стартиране на Chromium до # дни}}</translation>
 <translation id="8453117565092476964">Архивът на инсталационната програма е повреден или невалиден. Моля, изтеглете отново Chromium.</translation>
 <translation id="8493179195440786826">Chromium не е актуален</translation>
-<translation id="85843667276690461">Получаване на помощ за използването на Chromium</translation>
 <translation id="8586442755830160949">Авторски права <ph name="YEAR" /> Авторите на Chromium. Всички права запазени.</translation>
 <translation id="8619360774459241877">Chromium стартира…</translation>
 <translation id="8621669128220841554">Инсталирането не бе успешно поради неизвестна грешка. Моля, изтеглете отново Chromium.</translation>
@@ -232,21 +213,14 @@
 <translation id="8907580949721785412">Chromium опитва да покаже паролите. За да разрешите това, въведете паролата си за Windows.</translation>
 <translation id="8941642502866065432">Chromium не може да се актуализира</translation>
 <translation id="8974095189086268230">Chrome OS е възможна благодарение на допълнителен <ph name="BEGIN_LINK_CROS_OSS" />софтуер с отворен код<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">По-рано някой е влязъл в Chromium на този компютър като <ph name="ACCOUNT_EMAIL_LAST" />. Ако това не е профилът ви, създайте нов потребител в браузъра, за да се съхранява отделно информацията ви.
-
-В случай че влезете въпреки това, данните в Chromium като отметки, история и други настройки ще се обединят с/ъс <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">За да направим Chromium по-безопасен, деактивирахме следното разширение, което липсва от <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> и може да е било добавено без ваше знание.</translation>
 <translation id="9022552996538154597">Вход в Chromium</translation>
-<translation id="9025992965467895364">Тази страница използва твърде много памет, така че Chromium я постави на пауза.</translation>
-<translation id="9036189287518468038">Стартов панел с приложения за Chromium</translation>
 <translation id="9089354809943900324">Chromium не е актуален</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium ще се стартира отново след 1 час}other{Chromium ще се стартира отново след # часа}}</translation>
 <translation id="91086099826398415">Отваряне на връзката в нов &amp;раздел на Chromium</translation>
 <translation id="911206726377975832">Да се изтрият ли и данните от сърфирането?</translation>
 <translation id="9158494823179993217">Системният ви администратор е конфигурирал Chromium да отваря алтернативен браузър за достъп до <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Прекратяването на връзката с/ъс <ph name="USERNAME" /> ще изчисти историята, отметките, настройките и другите данни в Chromium, съхранени на това устройство. Данните в профила ви в Google няма да бъдат изчистени и могат да се управляват в <ph name="GOOGLE_DASHBOARD_LINK" />Google Табло за управление<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (входящ трафик за mDNS)</translation>
-<translation id="9197815481970649201">Вече влязохте в Chromium</translation>
 <translation id="93478295209880648">Chromium може да не функционира правилно, тъй като вече не се поддържа под Windows XP и Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> изисква да прочетете и приемете следните Общи условия, преди да използвате това устройство. Те не разширяват, не променят, нито ограничават Условията на Chromium OS.</translation>
 <translation id="985602178874221306">Авторите на Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_bn.xtb b/chrome/app/resources/chromium_strings_bn.xtb
index 5904c8d..396a539 100644
--- a/chrome/app/resources/chromium_strings_bn.xtb
+++ b/chrome/app/resources/chromium_strings_bn.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium আপনার পাসওয়ার্ড এক্সপোর্ট করতে চাইছে। অনুমতি দিতে Windows এর পাসওয়ার্ড টাইপ করুন।</translation>
 <translation id="1115445892567829615">Chromium আপনার ডেটা সিঙ্ক করতে পারেনি৷ দয়া করে আপনার সিঙ্ক পাসফ্রেজ আপডেট করুন৷</translation>
 <translation id="113122355610423240">Chromium আপনার ডিফল্ট ব্রাউজার</translation>
-<translation id="1170115874949214249">আপনার ফোনে Chromium ইনস্টল করুন। আমরা আপনার অ্যাকাউন্ট রিকভারি ফোন নম্বরে একটি এসএমএস পাঠাব।</translation>
-<translation id="1174473354587728743">একটি কম্পিউটার শেয়ার করবেন? এখন আপনি আপনার পছন্দমতো উপায়ে Chromium কে সেট-আপ করতে পারেন৷</translation>
 <translation id="1185134272377778587">Chromium সম্পর্কে</translation>
-<translation id="1298199220304005244">Chromium OS ব্যবহারে সাহায্য পেতে</translation>
 <translation id="1396446129537741364">Chromium পাসওয়ার্ডগুলি দেখানোর চেষ্টা করছে৷</translation>
 <translation id="1414495520565016063">আপনি Chromium এ প্রবেশ করেছেন!</translation>
 <translation id="151962892725702025">আপনার ডোমেনে সিঙ্ক উপলভ্য না থাকার কারণে Chromium OS আপনার ডেটা সিঙ্ক করতে পারেনি৷</translation>
 <translation id="1524282610922162960">একটি Chromium ট্যাব শেয়ার করুন</translation>
-<translation id="1668054258064581266">Chromium থেকে আপনার অ্যাকাউন্ট সরানোর পরে, কার্যকর করতে আপনাকে খোলা ট্যাবগুলিকে রিলোড করার প্রয়োজন হতে পারে।</translation>
-<translation id="1688750314291223739">ওয়েবে আপনার নিজের মতো করে ব্রাউজার ফিচার সেভ করতে সিঙ্ক সেট করুন এবং যেকোনো কম্পিউটারে Chromium থেকে সেগুলিতে অ্যাক্সেস করুন৷</translation>
 <translation id="1708666629004767631">Chromium-এর একটি নতুন, নিরাপদ ভার্সন উপলভ্য আছে৷</translation>
 <translation id="1766096484055239003">একটি আপডেট প্রয়োগ করতে আপনার অ্যাডমিনিস্ট্রেটর চান যে আপনি Chromium আবার চালু করুন</translation>
 <translation id="1774152462503052664">Chromium-কে ব্যাকগ্রাউন্ডে চলতে দিন</translation>
 <translation id="1779356040007214683">Chromium কে আরও নিরাপদ করতে, আমরা কিছু এক্সটেনশান অক্ষম করেছি যা <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> এ তালিকাবদ্ধ করা হয়নি এবং হয়ত আপনাকে না জানিয়ে যোগ করা হয়েছে৷</translation>
 <translation id="1808667845054772817">Chromium আবার ইন্সটল করুন</translation>
-<translation id="1869480248812203386">আপনি Google-এ নিরাপত্তার সম্ভাব্য লঙ্ঘনের ঘটনাগুলি অটোমেটিক রিপোর্ট করার মাধ্যমে Chromium-কে নিরাপদ ও সহজে ব্যবহারযোগ্য করতে তুলতে সাহায্য করতে পারেন।</translation>
 <translation id="1881322772814446296">আপনি একটি পরিচালিত অ্যাকাউন্টের মাধ্যমে সাইন-ইন করুন করছেন এবং এর অ্যাডমিনিস্ট্রেটরকে আপনার Chromium প্রোফাইলের উপরে নিয়ন্ত্রণ দিচ্ছেন৷ আপনার Chromium ডেটা, যেমন অ্যাপ, বুকমার্ক, ইতিহাস, পাসওয়ার্ড এবং অন্যান্য সেটিংস <ph name="USER_NAME" /> এতে স্থায়ীভাবে সম্পৃক্ত হবে৷ আপনি Google অ্যাকাউন্টগুলির ড্যাশবোর্ডের মাধ্যমে এই ডেটাগুলি মুছতে চালু হবেন, কিন্তু অন্য অ্যাকাউন্টের সাথে এই ডেটা সংশ্লিষ্ট করতে পারবেন না৷ বিকল্প হিসেবে আপনি আপনার বিদ্যমান Chromium তথ্য আলাদা রাখার জন্য একটি নতুন প্রোফাইল তৈরি করতে পারেন৷ <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">এটি বন্ধ করার মানে হল, আপনি Chromium-এ সাইন-ইন না করে Gmail এর মতো Google সাইটগুলিতে সাইন-ইন করতে পারেন</translation>
 <translation id="1929939181775079593">Chromium সাড়া দিচ্ছে না৷ আবার শুরু করবেন?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">এই আপডেটটি প্রয়োগ করতে আপনার অ্যাডমিনিস্ট্রেটর চান যে আপনি Chromium আবার চালু করুন</translation>
 <translation id="2119636228670142020">&amp;Chromium OS সম্পর্কে</translation>
 <translation id="2241627712206172106">যদি আপনি একটি কম্পিউটার শেয়ার করেন, তাহলে বন্ধু ও পরিবারের লোকজন পৃথকভাবে ব্রাউজ করতে পারবেন এবং তাদের ইচ্ছা অনুযায়ী Chromium-এর সেট-আপ করতে পারবেন৷</translation>
-<translation id="2265088490657775772">আপনার iPhone এ Chromium ইনস্টল করুন</translation>
 <translation id="2347108572062610441">আপনি Chromium চালু করলে কোন পৃষ্ঠাটি দেখানো হবে তা এই এক্সটেনশনটি পরিবর্তন করেছে।</translation>
 <translation id="2396765026452590966">আপনি Chromium চালু করলে কোন পৃষ্ঠাটি দেখানো হবে তা "<ph name="EXTENSION_NAME" />" এক্সটেনশনটি পরিবর্তন করেছে।</translation>
 <translation id="2483889755041906834">Chromium এ</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">আপডেট করতে, এই কম্পিউটারে Chromium বন্ধ করতে হবে। এর ফলে, এই কম্পিউটারে লগ-ইন করে থাকা অন্যান্য ব্যবহারকারীরা যে পরিবর্তনগুলি সেভ করে রাখেননি সেগুলি হারাতে পারেন।</translation>
 <translation id="2847479871509788944">Chromium থেকে সরান...</translation>
 <translation id="2886012850691518054">ঐচ্ছিক: অটোমেটিক Google-এ ব্যবহার পরিসংখ্যান এবং ক্র্যাশ রিপোর্ট পাঠিয়ে Chromium-কে আরও ভালো করতে সাহায্য করুন৷</translation>
-<translation id="2898082584336937987">আপনার ফোনে Chromium ইনস্টল করুন। আমরা আপনার ফোনে একটি এসএমএস পাঠাব।: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium সম্পর্কে</translation>
 <translation id="2977470724722393594">Chromium আপ-টু-ডেট আছে</translation>
 <translation id="3032787606318309379">Chromium-এ জুড়ছে...</translation>
-<translation id="3046695367536568084">অ্যাপগুলি ব্যবহার করতে আপনাকে Chromium-এ সাইন-ইন করতে হবে৷ এটি Chromium কে ডিভাইসগুলি জুড়ে আপনার অ্যাপ, বুকমার্ক, ইতিহাস, পাসওয়ার্ড এবং অন্য সেটিংসগুলিকে সিঙ্ক করতে অনুমতি দেয়৷</translation>
 <translation id="3068515742935458733">Google-এ  <ph name="UMA_LINK" /> ও ক্র্যাশ রিপোর্ট পাঠিয়ে Chromium আরও ভালো করতে সাহায্য করুন</translation>
 <translation id="3103660991484857065">ইনস্টলার আর্কাইভ আনকমপ্রেস করতে পারেনি৷ অনুগ্রহ করে Chromium আবার ডাউনলোড করুন৷</translation>
 <translation id="3130323860337406239">Chromium আপনার মাইক্রোফোন ব্যবহার করছে৷</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Chromium ছদ্মবেশী উইন্ডোতে লিঙ্ক খুলুন</translation>
 <translation id="3190315855212034486">ওহো! Chromium ক্র্যাশ করেছে৷ এখন আবার শুরু করবেন?</translation>
 <translation id="3229526316128325841">Chromium আপনার পাসওয়ার্ড এক্সপোর্ট করতে চাইছে।</translation>
-<translation id="3256316712990552818">Chromium-এ প্রতিলিপি করা হয়েছে</translation>
 <translation id="3258596308407688501">Chromium তার ডেটা ডিরেক্টরিতে পড়তে এবং লিখতে পারে না:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">গুরুত্বপূর্ণ নিরাপত্তা উন্নতি এবং নতুন বৈশিষ্ট্যগুলি সর্বশেষ ভার্সনে উপলভ্য।</translation>
 <translation id="421369550622382712">Chromium-এর জন্য খুব ভালো অ্যাপ্লিকেশান, গেম, এক্সটেনশন এবং থিমসমূহ আবিষ্কার করুন৷</translation>
 <translation id="4216212958613226427">Chromium UI-এ দেখানোর জন্য এই ভাষা ব্যবহার করা হয়</translation>
-<translation id="4222580632002216401">আপনি এখন Chromium এ প্রবেশ করেছেন! আপনার প্রশাসক দ্বারা সিঙ্ক অক্ষম করা আছে৷</translation>
 <translation id="4230135487732243613">এই অ্যাকাউন্টে আপনার Chromium ডেটা লিঙ্ক করবেন?</translation>
 <translation id="4271805377592243930">Chromium বিষয়ে সাহায্য পান</translation>
 <translation id="4285930937574705105">অনির্দিষ্ট ত্রুটির কারণে ইনস্টলেশন ব্যর্থ৷ বর্তমানে Chromium চালু থাকলেও, দয়া করে এটি বন্ধ করুন এবং আবার চেষ্টা করুন৷</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium পটভূমিতে চলছে৷</translation>
 <translation id="4987820182225656817">অতিথিগণ কোনো কিছুর জন্য অভাব বোধ না করেই Chromium ব্যবহার করতে পারবেন৷</translation>
 <translation id="4994636714258228724">Chromium এর সাথে নিজেকে যোগ করুন</translation>
-<translation id="5181952534059945058">এই পৃষ্ঠাটি অতিরিক্ত মেমরি ব্যবহার করে, তাই Chromium কিছু কন্টেন্ট সরিয়ে দিয়েছে।</translation>
 <translation id="5277894862589591112">আপনার পরিবর্তনগুলি প্রয়োগ করতে, Chromium রিলঞ্চ করুন</translation>
 <translation id="5358375970380395591">আপনি একটি পরিচালিত অ্যাকাউন্টের মাধ্যমে সাইন-ইন  করছেন এবং এর অ্যাডমিনিস্ট্রেটরকে আপনার Chromium প্রোফাইলের উপরে নিয়ন্ত্রণ দিচ্ছেন৷ আপনার Chromium ডেটা, যেমন অ্যাপ, বুকমার্ক, ইতিহাস, পাসওয়ার্ড এবং অন্যান্য সেটিংস <ph name="USER_NAME" /> এতে স্থায়ীভাবে সম্পৃক্ত হবে৷ আপনি Google অ্যাকাউন্টগুলির ড্যাশবোর্ডের মাধ্যমে এই ডেটাগুলি মুছতে চালু হবেন, কিন্তু অন্য অ্যাকাউন্টের সাথে এই ডেটা সংশ্লিষ্ট করতে পারবেন না৷ <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium আপডেট হচ্ছে (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">পুনর্সূচনা</translation>
 <translation id="5987687638152509985">সিঙ্ক শুরু করতে Chromium আপডেট করুন</translation>
 <translation id="6013050204643758987"><ph name="BEGIN_LINK_LINUX_OSS" />Linux (বিটা)<ph name="END_LINK_LINUX_OSS" />-এর মতো অতিরিক্ত <ph name="BEGIN_LINK_CROS_OSS" />ওপেন সোর্স সফ্টওয়্যার<ph name="END_LINK_CROS_OSS" /> ব্যবহার করে Chromium OS তৈরি করা সম্ভব হয়েছে।</translation>
-<translation id="6040143037577758943">বন্ধ</translation>
 <translation id="6055895534982063517">Chromium-এর একটি নতুন ভার্সন উপলভ্য আছে৷ এবং এটি আগের তুলনায় আরও দ্রুত৷</translation>
 <translation id="6063093106622310249">Chromium এ খুলুন</translation>
 <translation id="6072279588547424923">Chromium-এ <ph name="EXTENSION_NAME" /> যোগ করা হয়েছে</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium OS সিস্টেম</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium ১ সেকেন্ডের মধ্যে রিস্টার্ট হবে}one{Chromium # সেকেন্ডের মধ্যে রিস্টার্ট হবে}other{Chromium # সেকেন্ডের মধ্যে রিস্টার্ট হবে}}</translation>
 <translation id="6475912303565314141">আপনি Chromium শুরু করলে কোন পৃষ্ঠাটি দেখানো হবে তাও এটি নিয়ন্ত্রণ করে।</translation>
-<translation id="6485906693002546646">আপনার Chromium জিনিসপত্র সমন্বয় করার জন্য আপনি <ph name="PROFILE_EMAIL" /> ব্যবহার করছেন৷ আপনার সিঙ্ক পছন্দগুলি আপডেট করতে বা Google অ্যাকাউন্ট ছাড়া Chromium ব্যবহার করতে <ph name="SETTINGS_LINK" />-এ যান৷</translation>
 <translation id="6510925080656968729">Chromium আনইনস্টল করুন</translation>
 <translation id="6570579332384693436">ভুল বানানগুলি ঠিক করতে, Chromium টেক্সট ফিল্ডে আপনার লেখা টেক্সট Google-এ পাঠায়</translation>
 <translation id="6598877126913850652">Chromium বিজ্ঞপ্তি সেটিংসে যান</translation>
@@ -160,7 +146,6 @@
 <translation id="6717134281241384636">আপনার প্রোফাইলটি ব্যবহার করা যাবে না কারণ এটি একটি Chromium-এর নতুন ভার্সন৷ কিছু বিষয় অনুপলব্ধ হতে পারে৷ একটি ভিন্ন প্রোফাইল ডিরেক্টরি উল্লেখ করুন অথবা Chromium-এর একটি নতুন ভার্সন ব্যবহার করুন৷</translation>
 <translation id="6734080038664603509">&amp;Chromium আপডেট করুন</translation>
 <translation id="6734291798041940871">Chromium ইতোমধ্যে আপনার কম্পিউটারের সকল ব্যবহারকারীর জন্য ইনস্টল করা হয়েছে।</translation>
-<translation id="6810143991807788455">বর্তমান সেটিংসের রিপোর্ট করার মাধ্যমে Chromium-কে আরও ভালো করতে সাহায্য করুন</translation>
 <translation id="6847869444787758381">আপনার পাসওয়ার্ড কখনও চুরি হলে তা Chromium আপনাকে জানিয়ে দেবে</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (Chromium এ কপি করা হয়েছে)</translation>
@@ -179,7 +164,6 @@
 <translation id="7318036098707714271">আপনার প্রেফারেন্স ফাইল ক্ষতিগ্রস্ত অথবা অসমর্থিত৷
 
 Chromium আপনার সেটিংস পুনরুদ্ধার করতে পারছে না৷</translation>
-<translation id="7331920710658926971">আপনার ফোনে Chromium ইনস্টল করুন। আমরা আপনার ফোনে একটি এসএমএস পাঠাব।</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">নতুন উইন্ডো</translation>
 <translation id="734373864078049451">আপনার ওয়েব, বুকমার্ক এবং Chromium-এর অন্যান্য জিনিস এখানে রয়েছে৷</translation>
@@ -211,16 +195,13 @@
 <translation id="7979877361127045932">Chromium মেনুর মধ্যে লুকান</translation>
 <translation id="8013436988911883588">Chromium অ্যাক্সেস পেলেই, ওয়েবসাইটগুলি আপনাকে অ্যাক্সেসের অনুরোধ করতে পারবে।</translation>
 <translation id="81770708095080097">এই ফাইলটি বিপজ্জনক, তাই Chromium এটিকে অবরুদ্ধ করেছে।</translation>
-<translation id="8222496066431494154">আপনার ফোনে Chromium ইনস্টল করুন। আমরা আপনার অ্যাকাউন্ট রিকভারি ফোন নম্বরে একটি এসএমএস পাঠাব: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">কোনও ছবিতে যদি প্রয়োজনীয় বিবরণ দেওয়া না থাকে, তাহলে Chromium আপনাকে একটি বিবরণ দেওয়ার চেষ্টা করবে। বিবরণ তৈরির জন্য, Google-এ ছবি পাঠানো হয়। সেটিংসে গিয়ে আপনি যেকোনও সময়ে এটি বন্ধ করতে পারেন।</translation>
-<translation id="8269379391216269538">Chromium-কে আরও ভালো করে তুলতে সাহায্য করুন৷</translation>
 <translation id="8290862415967981663">এই ফাইলটি বিপজ্জনক হতে পারে, তাই Chromium এটিকে অবরুদ্ধ করেছে।</translation>
 <translation id="8330519371938183845">আপনার সব ডিভাইস জুড়ে Chromium সিঙ্ক করতে এবং নিজের মতো সাজিয়ে নিতে সাইন-ইন করুন</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> পূর্বে Chromium ব্যবহার করছিলেন</translation>
 <translation id="8417404458978023919">{0,plural, =1{Chromium এক দিনের মধ্যে আবার লঞ্চ করুন}one{Chromium # দিনের মধ্যে আবার লঞ্চ করুন}other{Chromium # দিনের মধ্যে আবার লঞ্চ করুন}}</translation>
 <translation id="8453117565092476964">ইনস্টলার আর্কাইভ অবিশুদ্ধ বা ভুল৷ Chromium পুনরায় ডাউনলোড করুন৷</translation>
 <translation id="8493179195440786826">Chromium পুরানো হয়ে গেছে</translation>
-<translation id="85843667276690461">Chromium ব্যবহারে সাহায্য পেতে</translation>
 <translation id="8586442755830160949">কপিরাইট <ph name="YEAR" /> Chromium রচয়িতা৷ সর্বস্বত্ত্ব সংরক্ষিত৷</translation>
 <translation id="8619360774459241877">Chromium লঞ্চ করা হচ্ছে...</translation>
 <translation id="8621669128220841554">অনির্দিষ্ট ত্রুটির কারণে ইনস্টল করা যায়নি৷ অনুগ্রহ করে Chromium আবার ডাউনলোড করুন৷</translation>
@@ -238,21 +219,14 @@
 <translation id="8907580949721785412">Chromium পাসওয়ার্ডগুলি দেখানোর চেষ্টা করছে। এটির অনুমতি দিতে আপনার Windows পাসওয়ার্ড টাইপ করুন।</translation>
 <translation id="8941642502866065432">Chromium আপডেট করা যাচ্ছে না</translation>
 <translation id="8974095189086268230">Chrome OS সম্ভবত অতিরিক্ত <ph name="BEGIN_LINK_CROS_OSS" />ওপেন সোর্স সফ্টওয়্যার<ph name="END_LINK_CROS_OSS" /> দিয়ে তৈরি৷</translation>
-<translation id="8985587603644336029">আগে কোনো একজন এই কম্পিউটারে <ph name="ACCOUNT_EMAIL_LAST" /> হিসেবে Chromium-এ সাইন-ইন করেছেন৷ যদি সেটি আপনার অ্যাকাউন্ট না হয়, তাহলে আপনার তথ্য আলাদা করে রাখতে একটি নতুন Chromium ব্যবহারকারী তৈরি করুন৷
-
-যেকোনো উপায়ে সাইন-ইন করা হলে তা বুকমার্কগুলি, ইতিহাস এবং অন্যান্য সেটিংসের মত Chromium তথ্যকে <ph name="ACCOUNT_EMAIL_NEW" />-তে মার্জ করবে৷</translation>
 <translation id="9019929317751753759">Chromium-কে আরও নিরাপদ করতে, আমরা নিচের এক্সটেনশনটি বন্ধ করেছি যা <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />-এ তালিকাবদ্ধ করা হয়নি এবং হয়ত আপনাকে না জানিয়ে যোগ করা হয়েছিল৷</translation>
 <translation id="9022552996538154597">Chromium-এ সাইন-ইন করুন</translation>
-<translation id="9025992965467895364">এই পৃষ্ঠাটি খুব বেশি মেমরি ব্যবহার করছে তাই Chromium এটি বিরত রেখেছে।</translation>
-<translation id="9036189287518468038">Chromium অ্যাপ লঞ্চার</translation>
 <translation id="9089354809943900324">Chromium পুরানো হয়ে গেছে</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium ১ ঘণ্টার মধ্যে আবার লঞ্চ হবে}one{Chromium # ঘণ্টার মধ্যে আবার লঞ্চ হবে}other{Chromium # ঘণ্টার মধ্যে আবার লঞ্চ হবে}}</translation>
 <translation id="91086099826398415">নতুন Chromium ট্যাবে লিঙ্ক খুলুন</translation>
 <translation id="911206726377975832">আপনার ব্রাউজিং ডেটাও মুছে দেবেন?</translation>
 <translation id="9158494823179993217"><ph name="TARGET_URL_HOSTNAME" /> অ্যাক্সেস করতে অন্য ব্রাউজার খোলার জন্য আপনার সিস্টেম অ্যাডমিনিস্ট্রেটর Chromium কনফিগার করেছেন।</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> ডিসকানেক্ট করলে তা আপনার ইতিহাস, বুকমার্ক, সেটিংস এবং এই ডিভাইসে সঞ্চিত অন্যান্য Chromium ডেটা মুছে দেবে। আপনার Google অ্যাকাউন্টে সঞ্চিত ডেটা সাফ করা হবে না এবং <ph name="GOOGLE_DASHBOARD_LINK" />Google ড্যাশবোর্ড <ph name="END_GOOGLE_DASHBOARD_LINK" />-এ তা পরিচালনা করা যেতে পারে।</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">আপনি এখন Chromium এ প্রবেশ করেছেন</translation>
 <translation id="93478295209880648">Chromium সঠিকভাবে কাজ নাও করতে পারে কারণ এটি এখন আর Windows XP বা Windows Vista আর সমর্থিত নয়</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" />-এ এই ডিভাইসটি ব্যবহার করার আগে আপনাকে নিম্নলিখিত পরিষেবার শর্তাদি পড়তে হবে এবং এটিকে স্বীকার করতে হবে৷ এই শর্তাদি Chromium OS-এর শর্তাদিকে প্রসারণ, সংশোধন বা সীমাবদ্ধ করে না৷</translation>
 <translation id="985602178874221306">Chromium রচয়িতা</translation>
diff --git a/chrome/app/resources/chromium_strings_ca.xtb b/chrome/app/resources/chromium_strings_ca.xtb
index 18fd5b1..bf58b76 100644
--- a/chrome/app/resources/chromium_strings_ca.xtb
+++ b/chrome/app/resources/chromium_strings_ca.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium vol exportar les teves contrasenyes. Escriu la contrasenya de Windows per permetre-ho.</translation>
 <translation id="1115445892567829615">Chromium no ha pogut sincronitzar les dades. Actualitzeu la frase de contrasenya de sincronització.</translation>
 <translation id="113122355610423240">Chromium és el navegador predeterminat</translation>
-<translation id="1170115874949214249">Instal·la Chromiu al telèfon. T'enviarem un SMS al número de telèfon de recuperació del compte.</translation>
-<translation id="1174473354587728743">Si compartiu un ordinador, ara podeu configurar Chromium com vulgueu.</translation>
 <translation id="1185134272377778587">Quant a Chromium</translation>
-<translation id="1298199220304005244">Obtén ajuda per a l'ús de Chromium OS</translation>
 <translation id="1396446129537741364">Chromium està provant de mostrar les contrasenyes.</translation>
 <translation id="1414495520565016063">Teniu la sessió iniciada a Chromium.</translation>
 <translation id="151962892725702025">Chromium OS no ha pogut sincronitzar les vostres dades perquè la sincronització no està disponible per al vostre domini.</translation>
 <translation id="1524282610922162960">Comparteix una pestanya de Chromium</translation>
-<translation id="1668054258064581266">Després de suprimir el vostre compte de Chromium, pot ser que hàgiu de tornar a carregar les pestanyes obertes.</translation>
-<translation id="1688750314291223739">Configureu la sincronització per desar al web les funcions personalitzades del navegador i per accedir-hi des de qualsevol equip mitjançant Chromium.</translation>
 <translation id="1708666629004767631">Hi ha disponible una versió nova més segura de Chromium.</translation>
 <translation id="1766096484055239003">L'administrador necessita que reiniciïs Chromium per aplicar una actualització</translation>
 <translation id="1774152462503052664">Permet que Chromium s'executi en segon pla</translation>
 <translation id="1779356040007214683">Perquè Chromium sigui més segur, hem desactivat algunes de les extensions que no apareixen a <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> i que és possible que s'hagin afegit sense que ho sapigueu.</translation>
 <translation id="1808667845054772817">Torna a instal·lar Chromium</translation>
-<translation id="1869480248812203386">Si voleu col·laborar perquè Chromium sigui més segur i més fàcil d'utilitzar, informeu automàticament Google dels detalls sobre possibles incidències de seguretat.</translation>
 <translation id="1881322772814446296">Esteu a punt d'iniciar la sessió amb un compte gestionat i d'atorgar el control del vostre perfil de Chromium a l'administrador corresponent. Les dades de Chromium, com ara aplicacions, adreces d'interès, historial, contrasenyes i altres configuracions, s'enllaçaran permanentment amb <ph name="USER_NAME" />. Podreu suprimir aquestes dades mitjançant el Tauler de Comptes de Google, però no les podreu associar amb un altre compte. De manera opcional, podeu crear un perfil nou per mantenir les vostres dades de Chromium a part. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">En desactivar aquesta opció, pots iniciar la sessió en llocs web de Google, com ara Gmail, sense iniciar la sessió a Chromium</translation>
 <translation id="1929939181775079593">Chromium no respon. Voleu tornar-lo a iniciar ara?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">L'administrador et demana que reiniciïs Chromium per aplicar aquesta actualització</translation>
 <translation id="2119636228670142020">Quant a &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Si compartiu un ordinador, els amics i els familiars poden navegar de manera independent i configurar Chromium com vulguin.</translation>
-<translation id="2265088490657775772">baixa Chromium al teu dispositiu iPhone</translation>
 <translation id="2347108572062610441">Aquesta extensió ha canviat la pàgina que es mostra quan inicieu Chromium.</translation>
 <translation id="2396765026452590966">L'extensió <ph name="EXTENSION_NAME" /> ha canviat la pàgina que es mostra quan inicieu Chromium.</translation>
 <translation id="2483889755041906834">A Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Per fer l'actualització, cal que Chromium deixi d'executar-se en aquest ordinador. Com a conseqüència, és possible que altres usuaris que hagin iniciat la sessió en aquest ordinador perdin els canvis que no hagin desat.</translation>
 <translation id="2847479871509788944">Suprimeix de Chromium...</translation>
 <translation id="2886012850691518054">Opcional: ajuda'ns a millorar Chromium enviant estadístiques d'ús i informes d'error a Google automàticament.</translation>
-<translation id="2898082584336937987">Instal·la Chromium al telèfon. T'enviarem un SMS al telèfon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Quant a &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium està actualitzat</translation>
 <translation id="3032787606318309379">S'està afegint a Chromium...</translation>
-<translation id="3046695367536568084">Heu de tenir la sessió iniciada a Chromium per poder utilitzar aplicacions. D'aquesta manera, Chromium podrà sincronitzar les aplicacions, les adreces d'interès, l'historial, les contrasenyes i altres paràmetres amb la resta de dispositius.</translation>
 <translation id="3068515742935458733">Ajudeu a millorar Chromium; envieu informes d'error i <ph name="UMA_LINK" /> a Google.</translation>
 <translation id="3103660991484857065">L'instal·lador no ha pogut descomprimir l'arxiu. Torneu a baixar Chromium.</translation>
 <translation id="3130323860337406239">Chromium està utilitzant el micròfon.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Obre l'enllaç en una finestra d'incò&amp;gnit a Chromium</translation>
 <translation id="3190315855212034486">Chromium s'ha bloquejat. Voleu tornar-lo a iniciar?</translation>
 <translation id="3229526316128325841">Chromium vol exportar les teves contrasenyes.</translation>
-<translation id="3256316712990552818">Copiada a Chromium</translation>
 <translation id="3258596308407688501">Chromium no pot llegir ni escriure en el directori de dades:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">La versió més recent incorpora millores de seguretat i funcions noves importants.</translation>
 <translation id="421369550622382712">Descobriu aplicacions, jocs, extensions i temes genials per a Chromium.</translation>
 <translation id="4216212958613226427">És l'idioma en què es mostra la IU de Chromium</translation>
-<translation id="4222580632002216401">Heu iniciat la sessió a Chromium. El vostre administrador ha desactivat la sincronització.</translation>
 <translation id="4230135487732243613">Voleu enllaçar les vostres dades de Chromium amb aquest compte?</translation>
 <translation id="4271805377592243930">Obtén ajuda per a Chromium</translation>
 <translation id="4285930937574705105">S'ha produït un error no especificat durant la instal·lació. Si Chromium s'està executant en aquests moments, tanqueu-lo i torneu-ho a provar.</translation>
@@ -106,7 +95,6 @@
 <translation id="4943838377383847465">Chromium està en mode de segon pla.</translation>
 <translation id="4987820182225656817">Els convidats poden utilitzar Chromium sense deixar-hi rastre.</translation>
 <translation id="4994636714258228724">Afegeix-me a Chromium</translation>
-<translation id="5181952534059945058">Com que aquesta pàgina fa servir massa memòria, Chromium n'ha suprimit contingut.</translation>
 <translation id="5277894862589591112">Torna a iniciar Chromium perquè s'apliquin els canvis</translation>
 <translation id="5358375970380395591">Esteu a punt d'iniciar la sessió amb un compte gestionat i d'atorgar el control del vostre perfil de Chromium a l'administrador corresponent. Les dades de Chromium, com ara aplicacions, adreces d'interès, historial, contrasenyes i altres configuracions, s'enllaçaran permanentment amb <ph name="USER_NAME" />. Podreu suprimir aquestes dades mitjançant el Tauler de Comptes de Google, però no les podreu associar amb un altre compte. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">S'està actualitzant Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -129,7 +117,6 @@
 <translation id="5895138241574237353">Reinicia</translation>
 <translation id="5987687638152509985">Actualitza Chromium per iniciar la sincronització</translation>
 <translation id="6013050204643758987">Chromium OS és possible gràcies a <ph name="BEGIN_LINK_CROS_OSS" />programari lliure<ph name="END_LINK_CROS_OSS" /> addicional, com ara <ph name="BEGIN_LINK_LINUX_OSS" />Linux (versió beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Tanca</translation>
 <translation id="6055895534982063517">Hi ha disponible una versió nova de Chromium, i és més ràpida que mai.</translation>
 <translation id="6063093106622310249">&amp;Obre a Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> s'ha afegit a Chromium</translation>
@@ -151,7 +138,6 @@
 <translation id="6434250628340475518">Sistema Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium es reiniciarà d'aquí a 1 segon}other{Chromium es reiniciarà d'aquí a # segons}}</translation>
 <translation id="6475912303565314141">També controla la pàgina que es mostra quan inicieu Chromium.</translation>
-<translation id="6485906693002546646">Utilitzeu <ph name="PROFILE_EMAIL" /> per sincronitzar el contingut de Chromium. Per modificar la preferència de sincronització o per utilitzar Chromium sense cap compte de Google, dirigiu-vos a <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Desinstal·la Chromium</translation>
 <translation id="6570579332384693436">Per corregir els errors d'ortografia, Chromium envia a Google el que escrius als camps de text</translation>
 <translation id="6598877126913850652">Ves a la configuració de notificacions de Chromium</translation>
@@ -161,7 +147,6 @@
 És possible que algunes funcions no estiguin disponibles. Especifiqueu un altre directori de perfil o utilitzeu una versió més nova de Chromium.</translation>
 <translation id="6734080038664603509">Actualitza &amp;Chromium</translation>
 <translation id="6734291798041940871">Ja tens instal·lat Chromium per a tots els usuaris de l'ordinador.</translation>
-<translation id="6810143991807788455">Informa de la configuració actual per ajudar-nos a millorar Chromium</translation>
 <translation id="6847869444787758381">Chromium et permet saber si les contrasenyes s'han posat en perill</translation>
 <translation id="6857782730669500492">Chromium: <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copiada a Chromium)</translation>
@@ -180,7 +165,6 @@
 <translation id="7318036098707714271">El fitxer de preferències està malmès o no és vàlid.
 
 Chromium no pot recuperar la configuració.</translation>
-<translation id="7331920710658926971">Instal·la Chromium al telèfon. T'enviarem un SMS al telèfon.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Finestra nova</translation>
 <translation id="734373864078049451">El vostre web, les adreces d'interès i altres coses de Chromium resideixen aquí.</translation>
@@ -211,16 +195,13 @@
 <translation id="7979877361127045932">Amaga al menú de Chromium</translation>
 <translation id="8013436988911883588">Un cop Chromium tingui accés, els llocs web et podran demanar accés.</translation>
 <translation id="81770708095080097">Chromium ha bloquejat aquest fitxer perquè és perillós.</translation>
-<translation id="8222496066431494154">Instal·la Chromium al telèfon. T'enviarem un SMS al número de telèfon de recuperació del compte: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Si una imatge no té una descripció útil, Chromium provarà d'oferir-te'n una. Per crear les descripcions, les imatges s'envien a Google. Pots desactivar aquesta funció en qualsevol moment a la configuració.</translation>
-<translation id="8269379391216269538">Ajudeu a millorar Chromium</translation>
 <translation id="8290862415967981663">Chromium ha bloquejat aquest fitxer perquè pot ser perillós.</translation>
 <translation id="8330519371938183845">Inicia la sessió per sincronitzar i personalitzar Chromium en tots els teus dispositius</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> abans utilitzava Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Reinicia Chromium en 1 dia}other{Reinicia Chromium en # dies}}</translation>
 <translation id="8453117565092476964">L'arxiu d'instal·lació està malmès o no és vàlid. Torneu a baixar Chromium.</translation>
 <translation id="8493179195440786826">Chromium no està actualitzat</translation>
-<translation id="85843667276690461">Obtén ajuda per a l'ús de Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Els autors de Chromium. Tots els drets reservats.</translation>
 <translation id="8619360774459241877">S'està iniciant Chromium...</translation>
 <translation id="8621669128220841554">La instal·lació ha fallat a causa d'un error no especificat. Torneu a baixar Chromium.</translation>
@@ -237,21 +218,14 @@
 <translation id="8907580949721785412">Chromium està provant de mostrar contrasenyes. Escriviu la vostra contrasenya de Windows per permetre-ho.</translation>
 <translation id="8941642502866065432">Chromium no es pot actualitzar</translation>
 <translation id="8974095189086268230">Chromium OS és possible gràcies a <ph name="BEGIN_LINK_CROS_OSS" />programari addicional de codi obert<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Algú ha iniciat anteriorment la sessió a Chromium en aquest ordinador com a <ph name="ACCOUNT_EMAIL_LAST" />. Si no és el vostre compte, creeu un usuari de Chromium per mantenir la informació separada.
-
-En iniciar la sessió, sigui amb l'usuari que sigui, es combinarà amb <ph name="ACCOUNT_EMAIL_NEW" /> la informació de Chromium com ara adreces d'interès, historial i altres configuracions.</translation>
 <translation id="9019929317751753759">Per tal que Chromium sigui més segur, hem desactivat algunes de les extensions que no figuren a <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> i que és possible que s'hagin afegit sense que ho sapigueu.</translation>
 <translation id="9022552996538154597">Inicia la sessió a Chromium</translation>
-<translation id="9025992965467895364">Com que aquesta pàgina fa servir massa memòria, Chromium l'ha posat en pausa.</translation>
-<translation id="9036189287518468038">Menú d'aplicacions de Chromium</translation>
 <translation id="9089354809943900324">Chromium no està actualitzat</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium es reiniciarà d'aquí a 1 hora}other{Chromium es reiniciarà d'aquí a # hores}}</translation>
 <translation id="91086099826398415">Obre l'enllaç en una pes&amp;tanya nova a Chromium</translation>
 <translation id="911206726377975832">També voleu suprimir les dades de navegació?</translation>
 <translation id="9158494823179993217">L'administrador del sistema ha configurat Chromium perquè obri un navegador alternatiu per accedir a <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Si desconnecteu <ph name="USERNAME" /> s'esborraran l'historial, les adreces d'interès, la configuració i la resta de dades de Chromium que hàgiu desat en aquest dispositiu. Les dades emmagatzemades al compte de Google no s'esborraran, i es poden gestionar des del <ph name="GOOGLE_DASHBOARD_LINK" />Tauler de Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">S'ha iniciat la sessió a Chromium</translation>
 <translation id="93478295209880648">Pot ser que Chromium no funcioni correctament perquè ja no és compatible amb Windows XP ni Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> exigeix que llegiu i accepteu els Termes i condicions següents abans no utilitzeu el dispositiu. Aquestes condicions no amplien, modifiquen ni restringeixen les condicions de Chromium OS.</translation>
 <translation id="985602178874221306">Els autors de Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_cs.xtb b/chrome/app/resources/chromium_strings_cs.xtb
index b9db636..b355fda 100644
--- a/chrome/app/resources/chromium_strings_cs.xtb
+++ b/chrome/app/resources/chromium_strings_cs.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium chce exportovat vaše hesla. Tato akce vyžaduje zadání hesla systému Windows.</translation>
 <translation id="1115445892567829615">Prohlížeč Chromium vaše data nemohl synchronizovat. Aktualizujte prosím heslovou frázi pro synchronizaci.</translation>
 <translation id="113122355610423240">Chromium je vaším výchozím prohlížečem</translation>
-<translation id="1170115874949214249">Nainstalujte si Chromium do telefonu. Zašleme vám SMS na telefonní číslo pro obnovení účtu.</translation>
-<translation id="1174473354587728743">Sdílíte počítač s dalšími uživateli? Nyní si Chromium můžete nastavit podle svých představ.</translation>
 <translation id="1185134272377778587">O prohlížeči Chromium</translation>
-<translation id="1298199220304005244">Pomoc s používáním operačního systému Chromium OS</translation>
 <translation id="1396446129537741364">Chromium se pokouší zobrazit hesla.</translation>
 <translation id="1414495520565016063">Jste přihlášeni do prohlížeče Chromium.</translation>
 <translation id="151962892725702025">Chromium OS nemůže synchronizovat data, protože Synchronizace ve vaší doméně není k dispozici.</translation>
 <translation id="1524282610922162960">Sdílet kartu prohlížeče Chromium</translation>
-<translation id="1668054258064581266">Odebrání účtu z aplikace Chromium se může projevit až po opětovném načtení otevřených karet.</translation>
-<translation id="1688750314291223739">Chcete-li uložit personalizované funkce prohlížeče na web a získat k nim přístup z prohlížeče Chromium v libovolném prohlížeči, nastavte synchronizaci.</translation>
 <translation id="1708666629004767631">K dispozici je nová, bezpečnější verze prohlížeče Chromium.</translation>
 <translation id="1766096484055239003">Váš administrátor vyžaduje, abyste kvůli použití této aktualizace Chromium restartovali</translation>
 <translation id="1774152462503052664">Nechat prohlížeč Chromium spuštěný na pozadí</translation>
 <translation id="1779356040007214683">Aby bylo Chromium bezpečnější, deaktivovali jsme některá rozšíření, která nejsou uvedena na webu <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> a mohla být přidána bez vašeho vědomí.</translation>
 <translation id="1808667845054772817">Přeinstalovat Chromium</translation>
-<translation id="1869480248812203386">Automatickým hlášením podrobností o možných bezpečnostních incidentech do Googlu můžete pomoci zrychlit projekt Chromium a usnadnit jeho používání.</translation>
 <translation id="1881322772814446296">Přihlašujete se pomocí spravovaného účtu a poskytujete jeho správci kontrolu nad vaším profilem prohlížeče Chromium. Vaše údaje prohlížeče Chromium, například aplikace, záložky, historie, hesla a jiná nastavení, budou trvale přidružena k účtu <ph name="USER_NAME" />. Tyto údaje budete moci smazat pomocí stránky Dashboard služby Účty Google, ale nebudete je moci přidružit k jinému účtu. Pokud chcete uchovat existující údaje prohlížeče Chromium odděleně, můžete vytvořit nový profil. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Pokud tuto možnost vypnete, budete se moci přihlásit k většině webů Google, jako je Gmail, aniž byste se přihlásili do prohlížeče Chromium</translation>
 <translation id="1929939181775079593">Prohlížeč Chromium neodpovídá. Chcete jej znovu načíst?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Váš administrátor vás žádá, abyste kvůli použití této aktualizace Chromium restartovali</translation>
 <translation id="2119636228670142020">O systému &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Pokud počítač sdílíte s kamarády a členy rodiny, každý může web procházet samostatně a nastavit si Chromium podle svých požadavků.</translation>
-<translation id="2265088490657775772">stáhněte si Chromium do iPhonu</translation>
 <translation id="2347108572062610441">Toto rozšíření změnilo stránku, která se zobrazí při spuštění prohlížeče Chromium.</translation>
 <translation id="2396765026452590966">Rozšíření <ph name="EXTENSION_NAME" /> změnilo stránku, která se zobrazí při spuštění prohlížeče Chromium.</translation>
 <translation id="2483889755041906834">V prohlížeči Chromium</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Aby prohlížeč Chromium bylo možné aktualizovat, je třeba ho na tomto počítači ukončit. Může to vést ke ztrátě neuložených změn u ostatních uživatelů, kteří jsou na tomto počítači přihlášeni.</translation>
 <translation id="2847479871509788944">Odstranit z prohlížeče Chromium...</translation>
 <translation id="2886012850691518054">Volitelné: Pomozte Chromium zlepšit – posílejte automaticky společnosti Google statistiky využití a zprávy o selhání aplikace.</translation>
-<translation id="2898082584336937987">Nainstalujte si Chromium do telefonu. Zašleme vám SMS na telefon <ph name="PHONE_NUMBER" />.</translation>
 <translation id="2910007522516064972">O prohlížeči &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium je aktuální</translation>
 <translation id="3032787606318309379">Přidávání do prohlížeče Chromium...</translation>
-<translation id="3046695367536568084">Chcete-li používat aplikace, musíte být do prohlížeče Chromium přihlášeni. Přihlášení umožňuje prohlížeči Chromium synchronizovat vaše aplikace, záložky, historii, hesla a další nastavení mezi zařízeními.</translation>
 <translation id="3068515742935458733">Pomozte aplikaci Chromium zlepšovat tím, že budete společnosti Google zasílat zprávy o selhání a <ph name="UMA_LINK" />.</translation>
 <translation id="3103660991484857065">Instalačnímu programu se nepodařilo rozbalit archiv. Stáhněte prosím Chromium znovu.</translation>
 <translation id="3130323860337406239">Chromium používá váš mikrofon.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Otevřít odkaz v &amp;anonymním okně prohlížeče Chromium</translation>
 <translation id="3190315855212034486">Ouha! Prohlížeč Chromium spadl. Chcete jej znovu spustit?</translation>
 <translation id="3229526316128325841">Chromium chce exportovat vaše hesla.</translation>
-<translation id="3256316712990552818">Zkopírováno do prohlížeče Chromium</translation>
 <translation id="3258596308407688501">Chromium nemůže číst ani zapisovat do svého datového adresáře:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">V nejnovější verzi jsou k dispozici důležitá vylepšení zabezpečení a nové funkce.</translation>
 <translation id="421369550622382712">Objevte skvělé aplikace, hry, rozšíření a motivy prohlížeče Chromium.</translation>
 <translation id="4216212958613226427">V tomto jazyce se zobrazuje uživatelské rozhraní prohlížeče Chromium</translation>
-<translation id="4222580632002216401">Nyní jste v prohlížeči Chromium přihlášeni. Synchronizace je ale deaktivována správcem.</translation>
 <translation id="4230135487732243613">Opravdu chcete propojit údaje prohlížeče Chromium s tímto účtem?</translation>
 <translation id="4271805377592243930">Pomoc s prohlížečem Chromium</translation>
 <translation id="4285930937574705105">Došlo k nespecifikované chybě, instalace se nezdařila. Pokud je prohlížeč Chromium právě spuštěný, zavřete jej prosím a zkuste to znovu.</translation>
@@ -108,7 +97,6 @@
 <translation id="4943838377383847465">Chromium je v režimu na pozadí.</translation>
 <translation id="4987820182225656817">Hosté mohou Chromium používat, aniž by po nich zůstaly jakékoliv stopy.</translation>
 <translation id="4994636714258228724">Přidejte do prohlížeče Chromium svůj účet</translation>
-<translation id="5181952534059945058">Tato stránka využívá příliš mnoho paměti, prohlížeč Chromium proto část obsahu odstranil.</translation>
 <translation id="5277894862589591112">Chcete-li změny použít, restartujte Chromium</translation>
 <translation id="5358375970380395591">Přihlašujete se pomocí spravovaného účtu a poskytujete jeho správci kontrolu nad vaším profilem prohlížeče Chromium. Vaše údaje prohlížeče Chromium, například aplikace, záložky, historie, hesla a jiná nastavení, budou trvale přidružena k účtu <ph name="USER_NAME" />. Tyto údaje budete moci smazat pomocí Hlavního panelu v Účtech Google, ale nebudete je moci přidružit k jinému účtu. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Aktualizace prohlížeče Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -131,7 +119,6 @@
 <translation id="5895138241574237353">Restartovat</translation>
 <translation id="5987687638152509985">Chcete-li zahájit synchronizaci, aktualizujte Chromium</translation>
 <translation id="6013050204643758987">Systém Chromium OS by nemohl existovat bez dalšího <ph name="BEGIN_LINK_CROS_OSS" />softwaru s otevřeným zdrojovým kódem<ph name="END_LINK_CROS_OSS" />, jako je <ph name="BEGIN_LINK_LINUX_OSS" />Linux (beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Zavřít</translation>
 <translation id="6055895534982063517">K dispozici je nová verze prohlížeče Chromium, ještě rychlejší než ty předchozí.</translation>
 <translation id="6063093106622310249">&amp;Otevřít v prohlížeči Chromium</translation>
 <translation id="6072279588547424923">Do prohlížeče Chromium bylo přidáno rozšíření <ph name="EXTENSION_NAME" /></translation>
@@ -153,7 +140,6 @@
 <translation id="6434250628340475518">Systém Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium se za 1 sekundu restartuje}few{Chromium se za # sekundy restartuje}many{Chromium se za # sekundy restartuje}other{Chromium se za # sekund restartuje}}</translation>
 <translation id="6475912303565314141">Také řídí, která stránka se zobrazí při spuštění prohlížeče Chromium.</translation>
-<translation id="6485906693002546646">Synchronizujete obsah a nastavení prohlížeče Chromium s účtem <ph name="PROFILE_EMAIL" />. Chcete-li možnosti synchronizace upravit nebo Chromium používat bez účtu Google, navštivte <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Odinstalovat Chromium</translation>
 <translation id="6570579332384693436">Text zadaný do textových polí odesílá Chromium kvůli opravě pravopisných chyb do Googlu</translation>
 <translation id="6598877126913850652">Přejít na nastavení oznámení prohlížeče Chromium</translation>
@@ -163,7 +149,6 @@
 Některé funkce mohou být nedostupné. Zadejte prosím jiný adresář profilu, nebo používejte novější verzi prohlížeče Chromium.</translation>
 <translation id="6734080038664603509">Aktualizovat &amp;Chromium</translation>
 <translation id="6734291798041940871">Prohlížeč Chromium je na tomto počítači již nainstalován pro všechny uživatele.</translation>
-<translation id="6810143991807788455">Pomoci s vylepšováním prohlížeče Chromium prostřednictvím nahlášení aktuálního nastavení</translation>
 <translation id="6847869444787758381">Pokud vaše hesla někdo prolomí, Chromium vás o tom bude informovat</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (zkopírováno do prohlížeče Chromium)</translation>
@@ -182,7 +167,6 @@
 <translation id="7318036098707714271">Soubor nastavení je poškozený nebo neplatný.
 
 Chromium nemůže vaše nastavení obnovit.</translation>
-<translation id="7331920710658926971">Nainstalujte si Chromium do telefonu. Zašleme vám na telefon SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nové okno</translation>
 <translation id="734373864078049451">Zde jsou k dispozici vaše weby, záložky a další obsah prohlížeče Chromium.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Skrýt v nabídce Chromium</translation>
 <translation id="8013436988911883588">Až bude mít Chromium přístup, budou vás weby moci požádat o přístup.</translation>
 <translation id="81770708095080097">Tento soubor je nebezpečný, proto jej prohlížeč Chromium zablokoval.</translation>
-<translation id="8222496066431494154">Nainstalujte si Chromium do telefonu. Zašleme vám SMS na toto telefonní číslo pro obnovení účtu: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8248265253516264921">Pokud obrázek nemá užitečný popis, Chromium se vám jej pokusí poskytnout. Za účelem vytváření popisů jsou obrázky odesílány do Googlu. Tuto funkci můžete kdykoliv vypnout v nastavení.</translation>
-<translation id="8269379391216269538">Pomozte projekt Chromium vylepšit</translation>
 <translation id="8290862415967981663">Tento soubor může být nebezpečný, proto jej prohlížeč Chromium zablokoval.</translation>
 <translation id="8330519371938183845">Po přihlášení si budete moci Chromium synchronizovat a upravit na různých zařízeních</translation>
 <translation id="8340674089072921962">Před vámi prohlížeč Chromium používal uživatel <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="8417404458978023919">{0,plural, =1{Do jednoho dne Chromium restartujte}few{Do # dní Chromium restartujte}many{Do # dne Chromium restartujte}other{Do # dní Chromium restartujte}}</translation>
 <translation id="8453117565092476964">Archiv instalačního programu je poškozený nebo neplatný. Stáhněte prosím Chromium znovu.</translation>
 <translation id="8493179195440786826">Prohlížeč Chromium je zastaralý</translation>
-<translation id="85843667276690461">Pomoc s používáním prohlížeče Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Autoři prohlížeče Chromium. Všechna práva vyhrazena.</translation>
 <translation id="8619360774459241877">Spouštění prohlížeče Chromium...</translation>
 <translation id="8621669128220841554">Instalace se z neznámého důvodu nezdařila. Stáhněte prosím Chromium znovu.</translation>
@@ -239,21 +220,14 @@
 <translation id="8907580949721785412">Aplikace Chromium se pokouší zobrazit hesla. Tato akce vyžaduje zadání hesla systému Windows.</translation>
 <translation id="8941642502866065432">Chromium nelze aktualizovat</translation>
 <translation id="8974095189086268230">Chrome OS by nemohl existovat bez dalšího <ph name="BEGIN_LINK_CROS_OSS" />softwaru s otevřeným zdrojovým kódem<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Prohlížeč Chromium v tomto počítači je již přihlášen k účtu <ph name="ACCOUNT_EMAIL_LAST" />. Pokud se nejedná o váš účet, vytvořte nového uživatele prohlížeče Chromium, aby zůstala vaše data oddělená.
-
-Pokud se přesto přihlásíte, budou data prohlížeče Chromium (například záložky, historie a další nastavení) sloučena s účtem <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Aby byl prohlížeč Chromium bezpečnější, deaktivovali jsme následující rozšíření, které není uvedeno na webu <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> a pravděpodobně bylo přidáno bez vašeho vědomí.</translation>
 <translation id="9022552996538154597">Přihlásit se do prohlížeče Chromium</translation>
-<translation id="9025992965467895364">Tato stránka využívá příliš mnoho paměti, proto ji prohlížeč Chromium pozastavil.</translation>
-<translation id="9036189287518468038">Spouštěč aplikací Chromium</translation>
 <translation id="9089354809943900324">Prohlížeč Chromium je zastaralý</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium se za hodinu restartuje}few{Chromium se za # hodiny restartuje}many{Chromium se za # hodiny restartuje}other{Chromium se za # hodin restartuje}}</translation>
 <translation id="91086099826398415">Otevřít odkaz na nové kar&amp;tě prohlížeče Chromium</translation>
 <translation id="911206726377975832">Vymazat také všechna data procházení?</translation>
 <translation id="9158494823179993217">Administrátor systému nakonfiguroval prohlížeč Chromium tak, aby pro přístup k adrese <ph name="TARGET_URL_HOSTNAME" /> otevřel alternativní prohlížeč.</translation>
-<translation id="918373042641772655">Odpojení uživatele <ph name="USERNAME" /> smaže také historii, záložky, nastavení a další data prohlížeče Chromium uložená v tomto zařízení. Data uložená ve vašem účtu Google nebudou vymazána a lze je spravovat na <ph name="GOOGLE_DASHBOARD_LINK" />Hlavním panelu Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Nyní jste do prohlížeče Chromium přihlášeni</translation>
 <translation id="93478295209880648">Prohlížeč Chromium nemusí fungovat správně, protože v systémech Windows XP a Windows Vista již není podporován</translation>
 <translation id="95514773681268843">Doména <ph name="DOMAIN" /> vyžaduje, abyste si před použitím tohoto zařízení přečetli následující smluvní podmínky a odsouhlasili je. Tyto smluvní podmínky nerozšiřují, neupravují ani neomezují smluvní podmínky systému Chromium OS.</translation>
 <translation id="985602178874221306">Autoři prohlížeče Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_da.xtb b/chrome/app/resources/chromium_strings_da.xtb
index 7b3ccab8..bb1b2eec 100644
--- a/chrome/app/resources/chromium_strings_da.xtb
+++ b/chrome/app/resources/chromium_strings_da.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium anmoder om at eksportere dine adgangskoder. Angiv din Windows-adgangskode for at tillade dette.</translation>
 <translation id="1115445892567829615">Chromium kunne ikke synkronisere dine data. Opdater din adgangssætning til synkronisering.</translation>
 <translation id="113122355610423240">Chromium er din standardbrowser</translation>
-<translation id="1170115874949214249">Installer Chromium på din telefon. Vi sender en sms til telefonnummeret til gendannelse for din konto.</translation>
-<translation id="1174473354587728743">Deler du computer med andre? Nu kan du konfigurere Chromium, præcist som du vil.</translation>
 <translation id="1185134272377778587">Om Chromium</translation>
-<translation id="1298199220304005244">Få hjælp til at bruge Chromium OS</translation>
 <translation id="1396446129537741364">Chromium forsøger at vise adgangskoder.</translation>
 <translation id="1414495520565016063">Du er logget ind på Chromium.</translation>
 <translation id="151962892725702025">Chromium OS kunne ikke synkronisere dine data, fordi synkronisering ikke er tilgængeligt på dit domæne.</translation>
 <translation id="1524282610922162960">Del en Chromium-fane</translation>
-<translation id="1668054258064581266">Når du har fjernet din konto fra Chromium, skal du muligvis genindlæse dine åbne faner, før ændringen træder i kraft.</translation>
-<translation id="1688750314291223739">Konfigurer Synkronisering for at gemme dine personlige browserfunktioner på nettet, og få adgang til dem fra Chromium på en computer.</translation>
 <translation id="1708666629004767631">Der findes en ny og mere sikker version af Chromium.</translation>
 <translation id="1766096484055239003">Din administrator kræver, at du genstarter Chromium for at anvende en opdatering</translation>
 <translation id="1774152462503052664">Lad Chromium køre i baggrunden</translation>
 <translation id="1779356040007214683">For at gøre Chromium sikrere har vi slået nogle udvidelser fra, som ikke er anført i <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> og muligvis er blevet tilføjet, uden at du vidste det.</translation>
 <translation id="1808667845054772817">Geninstaller Chromium</translation>
-<translation id="1869480248812203386">Du kan hjælpe med at gøre Chromium sikrere og nemmere at bruge ved automatisk at rapportere oplysninger om mulige sikkerhedshændelser til Google.</translation>
 <translation id="1881322772814446296">Du er ved at logge ind med en mangerstyret konto og give dens administrator kontrol over din profil i Chromium. Dine Chromium-data, f.eks. dine apps, bogmærker, historikdata, adgangskoder og andre indstillinger, knyttes permanent til <ph name="USER_NAME" />. Du kan slette disse data via betjeningspanelet for Google Konti, men du kan ikke knytte disse data til en anden konto. Du kan eventuelt oprette en ny profil for at holde dine Chromium-data adskilt. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Når du deaktiverer denne indstilling, kan du logge ind på Google-websites som f.eks. Gmail uden at logge ind i Chromium</translation>
 <translation id="1929939181775079593">Chromium svarer ikke. Vil du genstarte nu?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Din administrator anmoder om, at du genstarter Chromium for at anvende denne opdatering</translation>
 <translation id="2119636228670142020">Om &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Hvis du deler en computer, kan venner og familie browse individuelt og konfigurere Chromium, som de ønsker hver især.</translation>
-<translation id="2265088490657775772">få Chromium på din iPhone</translation>
 <translation id="2347108572062610441">Denne udvidelse har ændret din startside i Chromium.</translation>
 <translation id="2396765026452590966">Udvidelsen "<ph name="EXTENSION_NAME" />" har ændret din startside i Chromium.</translation>
 <translation id="2483889755041906834">I Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Chromium skal standses på denne computer, før du kan opdatere. Det kan medføre, at andre brugere, som er logget ind på computeren, mister ændringer, der ikke er gemt.</translation>
 <translation id="2847479871509788944">Fjern fra Chromium...</translation>
 <translation id="2886012850691518054">Valgfrit: Hjælp med at gøre Chromium bedre ved automatisk at sende forbrugsstatistik og nedbrudsrapporter til Google.</translation>
-<translation id="2898082584336937987">Installer Chromium på din telefon. Vi sender en sms til din telefon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Om &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium er opdateret</translation>
 <translation id="3032787606318309379">Føjer til Chromium...</translation>
-<translation id="3046695367536568084">Du skal være logget ind på Chromium, før du kan bruge apps. Det gør det muligt for Chromium at synkronisere dine apps, bogmærker, historik, adgangskoder og andre indstillinger på alle enheder.</translation>
 <translation id="3068515742935458733">Hjælp med at gøre Chromium bedre ved at sende fejlrapporter og <ph name="UMA_LINK" /> til Google</translation>
 <translation id="3103660991484857065">Installationsprogrammet kunne ikke pakke arkivet ud. Download Chromium igen.</translation>
 <translation id="3130323860337406239">Chromium bruger din mikrofon.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Åbn linket i et Chromium-inko&amp;gnitovindue</translation>
 <translation id="3190315855212034486">Hov! Chromium er gået ned. Vil du genstarte nu?</translation>
 <translation id="3229526316128325841">Chromium anmoder om at eksportere dine adgangskoder.</translation>
-<translation id="3256316712990552818">Kopieret til Chromium</translation>
 <translation id="3258596308407688501">Chromium kan ikke læse og skrive til sin datamappe:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Vigtige sikkerhedsforbedringer og nye funktioner er tilgængelige i den seneste version.</translation>
 <translation id="421369550622382712">Find fantastiske apps, spil, udvidelser og temaer til Chromium.</translation>
 <translation id="4216212958613226427">Dette sprog bruges til at vise Chromium-brugerfladen</translation>
-<translation id="4222580632002216401">Du er nu logget ind på Chromium. Synkronisering er deaktiveret af din administrator.</translation>
 <translation id="4230135487732243613">Vil du linke dine Chromium-data til denne konto?</translation>
 <translation id="4271805377592243930">Få hjælp til Chromium</translation>
 <translation id="4285930937574705105">Installationen mislykkedes på grund af en ikke-specificeret fejl. Hvis Chromium kører, skal du lukke programmet og prøve igen.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium kører i baggrunden.</translation>
 <translation id="4987820182225656817">Gæster kan bruge Chromium uden at efterlade noget.</translation>
 <translation id="4994636714258228724">Tilføj dig selv i Chromium</translation>
-<translation id="5181952534059945058">Denne side anvender for meget hukommelse, så Chromium har fjernet noget indhold.</translation>
 <translation id="5277894862589591112">Åbn Chromium igen for at anvende ændringerne</translation>
 <translation id="5358375970380395591">Du er ved at logge ind med en mangerstyret konto og giver dens administrator kontrol over din profil i Chromium. Dine Chromium-data, f.eks. dine apps, bogmærker, historikdata, adgangskoder og andre indstillinger, knyttes permanent til <ph name="USER_NAME" />. Du kan slette disse data via betjeningspanelet for Google Konti, men du kan ikke knytte disse data til en anden konto. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Opdaterer Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Genstart</translation>
 <translation id="5987687638152509985">Opdater Chromium for at starte synkronisering</translation>
 <translation id="6013050204643758987">Chromium OS er realiseret ved hjælp af yderligere <ph name="BEGIN_LINK_CROS_OSS" />open source-software<ph name="END_LINK_CROS_OSS" /> ligesom <ph name="BEGIN_LINK_LINUX_OSS" />Linux (beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Luk</translation>
 <translation id="6055895534982063517">Der findes en ny version af Chromium, som er hurtigere end nogensinde før.</translation>
 <translation id="6063093106622310249">Åbn i Chr&amp;omium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> er føjet til Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium OS-system</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium genstarter om 1 sekund}one{Chromium genstarter om # sekund}other{Chromium genstarter om # sekunder}}</translation>
 <translation id="6475912303565314141">Den styrer også, hvilken side der vises, når du åbner Chromium.</translation>
-<translation id="6485906693002546646">Du bruger <ph name="PROFILE_EMAIL" /> til at synkronisere dine Chromium-ting med. Gå til <ph name="SETTINGS_LINK" />, hvis du vil opdatere dine synkroniseringspræference eller bruge Chromium uden en Google-konto.</translation>
 <translation id="6510925080656968729">Afinstaller Chromium</translation>
 <translation id="6570579332384693436">Chromium sender den tekst, du skriver i tekstfelter, til Google for at rette stavefejl</translation>
 <translation id="6598877126913850652">Gå til indstillinger for Chromium-notifikationer</translation>
@@ -162,7 +148,6 @@
 Visse funktioner kan være utilgængelige. Angiv en anden profilmappe, eller brug en nyere version af Chromium.</translation>
 <translation id="6734080038664603509">Opdater &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium er allerede installeret for alle brugere på computeren.</translation>
-<translation id="6810143991807788455">Hjælp med at gøre Chromium bedre ved at rapportere de aktuelle indstillinger</translation>
 <translation id="6847869444787758381">Chromium giver dig besked, hvis dine adgangskoder kompromitteres</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (kopieret til Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Din præferencefil er beskadiget eller ugyldig.
 
 Chromium kan ikke gendanne dine præferencer.</translation>
-<translation id="7331920710658926971">Installer Chromium på din telefon. Vi sender en sms til din telefon.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nyt vindue</translation>
 <translation id="734373864078049451">Dit webindhold, dine bogmærker og andre Chromium-ting kan findes her.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Skjul i Chromium-menuen</translation>
 <translation id="8013436988911883588">Når Chromium har adgang, kan websites bede dig om adgang.</translation>
 <translation id="81770708095080097">Denne fil er farlig, så Chromium har blokeret den.</translation>
-<translation id="8222496066431494154">Installer Chromium på din telefon. Vi sender en sms til dit telefonnummer til gendannelse: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Hvis et billede ikke har en brugbar beskrivelse, forsøger Chromium at angive en for dig. Billederne sendes til Google, så der kan oprettes beskrivelser. Du kan til enhver tid deaktivere denne funktion i indstillingerne.</translation>
-<translation id="8269379391216269538">Hjælp med at gøre Chromium bedre</translation>
 <translation id="8290862415967981663">Denne fil kan være farlig, så Chromium har blokeret den.</translation>
 <translation id="8330519371938183845">Log ind for at synkronisere og tilpasse Chromium på alle dine enheder</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> brugte tidligere Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Genstart Chromium inden for en dag}one{Genstart Chromium inden for # dag}other{Genstart Chromium inden for # dag}}</translation>
 <translation id="8453117565092476964">Installationsarkivet er beskadiget eller ugyldigt. Download Chromium igen.</translation>
 <translation id="8493179195440786826">Chromium er forældet</translation>
-<translation id="85843667276690461">Få hjælp til at bruge Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Forfatterne bag Chromium. Alle rettigheder forbeholdes.</translation>
 <translation id="8619360774459241877">Starter Chromium...</translation>
 <translation id="8621669128220841554">Installationen mislykkedes på grund af en uspecificeret fejl. Download Chromium igen.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium forsøger at vise adgangskoder. Angiv din Windows-adgangskode for at tillade dette.</translation>
 <translation id="8941642502866065432">Chromium kunne ikke opdateres</translation>
 <translation id="8974095189086268230">Chromium OS er realiseret af yderligere <ph name="BEGIN_LINK_CROS_OSS" />open source-software<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Nogen har tidligere logget ind på Chromium som <ph name="ACCOUNT_EMAIL_LAST" /> på denne computer. Hvis dette ikke er din konto, skal du oprette en nye Chromium-bruger for at holde oplysningerne adskilt.
-
-Hvis du logger ind alligevel, flettes Chromium-oplysninger, som f.eks. bogmærker, historik og andre indstillinger, med <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">For at gøre Chromium mere sikker har vi deaktiveret følgende udvidelser, som ikke er anført i <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> og muligvis er blevet tilføjet, uden at du vidste det.</translation>
 <translation id="9022552996538154597">Log ind på Chromium</translation>
-<translation id="9025992965467895364">Denne side anvender for meget hukommelse, så Chromium har sat den på pause.</translation>
-<translation id="9036189287518468038">Chromium-applisten</translation>
 <translation id="9089354809943900324">Chromium er forældet</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium genstarter om en time}one{Chromium genstarter om # time}other{Chromium genstarter om # timer}}</translation>
 <translation id="91086099826398415">Åbn linket på en ny Chromium-&amp;fane</translation>
 <translation id="911206726377975832">Slet også dine browserdata?</translation>
 <translation id="9158494823179993217">Din systemadministrator har konfigureret Chromium til at åbne en anden browser for at få adgang til <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Hvis du afbryder forbindelsen for <ph name="USERNAME" />, slettes din historik, dine bogmærker, dine indstillinger og andre Chromium-data, der er gemt på denne enhed. Data, der er gemt på din Google-konto, slettes ikke og kan administreres i <ph name="GOOGLE_DASHBOARD_LINK" />Google Betjeningspanel<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Du er nu logget ind på Chromium</translation>
 <translation id="93478295209880648">Chromium fungerer muligvis ikke korrekt på grund af manglende understøttelse i Windows XP og Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> kræver, at du læser og accepterer følgende servicevilkår, inden du bruger denne enhed. Disse vilkår udvider, ændrer eller begrænser på ingen måde vilkårene for Chromium OS.</translation>
 <translation id="985602178874221306">Forfatterne til Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_de.xtb b/chrome/app/resources/chromium_strings_de.xtb
index 74296da3..e9397a3 100644
--- a/chrome/app/resources/chromium_strings_de.xtb
+++ b/chrome/app/resources/chromium_strings_de.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium möchte Ihre Passwörter exportieren. Wenn Sie dies zulassen möchten, geben Sie Ihr Windows-Passwort ein.</translation>
 <translation id="1115445892567829615">Chromium konnte Ihre Daten nicht synchronisieren. Bitte aktualisieren Sie Ihre Passphrase für die Synchronisierung.</translation>
 <translation id="113122355610423240">Chromium ist Ihr Standardbrowser</translation>
-<translation id="1170115874949214249">Installieren Sie Chromium auf Ihrem Smartphone. Wir senden Ihnen eine SMS an die Telefonnummer zur Kontowiederherstellung.</translation>
-<translation id="1174473354587728743">Sie nutzen einen Computer gemeinsam mit anderen? Jetzt können Sie Chromium nach Ihren Wünschen einrichten.</translation>
 <translation id="1185134272377778587">Über Chromium</translation>
-<translation id="1298199220304005244">Hilfe für Chromium OS aufrufen</translation>
 <translation id="1396446129537741364">Chromium versucht, Passwörter anzuzeigen.</translation>
 <translation id="1414495520565016063">Sie sind in Chromium angemeldet.</translation>
 <translation id="151962892725702025">Chromium OS konnte Ihre Daten nicht synchronisieren, da die Synchronisierung für Ihre Domain nicht verfügbar ist.</translation>
 <translation id="1524282610922162960">Chromium-Tab freigeben</translation>
-<translation id="1668054258064581266">Nachdem Sie Ihr Konto aus Chromium entfernt haben, müssen Sie Ihre geöffneten Tabs möglicherweise neu laden, damit die Änderung wirksam wird.</translation>
-<translation id="1688750314291223739">Richten Sie die Synchronisierung ein, um Ihre personalisierten Browserfunktionen online zu speichern und über Chromium auf jedem Computer darauf zuzugreifen.</translation>
 <translation id="1708666629004767631">Es gibt eine neue, sicherere Version von Chromium.</translation>
 <translation id="1766096484055239003">Laut Ihrem Administrator müssen Sie Chromium neu starten, um ein Update durchzuführen</translation>
 <translation id="1774152462503052664">Chromium im Hintergrund ausführen</translation>
 <translation id="1779356040007214683">Um Chromium sicherer zu machen, haben wir einige Erweiterungen deaktiviert, die nicht im <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> aufgeführt sind und möglicherweise ohne Ihr Wissen hinzugefügt wurden.</translation>
 <translation id="1808667845054772817">Chromium neu installieren</translation>
-<translation id="1869480248812203386">Helfen Sie mit, Chromium sicherer und nutzerfreundlicher zu machen, indem Sie Details zu möglichen sicherheitsrelevanten Zwischenfällen automatisch an Google senden.</translation>
 <translation id="1881322772814446296">Sie melden sich mit einem verwalteten Konto an und ermöglichen dessen Administrator Zugriff auf Ihr Chromium-Profil. Ihre Chromium-Daten, wie Apps, Lesezeichen, Verlauf, Passwörter und andere Einstellungen, werden dauerhaft mit <ph name="USER_NAME" /> verknüpft. Sie können diese Daten über das Google Konten-Dashboard löschen, aber nicht mit einem anderen Konto verknüpfen. Wenn Sie Ihre bestehenden Chromium-Daten getrennt verwenden möchten, können Sie ein neues Profil erstellen. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Wenn Sie diese Einstellung deaktivieren, können Sie sich auf Websites von Google wie beispielsweise Gmail anmelden, ohne sich auch in Chromium anmelden zu müssen</translation>
 <translation id="1929939181775079593">Chromium reagiert nicht. Jetzt neu starten?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Laut Ihrem Administrator sollten Sie Chromium neu starten, um dieses Update durchzuführen</translation>
 <translation id="2119636228670142020">Über &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Bei gemeinsam genutzten Computern können die verschiedenen Personen separat surfen und Chromium jeweils nach ihren Wünschen einrichten.</translation>
-<translation id="2265088490657775772">Chromium auf das iPhone herunterladen</translation>
 <translation id="2347108572062610441">Die beim Start von Chromium angezeigte Seite wurde durch diese Erweiterung geändert.</translation>
 <translation id="2396765026452590966">Die beim Start von Chromium angezeigte Seite wurde durch die Erweiterung <ph name="EXTENSION_NAME" /> geändert.</translation>
 <translation id="2483889755041906834">In Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Zum Aktualisieren muss Chromium auf diesem Computer geschlossen werden. Nicht gespeicherte Änderungen von anderen Nutzern, die auf diesem Computer angemeldet sind, gehen dann eventuell verloren.</translation>
 <translation id="2847479871509788944">Aus Chromium entfernen...</translation>
 <translation id="2886012850691518054">Optional: Unterstützen Sie Google bei der Verbesserung von Chromium durch automatisches Senden von Nutzungsstatistiken und Absturzberichten.</translation>
-<translation id="2898082584336937987">Installieren Sie Chromium auf Ihrem Smartphone. Wir senden Ihnen eine SMS an: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="2910007522516064972">Über &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium ist auf dem neuesten Stand</translation>
 <translation id="3032787606318309379">Wird zu Chromium hinzugefügt...</translation>
-<translation id="3046695367536568084">Sie können Apps verwenden, wenn Sie in Chromium angemeldet sind. Chromium kann dann Ihre Apps, Lesezeichen, Passwörter, Ihren Verlauf und andere Einstellungen auf Ihren Geräten synchronisieren.</translation>
 <translation id="3068515742935458733">Absturzberichte und <ph name="UMA_LINK" /> zur Verbesserung von Chromium an Google senden</translation>
 <translation id="3103660991484857065">Das Installationsprogramm konnte das Archiv nicht dekomprimieren. Bitte laden Sie Chromium erneut herunter.</translation>
 <translation id="3130323860337406239">Chromium verwendet Ihr Mikrofon.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Link in Chromium-Inkognito-Fenster öffnen</translation>
 <translation id="3190315855212034486">Chromium ist abgestürzt. Jetzt neu starten?</translation>
 <translation id="3229526316128325841">Chromium möchte Ihre Passwörter exportieren.</translation>
-<translation id="3256316712990552818">In Chromium kopiert</translation>
 <translation id="3258596308407688501">Chromium kann im folgenden Datenverzeichnis weder lesen noch schreiben:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Wichtige Sicherheitsverbesserungen und neue Funktionen sind in der aktuellen Version verfügbar.</translation>
 <translation id="421369550622382712">Entdecken Sie tolle Apps, Spiele, Erweiterungen und Designs für Chromium.</translation>
 <translation id="4216212958613226427">Diese Sprache wird für die Chromium-UI verwendet</translation>
-<translation id="4222580632002216401">Sie sind nun in Chromium angemeldet. Die Synchronisierung wurde von Ihrem Administrator deaktiviert.</translation>
 <translation id="4230135487732243613">Ihre Chromium-Daten mit diesem Konto verknüpfen?</translation>
 <translation id="4271805377592243930">Hilfe für Chromium aufrufen</translation>
 <translation id="4285930937574705105">Die Installation konnte aufgrund eines undefinierten Fehlers nicht abgeschlossen werden. Falls Chromium derzeit ausgeführt wird, schließen Sie es bitte und versuchen Sie es erneut.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium wird im Hintergrundmodus ausgeführt.</translation>
 <translation id="4987820182225656817">Gastnutzer können Chromium verwenden, ohne Daten zu hinterlassen.</translation>
 <translation id="4994636714258228724">Mich zu Chromium hinzufügen</translation>
-<translation id="5181952534059945058">Diese Seite benötigt zu viel Arbeitsspeicher. Darum hat Chromium einige Inhalte entfernt.</translation>
 <translation id="5277894862589591112">Starten Sie Chromium neu, um die Änderungen zu übernehmen</translation>
 <translation id="5358375970380395591">Sie melden sich mit einem verwalteten Konto an und ermöglichen dessen Administrator Zugriff auf Ihr Chromium-Profil. Ihre Chromium-Daten, wie Apps, Lesezeichen, Verlauf, Passwörter und andere Einstellungen, werden dauerhaft mit <ph name="USER_NAME" /> verknüpft. Sie können diese Daten über das Google Konten-Dashboard löschen, aber nicht mit einem anderen Konto verknüpfen. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium wird aktualisiert (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Neu starten</translation>
 <translation id="5987687638152509985">Aktualisieren Sie Chromium, um die Synchronisierung zu starten</translation>
 <translation id="6013050204643758987">Chromium OS und <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" /> werden durch zusätzliche <ph name="BEGIN_LINK_CROS_OSS" />Open-Source-Software<ph name="END_LINK_CROS_OSS" /> möglich gemacht.</translation>
-<translation id="6040143037577758943">Schließen</translation>
 <translation id="6055895534982063517">Es gibt eine neue Version von Chromium, die schneller ist als je zuvor.</translation>
 <translation id="6063093106622310249">In Chr&amp;omium öffnen</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> wurde zu Chromium hinzugefügt</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium OS-System</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium wird in 1 Sekunde neu gestartet}other{Chromium wird in # Sekunden neu gestartet}}</translation>
 <translation id="6475912303565314141">Die Erweiterung legt auch die Seite fest, die beim Start von Chromium angezeigt wird.</translation>
-<translation id="6485906693002546646">Ihre E-Mail-Adresse <ph name="PROFILE_EMAIL" /> wird zurzeit für die Synchronisierung Ihrer Chromium-Inhalte verwendet. Wenn Sie Ihre Synchronisierungseinstellungen ändern oder Chromium ohne Google-Konto verwenden möchten, rufen Sie <ph name="SETTINGS_LINK" /> auf.</translation>
 <translation id="6510925080656968729">Chromium deinstallieren</translation>
 <translation id="6570579332384693436">Zur Behebung von Tippfehlern sendet Chromium eingegebenen Text an Google</translation>
 <translation id="6598877126913850652">Zu Chromium-Benachrichtigungseinstellungen wechseln</translation>
@@ -162,7 +148,6 @@
 Einige Funktionen stehen möglicherweise nicht zur Verfügung. Geben Sie bitte ein anderes Profilverzeichnis an oder verwenden Sie eine neuere Version von Chromium.</translation>
 <translation id="6734080038664603509">&amp;Chromium aktualisieren</translation>
 <translation id="6734291798041940871">Chromium ist bereits für alle Nutzer auf Ihrem Computer installiert.</translation>
-<translation id="6810143991807788455">Helfen Sie uns mit Ihrem Feedback zu den aktuellen Einstellungen bei der Verbesserung von Chromium.</translation>
 <translation id="6847869444787758381">Chromium wird Sie informieren, sollten Ihre Passwörter nicht mehr sicher sein</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (in Chromium kopiert)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Ihre Einstellungsdatei ist beschädigt oder ungültig.
 
 Chromium kann Ihre Einstellungen nicht wiederherstellen.</translation>
-<translation id="7331920710658926971">Installieren Sie Chromium auf Ihrem Smartphone. Wir senden Ihnen eine SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Neues Fenster</translation>
 <translation id="734373864078049451">Hier können Sie im Web surfen und Ihre Lesezeichen und andere Chromium-Inhalte speichern.</translation>
@@ -212,16 +196,13 @@
 <translation id="7979877361127045932">Im Chromium-Menü ausblenden</translation>
 <translation id="8013436988911883588">Sobald Chromium Zugriff hat, können Websites Sie um Zugriff bitten.</translation>
 <translation id="81770708095080097">Diese Datei ist schädlich und wurde von Chromium blockiert.</translation>
-<translation id="8222496066431494154">Installieren Sie Chromium auf Ihrem Smartphone. Wir senden Ihnen eine SMS an die Telefonnummer zur Kontowiederherstellung: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8248265253516264921">Wenn ein Bild keine brauchbare Beschreibung hat, versucht Chromium, eine für Sie zu finden. Damit entsprechende Beschreibungen erstellt werden können, werden die Bilder an Google gesendet. Sie können dies jederzeit in den Einstellungen deaktivieren.</translation>
-<translation id="8269379391216269538">Chromium mit Ihrer Hilfe verbessern</translation>
 <translation id="8290862415967981663">Diese Datei ist eventuell schädlich und wurde von Chromium blockiert.</translation>
 <translation id="8330519371938183845">Wenn Sie sich anmelden, wird Chromium auf allen Ihren Geräten synchronisiert und personalisiert</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> hat zuvor Chromium verwendet</translation>
 <translation id="8417404458978023919">{0,plural, =1{Chromium innerhalb eines Tages neu starten}other{Chromium innerhalb von # Tagen neu starten}}</translation>
 <translation id="8453117565092476964">Das Installationsarchiv ist beschädigt oder ungültig. Bitte laden Sie Chromium erneut herunter.</translation>
 <translation id="8493179195440786826">Chromium ist veraltet.</translation>
-<translation id="85843667276690461">Hilfe für Chromium aufrufen</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Die Chromium-Autoren. Alle Rechte vorbehalten.</translation>
 <translation id="8619360774459241877">Chromium wird gestartet…</translation>
 <translation id="8621669128220841554">Die Installation konnte aufgrund eines undefinierten Fehlers nicht abgeschlossen werden. Bitte laden Sie Chromium erneut herunter.</translation>
@@ -238,21 +219,14 @@
 <translation id="8907580949721785412">Chromium möchte Passwörter anzeigen. Geben Sie Ihr Windows-Passwort ein, um dies zuzulassen.</translation>
 <translation id="8941642502866065432">Chromium kann nicht aktualisiert werden</translation>
 <translation id="8974095189086268230">Chromium OS wird durch zusätzliche <ph name="BEGIN_LINK_CROS_OSS" />Open-Source-Software<ph name="END_LINK_CROS_OSS" /> möglich gemacht.</translation>
-<translation id="8985587603644336029">Auf diesem Computer war zuvor ein Nutzer mit dem Konto <ph name="ACCOUNT_EMAIL_LAST" /> in Chromium angemeldet. Falls dies nicht Ihr Konto ist, erstellen Sie einen neuen Chromium-Nutzer, um Ihre Daten getrennt zu verwenden.
-
-Sollten Sie sich trotzdem anmelden, werden die Chromium-Daten wie Lesezeichen, Verlauf und andere Einstellungen in <ph name="ACCOUNT_EMAIL_NEW" /> zusammengeführt.</translation>
 <translation id="9019929317751753759">Um Chromium sicherer zu machen, haben wir die folgende Erweiterung deaktiviert. Sie ist nicht im <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> aufgeführt und wurde möglicherweise ohne Ihr Wissen hinzugefügt.</translation>
 <translation id="9022552996538154597">In Chromium anmelden</translation>
-<translation id="9025992965467895364">Diese Seite benötigt zu viel Arbeitsspeicher und wurde daher von Chromium angehalten.</translation>
-<translation id="9036189287518468038">Chromium App Launcher</translation>
 <translation id="9089354809943900324">Chromium ist veraltet.</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium wird in einer Stunde neu gestartet}other{Chromium wird in # Stunden neu gestartet}}</translation>
 <translation id="91086099826398415">Link in neuem Chromium-Tab öffnen</translation>
 <translation id="911206726377975832">Auch die Browserdaten löschen?</translation>
 <translation id="9158494823179993217">Ihr Systemadministrator hat Chromium so konfiguriert, dass ein alternativer Browser für den Zugriff auf <ph name="TARGET_URL_HOSTNAME" /> geöffnet wird.</translation>
-<translation id="918373042641772655">Wenn Sie die Verbindung zu <ph name="USERNAME" /> trennen, werden Ihr Verlauf sowie Ihre Lesezeichen, Einstellungen und sonstigen auf diesem Gerät gespeicherten Chromium-Daten gelöscht. In Ihrem Google-Konto gespeicherte Daten bleiben erhalten und können über das <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" /> verwaltet werden.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Sie sind jetzt in Chromium angemeldet.</translation>
 <translation id="93478295209880648">Chromium funktioniert unter Umständen nicht ordnungsgemäß, da es unter Windows XP und Windows Vista nicht mehr unterstützt wird</translation>
 <translation id="95514773681268843">Vor der Verwendung dieses Geräts ist es erforderlich, dass Sie die folgenden Nutzungsbedingungen von <ph name="DOMAIN" /> akzeptieren. Durch diese Nutzungsbedingungen werden die Chromium OS-Nutzungsbedingungen nicht erweitert, geändert oder eingeschränkt.</translation>
 <translation id="985602178874221306">Die Chromium-Autoren</translation>
diff --git a/chrome/app/resources/chromium_strings_el.xtb b/chrome/app/resources/chromium_strings_el.xtb
index d079e53..6c4c922 100644
--- a/chrome/app/resources/chromium_strings_el.xtb
+++ b/chrome/app/resources/chromium_strings_el.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Το Chromium θέλει να εξαγάγει τους κωδικούς πρόσβασής σας. Για να το επιτρέψετε αυτό, πληκτρολογήστε τον κωδικό πρόσβασης για τα Windows.</translation>
 <translation id="1115445892567829615">Το Chromium δεν κατάφερε να συγχρονίσει τα δεδομένα σας. Ενημερώστε τη φράση πρόσβασης συγχρονισμού.</translation>
 <translation id="113122355610423240">Το Chromium είναι το προεπιλεγμένο πρόγραμμα περιήγησης</translation>
-<translation id="1170115874949214249">Εγκαταστήστε το Chromium στο τηλέφωνό σας. Θα στείλουμε ένα SMS στον αριθμό τηλεφώνου ανάκτησης του λογαριασμού σας.</translation>
-<translation id="1174473354587728743">Μοιράζεστε έναν υπολογιστή; Τώρα μπορείτε να ρυθμίσετε το Chromium όπως ακριβώς σας αρέσει.</translation>
 <translation id="1185134272377778587">Σχετικά με το Chromium</translation>
-<translation id="1298199220304005244">Λήψη βοήθειας σχετικά με τη χρήση του Chromium OS</translation>
 <translation id="1396446129537741364">Το Chromium επιχειρεί να εμφανίσει κωδικούς πρόσβασης.</translation>
 <translation id="1414495520565016063">Έχετε συνδεθεί στο Chromium!</translation>
 <translation id="151962892725702025">Το Chromium OS δεν μπόρεσε να συγχρονίσει τα δεδομένα σας, επειδή ο συγχρονισμός δεν είναι διαθέσιμος για τον τομέα σας.</translation>
 <translation id="1524282610922162960">Μοιραστείτε μια καρτέλα του Chromium</translation>
-<translation id="1668054258064581266">Μετά την κατάργηση του λογαριασμού σας στο Chromium, ενδεχομένως να χρειαστεί να επαναφορτώσετε τις ανοικτές καρτέλες σας προκειμένου να εφαρμοστούν οι αλλαγές σας.</translation>
-<translation id="1688750314291223739">Ρυθμίστε τον συγχρονισμό για την αποθήκευση όλων των εξατομικευμένων λειτουργιών του προγράμματος περιήγησής σας στον ιστό και μεταβείτε σε αυτές από το Chromium μέσω οποιουδήποτε υπολογιστή.</translation>
 <translation id="1708666629004767631">Υπάρχει μια νέα, ασφαλέστερη έκδοση του Chromium.</translation>
 <translation id="1766096484055239003">Ο διαχειριστής σας απαιτεί να επανεκκινήσετε το Chromium, προκειμένου να εφαρμοστεί μια ενημέρωση</translation>
 <translation id="1774152462503052664">Να επιτρέπεται στο Chromium να εκτελείται στο παρασκήνιο</translation>
 <translation id="1779356040007214683">Για να κάνουμε το Chromium πιο ασφαλές, απενεργοποιήσαμε ορισμένες επεκτάσεις που δεν αναφέρονται στο <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> και ενδέχεται να έχουν προστεθεί εν αγνοία σας.</translation>
 <translation id="1808667845054772817">Επανεγκατάσταση του Chromium</translation>
-<translation id="1869480248812203386">Μπορείτε να βοηθήσετε να κάνουμε το Chromium πιο ασφαλές και εύχρηστο αναφέροντας αυτόματα στην Google λεπτομέρειες σχετικά με πιθανά περιστατικά ασφάλειας.</translation>
 <translation id="1881322772814446296">Είστε συνδεδεμένοι με έναν διαχειριζόμενο λογαριασμό και παραχωρείτε στο διαχειριστή του τον έλεγχο του προφίλ σας στο Chromium. Τα δεδομένα σας στο Chromium, όπως οι εφαρμογές, οι σελιδοδείκτες, το ιστορικό, οι κωδικοί πρόσβασης και άλλες ρυθμίσεις θα συνδεθούν μόνιμα με το όνομα χρήστη <ph name="USER_NAME" />. Θα έχετε τη δυνατότητα να διαγράψετε αυτά τα δεδομένα μέσω του Πίνακα ελέγχου των Λογαριασμών Google, αλλά δεν θα μπορείτε να τα συσχετίσετε με άλλο λογαριασμό. Αν θέλετε, μπορείτε να δημιουργήσετε ένα νέο προφίλ στο οποίο θα διατηρηθούν ξεχωριστά τα υπάρχοντα δεδομένα του Chromium. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Με την απενεργοποίηση αυτής της λειτουργίας, μπορείτε να συνδεθείτε σε ιστοτόπους Google, όπως το Gmail, χωρίς να συνδεθείτε στο Chromium</translation>
 <translation id="1929939181775079593">Το Chromium δεν ανταποκρίνεται. Να γίνει επανεκκίνηση τώρα;</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Ο διαχειριστής σας ζητάει να επανεκκινήσετε το Chromium, προκειμένου να εφαρμοστεί αυτή η ενημέρωση</translation>
 <translation id="2119636228670142020">Σχετικά με το &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Αν χρησιμοποιείτε έναν υπολογιστή από κοινού με άλλα άτομα, οι φίλοι και τα μέλη της οικογένειάς σας μπορούν να περιηγούνται αυτόνομα και να ρυθμίζουν το Chromium ακριβώς όπως θέλουν.</translation>
-<translation id="2265088490657775772">λήψη Chromium στο iPhone</translation>
 <translation id="2347108572062610441">Αυτή η επέκταση άλλαξε τη σελίδα που εμφανίζεται κατά την εκκίνηση του Chromium.</translation>
 <translation id="2396765026452590966">Η επέκταση <ph name="EXTENSION_NAME" /> άλλαξε τη σελίδα που εμφανίζεται κατά την εκκίνηση του Chromium.</translation>
 <translation id="2483889755041906834">Στο Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Για να ενημερωθεί το Chromium, θα πρέπει να σταματήσει η εκτέλεσή του σε αυτόν τον υπολογιστή. Αυτό μπορεί να προκαλέσει την απώλεια μη αποθηκευμένων αλλαγών που έχουν πραγματοποιήσει άλλοι χρήστες, οι οποίοι είναι συνδεδεμένοι σε αυτόν τον υπολογιστή.</translation>
 <translation id="2847479871509788944">Κατάργηση από το Chromium…</translation>
 <translation id="2886012850691518054">Προαιρετικό: συμβάλετε στη βελτίωση του Chromium στέλνοντας αυτόματα στην Google στατιστικά στοιχεία χρήσης και αναφορές σφαλμάτων.</translation>
-<translation id="2898082584336937987">Εγκαταστήστε το Chromium στο τηλέφωνό σας. Θα στείλουμε ένα SMS στο τηλέφωνό σας: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Σχετικά με το &amp;Chromium</translation>
 <translation id="2977470724722393594">Το Chromium έχει ενημερωθεί</translation>
 <translation id="3032787606318309379">Προσθήκη στο Chromium…</translation>
-<translation id="3046695367536568084">Θα πρέπει να συνδεθείτε στο Chromium για να χρησιμοποιείτε εφαρμογές. Αυτό δίνει τη δυνατότητα στο Chromium να συγχρονίσει τις εφαρμογές, τους σελιδοδείκτες, το ιστορικό, τους κωδικούς πρόσβασής σας και άλλες ρυθμίσεις στις συσκευές σας.</translation>
 <translation id="3068515742935458733">Βοηθήστε μας να κάνουμε το Chromium καλύτερο, αποστέλλωντας αναφορές σφαλμάτων και <ph name="UMA_LINK" /> στη Google</translation>
 <translation id="3103660991484857065">Η αποσυμπίεση του αρχείου από το πρόγραμμα εγκατάστασης απέτυχε. Κατεβάστε το Chromium ξανά.</translation>
 <translation id="3130323860337406239">Το Chromium χρησιμοποιεί το μικρόφωνό σας.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Άνοιγμα Συνδέσμου σε Παράθυρο ανών&amp;υμης περιήγησης Chromium</translation>
 <translation id="3190315855212034486">Το Chromium παρουσίασε σφάλμα. Να γίνει επανεκκίνηση τώρα;</translation>
 <translation id="3229526316128325841">Το Chromium θέλει να εξαγάγει τους κωδικούς πρόσβασής σας.</translation>
-<translation id="3256316712990552818">Αντιγράφηκε στο Chromium</translation>
 <translation id="3258596308407688501">Το Chromium δεν έχει δυνατότητα ανάγνωσης και εγγραφής στον κατάλογο δεδομένων του:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Στην πιο πρόσφατη έκδοση διατίθενται σημαντικές βελτιώσεις ασφάλειας και νέες λειτουργίες.</translation>
 <translation id="421369550622382712">Ανακαλύψτε καταπληκτικές εφαρμογές, παιχνίδια, επεκτάσεις και θέματα για το Chromium.</translation>
 <translation id="4216212958613226427">Αυτή η γλώσσα χρησιμοποιείται για την προβολή της διεπαφής Chromium</translation>
-<translation id="4222580632002216401">Έχετε πλέον συνδεθεί στο Chromium! Ο συγχρονισμός έχει απενεργοποιηθεί από το διαχειριστή σας.</translation>
 <translation id="4230135487732243613">Να συνδεθούν τα δεδομένα σας στο Chromium με αυτόν το λογαριασμό;</translation>
 <translation id="4271805377592243930">Λήψη βοήθειας σχετικά με το Chromium</translation>
 <translation id="4285930937574705105">Η εγκατάσταση απέτυχε λόγω απροσδιόριστου σφάλματος. Εάν το Chromium εκτελείται αυτήν τη στιγμή, κλείστε το και δοκιμάστε ξανά.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Το Chromium εκτελείται στο παρασκήνιο.</translation>
 <translation id="4987820182225656817">Οι επισκέπτες μπορούν να χρησιμοποιούν το Chromium χωρίς να αφήνουν κανένα ίχνος.</translation>
 <translation id="4994636714258228724">Προσθήκη του εαυτού σας στο Chromium</translation>
-<translation id="5181952534059945058">Αυτή η σελίδα χρησιμοποιεί πάρα πολλή μνήμη. Για αυτόν τον λόγο, το Chromium κατάργησε κάποιο περιεχόμενο.</translation>
 <translation id="5277894862589591112">Για να εφαρμόσετε τις αλλαγές σας, επανεκκινήστε το Chromium</translation>
 <translation id="5358375970380395591">Είστε συνδεδεμένοι με έναν διαχειριζόμενο λογαριασμό και παραχωρείτε στο διαχειριστή του τον έλεγχο του προφίλ σας στο Chromium. Τα δεδομένα σας στο Chromium, όπως οι εφαρμογές, οι σελιδοδείκτες, το ιστορικό, οι κωδικοί πρόσβασης και άλλες ρυθμίσεις θα συνδεθούν μόνιμα με το όνομα χρήστη <ph name="USER_NAME" />. Θα έχετε τη δυνατότητα να διαγράψετε αυτά τα δεδομένα μέσω του Πίνακα ελέγχου των Λογαριασμών Google, αλλά δεν θα μπορείτε να τα συσχετίσετε με άλλο λογαριασμό. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Ενημέρωση του Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Επανεκκίνηση</translation>
 <translation id="5987687638152509985">Για να ξεκινήσει ο συγχρονισμός, ενημερώστε το Chromium</translation>
 <translation id="6013050204643758987">Το Chromium OS έγινε πραγματικότητα χάρη στα πρόσθετα <ph name="BEGIN_LINK_CROS_OSS" />λογισμικά ανοικτού κώδικα<ph name="END_LINK_CROS_OSS" />, όπως το <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Κλείσιμο</translation>
 <translation id="6055895534982063517">Υπάρχει μια νέα έκδοση του Chromium και είναι ταχύτερη από ποτέ.</translation>
 <translation id="6063093106622310249">&amp;Άνοιγμα στο Chromium</translation>
 <translation id="6072279588547424923">Η επέκταση <ph name="EXTENSION_NAME" /> έχει προστεθεί στο Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Σύστημα Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Θα γίνει επανεκκίνηση του Chromium σε 1 δευτερόλεπτο}other{Θα γίνει επανεκκίνηση του Chromium σε # δευτερόλεπτα}}</translation>
 <translation id="6475912303565314141">Επίσης, ελέγχει τη σελίδα που εμφανίζεται κατά την εκκίνηση του Chromium.</translation>
-<translation id="6485906693002546646">Χρησιμοποιείτε το προφίλ <ph name="PROFILE_EMAIL" /> για το συγχρονισμό του περιεχομένου σας στο Chromium. Για να ενημερώσετε τις προτιμήσεις συγχρονισμού ή για να χρησιμοποιήστε το Chromium χωρίς Λογαριασμό Google, μεταβείτε στην περιοχή <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Απεγκατάσταση Chromium</translation>
 <translation id="6570579332384693436">Για τη διόρθωση ορθογραφικών λαθών, το Chromium στέλνει το κείμενο που πληκτρολογείτε σε πεδία κειμένου στο Google</translation>
 <translation id="6598877126913850652">Μετάβαση στις ρυθμίσεις ειδοποιήσεων του Chromium</translation>
@@ -162,7 +148,6 @@
 Ορισμένες λειτουργίες ενδέχεται να μην είναι διαθέσιμες. Καθορίστε έναν διαφορετικό κατάλογο προφίλ ή χρησιμοποιήστε μια νεότερη έκδοση του Chromium.</translation>
 <translation id="6734080038664603509">Ενημέρωση &amp;Chromium</translation>
 <translation id="6734291798041940871">Το Chromium είναι ήδη εγκατεστημένο για όλους τους χρήστες στον υπολογιστή σας.</translation>
-<translation id="6810143991807788455">Συμβάλετε στη βελτίωση του Chromium αναφέροντας τις τρέχουσες ρυθμίσεις</translation>
 <translation id="6847869444787758381">Το Chromium σας ενημερώνει σε περίπτωση παραβίασης των κωδικών πρόσβασής σας.</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (αντιγράφηκε στο Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Το αρχείο προτιμήσεών σας είναι κατεστραμμένο ή μη έγκυρο.
 
 Το Chromium δεν μπορεί να ανακτήσει τις ρυθμίσεις σας.</translation>
-<translation id="7331920710658926971">Εγκαταστήστε το Chromium στο τηλέφωνό σας. Θα στείλουμε ένα SMS στο τηλέφωνό σας.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Νέο παράθυρο</translation>
 <translation id="734373864078049451">Εδώ μπορείτε να βρείτε τις ιστοσελίδες, τους σελιδοδείκτες σας και άλλα δεδομένα του Chromium.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Απόκρυψη από το μενού του Chromium</translation>
 <translation id="8013436988911883588">Όταν το Chromium αποκτήσει πρόσβαση, οι ιστότοποι θα μπορούν να σας ζητήσουν πρόσβαση.</translation>
 <translation id="81770708095080097">Αυτό το αρχείο είναι επικίνδυνο και έχει αποκλειστεί από το Chromium.</translation>
-<translation id="8222496066431494154">Εγκαταστήστε το Chromium στο τηλέφωνό σας. Θα στείλουμε ένα SMS στον αριθμό τηλεφώνου ανάκτησης του λογαριασμού σας: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Εάν μια εικόνα δεν έχει κάποια χρήσιμη περιγραφή, το Chromium θα προσπαθήσει να σας προσφέρει μια περιγραφή. Για τη δημιουργία περιγραφών, αποστέλλονται εικόνες στην Google. Μπορείτε να απενεργοποιήσετε αυτήν τη λειτουργία στις ρυθμίσεις οποιαδήποτε στιγμή.</translation>
-<translation id="8269379391216269538">Βοηθήστε μας να κάνουμε το Chromium καλύτερο</translation>
 <translation id="8290862415967981663">Αυτό το αρχείο ενδέχεται να είναι επικίνδυνο και έχει αποκλειστεί από το Chromium.</translation>
 <translation id="8330519371938183845">Συνδεθείτε, για να συγχρονίσετε και να εξατομικεύσετε το Chromium στις συσκευές σας</translation>
 <translation id="8340674089072921962">Η διεύθυνση <ph name="USER_EMAIL_ADDRESS" /> χρησιμοποιούσε το Chromium στο παρελθόν</translation>
 <translation id="8417404458978023919">{0,plural, =1{Επανεκκίνηση του Chromium σε μία ημέρα}other{Επανεκκίνηση του Chromium σε # ημέρες}}</translation>
 <translation id="8453117565092476964">Το αρχείο του προγράμματος εγκατάστασης είναι κατεστραμμένο ή μη έγκυρο. Κατεβάστε το Chromium ξανά.</translation>
 <translation id="8493179195440786826">Το Chromium δεν είναι ενημερωμένο</translation>
-<translation id="85843667276690461">Λήψη βοήθειας σχετικά με τη χρήση του Chromium</translation>
 <translation id="8586442755830160949">Πνευματικά δικαιώματα <ph name="YEAR" /> Οι συντάκτες του Chromium. Με επιφύλαξη παντός δικαιώματος.</translation>
 <translation id="8619360774459241877">Εκκίνηση του Chromium…</translation>
 <translation id="8621669128220841554">Η εγκατάσταση απέτυχε λόγω μη καθορισμένου σφάλματος. Κατεβάστε το Chromium ξανά.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Το Chromium προσπαθεί να εμφανίσει τους κωδικούς πρόσβασης. Πληκτρολογήστε τον κωδικό πρόσβασής σας Windows για να το επιτρέψετε αυτό.</translation>
 <translation id="8941642502866065432">Δεν είναι δυνατή η ενημέρωση του Chromium</translation>
 <translation id="8974095189086268230">Το Chromium OS υλοποιήθηκε με τη βοήθεια επιπλέον <ph name="BEGIN_LINK_CROS_OSS" />λογισμικού ανοιχτού κώδικα<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Κάποιο άτομο συνδέθηκε προηγουμένως στο Chromium σε αυτόν τον υπολογιστή ως <ph name="ACCOUNT_EMAIL_LAST" />. Αν αυτός δεν είναι ο λογαριασμός σας, δημιουργήστε ένα νέο χρήστη του Chromium, για να παραμείνουν οι πληροφορίες σας ξεχωριστά.
-
-Με τη σύνδεση, θα συγχωνευτούν στο Chromium πληροφορίες όπως οι σελιδοδείκτες, το ιστορικό και άλλες ρυθμίσεις στο <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Για να κάνουμε το Chromium πιο ασφαλές, απενεργοποιήσαμε τις ακόλουθες επεκτάσεις που δεν αναφέρονται στο <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> και ενδέχεται να έχουν προστεθεί εν αγνοία σας.</translation>
 <translation id="9022552996538154597">Σύνδεση στο Chromium</translation>
-<translation id="9025992965467895364">Αυτή η σελίδα χρησιμοποιεί πάρα πολλή μνήμη. Για αυτόν τον λόγο, το Chromium την έθεσε σε παύση.</translation>
-<translation id="9036189287518468038">Λειτουργία εκκίνησης εφαρμογών Chromium</translation>
 <translation id="9089354809943900324">Το Chromium δεν είναι ενημερωμένο</translation>
 <translation id="9093206154853821181">{0,plural, =1{Η επανεκκίνηση του Chromium θα γίνει σε μία ώρα}other{Η επανεκκίνηση του Chromium θα γίνει σε # ώρες}}</translation>
 <translation id="91086099826398415">Άνοιγμα Συνδέσμου σε Νέα καρτέ&amp;λα Chromium</translation>
 <translation id="911206726377975832">Να γίνει διαγραφή και των δεδομένων περιήγησης;</translation>
 <translation id="9158494823179993217">Ο διαχειριστής συστήματος έχει διαμορφώσει το Chromium έτσι ώστε να ανοίγει άλλο πρόγραμμα περιήγησης για την πρόσβαση στη διεύθυνση <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Με την αποσύνδεση του λογαριασμού <ph name="USERNAME" />, θα διαγραφεί το ιστορικό, οι σελιδοδείκτες, οι ρυθμίσεις σας και άλλα δεδομένα Chromium που έχουν αποθηκευτεί σε αυτήν τη συσκευή. Τα δεδομένα που έχουν αποθηκευτεί στον Λογαριασμό σας Google δεν θα διαγραφούν και μπορείτε να τα διαχειριστείτε μέσω του <ph name="GOOGLE_DASHBOARD_LINK" />Πίνακα ελέγχου Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Έχετε συνδεθεί στο Chromium</translation>
 <translation id="93478295209880648">Το Chromium μπορεί να μην λειτουργεί σωστά, επειδή δεν υποστηρίζεται πια σε Windows XP και Windows Vista</translation>
 <translation id="95514773681268843">Το <ph name="DOMAIN" /> απαιτεί να διαβάσετε και να αποδεχτείτε τους ακόλουθους Όρους Παροχής Υπηρεσιών πριν από τη χρήση αυτής της συσκευής. Οι συγκεκριμένοι όροι δεν επεκτείνουν, τροποποιούν ή περιορίζουν τους όρους του Chromium OS.</translation>
 <translation id="985602178874221306">Οι συντάκτες του Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_en-GB.xtb b/chrome/app/resources/chromium_strings_en-GB.xtb
index c5c0ab4..95c8633 100644
--- a/chrome/app/resources/chromium_strings_en-GB.xtb
+++ b/chrome/app/resources/chromium_strings_en-GB.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium wants to export your passwords. Type your Windows password to allow this.</translation>
 <translation id="1115445892567829615">Chromium could not sync your data. Please update your Sync passphrase.</translation>
 <translation id="113122355610423240">Chromium is your default browser</translation>
-<translation id="1170115874949214249">Install Chromium on your phone. We’ll send an SMS to your account recovery phone number.</translation>
-<translation id="1174473354587728743">Share a computer? Now you can set up Chromium just the way you like it.</translation>
 <translation id="1185134272377778587">About Chromium</translation>
-<translation id="1298199220304005244">Get help with using Chromium OS</translation>
 <translation id="1396446129537741364">Chromium is trying to show passwords.</translation>
 <translation id="1414495520565016063">You're signed in to Chromium!</translation>
 <translation id="151962892725702025">Chromium OS could not sync your data because Sync is not available for your domain.</translation>
 <translation id="1524282610922162960">Share a Chromium tab</translation>
-<translation id="1668054258064581266">After removing your account from Chromium, you may need to reload your open tabs to take effect.</translation>
-<translation id="1688750314291223739">Set up Sync to save your personalised browser features to the web and access them from Chromium on any computer.</translation>
 <translation id="1708666629004767631">There's a new, safer version of Chromium available.</translation>
 <translation id="1766096484055239003">Your administrator requires that you relaunch Chromium to apply an update</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>
 <translation id="1808667845054772817">Reinstall Chromium</translation>
-<translation id="1869480248812203386">You can help make Chromium safer and easier to use by automatically reporting details of possible security incidents to Google.</translation>
 <translation id="1881322772814446296">You are signing in with a managed account and giving its administrator control over your Chromium profile. Your Chromium data, such as your apps, bookmarks, history, passwords and other settings will become permanently tied to <ph name="USER_NAME" />. You will be able to delete this data via the Google Accounts Dashboard, but you will not be able to associate this data with another account. You can optionally create a new profile to keep your existing Chromium data separate. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">By turning this off, you can sign in to Google sites such as Gmail, without signing in to Chromium</translation>
 <translation id="1929939181775079593">Chromium is unresponsive. Relaunch now?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Your administrator asks that you relaunch Chromium to apply this update</translation>
 <translation id="2119636228670142020">About &amp;Chromium OS</translation>
 <translation id="2241627712206172106">If you share a computer, friends and family can browse separately and set up Chromium just the way they want.</translation>
-<translation id="2265088490657775772">get Chromium on your iPhone</translation>
 <translation id="2347108572062610441">This extension has changed the page that is shown when you start Chromium.</translation>
 <translation id="2396765026452590966">The extension "<ph name="EXTENSION_NAME" />" has changed the page that is shown when you start Chromium.</translation>
 <translation id="2483889755041906834">In Chromium</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">To update, Chromium needs to stop running on this computer. This may cause other users logged into this computer to lose unsaved changes.</translation>
 <translation id="2847479871509788944">Remove from Chromium...</translation>
 <translation id="2886012850691518054">Optional: Help make Chrome better by automatically sending usage statistics and crash reports to Google.</translation>
-<translation id="2898082584336937987">Install Chromium on your phone. We’ll send an SMS to your phone: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">About &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium is up to date</translation>
 <translation id="3032787606318309379">Adding to Chromium ...</translation>
-<translation id="3046695367536568084">You need to be signed in to Chromium to use apps. This allows Chromium to sync your apps, bookmarks, history, passwords and other settings across devices.</translation>
 <translation id="3068515742935458733">Help make Chromium better by sending crash reports and <ph name="UMA_LINK" /> to Google</translation>
 <translation id="3103660991484857065">The installer failed to uncompress archive. Please download Chromium again.</translation>
 <translation id="3130323860337406239">Chromium is using your microphone.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Open Link in Chromium Inco&amp;gnito Window</translation>
 <translation id="3190315855212034486">Whoa! Chromium has crashed. Relaunch now?</translation>
 <translation id="3229526316128325841">Chromium wants to export your passwords.</translation>
-<translation id="3256316712990552818">Copied to Chromium</translation>
 <translation id="3258596308407688501">Chromium cannot read and write to its data directory:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">Important security improvements and new features are available in the latest version.</translation>
 <translation id="421369550622382712">Discover great apps, games, extensions and themes for Chromium.</translation>
 <translation id="4216212958613226427">This language is used to display the Chromium UI</translation>
-<translation id="4222580632002216401">You're now signed in to Chromium! Sync is disabled by your administrator.</translation>
 <translation id="4230135487732243613">Link my Chromium data to this account</translation>
 <translation id="4271805377592243930">Get help with Chromium</translation>
 <translation id="4285930937574705105">Installation failed due to unspecified error. If Google Chrome is currently running, please close it and try again.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Chromium is in background mode.</translation>
 <translation id="4987820182225656817">Guests can use Chromium without leaving anything behind.</translation>
 <translation id="4994636714258228724">Add yourself to Chromium</translation>
-<translation id="5181952534059945058">This page uses too much memory, so Chromium removed some content.</translation>
 <translation id="5277894862589591112">To apply your changes, relaunch Chromium</translation>
 <translation id="5358375970380395591">You are signing in with a managed account and giving its administrator control over your Chromium profile. Your Chromium data, such as your apps, bookmarks, history, passwords and other settings will become permanently tied to <ph name="USER_NAME" />. You will be able to delete this data via the Google Accounts Dashboard, but you will not be able to associate this data with another account. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Updating Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">Restart</translation>
 <translation id="5987687638152509985">Update Chromium to start sync</translation>
 <translation id="6013050204643758987">Chromium OS is made possible by additional <ph name="BEGIN_LINK_CROS_OSS" />open source software<ph name="END_LINK_CROS_OSS" />, as is <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Close</translation>
 <translation id="6055895534982063517">There's a new version of Google Chrome available and it's faster than ever.</translation>
 <translation id="6063093106622310249">&amp;Open in Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> has been added to Chromium</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Chromium OS System</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium will restart in 1 second}other{Chromium will restart in # seconds}}</translation>
 <translation id="6475912303565314141">It also controls what page is shown when you start Chromium.</translation>
-<translation id="6485906693002546646">You're using <ph name="PROFILE_EMAIL" /> to sync your Chromium stuff. To update your sync preference or to use Chromium without a Google Account, visit <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Uninstall Chromium</translation>
 <translation id="6570579332384693436">To fix spelling errors, Chromium sends the text that you type in text fields to Google</translation>
 <translation id="6598877126913850652">Go to Chromium notification settings</translation>
@@ -164,7 +150,6 @@
 Some features may be unavailable. Please specify a different profile directory or use a newer version of Chromium.</translation>
 <translation id="6734080038664603509">Update &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium is already installed for all users on your computer.</translation>
-<translation id="6810143991807788455">Help make Chromium better by reporting the current settings</translation>
 <translation id="6847869444787758381">Chromium lets you know if your passwords are ever compromised</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copied to Chromium)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">Your preferences file is corrupt or invalid.
 
 Google Chrome is unable to recover your settings.</translation>
-<translation id="7331920710658926971">Install Chromium on your phone. We’ll send an SMS to your phone.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">New window</translation>
 <translation id="734373864078049451">Your web, bookmarks and other Chromium stuff live here.</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">Hide in Chromium menu</translation>
 <translation id="8013436988911883588">Once Chromium has access, websites will be able to ask you for access.</translation>
 <translation id="81770708095080097">This file is dangerous, so Chromium has blocked it.</translation>
-<translation id="8222496066431494154">Install Chromium on your phone. We’ll send an SMS to your account recovery phone number: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">If an image doesn’t have a useful description, Chromium will try to provide one for you. To create descriptions, images are sent to Google. You can turn this off in settings at any time.</translation>
-<translation id="8269379391216269538">Help make Chromium better</translation>
 <translation id="8290862415967981663">This file may be dangerous, so Chromium has blocked it.</translation>
 <translation id="8330519371938183845">Sign in to sync and personalise Chromium across your devices</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> was previously using Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Relaunch Chromium within a day}other{Relaunch Chromium within # days}}</translation>
 <translation id="8453117565092476964">The installer archive is corrupted or invalid. Please download Chromium again.</translation>
 <translation id="8493179195440786826">Chromium is Out of Date</translation>
-<translation id="85843667276690461">Get help with using Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> The Chromium Authors. All rights reserved.</translation>
 <translation id="8619360774459241877">Launching Chromium...</translation>
 <translation id="8621669128220841554">Installation failed due to unspecified error. Please download Chromium again.</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">Chromium is trying to show passwords. Type your Windows password to allow this.</translation>
 <translation id="8941642502866065432">Can't update Chromium</translation>
 <translation id="8974095189086268230">Chromium OS is made possible by additional <ph name="BEGIN_LINK_CROS_OSS" />open source software<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Someone previously signed in to Chromium on this computer as <ph name="ACCOUNT_EMAIL_LAST" />. If that isn't your account, create a new Chromium user to keep your information separate.
-
-Signing in anyway will merge Chromium information like bookmarks, history, and other settings to <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">To make Chromium safer, we disabled the following extension that isn't listed in the <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> and may have been added without your knowledge.</translation>
 <translation id="9022552996538154597">Sign in to Chromium</translation>
-<translation id="9025992965467895364">This page uses too much memory, so Chromium paused it.</translation>
-<translation id="9036189287518468038">Chromium App Launcher</translation>
 <translation id="9089354809943900324">Chromium is out of date</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium will relaunch in an hour}other{Chromium will relaunch in # hours}}</translation>
 <translation id="91086099826398415">Open Link in New Chromium &amp;tab</translation>
 <translation id="911206726377975832">Also delete your browsing data?</translation>
 <translation id="9158494823179993217">Your system administrator has configured Chromium to open an alternative browser to access <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Disconnecting <ph name="USERNAME" /> will clear your history, bookmarks, settings and other Chromium data stored on this device. Data stored in your Google Account will not be cleared and can be managed on <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">You're now signed in to Chromium</translation>
 <translation id="93478295209880648">Chromium may not function correctly because it is no longer supported on Windows XP or Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> requires that you read and accept the following Terms of Service before using this device. These terms do not expand, modify or limit the Chromium OS Terms.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_es-419.xtb b/chrome/app/resources/chromium_strings_es-419.xtb
index 9044491..7fc8ced 100644
--- a/chrome/app/resources/chromium_strings_es-419.xtb
+++ b/chrome/app/resources/chromium_strings_es-419.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium desea exportar tus contraseñas. Para permitirlo, escribe tu contraseña de Windows.</translation>
 <translation id="1115445892567829615">Chromium no pudo sincronizar los datos. Actualiza la frase de contraseña de sincronización.</translation>
 <translation id="113122355610423240">Chromium es tu navegador predeterminado</translation>
-<translation id="1170115874949214249">Instala Chromium en el teléfono. Te enviaremos un SMS al número de teléfono de recuperación de la cuenta.</translation>
-<translation id="1174473354587728743">¿Compartes una computadora? Ahora puedes configurar Chromium como a ti te gusta.</translation>
 <translation id="1185134272377778587">Acerca de Chromium</translation>
-<translation id="1298199220304005244">Obtener ayuda para usar Chromium OS</translation>
 <translation id="1396446129537741364">Chromium está intentando mostrar contraseñas.</translation>
 <translation id="1414495520565016063">Accediste a Chromium.</translation>
 <translation id="151962892725702025">El Sistema operativo Chromium no pudo sincronizar los datos porque la sincronización no está disponible para el dominio.</translation>
 <translation id="1524282610922162960">Compartir una pestaña de Chromium</translation>
-<translation id="1668054258064581266">Luego de eliminar la cuenta de Chromium, es posible que debas volver a cargar las pestañas abiertas para que se aplique el cambio.</translation>
-<translation id="1688750314291223739">Configura la sincronización para guardar tus funciones personalizadas del navegador en la Web y para acceder a ellas con Chromium desde cualquier equipo.</translation>
 <translation id="1708666629004767631">Hay una versión nueva y más segura de Chromium disponible.</translation>
 <translation id="1766096484055239003">Tu administrador necesita que reinicies Chromium para aplicar esta actualización</translation>
 <translation id="1774152462503052664">Permitir que Chromium se ejecute en segundo plano</translation>
 <translation id="1779356040007214683">Para que Chromium sea más seguro, inhabilitamos algunas extensiones que no figuran en <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> y que posiblemente se hayan agregado sin tu conocimiento.</translation>
 <translation id="1808667845054772817">Reinstalar Chromium</translation>
-<translation id="1869480248812203386">Puedes ayudar a que Chromium sea más seguro y fácil de usar si informas automáticamente detalles de posibles incidentes de seguridad en Google.</translation>
 <translation id="1881322772814446296">Estás por acceder con una cuenta administrada, lo que significa que proporcionarás al administrador el control sobre tu perfil de Chromium. Tus datos de Chromium, como las aplicaciones, los favoritos, el historial, las contraseñas y otros parámetros de configuración quedarán vinculados a <ph name="USER_NAME" /> de forma permanente. Podrás eliminar estos datos a través del Panel de control de Cuentas de Google, pero no podrás asociarlos a otra cuenta. También puedes crear un perfil para mantener separados tus datos de Chromium. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Si desactivas esta preferencia, podrás acceder a sitios de Google (como Gmail) sin tener que acceder a Chromium</translation>
 <translation id="1929939181775079593">Chromium no responde. ¿Quieres reiniciarlo ahora?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Tu administrador te solicita que reinicies Chromium para aplicar esta actualización</translation>
 <translation id="2119636228670142020">Acerca de &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Si compartes una computadora, tus amigos y familiares pueden navegar de forma independiente y configurar Chromium según los gustos individuales.</translation>
-<translation id="2265088490657775772">obtener Chromium para tu iPhone</translation>
 <translation id="2347108572062610441">Esta extensión cambió la página que se muestra al iniciar Chromium.</translation>
 <translation id="2396765026452590966">La extensión "<ph name="EXTENSION_NAME" />" cambió la página que se muestra al iniciar Chromium.</translation>
 <translation id="2483889755041906834">En Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Para actualizarse, Chromium debe dejar de ejecutarse en esta computadora. Es posible que esta acción haga que los usuarios que accedieron en esta computadora pierdan cambios no guardados.</translation>
 <translation id="2847479871509788944">Eliminar de Chromium…</translation>
 <translation id="2886012850691518054">Opcional: Ayúdanos a mejorar Chromium enviando estadísticas de uso e informes de errores a Google de manera automática.</translation>
-<translation id="2898082584336937987">Instala Chromium en el teléfono. Te enviaremos un SMS a ese dispositivo: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Acerca de &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium está actualizado.</translation>
 <translation id="3032787606318309379">Agregar a Chromium...</translation>
-<translation id="3046695367536568084">Para usar las aplicaciones, debes acceder a Chromium. De este modo, Chromium puede sincronizar las aplicaciones, los favoritos, el historial, las contraseñas y otros parámetros de configuración en los dispositivos.</translation>
 <translation id="3068515742935458733">Envía a Google informes de fallos y <ph name="UMA_LINK" /> para ayudar a mejorar Chromium.</translation>
 <translation id="3103660991484857065">El instalador no pudo descomprimir el archivo. Descarga Chromium nuevamente.</translation>
 <translation id="3130323860337406239">Chromium está usando tu micrófono.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Abrir vínculo en una ventana de navegación de incó&amp;gnito de Chromium</translation>
 <translation id="3190315855212034486">¡Vaya! Se ha producido un bloqueo en Chromium. ¿Quieres reiniciar el navegador ahora?</translation>
 <translation id="3229526316128325841">Chromium desea exportar tus contraseñas.</translation>
-<translation id="3256316712990552818">Se copió en Chromium.</translation>
 <translation id="3258596308407688501">Chromium no puede leer y escribir en su directorio de datos: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">Faltan las claves de la API de Google. Se inhabilitarán algunas funciones de Chromium.</translation>
 <translation id="3296368748942286671">Continuar ejecutando aplicaciones en segundo plano cuando Chromium esté cerrado.</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">La última versión proporciona importantes mejoras de seguridad y nuevas funciones.</translation>
 <translation id="421369550622382712">Descubre aplicaciones, juegos, extensiones y temas increíbles para Chromium.</translation>
 <translation id="4216212958613226427">Este idioma se usa para mostrar la IU de Chromium</translation>
-<translation id="4222580632002216401">Accediste a Chromium. El administrador inhabilitó la sincronización.</translation>
 <translation id="4230135487732243613">¿Quieres vincular los datos de Chromium a esta cuenta?</translation>
 <translation id="4271805377592243930">Obtener ayuda con Chromium</translation>
 <translation id="4285930937574705105">No se pudo completar la instalación debido a un error no identificado. Si Chromium se está ejecutando en este momento, ciérralo e intenta nuevamente.</translation>
@@ -105,7 +94,6 @@
 <translation id="4943838377383847465">Chromium está en modo de segundo plano</translation>
 <translation id="4987820182225656817">Los invitados pueden utilizar Chromium sin dejar nada detrás.</translation>
 <translation id="4994636714258228724">Agregarte a Chromium</translation>
-<translation id="5181952534059945058">Chromium quitó parte del contenido de esta página porque usa demasiada memoria.</translation>
 <translation id="5277894862589591112">Para aplicar los cambios, vuelve a ejecutar Chromium</translation>
 <translation id="5358375970380395591">Estás por acceder con una cuenta administrada, lo que significa que proporcionarás al administrador el control sobre tu perfil de Chromium. Tus datos de Chromium, como las aplicaciones, los favoritos, el historial, las contraseñas y otros parámetros de configuración quedarán vinculados a <ph name="USER_NAME" /> de forma permanente. Podrás eliminar estos datos a través del Panel de control de Cuentas de Google, pero no podrás asociarlos a otra cuenta. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Actualizando Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -128,7 +116,6 @@
 <translation id="5895138241574237353">Reiniciar</translation>
 <translation id="5987687638152509985">Actualiza Chromium para iniciar la sincronización</translation>
 <translation id="6013050204643758987">Chromium OS es posible gracias al <ph name="BEGIN_LINK_CROS_OSS" />software adicional de código abierto<ph name="END_LINK_CROS_OSS" />, como <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Cerrar</translation>
 <translation id="6055895534982063517">Hay una nueva versión de Chromium disponible, y es más rápida que nunca.</translation>
 <translation id="6063093106622310249">&amp;Abrir en Chromium</translation>
 <translation id="6072279588547424923">Se agregó <ph name="EXTENSION_NAME" /> a Chromium</translation>
@@ -150,7 +137,6 @@
 <translation id="6434250628340475518">Sistema operativo Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium se reiniciará en 1 segundo}other{Chromium se reiniciará en # segundos}}</translation>
 <translation id="6475912303565314141">También controla qué página se muestra al iniciar Chromium.</translation>
-<translation id="6485906693002546646">Estás utilizando <ph name="PROFILE_EMAIL" /> para sincronizar los datos de Chromium. Si quieres actualizar las preferencias de sincronización o utilizar Chromium sin una cuenta de Google, accede a <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Desinstalar Chromium</translation>
 <translation id="6570579332384693436">Para corregir los errores ortográficos, Chromium envía a Google lo que escribes en los campos de texto</translation>
 <translation id="6598877126913850652">Ir a la configuración de notificaciones Chromium</translation>
@@ -158,7 +144,6 @@
 <translation id="6717134281241384636">Tu perfil no se puede utilizar porque proviene de una versión más actualizada de Chromium. Es posible que algunas características no estén disponibles. Especifica un directorio de perfil diferente o utiliza una versión más reciente de Chromium.</translation>
 <translation id="6734080038664603509">Actualizar &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium ya está instalado para todos los usuarios en tu computadora.</translation>
-<translation id="6810143991807788455">Informa tu configuración actual para ayudarnos a mejorar Chromium.</translation>
 <translation id="6847869444787758381">Chromium te informará si tus contraseñas se ven comprometidas</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copiada en Chromium)</translation>
@@ -175,7 +160,6 @@
 <translation id="731644333568559921">Actualizar &amp;Chromium OS</translation>
 <translation id="731795002583552498">Actualizando Chromium</translation>
 <translation id="7318036098707714271">Tu archivo de preferencias está dañado o no es válido. Chromium no puede recuperar tu configuración.</translation>
-<translation id="7331920710658926971">Instala Chromium en el teléfono. Te enviaremos un SMS a ese dispositivo.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nueva ventana</translation>
 <translation id="734373864078049451">Aquí puedes encontrar tus páginas web, favoritos y otros contenidos de Chromium.</translation>
@@ -184,7 +168,7 @@
 <translation id="7449453770951226939"><ph name="PAGE_TITLE" />: Chromium para desarrolladores</translation>
 <translation id="7451052299415159299">Chromium necesita permiso para acceder a tu cámara para este sitio</translation>
 <translation id="7483335560992089831">No es posible instalar la misma versión de Chromium que se está ejecutando. Cierra Chromium y vuelve a intentarlo.</translation>
-<translation id="751093125041325477">Se instalarán automáticamente las futuras versiones de Chromium. Cuando se complete esta descarga, se reiniciará Chromium y listo.</translation>
+<translation id="751093125041325477">Se instalarán automáticamente las futuras versiones de Chromium. Cuando se complete esta descarga, se reiniciará Chromium y estará listo.</translation>
 <translation id="753534427205733210">{0,plural, =1{Se reiniciará Chromium en 1 minuto}other{Se reiniciará Chromium en # minutos}}</translation>
 <translation id="7549178288319965365">Acerca del Sistema operativo Chromium</translation>
 <translation id="7561906087460245826">También borrar los datos de Chromium (<ph name="URL" />)</translation>
@@ -207,16 +191,13 @@
 <translation id="7979877361127045932">Ocultar en el menú de Chromium</translation>
 <translation id="8013436988911883588">Una vez que Chromium tenga acceso, los sitios web podrán solicitarte acceso.</translation>
 <translation id="81770708095080097">Chromium bloqueó este archivo porque es peligroso.</translation>
-<translation id="8222496066431494154">Instala Chromium en el teléfono. Te enviaremos un SMS al número de teléfono de recuperación de la cuenta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Si una imagen no tiene una descripción útil, Chromium intentará proporcionarte una. Para crear descripciones, se envían las imágenes a Google. Puedes desactivar esta opción en la configuración en cualquier momento.</translation>
-<translation id="8269379391216269538">Ayudar a mejorar Chromium</translation>
 <translation id="8290862415967981663">Chromium bloqueó este archivo porque podría ser peligroso.</translation>
 <translation id="8330519371938183845">Accede para sincronizar y personalizar Chromium en todos tus dispositivos</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> usaba Chromium anteriormente</translation>
 <translation id="8417404458978023919">{0,plural, =1{Reinicia Chromium en el transcurso de un día}other{Reinicia Chromium en el transcurso de # días}}</translation>
 <translation id="8453117565092476964">El instalador está dañado o no es válido. Descarga Chromium nuevamente.</translation>
 <translation id="8493179195440786826">Chromium no actualizado</translation>
-<translation id="85843667276690461">Obtener ayuda para usar Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Los autores de Chromium. Todos los derechos reservados.</translation>
 <translation id="8619360774459241877">Iniciando Chromium…</translation>
 <translation id="8621669128220841554">La instalación falló debido a un error no especificado. Descarga Chromium otra vez.</translation>
@@ -234,21 +215,14 @@
 <translation id="8907580949721785412">Chromium está intentando mostrar contraseñas. Para permitirlo, ingresa tu contraseña de Windows.</translation>
 <translation id="8941642502866065432">No se puede actualizar Chromium</translation>
 <translation id="8974095189086268230">Chromium OS es posible gracias a los <ph name="BEGIN_LINK_CROS_OSS" />software adicionales de código abierto<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Alguien accedió anteriormente a Chromium en esta computadora como <ph name="ACCOUNT_EMAIL_LAST" />. Si esta no es tu cuenta, crea un nuevo usuario de Chromium para mantener tu información por separado.
-
-Si accedes de todos modos, se fusionará la información de Chromium, como los favoritos, el historial y otros parámetros de configuración en <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Para que Chromium sea más seguro, inhabilitamos algunas extensiones que no aparecen en <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> y que posiblemente se hayan agregado sin tu conocimiento.</translation>
 <translation id="9022552996538154597">Iniciar sesión en Chromium</translation>
-<translation id="9025992965467895364">Chromium pausó esta página porque usa demasiada memoria.</translation>
-<translation id="9036189287518468038">Selector de aplicaciones de Chromium</translation>
 <translation id="9089354809943900324">Chromium no actualizado</translation>
 <translation id="9093206154853821181">{0,plural, =1{Se reiniciará Chromium en una hora}other{Se reiniciará Chromium en # horas}}</translation>
 <translation id="91086099826398415">Abrir vínculo en una pes&amp;taña nueva de Chromium</translation>
 <translation id="911206726377975832">¿También eliminar datos de navegación?</translation>
 <translation id="9158494823179993217">El administrador del sistema configuró Chromium de manera que abriera un navegador alternativo para acceder a <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Si desconectas <ph name="USERNAME" />, se borrará el historial, los favoritos, la configuración y otros datos de Chromium almacenados en este dispositivo. Los datos almacenados en la cuenta de Google no se borrarán y se pueden administrar en el <ph name="GOOGLE_DASHBOARD_LINK" />Panel de control de Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (tráfico mDNS entrante)</translation>
-<translation id="9197815481970649201">Accediste a Chromium</translation>
 <translation id="93478295209880648">Es posible que Chromium no funcione correctamente porque ya no es compatible con Windows XP ni Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> requiere que leas y aceptes las siguientes Condiciones del servicio antes de usar este dispositivo. Estas condiciones no amplían, modifican ni limitan las Condiciones de Chromium OS.</translation>
 <translation id="985602178874221306">Los creadores de Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_es.xtb b/chrome/app/resources/chromium_strings_es.xtb
index ce769bb..2deca49 100644
--- a/chrome/app/resources/chromium_strings_es.xtb
+++ b/chrome/app/resources/chromium_strings_es.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium quiere exportar tus contraseñas. Escribe tu contraseña de Windows para permitirlo.</translation>
 <translation id="1115445892567829615">Chromium no ha podido sincronizar los datos. Actualiza la frase de contraseña de sincronización.</translation>
 <translation id="113122355610423240">Chromium es tu navegador predeterminado</translation>
-<translation id="1170115874949214249">Instala Chromium en tu teléfono. Te enviaremos un SMS al número de recuperación de la cuenta.</translation>
-<translation id="1174473354587728743">Si compartes un ordenador, ahora puedes configurar Chromium como quieras.</translation>
 <translation id="1185134272377778587">Información de Chromium</translation>
-<translation id="1298199220304005244">Obtener ayuda de Chromium OS</translation>
 <translation id="1396446129537741364">Chromium está intentando mostrar contraseñas.</translation>
 <translation id="1414495520565016063">Has iniciado sesión en Chromium</translation>
 <translation id="151962892725702025">Chromium OS no ha podido sincronizar los datos porque la función de sincronización no está disponible para tu dominio.</translation>
 <translation id="1524282610922162960">Compartir una pestaña de Chromium</translation>
-<translation id="1668054258064581266">Después de eliminar tu cuenta de Chromium, es posible que tengas que volver a cargar las pestañas abiertas para que se aplique el cambio.</translation>
-<translation id="1688750314291223739">Configura la sincronización para guardar las funciones personalizadas de tu navegador en la Web y acceder a ellas desde Chromium en cualquier ordenador.</translation>
 <translation id="1708666629004767631">Hay disponible una nueva versión más segura de Chromium.</translation>
 <translation id="1766096484055239003">Tu administrador pide que reinicies Chromium para aplicar una actualización</translation>
 <translation id="1774152462503052664">Permitir que Chromium se ejecute en segundo plano</translation>
 <translation id="1779356040007214683">Para aumentar la seguridad de Chromium, hemos inhabilitado algunas extensiones que no figuran en <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> y que se podrían haber añadido sin tu conocimiento.</translation>
 <translation id="1808667845054772817">Reinstalar Chromium</translation>
-<translation id="1869480248812203386">Puedes ayudar a que Chromium sea más seguro y más fácil de utilizar enviando a Google automáticamente información sobre posibles incidentes de seguridad.</translation>
 <translation id="1881322772814446296">Vas a iniciar sesión con una cuenta gestionada, lo que significa que proporcionarás a su administrador control sobre tu perfil de Chromium. Tus datos de Chromium como, por ejemplo, tus aplicaciones, tus marcadores, tu historial, tus contraseñas y otras opciones se vincularán de forma permanente a la cuenta <ph name="USER_NAME" />. Podrás eliminar estos datos a través del Panel de control de cuentas de Google, pero no podrás asociarlos a otra cuenta. De forma opcional, puedes crear un nuevo perfil para mantener separados tus datos de Chromium. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Si esta opción está desactivada, puedes iniciar sesión en sitios de Google, como Gmail, sin hacerlo en Chromium</translation>
 <translation id="1929939181775079593">Chromium no responde. ¿Quieres reiniciarlo ahora?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Tu administrador pide que reinicies Chromium para aplicar esta actualización</translation>
 <translation id="2119636228670142020">Información de &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Si compartes un ordenador, tus amigos y familiares pueden navegar de forma independiente y configurar Chromium a su gusto.</translation>
-<translation id="2265088490657775772">descarga Chromium en tu iPhone</translation>
 <translation id="2347108572062610441">Esta extensión ha cambiado la página que se muestra al iniciar Chromium.</translation>
 <translation id="2396765026452590966">La extensión <ph name="EXTENSION_NAME" /> ha cambiado la página que se muestra al iniciar Chromium.</translation>
 <translation id="2483889755041906834">En Chromium</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Para actualizar, es necesario que Chromium deje de estar en uso en este ordenador. Es posible que otros usuarios que hayan iniciado sesión en este ordenador pierdan los cambios que no han guardado.</translation>
 <translation id="2847479871509788944">Desinstalar de Chromium...</translation>
 <translation id="2886012850691518054">Opcional: ayudar a mejorar Chromium enviando automáticamente a Google estadísticas de uso e informes de errores</translation>
-<translation id="2898082584336937987">Instala Chromium en tu teléfono. Te enviaremos un SMS al siguiente número: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Información de &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium está actualizado</translation>
 <translation id="3032787606318309379">Añadiendo a Chromium...</translation>
-<translation id="3046695367536568084">Para usar las aplicaciones, debes iniciar sesión en Chromium. De ese modo, Chromium podrá sincronizar tus aplicaciones, tus marcadores, tu historial, tus contraseñas y otras opciones en distintos dispositivos.</translation>
 <translation id="3068515742935458733">Ayudar a mejorar Chromium enviando informes sobre fallos y <ph name="UMA_LINK" /> a Google</translation>
 <translation id="3103660991484857065">El programa de instalación no ha podido descomprimir el archivo. Vuelve a descargar Chromium.</translation>
 <translation id="3130323860337406239">Chromium está utilizando el micrófono.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Abrir enlace en una ventana de incó&amp;gnito de Chromium</translation>
 <translation id="3190315855212034486">¡Vaya! Se ha producido un fallo en Chromium. ¿Quieres reiniciar el navegador ahora?</translation>
 <translation id="3229526316128325841">Chromium quiere exportar tus contraseñas.</translation>
-<translation id="3256316712990552818">Copiada a Chromium</translation>
 <translation id="3258596308407688501">Chromium no puede leer el directorio de datos ni escribir en él:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">En la última versión puedes encontrar mejoras de seguridad importantes y nuevas funciones.</translation>
 <translation id="421369550622382712">Descubre aplicaciones, juegos, extensiones y temas increíbles para Chromium.</translation>
 <translation id="4216212958613226427">La UI de Chromium se muestra en este idioma</translation>
-<translation id="4222580632002216401">Has iniciado sesión en Chromium. El administrador ha inhabilitado la sincronización.</translation>
 <translation id="4230135487732243613">¿Quieres vincular tus datos de Chromium a esta cuenta?</translation>
 <translation id="4271805377592243930">Obtener ayuda de Chromium</translation>
 <translation id="4285930937574705105">La instalación ha fallado debido a un error no especificado. Si Chromium se está ejecutando, ciérralo y vuelve a intentarlo.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Chromium está en modo de segundo plano.</translation>
 <translation id="4987820182225656817">Los invitados pueden utilizar Chromium sin dejar nada atrás.</translation>
 <translation id="4994636714258228724">Añadirte a Chromium</translation>
-<translation id="5181952534059945058">Esta página utiliza demasiada memoria, así que Chromium ha quitado parte del contenido.</translation>
 <translation id="5277894862589591112">Reinicia Chromium para aplicar los cambios</translation>
 <translation id="5358375970380395591">Vas a iniciar sesión con una cuenta gestionada, lo que significa que proporcionarás a su administrador control sobre tu perfil de Chromium. Tus datos de Chromium como, por ejemplo, tus aplicaciones, tus marcadores, tu historial, tus contraseñas y otras opciones se vincularán de forma permanente a la cuenta <ph name="USER_NAME" />. Podrás eliminar estos datos a través del Panel de control de cuentas de Google, pero no podrás asociarlos a otra cuenta. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Actualizando Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">Reiniciar</translation>
 <translation id="5987687638152509985">Actualiza Chromium para iniciar la sincronización</translation>
 <translation id="6013050204643758987">Chromium OS se ha creado gracias a <ph name="BEGIN_LINK_CROS_OSS" />software de código abierto<ph name="END_LINK_CROS_OSS" /> adicional, como <ph name="BEGIN_LINK_LINUX_OSS" />Linux (beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Cerrar</translation>
 <translation id="6055895534982063517">Hay una nueva versión de Chromium disponible que funciona a una velocidad sin precedentes.</translation>
 <translation id="6063093106622310249">&amp;Abrir en Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> se ha añadido a Chromium</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Sistema Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium se reiniciará en 1 segundo}other{Chromium se reiniciará en # segundos}}</translation>
 <translation id="6475912303565314141">También controla qué página se muestra al iniciar Chromium.</translation>
-<translation id="6485906693002546646">Estás utilizando <ph name="PROFILE_EMAIL" /> para sincronizar tu contenido de Chromium. Para actualizar tus preferencias de sincronización o utilizar Chromium sin una cuenta de Google, accede a <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Desinstalar Chromium</translation>
 <translation id="6570579332384693436">Para corregir errores ortográficos, Chromium envía a Google el texto que escribes en los campos de texto</translation>
 <translation id="6598877126913850652">Ir a los ajustes de notificaciones de Chromium</translation>
@@ -164,7 +150,6 @@
 Es posible que algunas funciones no estén disponibles. Especifica un directorio de perfil diferente o utiliza una versión más actualizada de Chromium.</translation>
 <translation id="6734080038664603509">Actualizar &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium ya está instalado para todos los usuarios en tu ordenador.</translation>
-<translation id="6810143991807788455">Ayuda a mejorar Chromium informando de la configuración actual</translation>
 <translation id="6847869444787758381">Chromium te avisará si tus contraseñas están en riesgo</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copiada en Chromium)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">Tu archivo de preferencias está dañado o no es válido.
 
 Chromium no puede recuperar tu configuración.</translation>
-<translation id="7331920710658926971">Instala Chromium en tu teléfono. Te enviaremos un SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nueva ventana</translation>
 <translation id="734373864078049451">Aquí puedes encontrar tus páginas web, marcadores y otros contenidos de Chromium.</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">Ocultar en el menú de Chromium</translation>
 <translation id="8013436988911883588">Una vez que Chromium tenga acceso, los sitios web podrán solicitarlo también.</translation>
 <translation id="81770708095080097">Este archivo es peligroso, por lo que Chromium lo ha bloqueado.</translation>
-<translation id="8222496066431494154">Instala Chromium en tu teléfono. Te enviaremos un SMS al número de recuperación de la cuenta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Si una imagen no tiene ninguna descripción útil, Chromium intentará proporcionártela. Para crear las descripciones, las imágenes se envían a Google. Puedes desactivar esta opción cuando quieras desde la configuración.</translation>
-<translation id="8269379391216269538">Ayuda a mejorar Chromium</translation>
 <translation id="8290862415967981663">Es posible que este archivo sea peligroso, por lo que Chromium lo ha bloqueado.</translation>
 <translation id="8330519371938183845">Inicia sesión para sincronizar y personalizar Chromium en todos tus dispositivos</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> usaba Chromium anteriormente</translation>
 <translation id="8417404458978023919">{0,plural, =1{Reiniciar Chromium en el transcurso de 1 día}other{Reiniciar Chromium en el transcurso de # días}}</translation>
 <translation id="8453117565092476964">El archivo de instalación está dañado o no es válido. Vuelve a descargar Chromium.</translation>
 <translation id="8493179195440786826">Chromium no está actualizado</translation>
-<translation id="85843667276690461">Obtener ayuda de Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Los creadores de Chromium. Todos los derechos reservados.</translation>
 <translation id="8619360774459241877">Iniciando Chromium...</translation>
 <translation id="8621669128220841554">La instalación ha fallado debido a un error no especificado. Vuelve a descargar Chromium.</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">Chromium está intentando mostrar contraseñas. Para permitirlo, escribe tu contraseña de Windows.</translation>
 <translation id="8941642502866065432">No se puede actualizar Chromium</translation>
 <translation id="8974095189086268230">Chromium OS se ha creado gracias a <ph name="BEGIN_LINK_CROS_OSS" />software libre<ph name="END_LINK_CROS_OSS" /> adicional.</translation>
-<translation id="8985587603644336029">Anteriormente, alguien inició sesión como <ph name="ACCOUNT_EMAIL_LAST" /> en Chromium en este ordenador. Si esta no es tu cuenta, crea un nuevo usuario de Chromium para mantener tu información por separado.
-
-Si decides iniciar sesión de todas formas, se fusionará la información de Chromium, como marcadores, historial y otras opciones con la de <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Para aumentar la seguridad de Chromium, hemos inhabilitado la siguiente extensión que no figura en <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> y que puede haberse añadido sin tu conocimiento.</translation>
 <translation id="9022552996538154597">Iniciar sesión en Chromium</translation>
-<translation id="9025992965467895364">Esta página utiliza demasiada memoria y Chromium la ha pausado.</translation>
-<translation id="9036189287518468038">Menú de aplicaciones de Chromium</translation>
 <translation id="9089354809943900324">Chromium no está actualizado</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium se reiniciará dentro de 1 hora}other{Chromium se reiniciará dentro de # horas}}</translation>
 <translation id="91086099826398415">Abrir enlace en una pes&amp;taña nueva de Chromium</translation>
 <translation id="911206726377975832">¿Quieres borrar también los datos de navegación?</translation>
 <translation id="9158494823179993217">El administrador del sistema ha configurado Chromium para que abra otro navegador al acceder a <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Si desvinculas a <ph name="USERNAME" />, se borrarán tu historial, tus marcadores, tu configuración y otros datos de Chromium almacenados en este dispositivo. No obstante, no se borrarán los datos almacenados en tu cuenta de Google y se podrán administrar en el <ph name="GOOGLE_DASHBOARD_LINK" />Panel de control de Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (tráfico mDNS entrante)</translation>
-<translation id="9197815481970649201">Has iniciado sesión en Chromium</translation>
 <translation id="93478295209880648">Es posible que Chromium no funcione correctamente porque ya no es compatible con Windows XP ni Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> requiere que leas y aceptes las siguientes Condiciones de Servicio para poder utilizar este dispositivo. Estas condiciones no amplían, modifican ni limitan los términos de Chromium OS.</translation>
 <translation id="985602178874221306">Los creadores de Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_et.xtb b/chrome/app/resources/chromium_strings_et.xtb
index 66cc0a0..4b946e3 100644
--- a/chrome/app/resources/chromium_strings_et.xtb
+++ b/chrome/app/resources/chromium_strings_et.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium soovib teie paroole eksportida. Selle lubamiseks sisestage oma Windowsi parool.</translation>
 <translation id="1115445892567829615">Chromium ei saanud teie andmeid sünkroonida. Värskendage oma sünkroonimisparooli.</translation>
 <translation id="113122355610423240">Chromium on teie vaikebrauser</translation>
-<translation id="1170115874949214249">Installige Chromium oma telefoni. Saadame SMS-i teie konto taastamise telefoninumbrile.</translation>
-<translation id="1174473354587728743">Kas jagage arvutit? Saate nüüd seadistada Chromiumi just nii, nagu teile meeldib.</translation>
 <translation id="1185134272377778587">Teave Chromiumi kohta</translation>
-<translation id="1298199220304005244">Hangi abi Chromium OS-i kasutamise kohta</translation>
 <translation id="1396446129537741364">Chromium püüab paroole kuvada.</translation>
 <translation id="1414495520565016063">Olete Chromiumi sisse logitud.</translation>
 <translation id="151962892725702025">Chromium OS ei saanud teie andmeid sünkroonida, sest teie domeenil pole sünkroonimine saadaval.</translation>
 <translation id="1524282610922162960">Chromiumi vahekaardi jagamine</translation>
-<translation id="1668054258064581266">Pärast konto eemaldamist Chromiumist tuleb avatud vahekaardid võib-olla uuesti laadida, et need toimiksid.</translation>
-<translation id="1688750314291223739">Seadistage sünkroonimine, et salvestada isikupärastatud brauserifunktsioonid veebi, misjuhul pääsete igast arvutist Chromiumi kaudu nende juurde.</translation>
 <translation id="1708666629004767631">Saadaval on Chromiumi uus, turvalisem versioon.</translation>
 <translation id="1766096484055239003">Administraator nõuab, et käivitaksite Chromiumi värskenduse rakendamiseks uuesti</translation>
 <translation id="1774152462503052664">Luba Chromiumil taustal töötada</translation>
 <translation id="1779356040007214683">Chromiumi turvalisemaks muutmiseks keelasime mõned laiendused, mida ei leidu veebipoes <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ja mille lisamisest te ei pruugi teadlik olla.</translation>
 <translation id="1808667845054772817">Installi Chromium uuesti</translation>
-<translation id="1869480248812203386">Saate aidata muuta Chromiumi turvalisemaks ja lihtsamalt kasutatavaks, kui teavitate Google'it automaatselt võimalike turvaintsidentide üksikasjadest.</translation>
 <translation id="1881322772814446296">Logite sisse hallatud kontoga ja annate selle administraatorile üle Chromiumi profiili juhtimise. Teie Chromiumi andmed, näiteks rakendused, järjehoidjad, ajalugu, paroolid ja muud seaded seotakse jäädavalt kasutajaga <ph name="USER_NAME" />. Saate need andmed kustutada Google'i kontode juhtpaneeli kaudu, kuid te ei saa neid seostada teise kontoga. Võite olemasolevate Chrome'i andmete eraldi hoidmiseks luua aga uue profiili. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Kui selle välja lülitate, saate Google'i saitidele (nt Gmaili) sisse logida ilma Chromiumisse sisse logimata</translation>
 <translation id="1929939181775079593">Chromium ei reageeri. Kas soovite kohe taaskäivitada?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Administraator palub teil Chromiumi selle värskenduse rakendamiseks uuesti käivitada</translation>
 <translation id="2119636228670142020">Teave &amp;Chromium OS-i kohta</translation>
 <translation id="2241627712206172106">Kui jagate arvutit, saavad sõbrad ja pereliikmed eraldi sirvida ning seadistada Chromiumi just nii, nagu neile meeldib.</translation>
-<translation id="2265088490657775772">hankige oma iPhone'ile Chromium</translation>
 <translation id="2347108572062610441">See laiendus muutis seda, milline leht kuvatakse Chromiumi käivitamisel.</translation>
 <translation id="2396765026452590966">Laiendus „<ph name="EXTENSION_NAME" />” muutis seda, milline leht kuvatakse Chromiumi käivitamisel.</translation>
 <translation id="2483889755041906834">Chromiumis</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Värskendamiseks peab Chromiumi selles arvutis sulgema. Seetõttu võivad teiste sellesse arvutisse sisselogitud kasutajate salvestamata muudatused kaotsi minna.</translation>
 <translation id="2847479871509788944">Chromiumist eemaldamine ...</translation>
 <translation id="2886012850691518054">Valikuline: aidake muuta Chromiumi paremaks, saates Google'ile automaatselt kasutusstatistikat ja krahhiaruandeid.</translation>
-<translation id="2898082584336937987">Installige Chromium oma telefoni. Saadame SMS-i teie telefoni: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Teave &amp;Chromiumi kohta</translation>
 <translation id="2977470724722393594">Chromium on ajakohane</translation>
 <translation id="3032787606318309379">Chromiumi lisamine ...</translation>
-<translation id="3046695367536568084">Rakenduste kasutamiseks peate olema Chromiumi sisse logitud. See võimaldab Chromiumil sünkroonida teie rakendusi, järjehoidjaid, ajalugu, paroole ja muid seadeid erinevates seadmetes.</translation>
 <translation id="3068515742935458733">Aidake Chromiumi täiustada, saates Google'ile krahhiaruandeid ja lingi <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Installeril ei õnnestunud arhiivi lahti pakkida. Laadige Chromium uuesti alla.</translation>
 <translation id="3130323860337406239">Chromium kasutab teie mikrofoni.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Ava link Chromiumi inko&amp;gnito aknas</translation>
 <translation id="3190315855212034486">Chromium jooksis kokku. Kas soovite kohe taaskäivitada?</translation>
 <translation id="3229526316128325841">Chromium soovib teie paroole eksportida.</translation>
-<translation id="3256316712990552818">Kopeeritud Chromiumi</translation>
 <translation id="3258596308407688501">Chromium ei saa andmekataloogi lugeda ega sellesse kirjutada:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Uusimas versioonis on saadaval olulised turvatäiendused ja uued funktsioonid.</translation>
 <translation id="421369550622382712">Avastage Chromiumi jaoks suurepäraseid rakendusi, mänge, laiendusi ja teemasid.</translation>
 <translation id="4216212958613226427">Seda keelt kasutatakse Chromium UI kuvamiseks</translation>
-<translation id="4222580632002216401">Olete nüüd Chromiumi sisse logitud. Administraator on sünkroonimise keelanud.</translation>
 <translation id="4230135487732243613">Kas soovite linkida Chromiumi andmed selle kontoga?</translation>
 <translation id="4271805377592243930">Chromiumi puhul abi hankimine</translation>
 <translation id="4285930937574705105">Installimine ebaõnnestus tundmatu vea tõttu. Kui Chromium praegu töötab, siis sulgege see ja proovige uuesti.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium on taustarežiimis.</translation>
 <translation id="4987820182225656817">Külastajad saavad kasutada Chromiumi jälgi jätmata.</translation>
 <translation id="4994636714258228724">Lisa Chromiumi</translation>
-<translation id="5181952534059945058">Chromium eemaldas osa sisust, kuna leht kasutab liiga palju mälu.</translation>
 <translation id="5277894862589591112">Muudatuste rakendamiseks käivitage Chromium uuesti</translation>
 <translation id="5358375970380395591">Logite sisse hallatud kontoga ja annate selle administraatorile üle Chromiumi profiili juhtimise. Teie Chromiumi andmed, näiteks rakendused, järjehoidjad, ajalugu, paroolid ja muud seaded seotakse jäädavalt kasutajaga <ph name="USER_NAME" />. Saate need andmed kustutada Google'i kontode juhtpaneeli kaudu, kuid te ei saa neid seostada teise kontoga. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromiumi värskendamine (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Taaskäivitamine</translation>
 <translation id="5987687638152509985">Sünkroonimise alustamiseks värskendage Chromiumi</translation>
 <translation id="6013050204643758987">Chromium OS töötab täiendava <ph name="BEGIN_LINK_CROS_OSS" />avatud lähtekoodiga tarkvara<ph name="END_LINK_CROS_OSS" /> toel, nagu ka näiteks <ph name="BEGIN_LINK_LINUX_OSS" />Linux (beetaversioon)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Sulge</translation>
 <translation id="6055895534982063517">Saadaval on Chromiumi uus versioon ja see on kiirem kui kunagi varem.</translation>
 <translation id="6063093106622310249">&amp;Ava Chromiumis</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> on Chromiumi lisatud</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium OS-i süsteem</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium taaskäivitub 1 sekundi pärast}other{Chromium taaskäivitub # sekundi pärast}}</translation>
 <translation id="6475912303565314141">Lisaks juhib see seda, mis leht kuvatakse Chromiumi käivitamisel.</translation>
-<translation id="6485906693002546646">Kasutate Chromiumi kraami sünkroonimiseks kontot <ph name="PROFILE_EMAIL" />. Sünkroonimiseelistuste värskendamiseks või Chromiumi kasutamiseks ilma Google'i kontota avage <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Desinstalli Chromium</translation>
 <translation id="6570579332384693436">Õigekirjavigade parandamiseks saadab Chromium teie tekstiväljadel sisestatud teksti Google'ile</translation>
 <translation id="6598877126913850652">Ava Chromiumi märguandeseaded</translation>
@@ -162,7 +148,6 @@
 On võimalik, et mõni funktsioon ei ole saadaval. Määrake muu profiilikataloog või kasutage Chromiumi uuemat versiooni.</translation>
 <translation id="6734080038664603509">Värskenda &amp;Chromiumi</translation>
 <translation id="6734291798041940871">Chromium on arvutisse kõigi kasutajate jaoks juba installitud.</translation>
-<translation id="6810143991807788455">Aidake muuta Chromiumi paremaks, teavitades meid praegustest seadetest</translation>
 <translation id="6847869444787758381">Chromium annab teile teada, kui teie paroolid ohtu satuvad</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (kopeeritud Chromiumi)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Teie eelistuste fail on rikutud või kehtetu.
 
 Chromium ei saa teie seadeid taastada.</translation>
-<translation id="7331920710658926971">Installige Chromium oma telefoni. Saadame SMS-i teie telefoni.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Uus aken</translation>
 <translation id="734373864078049451">Siin asuvad teie veeb, järjehoidjad ja ülejäänud Chromiumi kraam.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Chromiumi menüüs peitmine</translation>
 <translation id="8013436988911883588">Kui annate Chromiumile juurdepääsu, saavad veebisaidid küsida teilt juurdepääsuluba.</translation>
 <translation id="81770708095080097">Chromium blokeeris faili, kuna see on ohtlik.</translation>
-<translation id="8222496066431494154">Installige Chromium oma telefoni. Saadame SMS-i teie konto taastamise telefoninumbrile: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8248265253516264921">Kui pildil puudub kasulik kirjeldus, üritab Chromium selle ise luua. Kirjelduste loomiseks saadetakse pildid Google'ile. Võite selle seadetes igal ajal välja lülitada.</translation>
-<translation id="8269379391216269538">Aidake muuta Chromiumi paremaks</translation>
 <translation id="8290862415967981663">Chromium blokeeris faili, kuna see võib olla ohtlik.</translation>
 <translation id="8330519371938183845">Logige sisse, et Chromium kõigis oma seadmetes sünkroonida ja isikupärastada</translation>
 <translation id="8340674089072921962">Kasutaja <ph name="USER_EMAIL_ADDRESS" /> kasutas varem Chromiumi</translation>
 <translation id="8417404458978023919">{0,plural, =1{Käivitage Chromium uuesti päeva jooksul}other{Käivitage Chromium uuesti # päeva jooksul}}</translation>
 <translation id="8453117565092476964">Installeri arhiiv on rikutud või kehtetu. Laadige Chromium uuesti alla.</translation>
 <translation id="8493179195440786826">Chromium on aegunud</translation>
-<translation id="85843667276690461">Hangi abi Chromiumi kasutamise kohta</translation>
 <translation id="8586442755830160949">Autoriõigus <ph name="YEAR" /> The Chromium Authors. Kõik õigused on kaitstud.</translation>
 <translation id="8619360774459241877">Chromiumi käivitamine …</translation>
 <translation id="8621669128220841554">Installimine ebaõnnestus tundmatu vea tõttu. Laadige Chromium uuesti alla.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium proovib kuvada paroole. Selle lubamiseks sisestage Windowsi parool.</translation>
 <translation id="8941642502866065432">Chromiumi ei saa värskendada</translation>
 <translation id="8974095189086268230">Chromium OS-i aluseks on täiendav <ph name="BEGIN_LINK_CROS_OSS" />avatud lähtekoodiga tarkvara<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Keegi on varem selles arvutis Chromiumi sisse loginud kasutajana <ph name="ACCOUNT_EMAIL_LAST" />. Kui see pole teie konto, looge uus Chromiumi kasutaja, et oma teave eraldi hoida.
-
-Kui logite siiski sisse, liidetakse Chromiumi teave, nagu järjehoidjad, ajalugu ja muud seaded, kontoga <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Chromiumi turvalisemaks muutmiseks keelasime järgmise laienduse, mida ei leidu veebipoes <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ja mis võidi lisada teie teadmata.</translation>
 <translation id="9022552996538154597">Logige Chromiumi sisse</translation>
-<translation id="9025992965467895364">Chromium peatas selle lehe, kuna see kasutab liiga palju mälu.</translation>
-<translation id="9036189287518468038">Chromiumi rakenduste käiviti</translation>
 <translation id="9089354809943900324">Chromium on aegunud</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium käivitatakse uuesti tunni aja pärast}other{Chromium käivitatakse uuesti # tunni pärast}}</translation>
 <translation id="91086099826398415">Ava link Chromiumi uuel &amp;vahekaardil</translation>
 <translation id="911206726377975832">Kas kustutada ka teie sirvimisandmed?</translation>
 <translation id="9158494823179993217">Teie süsteemiadministraator on konfigureerinud Chromiumi avama alternatiivset brauserit, et saada juurdepääs lehele <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Kui katkestate ühenduse kasutajaga <ph name="USERNAME" />, siis kustutatakse sellesse seadmesse salvestatud ajalugu, järjehoidjad, seaded ja muud Chromiumi andmed. Google'i kontole salvestatud andmeid ei kustutata ja neid saab hallata <ph name="GOOGLE_DASHBOARD_LINK" />Google'i juhtpaneelil<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Olete nüüd Chromiumi sisse logitud</translation>
 <translation id="93478295209880648">Chromium ei pruugi õigesti töötada, kuna seda ei toetata enam Windows XP-s ega Windows Vistas</translation>
 <translation id="95514773681268843">Domeen <ph name="DOMAIN" /> nõuab, et loete enne selle seadme kasutamist läbi järgmised teenusetingimused ja nõustute nendega. Need tingimused ei laienda, muuda ega piira Chromium OS-i tingimusi.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_fa.xtb b/chrome/app/resources/chromium_strings_fa.xtb
index ca50755..3da37a2 100644
--- a/chrome/app/resources/chromium_strings_fa.xtb
+++ b/chrome/app/resources/chromium_strings_fa.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">‏Chromium می‌خواهد گذرواژه‌های شما را صادر کند. برای اجازه به این کار، گذرواژه Windows خود را تایپ کنید.</translation>
 <translation id="1115445892567829615">‏Chromium قادر به همگام‌سازی داده‌های شما نبود. لطفاً رمز عبارتی همگام‌سازی خود را به‌روز کنید.</translation>
 <translation id="113122355610423240">‏Chromium مرورگر پیش‌فرضتان است</translation>
-<translation id="1170115874949214249">‏Chromium را در تلفنتان نصب کنید. پیامکی به شماره تلفن بازیابی حساب شما ارسال خواهیم کرد.</translation>
-<translation id="1174473354587728743">‏این رایانه را به اشتراک می‌گذارید؟ اکنون می‌توانید Chromium را آنطور که می‌خواهید تنظیم کنید.</translation>
 <translation id="1185134272377778587">‏درباره Chromium</translation>
-<translation id="1298199220304005244">‏دریافت راهنمایی برای استفاده از سیستم عامل Chromium </translation>
 <translation id="1396446129537741364">‏Chromium می‌خواهد گذرواژه‌ها را نشان دهد.</translation>
 <translation id="1414495520565016063">‏شما وارد سیستم Chromium شدید!</translation>
 <translation id="151962892725702025">‏سیستم‌عامل Chromium قادر به همگام‌سازی داده‌های شما نبود زیرا همگام‌سازی برای دامنه شما قابل دسترسی نیست.</translation>
 <translation id="1524282610922162960">‏هم‌رسانی برگه Chromium</translation>
-<translation id="1668054258064581266">‏پس از حذف حسابتان از Chromium، ممکن است لازم باشد برای اعمال تغییرات، برگه‌های بازتان را تازه‌سازی کنید.</translation>
-<translation id="1688750314291223739">‏برای ذخیره ویژگی‌های مرورگر سفارشی شده خود در وب و دسترسی به آن‌ها از Chromium از هر رایانه دیگری، همگام‌سازی را راه‌اندازی کنید.</translation>
 <translation id="1708666629004767631">‏نسخه جدید و امن‌تری از Chromium موجود است.</translation>
 <translation id="1766096484055239003">‏سرپرست سیستم لازم می‌داند برای اعمال به‌روزرسانی، Chromium را راه‌اندازی مجدد کنید</translation>
 <translation id="1774152462503052664">‏اجازه به Chromium برای اجرا در پس‌زمینه</translation>
 <translation id="1779356040007214683">‏برای ایمن‌تر کردن Chromium، برخی از افزونه‌هایی را که در <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> فهرست شده‌اند و ممکن است بدون اطلاع شما اضافه شده باشند، غیرفعال کردیم.</translation>
 <translation id="1808667845054772817">‏نصب مجدد Chromium</translation>
-<translation id="1869480248812203386">‏می‌توانید با گزارش خودکار جزئیات حوادث امنیتی احتمالی به Google به ایمن‌تر شدن Chromium و استفاده آسان‌تر از آن کمک کنید.</translation>
 <translation id="1881322772814446296">‏شما با حساب مدیریت‌شده وارد سیستم می‌شوید و به سرپرست آن اجازه کنترل بر نمایه Chromium خود را می‌دهید. داده‌های Chromium شما شامل برنامه‌ها، نشانک‌ها، سابقه، گذرواژه‌ها و سایر تنظیمات برای همیشه به <ph name="USER_NAME" /> مرتبط خواهد شد. می‌توانید این داده‌ها را از طریق داشبورد حساب‌های Google حذف کنید اما نمی‌توانید این داده‌ها را به حساب دیگری مرتبط سازید. در صورت تمایل برای ذخیره داده‌های Chromium موجود به صورت جداگانه می‌توانید نمایه جدیدی ایجاد کنید. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">‏با خاموش کردن این گزینه، می‌توانید بدون ورود به سیستم Chromium به سیستم سایت‌های Google مانند Gmail وارد شوید</translation>
 <translation id="1929939181775079593">‏Chromium پاسخ نمی‌دهد. مجدداً راه‌اندازی شود؟</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">‏سرپرست سیستم از شما می‌خواهد برای اعمال این به‌روزرسانی، Chromium را راه‌اندازی مجدد کنید</translation>
 <translation id="2119636228670142020">‏درباره &amp;سیستم عامل Chromium </translation>
 <translation id="2241627712206172106">‏اگر رایانه‌ای را به صورت مشترک استفاده می‌کنید، دوستان و خانواده می‌توانند به صورت جداگانه مرور کنند و Chromium را به صورتی که مایلند تنظیم کنند.</translation>
-<translation id="2265088490657775772">‏نصب Chromium در iPhone</translation>
 <translation id="2347108572062610441">‏این افزونه، صفحه‌ای را تغییر داده است که هنگام راه‌اندازی Chromium نشان داده می‌شود.</translation>
 <translation id="2396765026452590966">‏افزونه «<ph name="EXTENSION_NAME" />»، صفحه‌ای را تغییر داده است که هنگام راه‌اندازی Chromium نشان داده می‌شود.</translation>
 <translation id="2483889755041906834">‏در Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">‏برای به‌روزرسانی، Chromium باید در این رایانه متوقف شود. شاید با این کار، تغییرات ذخیره‌نشده کاربرانی که در این رایانه به سیستم وارد شده‌اند، از دست برود.</translation>
 <translation id="2847479871509788944">‏حذف از Chromium...</translation>
 <translation id="2886012850691518054">‏اختیاری: با ارسال خودکار آمار کاربرد و گزارش‌های خرابی برنامه به Chromium، به پیشرفت Chrome کمک کنید.</translation>
-<translation id="2898082584336937987">‏Chromium را در تلفنتان نصب کنید. پیامکی به تلفن شما ارسال خواهیم کرد: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">‏درباره &amp;Chromium</translation>
 <translation id="2977470724722393594">‏Chromium به‌روز است</translation>
 <translation id="3032787606318309379">‏افزودن به Chromium…</translation>
-<translation id="3046695367536568084">‏برای استفاده از برنامه‌ها باید وارد Chromium شده باشید. این به Chromium اجازه می‌دهد تا برنامه‌ها، نشانک‌ها، سابقه، گذرواژه‌های شما و سایر تنظیمات را در دستگاه‌ها همگام‌سازی کند.</translation>
 <translation id="3068515742935458733">‏با ارسال گزارش‌های خرابی و <ph name="UMA_LINK" /> به Google، به بهبود Google کمک کنید</translation>
 <translation id="3103660991484857065">‏نصب‌کننده در خارج کردن بایگانی از حالت فشرده ناموفق بود. لطفاً دوباره Chromium را بارگیری کنید.</translation>
 <translation id="3130323860337406239">‏Chromium درحال استفاده از میکروفون شما است.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">‏باز کردن پیوند در پنجره &amp;ناشناس Chromium</translation>
 <translation id="3190315855212034486">‏اوه! Chromium خراب شده است. دوباره راه‌اندازی شود؟</translation>
 <translation id="3229526316128325841">‏Chromium می‌خواهد گذرواژه‌های شما را صادر کند.</translation>
-<translation id="3256316712990552818">‏به Chromium کپی شد</translation>
 <translation id="3258596308407688501">‏Chromium نمی‌تواند مسیر داده‌های خود را بخواند یا در آن بنویسد:
 <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">‏کلیدهای Google API وجود ندارند. برخی از عملکردهای Chromium از کار خواهند افتاد.</translation>
@@ -83,7 +73,6 @@
 <translation id="4050175100176540509">بهبودهای امنیتی مهم و ویژگی‌های جدید در جدیدترین نسخه در دسترس است.</translation>
 <translation id="421369550622382712">‏برنامه‌ها، بازی‌ها، افزونه‌ها و طرح‌های زمینه Chromium را کشف کنید.</translation>
 <translation id="4216212958613226427">‏از این زبان برای نمایش رابط کاربری Chromium استفاده می‌شود</translation>
-<translation id="4222580632002216401">‏اکنون وارد Chromium شدید! سرپرست سیستم شما همگام‌سازی را از کار انداخته است.</translation>
 <translation id="4230135487732243613">‏داده‌های Chromium به این حساب مرتبط شود؟</translation>
 <translation id="4271805377592243930">‏دریافت کمک برای Chromium</translation>
 <translation id="4285930937574705105">‏به دلیل خطای نامشخص نصب ناموفق بود. اگر Chromium در حال اجرا است، لطفاً آن را ببندید و دوباره سعی کنید.</translation>
@@ -106,7 +95,6 @@
 <translation id="4943838377383847465">‏Chromium در حالت پس‌زمینه است.</translation>
 <translation id="4987820182225656817">‏مهمان‌ها می توانند از Chromium استفاده کنند بدون این‌که اثری از خود به جا بگذارند.</translation>
 <translation id="4994636714258228724">‏افرودن خودتان به Chromium</translation>
-<translation id="5181952534059945058">‏این صفحه حافظه خیلی زیادی استفاده می‌کند، به‌همین‌دلیل Chromium برخی از محتوا را پاک کرد.</translation>
 <translation id="5277894862589591112">‏برای اعمال تغییراتتان، Chromium را راه‌اندازی مجدد کنید</translation>
 <translation id="5358375970380395591">‏شما با حساب مدیریت‌شده وارد سیستم می‌شوید و به سرپرست آن اجازه کنترل بر نمایه Chromium خود را می‌دهید. داده‌های Chromium شما شامل برنامه‌ها، نشانک‌ها، سابقه، گذرواژه‌ها و سایر تنظیمات برای همیشه به <ph name="USER_NAME" /> مرتبط خواهد شد. می‌توانید این داده‌ها را از طریق داشبورد حساب‌های Google حذف کنید اما نمی‌توانید این داده‌ها را به حساب دیگری مرتبط سازید. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">‏درحال به‌روزرسانی Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -129,7 +117,6 @@
 <translation id="5895138241574237353">راه‌اندازی مجدد</translation>
 <translation id="5987687638152509985">‏به‌روزرسانی Chromium برای شروع همگام‌سازی</translation>
 <translation id="6013050204643758987">‏ساخت سیستم‌عامل Chromium به‌کمک <ph name="BEGIN_LINK_CROS_OSS" />نرم‌افزار منبع آزاد<ph name="END_LINK_CROS_OSS" /> دیگری، مثل <ph name="BEGIN_LINK_LINUX_OSS" />Linux (بتا)<ph name="END_LINK_LINUX_OSS" />، امکان‌پذیر شده است.</translation>
-<translation id="6040143037577758943">بستن</translation>
 <translation id="6055895534982063517">‏نسخه جدیدی از Chromium وجود دارد که سریع‌تر از همیشه است.</translation>
 <translation id="6063093106622310249">‏&amp;باز کردن در Chromium</translation>
 <translation id="6072279588547424923">‏<ph name="EXTENSION_NAME" /> به Chromium اضافه شد</translation>
@@ -151,7 +138,6 @@
 <translation id="6434250628340475518">‏سیستم سیستم‌عامل Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{‏Chromium بعد از ۱ ثانیه بازراه‌اندازی می‌شود}one{‏Chromium بعد از # ثانیه بازراه‌اندازی می‌شود}other{‏Chromium بعد از # ثانیه بازراه‌اندازی می‌شود}}</translation>
 <translation id="6475912303565314141">‏این برنامه همچنین صفحه‌ای را که هنگام راه‌اندازی Chromium نشان داده می‌شود، کنترل می‌کند.</translation>
-<translation id="6485906693002546646">‏شما از <ph name="PROFILE_EMAIL" /> برای همگام‌سازی موارد Chromium خودتان استفاده می‌کنید. برای به‌روزرسانی تنظیمات ترجیحی همگام‌سازی‌تان یا استفاده از Chromium بدون حساب Google، به <ph name="SETTINGS_LINK" /> مراجعه کنید.</translation>
 <translation id="6510925080656968729">‏حذف نصب Chromium </translation>
 <translation id="6570579332384693436">‏برای رفع خطاهای املائی، Chromium نوشتاری را که در فیلد نوشتار تایپ می‌کنید، برای Google ارسال می‌کند</translation>
 <translation id="6598877126913850652">‏رفتن به تنظیمات اعلان Chromium</translation>
@@ -161,7 +147,6 @@
 برخی از ویژگی‌ها ممکن است موجود نباشند. لطفاً یک فهرست راهنمای نمایه دیگری را مشخص کنید یا از نسخه جدیدتری از Chromium استفاده کنید.</translation>
 <translation id="6734080038664603509">‏به‌روزرسانی &amp;Chromium</translation>
 <translation id="6734291798041940871">‏Chromium از قبل برای همه کاربران این رایانه نصب شده است.</translation>
-<translation id="6810143991807788455">‏با گزارش تنظیمات کنونی، به بهتر شدن Chromium کمک کنید</translation>
 <translation id="6847869444787758381">‏Chromium می‌تواند، اگر گذرواژه‌هایتان در معرض خطر باشد، مطلعتان کند</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">‏Google Pay (در Chromium کپی شد)</translation>
@@ -179,7 +164,6 @@
 <translation id="731795002583552498">‏در حال به‌روزرسانی Chromium</translation>
 <translation id="7318036098707714271">‏فایل تنظیمات برگزیده شما خراب یا نامعتبر است. 
 Chromium قادر به بازیابی تنظیمات شما نیست.</translation>
-<translation id="7331920710658926971">‏Chromium را در تلفنتان نصب کنید. پیامکی به تلفن شما ارسال خواهیم کرد.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">پنجرهٔ جدید</translation>
 <translation id="734373864078049451">‏وب، نشانک‌ها و موارد دیگر Chromium شما در اینجا هستند.</translation>
@@ -211,16 +195,13 @@
 <translation id="7979877361127045932">‏پنهان در منوی Chromium</translation>
 <translation id="8013436988911883588">‏وقتی Chromium دسترسی داشته باشد، وب‌سایت‌ها می‌توانند مجوز دسترسی درخواست کنند.</translation>
 <translation id="81770708095080097">‏این فایل خطرناک است، بنابراین Chromium آن را مسدود کرده است.</translation>
-<translation id="8222496066431494154">‏Chromium را در تلفنتان نصب کنید. پیامکی به شماره تلفن بازیابی حساب شما ارسال خواهیم کرد: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">‏اگر تصویری توضیح مفیدی نداشته باشد، Chromium توضیحی برای شما ارائه خواهد کرد. برای ایجاد توضیحات، تصاویر به Google ارسال می‌شود. هروقت خواستید می‌توانید این گزینه را در تنظیمات خاموش کنید.</translation>
-<translation id="8269379391216269538">‏به بهبود Chromium کمک کنید</translation>
 <translation id="8290862415967981663">‏این فایل ممکن است خطرناک باشد، بنابراین Chromium آن را مسدود کرده است.</translation>
 <translation id="8330519371938183845">‏برای همگام‌سازی و شخصی‌سازی Chromium در همه دستگاه‌هایتان، به سیستم وارد شوید</translation>
 <translation id="8340674089072921962">‏<ph name="USER_EMAIL_ADDRESS" /> قبلاً از Chromium استفاده می‌کرد</translation>
 <translation id="8417404458978023919">{0,plural, =1{‏Chromium را ظرف یک روز راه‌اندازی مجدد کنید}one{‏Chromium را ظرف # روز راه‌اندازی مجدد کنید}other{‏Chromium را ظرف # روز راه‌اندازی مجدد کنید}}</translation>
 <translation id="8453117565092476964">‏بایگانی نصب‌کننده خراب یا نامعتبر است. لطفاً Chromium را دوباره را بارگیری کنید.</translation>
 <translation id="8493179195440786826">‏نسخه Chromium قدیمی است</translation>
-<translation id="85843667276690461">‏دریافت راهنمایی برای استفاده از Chromium </translation>
 <translation id="8586442755830160949">‏حق نسخه‌برداری <ph name="YEAR" /> نویسندگان Chromium. کلیه حقوق محفوظ است.</translation>
 <translation id="8619360774459241877">‏درحال راه‌اندازی Chromium…</translation>
 <translation id="8621669128220841554">‏به دلیل خطای نامشخص، نصب ناموفق بود. لطفاً دوباره Chromium را بارگیری کنید.</translation>
@@ -238,21 +219,14 @@
 <translation id="8907580949721785412">‏Chromium در حال تلاش برای نشان دادن گذرواژه‌هاست. برای اجازه به این کار، گذرواژه Windows خود را تایپ کنید.</translation>
 <translation id="8941642502866065432">‏به‌روزرسانی Chromium امکان‌پذیر نیست</translation>
 <translation id="8974095189086268230">‏سیستم عامل Chromium با یک <ph name="BEGIN_LINK_CROS_OSS" />نرم‌افزار منبع آزاد<ph name="END_LINK_CROS_OSS" /> دیگر امکان‌پذیر است.</translation>
-<translation id="8985587603644336029">‏شخصی قبلاً بعنوان <ph name="ACCOUNT_EMAIL_LAST" /> وارد Chromium در این رایانه شده است. اگر این حساب شما نیست، کاربر جدید Chromium را ایجاد کنید تا اطلاعات خود را جدا نگهدارید.
-
-ورود به سیستم به هر حال اطلاعات Chromium مانند نشانک‌ها، سابقه، و سایر تنظیمات را در <ph name="ACCOUNT_EMAIL_NEW" /> ادغام می‌کند.</translation>
 <translation id="9019929317751753759">‏برای ایمن‌تر کردن Chromium، افزونه زیر را که در <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> فهرست نشده است و ممکن است بدون اطلاع شما اضافه شده باشد، غیرفعال کردیم.</translation>
 <translation id="9022552996538154597">‏ورود به سیستم Chromium</translation>
-<translation id="9025992965467895364">‏این صفحه از حافظه بسیار زیادی استفاده می‌کند، بنابراین Chromium موقتاً آن را متوقف کرد.</translation>
-<translation id="9036189287518468038">‏راه‌انداز برنامه Chromium</translation>
 <translation id="9089354809943900324">‏نسخه Chromium قدیمی است</translation>
 <translation id="9093206154853821181">{0,plural, =1{‏Chromium یک ساعت دیگر راه‌اندازی مجدد می‌شود}one{‏Chromium # ساعت دیگر راه‌اندازی مجدد می‌شود}other{‏Chromium # ساعت دیگر راه‌اندازی مجدد می‌شود}}</translation>
 <translation id="91086099826398415">‏باز کردن پیوند در &amp;برگه جدید Chromium</translation>
 <translation id="911206726377975832">داده‌های مرور شما نیز حذف شود؟</translation>
 <translation id="9158494823179993217">‏سرپرست سیستم شما برای باز شدن مرورگر جایگزین برای دسترسی به <ph name="TARGET_URL_HOSTNAME" />، Chromium را پیکربندی کرده است.</translation>
-<translation id="918373042641772655">‏قطع اتصال <ph name="USERNAME" />، سابقه، نشانک‌ها، تنظیمات و سایر داده‌های Chromium شما را که در این دستگاه ذخیره شدند، پاک می‌کند. داده‌های ذخیره شده در حساب Google شما پاک نمی‌شود و می‌توان آنها را در <ph name="GOOGLE_DASHBOARD_LINK" />داشبورد Google<ph name="END_GOOGLE_DASHBOARD_LINK" /> مدیریت کرد.</translation>
 <translation id="9190841055450128916">‏Chromium‏ (mDNS ورودی)</translation>
-<translation id="9197815481970649201">‏اکنون در سیستم Chromium هستید</translation>
 <translation id="93478295209880648">‏Chromium ممکن است درست کار نکند زیرا دیگر در Windows XP یا Windows Vista پشتیبانی نمی‌شود</translation>
 <translation id="95514773681268843">‏<ph name="DOMAIN" /> از شما می‌خواهد قبل از استفاده از دستگاه، شرایط خدمات زیر را خوانده و بپذیرید. این شرایط بسط داده نمی‌شوند، اصلاح نمی‌شوند و شرایط سیستم عامل Chromium را محدود نمی‌کنند.</translation>
 <translation id="985602178874221306">Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_fi.xtb b/chrome/app/resources/chromium_strings_fi.xtb
index de53e58..446b417 100644
--- a/chrome/app/resources/chromium_strings_fi.xtb
+++ b/chrome/app/resources/chromium_strings_fi.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium yrittää viedä salasanojasi tiedostoon. Salli tämä kirjoittamalla Windows-salasanasi.</translation>
 <translation id="1115445892567829615">Chromium ei voinut synkronoida tietoja. Päivitä synkronoinnin tunnuslause.</translation>
 <translation id="113122355610423240">Chromium on oletusselaimesi.</translation>
-<translation id="1170115874949214249">Asenna Chromium puhelimellesi. Lähetämme tekstiviestin palauttamisen puhelinnumeroosi.</translation>
-<translation id="1174473354587728743">Jaatko tietokoneen jonkun kanssa? Nyt voit määrittää Chromiumin juuri sellaiseksi kuin haluat.</translation>
 <translation id="1185134272377778587">Tietoja Chromiumista</translation>
-<translation id="1298199220304005244">Hanki apua Chromium-käyttöjärjestelmän käytössä</translation>
 <translation id="1396446129537741364">Chromium yrittää näyttää salasanat.</translation>
 <translation id="1414495520565016063">Olet kirjautunut Chromiumiin!</translation>
 <translation id="151962892725702025">Chromium-käyttöjärjestelmä ei voi synkronoida tietoja, koska synkronointi ei ole käytettävissä verkkotunnuksessasi.</translation>
 <translation id="1524282610922162960">Jaa Chromium-välilehti</translation>
-<translation id="1668054258064581266">Kun olet poistanut tilisi Chromiumista, sinun on ehkä avattava avoinna olleet välilehdet uudelleen, jotta muutos tulee voimaan.</translation>
-<translation id="1688750314291223739">Määrittämällä synkronoinnin voit tallentaa selaimesi tiedot verkkoon ja käyttää niitä minkä tahansa tietokoneen Chromiumilla.</translation>
 <translation id="1708666629004767631">Chromiumista on saatavilla uusi, turvallisempi versio.</translation>
 <translation id="1766096484055239003">Ylläpitäjä vaatii Chromiumin uudelleenkäynnistystä, jotta päivitys voidaan ottaa käyttöön.</translation>
 <translation id="1774152462503052664">Jätä Chromium käyntiin taustalle</translation>
 <translation id="1779356040007214683">Paransimme Chromiumin turvallisuutta poistamalla käytöstä sovelluksia, joita ei löydy kohteesta <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ja jotka on voitu lisätä ilman lupaasi.</translation>
 <translation id="1808667845054772817">Asenna Chromium uudelleen</translation>
-<translation id="1869480248812203386">Voit auttaa meitä parantamaan Chromiumin turvallisuutta ja tekemään siitä helppokäyttöisemmän ilmoittamalla mahdollisista turvallisuusongelmista Googlelle automaattisesti.</translation>
 <translation id="1881322772814446296">Olet kirjautumassa sisään hallinnoidulla tilillä ja antamassa tilin järjestelmänvalvojalle oikeuden hallita Chromium-profiiliasi. Chromium-tietosi, kuten sovelluksesi, kirjanmerkkisi, historiasi, salasanasi ja muut asetuksesi, yhdistetään pysyvästi käyttäjätiliin <ph name="USER_NAME" />. Voit poistaa nämä tiedot Google-tilien Hallintapaneelissa, mutta et voi liittää tietoja toiseen tiliin. Halutessasi voit luoda uuden profiilin, jolloin aiemmat Chromium-tietosi pysyvät erillään. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Poistamalla tämän käytöstä voit kirjautua Google-sivustoille, esim. Gmailiin, kirjautumatta Chromiumiin.</translation>
 <translation id="1929939181775079593">Chromium ei vastaa. Käynnistetäänkö uudelleen?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Ylläpitäjä pyytää Chromiumin uudelleenkäynnistystä, jotta tämä päivitys voidaan ottaa käyttöön.</translation>
 <translation id="2119636228670142020">Tietoja &amp;Chromium-käyttöjärjestelmästä</translation>
 <translation id="2241627712206172106">Jos käytät jaettua tietokonetta, kaverisi ja perheenjäsenesi voivat selata verkkoa omista profiileistaan käsin ja muokata Chromiumista juuri itselleen sopivan.</translation>
-<translation id="2265088490657775772">lataa Chromium iPhoneen</translation>
 <translation id="2347108572062610441">Tämä laajennus on vaihtanut Chromiumin aloitussivun.</translation>
 <translation id="2396765026452590966">Laajennus <ph name="EXTENSION_NAME" /> on vaihtanut Chromiumin aloitussivun.</translation>
 <translation id="2483889755041906834">Chromiumissa</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Päivittämistä varten Chromium on suljettava tällä tietokoneella. Tämän takia muut tietokoneelle kirjautuneet voivat menettää tallentamattomat muutokset.</translation>
 <translation id="2847479871509788944">Poista Chromiumista…</translation>
 <translation id="2886012850691518054">Valinnainen: Lähetä Googlelle automaattisesti käyttötilastoja ja virheraportteja Chromiumin kehittämiseksi.</translation>
-<translation id="2898082584336937987">Asenna Chromium puhelimellesi. Lähetämme tekstiviestin puhelimeesi: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="2910007522516064972">Tietoja &amp;Chromiumista</translation>
 <translation id="2977470724722393594">Chromium on ajan tasalla.</translation>
 <translation id="3032787606318309379">Lisätään Chromiumiin...</translation>
-<translation id="3046695367536568084">Sovellusten käyttö edellyttää kirjautumista Chromiumiin. Näin Chromium voi synkronoida sovelluksesi, kirjanmerkkisi, historiasi, salasanasi ja muut asetuksesi eri laitteiden välillä.</translation>
 <translation id="3068515742935458733">Auta parantamaan Chromiumia lähettämällä kaatumisilmoitukset ja <ph name="UMA_LINK" /> Googlelle</translation>
 <translation id="3103660991484857065">Asennusohjelma ei pystynyt purkamaan arkistotiedostoa. Lataa Chromium uudelleen.</translation>
 <translation id="3130323860337406239">Chromium käyttää mikrofoniasi.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Avaa linkki Chromiumin inco&amp;gnito-ikkunassa</translation>
 <translation id="3190315855212034486">Hups! Chromium kaatui. Käynnistetäänkö uudelleen?</translation>
 <translation id="3229526316128325841">Chromium yrittää viedä salasanojasi tiedostoon.</translation>
-<translation id="3256316712990552818">Kopioitiin Chromiumiin.</translation>
 <translation id="3258596308407688501">Chromium ei voi lukea tietohakemistoaan ja kirjoittaa siihen:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Uusimmassa versiossa on käytettävissä tärkeitä turvallisuusparannuksia ja uusia ominaisuuksia.</translation>
 <translation id="421369550622382712">Löydät hienoja sovelluksia, pelejä, laajennuksia ja teemoja Chromiumille.</translation>
 <translation id="4216212958613226427">Chromium-käyttöliittymä näytetään tällä kielellä</translation>
-<translation id="4222580632002216401">Olet nyt kirjautunut sisään Chromiumiin! Järjestelmänvalvoja on poistanut synkronoinnin käytöstä.</translation>
 <translation id="4230135487732243613">Linkitetäänkö Chromium-tiedot tähän tiliin?</translation>
 <translation id="4271805377592243930">Ohjeita Chromiumin käyttöön</translation>
 <translation id="4285930937574705105">Asennus epäonnistui tuntemattoman virheen takia. Jos Chromium on tällä hetkellä käynnissä, sulje se ja yritä uudelleen.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium on käynnissä taustalla</translation>
 <translation id="4987820182225656817">Vierailijat voivat käyttää Chromiumia jälkiä jättämättä.</translation>
 <translation id="4994636714258228724">Lisää itsesi Chromiumiin</translation>
-<translation id="5181952534059945058">Tämä sivu käyttää liikaa muistia, joten Chromium poisti osan sisällöstä.</translation>
 <translation id="5277894862589591112">Ota muutokset käyttöön käynnistämällä Chromium uudelleen</translation>
 <translation id="5358375970380395591">Olet kirjautumassa sisään hallinnoidulla tilillä ja antamassa tilin järjestelmänvalvojalle oikeuden hallita Chromium-profiiliasi. Chromium-tietosi, kuten sovelluksesi, kirjanmerkkisi, historiasi, salasanasi ja muut asetuksesi, yhdistetään pysyvästi käyttäjätiliin <ph name="USER_NAME" />. Voit poistaa nämä tiedot Google-tilien Hallintapaneelissa, mutta et voi liittää tietoja toiseen tiliin. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Päivitetään Chromiumia (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Käynnistä uudelleen</translation>
 <translation id="5987687638152509985">Aloita synkronointi päivittämällä Chromium.</translation>
 <translation id="6013050204643758987">Toinen <ph name="BEGIN_LINK_CROS_OSS" />avoimen lähdekoodin ohjelmisto<ph name="END_LINK_CROS_OSS" /> tukee Chromium-käyttöjärjestelmää, kuten myös <ph name="BEGIN_LINK_LINUX_OSS" />Linuxia (beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Sulje</translation>
 <translation id="6055895534982063517">Chromiumista on saatavilla uusi versio, joka on entistäkin nopeampi.</translation>
 <translation id="6063093106622310249">&amp;Avaa Chromiumissa</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> on lisätty Chromiumiin</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium-käyttöjärjestelmä</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium käynnistyy uudelleen 1 sekunnin kuluttua}other{Chromium käynnistyy uudelleen # sekunnin kuluttua}}</translation>
 <translation id="6475912303565314141">Määrittää myös Chromiumin aloitussivun.</translation>
-<translation id="6485906693002546646">Synkronoit Chromiumin tietosi osoitteella <ph name="PROFILE_EMAIL" />. Voit vaihtaa synkronoinnin asetuksia tai siirtyä käyttämään Chromiumia ilman Google-tiliä käymällä <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Poista Chromium</translation>
 <translation id="6570579332384693436">Chromium lähettää kenttiin kirjoittamasi tekstin Googlelle oikeinkirjoitusvirheiden korjaamiseksi.</translation>
 <translation id="6598877126913850652">Siirry Chromiumin ilmoitusasetuksiin</translation>
@@ -162,7 +148,6 @@
 Kaikki ominaisuudet eivät ehkä ole käytettävissä. Määritä jokin muu profiilihakemisto tai käytä Chromiumin uudempaa versiota.</translation>
 <translation id="6734080038664603509">Päivitä &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium on jo asennettuna kaikille tietokoneen käyttäjille.</translation>
-<translation id="6810143991807788455">Auta parantamaan Chromiumia ilmoittamalla nykyiset asetukset.</translation>
 <translation id="6847869444787758381">Chromium ilmoittaa sinulle, jos salasanasi ovat vaarantuneet</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (kopioitu Chromiumiin)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Asetustiedostosi on virheellinen.
 
 Chromium ei voi palauttaa asetuksiasi.</translation>
-<translation id="7331920710658926971">Asenna Chromium puhelimellesi. Lähetämme tekstiviestin puhelimeesi.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Uusi ikkuna</translation>
 <translation id="734373864078049451">Tämä on verkkosi, kirjanmerkkiesi ja muun Chromium-sisältösi koti.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Piilota Chromium-valikossa</translation>
 <translation id="8013436988911883588">Kun Chromiumilla on käyttöoikeus, sivustot voivat pyytää sitä sinulta.</translation>
 <translation id="81770708095080097">Tämä tiedosto on vaarallinen, joten Chromium on estänyt sen.</translation>
-<translation id="8222496066431494154">Asenna Chromium puhelimellesi. Lähetämme tekstiviestin palauttamisen puhelinnumeroosi: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8248265253516264921">Jos kuvalla ei ole hyödyllistä kuvausta, Chromium yrittää luoda sellaisen. Kuvat lähetetään Googlelle kuvausten luomista varten. Voit milloin tahansa poistaa tämän käytöstä asetuksissa.</translation>
-<translation id="8269379391216269538">Auta parantamaan Chromiumia</translation>
 <translation id="8290862415967981663">Tämä tiedosto voi olla vaarallinen, joten Chromium on estänyt sen.</translation>
 <translation id="8330519371938183845">Kirjaudu sisään, niin voit synkronoida Chromiumin ja tehdä siitä yksilöllisemmän kaikilla laitteilla.</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> käytti aiemmin Chromiumia</translation>
 <translation id="8417404458978023919">{0,plural, =1{Käynnistä Chromium uudelleen vuorokauden kuluessa}other{Käynnistä Chromium uudelleen # vuorokauden kuluessa}}</translation>
 <translation id="8453117565092476964">Asennusarkisto on virheellinen. Lataa Chromium uudelleen.</translation>
 <translation id="8493179195440786826">Chromium on vanhentunut</translation>
-<translation id="85843667276690461">Apua Chromiumin käytössä</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> The Chromium Authors. Kaikki oikeudet pidätetään.</translation>
 <translation id="8619360774459241877">Käynnistetään Chromiumia…</translation>
 <translation id="8621669128220841554">Asennus epäonnistui määrittelemättömän virheen vuoksi. Lataa Chromium uudelleen.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium yrittää näyttää salasanat. Salli tämä kirjoittamalla Windows-salasanasi.</translation>
 <translation id="8941642502866065432">Chromiumin päivitys epäonnistui</translation>
 <translation id="8974095189086268230">Chromium-käyttöjärjestelmän ovat tehneet mahdolliseksi muut <ph name="BEGIN_LINK_CROS_OSS" />avoimen lähdekoodin ohjelmistot<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Joku on jo kirjautunut tällä tietokoneella Chromiumiin käyttäjätilillä <ph name="ACCOUNT_EMAIL_LAST" />. Jos se ei ole sinun käyttäjätilisi, luo uusi Chromium-käyttäjä, jos haluat pitää tiedot erillään.
-
-Jos kirjaudut silti sisään, Chromium-tiedot, kuten kirjanmerkit, historia ja asetukset, yhdistetään tilin <ph name="ACCOUNT_EMAIL_NEW" /> tietoihin.</translation>
 <translation id="9019929317751753759">Paransimme Chromiumin turvallisuutta poistamalla käytöstä sovelluksia, joita <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ei tarjoa ja jotka on voitu lisätä ilman lupaasi.</translation>
 <translation id="9022552996538154597">Kirjaudu sisään Chromiumiin</translation>
-<translation id="9025992965467895364">Tämä sivu käyttää liikaa muistia, joten Chromium keskeytti sen.</translation>
-<translation id="9036189287518468038">Chromium-sovellusten käynnistysohjelma</translation>
 <translation id="9089354809943900324">Chromium on vanhentunut</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium käynnistetään uudelleen tunnin kuluttua}other{Chromium käynnistetään uudelleen # tunnin kuluttua}}</translation>
 <translation id="91086099826398415">Avaa linkki uudella Chromiumin välilehdellä</translation>
 <translation id="911206726377975832">Poistetaanko myös selailutiedot?</translation>
 <translation id="9158494823179993217">Järjestelmänvalvojasi on määrittänyt Chromiumin avaamaan toisen selaimen, jolla <ph name="TARGET_URL_HOSTNAME" /> avataan.</translation>
-<translation id="918373042641772655">Jos irrotat tilin <ph name="USERNAME" />, historiasi, kirjanmerkkisi ja muut laitteelle tallennetut Chromium-tiedot poistetaan. Google-tiliisi tallennetut tiedot säilyvät ennallaan, ja voit hallinnoida niitä <ph name="GOOGLE_DASHBOARD_LINK" />Google Hallintapaneelin kautta<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (saapuva mDNS)</translation>
-<translation id="9197815481970649201">Olet nyt kirjautuneena Chromiumiin</translation>
 <translation id="93478295209880648">Chromium ei välttämättä toimi oikein, koska se ei enää tue Windows XP:tä tai Windows Vistaa.</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> edellyttää, että luet ja hyväksyt seuraavat käyttöehdot ennen tämän laitteen käyttöä. Nämä ehdot eivät laajenna, muokkaa tai rajoita Chromium-käyttöliittymän ehtoja.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_fil.xtb b/chrome/app/resources/chromium_strings_fil.xtb
index ad15640b..49139bc 100644
--- a/chrome/app/resources/chromium_strings_fil.xtb
+++ b/chrome/app/resources/chromium_strings_fil.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Gustong i-export ng Chromium ang iyong mga password. I-type ang iyong password sa Windows para payagan ito.</translation>
 <translation id="1115445892567829615">Hindi mai-sync ng Chromium ang iyong data. Paki-update ang iyong passphrase sa Pag-sync.</translation>
 <translation id="113122355610423240">Chromium ang iyong default na browser</translation>
-<translation id="1170115874949214249">I-install ang Chromium sa telepono mo. Magpapadala kami ng SMS sa iyong numero ng telepono para sa pag-recover ng account.</translation>
-<translation id="1174473354587728743">Magbabahagi ng computer? Ngayon, maaari mong i-set up ang Chromium sa paraang gusto mo.</translation>
 <translation id="1185134272377778587">Tungkol sa Chromium</translation>
-<translation id="1298199220304005244">Kumuha ng tulong sa paggamit ng Chromium OS</translation>
 <translation id="1396446129537741364">Sinusubukan ng Chromium na magpakita ng mga password.</translation>
 <translation id="1414495520565016063">Naka-sign in ka sa Chromium!</translation>
 <translation id="151962892725702025">Hindi ma-sync ng Chromium OS ang iyong data dahil hindi available ang Pag-sync para sa iyong domain.</translation>
 <translation id="1524282610922162960">Magbahagi ng tab ng Chromium</translation>
-<translation id="1668054258064581266">Pagkatapos alisin ang iyong account sa Chromium, maaaring kailangan mong i-reload ang mga nakabukas mong tab upang magkabisa.</translation>
-<translation id="1688750314291223739">I-set up ang Pag-sync upang i-save ang iyong personalized na mga tampok ng browser sa web at i-access ang mga iyon mula sa Chromium sa anumang computer.</translation>
 <translation id="1708666629004767631">May available na bago at mas ligtas na bersyon ng Chromium.</translation>
 <translation id="1766096484055239003">Inaatasan ka ng iyong administrator na muling ilunsad ang Chromium para malapat ang update</translation>
 <translation id="1774152462503052664">Hayaang tumakbo ang Chromium sa background</translation>
 <translation id="1779356040007214683">Upang gawing mas ligtas ang Chromium, nag-disable kami ng ilang extension na hindi nakalista sa <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> at maaaring naidagdag nang hindi mo nalalaman.</translation>
 <translation id="1808667845054772817">Muling i-install ang Chromium</translation>
-<translation id="1869480248812203386">Makakatulong ka na gawing mas ligtas at mas madaling gamitin ang Chrome sa pamamagitan ng awtomatikong pag-uulat sa Google ng mga detalye ng mga posibleng isyu sa seguridad.</translation>
 <translation id="1881322772814446296">Nagsa-sign in ka gamit ang isang pinamamahalaang account at nagbibigay sa administrator nito ng kontrol sa iyong profile sa Chromium. Permanenteng mauugnay ang iyong data sa Chromium, gaya ng iyong apps, mga bookmark, kasaysayan, password, at iba pang mga setting sa <ph name="USER_NAME" />. Matatanggal mo ang data na ito sa Google Accounts Dashboard, ngunit hindi mo maiuugnay ang data na ito sa isa pang account. Maaari ka ring gumawa ng bagong profile upang ihiwalay ang iyong umiiral na data sa Chromium. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Kapag na-off ito, maaari kang mag-sign in sa mga site ng Google tulad ng Gmail nang hindi nagsa-sign in sa Chromium</translation>
 <translation id="1929939181775079593">Hindi gumagana ang Chromium. Muling ilunsad ngayon?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Hinihiling sa iyo ng administrator mo na muli mong ilunsad ang Chromium para malapat ang update na ito</translation>
 <translation id="2119636228670142020">Tungkol sa &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Kung nagpapahiram ka ng computer, ang mga kaibigan at kapamilya ay maaaring mag-browse nang hiwalay at i-set up ang Chromium sa paraang gusto nila.</translation>
-<translation id="2265088490657775772">kunin ang Chromium sa iyong iPhone</translation>
 <translation id="2347108572062610441">Binago ng extension na ito ang ipinapakitang page kapag sinimulan mo ang Chronium.</translation>
 <translation id="2396765026452590966">Binago ng extension na "<ph name="EXTENSION_NAME" />" ang ipinapakitang page kapag sinimulan mo ang Chromium.</translation>
 <translation id="2483889755041906834">Sa Chromium</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Para i-update, kailangang huminto sa pagtakbo ng Chromium sa computer na ito. Puwedeng magdulot ito sa iba pang user na naka-log in sa computer na ito na mawala ang mga hindi naka-save na pagbabago.</translation>
 <translation id="2847479871509788944">Alisin sa Chromium...</translation>
 <translation id="2886012850691518054">Opsyonal: Tumulong na pahusayin ang Chromium sa pamamagitan ng awtomatikong pagpapadala sa Google ng mga istatistika ng paggamit at mga ulat ng pag-crash.</translation>
-<translation id="2898082584336937987">I-install ang Chromium sa iyong telepono. Magpapadala kami ng SMS sa telepono mo: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Tungkol sa &amp;Chromium</translation>
 <translation id="2977470724722393594">Napapanahon ang Chromium</translation>
 <translation id="3032787606318309379">Idinaragdag sa Chromium...</translation>
-<translation id="3046695367536568084">Kailangang naka-sign in ka sa Chromium upang makagamit ng mga app. Nagbibigay-daan ito sa Chromium na i-sync ang iyong mga app, bookmark, kasaysayan, password at iba pang mga setting sa mga device.</translation>
 <translation id="3068515742935458733">Tumulong na gawing mas mahusay ang Chromium sa pamamagitan ng pagpapadala ng mga ulat ng pag-crash at <ph name="UMA_LINK" /> sa Google</translation>
 <translation id="3103660991484857065">Nabigong i-uncompress ng installer ang archive. Mangyaring i-download muli ang Chromium.</translation>
 <translation id="3130323860337406239">Ginagamit ng Chromium ang iyong mikropono.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Buksan ang Link sa Inco&amp;gnito Window ng Chromium</translation>
 <translation id="3190315855212034486">Whoa! Nag-crash ang Chromium. Muling ilunsad ngayon?</translation>
 <translation id="3229526316128325841">Gustong i-export ng Chromium ang iyong mga password.</translation>
-<translation id="3256316712990552818">Kinopya sa Chromium</translation>
 <translation id="3258596308407688501">Hindi makakapag-read at makakapag-write ang Chromium sa direktoryo ng data nito:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">May available na mahahalagang pagpapahusay sa seguridad at mga bagong feature sa pinakabagong bersyon.</translation>
 <translation id="421369550622382712">Tumuklas ng mahuhusay na app, laro, extension at tema para sa Chromium.</translation>
 <translation id="4216212958613226427">Ginagamit ang wikang ito para ipakita ang Chromium UI</translation>
-<translation id="4222580632002216401">Naka-sign in ka na ngayon sa Chromium! Na-disable ng iyong administrator ang pag-sync.</translation>
 <translation id="4230135487732243613">I-link ang iyong data sa Chromium sa account na ito?</translation>
 <translation id="4271805377592243930">Humingi ng tulong sa Chromium</translation>
 <translation id="4285930937574705105">Nabigo ang pag-install dahil sa hindi natukoy na error. Kung kasalukuyang tumatakbo ang Chromium, pakisara ito at subukang muli.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Nasa background mode ang Chromium.</translation>
 <translation id="4987820182225656817">Makakagamit ng Chromium ang mga bisita nang hindi nag-iiwan ng anumang bakas.</translation>
 <translation id="4994636714258228724">Idagdag ang iyong sarili sa Chromium</translation>
-<translation id="5181952534059945058">Masyadong malaki ang ginagamit na memory ng page na ito, kaya inalis ng Chromium ang ilang content.</translation>
 <translation id="5277894862589591112">Para ilapat ang iyong mga pagbabago, muling ilunsad ang Chromium</translation>
 <translation id="5358375970380395591">Nagsa-sign in ka gamit ang isang pinamamahalaang account at nagbibigay sa administrator nito ng kontrol sa iyong profile sa Chromium. Permanenteng mauugnay ang iyong data sa Chromium, gaya ng iyong apps, mga bookmark, kasaysayan, password, at iba pang mga setting sa <ph name="USER_NAME" />. Matatanggal mo ang data na ito sa Google Accounts Dashboard, ngunit hindi mo maiuugnay ang data na ito sa isa pang account. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Ina-update ang Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">I-restart</translation>
 <translation id="5987687638152509985">I-update ang Chromium upang simulan ang pag-sync</translation>
 <translation id="6013050204643758987">Ang Chromium OS ay ginagawang posible ng karagdagang <ph name="BEGIN_LINK_CROS_OSS" />open source na software<ph name="END_LINK_CROS_OSS" />, gayundin ng <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Isara</translation>
 <translation id="6055895534982063517">May available na bagong bersyon ng Chromium, at mas mabilis ito kaysa sa dati.</translation>
 <translation id="6063093106622310249">&amp;Buksan sa Chromium</translation>
 <translation id="6072279588547424923">Naidagdag na ang <ph name="EXTENSION_NAME" /> sa Chromium</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Chromium OS System</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Magre-restart ang Chromium pagkalipas ng 1 segundo}one{Magre-restart ang Chromium pagkalipas ng # segundo}other{Magre-restart ang Chromium pagkalipas ng # na segundo}}</translation>
 <translation id="6475912303565314141">Kinokontrol din nito kung anong pahina ang ipinapakita kapag sinimulan mo ang Chromium.</translation>
-<translation id="6485906693002546646">Ginagamit mo ang <ph name="PROFILE_EMAIL" /> upang i-sync ang iyong bagay sa Chromium. Upang ma-update ang iyong kagustuhan sa pag-sync o upang magamit ang Chromium nang walang Google account, bisitahin ang <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">I-uninstall ang Chromium</translation>
 <translation id="6570579332384693436">Para maayos ang mga error sa pagbabaybay, ipinapadala ng Chromium sa Google ang text na na-type mo sa mga text field</translation>
 <translation id="6598877126913850652">Pumunta sa mga setting ng notification ng Chromium</translation>
@@ -164,7 +150,6 @@
 Maaaring hindi available ang ilang tampok. Mangyaring tumukoy ng ibang direktoryo ng profile o gumamit ng mas bagong bersyon ng Chromium.</translation>
 <translation id="6734080038664603509">I-update ang &amp;Chromium</translation>
 <translation id="6734291798041940871">Naka-install na ang Chromium para sa lahat ng user sa iyong computer.</translation>
-<translation id="6810143991807788455">Tumulong na pahusayin ang Chromium sa pamamagitan ng pag-uulat sa mga kasalukuyang setting</translation>
 <translation id="6847869444787758381">Ipinapaalam sa iyo ng Chromium kung nakompromiso ang mga password mo</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (kinopya sa Chromium)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">Sira o di-wasto ang file ng iyong mga kagustuhan.
 
 Hindi mabawi ng Chromium ang iyong mga setting.</translation>
-<translation id="7331920710658926971">I-install ang Chromium sa iyong telepono. Magpapadala kami ng SMS sa telepono mo.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Bagong window</translation>
 <translation id="734373864078049451">Makikita dito ang iyong web, mga bookmark at iba pang mga bagay-bagay sa Chromium.</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">Itago sa menu ng Chromium</translation>
 <translation id="8013436988911883588">Kapag mayroon nang access ang Chromium, makakahingi na ang mga website ng access sa iyo.</translation>
 <translation id="81770708095080097">Mapanganib ang file na ito, kaya na-block ito ng Chromium.</translation>
-<translation id="8222496066431494154">I-install ang Chromium sa telepono mo. Magpapadala kami ng SMS sa iyong numero ng telepono para sa pag-recover ng account: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Kung hindi sapat ang deskripsyon ng isang larawan, susubukan ng Chromium na ayusin ito para sa iyo. Para gumawa ng mga deskripsyon, ipinapadala ang mga larawan sa Google. Puwede mo itong i-off sa mga setting anumang oras.</translation>
-<translation id="8269379391216269538">Tumulong sa pagpapahusay ng Chromium</translation>
 <translation id="8290862415967981663">Maaaring mapanganib ang file na ito, kaya na-block ito ng Chromium.</translation>
 <translation id="8330519371938183845">Mag-sign in para i-sync at i-personalize ang Chromium sa lahat ng iyong device</translation>
 <translation id="8340674089072921962">Chromium ang dating ginagamit ng <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="8417404458978023919">{0,plural, =1{Muling ilunsad ang Chromium sa loob ng isang araw}one{Muling ilunsad ang Chromium sa loob ng # araw}other{Muling ilunsad ang Chromium sa loob ng # na araw}}</translation>
 <translation id="8453117565092476964">Sira o di-wasto ang archive ng installer. Mangyaring i-download muli ang Chromium.</translation>
 <translation id="8493179195440786826">Luma na ang Chromium</translation>
-<translation id="85843667276690461">Kumuha ng tulong sa paggamit ng Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Ang Mga May-akda ng Chromium. Nakalaan ang lahat ng karapatan.</translation>
 <translation id="8619360774459241877">Inilulunsad ang Chromium...</translation>
 <translation id="8621669128220841554">Nabigo ang pag-install dahil sa hindi natukoy na error. Mangyaring i-download muli ang Chromium.</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">Sinusubukan ng Chromium na ipakita ang mga password. I-type ang password sa Windows upang payagan ito.</translation>
 <translation id="8941642502866065432">Hindi ma-update ang Chromium</translation>
 <translation id="8974095189086268230">Nagiging posible ang Chromium OS sa pamamagitan ng karagdagang <ph name="BEGIN_LINK_CROS_OSS" />open source na software<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">May nag-sign in dati sa Chromium sa computer na ito bilang <ph name="ACCOUNT_EMAIL_LAST" />. Kung hindi iyon ang iyong account, lumikha ng bagong user ng Chromium upang ihiwalay ang iyong impormasyon.
-
-Kapag nag-sign in ka pa rin, isasama sa <ph name="ACCOUNT_EMAIL_NEW" /> ang impormasyon sa Chromium gaya ng mga bookmark, kasaysayan, at iba pang mga setting.</translation>
 <translation id="9019929317751753759">Upang mas gawing ligtas ang Chromium, na-disable namin ang sumusunod na extension na hindi nakalista sa <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> na maaaring naidagdag nang hindi mo nalalalaman.</translation>
 <translation id="9022552996538154597">Mag-sign in sa Chromium</translation>
-<translation id="9025992965467895364">Masyadong malaki ang ginagamit na memory ng page na ito kaya na-pause ito ng Chromium.</translation>
-<translation id="9036189287518468038">App Launcher ng Chromium</translation>
 <translation id="9089354809943900324">Luma na ang Chromium</translation>
 <translation id="9093206154853821181">{0,plural, =1{Muling ilulunsad ang Chromium sa loob ng isang oras}one{Muling ilulunsad ang Chromium sa loob ng # oras}other{Muling ilulunsad ang Chromium sa loob ng # na oras}}</translation>
 <translation id="91086099826398415">Buksan ang Link sa bagong &amp;tab ng Chromium</translation>
 <translation id="911206726377975832">Tatanggalin din ang iyong data sa pag-browse?</translation>
 <translation id="9158494823179993217">Na-configure ng iyong system administrator ang Chromium na magbukas ng alternatibong browser para i-access ang <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Iki-clear ng pagdiskonekta kay <ph name="USERNAME" /> ang iyong history, mga bookmark, setting at iba pang data ng Chromium na naka-imbak sa device na ito. Hindi iki-clear ang data na naka-imbak sa iyong Google Account at maaaring pamahalaan sa <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Naka-sign in ka ngayon sa Chromium</translation>
 <translation id="93478295209880648">Maaaring hindi gumana nang maayos ang Chromium dahil hindi na ito sinusuportahan sa Windows XP o Windows Vista</translation>
 <translation id="95514773681268843">Kinakailangan ng <ph name="DOMAIN" /> na basahin mo at tanggapin ang sumusunod na Mga Tuntunin ng Serbisyo bago gamitin ang device na ito. Hindi pinapalawak, binabago o nililimitahan ng mga tuntuning ito ang Mga Tuntunin ng Chromium OS.</translation>
 <translation id="985602178874221306">Ang Mga May-akda ng Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_fr.xtb b/chrome/app/resources/chromium_strings_fr.xtb
index c8137ee0..ef30bee7 100644
--- a/chrome/app/resources/chromium_strings_fr.xtb
+++ b/chrome/app/resources/chromium_strings_fr.xtb
@@ -6,22 +6,16 @@
 <translation id="1104942323762546749">Chromium veut exporter vos mots de passe. Pour autoriser cette action, saisissez votre mot de passe Windows.</translation>
 <translation id="1115445892567829615">Impossible de synchroniser vos données dans Chromium. Veuillez mettre à jour votre phrase secrète de synchronisation.</translation>
 <translation id="113122355610423240">Chromium est votre navigateur par défaut</translation>
-<translation id="1170115874949214249">Installez Chromium sur votre téléphone. Vous recevrez un SMS au numéro que vous avez indiqué pour la récupération de compte.</translation>
-<translation id="1174473354587728743">Vous partagez un ordinateur ? Vous pouvez désormais configurer Chromium selon vos besoins.</translation>
 <translation id="1185134272377778587">À propos de Chromium</translation>
-<translation id="1298199220304005244">Obtenir de l'aide sur l'utilisation de Chromium OS</translation>
 <translation id="1396446129537741364">Tentative d'affichage des mots de passe dans Chromium</translation>
 <translation id="1414495520565016063">Vous êtes connecté à Chromium.</translation>
 <translation id="151962892725702025">Impossible de synchroniser vos données dans Chromium OS, car la synchronisation n'est pas disponible pour votre domaine.</translation>
 <translation id="1524282610922162960">Partager un onglet Chromium</translation>
-<translation id="1668054258064581266">Une fois votre compte Chromium supprimé, vous devrez peut-être charger de nouveau les onglets ouverts pour que les modifications prennent effet.</translation>
-<translation id="1688750314291223739">Configurez la synchronisation pour enregistrer sur le Web les fonctionnalités personnalisées de votre navigateur et y accéder à partir de Chromium sur n'importe quel ordinateur.</translation>
 <translation id="1708666629004767631">Une nouvelle version de Chromium encore plus sûre est disponible.</translation>
 <translation id="1766096484055239003">À la demande de votre administrateur, vous devez relancer Chromium pour installer une mise à jour</translation>
 <translation id="1774152462503052664">Laisser Chromium s'exécuter en arrière-plan</translation>
 <translation id="1779356040007214683">Afin de rendre Chrome plus sûr, nous avons désactivé certaines extensions qui ne sont pas répertoriées sur le <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> et qui ont pu être ajoutées à votre insu.</translation>
 <translation id="1808667845054772817">Réinstaller Chromium</translation>
-<translation id="1869480248812203386">Vous pouvez nous aider à rendre Chromium plus sûr et plus facile à utiliser en nous signalant automatiquement les incidents de sécurité potentiels.</translation>
 <translation id="1881322772814446296">Vous vous connectez avec un compte géré et donnez le contrôle de votre profil Chromium à son administrateur. Vos données Chromium, telles que les applications, les favoris, l'historique, les mots de passe et les autres paramètres, vont être définitivement associées à <ph name="USER_NAME" />. Vous pouvez supprimer ces données via le tableau de bord des comptes Google, mais vous ne pouvez pas les associer à un autre compte. Vous pouvez éventuellement créer un nouveau profil pour maintenir vos données Chromium séparées. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Désactiver cette option vous permet de vous connecter à des sites Google tels que Gmail sans vous connecter à Chromium</translation>
 <translation id="1929939181775079593">Chromium ne répond pas. Voulez-vous le relancer maintenant ?</translation>
@@ -30,7 +24,6 @@
 <translation id="2117378023188580026">Votre administrateur vous demande de relancer Chromium pour installer cette mise à jour</translation>
 <translation id="2119636228670142020">À propos de &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Si vous partagez un ordinateur avec vos proches, ceux-ci peuvent configurer Chromium comme bon leur semble et naviguer sur le Web à leur manière.</translation>
-<translation id="2265088490657775772">télécharger Chromium sur votre iPhone</translation>
 <translation id="2347108572062610441">Cette extension a modifié la page qui s'affiche lorsque vous démarrez Chromium.</translation>
 <translation id="2396765026452590966">L'extension <ph name="EXTENSION_NAME" /> a modifié la page qui s'affiche lorsque vous démarrez Chromium.</translation>
 <translation id="2483889755041906834">Dans Chromium</translation>
@@ -49,11 +42,9 @@
 <translation id="2838154144102149890">Pour effectuer la mise à jour, vous devez fermer Chromium sur cet ordinateur. Sachez toutefois que les autres utilisateurs qui y sont connectés risquent de perdre leurs données non enregistrées.</translation>
 <translation id="2847479871509788944">Supprimer de Chromium</translation>
 <translation id="2886012850691518054">Facultatif : aidez-nous à améliorer Chromium en envoyant automatiquement des statistiques d'utilisation et des rapports d'erreur à Google.</translation>
-<translation id="2898082584336937987">Installez Chromium sur votre téléphone. Vous recevrez un SMS au numéro suivant : <ph name="PHONE_NUMBER" />.</translation>
 <translation id="2910007522516064972">À propos de &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium est à jour</translation>
 <translation id="3032787606318309379">Ajout à Chromium en cours…</translation>
-<translation id="3046695367536568084">Vous devez être connecté à Chromium pour utiliser les applications. Cela permet de synchroniser vos applications, vos favoris, votre historique, vos mots de passe et d'autres paramètres dans Chromium sur tous vos appareils.</translation>
 <translation id="3068515742935458733">Aidez-nous à améliorer Chromium en nous envoyant des rapports d'erreur et des <ph name="UMA_LINK" />.</translation>
 <translation id="3103660991484857065">Échec de la décompression de l'archive par le programme d'installation. Veuillez télécharger Chromium à nouveau.</translation>
 <translation id="3130323860337406239">Votre micro est en cours d'utilisation dans Chromium.</translation>
@@ -61,7 +52,6 @@
 <translation id="3179665906251668410">Ouvrir le lien dans la fenêtre de navi&amp;gation privée Chromium</translation>
 <translation id="3190315855212034486">Chromium est bloqué. Voulez-vous le relancer maintenant ?</translation>
 <translation id="3229526316128325841">Chromium veut exporter vos mots de passe.</translation>
-<translation id="3256316712990552818">Copié dans Chromium</translation>
 <translation id="3258596308407688501">Chromium ne peut ni lire, ni écrire dans son répertoire de données :
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -85,7 +75,6 @@
 <translation id="4050175100176540509">La dernière version propose d'importantes améliorations de la sécurité ainsi que de nouvelles fonctionnalités.</translation>
 <translation id="421369550622382712">Découvrez des applications, des jeux, des extensions et des thèmes exceptionnels pour Chromium.</translation>
 <translation id="4216212958613226427">Cette langue est utilisée pour l'UI Chromium</translation>
-<translation id="4222580632002216401">Vous êtes maintenant connecté à Chromium. La synchronisation a été désactivée par votre administrateur.</translation>
 <translation id="4230135487732243613">Associer vos données Chromium à ce compte ?</translation>
 <translation id="4271805377592243930">Obtenir de l'aide avec Chromium</translation>
 <translation id="4285930937574705105">Échec de l'installation suite à une erreur non spécifiée. Si Chromium est en cours d'exécution, veuillez le fermer, puis réessayer.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium est exécuté en mode arrière-plan</translation>
 <translation id="4987820182225656817">Les invités peuvent utiliser Chromium sans laisser aucune trace.</translation>
 <translation id="4994636714258228724">Ajouter un utilisateur à Chromium</translation>
-<translation id="5181952534059945058">Cette page utilise trop de mémoire. Chromium a donc supprimé du contenu.</translation>
 <translation id="5277894862589591112">Pour appliquer vos modifications, relancez Chromium</translation>
 <translation id="5358375970380395591">Vous vous connectez avec un compte géré et donnez le contrôle de votre profil Chromium à son administrateur. Vos données Chromium, telles que les applications, les favoris, l'historique, les mots de passe et les autres paramètres, vont être définitivement associées à <ph name="USER_NAME" />. Vous pouvez supprimer ces données via le tableau de bord des comptes Google, mais vous ne pouvez pas les associer à un autre compte. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Mise à jour de Chromium (<ph name="PROGRESS_PERCENT" />)…</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Redémarrer</translation>
 <translation id="5987687638152509985">Mettre à jour Chromium pour lancer la synchronisation</translation>
 <translation id="6013050204643758987">Chromium OS a été créé à partir d'autres <ph name="BEGIN_LINK_CROS_OSS" />logiciels Open Source<ph name="END_LINK_CROS_OSS" />, tout comme <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Bêta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Fermer</translation>
 <translation id="6055895534982063517">Une nouvelle version de Chromium encore plus rapide est disponible.</translation>
 <translation id="6063093106622310249">&amp;Ouvrir dans Chromium</translation>
 <translation id="6072279588547424923">L'extension <ph name="EXTENSION_NAME" /> a été ajoutée à Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Système Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium va redémarrer dans 1 seconde}one{Chromium va redémarrer dans # seconde}other{Chromium va redémarrer dans # secondes}}</translation>
 <translation id="6475912303565314141">Elle contrôle également la page qui s'affiche au démarrage de Chromium.</translation>
-<translation id="6485906693002546646">Vous utilisez le compte <ph name="PROFILE_EMAIL" /> pour synchroniser votre contenu dans Chromium. Pour mettre à jour vos préférences de synchronisation ou pour utiliser Chromium sans compte Google, accédez à la page <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Désinstaller Chromium</translation>
 <translation id="6570579332384693436">Pour corriger les fautes d'orthographe, Chromium envoie à Google le texte que vous saisissez dans les champs</translation>
 <translation id="6598877126913850652">Accéder aux paramètres de notification Chromium</translation>
@@ -162,7 +148,6 @@
 Certaines fonctionnalités seront peut-être indisponibles. Veuillez spécifier un autre répertoire de profil ou utiliser une version plus récente de Chromium.</translation>
 <translation id="6734080038664603509">Mettre à jour &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium est déjà installé pour tous les utilisateurs de votre ordinateur.</translation>
-<translation id="6810143991807788455">Aidez-nous à améliorer Chromium en nous signalant vos paramètres actuels.</translation>
 <translation id="6847869444787758381">Chromium vous indique si vos mots de passe ont été piratés</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copiée dans Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Le fichier des préférences est corrompu ou n'est pas valide. 
 
 Chromium ne peut pas récupérer vos paramètres.</translation>
-<translation id="7331920710658926971">Installez Chromium sur votre téléphone. Vous y recevrez un SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nouvelle fenêtre</translation>
 <translation id="734373864078049451">Votre contenu Web, vos favoris et toutes vos données Chromium sont conservés ici.</translation>
@@ -212,16 +196,13 @@
 <translation id="7979877361127045932">Masquer dans le menu Chromium</translation>
 <translation id="8013436988911883588">Une fois l'accès à une ressource accordé à Chromium, les sites Web sont également en mesure de vous demander l'accès.</translation>
 <translation id="81770708095080097">Chromium a bloqué ce fichier, car ce dernier est dangereux.</translation>
-<translation id="8222496066431494154">Installez Chromium sur votre téléphone. Vous recevrez un SMS au numéro que vous avez indiqué pour la récupération de compte (<ph name="PHONE_NUMBER" />).</translation>
 <translation id="8248265253516264921">Si une image n'est pas accompagnée d'une description utile, Chromium essaiera de vous en proposer une. Pour nous permettre de créer des descriptions, les images sont envoyées à Google. Vous pouvez désactiver à tout moment cette option dans les paramètres.</translation>
-<translation id="8269379391216269538">Aidez-nous à améliorer Chromium</translation>
 <translation id="8290862415967981663">Chromium a bloqué ce fichier, car ce dernier peut être dangereux.</translation>
 <translation id="8330519371938183845">Se connecter pour synchroniser et personnaliser Chromium sur vos appareils</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> utilisait Chromium précédemment</translation>
 <translation id="8417404458978023919">{0,plural, =1{Relancer Chromium d'ici un jour}one{Relancer Chromium d'ici # jour}other{Relancer Chromium d'ici # jours}}</translation>
 <translation id="8453117565092476964">L'archive du programme d'installation est corrompue ou n'est pas valide. Veuillez télécharger Chromium à nouveau.</translation>
 <translation id="8493179195440786826">Version de Chromium obsolète</translation>
-<translation id="85843667276690461">Obtenir de l'aide sur l'utilisation de Chromium</translation>
 <translation id="8586442755830160949">Copyright Auteurs de Chromium <ph name="YEAR" />. Tous droits réservés.</translation>
 <translation id="8619360774459241877">Lancement de Chromium…</translation>
 <translation id="8621669128220841554">Échec de l'installation en raison d'une erreur non spécifiée. Veuillez télécharger Chromium à nouveau.</translation>
@@ -238,21 +219,14 @@
 <translation id="8907580949721785412">Chromium tente d'afficher les mots de passe. Pour autoriser cette action, saisissez votre mot de passe Windows.</translation>
 <translation id="8941642502866065432">Impossible de mettre Chromium à jour</translation>
 <translation id="8974095189086268230">Chromium OS fonctionne grâce à d'autres <ph name="BEGIN_LINK_CROS_OSS" />logiciels libres<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Un utilisateur s'est récemment connecté à Chromium sur cet ordinateur en tant que <ph name="ACCOUNT_EMAIL_LAST" />. S'il ne s'agit pas de votre compte, veuillez créer un utilisateur Chromium pour séparer vos informations.
-
-Si vous vous connectez quand même, toutes les informations Chromium, comme les favoris, l'historique et les autres paramètres, seront fusionnées avec <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Afin de rendre Chromium plus sûr, nous avons désactivé l'extension suivante qui n'est pas répertoriée sur le <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> et qui a pu être ajoutée à votre insu.</translation>
 <translation id="9022552996538154597">Se connecter à Chromium</translation>
-<translation id="9025992965467895364">Cette page utilise trop de mémoire, Chromium a donc interrompu son chargement.</translation>
-<translation id="9036189287518468038">Lanceur d'applications Chromium</translation>
 <translation id="9089354809943900324">Version de Chromium obsolète</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium va être relancé dans une heure}one{Chromium va être relancé dans # heure}other{Chromium va être relancé dans # heures}}</translation>
 <translation id="91086099826398415">Ouvrir le lien dans un nouvel ongle&amp;t Chromium</translation>
 <translation id="911206726377975832">Supprimer également vos données de navigation ?</translation>
 <translation id="9158494823179993217">Votre administrateur système a configuré Chromium de sorte qu'un autre navigateur s'ouvre pour accéder à <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">La déconnexion de <ph name="USERNAME" /> a pour effet d'effacer votre historique, vos favoris, vos paramètres et les autres données Chromium stockées sur cet appareil. Les données stockées dans votre compte Google ne sont pas effacées ; vous pouvez les gérer dans <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Vous êtes connecté à Chromium</translation>
 <translation id="93478295209880648">Chromium risque de ne pas fonctionner correctement, car la compatibilité n'est plus assurée sur Windows XP et Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> exige que vous lisiez et acceptiez les présentes conditions d'utilisation pour utiliser cet appareil. Ces dernières n'étendent, ne modifient ni ne restreignent les conditions d'utilisation de Chromium OS.</translation>
 <translation id="985602178874221306">Auteurs de Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_gu.xtb b/chrome/app/resources/chromium_strings_gu.xtb
index 76ea391..4b99504 100644
--- a/chrome/app/resources/chromium_strings_gu.xtb
+++ b/chrome/app/resources/chromium_strings_gu.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium તમારા પાસવર્ડની નિકાસ કરવા માગે છે. આને મંજૂરી આપવા માટે તમારો Windows પાસવર્ડ ટાઇપ કરો.</translation>
 <translation id="1115445892567829615">Chromium તમારા ડેટાને સમન્વયિત કરી શક્યું નથી. કૃપા કરીને તમારા સમન્વયન પાસફ્રેઝને અપડેટ કરો.</translation>
 <translation id="113122355610423240">Chromium તમારું ડિફૉલ્ટ બ્રાઉઝર છે</translation>
-<translation id="1170115874949214249">તમારા ફોન પર Chromium ઇન્સ્ટૉલ કરો. અમે તમારા એકાઉન્ટને પાછું મેળવવા ફોન નંબર પર એક SMS મોકલીશું.</translation>
-<translation id="1174473354587728743">કમ્પ્યુટર શેર કરીએ? હવે તમે તમને ગમે તે રીતે Chromiumને સેટ કરી શકો છો.</translation>
 <translation id="1185134272377778587">Chromium વિશે</translation>
-<translation id="1298199220304005244">Chromium OSનો ઉપયોગ કરવા સહાય મેળવો</translation>
 <translation id="1396446129537741364">Chromium પાસવર્ડ્સ બતાવવાનો પ્રયાસ કરી રહ્યું છે.</translation>
 <translation id="1414495520565016063">તમે Chromium માં સાઇન ઇન કર્યું છે!</translation>
 <translation id="151962892725702025">Chromium OS તમારા ડેટાને સિંક કરી શક્યું નથી, કારણ કે તમારા ડોમેન માટે સિંક ઉપલબ્ધ નથી.</translation>
 <translation id="1524282610922162960">Chromium ટૅબ શેર કરો</translation>
-<translation id="1668054258064581266">તમારા એકાઉન્ટને Chromiumમાંથી દૂર કર્યાં પછી, અમલમાં લાવવા માટે તમારે તમારા ટૅબને ફરીથી લોડ કરવાની જરૂર પડી શકે છે.</translation>
-<translation id="1688750314291223739">તમારી વેબ પરની વ્યક્તિગત કરેલી બ્રાઉઝર સુવિધાઓને સાચવવા અને તેમને કોઈ પણ કમ્પ્યુટર પર Chromium માંથી ઍક્સેસ કરવા માટે સમન્વયન સેટ કરો.</translation>
 <translation id="1708666629004767631">Chromiumનું નવું, સુરક્ષિત વર્ઝન ઉપલબ્ધ છે.</translation>
 <translation id="1766096484055239003">અપડેટ લાગુ કરવા માટે તમે Chromiumને ફરીથી લૉન્ચ કરો તે તમારા વ્યવસ્થાપક માટે જરૂરી છે</translation>
 <translation id="1774152462503052664">Chromium ને પૃષ્ઠભૂમિમાં ચાલવા દો</translation>
 <translation id="1779356040007214683">Chromium ને સુરક્ષિત બનાવવા માટે, અમે <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> માં સૂચિબદ્ધ નથી અને તમારી જાણ વિના ઉમેરવામાં આવ્યાં હોઈ શકે છે તેવા કેટલાક એક્સ્ટેન્શન્સને અક્ષમ કર્યા છે.</translation>
 <translation id="1808667845054772817">Chromium ફરીથી ઇન્સ્ટોલ કરો</translation>
-<translation id="1869480248812203386">તમે Google ને સંભવિત સુરક્ષા ઘટનાઓની વિગતોની જાણ આપમેળે કરીને Chromium ને વધુ સલામત અને ઉપયોગમાં વધુ સરળ બનાવવામાં સહાય કરી શકો છો.</translation>
 <translation id="1881322772814446296">તમે મેનેજ કરેલા એકાઉન્ટ સાથે સાઇન ઇન કરી રહ્યાં છો અને તમારી Chromium પ્રોફાઇલ પર એનું એડમિન નિયંત્રણ આપી રહ્યાં છો. તમારો Chromium ડેટા, જેમ કે ઍપ, બુકમાર્ક, ઇતિહાસ, પાસવર્ડ અને બીજા સેટિંગ, કાયમ માટે <ph name="USER_NAME" /> થી બંધાયેલ રહેશે. તમે Google એકાઉન્ટ ડૅશબોર્ડથી આ ડેટાને કાઢી શકશો, પરંતુ તમે આ ડેટાને બીજા એકાઉન્ટ સાથે સાંકળી શકશો નહિ. તમે અસ્તિત્વમાં છે તે Chromium ડેટાને અલગ રાખવા માટે વૈકલ્પિક રૂપે એક નવી પ્રોફાઇલ બનાવી શકો છો. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">આને બંધ કરવાથી, તમે Chromiumમાં સાઇન ઇન કર્યા સિવાય Gmail જેવી Googleની સાઇટમાં સાઇન ઇન કરી શકશો</translation>
 <translation id="1929939181775079593">Chromium પ્રતિસાદ આપતું નથી. હવે ફરીથી લોંચ કરીએ?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">તમારા વ્યવસ્થાપક કહે છે કે આ અપડેટ લાગુ કરવા માટે Chromium ફરીથી લૉન્ચ કરો</translation>
 <translation id="2119636228670142020">&amp;Chromium OS વિશે</translation>
 <translation id="2241627712206172106">જો તમે કમ્પ્યુટરને શેર કરો છો, તો મિત્રો અને કુટુંબીજનો અલગ-અલગ બ્રાઉઝ કરી અને તેમને જોઇએ તેમ Chromium ને સેટ કરી શકે છે.</translation>
-<translation id="2265088490657775772">તમારા iPhone પર Chromium મેળવો</translation>
 <translation id="2347108572062610441">જ્યારે તમે Chromium શરૂ કરો છો ત્યારે જે પૃષ્ઠ દર્શાવવામાં આવે છે તે આ એક્સટેન્શને બદલ્યું છે.</translation>
 <translation id="2396765026452590966">જ્યારે તમે Chromium શરૂ કરો છો ત્યારે જે પૃષ્ઠ દર્શાવવામાં આવે છે તે <ph name="EXTENSION_NAME" /> એક્સટેન્શને બદલ્યું છે.</translation>
 <translation id="2483889755041906834">Chromium માં</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">અપડેટ થવા માટે, આ કમ્પ્યુટર પર Chromium ચાલતું બંધ થવું જરૂરી છે. આના કારણે, આ કમ્પ્યુટરમાં લૉગ ઇન થયેલા બીજા વપરાશકર્તાઓના સાચવ્યા વિનાના ફેરફારો ગુમ થઈ શકે છે.</translation>
 <translation id="2847479871509788944">Chromium માંથી દૂર કરો...</translation>
 <translation id="2886012850691518054">વૈકલ્પિક: ઉપયોગનાં આંકડાઓ અને ક્રૅશ રીપોર્ટ્સ ઑટોમૅટિક રીતે Googleને મોકલીને Chromium ને વધુ સારું બનાવવમાં સહાય કરો.</translation>
-<translation id="2898082584336937987">તમારા ફોન પર Chromium ઇન્સ્ટૉલ કરો. અમે તમારા ફોન પર એક SMS મોકલીશું: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium વિશે</translation>
 <translation id="2977470724722393594">Chromium અપ ટૂ ડેટ છે</translation>
 <translation id="3032787606318309379">Chromium માં ઉમેરી રહ્યું છે...</translation>
-<translation id="3046695367536568084">ઍપ્લિકેશનોનો ઉપયોગ કરવા માટે તમારે Chromium માં સાઇન ઇન કરવાની જરૂર છે. આ Chromium ને તમારી ઍપ્લિકેશનો, બુકમાર્ક્સ, ઇતિહાસ, પાસવર્ડ્સ અને સમગ્ર ઉપકરણો પર અન્ય સેટિંગ્સને સમન્વયિત કરવાની મંજૂરી આપે છે.</translation>
 <translation id="3068515742935458733">ક્રૅશ રિપોર્ટ અને <ph name="UMA_LINK" /> Googleને મોકલીને Chromium ને વધુ સારું બનાવવામાં મદદ કરો.</translation>
 <translation id="3103660991484857065">ઇન્સ્ટૉલર આર્કાઇવને અનકોમ્પ્રેસ કરવામાં નિષ્ફળ. કૃપા કરીને Chromium ફરીથી ડાઉનલોડ કરો.</translation>
 <translation id="3130323860337406239">Chromium તમારા માઇક્રોફોનનો ઉપયોગ કરી રહ્યું છે.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Chromium છુ&amp;પી વિંડોમાં લિંક ખોલો</translation>
 <translation id="3190315855212034486">ઓહ! Chromium ક્રેશ થઈ ગયું. હમણાં ફરીથી લોંચ કરીએ?</translation>
 <translation id="3229526316128325841">Chromium તમારા પાસવર્ડની નિકાસ કરવા માગે છે.</translation>
-<translation id="3256316712990552818">Chromium પર કૉપી કરી</translation>
 <translation id="3258596308407688501">Chromium એની ડેટા ડિરેક્ટરી વાંચી અથવા લખી શકતુંં નથી:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">નવીનતમ વર્ઝનમાં મહત્ત્વપૂર્ણ સુરક્ષા સુધારણાઓ અને નવી સુવિધાઓ ઉપલબ્ધ છે.</translation>
 <translation id="421369550622382712">Chromium માટે શ્રેષ્ઠ એપ્લીકેશન્સ, રમતો, એક્સટેન્શન્સ અને થીમ્સ શોધો.</translation>
 <translation id="4216212958613226427">આ ભાષાનો ઉપયોગ Chromium UI પ્રદર્શિત કરવા માટે થાય છે</translation>
-<translation id="4222580632002216401">તમે હવે Chromium માં સાઇન ઇન છો! સમન્વયન તમારા વ્યવસ્થાપક દ્વારા અક્ષમ કરેલું છે.</translation>
 <translation id="4230135487732243613">તમારા Chromium ડેટાને આ એકાઉન્ટ સાથે લિંક કરીએ?</translation>
 <translation id="4271805377592243930">Chromium સાથે સહાય મેળવો</translation>
 <translation id="4285930937574705105">અમઉલ્લેખિત ભૂલને કારણે ઇન્સ્ટોલેશન નિષ્ફળ થયું. જો Chromium હાલમાં ચાલી રહ્યું હોય, તો તેને બંધ કરો અને ફરી પ્રયાસ કરો.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Chromium પૃષ્ઠભૂમિ મોડમાં છે.</translation>
 <translation id="4987820182225656817">અતિથિઓ કંઈપણ પાછળ છોડ્યાં વિના Chromium નો ઉપયોગ કરી શકે છે.</translation>
 <translation id="4994636714258228724">સ્વયંને Chromium માં ઉમેરો</translation>
-<translation id="5181952534059945058">આ પેજ મેમરીનો બહુ ઉપયોગ કરે છે, તેથી Chromiumએ કેટલુંક કન્ટેન્ટ કાઢી નાખ્યું છે.</translation>
 <translation id="5277894862589591112">તમારા ફેરફારો લાગુ કરવા માટે, Chromiumને ફરી લૉન્ચ કરો</translation>
 <translation id="5358375970380395591">તમે મેનેજ કરેલા એકાઉન્ટ સાથે સાઇન ઇન કરી રહ્યાં છો અને તમારી Chromium પ્રોફાઇલ પર એનું એડમિન નિયંત્રણ આપી રહ્યાં છો. તમારો Chromium ડેટા, જેમ કે ઍપ, બુકમાર્ક, ઇતિહાસ, પાસવર્ડ અને બીજા સેટિંગ, કાયમ માટે <ph name="USER_NAME" /> થી બંધાયેલ રહેશે. તમે Google એકાઉન્ટ ડૅશબોર્ડથી આ ડેટાને કાઢી શકશો, પરંતુ તમે આ ડેટાને બીજા એકાઉન્ટ સાથે સાંકળી શકશો નહિ. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium અપડેટ થઈ રહ્યું છે (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">પુનઃપ્રારંભ કરો</translation>
 <translation id="5987687638152509985">સમન્વયનને પ્રારંભ કરવા માટે Chromium ને અપડેટ કરો</translation>
 <translation id="6013050204643758987"><ph name="BEGIN_LINK_LINUX_OSS" />Linux (બીટા)<ph name="END_LINK_LINUX_OSS" />ની જેમ, Chromium OS વધારાના <ph name="BEGIN_LINK_CROS_OSS" />ઓપન સૉર્સ સૉફ્ટવેર<ph name="END_LINK_CROS_OSS" /> દ્વારા શક્ય બન્યું છે.</translation>
-<translation id="6040143037577758943">બંધ કરો</translation>
 <translation id="6055895534982063517">Chromiumનું એક નવું વર્ઝન ઉપલબ્ધ છે અને તે પહેલાં કરતાંય વધુ ઝડપી છે.</translation>
 <translation id="6063093106622310249">અને Chromiumમાં ખોલો</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" />ને Chromiumમાં ઉમેરવામાં આવ્યું છે</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Chromium OS સિસ્ટમ</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium 1 સેકન્ડમાં ફરી શરૂ થશે}one{Chromium # સેકન્ડમાં ફરી શરૂ થશે}other{Chromium # સેકન્ડમાં ફરી શરૂ થશે}}</translation>
 <translation id="6475912303565314141">જ્યારે તમે Chromium શરૂ કરો ત્યારે કયું પૃષ્ઠ બતાવવામાં આવે તે તેનું પણ નિયંત્રણ કરે છે.</translation>
-<translation id="6485906693002546646">તમે તમારી Chromium સામગ્રીનું સિંક કરવા માટે <ph name="PROFILE_EMAIL" /> નો ઉપયોગ કરી રહ્યાં છો. તમારી સિંક પસંદગીને અપડેટ કરવા માટે અથવા Chromium ને Google એકાઉન્ટ વગર ઉપયોગ કરવા માટે, <ph name="SETTINGS_LINK" /> ની મુલાકાત લો.</translation>
 <translation id="6510925080656968729">Chromium ને અનઇન્સ્ટૉલ કરો</translation>
 <translation id="6570579332384693436">જોડણીની ભૂલો સુધારવા માટે, Chromium તમે ટેક્સ્ટ ફીલ્ડમાં ટાઇપ કરો તે ટેક્સ્ટ Googleને મોકલે છે</translation>
 <translation id="6598877126913850652">Chromiumની નોટિફિકેશનની સેટિંગ પર જાઓ</translation>
@@ -164,7 +150,6 @@
 કેટલીક સુવિધાઓ ઉપલબ્ધ થઈ શકે છે. કૃપા કરીને અલગ પ્રોફાઇલ ડિરેક્ટરીનો ઉલ્લેખ કરો અથવા Chromiumના નવા વર્ઝનનો ઉપયોગ કરો.</translation>
 <translation id="6734080038664603509">&amp;Chromium ને અપડેટ કરો</translation>
 <translation id="6734291798041940871">Chromium, તમારા કમ્પ્યુટર પર તમામ વપરાશકર્તાઓ માટે પહેલાંથી ઇન્સ્ટૉલ કરેલ છે.</translation>
-<translation id="6810143991807788455">વર્તમાન સેટિંગ્સની જાણ કરીને Chromium ને વધુ સારું બનાવવામાં સહાય કરો</translation>
 <translation id="6847869444787758381">Chromium વડે તમે તમારા પાસવર્ડમાં ક્યારેક ચેડાં થાય તો તેના વિશે જાણકારી મેળવી શકો છો</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (Chromium પર કૉપિ કરેલું છે)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">તમારી પસંદગીઓ ફાઇલ દૂષિત અથવા અમાન્ય છે.
 
 Chromium તમારી સેટિંગ્સને પુનઃપ્રાપ્ત કરવામાં અક્ષમ છે.</translation>
-<translation id="7331920710658926971">તમારા ફોન પર Chromium ઇન્સ્ટૉલ કરો. અમે તમારા ફોન પર એક SMS મોકલીશું.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">નવી વિંડો</translation>
 <translation id="734373864078049451">તમારું વેબ, બુકમાર્ક્સ, અને અન્ય Chromium સામગ્રી અહીં રહે છે.</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">Chromium મેનૂમાં છુપાવો</translation>
 <translation id="8013436988911883588">એકવાર Chromiumને ઍક્સેસ મળે, તે પછી વેબસાઇટ તમારી પાસે ઍક્સેસ માગી શકશે.</translation>
 <translation id="81770708095080097">આ ફાઇલ જોખમી છે, તેથી Chromium એ તેને અવરોધિત કરેલ છે.</translation>
-<translation id="8222496066431494154">તમારા ફોન પર Chromium ઇન્સ્ટૉલ કરો. અમે તમારા એકાઉન્ટને પાછું મેળવવા ફોન નંબર પર એક SMS મોકલીશું: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">જો છબીમાં ઉપયોગી વર્ણન ન હોય, તો Chromium તમને વર્ણન પૂરું પાડવાનો પ્રયાસ કરશે. વર્ણન બનાવવા માટે, Googleને છબીઓ મોકલવામાં આવે છે. તમે આને કોઈપણ સમયે સેટિંગમાં જઈને બંધ કરી શકો છો.</translation>
-<translation id="8269379391216269538">Chromium ને બહેતર બનાવવામાં સહાય કરો</translation>
 <translation id="8290862415967981663">આ ફાઇલ જોખમી હોઈ શકે છે, તેથી Chromium એ તેને અવરોધિત કરેલ છે.</translation>
 <translation id="8330519371938183845">તમારા બધા ડિવાઇસ પર Chromiumને સિંક કરો અને મનગમતું બનાવવા માટે સાઇન ઇન કરો</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" />, પહેલાં Chromium નો ઉપયોગ કરી રહ્યાં હતાં</translation>
 <translation id="8417404458978023919">{0,plural, =1{એક દિવસની અંદર Chromiumને ફરીથી લૉન્ચ કરો}one{# દિવસની અંદર Chromiumને ફરીથી લૉન્ચ કરો}other{# દિવસની અંદર Chromiumને ફરીથી લૉન્ચ કરો}}</translation>
 <translation id="8453117565092476964">ઇન્સ્ટૉલર આર્કાઇવ ખરાબ અથવા અમાન્ય છે. કૃપા કરીને Chromium ફરીથી ડાઉનલોડ કરો.</translation>
 <translation id="8493179195440786826">Chromium જૂનું થઈ ગયું છે</translation>
-<translation id="85843667276690461">Chromium નો ઉપયોગ કરવા સહાય મેળવો</translation>
 <translation id="8586442755830160949">કોપિરાઇટ <ph name="YEAR" /> The Chromium Authors. સર્વાધિકાર સુરક્ષિત.</translation>
 <translation id="8619360774459241877">Chromium લૉન્ચ કરી રહ્યાં છીએ…</translation>
 <translation id="8621669128220841554">અનુલ્લેખિત ભૂલને કારણે ઇન્સ્ટોલેશન નિષ્ફળ રહ્યું. કૃપા કરીને Chromium ફરીથી ડાઉનલોડ કરો.</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">Chromium પાસવર્ડ્સ બતાવવાનો પ્રયાસ કરી રહ્યું છે. આની મંજૂરી આપવા માટે તમારો Windows પાસવર્ડ લખો.</translation>
 <translation id="8941642502866065432">Chromium અપડેટ કરી શકતાં નથી</translation>
 <translation id="8974095189086268230">Chromium OSએ વધારાનાં <ph name="BEGIN_LINK_CROS_OSS" />ઓપન સ્રોત સૉફ્ટવેર<ph name="END_LINK_CROS_OSS" /> દ્વારા શક્ય બનાવ્યું છે.</translation>
-<translation id="8985587603644336029">કોઈએ પહેલાં Chromiumમાં આ કમ્પ્યુટર પર <ph name="ACCOUNT_EMAIL_LAST" /> તરીકે સાઇન ઇન કર્યું છે. જો એ તમારું એકાઉન્ટ નથી, તો તમારી માહિતીને અલગ રાખવા માટે નવો Chromium વપરાશકર્તા બનાવો.
-
-કોઈ પણ રીતે સાઇન ઇન કરવું બુકમાર્ક, ઇતિહાસ, અને બીજા સેટિંગ જેવી Chromium માહિતીને <ph name="ACCOUNT_EMAIL_NEW" />માં મર્જ કરશે.</translation>
 <translation id="9019929317751753759">Chromium ને સુરક્ષિત બનાવવા માટે, અમે નીચેના એક્સ્ટેન્શનને અક્ષમ કર્યું છે કે જે <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> માં સૂચિબદ્ધ નથી અને તમારી જાણ વિના ઉમેરવામાં આવ્યું હોઈ શકે છે.</translation>
 <translation id="9022552996538154597">Chromium માં સાઇન ઇન કરો</translation>
-<translation id="9025992965467895364">આ પેજ ઘણી વધુ મેમરીનો ઉપયોગ કરે છે, તેથી Chromiumએ તેને થોભાવ્યું છે.</translation>
-<translation id="9036189287518468038">Chromium ઍપ્લિકેશન લૉંચર</translation>
 <translation id="9089354809943900324">Chromium જૂનું થઈ ગયું છે</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium એક કલાકમાં ફરીથી લૉન્ચ થશે}one{Chromium # કલાકમાં ફરીથી લૉન્ચ થશે}other{Chromium # કલાકમાં ફરીથી લૉન્ચ થશે}}</translation>
 <translation id="91086099826398415">નવા Chromium &amp;ટૅબમાં લિંક ખોલો</translation>
 <translation id="911206726377975832">તમારો બ્રાઉઝિંગ ડેટા પણ ડિલીટ કરી દઈએ?</translation>
 <translation id="9158494823179993217">તમારા સિસ્ટમ વ્યવસ્થાપકે <ph name="TARGET_URL_HOSTNAME" />ને ઍક્સેસ કરવા Chromiumને વૈકલ્પિક બ્રાઉઝર ખોલવા માટે ગોઠવેલું છે.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" />ને ડિસ્કનેક્ટ કરવું આ ડિવાઇસ પર સ્ટોર તમારા ઇતિહાસ, બુકમાર્ક, સેટિંગ અને બીજા Chromium ડેટાને કાઢી નાંખશે. તમારા Google એકાઉન્ટમાં સ્ટોર કરેલો ડેટા કાઢી નંખાશે નહિ અને તે <ph name="GOOGLE_DASHBOARD_LINK" />Google ડૅશબોર્ડ<ph name="END_GOOGLE_DASHBOARD_LINK" /> પર મેનેજ કરી શકાય છે.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">તમે હમણાં Chromium માં સાઇન ઇન કર્યું છે</translation>
 <translation id="93478295209880648">Chromium યોગ્ય રીતે કાર્ય ન કરે તેવું બની શકે કારણ કે તે હવેથી Windows XP અથવા Windows Vista પર સમર્થિત નથી</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> માટે જરૂરી છે કે તમે આ ડિવાઇસનો ઉપયોગ કરતાં પહેલાં નીચેની સેવાની શરતોને વાંચો અને સ્વીકારો. આ શરતો Chromium OS શરતોને વિસ્તૃત, સંશોધિત અથવા મર્યાદિત કરતી નથી.</translation>
 <translation id="985602178874221306">Chromium લેખકો</translation>
diff --git a/chrome/app/resources/chromium_strings_hi.xtb b/chrome/app/resources/chromium_strings_hi.xtb
index 292d2e8..81205579 100644
--- a/chrome/app/resources/chromium_strings_hi.xtb
+++ b/chrome/app/resources/chromium_strings_hi.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">क्रोमियम आपके पासवर्ड निर्यात करना चाहता है. इसकी मंज़ूरी देने के लिए अपना Windows पासवर्ड लिखें.</translation>
 <translation id="1115445892567829615">क्रोमियम आपका डेटा सिंक नहीं कर सका. कृपया अपना सिंक 'पासफ़्रेज़' अपडेट करें.</translation>
 <translation id="113122355610423240">क्रोमियम आपका डिफ़ॉल्ट ब्राउज़र है</translation>
-<translation id="1170115874949214249">अपने फ़ोन पर क्रोमियम इंस्टॉल करें. हम आपके खाता बहाली के लिए दिए गए फ़ोन नंबर पर एक मैसेज (एसएमएस) भेजेंगे.</translation>
-<translation id="1174473354587728743">कंप्यूटर शेयर करते हैं? अब आप क्रोमियम को जैसा चाहें वैसा सेट कर सकते हैं.</translation>
 <translation id="1185134272377778587">क्रोमियम के बारे में</translation>
-<translation id="1298199220304005244">क्रोमियम OS उपयोग करने के साथ सहायता पाएं</translation>
 <translation id="1396446129537741364">क्रोमियम पासवर्ड दिखाने का प्रयास कर रहा है.</translation>
 <translation id="1414495520565016063">आप क्रोमियम में प्रवेश हैं!</translation>
 <translation id="151962892725702025">क्रोमियम OS आपका डेटा समन्वयित नहीं कर सका क्योंकि आपके डोमेन के लिए समन्वयन उपलब्ध नहीं है.</translation>
 <translation id="1524282610922162960">क्रोमियम का टैब शेयर करें</translation>
-<translation id="1668054258064581266">क्रोमियम से अपना खाता हटाने के बाद, आपको अपने खुले टैब फिर लोड करने की ज़रुरत हो सकती है, ताकि वे प्रभावी हो सकें.</translation>
-<translation id="1688750314291223739">वेब पर अपनी व्यक्तिगत ब्राउज़र सुविधाएं सेव करने के लिए सिंक सेट करें और किसी भी कंप्‍यूटर पर क्रोमियम से एक्सेस करें.</translation>
 <translation id="1708666629004767631">क्रोमियम का एक नया और सुरक्षित वर्शन उपलब्ध है.</translation>
 <translation id="1766096484055239003">आपका एडमिन चाहता है कि आप अपडेट लागू करने के लिए क्रोमियम को फिर से लॉन्च करें</translation>
 <translation id="1774152462503052664">क्रोमियम को पृष्ठभूमि में चलने दें</translation>
 <translation id="1779356040007214683">Chromium को ज़्यादा सुरक्षित बनाने के लिए, हमने ऐसे कुछ एक्सटेंशन अक्षम कर दिए हैं जो <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> में सूचीबद्ध नहीं हैं और आपकी जानकारी के बिना जोड़े गए हो सकते हैं.</translation>
 <translation id="1808667845054772817">क्रोमियम को फिर से इंस्टॉल करें</translation>
-<translation id="1869480248812203386">आप Google को संभावित सुरक्षा घटनाओं के विवरणों की अपने आप रिपोर्ट करके क्रोमियम को ज़्यादा सुरक्षित और आसान बनाने में सहायता कर सकते हैं.</translation>
 <translation id="1881322772814446296">आप प्रबंधित खाते से साइन इन कर रहे हैं और उसके एडमिन को अपनी क्रोमियम प्रोफ़ाइल पर नियंत्रण दे रहे हैं. आपका क्रोमियम डेटा, जैसे आपके ऐप्लिकेशन, बुकमार्क, इतिहास, पासवर्ड, और दूसरे सेटिंग स्थायी रूप से <ph name="USER_NAME" /> से जुड़ जाएंगे. आप Google खाता डैशबोर्ड के ज़रिए इस डेटा को मिटा सकेंगे, लेकिन दूसरे किसी खाते से इस डेटा को जोड़ नहीं सकेंगे. आप अपने मौजूदा क्रोमियम डेटा को अलग रखने के लिए वैकल्पिक रूप से एक नई प्रोफ़ाइल बना सकते हैं. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">इसे बंद करके, आप क्रोमियम में साइन इन किए बिना Gmail जैसी Google साइटों में साइन इन कर सकते हैं</translation>
 <translation id="1929939181775079593">क्रोमियम अनुत्तरदायी है. अभी रीलॉन्‍च करें?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">आपके एडमिन का कहना है कि यह अपडेट लागू करने के लिए, आप क्रोमियम को फिर से लॉन्च करें</translation>
 <translation id="2119636228670142020">&amp;क्रोमियम OS के बारे में</translation>
 <translation id="2241627712206172106">अगर आप किसी कंप्यूटर को शेयर करते हैं, तो दोस्त और परिवार अलग-अलग ब्राउज़ कर सकते हैं और क्रोमियम को जैसा चाहें सेट कर सकते हैं.</translation>
-<translation id="2265088490657775772">अपने iPhone पर क्रोमियम पाएं</translation>
 <translation id="2347108572062610441">इस एक्सटेंशन ने यह बदल दिया है कि जब आप क्रोमियम प्रारंभ करते हैं तब कौन सा पृष्‍ठ दिखाया जाए.</translation>
 <translation id="2396765026452590966">एक्सटेंशन "<ph name="EXTENSION_NAME" />" ने यह बदल दिया है कि जब आप क्रोमियम प्रारंभ करते हैं तब कौन सा पृष्‍ठ दिखाया जाए.</translation>
 <translation id="2483889755041906834">क्रोमियम में</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">अपडेट करने के लिए, क्रोमियम को इस कंप्यूटर पर बंद करना होगा. इससे कंप्यूटर में लॉगिन करने वाले अन्य उपयोगकर्ता वह डेटा खो सकते हैं जिसे सेव नहीं किया गया है.</translation>
 <translation id="2847479871509788944">क्रोमियम से निकालें...</translation>
 <translation id="2886012850691518054">वैकल्पिक: अपने आप इस्तेमाल के आंकड़े और खराबी रिपोर्ट Google को भेजकर Chrome को बेहतर बनाने में मदद करें.</translation>
-<translation id="2898082584336937987">अपने फ़ोन पर क्रोमियम इंस्टॉल करें. हम आपके फ़ोन पर एक मैसेज (एसएमएस) भेजेंगे: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;क्रोमियम के बारे में</translation>
 <translation id="2977470724722393594">क्रोमियम अप टू डेट है</translation>
 <translation id="3032787606318309379">क्रोमियम में जोड़ रहा है...</translation>
-<translation id="3046695367536568084">ऐप्स का उपयोग करने के लिए आपको क्रोमियम में प्रवेश किए हुए रहना होगा. इससे क्रोमियम सभी डिवाइस पर मौजूद आपके ऐप्स, बुकमार्क, इतिहास, पासवर्ड और अन्य सेटिंग समन्वयित कर सकेगा.</translation>
 <translation id="3068515742935458733">Google को क्रैश रिपोर्ट और <ph name="UMA_LINK" /> भेजकर क्रोमियम को बेहतर बनाने में मदद करें</translation>
 <translation id="3103660991484857065">इंस्‍टॉलर संगह को असंकुचित करने में विफल हुआ. कृपया क्रोमियम फिर से डाउनलोड करें.</translation>
 <translation id="3130323860337406239">Chromium आपके माइक्रोफ़ोन का उपयोग कर रहा है.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">क्रोमियम गु&amp;प्त विंडो में लिंक खोलें</translation>
 <translation id="3190315855212034486">ओह! क्रोमियम क्रैश हुआ. अभी फिर से लॉन्‍च करें?</translation>
 <translation id="3229526316128325841">क्रोमियम आपके पासवर्ड निर्यात करना चाहता है.</translation>
-<translation id="3256316712990552818">क्रोमियम पर कॉपी किया गया</translation>
 <translation id="3258596308407688501">क्रोमियम इसकी डेटा निर्देशिका में पढ़ या लिख नहीं सकता:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">महत्‍वपूर्ण सुरक्षा सुधार और नई सुविधाएं नवीनतम वर्शन में उपलब्‍ध हैं.</translation>
 <translation id="421369550622382712">क्रोमियम के लिए शानदार ऐप्‍स, गेम, एक्‍सटेंशन और थीम खोजें.</translation>
 <translation id="4216212958613226427">इस भाषा का इस्तेमाल क्रोमियम यूज़र इंटरफ़ेस (यूआई) की सामग्री दिखाने के लिए किया जाता है</translation>
-<translation id="4222580632002216401">अब आप क्रोमियम में प्रवेश हैं! समन्वयन को आपके व्यवस्थापक द्वारा अक्षम किया गया है.</translation>
 <translation id="4230135487732243613">आपके क्रोमियम डेटा को इस खाते से लिंक करें?</translation>
 <translation id="4271805377592243930">क्रोमियम के लिए सहायता पाएं</translation>
 <translation id="4285930937574705105">अनिर्दिष्ट कारण से इंस्‍टॉलेशन विफल हुआ. अगर Google Chrome अभी खुला हुआ है, तो कृपया उसे बंद करें और फिर से प्रयास करें.</translation>
@@ -96,6 +85,7 @@
 <translation id="4567424176335768812">आपने <ph name="USER_EMAIL_ADDRESS" /> के रूप में साइन इन किया हुआ है. अब आप अपने सभी साइन इन किए हुए डिवाइस पर अपने बुकमार्क, इतिहास, और दूसरी सेटिंग को एक्सेस कर सकते हैं.</translation>
 <translation id="459535195905078186">क्रोमियम ऐप्स</translation>
 <translation id="4621240073146040695">करीब अप टू डेट हो गया है! अपडेट करना पूरा करने के लिए क्रोमियम फिर से लॉन्च करें.</translation>
+<translation id="4661006601577405669">आने वाले समय में 'क्रोमियम' के वर्शन अपने आप इंस्टॉल हो जाएंगे.</translation>
 <translation id="4677944499843243528">ऐसा लगता है कि प्रोफ़ाइल का उपयोग अन्य क्रोमियम प्रोसेस (<ph name="PROCESS_ID" />) द्वारा किसी अन्य कंप्यूटर (<ph name="HOST_NAME" />) पर किया जा रहा है. क्रोमियम ने प्रोफ़ाइल को लॉक कर दिया है ताकि वह दूषित न हो. अगर आप पक्का हैं कि कोई अन्य प्रोसेस इस प्रोफ़ाइल का उपयोग नहीं कर रही हैं, तो आप प्रोफ़ाइल को अनलॉक कर सकते हैं और क्रोमियम को फिर से लॉन्च कर सकते हैं.</translation>
 <translation id="469338717132742108">क्रोमियम OS के लिए सहायता पाएं</translation>
 <translation id="4708774505295300557">इस कंप्यूटर पर पहले किसी अन्य व्यक्ति ने <ph name="ACCOUNT_EMAIL_LAST" /> के रूप में Chromium में साइन इन किया. अपनी जानकारी अलग रखने के लिए कृपया नया Chromium उपयोगकर्ता बनाएं.</translation>
@@ -106,7 +96,6 @@
 <translation id="4943838377383847465">क्रोमियम पृष्ठभूमि मोड में है.</translation>
 <translation id="4987820182225656817">अतिथि कुछ भी छोड़े बिना क्रोमियम का उपयोग कर सकते हैं.</translation>
 <translation id="4994636714258228724">स्वयं को क्रोमियम में जोड़ें</translation>
-<translation id="5181952534059945058">यह पेज बहुत ज़्यादा मेमोरी का इस्तेमाल करता है, इसलिए क्रोमियम ने कुछ सामग्री हटा दी है.</translation>
 <translation id="5277894862589591112">अपने बदलाव लागू करने के लिए, क्रोमियम को फिर से लॉन्च करें</translation>
 <translation id="5358375970380395591">आप प्रबंधित खाते से साइन इन कर रहे हैं और उसके एडमिन को अपनी क्रोमियम प्रोफ़ाइल पर नियंत्रण दे रहे हैं. आपका क्रोमियम डेटा, जैसे आपके ऐप्लिकेशन, बुकमार्क, इतिहास, पासवर्ड, और दूसरे सेटिंग स्थायी रूप से <ph name="USER_NAME" /> से जुड़ जाएंगे. आप Google खाता डैशबोर्ड के ज़रिए इस डेटा को मिटा सकेंगे, लेकिन आप किसी अन्य खाते से इस डेटा को जोड़ नहीं सकेंगे. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">क्रोमियम अपडेट हो रहा है (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -129,7 +118,6 @@
 <translation id="5895138241574237353">फिर से प्रारंभ करें</translation>
 <translation id="5987687638152509985">सिंक शुरू करने के लिए क्रोमियम अपडेट करें</translation>
 <translation id="6013050204643758987">क्रोमियम ओएस को <ph name="BEGIN_LINK_LINUX_OSS" />Linux (बीटा)<ph name="END_LINK_LINUX_OSS" /> की तरह ही, अतिरिक्त <ph name="BEGIN_LINK_CROS_OSS" />ओपन सोर्स सॉफ़्टवेयर<ph name="END_LINK_CROS_OSS" /> के ज़रिए कारगर बनाया गया है.</translation>
-<translation id="6040143037577758943">बंद करें</translation>
 <translation id="6055895534982063517">क्रोमियम का एक नया वर्शन उपलब्ध है और यह पहले से ज़्यादा तेज़ है.</translation>
 <translation id="6063093106622310249">&amp;क्रोमियम में खोलें</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> को क्रोमियम में जोड़ा गया</translation>
@@ -151,7 +139,6 @@
 <translation id="6434250628340475518">क्रोमियम OS सिस्टम</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{क्रोमियम 1 सेकंड में रीस्टार्ट होगा}one{क्रोमियम # सेकंड में रीस्टार्ट होगा}other{क्रोमियम # सेकंड में रीस्टार्ट होगा}}</translation>
 <translation id="6475912303565314141">इससे यह भी नियंत्रित होता है कि जब आप क्रोमियम प्रारंभ करते हैं तब कौन सा पृष्‍ठ दिखाया जाए.</translation>
-<translation id="6485906693002546646">आप अपनी क्रोमियम सामग्री को सिंक करने के लिए <ph name="PROFILE_EMAIL" /> का उपयोग कर रहे हैं. सिंक करने की अपनी प्राथमिकता को अपडेट करने या 'Google खाते' के बिना क्रोमियम का उपयोग करने के लिए, <ph name="SETTINGS_LINK" /> पर जाएं.</translation>
 <translation id="6510925080656968729">क्रोमियम को अनइंस्टाल करें</translation>
 <translation id="6570579332384693436">स्पेलिंग की गड़बड़ियां ठीक करने के लिए, क्रोमियम लेख फ़ील्ड में आपके लिखे गए लेख को Google को भेजती है</translation>
 <translation id="6598877126913850652">क्रोमियम की सूचना सेटिंग पर जाएं</translation>
@@ -161,7 +148,6 @@
 हो सकता है कुछ सुविधाएं अनुपलब्ध हों. कृपया अलग प्रोफाइल निर्देशिका दर्ज करें या क्रोमियम के नए वर्शन का उपयोग करें.</translation>
 <translation id="6734080038664603509">क्रोमियम अपडेट करें</translation>
 <translation id="6734291798041940871">आपके कंप्यूटर पर मौजूद सभी उपयोगकर्ताओं के लिए क्रोमियम पहले से इंस्टॉल है.</translation>
-<translation id="6810143991807788455">वर्तमान सेटिंग की रिपोर्ट करके क्रोमियम को बेहतर बनाने में सहायता करें</translation>
 <translation id="6847869444787758381">'क्रोमियम' यह बताता है कि कहीं आपके पासवर्ड का गलत इस्तेमाल तो नहीं किया गया है</translation>
 <translation id="6857782730669500492">क्रोमियम - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (क्रोमियम पर कॉपी किया गया)</translation>
@@ -180,7 +166,6 @@
 <translation id="7318036098707714271">आपकी पसंदीदा फ़ाइल खराब या अमान्‍य है.
 
 क्रोमियम आपकी सेटिंग बहाल नहीं कर सकता.</translation>
-<translation id="7331920710658926971">अपने फ़ोन पर क्रोमियम इंस्टॉल करें. हम आपके फ़ोन पर एक मैसेज (एसएमएस) भेजेंगे.</translation>
 <translation id="7337881442233988129">क्रोमियम</translation>
 <translation id="7339898014177206373">नई विंडो</translation>
 <translation id="734373864078049451">आपके वेब, बुकमार्क, और अन्य क्रोमियम सामग्री यहां मौजूद रहती है.</translation>
@@ -189,6 +174,7 @@
 <translation id="7449453770951226939"><ph name="PAGE_TITLE" /> - क्रोमियम डेवपलर</translation>
 <translation id="7451052299415159299">क्रोमियम को इस साइट के लिए आपका कैमरा एक्सेस करने की अनुमति चाहिए</translation>
 <translation id="7483335560992089831">वर्तमान में चल रहे समान क्रोमियम वर्शन को इंस्‍टॉल नहीं कर सकते. कृपया क्रोमियम बंद करें और फिर से प्रयास करें.</translation>
+<translation id="751093125041325477">आने वाले समय में 'क्रोमियम' के वर्शन अपने आप इंस्टॉल हो जाएंगे. डाउनलोड होने के बाद 'क्रोमियम' रिस्टार्ट होगा और आप उसका इस्तेमाल कर पाएंगे.</translation>
 <translation id="753534427205733210">{0,plural, =1{क्रोमियम 1 मिनट में फिर से लॉन्च होगा}one{क्रोमियम # मिनट में फिर से लॉन्च होगा}other{क्रोमियम # मिनट में फिर से लॉन्च होगा}}</translation>
 <translation id="7549178288319965365">क्रोमियम OS के बारे में</translation>
 <translation id="7561906087460245826">साथ ही, क्रोमियम (<ph name="URL" />) का डेटा साफ़ करें</translation>
@@ -211,16 +197,13 @@
 <translation id="7979877361127045932">क्रोमियम मेन्यू में छिपाएं</translation>
 <translation id="8013436988911883588">क्रोमियम को ऐक्सेस मिलने के बाद, वेबसाइटें आपसे ऐक्सेस मांग सकेंगी.</translation>
 <translation id="81770708095080097">यह फ़ाइल खतरनाक है, इसलिए क्रोमियम ने इसे रोक दिया है.</translation>
-<translation id="8222496066431494154">अपने फ़ोन पर क्रोमियम इंस्टॉल करें. हम आपके खाता बहाली के लिए दिए गए फ़ोन नंबर पर एक मैसेज (एसएमएस) भेजेंगे: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">अगर किसी इमेज के बारे में मददगार जानकारी मौजूद नहीं है, तो 'क्रोमियम' उसके बारे में जानकारी देने की कोशिश करेगा. जानकारी तैयार करने के लिए, इमेज Google को भेजी जाती हैं. आप किसी भी समय सेटिंग में जाकर इसे बंद कर सकते हैं.</translation>
-<translation id="8269379391216269538">क्रोमियम को बेहतर बनाने में सहायता करें</translation>
 <translation id="8290862415967981663">यह फ़ाइल खतरनाक हो सकती है, इसलिए क्रोमियम ने इसे ब्लॉक कर दिया है.</translation>
 <translation id="8330519371938183845">Chrome को अपने सभी डिवाइस पर सिंक करने और मनमुताबिक बनाने के लिए साइन इन करें</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> पहले क्रोमियम का उपयोग कर रहा था</translation>
 <translation id="8417404458978023919">{0,plural, =1{एक दिन के अंदर क्रोमियम को फिर से लॉन्च करें}one{# दिनों के अंदर क्रोमियम को फिर से लॉन्च करें}other{# दिनों के अंदर क्रोमियम को फिर से लॉन्च करें}}</translation>
 <translation id="8453117565092476964">इंस्‍टॉलर संग्रह खराब या अमान्‍य है. कृपया क्रोमियम फिर से डाउनलोड करें.</translation>
 <translation id="8493179195440786826">क्रोमियम पुराना हो गया है</translation>
-<translation id="85843667276690461">क्रोमियम उपयोग करने के साथ सहायता पाएं</translation>
 <translation id="8586442755830160949">कॉपीराइट <ph name="YEAR" /> The Chromium Authors. सर्वाधिकार सुरक्षित.</translation>
 <translation id="8619360774459241877">क्रोमियम लॉन्च हो रहा है...</translation>
 <translation id="8621669128220841554">अनिर्दिष्ट कारणों से इंस्‍टॉलेशन विफल हुआ. कृपया क्रोमियम फिर से डाउनलोड करें.</translation>
@@ -238,21 +221,14 @@
 <translation id="8907580949721785412">Chromium पासवर्ड दिखाने का प्रयास कर रहा है. इसे अनुमति देने के लिए अपना Windows पासवर्ड लिखें.</translation>
 <translation id="8941642502866065432">क्रोमियम को अपडेट नहीं किया जा सकता</translation>
 <translation id="8974095189086268230">क्रोमियम OS अतिरिक्त <ph name="BEGIN_LINK_CROS_OSS" />खुला स्रोत सॉफ़्टवेयर<ph name="END_LINK_CROS_OSS" /> द्वारा संभव बनाया गया है.</translation>
-<translation id="8985587603644336029">इस कंप्यूटर पर पहले किसी अन्य व्यक्ति ने <ph name="ACCOUNT_EMAIL_LAST" /> के रूप में Chromium में साइन इन किया. अगर वह आपका खाता नहीं है तो, अपनी जानकारी अलग रखने के लिए कृपया नया Chromium उपयोगकर्ता बनाएं.
-
-किसी भी तरह साइन इन करने से बुकमार्क, इतिहास और अन्य सेटिंग से जुड़ी Chromium की जानकारियां <ph name="ACCOUNT_EMAIL_NEW" /> में मिल जाएंगी.</translation>
 <translation id="9019929317751753759">क्रोमियम को ज़्यादा सुरक्षित बनाने के लिए, हमने निम्न एक्सटेंशन को अक्षम कर दिया है जो <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> में सूचीबद्ध नहीं है और आपकी जानकारी के बिना जोड़ा गया हो सकता है.</translation>
 <translation id="9022552996538154597">क्रोमियम में साइन इन करें</translation>
-<translation id="9025992965467895364">यह पेज बहुत ज़्यादा मेमोरी का इस्तेमाल करता है, इसलिए क्रोमियम ने इसे रोक दिया है.</translation>
-<translation id="9036189287518468038">क्रोमियम ऐप्लिकेशन लॉन्चर</translation>
 <translation id="9089354809943900324">क्रोमियम पुराना हो गया है</translation>
 <translation id="9093206154853821181">{0,plural, =1{क्रोमियम एक घंटे के अंदर फिर से लॉन्च होगा}one{क्रोमियम # घंटे के अंदर फिर से लॉन्च होगा}other{क्रोमियम # घंटे के अंदर फिर से लॉन्च होगा}}</translation>
 <translation id="91086099826398415">नए क्रोमियम &amp;टैब में लिंक खोलें</translation>
 <translation id="911206726377975832">अपने ब्राउज़िंग डेटा भी मिटाएं?</translation>
 <translation id="9158494823179993217">आपके सिस्टम एडमिन ने 'क्रोमियम' को इस तरह कॉन्फ़िगर किया है कि वह <ph name="TARGET_URL_HOSTNAME" /> को ऐक्सेस करने के लिए कोई दूसरा ब्राउज़र खोले.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> को डिसकनेक्ट करने से आपका इतिहास, बुकमार्क, सेटिंग, और इस डिवाइस पर संग्रहित अन्य क्रोमियम डेटा साफ़ हो जाएगा. आपके Google खाते में संग्रहित डेटा साफ़ नहीं होगा और उसे <ph name="GOOGLE_DASHBOARD_LINK" />Google डैशबोर्ड<ph name="END_GOOGLE_DASHBOARD_LINK" /> पर प्रबंधित किया जा सकता है.</translation>
 <translation id="9190841055450128916">क्रोमियम (mDNS-In)</translation>
-<translation id="9197815481970649201">अब आपने क्रोमियम में प्रवेश कर लिया है</translation>
 <translation id="93478295209880648">हो सकता है क्रोमियम सही तरीके से काम ना करें क्‍योंकि अब वह Windows XP या Windows Vista पर काम नहीं करता है</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> चाहता है कि इस डिवाइस का उपयोग करने से पहले आप इन सेवा की शर्तों को पढ़ लें और उन्हें स्वीकार करें. ये शर्तें क्रोमियम OS शर्तों का विस्तार, उनमें बदलाव या उन्हें सीमित नहीं करतीं.</translation>
 <translation id="985602178874221306">क्रोमियम लेखक</translation>
diff --git a/chrome/app/resources/chromium_strings_hr.xtb b/chrome/app/resources/chromium_strings_hr.xtb
index eef2cee2..56bbbda 100644
--- a/chrome/app/resources/chromium_strings_hr.xtb
+++ b/chrome/app/resources/chromium_strings_hr.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium želi izvesti vaše zaporke. Upišite svoju zaporku za Windows da biste to dopustili.</translation>
 <translation id="1115445892567829615">Chromium nije mogao sinkronizirati vaše podatke. Ažurirajte svoju zaporku za sinkronizaciju.</translation>
 <translation id="113122355610423240">Chromium je vaš zadani preglednik</translation>
-<translation id="1170115874949214249">Instalirajte Chromium na telefon. Poslat ćemo vam SMS na telefonski broj za oporavak računa.</translation>
-<translation id="1174473354587728743">Dijelite računalo? Sada možete prilagoditi Chromium baš kako želite.</translation>
 <translation id="1185134272377778587">O pregledniku Chromium</translation>
-<translation id="1298199220304005244">Pomoć za upotrebu OS-a Chromium</translation>
 <translation id="1396446129537741364">Chromium pokušava prikazati zaporke.</translation>
 <translation id="1414495520565016063">Prijavljeni ste na Chromium!</translation>
 <translation id="151962892725702025">OS Chromium nije mogao sinkronizirati vaše podatke jer sinkronizacija nije dostupna za vašu domenu.</translation>
 <translation id="1524282610922162960">Dijeljenje kartice Chromium</translation>
-<translation id="1668054258064581266">Nakon uklanjanja računa s Chromiuma možda ćete morati ponovo učitati otvorene kartice kako bi nastupile promjene.</translation>
-<translation id="1688750314291223739">Postavite sinkronizaciju da biste spremili svoje prilagođene značajke preglednika na web i pristupali im s preglednika Chromium na bilo kojem računalu.</translation>
 <translation id="1708666629004767631">Dostupna je nova, sigurnija verzija preglednika Chromium.</translation>
 <translation id="1766096484055239003">Vaš administrator zahtijeva da ponovo pokrenete Chromium radi primjene ažuriranja</translation>
 <translation id="1774152462503052664">Neka Chromium radi u pozadini</translation>
 <translation id="1779356040007214683">Kako bismo Chromium učinili sigurnijim, onemogućili smo neka proširenja koja nisu navedena u trgovini <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> i možda su dodana bez vašeg znanja.</translation>
 <translation id="1808667845054772817">Ponovo instaliraj Chromium</translation>
-<translation id="1869480248812203386">Možete pomoći da Chromium bude sigurniji i jednostavniji za upotrebu tako što ćete omogućiti da se Googleu automatski prijavljuju pojedinosti o mogućim sigurnosnim incidentima.</translation>
 <translation id="1881322772814446296">Prijavljujete se upravljanim računom i dajete administratoru kontrolu nad svojim profilom u sustavu Chromium. Vaši podaci u sustavu Chromium, primjerice, aplikacije, oznake, povijest, zaporke i ostale postavke, trajno će se povezati s korisnikom <ph name="USER_NAME" />. Moći ćete izbrisati te podatke putem Nadzorne ploče Google računa, ali ih nećete moći povezati s nekim drugim računom. Ako želite, možete izraditi novi profil kako biste zadržali postojeće podatke u sustavu Chromium zasebno. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Ako isključite tu opciju, možete se prijaviti na Googleove web-lokacije kao što je Gmail bez prijavljivanja u Chromium</translation>
 <translation id="1929939181775079593">Chromium ne reagira. Ponovo pokrenuti sada?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Vaš administrator traži da ponovo pokrenete Chromium radi primjene tog ažuriranja</translation>
 <translation id="2119636228670142020">O OS-u &amp;Chromium</translation>
 <translation id="2241627712206172106">Ako dijelite računalo, prijatelji i članovi obitelji mogu zasebno pregledavati i postaviti Chromium prema svojim željama.</translation>
-<translation id="2265088490657775772">preuzmite Chromium na iPhone</translation>
 <translation id="2347108572062610441">Ovo proširenje promijenilo je stranicu koja se prikazuje prilikom pokretanja Chromiuma.</translation>
 <translation id="2396765026452590966">Proširenje "<ph name="EXTENSION_NAME" />" promijenilo je stranicu koja se prikazuje prilikom pokretanja Chromiuma.</translation>
 <translation id="2483889755041906834">U Chromiumu</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Chromium se radi ažuriranja mora zaustaviti na ovom računalu. Drugi korisnici koji su prijavljeni na računalu mogli bi zbog toga izgubiti promjene koje nisu spremljene.</translation>
 <translation id="2847479871509788944">Ukloni iz Chromiuma...</translation>
 <translation id="2886012850691518054">Dodatno: pomognite nam da poboljšamo Chromium automatskim slanjem statistike o upotrebi i izvješća o padu programa Googleu.</translation>
-<translation id="2898082584336937987">Instalirajte Chromium na telefon. Poslat ćemo vam SMS na telefon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">O pregledniku &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium je ažuran</translation>
 <translation id="3032787606318309379">Dodavanje u preglednik Chromium...</translation>
-<translation id="3046695367536568084">Morate se prijaviti na Chromium da biste upotrebljavali aplikacije. To omogućuje Chromiumu sinkronizaciju vaših aplikacija, oznaka, povijesti, zaporki i ostalih postavki na različitim uređajima.</translation>
 <translation id="3068515742935458733">Pomognite nam poboljšati Chromium šaljući izvješća o rušenju programa i <ph name="UMA_LINK" /> Googleu</translation>
 <translation id="3103660991484857065">Program za instalaciju nije dekomprimirao arhivu. Ponovo preuzmite Chromium.</translation>
 <translation id="3130323860337406239">Chromium upotrebljava vaš mikrofon.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Otvori vezu u ano&amp;nimnom prozoru Chromiuma</translation>
 <translation id="3190315855212034486">Hopa! Chromium je pao. Pokrenuti ponovo sada?</translation>
 <translation id="3229526316128325841">Chromium želi izvesti vaše zaporke.</translation>
-<translation id="3256316712990552818">Kopirano na Chromium</translation>
 <translation id="3258596308407688501">Chromium ne može čitati iz svojeg podatkovnog direktorija niti u njega pisati:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Najnovija verzija sadrži važna sigurnosna poboljšanja i nove značajke.</translation>
 <translation id="421369550622382712">Otkrijte sjajne aplikacije, igre, proširenja i teme za Chromium.</translation>
 <translation id="4216212958613226427">Taj se jezik koristi za prikaz korisničkog sučelja Chromiuma</translation>
-<translation id="4222580632002216401">Sada ste prijavljeni na Chromium! Administrator je onemogućio sinkronizaciju.</translation>
 <translation id="4230135487732243613">Želite li povezati svoje podatke sustava Chromium s tim računom?</translation>
 <translation id="4271805377592243930">Potraži pomoć za upotrebu Chromiuma</translation>
 <translation id="4285930937574705105">Instalacija nije uspjela zbog nepoznate pogreške. Ako je Chromium trenutačno otvoren, zatvorite ga i pokušajte ponovo.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium radi u pozadini.</translation>
 <translation id="4987820182225656817">Gosti mogu upotrebljavati Chromium bez ostavljanja tragova o upotrebi.</translation>
 <translation id="4994636714258228724">Dodajte sebe kao korisnika Chromiuma</translation>
-<translation id="5181952534059945058">Ova stranica upotrebljava previše memorije, pa je Chromium uklonio dio sadržaja.</translation>
 <translation id="5277894862589591112">Da bi se vaše promjene primijenile, ponovo pokrenite Chromium</translation>
 <translation id="5358375970380395591">Prijavljujete se upravljanim računom i dajete administratoru kontrolu nad svojim profilom u sustavu Chromium. Vaši podaci u sustavu Chromium, primjerice, aplikacije, oznake, povijest, zaporke i ostale postavke, trajno će se povezati s korisnikom <ph name="USER_NAME" />. Moći ćete izbrisati te podatke putem Nadzorne ploče Google računa, ali ih nećete moći povezati s nekim drugim računom. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Ažuriranje Chromiuma (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Ponovno pokreni</translation>
 <translation id="5987687638152509985">Ažurirajte Chromium da bi se pokrenula sinkronizacija</translation>
 <translation id="6013050204643758987">OS Chromium omogućen je dodatnim <ph name="BEGIN_LINK_CROS_OSS" />softverom otvorenog izvornog koda<ph name="END_LINK_CROS_OSS" />, isto kao i <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Zatvori</translation>
 <translation id="6055895534982063517">Dostupna je nova verzija preglednika Chromium, brža no ikad.</translation>
 <translation id="6063093106622310249">&amp;Otvori u Chromiumu</translation>
 <translation id="6072279588547424923">Proširenje <ph name="EXTENSION_NAME" /> dodano je u Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">OS Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium će se ponovo pokrenuti za 1 sekundu}one{Chromium će se ponovo pokrenuti za # sekundu}few{Chromium će se ponovo pokrenuti za # sekunde}other{Chromium će se ponovo pokrenuti za # sekundi}}</translation>
 <translation id="6475912303565314141">Upravlja i time koja se stranica prikazuje prilikom pokretanja Chromiuma.</translation>
-<translation id="6485906693002546646">Upotrebljavate <ph name="PROFILE_EMAIL" /> za sinkronizaciju sadržaja u Chromiumu. Za ažuriranje postavki sinkroniziranja ili upotrebu Chromiuma bez Google računa posjetite <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Deinstaliranje Chromiuma</translation>
 <translation id="6570579332384693436">Chromium Googleu šalje tekst koji utipkate u tekstualna polja kako bi ispravio pravopisne pogreške</translation>
 <translation id="6598877126913850652">Otvori postavke obavijesti za Chromium</translation>
@@ -162,7 +148,6 @@
 Neke su značajke možda nedostupne. Navedite neki drugi direktorij profila ili upotrijebite noviju verziju Chromiuma.</translation>
 <translation id="6734080038664603509">Ažuriranje &amp;Chromiuma</translation>
 <translation id="6734291798041940871">Chromium je već instaliran za sve korisnike na računalu.</translation>
-<translation id="6810143991807788455">Doprinesite poboljšanju Chromiuma prijavljivanjem trenutačnih postavki</translation>
 <translation id="6847869444787758381">Chromium će vas obavijestiti ako vaše zaporke budu ugrožene</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (kopirano na Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Datoteka vaših postavki oštećena je ili nevažeća.
 
 Chromium ne može oporaviti vaše postavke.</translation>
-<translation id="7331920710658926971">Instalirajte Chromium na telefon. Poslat ćemo vam SMS na vaš telefonski broj.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Novi prozor</translation>
 <translation id="734373864078049451">Ovdje se nalaze vaš web, oznake i ostali sadržaji u Chromiumu.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Sakrij u izborniku Chromiuma</translation>
 <translation id="8013436988911883588">Kada Chromium dobije pristup, web-lokacije će vas moći tražiti pristup.</translation>
 <translation id="81770708095080097">Datoteka je opasna i Chromium ju je blokirao.</translation>
-<translation id="8222496066431494154">Instalirajte Chromium na telefon. Poslat ćemo vam SMS na telefonski broj za oporavak računa: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Ako slika nema koristan opis, Chromium će ga pokušati pružiti. Da bi se izradili opisi, slike se šalju Googleu. To možete isključiti u bilo kojem trenutku u postavkama.</translation>
-<translation id="8269379391216269538">Pomognite poboljšati Chromium.</translation>
 <translation id="8290862415967981663">Datoteka je možda opasna i Chromium ju je blokirao.</translation>
 <translation id="8330519371938183845">Prijavite se da biste sinkronizirali i prilagodili Chromium na svim svojim uređajima</translation>
 <translation id="8340674089072921962">E-adresa <ph name="USER_EMAIL_ADDRESS" /> prethodno je upotrebljavala Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Ponovo pokrenite Chromium u roku od jednog dana}one{Ponovo pokrenite Chromium u roku od # dana}few{Ponovo pokrenite Chromium u roku od # dana}other{Ponovo pokrenite Chromium u roku od # dana}}</translation>
 <translation id="8453117565092476964">Arhiva programa za instalaciju oštećena je ili nevažeća. Ponovo preuzmite Chromium.</translation>
 <translation id="8493179195440786826">Chromium je zastario</translation>
-<translation id="85843667276690461">Pomoć za upotrebu Chromiuma</translation>
 <translation id="8586442755830160949">Autorska prava <ph name="YEAR" />. Autori Chromiuma. Sva prava pridržana.</translation>
 <translation id="8619360774459241877">Pokretanje Chromiuma...</translation>
 <translation id="8621669128220841554">Instalacija nije uspjela zbog nepoznate pogreške. Ponovo preuzmite Chromium.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium pokušava prikazati zaporke. Upišite svoju zaporku za Windows da biste to dopustili.</translation>
 <translation id="8941642502866065432">Nije moguće ažurirati Chromium</translation>
 <translation id="8974095189086268230">OS Chromium omogućuje dodatni <ph name="BEGIN_LINK_CROS_OSS" />softver utemeljen na otvorenom kôdu<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Netko se prethodno prijavio na Chromium na ovom računalu kao <ph name="ACCOUNT_EMAIL_LAST" />. Ako to nije vaš račun, izradite novog korisnika Chromiuma kako bi vaši podaci bili odvojeni.
-
-Ako se ipak prijavite, podaci sustava Chromium kao što su oznake, povijest i ostale postavke spojit će se s korisnikom <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Kako bismo Chromium učinili sigurnijim, onemogućili smo sljedeće proširenje koje nije navedeno na stranici <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> i možda je dodano bez vašeg znanja.</translation>
 <translation id="9022552996538154597">Prijava na Chromium</translation>
-<translation id="9025992965467895364">Ova stranica upotrebljava previše memorije, pa ju je Chromium pauzirao.</translation>
-<translation id="9036189287518468038">Pokretač aplikacija sustava Chromium</translation>
 <translation id="9089354809943900324">Chromium je zastario</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium će se ponovo pokrenuti za sat vremena}one{Chromium će se ponovo pokrenuti za # h}few{Chromium će se ponovo pokrenuti za # h}other{Chromium će se ponovo pokrenuti za # h}}</translation>
 <translation id="91086099826398415">Otvori vezu na novoj &amp;kartici Chromiuma</translation>
 <translation id="911206726377975832">Izbrisati i podatke o pregledavanju?</translation>
 <translation id="9158494823179993217">Vaš administrator sustava konfigurirao je Chromium tako da otvara zamjenski preglednik radi pristupa URL-u<ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Prekidanjem veze s računom <ph name="USERNAME" /> izbrisat ćete svoju povijest, oznake, postavke i ostale Chromiumove podatke pohranjene na ovom uređaju. Podaci pohranjeni na vašem Google računu neće se izbrisati. Tim podacima možete upravljati na <ph name="GOOGLE_DASHBOARD_LINK" />Google nadzornoj ploči<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Prijavljeni ste u Chromium</translation>
 <translation id="93478295209880648">Chromium možda neće ispravno raditi jer više nije podržan na sustavima Windows XP i Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> zahtijeva da pročitate i prihvatite sljedeće Uvjete pružanja usluge prije upotrebe ovog uređaja. Ti uvjeti ne predstavljaju proširenje, izmjenu ili ograničenje Uvjeta OS-a Chromium.</translation>
 <translation id="985602178874221306">Autori Chromiuma</translation>
diff --git a/chrome/app/resources/chromium_strings_hu.xtb b/chrome/app/resources/chromium_strings_hu.xtb
index 4183a99..fdfb4d6 100644
--- a/chrome/app/resources/chromium_strings_hu.xtb
+++ b/chrome/app/resources/chromium_strings_hu.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">A Chromium exportálni szeretné a jelszavakat. Ennek engedélyezéséhez írja be Windows-jelszavát.</translation>
 <translation id="1115445892567829615">A Chromium nem tudta szinkronizálni az adatokat. Kérjük, frissítse a szinkronizálás jelszavát.</translation>
 <translation id="113122355610423240">A Chromium az alapértelmezett böngésző</translation>
-<translation id="1170115874949214249">Telepítse a Chromiumot telefonjára. SMS-t küldünk majd a fiók-helyreállítási telefonszámára.</translation>
-<translation id="1174473354587728743">Közösen használ valakivel egy számítógépet? Mostantól úgy állíthatja be a Chromiumot, ahogy Ön szeretné.</translation>
 <translation id="1185134272377778587">A Chromium névjegye</translation>
-<translation id="1298199220304005244">Segítség kérése a Chromium OS használatával  kapcsolatban</translation>
 <translation id="1396446129537741364">A Chromium megpróbálja megjeleníteni a jelszavakat.</translation>
 <translation id="1414495520565016063">Bejelentkezett a Chromiumba.</translation>
 <translation id="151962892725702025">A Chromium OS nem tudta szinkronizálni az adatait, mert a szinkronizálás nem érhető el az Ön domainjénél.</translation>
 <translation id="1524282610922162960">Chromium-lap megosztása</translation>
-<translation id="1668054258064581266">Fiókjának eltávolítása után a Chromiumból előfordulhat, hogy újra kell töltenie a megnyitott lapokat ahhoz, hogy a változások életbe lépjenek.</translation>
-<translation id="1688750314291223739">A szinkronizálás beállításával személyre szabott beállításait az interneten tárolhatja, így azok elérhetők a Chromiumból bármelyik számítógépen.</translation>
 <translation id="1708666629004767631">Elérhető a Chromium új, biztonságosabb verziója.</translation>
 <translation id="1766096484055239003">A rendszergazda előírta, hogy újra kell indítania a Chromiumot egy frissítés alkalmazása miatt</translation>
 <translation id="1774152462503052664">A Chromium fusson a háttérben</translation>
 <translation id="1779356040007214683">A Chromium biztonságosabbá tétele érdekében kikapcsoltunk néhány bővítményt, amelyek nem a(z) <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> szolgáltatásból származnak, és előfordulhat, hogy az Ön tudta nélkül lettek telepítve.</translation>
 <translation id="1808667845054772817">A Chromium újratelepítése</translation>
-<translation id="1869480248812203386">Az esetleges biztonsági események adatainak automatikus jelentésével segítséget nyújthat a Google-nak a Chromium használatának biztonságosabbá és egyszerűbbé tételéhez.</translation>
 <translation id="1881322772814446296">Kezelt fiókkal jelentkezik be, és annak adminisztrátora számára hozzáférést biztosít Chromium-profiljához. Chromium-adatait – például alkalmazásait, könyvjelzőit, előzményeit, jelszavait és más beállításait – a rendszer véglegesen társítja a(z) <ph name="USER_NAME" /> fiókhoz. Ezen adatokat a Google-fiók Irányítópultján törölheti, de más fiókhoz nem társíthatja őket. Létrehozhat egy új profilt is meglévő Chromium-adatainak elkülönített tárolásához. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">A beállítás kikapcsolásával anélkül jelentkezhet be a Google-webhelyekre (pl. Gmail), hogy a Chromiumba is bejelentkezne</translation>
 <translation id="1929939181775079593">A Chromium nem válaszol. Újraindítja most?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Rendszergazdája arra kéri, hogy indítsa újra a Chromiumot a frissítés alkalmazásához</translation>
 <translation id="2119636228670142020">A &amp;Chromium OS névjegye</translation>
 <translation id="2241627712206172106">Ha megoszt egy számítógépet, ismerősei és családtagjai külön fiókokban internetezve a saját kívánságaik szerint állíthatják be a Chromiumot.</translation>
-<translation id="2265088490657775772">Chromium beszerzése iPhone eszközre</translation>
 <translation id="2347108572062610441">Ez a bővítmény módosította, hogy melyik oldal jelenjen meg a Chromium indításakor.</translation>
 <translation id="2396765026452590966">A(z) <ph name="EXTENSION_NAME" /> bővítmény módosította, hogy melyik oldal jelenjen meg a Chromium indításakor.</translation>
 <translation id="2483889755041906834">A Chromiumban</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">A frissítéshez le kell állítani a Chromiumot ezen a számítógépen. Ennek következményeként a számítógépen bejelentkezett további felhasználók elveszthetik a nem mentett módosításokat.</translation>
 <translation id="2847479871509788944">Eltávolítás a Chromiumból…</translation>
 <translation id="2886012850691518054">Opcionális: Segítsen a Chromium fejlesztésében azáltal, hogy automatikusan elküldi a használati statisztikákat és hibajelentéseket a Google-nak.</translation>
-<translation id="2898082584336937987">Telepítse a Chromiumot telefonjára. SMS-t küldünk majd a következő telefonszámra: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="2910007522516064972">A &amp;Chromium névjegye</translation>
 <translation id="2977470724722393594">A Chromium naprakész</translation>
 <translation id="3032787606318309379">Hozzáadás a Chromiumhoz...</translation>
-<translation id="3046695367536568084">Alkalmazások használatához be kell jelentkeznie a Chromiumba. A Chromium így szinkronizálni tudja alkalmazásait, könyvjelzőit, előzményeit, jelszavait és egyéb beállításait az eszközök között.</translation>
 <translation id="3068515742935458733">Segítse a Chromium fejlesztését azáltal, hogy elküldi a Google-nak a következőket: hibajelentések és <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Nem sikerült a telepítőnek kibontani a tömörített állományt. Kérjük, töltse le újra a Chromium böngészőt.</translation>
 <translation id="3130323860337406239">A Chromium használja a mikrofont.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Link megnyitása Chromium-inko&amp;gnitóablakban</translation>
 <translation id="3190315855212034486">Ó! A Chromium összeomlott. Újraindítja most?</translation>
 <translation id="3229526316128325841">A Chromium exportálni szeretné a jelszavakat.</translation>
-<translation id="3256316712990552818">A Chromiumra másolva</translation>
 <translation id="3258596308407688501">A Chromium nem tudja olvasni és írni az adatkönyvtárát:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">A legújabb verzióban fontos biztonsági fejlesztések és új funkciók érhetők el.</translation>
 <translation id="421369550622382712">Fedezzen fel nagyszerű alkalmazásokat, játékokat, bővítményeket és témákat a Chromiumhoz.</translation>
 <translation id="4216212958613226427">A Chromium kezelőfelülete ezen a nyelven jelenik meg.</translation>
-<translation id="4222580632002216401">Bejelentkezett a Chromiumba! A szinkronizálást a rendszergazdája letiltotta.</translation>
 <translation id="4230135487732243613">Társítja Chromium-adatait ezzel a fiókkal?</translation>
 <translation id="4271805377592243930">Segítség a Chromium használatával kapcsolatban</translation>
 <translation id="4285930937574705105">A telepítés váratlan hiba miatt nem sikerült. Ha a Chromium jelenleg fut, zárja be, majd próbálkozzon újra.</translation>
@@ -106,7 +95,6 @@
 <translation id="4943838377383847465">A Chromium háttérmódban van.</translation>
 <translation id="4987820182225656817">A vendégek úgy használhatják a Chromiumot, hogy nem hagynak hátra semmit.</translation>
 <translation id="4994636714258228724">Adja hozzá magát a Chromiumban</translation>
-<translation id="5181952534059945058">Ez az oldal túl sok memóriát használ, ezért a Chromium eltávolított egyes tartalmakat.</translation>
 <translation id="5277894862589591112">A módosítások alkalmazásához indítsa újra a Chromiumot</translation>
 <translation id="5358375970380395591">Kezelt fiókkal jelentkezik be, és annak adminisztrátora számára hozzáférést biztosít Chromium-profiljához. Chromium-adatait – például alkalmazásait, könyvjelzőit, előzményeit, jelszavait és más beállításait – a rendszer véglegesen társítja a(z) <ph name="USER_NAME" /> fiókhoz. Ezen adatokat a Google-fiók Irányítópultján törölheti, de más fiókhoz nem társíthatja őket. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">A Chromium frissítése (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -129,7 +117,6 @@
 <translation id="5895138241574237353">Újraindítás</translation>
 <translation id="5987687638152509985">Frissítse a Chromiumot a szinkronizálás megkezdéséhez</translation>
 <translation id="6013050204643758987">A Chromium OS létrejöttéhez egyéb <ph name="BEGIN_LINK_CROS_OSS" />nyílt forráskódú szoftverek<ph name="END_LINK_CROS_OSS" /> is hozzájárultak, ahogyan a <ph name="BEGIN_LINK_LINUX_OSS" />Linux (béta)<ph name="END_LINK_LINUX_OSS" /> létrejöttéhez is.</translation>
-<translation id="6040143037577758943">Bezárás</translation>
 <translation id="6055895534982063517">Elérhető a Chromium új verziója, amely minden korábbinál sokkal gyorsabb.</translation>
 <translation id="6063093106622310249">Megnyitás Chromiumban</translation>
 <translation id="6072279588547424923">A(z) <ph name="EXTENSION_NAME" /> hozzá lett adva a Chromiumhoz</translation>
@@ -151,7 +138,6 @@
 <translation id="6434250628340475518">Chromium OS rendszer</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{A Chromium 1 másodpercen belül újraindul}other{A Chromium # másodpercen belül újraindul}}</translation>
 <translation id="6475912303565314141">Továbbá azt is szabályozza, hogy melyik oldal jelenik meg a Chromium indításakor.</translation>
-<translation id="6485906693002546646">Chromiumos dolgainak szinkronizálásához a(z) <ph name="PROFILE_EMAIL" /> fiókot használja. Szinkronizálási beállításainak frissítéséhez, illetve a Chromium Google-fiók nélküli használatához keresse fel a <ph name="SETTINGS_LINK" /> linket.</translation>
 <translation id="6510925080656968729">Chromium eltávolítása</translation>
 <translation id="6570579332384693436">A nyelvtani hibák javítása érdekében a Chromium elküldi a szövegmezőkbe gépelt szöveget a Google-nak</translation>
 <translation id="6598877126913850652">A Chromium értesítési beállításainak megnyitása</translation>
@@ -159,7 +145,6 @@
 <translation id="6717134281241384636">A profilja nem használható, mert az a Chromium egy újabb verziójából származik. Előfordulhat, hogy egyes funkciók nem érhetők el. Kérjük, adjon meg egy másik profilmappát, vagy használja a Chromium újabb verzióját.</translation>
 <translation id="6734080038664603509">A &amp;Chromium frissítése</translation>
 <translation id="6734291798041940871">A Chromium már telepítve van az összes felhasználó számára a számítógépen.</translation>
-<translation id="6810143991807788455">Segítsen a Chromium fejlesztésében a jelenlegi beállítások elküldésével</translation>
 <translation id="6847869444787758381">A Chromium tájékoztatja arról, ha jelszavai illetéktelen kezekbe kerülnek</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (a Chromiumba másolva)</translation>
@@ -178,7 +163,6 @@
 <translation id="7318036098707714271">A beállításait tartalmazó fájl hibás vagy érvénytelen.
 
 A Chromium nem tudja visszaállítani a beállításait.</translation>
-<translation id="7331920710658926971">Telepítse a Chromiumot telefonjára. SMS-t küldünk majd a telefonszámára.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Új ablak</translation>
 <translation id="734373864078049451">Az Ön könyvjelzői, valamint az internetezéssel és a Chromiummal kapcsolatos egyéb dolgai vannak itt.</translation>
@@ -209,16 +193,13 @@
 <translation id="7979877361127045932">Elrejtés a Chromium-menüben</translation>
 <translation id="8013436988911883588">Miután hozzáférést biztosított a Chromiumnak, a webhelyek is hozzáférést kérhetnek.</translation>
 <translation id="81770708095080097">Ez a fájl veszélyes, ezért a Chromium letiltotta.</translation>
-<translation id="8222496066431494154">Telepítse a Chromiumot telefonjára. SMS-t küldünk majd a fiók-helyreállítási telefonszámára: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8248265253516264921">Ha valamelyik kép nem rendelkezik hasznos leírással, akkor a Chromium igyekszik leírást adni róla. A Google automatikusan megkapja a leírások létrehozásához szükséges képeket. A funkciót a beállítások között bármikor kikapcsolhatja.</translation>
-<translation id="8269379391216269538">Segítsen a Chromium továbbfejlesztésében</translation>
 <translation id="8290862415967981663">Ez a fájl veszélyes lehet, ezért a Chromium letiltotta.</translation>
 <translation id="8330519371938183845">Jelentkezzen be, hogy szinkronizálhassa és személyre szabhassa a Chromiumot minden eszközén</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> előzőleg Chromiumot használt</translation>
 <translation id="8417404458978023919">{0,plural, =1{A Chromiumot 1 napon belül újra kell indítani}other{A Chromiumot # napon belül újra kell indítani}}</translation>
 <translation id="8453117565092476964">A telepítő tömörített állománya megsérült vagy érvénytelen. Kérjük, töltse le újra a Chromium böngészőt.</translation>
 <translation id="8493179195440786826">A Chromium elavult</translation>
-<translation id="85843667276690461">Segítséget kaphat a Chromium használatával kapcsolatban</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> – A Chromium szerzői. Minden jog fenntartva.</translation>
 <translation id="8619360774459241877">Chromium indítása…</translation>
 <translation id="8621669128220841554">A telepítés egy meg nem határozott hiba miatt nem sikerült. Kérjük, töltse le újra a Chromiumot.</translation>
@@ -235,21 +216,14 @@
 <translation id="8907580949721785412">A Chromium megkísérli megjeleníteni a jelszavakat. Ennek engedélyezéséhez írja be Windows-jelszavát.</translation>
 <translation id="8941642502866065432">Nem sikerült a Chromium frissítése</translation>
 <translation id="8974095189086268230">A Chromium OS létrejöttéhez további <ph name="BEGIN_LINK_CROS_OSS" />nyílt forráskódú szoftverek<ph name="END_LINK_CROS_OSS" /> is hozzájárultak.</translation>
-<translation id="8985587603644336029">Valaki korábban <ph name="ACCOUNT_EMAIL_LAST" /> néven bejelentkezett a Chromiumba erről a számítógépről. Ha ez nem az Ön fiókja, hozzon létre egy új Chromium-felhasználót, hogy elkülönítse adatait.
-
-Ha mindenképp bejelentkezik, akkor egyesíti a(z) <ph name="ACCOUNT_EMAIL_NEW" /> fiókkal az olyan Chromium-adatokat, mint a könyvjelzők, az előzmények és más beállítások.</translation>
 <translation id="9019929317751753759">A Chromium biztonságosabbá tétele érdekében kikapcsoltuk a következő bővítményt, amely nem a(z) <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> szolgáltatásból származik, és előfordulhat, hogy az Ön tudta nélkül lett telepítve.</translation>
 <translation id="9022552996538154597">Bejelentkezés a Chromiumba</translation>
-<translation id="9025992965467895364">Ez az oldal túl sok memóriát használ, ezért a Chromium szünetelteti.</translation>
-<translation id="9036189287518468038">Chromium Alkalmazásindító</translation>
 <translation id="9089354809943900324">A Chromium elavult</translation>
 <translation id="9093206154853821181">{0,plural, =1{A Chromium 1 órán belül újraindul}other{A Chromium # órán belül újraindul}}</translation>
 <translation id="91086099826398415">Link megnyi&amp;tása új Chromium-lapon</translation>
 <translation id="911206726377975832">Törli a böngészési adatait is?</translation>
 <translation id="9158494823179993217">Rendszergazdája úgy állította be a Chromiumot, hogy másik böngészőt nyisson meg a(z) <ph name="TARGET_URL_HOSTNAME" /> eléréséhez.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> társításának megszüntetésével törli az eszközön tárolt előzményeket, könyvjelzőket, beállításokat és egyéb Chromium-adatokat. A Google-fiókban tárolt adatokat a rendszer nem törli, azokat a <ph name="GOOGLE_DASHBOARD_LINK" />Google Irányítópulton<ph name="END_GOOGLE_DASHBOARD_LINK" /> kezelheti.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Most már bejelentkezett a Chromiumba</translation>
 <translation id="93478295209880648">Előfordulhat, hogy a Chromium nem működik majd megfelelően, mert a továbbiakban már nem támogatja a következő rendszereket: Windows XP és Windows Vista</translation>
 <translation id="95514773681268843">A(z) <ph name="DOMAIN" /> megköveteli, hogy olvassa, majd fogadja el a következő Általános Szerződési Feltételeket, mielőtt használná ezt az eszközt. Ezek a feltételek nem bővítik, módosítják vagy korlátozzák a Chromium OS feltételeit.</translation>
 <translation id="985602178874221306">A Chromium szerzői</translation>
diff --git a/chrome/app/resources/chromium_strings_id.xtb b/chrome/app/resources/chromium_strings_id.xtb
index 9d0d07a..c882efb 100644
--- a/chrome/app/resources/chromium_strings_id.xtb
+++ b/chrome/app/resources/chromium_strings_id.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium ingin mengekspor sandi. Ketik sandi Windows Anda untuk mengizinkannya.</translation>
 <translation id="1115445892567829615">Chromium tidak dapat menyinkronkan data Anda. Perbarui frasa sandi Sinkronisasi Anda.</translation>
 <translation id="113122355610423240">Chromium adalah browser default Anda</translation>
-<translation id="1170115874949214249">Instal Chromium di ponsel. Kami akan mengirimkan SMS ke nomor telepon pemulihan akun Anda.</translation>
-<translation id="1174473354587728743">Berbagi komputer? Kini Anda dapat menyiapkan Chromium seperti yang Anda inginkan.</translation>
 <translation id="1185134272377778587">Tentang Chromium</translation>
-<translation id="1298199220304005244">Dapatkan bantuan tentang penggunaan Chromium OS</translation>
 <translation id="1396446129537741364">Chromium mencoba menampilkan sandi.</translation>
 <translation id="1414495520565016063">Anda sudah masuk ke Chromium!</translation>
 <translation id="151962892725702025">Chromium OS tidak dapat menyinkronkan data Anda karena Sinkronisasi tidak tersedia untuk domain Anda.</translation>
 <translation id="1524282610922162960">Bagikan tab Chromium</translation>
-<translation id="1668054258064581266">Setelah membuang akun dari Chromium, Anda mungkin perlu memuat ulang tab terbuka untuk mulai menerapkannya.</translation>
-<translation id="1688750314291223739">Siapkan Sinkronisasi untuk menyimpan fitur browser hasil personalisasi Anda ke web dan mengaksesnya dari Chromium di komputer mana saja.</translation>
 <translation id="1708666629004767631">Tersedia versi Chromium yang baru dan lebih aman.</translation>
 <translation id="1766096484055239003">Administrator mengharuskan Anda meluncurkan ulang Chromium untuk menerapkan update</translation>
 <translation id="1774152462503052664">Jalankan Chromium di latar belakang</translation>
 <translation id="1779356040007214683">Agar Chromium lebih aman, kami menonaktifkan beberapa ekstensi yang tidak tercantum dalam <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> dan mungkin telah ditambahkan tanpa sepengetahuan Anda.</translation>
 <translation id="1808667845054772817">Instal ulang Chromium</translation>
-<translation id="1869480248812203386">Anda dapat membantu membuat Chromium lebih aman dan lebih mudah digunakan dengan melaporkan detail secara otomatis tentang kemungkinan insiden keamanan ke Google.</translation>
 <translation id="1881322772814446296">Anda masuk dengan akun yang dikelola dan memberikan administratornya kontrol atas profil Chromium Anda. Data Chromium Anda, seperti aplikasi, bookmark, histori, sandi, dan setelan lain selamanya akan dikaitkan ke <ph name="USER_NAME" />. Anda dapat menghapus data ini melalui Dasbor Akun Google, namun Anda tidak akan dapat mengaitkan data ini dengan akun yang lain. Secara opsional, Anda dapat membuat profil untuk menjaga data Chromium Anda yang sudah ada tetap terpisah. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Dengan menonaktifkan ini, Anda dapat login ke situs Google seperti Gmail tanpa harus login ke Chromium</translation>
 <translation id="1929939181775079593">Chromium tidak merespons. Luncurkan ulang sekarang?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Administrator meminta Anda meluncurkan ulang Chromium untuk menerapkan update ini</translation>
 <translation id="2119636228670142020">Tentang &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Jika Anda berbagi komputer, teman dan keluarga bisa menjelajah secara terpisah dan menyiapkan Chromium sesuai keinginannya.</translation>
-<translation id="2265088490657775772">dapatkan Chromium di iPhone</translation>
 <translation id="2347108572062610441">Ekstensi ini telah mengubah apa yang ditampilkan oleh halaman saat Anda memulai Chromium.</translation>
 <translation id="2396765026452590966">Ekstensi "<ph name="EXTENSION_NAME" />" telah mengubah apa yang ditampilkan oleh halaman saat Anda memulai Chromium.</translation>
 <translation id="2483889755041906834">Di Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Untuk menjalankan update, Chromium harus ditutup di komputer ini. Proses ini dapat menyebabkan pengguna lain yang login ke komputer ini kehilangan perubahan yang belum tersimpan.</translation>
 <translation id="2847479871509788944">Buang dari Chromium...</translation>
 <translation id="2886012850691518054">Opsional: Bantu menjadikan Chrome lebih baik dengan mengirim statistik penggunaan dan laporan kerusakan secara otomatis ke Google.</translation>
-<translation id="2898082584336937987">Instal Chromium di ponsel. Kami akan mengirimkan SMS ke ponsel Anda: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Tentang &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium sudah diperbarui</translation>
 <translation id="3032787606318309379">Menambahkan Chromium...</translation>
-<translation id="3046695367536568084">Anda harus masuk ke Chromium untuk menggunakan aplikasi. Ini memungkinkan Chromium menyinkronkan aplikasi, bookmark, histori, sandi, dan setelan lainnya antar perangkat.</translation>
 <translation id="3068515742935458733">Bantu Chromium menjadi lebih baik dengan mengirim laporan kerusakan dan <ph name="UMA_LINK" /> ke Google</translation>
 <translation id="3103660991484857065">Pemasang gagal membatalkan kompresi arsip. Download Chromium lagi.</translation>
 <translation id="3130323860337406239">Chromium menggunakan mikrofon Anda.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Buka Link di Jendela Sa&amp;maran Chromium</translation>
 <translation id="3190315855212034486">Aduh! Chromium ngadat. Luncurkan ulang sekarang?</translation>
 <translation id="3229526316128325841">Chromium ingin mengekspor sandi.</translation>
-<translation id="3256316712990552818">Disalin ke Chromium</translation>
 <translation id="3258596308407688501">Chromium tidak dapat membaca dan menulis ke direktori datanya:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Peningkatan keamanan dan fitur baru yang penting tersedia di versi terbaru.</translation>
 <translation id="421369550622382712">Temukan aplikasi, game, ekstensi, dan tema yang hebat untuk Chromium.</translation>
 <translation id="4216212958613226427">Bahasa ini digunakan untuk menampilkan UI Chromium</translation>
-<translation id="4222580632002216401">Sekarang Anda telah masuk ke Chromium! Sinkronisasi dinonaktifkan oleh administrator Anda.</translation>
 <translation id="4230135487732243613">Tautkan data Chromium Anda ke akun ini?</translation>
 <translation id="4271805377592243930">Dapatkan bantuan Chromium</translation>
 <translation id="4285930937574705105">Pemasangan gagal karena kesalahan yang tidak diketahui. Jika Chromium sedang berjalan, tutup, lalu ulang kembali.</translation>
@@ -106,7 +95,6 @@
 <translation id="4943838377383847465">Chromium berjalan di mode latar belakang.</translation>
 <translation id="4987820182225656817">Tamu dapat menggunakan Chromium tanpa meninggalkan apa pun.</translation>
 <translation id="4994636714258228724">Tambahkan diri Anda ke Chromium</translation>
-<translation id="5181952534059945058">Halaman ini menggunakan terlalu banyak memori sehingga Chromium menghapus sebagian konten.</translation>
 <translation id="5277894862589591112">Untuk menerapkan perubahan Anda, luncurkan ulang Chromium</translation>
 <translation id="5358375970380395591">Anda masuk dengan akun yang dikelola dan memberikan administratornya kontrol atas profil Chromium Anda. Data Chromium Anda, seperti aplikasi, bookmark, histori, sandi, dan setelan lain selamanya akan dikaitkan ke <ph name="USER_NAME" />. Anda dapat menghapus data ini melalui Dasbor Akun Google, namun Anda tidak akan dapat mengaitkan data ini dengan akun yang lain. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Memperbarui Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -129,7 +117,6 @@
 <translation id="5895138241574237353">Mulai Ulang</translation>
 <translation id="5987687638152509985">Perbarui Chromium untuk memulai sinkronisasi</translation>
 <translation id="6013050204643758987">Chromium OS terwujud karena adanya <ph name="BEGIN_LINK_CROS_OSS" />software open source<ph name="END_LINK_CROS_OSS" /> tambahan, seperti <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Tutup</translation>
 <translation id="6055895534982063517">Tersedia Chromium versi baru, dan versi ini lebih cepat dari sebelumnya.</translation>
 <translation id="6063093106622310249">&amp;Buka di Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> telah ditambahkan ke Chromium</translation>
@@ -151,7 +138,6 @@
 <translation id="6434250628340475518">Sistem Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium akan dimulai ulang dalam 1 detik}other{Chromium akan dimulai ulang dalam # detik}}</translation>
 <translation id="6475912303565314141">Juga mengontrol halaman apa yang ditampilkan saat Anda memulai Chromium.</translation>
-<translation id="6485906693002546646">Anda menggunakan <ph name="PROFILE_EMAIL" /> untuk menyinkronkan barang-barang Chromium. Untuk memperbarui preferensi sinkronisasi atau menggunakan Chromium tanpa akun Google, kunjungi <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Uninstal Chromium</translation>
 <translation id="6570579332384693436">Untuk memperbaiki kesalahan ejaan, Chromium mengirimkan teks yang Anda ketik di kolom teks ke Google</translation>
 <translation id="6598877126913850652">Buka setelan notifikasi Chromium</translation>
@@ -161,7 +147,6 @@
 Sebagian fitur mungkin tidak tersedia. Tentukan direktori profil yang berbeda atau gunakan versi Chromium yang lebih baru.</translation>
 <translation id="6734080038664603509">Pembaruan &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium sudah terpasang untuk semua pengguna di komputer Anda.</translation>
-<translation id="6810143991807788455">Bantu menjadikan Chromium lebih baik dengan melaporkan setelan saat ini</translation>
 <translation id="6847869444787758381">Chromium akan memberi tahu jika sandi Anda disusupi</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (disalin ke Chromium)</translation>
@@ -180,7 +165,6 @@
 <translation id="7318036098707714271">File preferensi Anda rusak atau tidak valid.
 
 Chromium tidak dapat memulihkan setelan Anda.</translation>
-<translation id="7331920710658926971">Instal Chromium di ponsel. Kami akan mengirimkan SMS ke ponsel Anda.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Jendela baru</translation>
 <translation id="734373864078049451">Web, bookmark, dan barang Chromium Anda lainnya tersedia di sini.</translation>
@@ -212,16 +196,13 @@
 <translation id="7979877361127045932">Sembunyikan di menu Chromium</translation>
 <translation id="8013436988911883588">Setelah Chromium memiliki akses, situs dapat meminta akses dari Anda.</translation>
 <translation id="81770708095080097">File ini berbahaya, jadi Chromium telah memblokirnya.</translation>
-<translation id="8222496066431494154">Instal Chromium di ponsel. Kami akan mengirimkan SMS ke nomor telepon pemulihan akun Anda: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Jika gambar tidak memiliki deskripsi yang berguna, Chromium akan mencoba memberikan deskripsi untuk Anda. Untuk membuat deskripsi, gambar akan dikirim ke Google. Anda dapat menonaktifkannya kapan saja di setelan.</translation>
-<translation id="8269379391216269538">Bantu kami membuat Chromium menjadi lebih baik</translation>
 <translation id="8290862415967981663">File ini mungkin berbahaya, jadi Chromium telah memblokirnya.</translation>
 <translation id="8330519371938183845">Login untuk menyinkronkan dan mempersonalisasi Chromium di perangkat Anda</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> sebelumnya menggunakan Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Luncurkan ulang Chromium dalam 1 hari}other{Luncurkan ulang Chromium dalam # hari}}</translation>
 <translation id="8453117565092476964">Arsip pemasang rusak atau tidak valid. Download Chromium lagi.</translation>
 <translation id="8493179195440786826">Chromium Terlalu Lawas</translation>
-<translation id="85843667276690461">Dapatkan bantuan tentang penggunaan Chromium</translation>
 <translation id="8586442755830160949">Hak Cipta <ph name="YEAR" /> Pengarang Chromium. Semua hak dilindungi undang-undang.</translation>
 <translation id="8619360774459241877">Meluncurkan Chromium...</translation>
 <translation id="8621669128220841554">Pemasangan gagal karena kesalahan yang tidak ditentukan. Download Chromium lagi.</translation>
@@ -239,21 +220,14 @@
 <translation id="8907580949721785412">Chromium mencoba menampilkan sandi. Ketik sandi Windows untuk mengizinkannya.</translation>
 <translation id="8941642502866065432">Tidak dapat mengupdate Chromium</translation>
 <translation id="8974095189086268230">OS Chromium terwujud karena <ph name="BEGIN_LINK_CROS_OSS" />software sumber terbuka<ph name="END_LINK_CROS_OSS" /> tambahan.</translation>
-<translation id="8985587603644336029">Sebelumnya ada seseorang yang masuk ke Chromium di komputer ini sebagai <ph name="ACCOUNT_EMAIL_LAST" />. Jika itu bukan akun Anda, buatlah pengguna Chromium baru untuk menjaga informasi Anda tetap terpisah.
-
-Tetap masuk akan menggabungkan informasi Chromium seperti bookmark, histori, dan setelan lain ke <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Agar Chromium lebih aman, kami menonaktifkan ekstensi berikut yang tidak tercantum dalam <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> dan mungkin telah ditambahkan tanpa sepengetahuan Anda.</translation>
 <translation id="9022552996538154597">Login ke Chromium</translation>
-<translation id="9025992965467895364">Halaman ini menggunakan terlalu banyak memori, sehingga Chromium menjedanya.</translation>
-<translation id="9036189287518468038">Peluncur Aplikasi Chromium</translation>
 <translation id="9089354809943900324">Chromium terlalu lawas</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium akan diluncurkan ulang dalam 1 jam}other{Chromium akan diluncurkan ulang dalam # jam}}</translation>
 <translation id="91086099826398415">Buka Link di &amp;tab Chromium Baru</translation>
 <translation id="911206726377975832">Hapus juga data browsing Anda?</translation>
 <translation id="9158494823179993217">Administrator sistem Anda telah mengonfigurasi Chromium untuk membuka browser alternatif guna mengakses <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Memutus sambungan <ph name="USERNAME" /> akan menghapus histori, bookmark, setelan, dan data Chromium Anda lainnya yang tersimpan di perangkat. Data yang tersimpan di Akun Google tidak akan dihapus dan dapat dikelola di <ph name="GOOGLE_DASHBOARD_LINK" />Google Dasbor<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Kini Anda masuk ke Chromium</translation>
 <translation id="93478295209880648">Chromium mungkin tidak berfungsi dengan semestinya karena sudah tidak didukung di Windows XP atau Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> mewajibkan Anda membaca dan menyetujui Persyaratan Layanan sebelum menggunakan perangkat ini. Persyaratan ini tidak memperluas, mengubah, atau membatasi Persyaratan Chromium OS.</translation>
 <translation id="985602178874221306">Pengarang Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_it.xtb b/chrome/app/resources/chromium_strings_it.xtb
index ce0b8361..3b7e81e 100644
--- a/chrome/app/resources/chromium_strings_it.xtb
+++ b/chrome/app/resources/chromium_strings_it.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium vuole esportare le password. Per consentire l'esportazione, digita la tua password Windows.</translation>
 <translation id="1115445892567829615">Impossibile sincronizzare i dati in Chromium. Aggiorna la passphrase di sincronizzazione.</translation>
 <translation id="113122355610423240">Chromium è il tuo browser predefinito</translation>
-<translation id="1170115874949214249">Installa Chromium sul telefono. Invieremo un SMS al tuo numero di telefono per il recupero dell'account.</translation>
-<translation id="1174473354587728743">Condividi un computer con altre persone? Ora puoi configurare Chromium come preferisci.</translation>
 <translation id="1185134272377778587">Informazioni su Chromium</translation>
-<translation id="1298199220304005244">Ricevi assistenza per l'utilizzo di Chromium OS</translation>
 <translation id="1396446129537741364">Chromium sta cercando di visualizzare le password.</translation>
 <translation id="1414495520565016063">Hai eseguito l'accesso a Chromium.</translation>
 <translation id="151962892725702025">Impossibile sincronizzare i dati in Chromium OS perché la sincronizzazione non è disponibile per il tuo dominio.</translation>
 <translation id="1524282610922162960">Condividi una scheda di Chromium</translation>
-<translation id="1668054258064581266">Dopo avere rimosso il tuo account da Chromium, potresti dover ricaricare le schede aperte perché le modifiche vengano applicate.</translation>
-<translation id="1688750314291223739">Configura la sincronizzazione per salvare le funzioni personalizzate del browser sul Web e accedervi da Chromium su qualsiasi computer.</translation>
 <translation id="1708666629004767631">È disponibile una nuova versione più sicura di Chromium.</translation>
 <translation id="1766096484055239003">L'amministratore richiede il riavvio di Chromium per installare un aggiornamento</translation>
 <translation id="1774152462503052664">Lascia Chromium in esecuzione in background</translation>
 <translation id="1779356040007214683">Per rendere Chromium più sicuro, abbiamo disattivato alcune estensioni che non sono elencate nel <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> e potrebbero essere state aggiunte a tua insaputa.</translation>
 <translation id="1808667845054772817">Reinstalla Chromium</translation>
-<translation id="1869480248812203386">Puoi contribuire a rendere Chromium più sicuro e più facile da utilizzare segnalando automaticamente a Google i dettagli dei possibili problemi di sicurezza.</translation>
 <translation id="1881322772814446296">Stai per accedere con un account gestito e per dare al relativo amministratore il controllo del tuo profilo Chromium. I tuoi dati di Chromium, come app, Preferiti, cronologia, password e altre impostazioni, verranno collegati definitivamente a <ph name="USER_NAME" />. Potrai eliminare questi dati tramite la Dashboard di Google Account, ma non potrai associare questi dati a un altro account. Se preferisci puoi creare un nuovo profilo per mantenere separati i dati di Chromium esistenti. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Se disattivi questa funzione, puoi accedere ai siti Google quali Gmail senza accedere a Chromium</translation>
 <translation id="1929939181775079593">Chromium non risponde. Riavviarlo ora?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">L'amministratore ti chiede di riavviare Chromium per installare questo aggiornamento</translation>
 <translation id="2119636228670142020">Informazioni su &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Se condividi un computer, i tuoi amici e la tua famiglia possono navigare separatamente e configurare Chromium in base alle proprie esigenze.</translation>
-<translation id="2265088490657775772">Scarica Chromium sull'iPhone</translation>
 <translation id="2347108572062610441">Questa estensione ha cambiato la pagina mostrata all'avvio di Chromium.</translation>
 <translation id="2396765026452590966">L'estensione "<ph name="EXTENSION_NAME" />" ha cambiato la pagina mostrata all'avvio di Chromium.</translation>
 <translation id="2483889755041906834">In Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Per aggiornarsi, Chromium deve essere chiuso su questo computer. Questo potrebbe causare la perdita di modifiche non salvate di altri utenti che hanno eseguito l'accesso a questo computer.</translation>
 <translation id="2847479871509788944">Rimuovi da Chromium...</translation>
 <translation id="2886012850691518054">Facoltativo: aiutaci a migliorare Chromium inviando automaticamente a Google statistiche sull'utilizzo e rapporti sugli arresti anomali.</translation>
-<translation id="2898082584336937987">Installa Chromium sul telefono. Invieremo un SMS al tuo numero di telefono: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Informazioni su &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium è aggiornato</translation>
 <translation id="3032787606318309379">Aggiunta a Chromium in corso...</translation>
-<translation id="3046695367536568084">Per poter utilizzare le app, devi eseguire l'accesso su Chromium. Chromium potrà così sincronizzare app, Preferiti, cronologia, password e altre impostazioni tra dispositivi.</translation>
 <translation id="3068515742935458733">Aiutaci a migliorare Chromium inviando a Google rapporti sugli arresti anomali e <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Il programma di installazione non è riuscito a decomprimere l'archivio. Scarica di nuovo Chromium.</translation>
 <translation id="3130323860337406239">Chromium sta utilizzando il microfono.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Apri link in una finestra di navigazione in inco&amp;gnito di Chromium</translation>
 <translation id="3190315855212034486">Spiacenti, si è verificato un arresto anomalo di Chromium. Riavviarlo ora?</translation>
 <translation id="3229526316128325841">Chromium vuole esportare le password.</translation>
-<translation id="3256316712990552818">Copiata in Chromium</translation>
 <translation id="3258596308407688501">Chromium non è in grado di leggere e scrivere nella directory dei dati:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Nell'ultima versione sono stati apportati miglioramenti rilevanti in materia di sicurezza e sono state aggiunte nuove funzioni.</translation>
 <translation id="421369550622382712">Scopri app, giochi, estensioni e temi straordinari per Chromium.</translation>
 <translation id="4216212958613226427">Questa lingua è utilizzata per la UI di Chromium</translation>
-<translation id="4222580632002216401">Hai eseguito l'accesso a Chromium. La sincronizzazione è stata disattivata dall'amministratore.</translation>
 <translation id="4230135487732243613">Collegare i tuoi dati Chromium a questo account?</translation>
 <translation id="4271805377592243930">Ricevi assistenza per Chromium</translation>
 <translation id="4285930937574705105">Installazione non riuscita a causa di un errore imprecisato. Se Chromium è in esecuzione, chiudilo e riprova.</translation>
@@ -106,7 +95,6 @@
 <translation id="4943838377383847465">Chromium è in modalità background.</translation>
 <translation id="4987820182225656817">Gli ospiti possono utilizzare Chromium senza lasciare tracce.</translation>
 <translation id="4994636714258228724">Aggiungiti a Chromium</translation>
-<translation id="5181952534059945058">Questa pagina utilizza troppa memoria, pertanto Chromium ha rimosso alcuni contenuti.</translation>
 <translation id="5277894862589591112">Riavvia Chromium per applicare le modifiche</translation>
 <translation id="5358375970380395591">Stai per accedere con un account gestito e per dare al relativo amministratore il controllo del tuo profilo Chromium. I tuoi dati di Chromium, come app, Preferiti, cronologia, password e altre impostazioni, verranno collegati definitivamente a <ph name="USER_NAME" />. Potrai eliminare questi dati tramite la Dashboard di Google Account, ma non potrai associare questi dati a un altro account. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Aggiornamento di Chromium in corso (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -129,7 +117,6 @@
 <translation id="5895138241574237353">Riavvia</translation>
 <translation id="5987687638152509985">Aggiorna Chromium per avviare la sincronizzazione</translation>
 <translation id="6013050204643758987">La realizzazione di Chromium OS è stata possibile grazie a <ph name="BEGIN_LINK_CROS_OSS" />software open source<ph name="END_LINK_CROS_OSS" /> aggiuntivo, come <ph name="BEGIN_LINK_LINUX_OSS" />Linux (beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Chiudi</translation>
 <translation id="6055895534982063517">È disponibile una nuova versione di Chromium con una velocità senza precedenti.</translation>
 <translation id="6063093106622310249">&amp;Apri in Chromium</translation>
 <translation id="6072279588547424923">L'estensione <ph name="EXTENSION_NAME" /> è stata aggiunta a Chromium</translation>
@@ -151,7 +138,6 @@
 <translation id="6434250628340475518">Sistema Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium si riavvierà tra 1 secondo}other{Chromium si riavvierà tra # secondi}}</translation>
 <translation id="6475912303565314141">Controlla anche la pagina visualizzata all'avvio di Chromium.</translation>
-<translation id="6485906693002546646">Stai utilizzando <ph name="PROFILE_EMAIL" /> per sincronizzare i tuoi contenuti di Chromium. Per aggiornare la tua preferenza di sincronizzazione o per utilizzare Chromium senza un Account Google, accedi alla pagina <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Disinstalla Chromium</translation>
 <translation id="6570579332384693436">Per correggere gli errori ortografici, Chromium invia a Google il testo digitato nei campi di testo</translation>
 <translation id="6598877126913850652">Vai alle impostazioni di notifica di Chromium</translation>
@@ -161,7 +147,6 @@
 Alcune funzioni potrebbero non essere disponibili. Specifica un'altra directory per il profilo o utilizza una versione più recente di Chromium.</translation>
 <translation id="6734080038664603509">Aggiorna &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium è già installato per tutti gli utenti sul computer.</translation>
-<translation id="6810143991807788455">Contribuisci a migliorare Chromium indicando le impostazioni attuali</translation>
 <translation id="6847869444787758381">Chromium ti avvisa se le tue password vengono compromesse</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copiata in Chromium)</translation>
@@ -180,7 +165,6 @@
 <translation id="7318036098707714271">Il file delle preferenze è danneggiato o non valido.
 
 Chromium non è in grado di recuperare le impostazioni.</translation>
-<translation id="7331920710658926971">Installa Chromium sul telefono. Invieremo un SMS al tuo numero di telefono.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nuova finestra</translation>
 <translation id="734373864078049451">I tuoi siti web, i tuoi segnalibri e gli altri contenuti Chromium sempre disponibili e aggiornati qui.</translation>
@@ -211,16 +195,13 @@
 <translation id="7979877361127045932">Nascondi in menu Chromium</translation>
 <translation id="8013436988911883588">Dopo che Chromium avrà ottenuto l'accesso, i siti web potranno chiederti l'accesso.</translation>
 <translation id="81770708095080097">Questo file è pericoloso, pertanto è stato bloccato da Chromium.</translation>
-<translation id="8222496066431494154">Installa Chromium sul telefono. Invieremo un SMS al tuo numero di telefono per il recupero dell'account: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Se un'immagine è senza descrizione utile, Chromium proverà a fornirne una. Per la creazione delle descrizioni, le immagini vengono inviate a Google. Puoi disattivare questa funzionalità in qualsiasi momento nelle Impostazioni.</translation>
-<translation id="8269379391216269538">Contribuisci a migliorare Chromium</translation>
 <translation id="8290862415967981663">Questo file potrebbe essere pericoloso, pertanto è stato bloccato da Chromium.</translation>
 <translation id="8330519371938183845">Accedi per sincronizzare e personalizzare Chromium sui tuoi dispositivi</translation>
 <translation id="8340674089072921962">L'indirizzo <ph name="USER_EMAIL_ADDRESS" /> utilizzava in precedenza Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Riavvia Chromium entro un giorno}other{Riavvia Chromium entro # giorni}}</translation>
 <translation id="8453117565092476964">L'archivio di installazione è danneggiato o non valido. Scarica di nuovo Chromium.</translation>
 <translation id="8493179195440786826">Chromium non è aggiornato</translation>
-<translation id="85843667276690461">Ricevi assistenza per l'utilizzo di Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> The Chromium Authors. Tutti i diritti riservati.</translation>
 <translation id="8619360774459241877">Avvio di Chromium...</translation>
 <translation id="8621669128220841554">Installazione non riuscita a causa di un errore imprecisato. Scarica di nuovo Chromium.</translation>
@@ -237,21 +218,14 @@
 <translation id="8907580949721785412">Chromium sta cercando di visualizzare le password. Per consentire la visualizzazione, digita la tua password Windows.</translation>
 <translation id="8941642502866065432">Impossibile aggiornare Chromium</translation>
 <translation id="8974095189086268230">La realizzazione di Chromium OS è stata possibile grazie a <ph name="BEGIN_LINK_CROS_OSS" />software open source<ph name="END_LINK_CROS_OSS" /> aggiuntivi.</translation>
-<translation id="8985587603644336029">Qualcuno ha già eseguito l'accesso a Chromium su questo computer come <ph name="ACCOUNT_EMAIL_LAST" />. Se non si tratta del tuo account, crea un nuovo utente Chromium per tenere separate le tue informazioni.
-
-Se esegui comunque l'accesso, le informazioni di Chromium come Preferiti, cronologia e altre impostazioni verranno unite a quelle di <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Per rendere Chromium più sicuro, abbiamo disattivato la seguente estensione non presente nel <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> che potrebbe essere stata aggiunta a tua insaputa.</translation>
 <translation id="9022552996538154597">Accedi a Chromium</translation>
-<translation id="9025992965467895364">Questa pagina è stata messa in pausa da Chromium perché utilizza troppa memoria.</translation>
-<translation id="9036189287518468038">Avvio applicazioni di Chromium</translation>
 <translation id="9089354809943900324">Chromium non è aggiornato</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium verrà riavviato tra un'ora}other{Chromium verrà riavviato tra # ore}}</translation>
 <translation id="91086099826398415">Apri link in una nuova &amp;scheda di Chromium</translation>
 <translation id="911206726377975832">Eliminare anche i tuoi dati di navigazione?</translation>
 <translation id="9158494823179993217">L'amministratore di sistema ha configurato Chromium per l'apertura di un browser alternativo per accedere a <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Se ti disconnetti da <ph name="USERNAME" /> verranno cancellati la cronologia, i Preferiti, le impostazioni e gli altri dati di Chromium memorizzati sul dispositivo. I dati memorizzati nel tuo Account Google non verranno cancellati e potrai gestirli su <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Hai eseguito l'accesso a Chromium</translation>
 <translation id="93478295209880648">Chromium potrebbe non funzionare correttamente perché non è più supportato su Windows XP o Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> richiede di leggere e accettare i seguenti Termini di servizio prima di utilizzare il dispositivo. Questi termini non ampliano, modificano o limitano i Termini di Chromium OS.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_iw.xtb b/chrome/app/resources/chromium_strings_iw.xtb
index 3a10e0fe..83e48f7 100644
--- a/chrome/app/resources/chromium_strings_iw.xtb
+++ b/chrome/app/resources/chromium_strings_iw.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">‏Chromium רוצה לייצא את הסיסמאות שלך. יש להקליד את הסיסמה שלך ל-Windows כדי לאפשר זאת.</translation>
 <translation id="1115445892567829615">‏Chromium לא הצליח לסנכרן את הנתונים שלך. עדכן את משפט הסיסמה לסנכרון.</translation>
 <translation id="113122355610423240">‏Chromium מוגדר כדפדפן ברירת המחדל</translation>
-<translation id="1170115874949214249">‏יש להתקין את Chromium בטלפון שלך, ולאחר מכן נשלח הודעת SMS למספר שמוגדר לשחזור החשבון.</translation>
-<translation id="1174473354587728743">‏משתף את המחשב? עכשיו תוכל להגדיר את Chromium בדיוק כמו שאתה אוהב.</translation>
 <translation id="1185134272377778587">‏על Chromium</translation>
-<translation id="1298199220304005244">‏עזרה באמצעות מערכת ההפעלה של Chromium</translation>
 <translation id="1396446129537741364">‏Chromium מנסה להציג סיסמאות.</translation>
 <translation id="1414495520565016063">‏נכנסת ל-Chromium!</translation>
 <translation id="151962892725702025">‏מערכת ההפעלה של Chromium לא הצליחה לסנכרן את הנתונים שלך מפני שסנכרון אינו זמין עבור הדומיין שלך.</translation>
 <translation id="1524282610922162960">‏שיתוף כרטיסיית Chromium</translation>
-<translation id="1668054258064581266">‏לאחר הסרת החשבון שלך מ-Chromeium, ייתכן שתידרש לטעון מחדש את הכרטיסיות הפתוחות שלך כדי שההסרה תיושם בפועל.</translation>
-<translation id="1688750314291223739">‏הגדר סנכרון כדי לשמור את תכונות הדפדפן המותאמות אישית שלך באינטרנט ולגשת אליהן מ-Chromium בכל מחשב.</translation>
 <translation id="1708666629004767631">‏גרסה חדשה ובטוחה יותר של Chromium זמינה כעת.</translation>
 <translation id="1766096484055239003">‏לפי דרישת מנהל המערכת, יש להפעיל מחדש את Chromium כדי להחיל עדכון</translation>
 <translation id="1774152462503052664">‏אפשר ל-Chromium לפעול ברקע</translation>
 <translation id="1779356040007214683">‏כדי לשפר את האבטחה של Chromium, השבתנו חלק מהתוספים שלא רשומים ב<ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> וייתכן שנוספו ללא ידיעתך.</translation>
 <translation id="1808667845054772817">‏התקן מחדש את Chromium</translation>
-<translation id="1869480248812203386">‏אתה יכול לעזור לשפר את הבטיחות של Chromium ולהקל את השימוש בו על ידי דיווח ל-Google על פרטים של בעיות אבטחה אפשריות.</translation>
 <translation id="1881322772814446296">‏אתה נכנס עם חשבון מנוהל ונותן למנהל המערכת שלו שליטה על הפרופיל שלך ב-Chromium. הנתונים שלך ב-Chromium, כגון יישומים, סימניות, היסטוריה, סיסמאות והגדרות אחרות ייקשרו באופן קבוע ל-<ph name="USER_NAME" />. תוכל למחוק את הנתונים האלה באמצעות לוח הבקרה של חשבונות Google, אבל לא תוכל לשייך את הנתונים האלה לחשבון אחר. לחלופין, תוכל ליצור פרופיל חדש כדי לשמור את הנתונים הקיימים שלך ב-Chromium בנפרד.<ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">‏כיבוי הגדרה זו יאפשר לך להיכנס לאתרי Google, כמו Gmail, בלי להיכנס אל Chromium</translation>
 <translation id="1929939181775079593">‏Chromium אינו מגיב. להפעיל מחדש עכשיו?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">‏לפי בקשת מנהל המערכת, יש להפעיל מחדש את Chromium כדי להחיל את העדכון הזה</translation>
 <translation id="2119636228670142020">‏מידע על &amp;מערכת ההפעלה של Chromium‏</translation>
 <translation id="2241627712206172106">‏אם אתה משתף מחשב, חברים ובני משפחה יכולים לגלוש בנפרד ולהגדיר את Chromium בדיוק כפי שהם רוצים.</translation>
-<translation id="2265088490657775772">‏להורדת Chromium ל-iPhone</translation>
 <translation id="2347108572062610441">‏התוסף שינה את הדף שמוצג כשאתה מפעיל את Chromium.</translation>
 <translation id="2396765026452590966">‏התוסף "<ph name="EXTENSION_NAME" />" שינה את הדף שמוצג כשאתה מפעיל את Chromium.</translation>
 <translation id="2483889755041906834">‏ב-Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">‏כדי לעדכן יש לסגור את Chromium במחשב הזה. הסגירה עשויה לגרום למשתמשים אחרים המחוברים למחשב לאבד שינויים שלא נשמרו.</translation>
 <translation id="2847479871509788944">‏הסר מ-Chromium...</translation>
 <translation id="2886012850691518054">‏אופציונלי: עזור לנו לשפר את Chromium באמצעות שליחת נתוני שימוש ודוחות קריסה אל Google באופן אוטומטי.</translation>
-<translation id="2898082584336937987">‏יש להתקין את Chromium בטלפון שלך, ולאחר מכן נשלח הודעת SMS למספר: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">‏מידע על &amp;Chromium‏</translation>
 <translation id="2977470724722393594">‏Chromium‏ מעודכן</translation>
 <translation id="3032787606318309379">‏הוספה ל-Chromium</translation>
-<translation id="3046695367536568084">‏עליך להיות מחובר ל-Chromium כדי להשתמש ביישומים. כך Chromium יכול לסנכרן את היישומים, הסימניות, ההיסטוריה, הסיסמאות והגדרות נוספות בין מכשירים שונים.</translation>
 <translation id="3068515742935458733">‏עזור לשפר את Chromium על ידי שליחת דוחות קריסה ו-<ph name="UMA_LINK" /> אל Google</translation>
 <translation id="3103660991484857065">‏המתקין לא הצליח לבטל את דחיסת הארכיון. הורד שוב את Chromium.</translation>
 <translation id="3130323860337406239">‏Chromium משתמש במיקרופון שלך.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">‏פתח את הקישור בחלון &amp;גלישה בסתר של Chromium</translation>
 <translation id="3190315855212034486">‏וואו! Chromium קרס. להפעיל מחדש עכשיו?</translation>
 <translation id="3229526316128325841">‏Chromium רוצה לייצא את הסיסמאות שלך.</translation>
-<translation id="3256316712990552818">‏הועתק אל Chromium</translation>
 <translation id="3258596308407688501">‏Chromium אינו יכול לקרוא ולכתוב בספריית הנתונים שלו: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">‏המפתחות של Google API חסרים. פונקציונליות מסוימת של Chromium תהיה מושבתת.</translation>
 <translation id="3296368748942286671">‏המשך הפעלת יישומים ברקע כאשר Chromium סגור</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">הגרסה החדשה כוללת שיפורי בטיחות חשובים ותכונות חדשות.</translation>
 <translation id="421369550622382712">‏גלה יישומים, משחקים, תוספים ועיצובים מעולים בשביל Chromium.</translation>
 <translation id="4216212958613226427">‏זו השפה שבה מוצג ממשק המשתמש של Chromium</translation>
-<translation id="4222580632002216401">‏אתה מחובר כעת ל-Chromium! הסנכרון הושבת על ידי מנהל המערכת שלך.</translation>
 <translation id="4230135487732243613">‏האם לקשר את הנתונים שלך ב-Chromium לחשבון זה?</translation>
 <translation id="4271805377592243930">‏קבל עזרה בנושא Chromium</translation>
 <translation id="4285930937574705105">‏ההתקנה נכשלה בשל שגיאה לא צפויה. אם Chromium  פועל כעת, סגור אותו ונסה שוב.</translation>
@@ -105,7 +94,6 @@
 <translation id="4943838377383847465">‏Chromium נמצא במצב רקע.</translation>
 <translation id="4987820182225656817">‏אורחים יכולים להשתמש ב-Chromium בלי להשאיר דבר מאחור.</translation>
 <translation id="4994636714258228724">‏הוסף את עצמך ל-Chromium</translation>
-<translation id="5181952534059945058">‏הדף הזה מנצל יותר מדי זיכרון, כך שחלק מהתוכן הוסר על ידי Chromium.</translation>
 <translation id="5277894862589591112">‏כדי להחיל את השינויים שביצעת, יש להפעיל מחדש את Chromium</translation>
 <translation id="5358375970380395591">‏אתה נכנס עם חשבון מנוהל ונותן למנהל המערכת שלו שליטה על הפרופיל שלך ב-Chromium. הנתונים שלך ב-Chromium, כגון יישומים, סימניות, היסטוריה, סיסמאות והגדרות אחרות ייקשרו באופן קבוע ל-<ph name="USER_NAME" />. תוכל למחוק את הנתונים האלה באמצעות לוח הבקרה של חשבונות Google, אבל לא תוכל לשייך את הנתונים האלה לחשבון אחר. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">‏מעדכן את Chromium‏ (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -128,7 +116,6 @@
 <translation id="5895138241574237353">הפעל מחדש</translation>
 <translation id="5987687638152509985">‏יש לעדכן את Chromium כדי להתחיל את הסנכרון</translation>
 <translation id="6013050204643758987">‏הפיתוח של מערכת ההפעלה Chromium אפשרי בזכות <ph name="BEGIN_LINK_CROS_OSS" />תוכנות קוד פתוח<ph name="END_LINK_CROS_OSS" /> נוספות, כמו <ph name="BEGIN_LINK_LINUX_OSS" />Linux (בטא)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">סגור</translation>
 <translation id="6055895534982063517">‏גרסה חדשה של Chromium זמינה, והיא מהירה יותר מאי פעם.</translation>
 <translation id="6063093106622310249">‏&amp;פתיחה ב-Chromium</translation>
 <translation id="6072279588547424923">‏<ph name="EXTENSION_NAME" /> נוסף ל-‏Chromium‏</translation>
@@ -150,7 +137,6 @@
 <translation id="6434250628340475518">‏מערכת Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{‏Chromium יבצע אתחול בעוד שנייה אחת}two{‏Chromium יבצע אתחול בעוד # שניות}many{‏Chromium יבצע אתחול בעוד # שניות}other{‏Chromium יבצע אתחול בעוד # שניות}}</translation>
 <translation id="6475912303565314141">‏הגדרה זו גם קובעת איזה דף מוצג כשאתה מפעיל את Chromium.</translation>
-<translation id="6485906693002546646">‏אתה משתמש ב-<ph name="PROFILE_EMAIL" /> כדי לסנכרן את הפריטים שלך ב-Chromium. עבור אל '<ph name="SETTINGS_LINK" />' כדי לעדכן את העדפות הסנכרון או להשתמש ב-Chromium ללא חשבון Google.</translation>
 <translation id="6510925080656968729">‏הסר את התקנת Chromium</translation>
 <translation id="6570579332384693436">‏Chromium שולח את הטקסט שמוקלד בשדות טקסט ל-Google כדי לתקן שגיאות כתיב</translation>
 <translation id="6598877126913850652">‏מעבר אל הגדרות ההודעות של Chromium</translation>
@@ -160,7 +146,6 @@
 ייתכן שחלק מהתכונות לא יהיו זמינות. ציין ספריית פרופיל אחרת או השתמש בגרסה חדשה יותר של Chromium.</translation>
 <translation id="6734080038664603509">‏עדכן &amp;את Chromium‏</translation>
 <translation id="6734291798041940871">‏Chromium כבר מותקן במחשב ונגיש לכל המשתמשים.</translation>
-<translation id="6810143991807788455">‏עזור לשפר את Chromium על ידי דיווח ההגדרות הנוכחיות</translation>
 <translation id="6847869444787758381">‏Chromium מודיע לך אם הסיסמאות שלך נמצאות בסיכון</translation>
 <translation id="6857782730669500492">‏Chromium‏ - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">‏Google Pay (‏הועתק ל-Chromium)</translation>
@@ -179,7 +164,6 @@
 <translation id="7318036098707714271">‏קובץ ההעדפות שלך פגום או לא חוקי. 
 
 Chromium לא יכול לשחזר את ההגדרות שלך.</translation>
-<translation id="7331920710658926971">‏יש להתקין את Chromium בטלפון שלך, ולאחר מכן נשלח אליו הודעת SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">חלון חדש</translation>
 <translation id="734373864078049451">‏היסטוריית האתרים, הסימניות ונתונים נוספים מ-Chromium נמצאים כאן.</translation>
@@ -211,16 +195,13 @@
 <translation id="7979877361127045932">‏הסתר בתפריט Chromium</translation>
 <translation id="8013436988911883588">‏אחרי מתן גישה ל-Chromium, אתרים יוכלו לבקש ממך גישה.</translation>
 <translation id="81770708095080097">‏Chromium‏ חסם את הקובץ הזה כי הוא מסוכן.</translation>
-<translation id="8222496066431494154">‏יש להתקין את Chromium בטלפון שלך, ולאחר מכן נשלח הודעת SMS למספר שמוגדר לשחזור החשבון: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">‏אם אין לתמונה תיאור מועיל, Chromium ינסה לספק לך תיאור. כדי ליצור תיאורים, התמונות נשלחות אל Google. אפשר להשבית את האפשרות הזו בכל זמן דרך ההגדרות.</translation>
-<translation id="8269379391216269538">‏עזור לנו לשפר את Chromium</translation>
 <translation id="8290862415967981663">‏Chromium‏ חסם את הקובץ הזה כי הוא עלול להיות מסוכן.</translation>
 <translation id="8330519371938183845">‏כניסה לחשבון תסנכרן ותתאים אישית את Chromium בכל המכשירים שברשותך</translation>
 <translation id="8340674089072921962">‏בכתובת <ph name="USER_EMAIL_ADDRESS" /> השתמשו בעבר ב-Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{‏צריך להפעיל מחדש את Chromium בתוך יום אחד}two{‏צריך להפעיל מחדש את Chromium בתוך # ימים}many{‏צריך להפעיל מחדש את Chromium בתוך # ימים}other{‏צריך להפעיל מחדש את Chromium בתוך # ימים}}</translation>
 <translation id="8453117565092476964">‏הארכיון של המתקין פגום או שאינו חוקי. הורד שוב את Chromium.</translation>
 <translation id="8493179195440786826">‏Chromium אינו מעודכן</translation>
-<translation id="85843667276690461">‏עזרה באמצעות Chromium</translation>
 <translation id="8586442755830160949">‏Copyright <ph name="YEAR" /> The Chromium Authors. כל הזכויות שמורות.</translation>
 <translation id="8619360774459241877">‏הפעלת Chromium מתבצעת...</translation>
 <translation id="8621669128220841554">‏ההתקנה נכשלה בשל שגיאה לא מזוהה. הורד שוב את Chromium.</translation>
@@ -238,21 +219,14 @@
 <translation id="8907580949721785412">‏Chromium מנסה להציג סיסמאות. הקלד את הסיסמה שלך ל-Windows כדי לאפשר זאת.</translation>
 <translation id="8941642502866065432">‏לא ניתן לעדכן את Chromium</translation>
 <translation id="8974095189086268230">‏מערכת ההפעלה של Chrome התאפשרה באמצעות <ph name="BEGIN_LINK_CROS_OSS" />תוכנת קוד פתוח<ph name="END_LINK_CROS_OSS" /> נוספת.</translation>
-<translation id="8985587603644336029">‏מישהו נכנס בעבר ל-Chromuim מהמחשב הזה כ-<ph name="ACCOUNT_EMAIL_LAST" />. אם זה לא החשבון שלך, צור משתמש חדש ל-Chromuim כדי לשמור על הפרדת המידע שלך.
-
-אם תמשיך בכניסה, המידע ב-Chromuim , כמו סימניות, היסטוריה והגדרות אחרות, ימוזג עם <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">‏כדי לשפר את האבטחה של Chromium, השבתנו את התוסף הבא שאינו רשום ב-<ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> וייתכן שנוסף ללא ידיעתך.</translation>
 <translation id="9022552996538154597">‏היכנס אל Chromium</translation>
-<translation id="9025992965467895364">‏הדף הזה מנצל יותר מדי זיכרון, כך שהוא הושהה על-ידי Chromium.</translation>
-<translation id="9036189287518468038">Chromium App Launcher</translation>
 <translation id="9089354809943900324">‏Chromium אינו מעודכן</translation>
 <translation id="9093206154853821181">{0,plural, =1{‏Chromium יופעל מחדש בעוד שעה}two{‏Chromium יופעל מחדש בעוד # שעות}many{‏Chromium יופעל מחדש בעוד # שעות}other{‏Chromium יופעל מחדש בעוד # שעות}}</translation>
 <translation id="91086099826398415">‏פתח את הקישור &amp;בכרטיסיית Chromium חדשה</translation>
 <translation id="911206726377975832">למחוק גם את נתוני הגלישה שלך?</translation>
 <translation id="9158494823179993217">‏לפי הגדרת מנהל המערכת, Chromium יפתח דפדפן חלופי כדי לגשת אל <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">‏ניתוק <ph name="USERNAME" /> ינקה את ההיסטוריה, הסימניות, ההגדרות ונתוני Chromium אחרים המאוחסנים במכשיר הזה. נתונים המאוחסנים בחשבון Google לא ינוקו, וניתן לנהל אותם <ph name="GOOGLE_DASHBOARD_LINK" />במרכז השליטה של Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">‏Chromium ‏(mDNS-In)</translation>
-<translation id="9197815481970649201">‏אתה מחובר כעת ל-Chromium</translation>
 <translation id="93478295209880648">‏ייתכן ש-Chromium לא יפעל כראוי כי הוא כבר לא נתמך ב-Windows XP וב-Windows Vista</translation>
 <translation id="95514773681268843">‏<ph name="DOMAIN" /> דורש שתקרא ותקבל את התנאים וההגבלות הבאים לפני שתשתמש במכשיר הזה. תנאים אלה אינם מרחיבים, משנים או מגבילים את התנאים של מערכת ההפעלה של Chromium.</translation>
 <translation id="985602178874221306">‏מחברי Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_ja.xtb b/chrome/app/resources/chromium_strings_ja.xtb
index 3833e621..9835c21 100644
--- a/chrome/app/resources/chromium_strings_ja.xtb
+++ b/chrome/app/resources/chromium_strings_ja.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium からパスワードをエクスポートするための許可を求められています。許可するには Windows のパスワードを入力してください。</translation>
 <translation id="1115445892567829615">Chromium はデータを同期できませんでした。同期パスフレーズを更新してください。</translation>
 <translation id="113122355610423240">既定のブラウザは Chromium です</translation>
-<translation id="1170115874949214249">Chromium をスマートフォンにインストールしませんか。お客様のアカウント再設定用の電話番号に、Google より SMS をお送りします。</translation>
-<translation id="1174473354587728743">共有パソコンにするなど、Chromium をお好みの方法で設定できるようになりました。</translation>
 <translation id="1185134272377778587">Chromium について</translation>
-<translation id="1298199220304005244">Chromium OS の使用に関するアドバイス</translation>
 <translation id="1396446129537741364">Chromium はパスワードを表示しようとしています。</translation>
 <translation id="1414495520565016063">Chromium にログインしました</translation>
 <translation id="151962892725702025">お使いのドメインでは同期を利用できないため、Chromium OS はデータを同期できませんでした。</translation>
 <translation id="1524282610922162960">Chromium タブの共有</translation>
-<translation id="1668054258064581266">Chromium からアカウントを削除したら、場合によっては開いているタブを再読み込みして変更を反映させる必要があります。</translation>
-<translation id="1688750314291223739">同期を設定すると、パーソナライズされたブラウザ機能をウェブ上に保存して、どのパソコンの Chromium からでも使用できるようになります。</translation>
 <translation id="1708666629004767631">Chromium がさらに安全になりました。最新バージョンをぜひお試しください。</translation>
 <translation id="1766096484055239003">管理者が、アップデートを適用するために Chromium を再起動するよう求めています</translation>
 <translation id="1774152462503052664">Chromium をバックグラウンドで実行する</translation>
 <translation id="1779356040007214683">Chromium をより安全にご利用いただくため、<ph name="IDS_EXTENSION_WEB_STORE_TITLE" />で提供していない一部の拡張機能を無効にしました。これらは知らないうちに追加された可能性があります。</translation>
 <translation id="1808667845054772817">Chromium を再インストール</translation>
-<translation id="1869480248812203386">セキュリティに関する事象についての詳細を Google に自動送信して、Chromium の安全性と利便性の向上にご協力ください。</translation>
 <translation id="1881322772814446296">現在、管理対象アカウントでログインしており、あなたの Chromium プロフィールを管理者が制御できる状態になっています。あなたの Chromium データ(アプリ、ブックマーク、履歴、パスワードなどの設定)は永続的に <ph name="USER_NAME" /> に関連付けられます。このデータは Google アカウントのダッシュボードを介して削除できますが、このデータを別のアカウントに関連付けることはできなくなります。新しいプロフィールを作成して、既存の Chromium データを別に保管することができます。<ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">この設定を無効にすると、Chromium にログインすることなく Gmail などの Google サイトにログインできます</translation>
 <translation id="1929939181775079593">Chromium が応答しません。今すぐ再起動しますか?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">管理者が、このアップデートを適用するために Chromium を再起動するよう求めています</translation>
 <translation id="2119636228670142020">Chromium OS について(&amp;C)</translation>
 <translation id="2241627712206172106">パソコンを共有している場合、友だちや家族はそれぞれ Chromium を自分専用のブラウザとして自分用の設定をして使うことができます。</translation>
-<translation id="2265088490657775772">iPhone に Chromium をインストール</translation>
 <translation id="2347108572062610441">この拡張機能により、Chromium の起動時に表示されるページが変更されました。</translation>
 <translation id="2396765026452590966">拡張機能「<ph name="EXTENSION_NAME" />」により、Chromium の起動時に表示されるページが変更されました。</translation>
 <translation id="2483889755041906834">Chromium 内</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">更新するには、このパソコン上の Chromium を終了する必要があります。このパソコンにログインしているユーザーが他にいる場合、保存していない変更が失われる可能性があります。</translation>
 <translation id="2847479871509788944">Chromium から削除...</translation>
 <translation id="2886012850691518054">オプション: 使用状況データと障害レポートを Google に自動送信して Chromium の機能向上に役立てる。</translation>
-<translation id="2898082584336937987">Chromium をスマートフォンにインストールしませんか。お客様のアカウント再設定用の電話番号(<ph name="PHONE_NUMBER" />)に、Google より SMS をお送りします。</translation>
 <translation id="2910007522516064972">Chromium について(&amp;C)</translation>
 <translation id="2977470724722393594">Chromium は最新版です</translation>
 <translation id="3032787606318309379">Chromium に追加...</translation>
-<translation id="3046695367536568084">アプリを使用するには Chromium にログインする必要があります。ログインすると、Chromium ではアプリ、ブックマーク、履歴、パスワードなどの設定をデバイス間で同期できるようになります。</translation>
 <translation id="3068515742935458733">障害レポートと<ph name="UMA_LINK" />を Google に自動送信して Chromium の機能向上に役立てる</translation>
 <translation id="3103660991484857065">インストーラ アーカイブを解凍できませんでした。Chromium をダウンロードし直してください。</translation>
 <translation id="3130323860337406239">Chromium がマイクを使用しています。</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Chromium のシークレット ウインドウでリンクを開く(&amp;G)</translation>
 <translation id="3190315855212034486">エラー: Chromium で問題が発生しました。今すぐ再起動しますか?</translation>
 <translation id="3229526316128325841">Chromium からパスワードをエクスポートするための許可を求められています。</translation>
-<translation id="3256316712990552818">Chromium にコピー済み</translation>
 <translation id="3258596308407688501">Chromium はこのデータ ディレクトリへの読み書きを実行できません:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">最新バージョンに更新すると、重要なセキュリティ更新と新機能が適用されます。</translation>
 <translation id="421369550622382712">Chromium の優れたアプリ、ゲーム、拡張機能、テーマをぜひご利用ください。</translation>
 <translation id="4216212958613226427">この言語が Chromium UI の表示に使用されます</translation>
-<translation id="4222580632002216401">Chromium にログインしています。同期は管理者によって無効にされています。</translation>
 <translation id="4230135487732243613">Chromium データをこのアカウントにリンクしますか?</translation>
 <translation id="4271805377592243930">Chromium のヘルプを見る</translation>
 <translation id="4285930937574705105">原因不明のエラーによりインストールが失敗しました。実行中の Chromium を終了してからもう一度お試しください。</translation>
@@ -106,7 +95,6 @@
 <translation id="4943838377383847465">Chromium はバックグラウンド モードです。</translation>
 <translation id="4987820182225656817">ゲスト ユーザーは、記録を残さずに Chromium を使用できます。</translation>
 <translation id="4994636714258228724">Chromium に自分を追加</translation>
-<translation id="5181952534059945058">このページは大量のメモリを使用しているため、Chromium により一部のコンテンツが削除されました。</translation>
 <translation id="5277894862589591112">変更を適用するには Chromium を再起動してください</translation>
 <translation id="5358375970380395591">現在、管理対象アカウントでログインしており、あなたの Chromium プロフィールを管理者が制御できる状態になっています。あなたの Chromium データ(アプリ、ブックマーク、履歴、パスワードなどの設定)は永続的に <ph name="USER_NAME" /> に関連付けられます。このデータは Google アカウントのダッシュボードを介して削除できますが、このデータを別のアカウントに関連付けることはできなくなります。<ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium を更新しています(<ph name="PROGRESS_PERCENT" />)</translation>
@@ -129,7 +117,6 @@
 <translation id="5895138241574237353">再起動</translation>
 <translation id="5987687638152509985">同期を開始するには、Chromium を更新します</translation>
 <translation id="6013050204643758987">Chromium OS も <ph name="BEGIN_LINK_LINUX_OSS" />Linux(ベータ版)<ph name="END_LINK_LINUX_OSS" />も追加の<ph name="BEGIN_LINK_CROS_OSS" />オープンソース ソフトウェア<ph name="END_LINK_CROS_OSS" />によって実現しました。</translation>
-<translation id="6040143037577758943">閉じる</translation>
 <translation id="6055895534982063517">Chromium がさらに速くなりました!最新バージョンをぜひお試しください。</translation>
 <translation id="6063093106622310249">Chromium で開く(&amp;O)</translation>
 <translation id="6072279588547424923">「<ph name="EXTENSION_NAME" />」が Chromium に追加されました</translation>
@@ -151,7 +138,6 @@
 <translation id="6434250628340475518">Chromium OS システム</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium は 1 秒後に再起動します}other{Chromium は # 秒後に再起動します}}</translation>
 <translation id="6475912303565314141">この拡張機能では、Chromium の起動時に表示されるページも制御されます。</translation>
-<translation id="6485906693002546646">Chromium データの同期に <ph name="PROFILE_EMAIL" /> を使用しています。同期設定を更新する、または Google アカウントなしで Chromium を使用するには、<ph name="SETTINGS_LINK" /> にアクセスしてください。</translation>
 <translation id="6510925080656968729">Chromium をアンインストール</translation>
 <translation id="6570579332384693436">スペルミスを修正するために、テキスト欄に入力したテキストが Chromium から Google に送信されます</translation>
 <translation id="6598877126913850652">Chromium の通知設定に移動</translation>
@@ -161,7 +147,6 @@
 一部の機能が利用できない可能性があります。別の場所のプロフィールを指定するか、新しいバージョンの Chromium をご使用ください。</translation>
 <translation id="6734080038664603509">Chromium を更新(&amp;C)</translation>
 <translation id="6734291798041940871">Chromium は既にパソコンのすべてのユーザーに対してインストールされています。</translation>
-<translation id="6810143991807788455">現在の設定を送信して Chromium の品質向上にご協力ください</translation>
 <translation id="6847869444787758381">Chromium では、特定のパスワードが侵害された事実の有無がわかります</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay(Chromium にコピー)</translation>
@@ -180,7 +165,6 @@
 <translation id="7318036098707714271">ユーザー設定ファイルが壊れているか無効です。
 
 設定を復元できません。</translation>
-<translation id="7331920710658926971">Chromium をスマートフォンにインストールしませんか。お客様の電話番号に、Google より SMS をお送りします。</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">新しいウィンドウ</translation>
 <translation id="734373864078049451">ウェブ、ブックマーク、その他の Chromium データを好みに設定できます。</translation>
@@ -212,16 +196,13 @@
 <translation id="7979877361127045932">Chromium メニューで非表示</translation>
 <translation id="8013436988911883588">Chromium にアクセスを許可すると、ウェブサイトからアクセスをリクエストできるようになります。</translation>
 <translation id="81770708095080097">このファイルは危険なファイルであるため、Chromium でブロックしました。</translation>
-<translation id="8222496066431494154">Chromium をスマートフォンにインストールしませんか。お客様のアカウント再設定用の電話番号(<ph name="PHONE_NUMBER" />)に、Google より SMS をお送りします。</translation>
 <translation id="8248265253516264921">画像に有効な説明が設定されていない場合に、Chromium で説明を自動的に生成できるよう Google に画像が送信されます。この機能は設定でいつでも無効にできます。</translation>
-<translation id="8269379391216269538">Chromium の品質向上にご協力ください</translation>
 <translation id="8290862415967981663">このファイルは危険なファイルの可能性があるため、Chromium でブロックしました。</translation>
 <translation id="8330519371938183845">ログインすると、同期してカスタマイズした Chromium をどのデバイスでも使用できます</translation>
 <translation id="8340674089072921962">Chromium の前回の使用者は <ph name="USER_EMAIL_ADDRESS" /> です</translation>
 <translation id="8417404458978023919">{0,plural, =1{1 日以内に Chromium を再起動してください}other{# 日以内に Chromium を再起動してください}}</translation>
 <translation id="8453117565092476964">インストーラ アーカイブが壊れているか無効です。Chromium をダウンロードし直してください。</translation>
 <translation id="8493179195440786826">Chromium は古いバージョンです</translation>
-<translation id="85843667276690461">Chromium の使用に関するアドバイス</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> The Chromium Authors. All rights reserved.</translation>
 <translation id="8619360774459241877">Chromium を起動しています...</translation>
 <translation id="8621669128220841554">原因不明のエラーによりインストールに失敗しました。Chromium をもう一度ダウンロードしてください。</translation>
@@ -239,21 +220,14 @@
 <translation id="8907580949721785412">Chromium でパスワードを表示しようとしています。続行するには、Windows のパスワードを入力してください。</translation>
 <translation id="8941642502866065432">Chromium を更新できません</translation>
 <translation id="8974095189086268230">Chromium OS は、さらに追加の<ph name="BEGIN_LINK_CROS_OSS" />オープンソース ソフトウェア<ph name="END_LINK_CROS_OSS" />によって実現しました。</translation>
-<translation id="8985587603644336029">別のユーザーが前回このパソコンから <ph name="ACCOUNT_EMAIL_LAST" /> として Chromium にログインしました。このメール アドレスがご自分のアカウントでない場合は、新しい Chromium ユーザーを作成して情報を個別に保持してください。
-
-このままログインすると、ブックマーク、履歴、その他の設定などの Chromium データが <ph name="ACCOUNT_EMAIL_NEW" /> と統合されます。</translation>
 <translation id="9019929317751753759">Chromium をより安全にご利用いただくために、<ph name="IDS_EXTENSION_WEB_STORE_TITLE" />で提供していない次の拡張機能を無効にしました。これは知らないうちに追加された可能性があります。</translation>
 <translation id="9022552996538154597">Chromium にログイン</translation>
-<translation id="9025992965467895364">このページは大量のメモリを使用しているため、Chromium により一時停止されました。</translation>
-<translation id="9036189287518468038">Chromium アプリ ランチャー</translation>
 <translation id="9089354809943900324">Chromium は古いバージョンです</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium は 1 時間後に再起動されます}other{Chromium は # 時間後に再起動されます}}</translation>
 <translation id="91086099826398415">新しい Chromium タブでリンクを開く(&amp;T)</translation>
 <translation id="911206726377975832">閲覧データも削除しますか?</translation>
 <translation id="9158494823179993217">システム管理者が、<ph name="TARGET_URL_HOSTNAME" /> へのアクセスに代替ブラウザを開くよう Chromium を設定しています。</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> の接続を解除すると、履歴、ブックマーク、設定、このデバイスに保存されたその他の Chromium データが消去されます。ただし、Google アカウントに保存されたデータは消去されず、引き続き <ph name="GOOGLE_DASHBOARD_LINK" />Google ダッシュボード<ph name="END_GOOGLE_DASHBOARD_LINK" />で管理できます。</translation>
 <translation id="9190841055450128916">Chromium(mDNS インバウンド)</translation>
-<translation id="9197815481970649201">Chromium にログイン済み</translation>
 <translation id="93478295209880648">Windows XP と Windows Vista はサポートされなくなったため、Chromium は正常に機能しない可能性があります</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> では、このデバイスを使用する前に下記の利用規約を確認しこれに同意していただく必要があります。これらの規約は Chromium OS 利用規約を拡張、変更、制限するものではありません。</translation>
 <translation id="985602178874221306">Chromium 開発者</translation>
diff --git a/chrome/app/resources/chromium_strings_kn.xtb b/chrome/app/resources/chromium_strings_kn.xtb
index cc1003a..d8599b5 100644
--- a/chrome/app/resources/chromium_strings_kn.xtb
+++ b/chrome/app/resources/chromium_strings_kn.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ರಫ್ತು ಮಾಡಲು ಬಯಸುತ್ತದೆ. ಇದನ್ನು ಅನುಮತಿಸಲು ನಿಮ್ಮ Windows ಪಾಸ್‌ವರ್ಡ್‌ ಟೈಪ್ ಮಾಡಿ.</translation>
 <translation id="1115445892567829615">Chromium ಗೆ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಸಿಂಕ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ. ದಯವಿಟ್ಟು ನಿಮ್ಮ ಸಿಂಕ್ ಪಾಸ್‌ಫ್ರೇಸ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಿ.</translation>
 <translation id="113122355610423240">Chromium ನಿಮ್ಮ ಡಿಫಾಲ್ಟ್ ಬ್ರೌಸರ್ ಆಗಿದೆ.</translation>
-<translation id="1170115874949214249">ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ Chromium ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ. ನಿಮ್ಮ ಖಾತೆ ಮರುಪ್ರಾಪ್ತಿ ಫೋನ್ ಸಂಖ್ಯೆ‌ಗೆ ನಾವು ಎಸ್ಎಂಎಸ್ ಕಳುಹಿಸುತ್ತೇವೆ.</translation>
-<translation id="1174473354587728743">ಕಂಪ್ಯೂಟರ್‌ ಅನ್ನು ಹಂಚಿಕೊಳ್ಳುವುದೇ? ಇದೀಗ ನೀವು ಇಷ್ಟಪಡುವ ರೀತಿಯಲ್ಲಿ ನೀವು Chromium ಹೊಂದಿಸಬಹುದು.</translation>
 <translation id="1185134272377778587">Chromium ಕುರಿತು</translation>
-<translation id="1298199220304005244">Chromium OS ಅನ್ನು ಬಳಸುತ್ತಿರುವುದರ ಜೊತೆಗೆ ಸಹಾಯವನ್ನು ಪಡೆಯಿರಿ</translation>
 <translation id="1396446129537741364">Chromium ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ತೋರಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದೆ.</translation>
 <translation id="1414495520565016063">ನೀವು Chromium ಗೆ ಸೈನ್ ಇನ್ ಮಾಡಿರುವಿರಿ!</translation>
 <translation id="151962892725702025">ನಿಮ್ಮ ಡೊಮೇನ್‌ನಲ್ಲಿ ಸಿಂಕ್ ಮಾಡುವ ಸೌಲಭ್ಯವಿಲ್ಲದ ಕಾರಣ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಸಿಂಕ್ ಮಾಡಲು Chromium OS ಗೆ ಸಾಧ್ಯವಾಗುತ್ತಿಲ್ಲ.</translation>
 <translation id="1524282610922162960">Chromium ಟ್ಯಾಬ್ ಹಂಚಿಕೊಳ್ಳಿ</translation>
-<translation id="1668054258064581266">Chromium ನಿಂದ ನಿಮ್ಮ ಖಾತೆಯನ್ನು ತೆಗೆದುಹಾಕಿದ ನಂತರ, ಪರಿಣಾಮಕಾರಿಯಾಗಲು ನಿಮ್ಮ ತೆರೆದ ಟ್ಯಾಬ್‌ಗಳನ್ನು ನೀವು ಮರುಲೋಡ್‌ ಮಾಡುವ ಅಗತ್ಯವಿದೆ.</translation>
-<translation id="1688750314291223739">ವೆಬ್‌ಗೆ ನಿಮ್ಮ ವೈಯಕ್ತಿಕಗೊಳಿಸಿದ ಬ್ರೌಸರ್ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಉಳಿಸಲು ಸಿಂಕ್ ಅನ್ನು ಹೊಂದಿಸಿ ಮತ್ತು ಯಾವುದೇ ಕಂಪ್ಯೂಟರ್‌ನಲ್ಲಿ Chromium ನಿಂದ ಅವುಗಳನ್ನು ಪ್ರವೇಶಿಸಿ.</translation>
 <translation id="1708666629004767631">ಹೊಸದಾದ, ಸುರಕ್ಷಿತವಾದ Chromium ನ ಆವೃತ್ತಿ ಲಭ್ಯವಿದೆ.</translation>
 <translation id="1766096484055239003">ಅಪ್‌ಡೇಟ್‌ ಅನ್ವಯಿಸಲು ನೀವು Chrome ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಬೇಕೆಂದು ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಕೋರುತ್ತಿದ್ದಾರೆ</translation>
 <translation id="1774152462503052664">Chromium ಹಿನ್ನೆಲೆಯಲ್ಲಿ ಚಾಲನೆಗೊಳ್ಳಲು ಅನುಮತಿಸಿ</translation>
 <translation id="1779356040007214683">Chromium  ಅನ್ನು ಸುರಕ್ಷಿತವಾಗಿರಿಸಲು, <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ನಲ್ಲಿ ನಾವು ಪಟ್ಟಿ ಮಾಡಲಾದ ಕೆಲವು ವಿಸ್ತರಣೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ್ದೇವೆ ಮತ್ತು ಇದು ಗಮನಕ್ಕೆ ಬಾರದೇ ಸೇರಿಸಿರಬಹುದು.</translation>
 <translation id="1808667845054772817">Chromium ಅನ್ನು ಮರುಸ್ಥಾಪಿಸು</translation>
-<translation id="1869480248812203386">Google ಗೆ ಸಂಭವನೀಯ ಭದ್ರತೆ ಘಟನೆಗಳನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ವಿವರಗಳನ್ನು ವರದಿ ಮಾಡುವ ಮೂಲಕ Chromium ಅನ್ನು ಸುರಕ್ಷಿತ ಮತ್ತು ಸುಲಭಗೊಳಿಸಲು ನೀವು ಸಹಾಯ ಮಾಡಬಹುದು.</translation>
 <translation id="1881322772814446296">ನೀವು ನಿರ್ವಹಿಸಲಾದ ಖಾತೆಯೊಂದಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುತ್ತಿರುವಿರಿ ಮತ್ತು ನಿಮ್ಮ Chromium ಪ್ರೊಫೈಲ್ ಮೂಲಕ ಅದರ ನಿರ್ವಾಹಕ ನಿಯಂತ್ರಣವನ್ನು ನೀಡುತ್ತಿರುವಿರಿ. ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು, ಹಾಗೂ ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳಂತಹ ನಿಮ್ಮ Chromium ಡೇಟಾವನ್ನು <ph name="USER_NAME" /> ಅವರಿಗೆ ಶಾಶ್ವತವಾಗಿ ಬಂಧಿಸಲಾಗುತ್ತದೆ. Google ಖಾತೆಗಳ ಡ್ಯಾಶ್‌ಬೋರ್ಡ್ ಮೂಲಕ ಈ ಡೇಟಾವನ್ನು ಅಳಿಸಲು ನಿಮಗೆ ಸಾಧ್ಯ, ಆದರೆ ಬೇರೊಂದು ಖಾತೆಯೊಂದಿಗೆ ಈ ಡೇಟಾವನ್ನು ಸಂಯೋಜಿಸಲು ನಿಮಗೆ ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ Chromium ಡೇಟಾವನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಇರಿಸಿಕೊಳ್ಳಲು ನೀವು ಐಚ್ಛಿಕವಾಗಿ ಹೊಸ ಪ್ರೊಫೈಲ್ ಅನ್ನು ರಚಿಸಬಹುದು. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">ಇದನ್ನು ಆಫ್ ಮಾಡುವ ಮೂಲಕ, ನೀವು Chromium ಗೆ ಸೈನ್ ಇನ್ ಮಾಡದೆಯೇ Gmail ನಂತಹ Google ಸೈಟ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡಬಹುದು</translation>
 <translation id="1929939181775079593">Chromium ಸ್ಪಂದಿಸುತ್ತಿಲ್ಲ. ಇದೀಗ ಮರುಪ್ರಾರಂಭಿಸುವುದೇ?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">ಈ ಅಪ್‌ಡೇಟ್‌ ಅನ್ವಯಿಸಲು ನೀವು Chrome ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಬೇಕೆಂದು ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಕೋರುತ್ತಿದ್ದಾರೆ</translation>
 <translation id="2119636228670142020">&amp;Chromium OS ಕುರಿತು</translation>
 <translation id="2241627712206172106">ನೀವು ಕಂಪ್ಯೂಟರ್ ಅನ್ನು ಹಂಚಿಕೊಂಡರೆ, ಸ್ನೇಹಿತರು ಮತ್ತು ಕುಟುಂಬದವರು ಪ್ರತ್ಯೇಕವಾಗಿ ಬ್ರೌಸ್ ಮಾಡಬಹುದು ಮತ್ತು Chromium ಅನ್ನು ಅವರಿಗೆ ಬೇಕಾದಂತೆ ಹೊಂದಿಸಿಕೊಳ್ಳಬಹುದು.</translation>
-<translation id="2265088490657775772">ನಿಮ್ಮ iPhone ನಲ್ಲಿ Chromium ಪಡೆದುಕೊಳ್ಳಿ</translation>
 <translation id="2347108572062610441">ನೀವು Chromium ಪ್ರಾರಂಭಿಸಿದಾಗ ಯಾವ ಪುಟ ತೋರಿಸಬೇಕೆಂಬುದನ್ನು ಈ ವಿಸ್ತರಣೆಯು ಬದಲಾಯಿಸಿದೆ.</translation>
 <translation id="2396765026452590966">ನೀವು Chromium ಪ್ರಾರಂಭಿಸಿದಾಗ ತೋರಿಸಬೇಕಾದ ಪುಟವನ್ನು "<ph name="EXTENSION_NAME" />" ವಿಸ್ತರಣೆಯು ಬದಲಾಯಿಸಿದೆ.</translation>
 <translation id="2483889755041906834">Chromium ನಲ್ಲಿ</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">ಅಪ್‌ಡೇಟ್ ಮಾಡಲು, ಈ ಕಂಪ್ಯೂಟರ್‌ನಲ್ಲಿ ರನ್ ಆಗುತ್ತಿರುವ Chromium ಅನ್ನು ನಿಲ್ಲಿಸಬೇಕಾಗುತ್ತದೆ. ಇದರಿಂದಾಗಿ ಈ ಕಂಪ್ಯೂಟರ್‌ನಲ್ಲಿ ಲಾಗ್ ಇನ್ ಆಗಿರುವ ಇತರ ಬಳಕೆದಾರರು ತಮ್ಮ ಉಳಿಸಲಾಗದ ಬದಲಾವಣೆಗಳನ್ನು ಕಳೆದುಕೊಳ್ಳಬಹುದು.</translation>
 <translation id="2847479871509788944">Chromium ನಿಂದ ತೆಗೆದುಹಾಕಿ...</translation>
 <translation id="2886012850691518054">ಐಚ್ಚಿಕ: Google ಗೆ ಬಳಕೆಯ ಅಂಕಿಅಂಶಗಳು ಮತ್ತು ಕ್ರ್ಯಾಷ್ ವರದಿ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕಳುಹಿಸುವುದರಿಂದ Chromium ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಸಹಾಯ ಮಾಡಿ.</translation>
-<translation id="2898082584336937987">ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ Chromium ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ. ನಿಮ್ಮ ಫೋನ್‌‌ಗೆ ನಾವು ಎಸ್ಎಂಎಸ್ ಕಳುಹಿಸುತ್ತೇವೆ: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium ಕುರಿತು</translation>
 <translation id="2977470724722393594">Chromium ಅಪ್‌ ಟು ಡೇಟ್‌ ಆಗಿದೆ</translation>
 <translation id="3032787606318309379">Chromium ಗೆ ಸೇರಿಸಲಾಗುತ್ತಿದೆ...</translation>
-<translation id="3046695367536568084">ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಬಳಸಲು ನೀವು Chromium ಗೆ ಸೈನ್ ಇನ್ ಮಾಡುವ ಅಗತ್ಯವಿದೆ. ಇದು ಸಾಧನಗಳಾದ್ಯಂತ ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು, ಹಾಗೂ ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಸಿಂಕ್ ಮಾಡಲು Chromium ಗೆ ಅವಕಾಶ ಮಾಡಿಕೊಡುತ್ತದೆ.</translation>
 <translation id="3068515742935458733">Google ಗೆ ಕ್ರ್ಯಾಶ್ ವರದಿಗಳನ್ನು ಮತ್ತು <ph name="UMA_LINK" /> ಕಳುಹಿಸುವುದರಿಂದ Chromium ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಸಹಾಯ ಮಾಡಿ</translation>
 <translation id="3103660991484857065">ಆರ್ಕೈವ್ ಅನ್ನು ಸಂಕ್ಷೇಪ ಮಾಡದಿರಲು ಸ್ಥಾಪಕ ವಿಫಲಗೊಂಡಿದೆ. ದಯವಿಟ್ಟು Chromium ಅನ್ನು ಪುನಃ ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ.</translation>
 <translation id="3130323860337406239">Chromium ನಿಮ್ಮ ಮೈಕ್ರೋಫೋನ್ ಬಳಸುತ್ತಿದೆ.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Chromium ಅ&amp;ದೃಶ್ಯ ವಿಂಡೋದಲ್ಲಿ ಲಿಂಕ್ ತೆರೆಯಿರಿ</translation>
 <translation id="3190315855212034486">ಓಹ್! Chromium ಕ್ರ್ಯಾಶ್ ಆಗಿದೆ. ಮತ್ತೊಮ್ಮೆ ಪ್ರಾರಂಭಿಸುವುದೇ?</translation>
 <translation id="3229526316128325841">Chromium ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ರಫ್ತು ಮಾಡಲು ಬಯಸುತ್ತದೆ.</translation>
-<translation id="3256316712990552818">Chromium ಗೆ ನಕಲಿಸಲಾಗಿದೆ</translation>
 <translation id="3258596308407688501">Chromium ಗೆ ಇದರ ಡೇಟಾ ಡೈರೆಕ್ಟರಿಯನ್ನು ಓದಲಾಗುವುದಿಲ್ಲ ಮತ್ತು ಬರೆಯಲಾಗುವುದಿಲ್ಲ: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">Google API ಕೀಗಳು ಕಾಣೆಯಾಗಿವೆ. Chromium ನ ಕೆಲವು ಕಾರ್ಯವಿಧಾನಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ.</translation>
 <translation id="3296368748942286671">Chromium ಮುಚ್ಚಿದಾಗ ರನ್‌ ಆಗುತ್ತಿರುವ ಹಿನ್ನೆಲೆ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಮುಂದುವರಿಸು</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಯಲ್ಲಿ ಪ್ರಮುಖವಾದ ಭದ್ರತಾ ಸುಧಾರಣೆಗಳು ಮತ್ತು ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳು ಲಭ್ಯವಿದೆ.</translation>
 <translation id="421369550622382712">Chromium ಗಾಗಿ ಅದ್ಭುತ ಅಪ್ಲಿಕೇಶನ್‌‌ಗಳು, ಗೇಮ್‌ಗಳು, ವಿಸ್ತರಣೆಗಳು ಹಾಗೂ ಥೀಮ್‌ಗಳನ್ನು ಅನ್ವೇಷಿಸಿ.</translation>
 <translation id="4216212958613226427">Chromium UI ತೋರಿಸಲು ಈ ಭಾಷೆಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ</translation>
-<translation id="4222580632002216401">ಇದೀಗ ನೀವು Chromium ಗೆ ಸೈನ್ ಇನ್ ಆಗಿರುವಿರಿ! ನಿಮ್ಮ ನಿರ್ವಾಹಕರಿಂದ ಸಿಂಕ್ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ.</translation>
 <translation id="4230135487732243613">ಈ ಖಾತೆಗೆ ನಿಮ್ಮ Chromium ಡೇಟಾವನ್ನು ಲಿಂಕ್ ಮಾಡುವುದೇ?</translation>
 <translation id="4271805377592243930">Chromium ಜೊತೆಗೆ ಸಹಾಯ ಪಡೆಯಿರಿ</translation>
 <translation id="4285930937574705105">ಅನಿರ್ದಿಷ್ಟ ದೋಷದಿಂದಾಗಿ ಸ್ಥಾಪನೆಯು ವಿಫಲಗೊಂಡಿದೆ. Chromium ಪ್ರಸ್ತುತ ಚಾಲನೆಯಲ್ಲಿದ್ದರೆ, ದಯವಿಟ್ಟು ಅದನ್ನು ಮುಚ್ಚಿರಿ ಮತ್ತು ಪುನಃ ಪ್ರಯತ್ನಿಸಿ.</translation>
@@ -104,7 +93,6 @@
 <translation id="4943838377383847465">Chromium ಹಿನ್ನೆಲೆ ಮೋಡ್‌ನಲ್ಲಿದೆ.</translation>
 <translation id="4987820182225656817">ಅತಿಥಿಗಳು ಏನನ್ನೂ ಉಳಿಸದೆಯೇ Chromium ಬಳಸಬಹುದು.</translation>
 <translation id="4994636714258228724">ನೀವಾಗಿಯೇ Chromium ಗೆ ಸೇರಿಕೊಳ್ಳಿ</translation>
-<translation id="5181952534059945058">ಈ ಪುಟವು ತೀರಾ ಹೆಚ್ಚು ಮೆಮೊರಿಯನ್ನು ಬಳಸುತ್ತದೆ, ಆದ್ದರಿಂದ Chromium ಕೆಲವು ವಿಷಯಗಳನ್ನು ತೆಗೆದುಹಾಕಿದೆ.</translation>
 <translation id="5277894862589591112">ನಿಮ್ಮ ಬದಲಾವಣೆಗಳನ್ನು ಅನ್ವಯಿಸಲು, Chromium ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಿ</translation>
 <translation id="5358375970380395591">ನೀವು ನಿರ್ವಹಿಸಲಾದ ಖಾತೆಯೊಂದಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುತ್ತಿರುವಿರಿ ಮತ್ತು ನಿಮ್ಮ Chromium ಪ್ರೊಫೈಲ್ ಮೂಲಕ ಅದರ ನಿರ್ವಾಹಕ ನಿಯಂತ್ರಣವನ್ನು ನೀಡುತ್ತಿರುವಿರಿ. ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು, ಹಾಗೂ ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳಂತಹ ನಿಮ್ಮ Chromium ಡೇಟಾವನ್ನು <ph name="USER_NAME" /> ಅವರಿಗೆ ಶಾಶ್ವತವಾಗಿ ಬಂಧಿಸಲಾಗುತ್ತದೆ. Google ಖಾತೆಗಳ ಡ್ಯಾಶ್‌ಬೋರ್ಡ್ ಮೂಲಕ ಈ ಡೇಟಾವನ್ನು ಅಳಿಸಲು ನಿಮಗೆ ಸಾಧ್ಯ, ಆದರೆ ಬೇರೊಂದು ಖಾತೆಯೊಂದಿಗೆ ಈ ಡೇಟಾವನ್ನು ಸಂಯೋಜಿಸಲು ನಿಮಗೆ ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium ಅಪ್‌ಡೇಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -127,7 +115,6 @@
 <translation id="5895138241574237353">ಮರುಪ್ರಾರಂಭಿಸಿ</translation>
 <translation id="5987687638152509985">ಸಿಂಕ್ ಪ್ರಾರಂಭಿಸಲು Chromium ಅಪ್‌ಡೇಟ್ ಮಾಡಿ</translation>
 <translation id="6013050204643758987">Chromium OS ಅನ್ನು, <ph name="BEGIN_LINK_LINUX_OSS" />Linux ನಂತೆಯೇ (ಬೀಟಾ)<ph name="END_LINK_LINUX_OSS" /> ಹೆಚ್ಚುವರಿ <ph name="BEGIN_LINK_CROS_OSS" />ಓಪನ್ ಸೋರ್ಸ್ ಸಾಫ್ಟ್‌ವೇರ್‌ನ<ph name="END_LINK_CROS_OSS" /> ಸಹಾಯದಿಂದ ಒದಗಿಸಲಾಗಿದೆ.</translation>
-<translation id="6040143037577758943">ಮುಚ್ಚಿರಿ</translation>
 <translation id="6055895534982063517">Chromium ನ ಹೊಸ ಆವೃತ್ತಿ ಲಭ್ಯವಿದೆ, ಮತ್ತು ಇದು ಎಂದಿಗಿಂತಲೂ ವೇಗವಾಗಿದೆ.</translation>
 <translation id="6063093106622310249">&amp;Chromium ನಲ್ಲಿ ತೆರೆಯಿರಿ</translation>
 <translation id="6072279588547424923">Chromium ಗೆ <ph name="EXTENSION_NAME" /> ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ</translation>
@@ -149,7 +136,6 @@
 <translation id="6434250628340475518">Chromium OS ಸಿಸ್ಟಂ</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium 1 ಸೆಕೆಂಡ್‌ನಲ್ಲಿ ಮರುಪ್ರಾರಂಭವಾಗುತ್ತದೆ}one{Chromium # ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಮರುಪ್ರಾರಂಭವಾಗುತ್ತದೆ}other{Chromium # ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಮರುಪ್ರಾರಂಭವಾಗುತ್ತದೆ}}</translation>
 <translation id="6475912303565314141">ನೀವು Chromium ಪ್ರಾರಂಭಿಸಿದಾಗ ತೋರಿಸಬೇಕಾದ ಪುಟವನ್ನು ಕೂಡಾ ಇದು ನಿಯಂತ್ರಿಸುತ್ತದೆ.</translation>
-<translation id="6485906693002546646">ನಿಮ್ಮ Chromium ವಿಷಯವನ್ನು ಸಿಂಕ್ ಮಾಡಲು ನೀವು <ph name="PROFILE_EMAIL" /> ಅನ್ನು ಬಳಸುತ್ತಿರುವಿರಿ. Google ಖಾತೆ ಇಲ್ಲದೆ ನಿಮ್ಮ ಸಿಂಕ್ ಪ್ರಾಶಸ್ತ್ಯಗಳನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲು ಅಥವಾ Chromium ಬಳಸಲು, <ph name="SETTINGS_LINK" /> ಭೇಟಿ ನೀಡಿ.</translation>
 <translation id="6510925080656968729">Chromium ಅನ್‌ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ</translation>
 <translation id="6570579332384693436">ಕಾಗುಣಿತ ದೋಷಗಳನ್ನು ಸರಿಪಡಿಸಲು, ನೀವು ಪಠ್ಯ ಕ್ಷೇತ್ರಗಳಲ್ಲಿ ಟೈಪ್ ಮಾಡುವ ಪಠ್ಯವನ್ನು Chromium, Google ಗೆ ಕಳುಹಿಸುತ್ತದೆ</translation>
 <translation id="6598877126913850652">Chromium ಅಧಿಸೂಚನೆ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಗೆ ಹೋಗಿ</translation>
@@ -157,7 +143,6 @@
 <translation id="6717134281241384636">Chromium ನ ಹೊಸ ಆವೃತ್ತಿಯಾಗಿರುವುದರಿಂದ ನಿಮ್ಮ ಪ್ರೊಫೈಲ್ ಅನ್ನು ಬಳಸಲಾಗುವುದಿಲ್ಲ. ಕೆಲವೊಂದು ವೈಶಿಷ್ಟ್ಯಗಳು ಲಭ್ಯವಿಲ್ಲದಿರಬಹುದು. ದಯವಿಟ್ಟು ಬೇರೆ ಒಂದು ಪೊಫೈಲ್ ಡೈರೆಕ್ಟರಿ ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಿ ಅಥವಾ Chromium ನ ಹೊಸ ಆವೃತ್ತಿಯನ್ನು ಬಳಸಿ.</translation>
 <translation id="6734080038664603509">&amp;Chromium ಅಪ್‌ಡೇಟ್‌ ಮಾಡಿ</translation>
 <translation id="6734291798041940871">ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನಲ್ಲಿನ ಎಲ್ಲ ಬಳಕೆದಾರರಿಗೆ ಈಗಾಗಲೇ Chromium ಸ್ಥಾಪಿತವಾಗಿದೆ.</translation>
-<translation id="6810143991807788455">ಪ್ರಸ್ತುತ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ವರದಿ ಮಾಡುವುದರ ಮೂಲಕ Chromium ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಸಹಾಯಮಾಡಿ</translation>
 <translation id="6847869444787758381">ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ಎಂದಾದರೂ ಹ್ಯಾಕ್‌ ಆಗಿವೆಯೇ ಎಂಬುದನ್ನು Chromium ನಿಮಗೆ ತಿಳಿಸುತ್ತದೆ</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (Chromium ಗೆ ನಕಲಿಸಲಾಗಿದೆ)</translation>
@@ -174,7 +159,6 @@
 <translation id="731644333568559921">&amp;Chromium OS ಅನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಿ</translation>
 <translation id="731795002583552498">Chromium ಅನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ</translation>
 <translation id="7318036098707714271">ನಿಮ್ಮ ಪ್ರಾಶಸ್ತ್ಯಗಳ ಫೈಲ್ ದೋಷಪೂರಿತವಾಗಿದೆ ಅಥವಾ ಅಮಾನ್ಯವಾಗಿದೆ. ನಿಮ್ಮ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಮರುಪಡೆದುಕೊಳ್ಳುವಲ್ಲಿ Chromium ವಿಫಲಗೊಂಡಿದೆ.</translation>
-<translation id="7331920710658926971">ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ Chromium ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ. ನಿಮ್ಮ ಫೋನ್‌‌ಗೆ ನಾವು ಎಸ್ಎಂಎಸ್ ಕಳುಹಿಸುತ್ತೇವೆ.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">ಹೊಸ ವಿಂಡೊ</translation>
 <translation id="734373864078049451">ನಿಮ್ಮ ವೆಬ್, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು ಮತ್ತು ಇತರ Chromium ಸಂಗತಿಗಳು ಇಲ್ಲಿ ಲೈವ್ ಆಗುತ್ತವೆ.</translation>
@@ -205,16 +189,13 @@
 <translation id="7979877361127045932">Chromium ಮೆನುವಿನಲ್ಲಿ ಮರೆಮಾಡು</translation>
 <translation id="8013436988911883588">Chromium ಒಮ್ಮೆ ಪ್ರವೇಶವನ್ನು ಪಡೆದ ಬಳಿಕ, ಪ್ರವೇಶಕ್ಕಾಗಿ ನಿಮ್ಮನ್ನು ಕೇಳಲು ವೆಬ್‍ಸೈಟ್‍ಗಳಿಗೆ ಸಾಧ್ಯವಾಗುತ್ತದೆ.</translation>
 <translation id="81770708095080097">ಈ ಫೈಲ್ ಅಪಾಯಕಾರಿಯಾಗಿದೆ, ಹೀಗಾಗಿ Chromium ಇದನ್ನು ನಿರ್ಬಂಧಿಸಿದೆ.</translation>
-<translation id="8222496066431494154">ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ Chromium ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ. ನಿಮ್ಮ ಖಾತೆ ಮರುಪ್ರಾಪ್ತಿ ಫೋನ್ ಸಂಖ್ಯೆ‌ಗೆ ನಾವು ಎಸ್ಎಂಎಸ್ ಕಳುಹಿಸುತ್ತೇವೆ: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">ಚಿತ್ರದಲ್ಲಿ ಉಪಯುಕ್ತ ವಿವರಣೆಯು ಇಲ್ಲದಿದ್ದರೆ, Chromium ನಿಮಗಾಗಿ ಒಂದು ವಿವರಣೆಯನ್ನು ಒದಗಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ. ವಿವರಣೆಗಳನ್ನು ರಚಿಸಲು, ಚಿತ್ರಗಳನ್ನು Google ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ. ಇದನ್ನು ನೀವು ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ಯಾವಾಗ ಬೇಕಾದರೂ ಆಫ್ ಮಾಡಬಹುದು.</translation>
-<translation id="8269379391216269538">Chromium ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಸಹಾಯ ಮಾಡಿ</translation>
 <translation id="8290862415967981663">ಈ ಫೈಲ್ ಅಪಾಯಕಾರಿಯಾಗಿರಬಹುದು, ಹೀಗಾಗಿ Chromium ಇದನ್ನು ನಿರ್ಬಂಧಿಸಿದೆ.</translation>
 <translation id="8330519371938183845">ನಿಮ್ಮ ಸಾಧನಗಳಲ್ಲಿ Chromium ಅನ್ನು ಸಿಂಕ್ ಮಾಡಲು ಮತ್ತು ವೈಯಕ್ತೀಕರಿಸಲು ಸೈನ್ ಇನ್ ಮಾಡಿ</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> ಅವರು ಮೊದಲಿನಿಂದಲೆ Chromium ಬಳಸುತ್ತಿದ್ದರು</translation>
 <translation id="8417404458978023919">{0,plural, =1{ಒಂದು ದಿನದ ಒಳಗೆ Chromium ಮರುಪ್ರಾರಂಭಿಸಿ}one{# ದಿನಗಳ ಒಳಗೆ Chromium ಮರುಪ್ರಾರಂಭಿಸಿ}other{# ದಿನಗಳ ಒಳಗೆ Chromium ಮರುಪ್ರಾರಂಭಿಸಿ}}</translation>
 <translation id="8453117565092476964">ಸ್ಥಾಪಕ ಆರ್ಕೈವ್ ದೋಷಪೂರಿತವಾಗಿದೆ ಅಥವಾ ಅಮಾನ್ಯವಾಗಿದೆ. ದಯವಿಟ್ಟು Chromium ಅನ್ನು ಪುನಃ ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ.</translation>
 <translation id="8493179195440786826">Chromium ನ ಅವಧಿ ಮುಗಿದಿದೆ</translation>
-<translation id="85843667276690461">Chromium ಅನ್ನು ಬಳಸುತ್ತಿರುವುದರ ಜೊತೆಗೆ ಸಹಾಯವನ್ನು ಪಡೆಯಿರಿ</translation>
 <translation id="8586442755830160949">ಹಕ್ಕುಸ್ವಾಮ್ಯ <ph name="YEAR" /> Chromium ಲೇಖಕರು. ಎಲ್ಲಾ ಹಕ್ಕುಗಳನ್ನು ಕಾಯ್ದಿರಿಸಲಾಗಿದೆ.</translation>
 <translation id="8619360774459241877">Chromium ಅನ್ನು ಪ್ರಾರಂಭಿಸಲಾಗುತ್ತಿದೆ...</translation>
 <translation id="8621669128220841554">ಅನಿರ್ದಿಷ್ಟ ದೋಷದಿಂದಾಗಿ ಸ್ಥಾಪನೆ ವಿಫಲವಾಗಿದೆ. ದಯವಿಟ್ಟು ಮತ್ತೊಮ್ಮೆ Chromium ಅನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ.</translation>
@@ -231,21 +212,14 @@
 <translation id="8907580949721785412">Chromium ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ಪ್ರದರ್ಶಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದೆ. ಇದನ್ನು ಅನುಮತಿಸಲು ನಿಮ್ಮ Windows ಪಾಸ್‌ವರ್ಡ್‌ ಟೈಪ್ ಮಾಡಿ.</translation>
 <translation id="8941642502866065432">Chromium ಅನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ</translation>
 <translation id="8974095189086268230">ಹೆಚ್ಚುವರಿ <ph name="BEGIN_LINK_CROS_OSS" />ಓಪನ್ ಸೋರ್ಸ್ ಸಾಫ್ಟ್‌ವೇರ್<ph name="END_LINK_CROS_OSS" /> ನಿಂದ Chrome OS ಮಾಡಲು ಸಾಧ್ಯ.</translation>
-<translation id="8985587603644336029"><ph name="ACCOUNT_EMAIL_LAST" /> ನಂತೆ ಈ ಕಂಪ್ಯೂಟರ್‌ನಲ್ಲಿ Chromium ಯಾರೋ ಈ ಹಿಂದೆಯೇ ಸೈನ್ ಇನ್ ಮಾಡಿದ್ದಾರೆ. ಅದು ನಿಮ್ಮ ಖಾತೆಯಾಗಿಲ್ಲದಿದ್ದರೆ, ನಿಮ್ಮ ಮಾಹಿತಿಯನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಇರಿಸಿಕೊಳ್ಳಲು ಹೊಸ Chromium ಬಳಕೆದಾರರನ್ನು ರಚಿಸಿ.
-
-ಸೈನ್ ಇನ್ ಮಾಡುವುದು ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ, ಹಾಗೂ ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳಂತಹ Chromium ಮಾಹಿತಿಯನ್ನು <ph name="ACCOUNT_EMAIL_NEW" /> ಗೆ ಹೇಗಾದರೂ ವಿಲೀನಗೊಳಿಸುತ್ತದೆ.</translation>
 <translation id="9019929317751753759">Chromium ಅನ್ನು ಸುರಕ್ಷಿತವಾಗಿರಿಸಲು, <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ನಲ್ಲಿ ಪಟ್ಟಿ ಮಾಡದಿರುವ ಕೆಳಗಿನ ವಿಸ್ತರಣೆಯನ್ನು ನಾವು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ್ದೇವೆ ಮತ್ತು ಇದು ನಿಮ್ಮ ಗಮನಕ್ಕೆ ಬಾರದೇ ಸೇರಿಸಲಾಗಿರಬಹುದು.</translation>
 <translation id="9022552996538154597">Chromium ಗೆ ಸೈನ್ ಇನ್ ಆಗಿ</translation>
-<translation id="9025992965467895364">ಈ ಪುಟವು ಅತಿ ಹೆಚ್ಚು ಮೆಮೊರಿಯನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತದೆ, ಆದ್ದರಿಂದ Chromium ಇದನ್ನು ವಿರಾಮಗೊಳಿಸಿದೆ.</translation>
-<translation id="9036189287518468038">Chromium ಅಪ್ಲಿಕೇಶನ್‌ ಲಾಂಚರ್‌</translation>
 <translation id="9089354809943900324">Chromium ನ ಅವಧಿ ಮುಗಿದಿದೆ</translation>
 <translation id="9093206154853821181">{0,plural, =1{ಒಂದು ಗಂಟೆಯಲ್ಲಿ Chromium ಮರುಪ್ರಾರಂಭಗೊಳ್ಳುತ್ತದೆ}one{# ಗಂಟೆಗಳಲ್ಲಿ Chromium ಮರುಪ್ರಾರಂಭಗೊಳ್ಳುತ್ತದೆ}other{# ಗಂಟೆಗಳಲ್ಲಿ Chromium ಮರುಪ್ರಾರಂಭಗೊಳ್ಳುತ್ತದೆ}}</translation>
 <translation id="91086099826398415">ಹೊಸ Chromium &amp;ಟ್ಯಾಬ್‌ನಲ್ಲಿ ಲಿಂಕ್ ತೆರೆಯಿರಿ</translation>
 <translation id="911206726377975832">ನಿಮ್ಮ ಬ್ರೌಸಿಂಗ್ ಡೇಟಾವನ್ನು ಸಹ ಅಳಿಸುವುದೇ?</translation>
 <translation id="9158494823179993217"><ph name="TARGET_URL_HOSTNAME" /> ಗೆ ಪ್ರವೇಶಿಸಲು ಒಂದು ಪರ್ಯಾಯ ಬ್ರೌಸರ್ ತೆರೆಯುವಂತೆ ನಿಮ್ಮ ಸಿಸ್ಟಂ ನಿರ್ವಾಹಕರು Chromium ಅನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿದ್ದಾರೆ.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> ಅವರ ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸುವುದರಿಂದ ನಿಮ್ಮ ಇತಿಹಾಸ, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಸೆಟ್ಟಿಂಗ್‌ಗಳು ಮತ್ತು ಈ ಸಾಧನದಲ್ಲಿ ಸಂಗ್ರಹವಾಗಿರುವ ಇತರ Chromium ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸಲಾಗುತ್ತದೆ. ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ಸಂಗ್ರಹವಾಗಿರುವ ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸಲಾಗುತ್ತದೆ ಮತ್ತು <ph name="GOOGLE_DASHBOARD_LINK" />Google ಡ್ಯಾಶ್‌ಬೋರ್ಡ್‌ನಲ್ಲಿ<ph name="END_GOOGLE_DASHBOARD_LINK" /> ನಿರ್ವಹಿಸಬಹುದಾಗಿದೆ.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">ಇದೀಗ ನೀವು Chromium ಗೆ ಸೈನ್‌ ಇನ್‌ ಆಗಿರುವಿರಿ</translation>
 <translation id="93478295209880648">Windows XP ಅಥವಾ Windows Vista ದಲ್ಲಿ Chromium ಗೆ ಈಗ ಬೆಂಬಲವಿಲ್ಲದೇ ಇರುವುದರಿಂದ ಅದು ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸದೇ ಇರಬಹುದು</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> ಈ ಸಾಧನವನ್ನು ಬಳಸುವ ಮೊದಲು ಕೆಳಗಿನ ಸೇವಾ ನಿಯಗಳನ್ನು ನೀವು ಓದುವ ಹಾಗೂ ಸಮ್ಮತಿಸುವ ಅವಶ್ಯಕತೆ ಇದೆ. ಈ ನಿಯಮಗಳು ವಿಸ್ತರಗೊಳ್ಳುವುದಿಲ್ಲ, ಮಾರ್ಪಡಾಗುವುದಿಲ್ಲ, ಅಥವಾ Chromium OS ನಿಯಮಗಳನ್ನು ಉಲ್ಲಂಘಿಸುವುದಿಲ್ಲ.</translation>
 <translation id="985602178874221306">Chromium ಲೇಖಕರು</translation>
diff --git a/chrome/app/resources/chromium_strings_ko.xtb b/chrome/app/resources/chromium_strings_ko.xtb
index 67fc944..7a10866 100644
--- a/chrome/app/resources/chromium_strings_ko.xtb
+++ b/chrome/app/resources/chromium_strings_ko.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium에서 비밀번호를 내보내려고 합니다. 허용하려면 Windows 비밀번호를 입력하세요.</translation>
 <translation id="1115445892567829615">Chromium에서 데이터를 동기화하지 못했습니다. 동기화 암호를 업데이트하시기 바랍니다.</translation>
 <translation id="113122355610423240">Chromium이 기본 브라우저로 설정되어 있습니다.</translation>
-<translation id="1170115874949214249">휴대전화에 Chromium을 설치하세요. 계정 복구 전화번호로 SMS를 보내 드리겠습니다.</translation>
-<translation id="1174473354587728743">컴퓨터를 공유하시겠습니까? 이제 원하는 대로 Chromium을 설정할 수 있습니다.</translation>
 <translation id="1185134272377778587">Chromium 정보</translation>
-<translation id="1298199220304005244">Chromium OS 사용에 대한 도움말</translation>
 <translation id="1396446129537741364">Chromium이 비밀번호를 표시하려고 합니다.</translation>
 <translation id="1414495520565016063">Chromium에 로그인했습니다.</translation>
 <translation id="151962892725702025">내 도메인에서 동기화를 사용할 수 없으므로 Chromium OS에서 데이터를 동기화하지 못했습니다.</translation>
 <translation id="1524282610922162960">Chromium 탭 공유</translation>
-<translation id="1668054258064581266">Chromium에서 계정을 삭제한 후 열려 있는 탭을 새로고침해야 적용됩니다.</translation>
-<translation id="1688750314291223739">맞춤설정한 브라우저 기능을 웹에 저장하고 모든 컴퓨터의 Chromium에서 액세스할 수 있도록 동기화를 설정합니다.</translation>
 <translation id="1708666629004767631">새롭고 안전한 Chromium의 새 버전을 사용할 수 있습니다.</translation>
 <translation id="1766096484055239003">관리자가 업데이트를 적용하려면 사용자가 반드시 Chromium을 다시 시작하도록 설정했습니다.</translation>
 <translation id="1774152462503052664">백그라운드에서 Chromium을 실행</translation>
 <translation id="1779356040007214683">Google에서는 Chromium의 보안을 강화하기 위해 <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />에 표시되지 않고 사용자 모르게 추가되었을 수 있는 일부 확장 프로그램의 사용을 중지했습니다.</translation>
 <translation id="1808667845054772817">Chromium 재설치</translation>
-<translation id="1869480248812203386">Google에 발생할 수 있는 보안 문제의 세부정보를 자동으로 보고하도록 설정하면 Chromium을 더 안전하고 편리하게 사용할 수 있습니다.</translation>
 <translation id="1881322772814446296">관리 계정으로 로그인하고 Chromium 프로필에 대한 관리자 제어권을 부여하려고 합니다. 앱, 북마크, 방문 기록, 비밀번호 및 기타 설정 등 Chromium 데이터가 <ph name="USER_NAME" /> 계정에 영구적으로 연결됩니다. 이후 이 데이터를 Google 계정 대시보드에서 삭제할 수는 있지만 다른 계정에 연결할 수는 없습니다. 기존 Chromium 데이터를 유지하려면 새 프로필을 만드는 방법이 있습니다. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">이 기능을 사용 중지하면 Chromium에 로그인하지 않고도 Gmail 등의 Google 사이트에 로그인할 수 있습니다.</translation>
 <translation id="1929939181775079593">Chromium이 응답하지 않습니다. 다시 시작하시겠습니까?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">관리자가 이 업데이트를 적용하려면 사용자가 Chromium을 다시 시작하도록 설정했습니다.</translation>
 <translation id="2119636228670142020">Chromium OS 정보</translation>
 <translation id="2241627712206172106">컴퓨터를 공유하는 경우 친구와 가족이 개별적으로 탐색하고 원하는 대로 Chromium을 설정할 수 있습니다.</translation>
-<translation id="2265088490657775772">iPhone에 Chromium 다운로드하기</translation>
 <translation id="2347108572062610441">Chromium을 시작하면 표시되는 페이지가 이 확장 프로그램으로 인해 변경되었습니다.</translation>
 <translation id="2396765026452590966">Chromium을 시작하면 표시되는 페이지가 '<ph name="EXTENSION_NAME" />' 확장 프로그램으로 인해 변경되었습니다.</translation>
 <translation id="2483889755041906834">Chromium에서</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">업데이트하려면 이 컴퓨터에서 Chromium 실행을 중단해야 합니다. 중단하면 이 컴퓨터에 로그인한 다른 사용자가 저장하지 않은 변경 사항을 잃을 수 있습니다.</translation>
 <translation id="2847479871509788944">Chromium에서 제거...</translation>
 <translation id="2886012850691518054">선택사항: 사용 통계 및 비정상 종료 보고서가 Google로 자동 전송되도록 선택하시면 Chromium을 개선하는 데 도움이 됩니다.</translation>
-<translation id="2898082584336937987">휴대전화에 Chromium을 설치하세요. 다음 휴대전화로 SMS를 보내 드리겠습니다. <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Chromium 정보</translation>
 <translation id="2977470724722393594">Chromium이 최신 버전임</translation>
 <translation id="3032787606318309379">Chromium에 추가하는 중...</translation>
-<translation id="3046695367536568084">앱을 사용하려면 Chromium에 로그인해야 합니다. 로그인하면 Chromium이 기기 간에 앱, 북마크, 방문 기록, 비밀번호 및 기타 설정을 동기화할 수 있습니다.</translation>
 <translation id="3068515742935458733">비정상 종료 보고서와 <ph name="UMA_LINK" />을(를) Google로 전송하여 Chromium 개선에 참여합니다.</translation>
 <translation id="3103660991484857065">설치 프로그램이 보관 파일 압축 풀기에 실패했습니다. Chromium을 다시 다운로드하세요.</translation>
 <translation id="3130323860337406239">Chromium이 마이크를 사용 중입니다.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Chromium 시크릿 창에서 링크 열기(&amp;G)</translation>
 <translation id="3190315855212034486">Chromium이 다운되었습니다. 다시 시작하시겠습니까?</translation>
 <translation id="3229526316128325841">Chromium에서 비밀번호를 내보내려고 합니다.</translation>
-<translation id="3256316712990552818">Chromium에 복사됨</translation>
 <translation id="3258596308407688501">Chromium에서 데이터 디렉터리를 읽고 쓸 수 없습니다.
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">최신 버전에는 중요한 보안 개선사항 및 새로운 기능이 포함되어 있습니다.</translation>
 <translation id="421369550622382712">Chromium에 유용한 앱, 게임, 확장 프로그램, 테마를 찾아보세요.</translation>
 <translation id="4216212958613226427">Chromium UI가 이 언어로 표시됩니다.</translation>
-<translation id="4222580632002216401">Chromium에 로그인했습니다! 관리자가 동기화를 사용 중지했습니다.</translation>
 <translation id="4230135487732243613">Chromium 데이터를 이 계정에 연결하시겠습니까?</translation>
 <translation id="4271805377592243930">Chromium 도움말 보기</translation>
 <translation id="4285930937574705105">확인되지 않은 오류로 설치에 실패했습니다. Chromium이 실행 중인 경우 종료한 후 다시 실행하세요.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Chromium이 백그라운드 모드로 실행 중입니다.</translation>
 <translation id="4987820182225656817">게스트로 사용 기록을 남기지 않고 Chromium을 사용할 수 있습니다.</translation>
 <translation id="4994636714258228724">Chromium에 본인 추가</translation>
-<translation id="5181952534059945058">페이지에서 너무 많은 메모리를 사용하므로 Chromium에서 일부 콘텐츠를 삭제했습니다.</translation>
 <translation id="5277894862589591112">변경사항을 적용하려면 Chromium을 다시 실행하세요.</translation>
 <translation id="5358375970380395591">관리 계정으로 로그인하고 Chromium 프로필에 대한 관리자 제어권을 부여하려고 합니다. 앱, 북마크, 방문 기록, 비밀번호 및 기타 설정 등 Chromium 데이터가 <ph name="USER_NAME" /> 계정에 영구적으로 연결됩니다. 이후 이 데이터를 Google 계정 대시보드에서 삭제할 수는 있지만 다른 계정에 연결할 수는 없습니다. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium 업데이트 중(<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">다시 시작</translation>
 <translation id="5987687638152509985">동기화를 시작하려면 Chromium을 업데이트하세요.</translation>
 <translation id="6013050204643758987"><ph name="BEGIN_LINK_LINUX_OSS" />Linux(베타)<ph name="END_LINK_LINUX_OSS" />와 마찬가지로, Chromium OS는 추가 <ph name="BEGIN_LINK_CROS_OSS" />오픈소스 소프트웨어<ph name="END_LINK_CROS_OSS" />를 사용하여 개발되었습니다.</translation>
-<translation id="6040143037577758943">닫기</translation>
 <translation id="6055895534982063517">이전보다 더 빨라진 Chromium 새 버전을 사용할 수 있습니다.</translation>
 <translation id="6063093106622310249">&amp;Chromium에서 열기</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" />이(가) Chromium에 추가됨</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Chromium OS 시스템</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{1초 후에 Chromium이 다시 시작됩니다}other{#초 후에 Chromium이 다시 시작됩니다}}</translation>
 <translation id="6475912303565314141">또한 Chromium을 시작할 때 표시되는 페이지를 설정합니다.</translation>
-<translation id="6485906693002546646">Chromium 콘텐츠를 동기화하기 위해 <ph name="PROFILE_EMAIL" />을(를) 사용 중입니다. 동기화 환경설정을 업데이트하거나 Google 계정 없이 Chromium을 사용하려면 <ph name="SETTINGS_LINK" />(으)로 이동하세요.</translation>
 <translation id="6510925080656968729">Chromium 설치 제거</translation>
 <translation id="6570579332384693436">맞춤법 오류를 수정하기 위해 Chromium에서 사용자가 입력하는 텍스트를 Google로 전송합니다.</translation>
 <translation id="6598877126913850652">Chromium 알림 설정으로 이동</translation>
@@ -164,7 +150,6 @@
 일부 기능을 사용할 수 없습니다. 다른 프로필 디렉터리를 지정하거나 Chromium의 새로운 버전을 사용하시기 바랍니다.</translation>
 <translation id="6734080038664603509">Chromium 업데이트</translation>
 <translation id="6734291798041940871">모든 사용자가 사용할 수 있도록 컴퓨터에 Chromium이 이미 설치되어 있습니다.</translation>
-<translation id="6810143991807788455">현재 설정을 보고하여 Chromium 개선에 참여</translation>
 <translation id="6847869444787758381">비밀번호가 유출되면 Chromium에서 알려줍니다.</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay(Chromium에 복사됨)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">환경설정 파일이 손상되었거나 잘못되었습니다.
 
 Chromium에서 설정을 복구할 수 없습니다.</translation>
-<translation id="7331920710658926971">휴대전화에 Chromium을 설치하세요. 휴대전화로 SMS를 보내 드리겠습니다.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">새 창</translation>
 <translation id="734373864078049451">웹, 북마크 및 기타 Chromium 콘텐츠가 여기에 저장됩니다.</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">Chromium 메뉴에서 숨기기</translation>
 <translation id="8013436988911883588">Chromium에 액세스 권한을 부여하면 웹사이트에서 액세스 권한을 요청할 수 있게 됩니다.</translation>
 <translation id="81770708095080097">이 파일은 위험하므로 Chromium에서 차단했습니다.</translation>
-<translation id="8222496066431494154">휴대전화에 Chromium을 설치하세요. 다음의 계정 복구 전화번호로 SMS를 보내 드리겠습니다. <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">이미지에 유용한 설명이 없으면 Chromium에서 자동으로 설명을 제공하려고 시도합니다. 설명을 생성하기 위해 이미지가 Google로 전송됩니다. 이 기능은 언제든지 설정에서 사용 중지할 수 있습니다.</translation>
-<translation id="8269379391216269538">Chromium 개선에 참여</translation>
 <translation id="8290862415967981663">이 파일은 위험할 수 있으므로 Chromium에서 차단했습니다.</translation>
 <translation id="8330519371938183845">로그인하여 모든 기기에서 Chromium을 동기화하고 맞춤설정하세요.</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" />에서 이전에 Chromium을 사용한 적이 있음</translation>
 <translation id="8417404458978023919">{0,plural, =1{1일 이내로 Chromium을 다시 시작해 주세요}other{#일 이내로 Chromium을 다시 시작해 주세요}}</translation>
 <translation id="8453117565092476964">설치 프로그램 아카이브가 손상되었거나 잘못되었습니다. Chromium을 다시 다운로드하세요.</translation>
 <translation id="8493179195440786826">Chromium이 이전 버전임</translation>
-<translation id="85843667276690461">Chromium 사용에 대한 도움말</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> The Chromium Authors. All rights reserved.</translation>
 <translation id="8619360774459241877">Chromium 실행 중...</translation>
 <translation id="8621669128220841554">알 수 없는 오류로 인해 설치에 실패했습니다. Chromium을 다시 다운로드하세요.</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">Chromium에서 비밀번호를 표시하려고 합니다. 허용하려면 Windows 비밀번호를 입력하세요.</translation>
 <translation id="8941642502866065432">Chromium을 업데이트하지 못함</translation>
 <translation id="8974095189086268230">Chrome OS는 추가 <ph name="BEGIN_LINK_CROS_OSS" />오픈소스 소프트웨어<ph name="END_LINK_CROS_OSS" />를 사용했습니다.</translation>
-<translation id="8985587603644336029">다른 사용자가 이전에 이 컴퓨터에서 <ph name="ACCOUNT_EMAIL_LAST" />(으)로 Chromium에 로그인했습니다. 본인의 계정이 아닌 경우 새로운 Chromium 사용자를 만들어 정보를 분리하세요.
-
-로그인하면 북마크, 방문 기록 및 기타 설정과 같은 Chromium 정보가 <ph name="ACCOUNT_EMAIL_NEW" />에 병합됩니다.</translation>
 <translation id="9019929317751753759">Google에서는 Chromium의 보안을 강화하기 위해 <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />에 표시되지 않고 사용자가 모르게 추가되었을 수 있는 다음 확장 프로그램의 사용을 중지했습니다.</translation>
 <translation id="9022552996538154597">Chromium에 로그인</translation>
-<translation id="9025992965467895364">페이지에서 너무 많은 메모리를 사용하므로 Chromium에서 페이지를 일시중지했습니다.</translation>
-<translation id="9036189287518468038">Chromium 앱 런처</translation>
 <translation id="9089354809943900324">Chromium이 이전 버전임</translation>
 <translation id="9093206154853821181">{0,plural, =1{1시간 후 Chromium이 다시 시작됩니다}other{#시간 후 Chromium이 다시 시작됩니다}}</translation>
 <translation id="91086099826398415">새 Chromium 탭에서 링크 열기(&amp;T)</translation>
 <translation id="911206726377975832">인터넷 사용 기록도 삭제하시겠습니까?</translation>
 <translation id="9158494823179993217">시스템 관리자가 <ph name="TARGET_URL_HOSTNAME" /> 액세스를 위해 대체 브라우저를 열도록 Chromium을 구성했습니다.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" />의 연결을 해제하면 이 기기에 저장된 방문 기록, 북마크, 설정 및 Chromium 데이터가 삭제됩니다. Google 계정에 저장된 데이터는 삭제되지 않으며 <ph name="GOOGLE_DASHBOARD_LINK" />Google 대시보드<ph name="END_GOOGLE_DASHBOARD_LINK" />에서 관리될 수 있습니다.</translation>
 <translation id="9190841055450128916">Chromium(mDNS-In)</translation>
-<translation id="9197815481970649201">이제 Chromium에 로그인되었습니다.</translation>
 <translation id="93478295209880648">Windows XP 또는 Windows Vista에서 더 이상 Chromium을 지원하지 않으므로 Chromium이 올바르게 작동하지 않을 수 있습니다</translation>
 <translation id="95514773681268843">이 기기를 사용하기 전에 <ph name="DOMAIN" />에서 다음 서비스 약관을 읽고 동의해야 합니다. 이 약관은 Chromium OS 약관을 확장, 수정 또는 제한하지 않습니다.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_lt.xtb b/chrome/app/resources/chromium_strings_lt.xtb
index b2bf2b6..6f411fd 100644
--- a/chrome/app/resources/chromium_strings_lt.xtb
+++ b/chrome/app/resources/chromium_strings_lt.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">„Chromium“ nori eksportuoti jūsų slaptažodžius. Įveskite „Windows“ slaptažodį, kad tai leistumėte.</translation>
 <translation id="1115445892567829615">„Chromium“ negali sinchronizuoti jūsų duomenų. Atnaujinkite sinchronizavimo slaptafrazę.</translation>
 <translation id="113122355610423240">„Chromium“ yra numatytoji naršyklė</translation>
-<translation id="1170115874949214249">Įdiekite „Chromium“ telefone. Išsiųsime SMS pranešimą paskyros atkūrimo telefono numeriu.</translation>
-<translation id="1174473354587728743">Bendrinate kompiuterį? Dabar galite nustatyti „Chromium“ kaip tik norite.</translation>
 <translation id="1185134272377778587">Apie „Chromium“</translation>
-<translation id="1298199220304005244">Gauti su „Chromium“ OS naudojimu susijusios pagalbos</translation>
 <translation id="1396446129537741364">„Chromium“ bando parodyti slaptažodžius.</translation>
 <translation id="1414495520565016063">Esate prisijungę prie „Chromium“.</translation>
 <translation id="151962892725702025">„Chromium“ OS negali sinchronizuoti duomenų, nes jūsų domene sinchronizavimas nepasiekiamas.</translation>
 <translation id="1524282610922162960">„Chromium“ skirtuko bendrinimas</translation>
-<translation id="1668054258064581266">Pašalinus paskyrą iš „Chromium“, galbūt reikės iš naujo įkelti skirtukus, kad pakeitimai įsigaliotų.</translation>
-<translation id="1688750314291223739">Nustatykite sinchronizavimą, kad žiniatinklyje išsaugotumėte suasmenintas naršyklės funkcijas ir pasiektumėte jas iš „Chromium“ bet kuriuo kompiuteriu.</translation>
 <translation id="1708666629004767631">Pasiekiama nauja, saugesnė „Chromium“ versija.</translation>
 <translation id="1766096484055239003">Administratorius reikalauja paleisti iš naujo „Chromium“, kad galėtų pritaikyti naujinį</translation>
 <translation id="1774152462503052664">Paleisti „Chromium“ fone</translation>
 <translation id="1779356040007214683">Kad „Chromium“ padarytume saugesnę, išjungėme kai kuriuos plėtinius, kurių nėra „<ph name="IDS_EXTENSION_WEB_STORE_TITLE" />“ sąraše ir kurie galėjo būti pridėti be jūsų žinios.</translation>
 <translation id="1808667845054772817">Iš naujo įdiegti „Chromium“</translation>
-<translation id="1869480248812203386">Galite padėti sustiprinti „Chromium“ saugą ir palengvinti jos naudojimą automatiškai „Google“ pateikdami išsamią informaciją apie galimas saugos problemas.</translation>
 <translation id="1881322772814446296">Prisijungiate su valdoma paskyra ir leidžiate jos administratoriui valdyti jūsų „Chromium“ profilį. „Chromium“ duomenys, pvz., programos, žymės, istorija, slaptažodžiai ir kiti nustatymai, bus visam laikui susieti su <ph name="USER_NAME" />. Galėsite ištrinti šiuos duomenis naudodami „Google“ paskyrų informacijos suvestinę, bet negalėsite susieti šių duomenų su kita paskyra. Galite pasirinktinai sukurti naują profilį, kad esami „Chromium“ duomenys būtų saugomi atskirai. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Jei išjungsite šį nustatymą, prie „Google“ svetainių galėsite prisijungti kaip prie „Gmail“ neprisijungę prie „Chromium“</translation>
 <translation id="1929939181775079593">„Chromium“ neatsako. Paleisti iš naujo dabar?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Administratorius prašo paleisti iš naujo „Chromium“, kad galėtų pritaikyti šį naujinį</translation>
 <translation id="2119636228670142020">Apie &amp;„Chromium“ OS</translation>
 <translation id="2241627712206172106">Jei bendrinate kompiuterį, šeimos nariai ir draugai gali naršyti atskirai ir nustatyti „Chromium“ pagal savo poreikius.</translation>
-<translation id="2265088490657775772">gauti „Chromium“ „iPhone“ įrenginyje</translation>
 <translation id="2347108572062610441">Šis plėtinys pakeitė, kuris puslapis rodomas paleidus „Chromium“.</translation>
 <translation id="2396765026452590966">Plėtinys „<ph name="EXTENSION_NAME" />“ pakeitė, kuris puslapis rodomas paleidus „Chromium“.</translation>
 <translation id="2483889755041906834">Naudojant „Chromium“</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Norint atnaujinti „Chromium“, programa šiame kompiuteryje turi būti sustabdyta. Todėl kiti naudotojai, prisijungę prie šio kompiuterio, gali prarasti neišsaugotus pakeitimus.</translation>
 <translation id="2847479871509788944">Pašalinti iš „Chromium“...</translation>
 <translation id="2886012850691518054">Pasirenkama: padėkite tobulinti „Chromium“ automatiškai siųsdami „Google“ naudojimo statistiką ir strigčių ataskaitas.</translation>
-<translation id="2898082584336937987">Įdiekite „Chromium“ telefone. Išsiųsime SMS pranešimą jūsų telefono numeriu: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Apie &amp;„Chromium“</translation>
 <translation id="2977470724722393594">„Chromium“ naujausios versijos</translation>
 <translation id="3032787606318309379">Pridedama prie „Chromium“...</translation>
-<translation id="3046695367536568084">Jei norite naudoti programas, turite būti prisijungę prie „Chromium“. Tada „Chromium“ galės sinchronizuoti jūsų programas, žymes, istoriją, slaptažodžius ir kitus nustatymus įrenginiuose.</translation>
 <translation id="3068515742935458733">Padėkite tobulinti „Chromium“ siųsdami „Google“ strigčių ataskaitas ir <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Diegimo programai nepavyko išpakuoti archyvo. Atsisiųskite „Chromium“ dar kartą.</translation>
 <translation id="3130323860337406239">„Chromium“ naudoja jūsų mikrofoną.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Atidaryti nuorodą „Chromium“ inko&amp;gnito lange</translation>
 <translation id="3190315855212034486">Oi! „Chromium“ užstrigo. Paleisti iš naujo dabar?</translation>
 <translation id="3229526316128325841">„Chromium“ nori eksportuoti jūsų slaptažodžius.</translation>
-<translation id="3256316712990552818">Nukopijuota į „Chromium“</translation>
 <translation id="3258596308407688501">„Chromium“ negali skaityti ir rašyti į duomenų katalogą:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">Naujausios versijos programoje įdiegti svarbūs saugos patobulinimai ir pasiekiamos naujos funkcijos.</translation>
 <translation id="421369550622382712">Atraskite puikių „Chromium“ programų, žaidimų, plėtinių ir temų.</translation>
 <translation id="4216212958613226427">Ši kalba vartojama „Chromium“ NS pateikti</translation>
-<translation id="4222580632002216401">Dabar esate prisijungę prie „Chromium“. Administratorius neleidžia sinchronizuoti.</translation>
 <translation id="4230135487732243613">Susisieti „Chromium“ duomenis su šia paskyra?</translation>
 <translation id="4271805377592243930">Gaukite pagalbos dėl „Chromium“</translation>
 <translation id="4285930937574705105">Diegimas nepavyko dėl nežinomos klaidos. Jei šiuo metu veikia „Chromium“, uždarykite ir pabandykite iš naujo.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">„Chromium“ veikia fono režimu.</translation>
 <translation id="4987820182225656817">Svečiai gali naudoti „Chromium“ nepalikdami jokių duomenų.</translation>
 <translation id="4994636714258228724">Pridėkite save prie „Chromium“</translation>
-<translation id="5181952534059945058">Šis puslapis naudoja per daug atminties, todėl „Chromium“ pašalino šiek tiek turinio.</translation>
 <translation id="5277894862589591112">Norėdami pritaikyti pakeitimus, paleiskite „Chromium“ iš naujo</translation>
 <translation id="5358375970380395591">Prisijungiate su valdoma paskyra ir leidžiate jos administratoriui valdyti jūsų „Chromium“ profilį. „Chromium“ duomenys, pvz., programos, žymės, istorija, slaptažodžiai ir kiti nustatymai, bus visam laikui susieti su <ph name="USER_NAME" />. Galėsite ištrinti šiuos duomenis naudodami „Google“ paskyrų informacijos suvestinę, bet negalėsite susieti šių duomenų su kita paskyra. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Atnaujinama „Chromium“ (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">Paleisti iš naujo</translation>
 <translation id="5987687638152509985">Atnaujinkite „Chromium“, kad galėtumėte pradėti sinchronizuoti</translation>
 <translation id="6013050204643758987">„Chromium“ OS pasiekiama naudojant papildomą <ph name="BEGIN_LINK_CROS_OSS" />atvirojo šaltinio programinę įrangą<ph name="END_LINK_CROS_OSS" /> (kaip ir <ph name="BEGIN_LINK_LINUX_OSS" />„Linux“ (beta vers.)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Uždaryti</translation>
 <translation id="6055895534982063517">Pasiekiama nauja „Chromium“ versija, kuri greitesnė nei bet kada.</translation>
 <translation id="6063093106622310249">&amp;Atidaryti naudojant „Chromium“</translation>
 <translation id="6072279588547424923">„<ph name="EXTENSION_NAME" />“ pridėtas prie „Chromium“</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">„Chromium“ OS sistema</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{„Chromium“ bus paleista iš naujo po 1 sekundės}one{„Chromium“ bus paleista iš naujo po # sekundės}few{„Chromium“ bus paleista iš naujo po # sekundžių}many{„Chromium“ bus paleista iš naujo po # sekundės}other{„Chromium“ bus paleista iš naujo po # sekundžių}}</translation>
 <translation id="6475912303565314141">Ji taip pat kontroliuoja, koks puslapis rodomas, kai paleidžiate „Chromium“.</translation>
-<translation id="6485906693002546646">Sinchronizuoti „Chromium“ duomenims naudojate <ph name="PROFILE_EMAIL" />. Jei norite atnaujinti sinchronizavimo nuostatą arba naudoti „Chromium“ be „Google“ paskyros, apsilankykite <ph name="SETTINGS_LINK" /> skiltyje.</translation>
 <translation id="6510925080656968729">Pašalinti „Chromium“</translation>
 <translation id="6570579332384693436">Kad ištaisytų rašybos klaidas, „Chromium“ siunčia „Google“ tekstą, kurį įvedate teksto laukuose</translation>
 <translation id="6598877126913850652">Eiti į „Chromium“ pranešimų nustatymus</translation>
@@ -164,7 +150,6 @@
 Kai kurios funkcijos gali būti nepasiekiamos. Nurodykite kitą profilio katalogą arba naudokite naujesnės versijos „Chromium“.</translation>
 <translation id="6734080038664603509">&amp;„Chromium“ naujinys</translation>
 <translation id="6734291798041940871">„Chromium“ jau įdiegta visiems kompiuterio naudotojams.</translation>
-<translation id="6810143991807788455">Padėkite tobulinti „Chromium“ pateikę ataskaitą apie dabartinius nustatymus</translation>
 <translation id="6847869444787758381">„Chromium“ praneš, jei slaptažodžiai bus pažeisti</translation>
 <translation id="6857782730669500492">„Chromium“ – „<ph name="PAGE_TITLE" />“</translation>
 <translation id="6863361426438995919">„Google Pay“ (nukopijuota į „Chromium“)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">Nuostatų failas sugadintas ar netinkamas.
 
 „Chromium“ negali atkurti nustatymų.</translation>
-<translation id="7331920710658926971">Įdiekite „Chromium“ telefone. Išsiųsime SMS pranešimą jūsų telefono numeriu.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Naujas langas</translation>
 <translation id="734373864078049451">Čia saugoma žiniatinklio informacija, žymės ir kiti „Chromium“ duomenys.</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">Paslėpti „Chromium“ meniu elementą</translation>
 <translation id="8013436988911883588">Kai „Chromium“ galės pasiekti duomenis, svetainės taip pat galės prašyti suteikti leidimą juos pasiekti.</translation>
 <translation id="81770708095080097">Šis failas pavojingas, todėl „Chromium“ jį užblokavo.</translation>
-<translation id="8222496066431494154">Įdiekite „Chromium“ telefone. Išsiųsime SMS pranešimą paskyros atkūrimo telefono numeriu: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Jei nebus naudingo vaizdo aprašo, „Chromium“ bandys jums jį pateikti. Kad būtų galima kurti aprašus, vaizdai siunčiami į sistemą „Google“. Šią parinktį galite bet kada išjungti skiltyje „Nustatymai“.</translation>
-<translation id="8269379391216269538">Padėkite tobulinti „Chromium“</translation>
 <translation id="8290862415967981663">Šis failas gali būti pavojingas, todėl „Chromium“ jį užblokavo.</translation>
 <translation id="8330519371938183845">Prisijunkite, kad galėtumėte sinchronizuoti ir suasmeninti „Chromium“ skirtinguose įrenginiuose</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> anksčiau naudojo „Chromium“</translation>
 <translation id="8417404458978023919">{0,plural, =1{„Chromium“ paleidimas iš naujo po dienos}one{„Chromium“ paleidimas iš naujo po # dienos}few{„Chromium“ paleidimas iš naujo po # dienų}many{„Chromium“ paleidimas iš naujo po # dienos}other{„Chromium“ paleidimas iš naujo po # dienų}}</translation>
 <translation id="8453117565092476964">Diegimo programos archyvas sugadintas arba negalioja. Atsisiųskite „Chromium“ dar kartą.</translation>
 <translation id="8493179195440786826">„Chromium“ versija yra pasenusi</translation>
-<translation id="85843667276690461">Gauti su „Chromium“ naudojimu susijusios pagalbos</translation>
 <translation id="8586442755830160949">Autorių teisės priklauso „Chromium“ autoriams, <ph name="YEAR" /> m. Visos teisės saugomos.</translation>
 <translation id="8619360774459241877">Pristatoma „Chromium“...</translation>
 <translation id="8621669128220841554">Nepavyko įdiegti dėl nenurodytos klaidos. Atsisiųskite „Chromium“ dar kartą.</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">„Chromium“ bando rodyti slaptažodžius. Įveskite „Windows“ slaptažodį, kad tai leistumėte.</translation>
 <translation id="8941642502866065432">Nepavyko atnaujinti „Chromium“</translation>
 <translation id="8974095189086268230">„Chrome“ OS pasiekiama naudojant papildomą <ph name="BEGIN_LINK_CROS_OSS" />atvirojo šaltinio programinę įrangą<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Kažkas anksčiau prisijungė prie „Chromium“ šiame kompiuteryje kaip <ph name="ACCOUNT_EMAIL_LAST" />. Jei tai ne jūsų paskyra, sukurkite naują „Chromium“ naudotoją, kad apsaugotumėte savo informaciją.
-
-Prisijungus bet kuriuo būdu, „Chromium“ informacija, pvz., žymės, istorija ir kiti nustatymai, bus sujungta su <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Kad „Chromium“ būtų saugesnė, išjungėme toliau nurodytą plėtinį, kuris nepateiktas <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> sąraše ir tikriausiai buvo pridėtas be jūsų žinios.</translation>
 <translation id="9022552996538154597">Prisijungti prie „Chromium“</translation>
-<translation id="9025992965467895364">Šis puslapis naudoja per daug atminties, todėl „Chromium“ jį pristabdė.</translation>
-<translation id="9036189287518468038">„Chromium“ programų paleidimo priemonė</translation>
 <translation id="9089354809943900324">„Chromium“ versija yra pasenusi</translation>
 <translation id="9093206154853821181">{0,plural, =1{„Chromium“ bus paleista iš naujo po valandos}one{„Chromium“ bus paleista iš naujo po # valandos}few{„Chromium“ bus paleista iš naujo po # valandų}many{„Chromium“ bus paleista iš naujo po # valandos}other{„Chromium“ bus paleista iš naujo po # valandų}}</translation>
 <translation id="91086099826398415">Atidaryti nuorodą naujame „Chromium“ &amp;skirtuke</translation>
 <translation id="911206726377975832">Ar ištrinti naršymo duomenis?</translation>
 <translation id="9158494823179993217">Sistemos administratorius sukonfigūravo „Chromium“ atidaryti alternatyvią naršyklę, kad būtų galima pasiekti <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Atjungus <ph name="USERNAME" />, bus išvalyta jūsų istorija, žymės, nustatymai ir kiti „Chromium“ duomenys, saugomi šiame įrenginyje. „Google“ paskyroje saugomi duomenys nebus išvalyti. Juos galite tvarkyti <ph name="GOOGLE_DASHBOARD_LINK" />„Google“ informacijos suvestinėje<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">„Chromium“ (mDNS-In)</translation>
-<translation id="9197815481970649201">Esate prisijungę prie „Chromium“</translation>
 <translation id="93478295209880648">„Chromium“ gali tinkamai neveikti, nes ji nebepalaikoma naudojant „Windows XP“ arba „Windows Vista“</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> reikia, kad prieš naudodami šį įrenginį perskaitytumėte toliau pateiktas paslaugų teikimo sąlygas. Šios sąlygos neišplečia, nepakeičia ir neapriboja „Chromium“ OS sąlygų.</translation>
 <translation id="985602178874221306">„Chromium“ autoriai</translation>
diff --git a/chrome/app/resources/chromium_strings_lv.xtb b/chrome/app/resources/chromium_strings_lv.xtb
index 7bc5b0e..1327ff9 100644
--- a/chrome/app/resources/chromium_strings_lv.xtb
+++ b/chrome/app/resources/chromium_strings_lv.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Pārlūkā Chromium tiek mēģināts eksportēt jūsu paroles. Lai to atļautu, ievadiet savu Windows paroli.</translation>
 <translation id="1115445892567829615">Chromium nevarēja sinhronizēt jūsu datus. Lūdzu, atjauniniet savu sinhronizācijas ieejas frāzi.</translation>
 <translation id="113122355610423240">Jūsu noklusējuma pārlūks ir Chromium.</translation>
-<translation id="1170115874949214249">Instalējiet pārlūku Chromium savā tālrunī. Mēs nosūtīsim īsziņu uz jūsu konta atkopšanas tālruņa numuru.</translation>
-<translation id="1174473354587728743">Vai datoru izmanto vairāki lietotāji? Tagad varat iestatīt pārlūku Chromium atbilstoši savām vajadzībām.</translation>
 <translation id="1185134272377778587">Par Chromium</translation>
-<translation id="1298199220304005244">Saņemt palīdzību par Chromium OS izmantošanu</translation>
 <translation id="1396446129537741364">Chromium mēģina rādīt paroles.</translation>
 <translation id="1414495520565016063">Esat pierakstījies operētājsistēmā Chromium!</translation>
 <translation id="151962892725702025">Chromium OS nevarēja sinhronizēt jūsu datus, jo jūsu domēnā nav pieejama sinhronizācija.</translation>
 <translation id="1524282610922162960">Chromium cilnes kopīgošana</translation>
-<translation id="1668054258064581266">Kad konts būs noņemts no Chromium, iespējams, būs atkārtoti jāielādē atvērtās cilnes, lai izmaiņas stātos spēkā.</translation>
-<translation id="1688750314291223739">Iestatiet sinhronizāciju, lai saglabātu savas personalizētās pārlūka funkcijas tīmeklī un piekļūtu tām no Chromium jebkurā datorā.</translation>
 <translation id="1708666629004767631">Ir pieejama jauna un drošāka Chromium versija.</translation>
 <translation id="1766096484055239003">Lai lietotu atjauninājumu, administrators pieprasa restartēt pārlūku Chromium.</translation>
 <translation id="1774152462503052664">Ļaut Chromium darboties fonā</translation>
 <translation id="1779356040007214683">Lai uzlabotu Chromium drošību, mēs atspējojām dažus paplašinājumus, kas nav norādīti vietnē <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> un, iespējams, tika pievienoti, jums nezinot.</translation>
 <translation id="1808667845054772817">Pārinstalēt Chromium</translation>
-<translation id="1869480248812203386">Varat palīdzēt uzlabot Chromium drošību un lietošanas ērtumu, automātiski nosūtot Google serveriem informāciju par iespējamām drošības problēmām.</translation>
 <translation id="1881322772814446296">Jūs pierakstāties ar pārvaldītu kontu, kura administrators var kontrolēt jūsu profilu. Jūsu Chromium dati, piemēram, lietotnes, grāmatzīmes, vēsture, paroles un citi iestatījumi, tiks neatgriezeniski saistīti ar lietotāju <ph name="USER_NAME" />. Varēsiet dzēst šos datus, izmantojot Google kontu informācijas paneli, taču nevarēsiet šos datus saistīt ar citu kontu. Ja vēlaties, varat izveidot jaunu profilu, lai atsevišķi glabātu Chromium datus. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Ja izslēgsiet šo iestatījumu, varēsiet pierakstīties Google vietnēs, piemēram, pakalpojumā Gmail, nepierakstoties pārlūkā Chromium.</translation>
 <translation id="1929939181775079593">Chromium nereaģē. Vai restartēt to tūlīt?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Lai lietotu šo atjauninājumu, administrators lūdz restartēt pārlūku Chromium.</translation>
 <translation id="2119636228670142020">Par &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Ja jūsu datoru izmanto arī jūsu draugi un ģimenes locekļi, viņi var iestatīt pārlūku Chromium atbilstoši savām vēlmēm un pārlūkot saturu atsevišķos kontos.</translation>
-<translation id="2265088490657775772">Iegūt Chromium savā iPhone tālrunī</translation>
 <translation id="2347108572062610441">Šis paplašinājums mainīja iestatījumu, kura lapa tiek parādīta, palaižot pārlūku Chromium.</translation>
 <translation id="2396765026452590966">Paplašinājums “<ph name="EXTENSION_NAME" />” mainīja iestatījumu, kura lapa tiek parādīta, palaižot pārlūku Chromium.</translation>
 <translation id="2483889755041906834">Pārlūkā Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Lai varētu atjaunināt pārlūku Chromium, pārlūkam šajā datorā jāpārtrauc darboties. Citi lietotāji, kas ir pieteikušies šajā datorā, var zaudēt nesaglabātās izmaiņas.</translation>
 <translation id="2847479871509788944">Noņemšana no pārlūka Chromium...</translation>
 <translation id="2886012850691518054">Izvēles: palīdziet uzlabot Chromium, automātiski nosūtot lietojuma statistiku un avārijas pārskatus uzņēmumam Google.</translation>
-<translation id="2898082584336937987">Instalējiet pārlūku Chromium savā tālrunī. Mēs nosūtīsim īsziņu uz jūsu tālruņa numuru: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="2910007522516064972">Par &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium ir atjaunināts</translation>
 <translation id="3032787606318309379">Notiek pievienošana pārlūkam Chromium...</translation>
-<translation id="3046695367536568084">Lai izmantotu lietotnes, jums ir jāpierakstās operētājsistēmā Chromium. Tādējādi operētājsistēmā Chromium varēs sinhronizēt jūsu lietotnes, grāmatzīmes, vēsturi, paroles un citus iestatījumus visās ierīcēs.</translation>
 <translation id="3068515742935458733">Palīdzēt uzlabot Chromium, nosūtot Google serveriem avāriju pārskatus un <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Instalēšanas programmai neizdevās atarhivēt arhīvu. Lejupielādējiet Chromium vēlreiz.</translation>
 <translation id="3130323860337406239">Pārlūkā Chromium tiek izmantots jūsu mikrofons.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Atvērt saiti inko&amp;gnito režīma logā</translation>
 <translation id="3190315855212034486">Eh! Chromium ir avarējis. Vai restartēt to tūlīt?</translation>
 <translation id="3229526316128325841">Pārlūkā Chromium tiek mēģināts eksportēt jūsu paroles.</translation>
-<translation id="3256316712990552818">Nokopēta pārlūkā Chromium</translation>
 <translation id="3258596308407688501">Chromium nevar nolasīt savu datu direktoriju un ierakstīt tajā:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Jaunākajā versijā ir pieejami svarīgi drošības uzlabojumi un jaunas funkcijas.</translation>
 <translation id="421369550622382712">Atklājiet lieliskas lietotnes, spēles, paplašinājumus un motīvus, ko varat izmantot pārlūkā Chromium.</translation>
 <translation id="4216212958613226427">Šī valoda tiek izmantota, lai attēlotu Chromium lietotāja saskarni</translation>
-<translation id="4222580632002216401">Jūs esat pierakstījies operētājsistēmā Chromium. Jūsu administrators ir atspējojis sinhronizēšanu.</translation>
 <translation id="4230135487732243613">Vai saistīt Chromium datus ar šo kontu?</translation>
 <translation id="4271805377592243930">Saņemt palīdzību par Chromium</translation>
 <translation id="4285930937574705105">Instalācija neizdevās nenoteiktas kļūdas dēļ. Ja Chromium šobrīd darbojas, aizveriet to un mēģiniet vēlreiz.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium darbojas fona režīmā.</translation>
 <translation id="4987820182225656817">Viesi var izmantot Chromium, neatstājot nekādas pēdas.</translation>
 <translation id="4994636714258228724">Pievienot savu kontu pārlūkā Chromium</translation>
-<translation id="5181952534059945058">Šī lapa izmanto pārāk daudz atmiņas, tādēļ Chromium noņēma daļu satura.</translation>
 <translation id="5277894862589591112">Lai ieviestu veiktās izmaiņas, atkārtoti palaidiet pārlūku Chromium.</translation>
 <translation id="5358375970380395591">Jūs pierakstāties ar pārvaldītu kontu, kura administrators var kontrolēt jūsu profilu. Jūsu Chromium dati, piemēram, lietotnes, grāmatzīmes, vēsture, paroles un citi iestatījumi, tiks neatgriezeniski saistīti ar lietotāju <ph name="USER_NAME" />. Varēsiet dzēst šos datus, izmantojot Google kontu informācijas paneli, taču nevarēsiet šos datus saistīt ar citu kontu. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Notiek Chromium atjaunināšana (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Restartēt</translation>
 <translation id="5987687638152509985">Lai sāktu sinhronizēšanu, atjauniniet Chromium.</translation>
 <translation id="6013050204643758987">Chromium OS darbību nodrošina papildu <ph name="BEGIN_LINK_CROS_OSS" />atklātā pirmkoda programmatūra<ph name="END_LINK_CROS_OSS" />, tāpat kā <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" /> darbību.</translation>
-<translation id="6040143037577758943">Aizvērt</translation>
 <translation id="6055895534982063517">Ir pieejama jauna Chromium versija, un tā ir ātrāka nekā jebkad agrāk.</translation>
 <translation id="6063093106622310249">&amp;Atvērt pārlūkā Chromium</translation>
 <translation id="6072279588547424923">Paplašinājums <ph name="EXTENSION_NAME" /> ir pievienots pārlūkam Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium OS sistēma</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Pārlūks Chromium tiks restartēts pēc 1 sekundes.}zero{Pārlūks Chromium tiks restartēts pēc # sekundēm.}one{Pārlūks Chromium tiks restartēts pēc # sekundes.}other{Pārlūks Chromium tiks restartēts pēc # sekundēm.}}</translation>
 <translation id="6475912303565314141">Tas nosaka arī to, kāda lapa tiks rādīta, kad atvērsiet pārlūku Chromium.</translation>
-<translation id="6485906693002546646">Chromium satura sinhronizēšanai jūs izmantojat kontu <ph name="PROFILE_EMAIL" />. Lai atjauninātu savas sinhronizācijas preferences vai izmantotu Chromium bez Google konta, dodieties uz: <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Atinstalēt Chromium</translation>
 <translation id="6570579332384693436">Lai izlabotu pareizrakstības kļūdas, Chromium nosūta teksta laukos ievadīto tekstu Google serveriem.</translation>
 <translation id="6598877126913850652">Pāriet uz Chromium paziņojumu iestatījumiem</translation>
@@ -162,7 +148,6 @@
 Dažas funkcijas var nebūt pieejamas. Norādiet citu profila direktoriju vai izmantojiet jaunāku Chromium versiju.</translation>
 <translation id="6734080038664603509">Atjaunināt &amp;Chromium</translation>
 <translation id="6734291798041940871">Pārlūks Chromium jau ir instalēts visiem lietotājiem jūsu datorā.</translation>
-<translation id="6810143991807788455">Palīdziet uzlabot pārlūku Chromium, ziņojot par pašreizējiem iestatījumiem.</translation>
 <translation id="6847869444787758381">Ja jūsu paroles kādreiz tiks apdraudētas, pārlūkā Chromium saņemsiet paziņojumu</translation>
 <translation id="6857782730669500492">Chromium — <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (kopēts pārlūkā Chromium)</translation>
@@ -179,7 +164,6 @@
 <translation id="731644333568559921">Atjaunināt &amp;Chromium OS</translation>
 <translation id="731795002583552498">Notiek Chromium atjaunināšana</translation>
 <translation id="7318036098707714271">Jūsu preferenču fails ir bojāts vai nederīgs. Chromium nespēj atkopt jūsu iestatījumus.</translation>
-<translation id="7331920710658926971">Instalējiet pārlūku Chromium savā tālrunī. Mēs nosūtīsim īsziņu uz jūsu tālruņa numuru.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Jauns logs</translation>
 <translation id="734373864078049451">Šeit atrodas jūsu tīmekļa saturs, grāmatzīmes un cits Chromium saturs.</translation>
@@ -211,16 +195,13 @@
 <translation id="7979877361127045932">Paslēpt Chromium izvēlnē</translation>
 <translation id="8013436988911883588">Tiklīdz pārlūkam Chromium tiks sniegta piekļuve, vietnes varēs lūgt jums piekļuvi.</translation>
 <translation id="81770708095080097">Šis fails ir bīstams, tāpēc Chromium to bloķēja.</translation>
-<translation id="8222496066431494154">Instalējiet pārlūku Chromium savā tālrunī. Mēs nosūtīsim īsziņu uz jūsu konta atkopšanas tālruņa numuru: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8248265253516264921">Ja attēlam nav vērtīga apraksta, pārlūks Chromium mēģinās jums tādu nodrošināt. Lai izveidotu aprakstus, attēli tiek nosūtīti uzņēmumam Google. Jebkurā brīdī iestatījumos varat izslēgt šo iespēju.</translation>
-<translation id="8269379391216269538">Palīdziet uzlabot Chromium</translation>
 <translation id="8290862415967981663">Šis fails var būt bīstams, tāpēc Chromium to bloķēja.</translation>
 <translation id="8330519371938183845">Pierakstieties, lai sinhronizētu un personalizētu pārlūku Chromium visās savās ierīcēs.</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> iepriekš izmantoja Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Restartējiet pārlūku Chromium vienas dienas laikā}zero{Restartējiet pārlūku Chromium # dienu laikā}one{Restartējiet pārlūku Chromium # dienas laikā}other{Restartējiet pārlūku Chromium # dienu laikā}}</translation>
 <translation id="8453117565092476964">Instalēšanas programmas arhīvs ir bojāts vai nav derīgs. Lejupielādējiet Chromium vēlreiz.</translation>
 <translation id="8493179195440786826">Chromium versija ir novecojusi</translation>
-<translation id="85843667276690461">Saņemt palīdzību par Chromium izmantošanu</translation>
 <translation id="8586442755830160949">Autortiesības <ph name="YEAR" /> Chromium autori. Visas tiesības paturētas.</translation>
 <translation id="8619360774459241877">Notiek Chromium palaišana...</translation>
 <translation id="8621669128220841554">Instalēšana neizdevās nenoteiktas kļūdas dēļ. Lejupielādējiet pārlūku Chromium vēlreiz.</translation>
@@ -238,21 +219,14 @@
 <translation id="8907580949721785412">Chromium mēģina rādīt paroles. Lai to atļautu, ierakstiet savu Windows paroli.</translation>
 <translation id="8941642502866065432">Nevar atjaunināt Chromium</translation>
 <translation id="8974095189086268230">Chrome OS ir kļuvusi iespējama, pateicoties papildu <ph name="BEGIN_LINK_CROS_OSS" />atklātā pirmkoda programmatūrai<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Kāds iepriekš pierakstījās operētājsistēmā Chromium šajā datorā, izmantojot e-pasta adresi <ph name="ACCOUNT_EMAIL_LAST" />. Ja tas nav jūsu konts, izveidojiet jaunu Chromium lietotāju, lai jūsu informācija tiktu glabāta atsevišķi.
-
-Ja pierakstīsieties tik un tā, Chromium informācija, piemēram, grāmatzīmes, vēsture un citi iestatījumi, tiks apvienota ar konta <ph name="ACCOUNT_EMAIL_NEW" /> informāciju.</translation>
 <translation id="9019929317751753759">Lai uzlabotu Chromium drošību, mēs atspējojām tālāk norādīto paplašinājumu, kas nav norādīts vietnē <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> un, iespējams, tika pievienots, jums nezinot.</translation>
 <translation id="9022552996538154597">Pierakstieties pārlūkā Chromium</translation>
-<translation id="9025992965467895364">Šī lapa izmanto pārāk daudz atmiņas, tādēļ Chromium to apturēja.</translation>
-<translation id="9036189287518468038">Chromium lietotņu palaišanas programma</translation>
 <translation id="9089354809943900324">Chromium versija ir novecojusi.</translation>
 <translation id="9093206154853821181">{0,plural, =1{Pārlūks Chromium pēc stundas tiks restartēts}zero{Pārlūks Chromium pēc # stundām tiks restartēts}one{Pārlūks Chromium pēc # stundas tiks restartēts}other{Pārlūks Chromium pēc # stundām tiks restartēts}}</translation>
 <translation id="91086099826398415">Atvērt saiti jaunā Chromium &amp;cilnē</translation>
 <translation id="911206726377975832">Vai dzēst arī pārlūkošanas datus?</translation>
 <translation id="9158494823179993217">Sistēmas administrators ir konfigurējis Chromium, lai vietne <ph name="TARGET_URL_HOSTNAME" /> tiktu atvērta papildu pārlūkā.</translation>
-<translation id="918373042641772655">Atvienojot lietotāju <ph name="USERNAME" />, tiks notīrīta vēsture, grāmatzīmes, iestatījumi un citi Chromium dati, kas ir saglabāti šajā ierīcē. Jūsu Google kontā saglabātie dati netiks notīrīti, un tos var pārvaldīt <ph name="GOOGLE_DASHBOARD_LINK" />Google informācijas panelī<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS ienākošie savienojumi)</translation>
-<translation id="9197815481970649201">Jūs esat pierakstījies pārlūkā Chromium</translation>
 <translation id="93478295209880648">Iespējams, Chromium nedarbosies pareizi, jo tas vairs netiek atbalstīts operētājsistēmās Windows XP un Windows Vista.</translation>
 <translation id="95514773681268843">Pirms šīs ierīces lietošanas jums ir jāizlasa un jāapstiprina tālāk sniegtie domēna <ph name="DOMAIN" /> pakalpojumu sniegšanas noteikumi. Šie noteikumi nepaplašina, nepārveido vai neierobežo operētājsistēmas Chromium OS noteikumus.</translation>
 <translation id="985602178874221306">Chromium autori</translation>
diff --git a/chrome/app/resources/chromium_strings_ml.xtb b/chrome/app/resources/chromium_strings_ml.xtb
index 50861a5..3198049 100644
--- a/chrome/app/resources/chromium_strings_ml.xtb
+++ b/chrome/app/resources/chromium_strings_ml.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">നിങ്ങളുടെ പാസ്‌വേഡുകൾ എക്‌സ്‌പോർട്ട് ചെയ്യാൻ Chromium ആഗ്രഹിക്കുന്നു. ഇത് അനുവദിക്കാൻ നിങ്ങളുടെ Windows പാസ്‌വേഡ് നൽകുക.</translation>
 <translation id="1115445892567829615">Chromium-ന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല. നിങ്ങളുടെ സമന്വയ പാസ്‌ഫ്രെയ്‌സ് അപ്‌ഡേറ്റ് ചെയ്യുക.</translation>
 <translation id="113122355610423240">Chromium നിങ്ങളുടെ ഡിഫോൾട്ട് ബ്രൗസറാണ്</translation>
-<translation id="1170115874949214249">നിങ്ങളുടെ ഫോണിൽ Chromium ഇൻസ്‌റ്റാൾ ചെയ്യുക. അക്കൗണ്ട് വീണ്ടെടുക്കൽ ഫോൺ നമ്പറിലേക്ക് ഞങ്ങളൊരു SMS അയയ്‌ക്കും.</translation>
-<translation id="1174473354587728743">ഒരു കമ്പ്യൂട്ടർ പങ്കിടണോ? ഇപ്പോൾ നിങ്ങൾക്ക് ഇഷ്‌ടപ്പെട്ട രീതിയിൽ Chromium സജ്ജീകരിക്കാനാകും.</translation>
 <translation id="1185134272377778587">Chromium-ത്തിനെക്കുറിച്ച്</translation>
-<translation id="1298199220304005244">Chromium OS ഉപയോഗിക്കുന്നതിനുള്ള സഹായം നേടുക</translation>
 <translation id="1396446129537741364">Chromium പാസ്‌വേഡുകൾ ദൃശ്യമാക്കാൻ ശ്രമിക്കുന്നു.</translation>
 <translation id="1414495520565016063">നിങ്ങൾ Chromium-ൽ സൈൻ ഇൻ ചെയ്‌തു!</translation>
 <translation id="151962892725702025">നിങ്ങളുടെ ഡൊമെയ്‌നിന് സമന്വയം ലഭ്യമല്ലാത്തതിനാൽ Chromium OS-ന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല.</translation>
 <translation id="1524282610922162960">ഒരു Chromium ടാബ് പങ്കിടുക</translation>
-<translation id="1668054258064581266">Chromium-ൽ നിന്ന് നിങ്ങളുടെ അക്കൗണ്ട് നീക്കം ചെയ്‌തുകഴിഞ്ഞാൽ, അത് പ്രാബല്യത്തിൽ വരുന്നതിന് ഓപ്പൺ ടാബുകൾ വീണ്ടും ലോഡ് ചെയ്യേണ്ടതായി വരാം.</translation>
-<translation id="1688750314291223739">നിങ്ങളുടെ വ്യക്തിപരമാക്കിയ ബ്രൗസർ സവിശേഷതകൾ വെബിലേക്ക് സംരക്ഷിച്ച് അവയെ ഏത് കമ്പ്യൂട്ടറിലെയും Chromium-ൽ നിന്ന് ആക്‌സസ് ചെയ്യുന്നതിന് സമന്വയം സജ്ജമാക്കുക.</translation>
 <translation id="1708666629004767631">പുതിയതും സുരക്ഷിതവുമായ Chromium പതിപ്പ് ലഭ്യമാണ്.</translation>
 <translation id="1766096484055239003">അപ്‌ഡേറ്റ് പ്രയോഗിക്കുന്നതിന് Chromium വീണ്ടും സമാരംഭിക്കാൻ നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ ആവശ്യപ്പെടുന്നു</translation>
 <translation id="1774152462503052664">Chromium-ത്തെ പശ്ചാത്തലത്തിൽ പ്രവർത്തിക്കാൻ അനുവദിക്കുക</translation>
 <translation id="1779356040007214683">Chromium സുരക്ഷിതമാക്കുന്നതിന്, <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> എന്നതിൽ ലിസ്റ്റുചെയ്യാത്ത ചില വിപുലീകരണങ്ങൾ ഞങ്ങൾ പ്രവർത്തനരഹിതമാക്കി, അവ നിങ്ങളുടെ അറിവില്ലാതെ ചേർത്തിരിക്കാനിടയുണ്ട്.</translation>
 <translation id="1808667845054772817">Chromium വീണ്ടും ഇൻസ്‌റ്റാളുചെയ്യുക</translation>
-<translation id="1869480248812203386">സുരക്ഷയെ ബാധിക്കാൻ സാധ്യതയുള്ള കാര്യങ്ങളുടെ വിശദാംശങ്ങൾ Google-ലേക്ക് സ്വയമേവ റിപ്പോർട്ട് ചെയ്‌തുകൊണ്ട് നിങ്ങൾക്ക് Chrome-നെ സുരക്ഷിതവും എളുപ്പവുമാക്കാൻ സഹായിക്കാനാകും.</translation>
 <translation id="1881322772814446296">നിങ്ങൾ ഒരു നിയന്ത്രിത അക്കൗണ്ട് ഉപയോഗിച്ച് സൈൻ ഇൻ ചെയ്‌ത് അതിന്റെ അഡ്‌മിനിസ്‌ട്രേറ്റർക്ക് നിങ്ങളുടെ Chromium പ്രൊഫൈലിന്റെ നിയന്ത്രണം നൽകുന്നു. നിങ്ങളുടെ അപ്ലിക്കേഷനുകൾ, ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, പാസ്‌വേഡുകൾ, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ പോലെയുള്ള Chromium ഡാറ്റ <ph name="USER_NAME" /> എന്നതുമായി ശാശ്വതമായി ബന്ധിപ്പിച്ചതായിത്തീരും. Google അക്കൗണ്ട്സ് ഡാഷ്‌ബോർഡ് വഴി നിങ്ങൾക്ക് ഈ ഡാറ്റ ഇല്ലാതാക്കാനാകുമെങ്കിലും, ഈ ഡാറ്റ മറ്റൊരു അക്കൗണ്ടുമായി ബന്ധപ്പെടുത്താനാകില്ല. നിങ്ങളുടെ നിലവിലെ Chrome ഡാറ്റ പ്രത്യേകമായി സൂക്ഷിക്കുന്നതിന് നിങ്ങൾക്ക് ഒരു പുതിയ പ്രൊഫൈൽ ഓപ്‌ഷണലായി സൃഷ്‌ടിക്കാനാകും. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">ഇത് ഓഫാക്കുന്നതിലൂടെ, Chromium-ലേക്ക് സൈൻ ഇൻ ചെയ്യാതെ തന്നെ Gmail പോലുള്ള Google സൈറ്റുകളിൽ നിങ്ങൾക്ക് സൈൻ ഇൻ ചെയ്യാനാവും</translation>
 <translation id="1929939181775079593">Chromium പ്രതികരിക്കുന്നില്ല. ഇപ്പോൾ വീണ്ടും സമാരംഭിക്കണോ?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">ഈ അപ്‌ഡേറ്റ് പ്രയോഗിക്കുന്നതിന് Chromium വീണ്ടും സമാരംഭിക്കാൻ നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ ആവശ്യപ്പെടുന്നു</translation>
 <translation id="2119636228670142020">&amp;Chromium OS-നെക്കുറിച്ച്</translation>
 <translation id="2241627712206172106">നിങ്ങളൊരു കമ്പ്യൂട്ടർ പങ്കിടുകയാണെങ്കിൽ, സുഹൃത്തുക്കൾക്കും കുടുബാംഗങ്ങൾക്കും വെവ്വേറെ ബ്രൗസ് ചെയ്യാനും അവർക്ക് ആവശ്യമുള്ള രീതിയിൽ Chromium സജ്ജീകരിക്കാനുമാകും.</translation>
-<translation id="2265088490657775772">നിങ്ങളുടെ iPhone-ൽ Chromium സ്വന്തമാക്കൂ</translation>
 <translation id="2347108572062610441">നിങ്ങൾ Chromium ആരംഭിക്കുമ്പോൾ ദൃശ്യമാകുന്ന പേജിനെ ഈ വിപുലീകരണം മാറ്റി.</translation>
 <translation id="2396765026452590966">നിങ്ങൾ Chromium ആരംഭിക്കുമ്പോൾ ദൃശ്യമാകുന്ന പേജിനെ "<ph name="EXTENSION_NAME" />" വിപുലീകരണം മാറ്റി.</translation>
 <translation id="2483889755041906834">Chromium-ത്തിൽ</translation>
@@ -50,19 +43,16 @@
 <translation id="2838154144102149890">അപ്ഡേറ്റ് ചെയ്യാൻ, ഈ കമ്പ്യൂട്ടറിൽ Chromium റൺ ചെയ്യുന്നത് നിർത്തേണ്ടതുണ്ട്. ഈ കമ്പ്യൂട്ടറിൽ ലോഗിൻ ചെയ്‌തിരിക്കുന്ന മറ്റ് ഉപയോക്താക്കളുടെ സംരക്ഷിക്കാത്ത മാറ്റങ്ങൾ നഷ്‌ടപ്പെടാൻ ഇത് കാരണമായേക്കാം.</translation>
 <translation id="2847479871509788944">Chromium-ൽ നിന്ന് നീക്കംചെയ്യുക...</translation>
 <translation id="2886012850691518054">ഓപ്‌ഷണൽ: ഉപയോഗ സ്ഥിതിവിവരക്കണക്കുകളും ക്രാഷ് റിപ്പോർട്ടുകളും Google-ലേക്ക് സ്വയമേവ അയയ്‌ക്കുന്നതിലൂടെ Chromium-ത്തിനെ മികച്ചതാക്കി മാറ്റാൻ സഹായിക്കുക.</translation>
-<translation id="2898082584336937987">നിങ്ങളുടെ ഫോണിൽ Chromium ഇൻസ്‌റ്റാൾ ചെയ്യുക. ഫോണിലേക്ക് ഞങ്ങളൊരു SMS അയയ്‌ക്കും: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium-നെക്കുറിച്ച്</translation>
 <translation id="2977470724722393594">Chromium അപ്‌‌ടുഡേറ്റാണ്</translation>
 <translation id="3032787606318309379">Chromium-ലേക്ക് ചേർക്കുന്നു...</translation>
-<translation id="3046695367536568084">ആപ്പുകൾ ഉപയോഗിക്കാൻ നിങ്ങൾ Chromium-ത്തിൽ സൈൻ ഇൻ ചെയ്‌തിരിക്കേണ്ടതുണ്ട്. ഇത് നിങ്ങളുടെ ഉപകരണങ്ങളിലുടനീളമുള്ള ആപ്പുകൾ, ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, പാസ്‌വേഡുകൾ, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ സമന്വയിപ്പിക്കാൻ Chromium-ത്തിനെ അനുവദിക്കുന്നു.</translation>
 <translation id="3068515742935458733">Google-ലേക്ക് ക്രാഷ് റിപ്പോർട്ടുകളും <ph name="UMA_LINK" /> എന്നതും അയയ്‌ക്കുന്നതിലൂടെ Chromium മികച്ചതാക്കാൻ സഹായിക്കുക</translation>
-<translation id="3103660991484857065">ആര്‍ക്കൈവ് അണ്‍‌കം‌പ്രസ് ചെയ്യാന്‍ ഇന്‍സ്റ്റാളറിന് കഴിഞ്ഞില്ല. Chromium വീണ്ടും ഡൗൺലോഡ് ചെയ്യുക.</translation>
+<translation id="3103660991484857065">ആര്‍ക്കൈവ് ചുരുക്കാൻ ഇന്‍സ്റ്റാളറിന് കഴിഞ്ഞില്ല. Chromium വീണ്ടും ഡൗൺലോഡ് ചെയ്യുക.</translation>
 <translation id="3130323860337406239">Chromium നിങ്ങളുടെ മൈക്രോഫോൺ ഉപയോഗിക്കുന്നു.</translation>
 <translation id="3155163173539279776">Chromium വീണ്ടും സമാരംഭിക്കുക</translation>
 <translation id="3179665906251668410">Chromium അദൃശ്യ വിൻഡോയിൽ ലിങ്ക് തുറക്കുക</translation>
 <translation id="3190315855212034486">ഹോ! Chromium ക്രാഷായി. ഇപ്പോൾ വീണ്ടും സമാരംഭിക്കണോ?</translation>
 <translation id="3229526316128325841">നിങ്ങളുടെ പാസ്‌വേഡുകൾ എക്‌സ്‌പോർട്ട് ചെയ്യാൻ Chromium ആഗ്രഹിക്കുന്നു.</translation>
-<translation id="3256316712990552818">Chromium-ലേക്ക് പകർത്തി</translation>
 <translation id="3258596308407688501">Chromium-ത്തിന് ഡാറ്റാ ഡയറക്‌റ്ററി വായിക്കാനോ അതിൽ എഴുതാനോ കഴിയില്ല:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">ഏറ്റവും പുതിയ പതിപ്പിൽ പ്രധാനപ്പെട്ട സുരക്ഷാ മെച്ചപ്പെടുത്തലുകളും പുതിയ ഫീച്ചറുകളും ലഭ്യമാണ്.</translation>
 <translation id="421369550622382712">Chromium-നായി മികച്ച അപ്ലിക്കേഷനുകളും വിപുലീകരണങ്ങളും തീമുകളും കണ്ടെത്തുക.</translation>
 <translation id="4216212958613226427">Chromium UI പ്രദര്‍ശിപ്പിക്കാൻ ഈ ഭാഷ ഉപയോഗിക്കുന്നു</translation>
-<translation id="4222580632002216401">നിങ്ങൾ ഇപ്പോൾ Chromium-ലേക്ക് സൈൻ ഇൻ ചെയ്‌തു! നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ സമന്വയം പ്രവർത്തനരഹിതമാക്കി.</translation>
 <translation id="4230135487732243613">നിങ്ങളുടെ Chromium ഡാറ്റ ഈ അക്കൗണ്ടുമായി ലിങ്ക് ചെയ്യണോ?</translation>
 <translation id="4271805377592243930">Chromium ഉപയോഗിക്കുന്നതിനുള്ള സഹായം തേടുക</translation>
 <translation id="4285930937574705105">അവ്യക്തമായ പിശകിനാൽ ഇൻസ്റ്റാൾ ചെയ്യൽ പരാജയപ്പെട്ടു. Chromium നിലവിൽ പ്രവർത്തിക്കുന്നുണ്ടെങ്കിൽ, അത് അടച്ചതിനുശേഷം വീണ്ടും ശ്രമിക്കുക.</translation>
@@ -108,7 +97,6 @@
 <translation id="4943838377383847465">Chromium പശ്ചാത്തല മോഡിലാണ്.</translation>
 <translation id="4987820182225656817">അതിഥികൾക്ക് ഒന്നും ശേഷിപ്പിക്കാതെ തന്നെ Chromium ഉപയോഗിക്കാനാകും.</translation>
 <translation id="4994636714258228724">Chromium-ലേക്ക് സ്വയം ചേരുക</translation>
-<translation id="5181952534059945058">ഈ പേജ് കൂടുതൽ മെമ്മറി ഉപയോഗിക്കുന്നതിനാൽ, Chromium കുറച്ച് ഉള്ളടക്കം നീക്കം ചെയ്‌തു.</translation>
 <translation id="5277894862589591112">നിങ്ങളുടെ മാറ്റങ്ങൾ ബാധകമാക്കാൻ Chromium സമാരംഭിക്കുക</translation>
 <translation id="5358375970380395591">നിങ്ങൾ ഒരു നിയന്ത്രിത അക്കൗണ്ട് ഉപയോഗിച്ച് സൈൻ ഇൻ ചെയ്‌ത് അതിന്റെ അഡ്‌മിനിസ്‌ട്രേറ്റർക്ക് നിങ്ങളുടെ Chromium പ്രൊഫൈലിന്റെ നിയന്ത്രണം നൽകുന്നു. നിങ്ങളുടെ അപ്ലിക്കേഷനുകൾ, ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, പാസ്‌വേഡുകൾ, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ പോലെയുള്ള Chromium ഡാറ്റ <ph name="USER_NAME" /> എന്നതുമായി ശാശ്വതമായി ബന്ധിപ്പിച്ചതായിത്തീരും. Google അക്കൗണ്ട്സ് ഡാഷ്‌ബോർഡ് വഴി നിങ്ങൾക്ക് ഈ ഡാറ്റ ഇല്ലാതാക്കാനാകുമെങ്കിലും, ഈ ഡാറ്റ മറ്റൊരു അക്കൗണ്ടുമായി ബന്ധപ്പെടുത്താനാകില്ല. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium അപ്‌ഡേറ്റുചെയ്യുന്നു, (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -131,7 +119,6 @@
 <translation id="5895138241574237353">പുനരാരംഭിക്കുക</translation>
 <translation id="5987687638152509985">സമന്വയിപ്പിക്കാൻ തുടങ്ങുന്നതിന് Chromium അപ്‌ഡേറ്റ് ചെയ്യുക</translation>
 <translation id="6013050204643758987"><ph name="BEGIN_LINK_LINUX_OSS" />Linux (ബീറ്റ)<ph name="END_LINK_LINUX_OSS" /> പോലെയുള്ള അധിക <ph name="BEGIN_LINK_CROS_OSS" />ഓപ്പൺ സോഴ്‌സ് സോഫ്‌റ്റ്‌വെയർ<ph name="END_LINK_CROS_OSS" /> ഉപയോഗിച്ചാണ് Chromium OS സാധ്യമാക്കിയത്.</translation>
-<translation id="6040143037577758943">അടയ്ക്കുക</translation>
 <translation id="6055895534982063517">Chromium-ത്തിന്റെ പുതിയ പതിപ്പ് ലഭ്യമാണ്, അത് എന്നത്തേതിലും വേഗതയേറിയതാണ്.</translation>
 <translation id="6063093106622310249">&amp;Chromium-ത്തിൽ തുറക്കുക</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> Chromium-ത്തിലേക്ക് ചേർത്തു</translation>
@@ -153,17 +140,15 @@
 <translation id="6434250628340475518">Chromium OS സിസ്‌റ്റം</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium ഒരു സെക്കൻഡിൽ പുനഃരാരംഭിക്കും}other{Chromium # സെക്കൻഡിൽ പുനഃരാരംഭിക്കും}}</translation>
 <translation id="6475912303565314141">നിങ്ങൾ Chromium ആരംഭിക്കുമ്പോൾ ദൃശ്യമാകുന്ന പേജും അത് നിയന്ത്രിയ്ക്കും.</translation>
-<translation id="6485906693002546646">Chromium ഫയൽ സമന്വയിപ്പിക്കാൻ നിങ്ങൾ <ph name="PROFILE_EMAIL" /> ഉപയോഗിക്കുന്നു. നിങ്ങളുടെ സമന്വയ മുൻഗണനകൾ അപ്‌ഡേറ്റ് ചെയ്യാനോ ഒരു Google അക്കൗണ്ട് ഇല്ലാതെ Chromium ഉപയോഗിക്കാനോ, <ph name="SETTINGS_LINK" /> സന്ദർശിക്കുക.</translation>
 <translation id="6510925080656968729">Chromium അൺഇൻസ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="6570579332384693436">അക്ഷരപ്പിശകുകൾ പരിഹരിക്കാൻ, ടെക്‌സ്‌റ്റ് ഫീൽഡുകളിൽ നിങ്ങൾ ടൈപ്പ് ചെയ്യുന്ന ടെക്‌സ്‌റ്റ് Chromium, Google-ന് അയയ്ക്കുന്നു</translation>
 <translation id="6598877126913850652">Chromium അറിയിപ്പ് ക്രമീകരണത്തിലേക്ക് പോവുക</translation>
-<translation id="6676384891291319759">ഇന്‍റര്‍‌നെറ്റ് ആക്‌സസ് ചെയ്യുക</translation>
+<translation id="6676384891291319759">ഇന്റര്‍‌നെറ്റ് ആക്‌സസ് ചെയ്യുക</translation>
 <translation id="6717134281241384636">Chromium-ന്റെ ഏറ്റവും പുതിയ ഒരു പതിപ്പിൽ നിന്നുള്ളതായതിനാൽ നിങ്ങളുടെ പ്രൊഫൈൽ ഉപയോഗിക്കാൻ കഴിയില്ല.
 
 ചില സവിശേഷതകൾ ലഭ്യമായേക്കില്ല. മറ്റൊരു പ്രൊഫൈൽ ഡയറക്‌ടറി വ്യക്തമാക്കുകയോ Chromium-ന്റെ ഏറ്റവും പുതിയ പതിപ്പ് ഉപയോഗിക്കുകയോ ചെയ്യുക.</translation>
 <translation id="6734080038664603509">&amp;Chromium അപ്‌ഡേറ്റ് ചെയ്യുക</translation>
 <translation id="6734291798041940871">നിങ്ങളുടെ കമ്പ്യൂട്ടറിലെ എല്ലാ ഉപയോക്താക്കൾക്കുമായി നിലവിൽ Chromium ഇൻസ്റ്റാൾ ചെയ്‌തിട്ടുണ്ട്.</translation>
-<translation id="6810143991807788455">നിലവിലെ ക്രമീകരണങ്ങൾ റിപ്പോർട്ട് ചെയ്യുന്നതിലൂടെ Chromium മികച്ചതാക്കാൻ സഹായിക്കുക</translation>
 <translation id="6847869444787758381">നിങ്ങളുടെ പാസ്‌വേഡുകൾ എപ്പോഴെങ്കിലും അപഹരിക്കപ്പെട്ടിട്ടുണ്ടെങ്കിൽ അക്കാര്യം Chromium നിങ്ങളെ അറിയിക്കും</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (Chromium-ത്തിലേക്ക് പകർത്തി)</translation>
@@ -182,7 +167,6 @@
 <translation id="7318036098707714271">നിങ്ങളുടെ മുൻഗണനകൾ ഫയൽ കേടായതാണ് അല്ലെങ്കിൽ അസാധുവാണ്.
 
 നിങ്ങളുടെ ക്രമീകരണങ്ങൾ വീണ്ടെടുക്കാൻ Chromium-ന് കഴിയില്ല.</translation>
-<translation id="7331920710658926971">നിങ്ങളുടെ ഫോണിൽ Chromium ഇൻസ്‌റ്റാൾ ചെയ്യുക. ഫോണിലേക്ക് ഞങ്ങളൊരു SMS അയയ്‌ക്കും.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">പുതിയ വിന്‍ഡോ</translation>
 <translation id="734373864078049451">നിങ്ങളുടെ വെബ്, ബുക്ക്മാർക്കുകൾ,മറ്റ് Chromium ഫയൽ എന്നിവ ഇവിടെ തത്സമയമാണ്.</translation>
@@ -190,7 +174,7 @@
 <translation id="7448255348454382571">Chromium OS പുനഃരാരംഭിക്കുക</translation>
 <translation id="7449453770951226939"><ph name="PAGE_TITLE" /> - Chromium Dev</translation>
 <translation id="7451052299415159299">ഈ സൈറ്റിനായി, Chromium-ത്തിന് നിങ്ങളുടെ ക്യാമറ ആക്‌സസ് ചെയ്യാനുള്ള അനുമതി ആവശ്യമാണ്</translation>
-<translation id="7483335560992089831">നിലവിൽ പ്രവർത്തിച്ചുക്കൊണ്ടിരിക്കുന്ന Chromium-ത്തിന്റെ സമാന പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയില്ല. Chromium അവസാനിപ്പിച്ചതിന് ശേഷം വീണ്ടും ശ്രമിക്കുക.</translation>
+<translation id="7483335560992089831">നിലവിൽ റണ്‍ ചെയ്യുന്ന Chromium-ന്റെ സമാന പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയില്ല. Chromium അടച്ചതിനുശേഷം വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="751093125041325477">ഭാവിയിലെ Chromium പതിപ്പുകൾ സ്വയമേവ ഇൻസ്‌റ്റാൾ ചെയ്യും. ഈ ഡൗൺലോഡ് പൂർത്തിയാകുമ്പോൾ, Chromium പുനരാരംഭിക്കുകയും തുടർന്ന്, നിങ്ങൾക്ക് മുന്നോട്ട് പോവുകയും ചെയ്യാം.</translation>
 <translation id="753534427205733210">{0,plural, =1{ഒരു മിനിറ്റിൽ Chromium വീണ്ടും സമാരംഭിക്കും}other{# മിനിറ്റിൽ Chromium വീണ്ടും സമാരംഭിക്കും}}</translation>
 <translation id="7549178288319965365">Chromium OS-നെക്കുറിച്ച്</translation>
@@ -203,7 +187,7 @@
 <translation id="7689606757190482937">നിങ്ങളുടെ ഉപകരണങ്ങളിലുടനീളം Chromium സമന്വയിപ്പിച്ച് വ്യക്തിഗതമാക്കുക</translation>
 <translation id="7729447699958282447">നിങ്ങളുടെ ഡൊമെയ്‌നിനായി സമന്വയം ലഭ്യമല്ലാത്തതിനാൽ Chromium-ത്തിന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല.</translation>
 <translation id="7745317241717453663">ഇത് ഈ ഉപകരണത്തിൽ നിന്ന് നിങ്ങളുടെ ബ്രൗസിംഗ് വിവരങ്ങളെ ഇല്ലാതാക്കും. പിന്നീട് വിവരങ്ങൾ വീണ്ടെടുക്കാൻ, <ph name="USER_EMAIL" /> എന്നയാളായി Chromium-ൽ സൈൻ ഇൻ ചെയ്യുക.</translation>
-<translation id="7747138024166251722">ഇൻസ്റ്റാളറിന് താൽക്കാലിക ഡയറക്റ്ററി സൃഷ്‌ടിക്കാനായില്ല. ശൂന്യമായ ഡിസ്‍ക് സ്പെയിസും സോഫ്റ്റ്‌വെയർ ഇൻസ്റ്റാൾ ചെയ്യാനുള്ള അനുമതിയും പരിശോധിക്കുക.</translation>
+<translation id="7747138024166251722">ഇൻസ്റ്റാളറിന് ഒരു താൽക്കാലിക ഡയറക്ടറി സൃഷ്‌ടിക്കാനായില്ല. ശൂന്യമായ ഇടത്തിനായും സോഫ്റ്റ്‌വെയർ ഇൻസ്റ്റാൾ ചെയ്യാനുമുള്ള അനുമതിക്കായും പരിശോധിക്കുക.</translation>
 <translation id="7773960292263897147">മുന്നറിയിപ്പ്: നിങ്ങളുടെ ബ്രൗസിംഗ് ചരിത്രം റെക്കോർഡ് ചെയ്യുന്നതിൽ നിന്ന് വിപുലീകരണങ്ങളെ തടയാൻ Chromium-ന് കഴിയില്ല. ആൾമാറാട്ട മോഡിൽ ഈ വിപുലീകരണം പ്രവർത്തനരഹിതമാക്കാൻ, ഈ ഓപ്‌ഷൻ തിരഞ്ഞെടുത്തത് മാറ്റുക.</translation>
 <translation id="7790626492778995050"><ph name="PAGE_TITLE" /> - Chromium Canary</translation>
 <translation id="7827169012280634081">Chromium-ത്തിൽ നിന്ന് പുറത്തുകടക്കുമ്പോൾ കുക്കികളും സൈറ്റ് ഡാറ്റയും മായ്‌ക്കുക</translation>
@@ -214,16 +198,13 @@
 <translation id="7979877361127045932">Chromium മെനുവിൽ മറയ്‌ക്കുക</translation>
 <translation id="8013436988911883588">Chromium-ത്തിന് ആക്‌സസ് ലഭിച്ചുകഴിഞ്ഞാൽ, വെബ്‌സൈറ്റുകൾക്ക് നിങ്ങളോട് ആക്‌സസ് ചോദിക്കാനാകും.</translation>
 <translation id="81770708095080097">ഈ ഫയൽ അപകടകരമായതിനാൽ Chromium ഇതിനെ ബ്ലോക്കുചെയ്‌തു.</translation>
-<translation id="8222496066431494154">നിങ്ങളുടെ ഫോണിൽ Chromium ഇൻസ്‌റ്റാൾ ചെയ്യുക. അക്കൗണ്ട് വീണ്ടെടുക്കൽ ഫോൺ നമ്പറിലേക്ക് ഞങ്ങളൊരു SMS അയയ്‌ക്കും: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">ചിത്രത്തിൽ ഉപകാരപ്രദമായ വിവരണമില്ലെങ്കിൽ നിങ്ങൾക്കായി ഒരു വിവരണം നൽകാൻ Chromium ശ്രമിക്കും. വിവരണങ്ങൾ സൃഷ്‌ടിക്കാൻ, ചിത്രങ്ങൾ Google-ലേക്ക് അയയ്ക്കുന്നു. ഏതുസമയത്തും ക്രമീകരണത്തിൽ നിങ്ങൾക്കിത് ഓഫാക്കാം.</translation>
-<translation id="8269379391216269538">Chromium മികച്ചതാക്കാൻ സഹായിക്കുക</translation>
 <translation id="8290862415967981663">ഈ ഫയൽ അപകടകരമാകാൻ ഇടയുള്ളതിനാൽ Chromium ഇതിനെ ബ്ലോക്കുചെയ്‌തു.</translation>
 <translation id="8330519371938183845">നിങ്ങളുടെ ഉപകരണങ്ങളിലുടനീളം Chromium സമന്വയിപ്പിച്ച് വ്യക്തിഗതമാക്കാൻ സൈൻ ഇൻ ചെയ്യുക</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> മുമ്പ് Chromium ഉപയോഗിച്ചിട്ടുണ്ട്</translation>
 <translation id="8417404458978023919">{0,plural, =1{ഒരു ദിവസത്തിനുള്ളിൽ Chromium വീണ്ടും സമാരംഭിക്കുക}other{# ദിവസത്തിനുള്ളിൽ Chromium വീണ്ടും സമാരംഭിക്കുക}}</translation>
-<translation id="8453117565092476964">ഇൻസ്റ്റാളർ ആർക്കൈവ് കേടായതാണ് അല്ലെങ്കിൽ അസാധുവാണ്. Chromium വീണ്ടും ഡൗൺലോഡ് ചെയ്യുക.</translation>
+<translation id="8453117565092476964">ഇൻസ്റ്റാളർ ആർക്കൈവ് കേടായി അല്ലെങ്കിൽ അസാധുവാണ്. Chromium വീണ്ടും ഡൗൺലോഡ് ചെയ്യുക.</translation>
 <translation id="8493179195440786826">Chromium കാലഹരണപ്പെട്ടു</translation>
-<translation id="85843667276690461">Chromium ഉപയോഗിക്കുന്നതിനുള്ള സഹായം നേടുക</translation>
 <translation id="8586442755830160949">പകർപ്പവകാശം <ph name="YEAR" /> Chromium രചയിതാക്കൾ. എല്ലാ അവകാശങ്ങളും നിക്ഷിപ്‌തം.</translation>
 <translation id="8619360774459241877">Chromium സമാരംഭിക്കുന്നു...</translation>
 <translation id="8621669128220841554">അവ്യക്തമായ പിശകിനാൽ ഇൻസ്റ്റാൾ ചെയ്യൽ പരാജയപ്പെട്ടു. Chromium വീണ്ടും ഡൗൺലോഡ് ചെയ്യുക.</translation>
@@ -236,26 +217,19 @@
 <translation id="8796602469536043152">ഈ സൈറ്റിനായി, Chromium-ത്തിന് നിങ്ങളുടെ ക്യാമറയും മൈക്രോഫോണും ആക്‌സസ് ചെയ്യാനുള്ള അനുമതി ആവശ്യമാണ്</translation>
 <translation id="8803635938069941624">Chromium OS നിബന്ധനകൾ</translation>
 <translation id="8821041990367117597">നിങ്ങളുടെ അക്കൗണ്ടിന്റെ സൈൻ ഇൻ വിശദാംശങ്ങൾ കാലഹരണപ്പെട്ടതിനാൽ Chromium-ന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല.</translation>
-<translation id="8862326446509486874">സിസ്റ്റം-ലെവല്‍‌ ഇന്‍‌സ്റ്റാള്‍‌ ചെയ്യുന്നതിന് നിങ്ങള്‍‌ക്ക് ഉചിതമായ അവകാശങ്ങളില്ല. അഡ്‌മിനിസ്‌ട്രേറ്ററായി ഇന്‍‌സ്റ്റാളര്‍‌ പ്രവര്‍‌ത്തിപ്പിക്കാന്‍‌ വീണ്ടും ശ്രമിക്കൂ.</translation>
+<translation id="8862326446509486874">സിസ്റ്റം തലത്തിൽ ഇന്‍‌സ്റ്റാള്‍‌ ചെയ്യുന്നതിന് നിങ്ങള്‍‌ക്ക് ഉചിതമായ അവകാശങ്ങളില്ല. അഡ്‌മിനിസ്‌ട്രേറ്ററായി ഇന്‍‌സ്റ്റാളര്‍‌ റണ്‍ ചെയ്യിക്കാൻ വീണ്ടും ശ്രമിക്കൂ.</translation>
 <translation id="8897323336392112261">നിങ്ങൾ Chromium ആരംഭിക്കുമ്പോഴോ ഹോം ബട്ടൺ ക്ലിക്ക് ചെയ്യുമ്പോഴോ ദൃശ്യമാകുന്ന പേജും അത് നിയന്ത്രിയ്ക്കും.</translation>
 <translation id="8907580949721785412">Chromium പാസ്‌വേഡുകൾ ദൃശ്യമാക്കാൻ ശ്രമിക്കുന്നു. ഇത് അനുവദിക്കാൻ നിങ്ങളുടെ Windows പാസ്‌വേഡ് നൽകുക.</translation>
 <translation id="8941642502866065432">Chromium അപ്‌ഡേറ്റ് ചെയ്യാനാകില്ല</translation>
 <translation id="8974095189086268230">Chromium OS നിർമ്മിച്ചത് കൂടുതൽ <ph name="BEGIN_LINK_CROS_OSS" />ഓപ്പൺ സോഴ്‌സ് സോഫ്റ്റ്‌വെയർ<ph name="END_LINK_CROS_OSS" /> ഉപയോഗിച്ചാകാം.</translation>
-<translation id="8985587603644336029">മുമ്പ് മറ്റാരോ Chromium-ലേക്ക് ഈ കമ്പ്യൂട്ടറിൽ നിന്ന് <ph name="ACCOUNT_EMAIL_LAST" /> എന്നായി സൈൻ ഇൻ ചെയ്‌തു. അത് നിങ്ങളുടെ അക്കൗണ്ടല്ലെങ്കിൽ, നിങ്ങളുടെ വിവരങ്ങൾ വേർതിരിച്ച് നിലനിർത്തുന്നതിന് ഒരു പുതിയ Chromium ഉപയോക്താവിനെ സൃഷ്‌ടിക്കുക.
-
-ഏതുവിധേനയും സൈൻ ഇൻ ചെയ്യുന്നത് ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ പോലുള്ള Chromium വിവരങ്ങൾ <ph name="ACCOUNT_EMAIL_NEW" /> എന്നതുമായി ലയിപ്പിക്കും.</translation>
 <translation id="9019929317751753759">Chromium സുരക്ഷിതമാക്കാൻ, <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> എന്നതിൽ ലിസ്റ്റ് ചെയ്യാത്ത ഇനിപ്പറയുന്ന വിപുലീകരണം ഞങ്ങൾ പ്രവർത്തനരഹിതമാക്കി, അവ നിങ്ങളുടെ അറിവില്ലാതെ ചേർത്തിരിക്കാനിടയുണ്ട്.</translation>
 <translation id="9022552996538154597">Chromium-ലേക്ക് സൈൻ ഇൻ ചെയ്യുക</translation>
-<translation id="9025992965467895364">ഈ പേജ് ഒരുപാട് മെമ്മറി ഉപയോഗിക്കുന്നു, അതിനാൽ Chromium ഇത് താൽക്കാലികമായി അവസാനിപ്പിച്ചു.</translation>
-<translation id="9036189287518468038">Chromium ആപ്പ് ലോഞ്ചർ</translation>
 <translation id="9089354809943900324">Chromium കാലഹരണപ്പെട്ടു</translation>
 <translation id="9093206154853821181">{0,plural, =1{ഒരു മണിക്കൂറിൽ Chromium വീണ്ടും സമാരംഭിക്കും}other{# മണിക്കൂറിൽ Chromium വീണ്ടും സമാരംഭിക്കും}}</translation>
 <translation id="91086099826398415">പുതിയ Chromium &amp;ടാബിൽ ലിങ്ക് തുറക്കുക</translation>
 <translation id="911206726377975832">നിങ്ങളുടെ ബ്രൌസിംഗ് ഡാറ്റയും ഇതോടൊപ്പം ഇല്ലാതാക്കണോ?</translation>
 <translation id="9158494823179993217"><ph name="TARGET_URL_HOSTNAME" /> ആക്‌സസ് ചെയ്യാൻ ഇതര ബ്രൗസർ തുറക്കുന്നതിനായി നിങ്ങളുടെ സിസ്‌റ്റം അഡ്‌മിൻ Chromium കോൺഫിഗർ ചെയ്‌തു.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> എന്നത് വിച്ഛേദിക്കുന്നത് നിങ്ങളുടെ ചരിത്രം, ബുക്ക്മാർക്കുകൾ, ക്രമീകരണങ്ങൾ, ഈ ഉപകരണത്തിൽ സംഭരിച്ച മറ്റ് Chromium ഡാറ്റ എന്നിവയെ മായ്‌ക്കും. നിങ്ങളുടെ Google അക്കൗണ്ടിൽ സംഭരിച്ച ഡാറ്റ മായ്‌ക്കാനാകില്ല, അവ <ph name="GOOGLE_DASHBOARD_LINK" />Google ഡാഷ്‌ബോർഡിൽ<ph name="END_GOOGLE_DASHBOARD_LINK" /> നിയന്ത്രിക്കാനാകും.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">നിങ്ങൾ ഇപ്പോൾ Chromium-ൽ സൈൻ ഇൻ ചെയ്‌തു</translation>
 <translation id="93478295209880648">ഇനിയങ്ങോട്ട് Windows XP-യും Windows Vista-യും പിന്തുണയ്‌ക്കാത്തതിനാൽ Chromium ശരിയായി പ്രവർത്തിച്ചേക്കില്ല</translation>
 <translation id="95514773681268843">ഈ ഉപകരണം ഉപയോഗിക്കുന്നതിന് മുമ്പ് നിങ്ങൾ ഇനിപ്പറയുന്ന സേവന നിബന്ധനകൾ വായിച്ച് അംഗീകരിക്കണമെന്ന് <ph name="DOMAIN" /> ആവശ്യപ്പെടുന്നു. ഈ നിബന്ധനകൾ Chromium OS നിബന്ധനകൾ വിപുലീകരിക്കുകയോ പരിഷ്‌കരിക്കുകയോ പരിമിതപ്പെടുത്തുകയോ ചെയ്യുന്നില്ല.</translation>
 <translation id="985602178874221306">Chromium രചയിതാക്കൾ</translation>
diff --git a/chrome/app/resources/chromium_strings_mr.xtb b/chrome/app/resources/chromium_strings_mr.xtb
index 04025fe7..5c7bf46 100644
--- a/chrome/app/resources/chromium_strings_mr.xtb
+++ b/chrome/app/resources/chromium_strings_mr.xtb
@@ -6,22 +6,16 @@
 <translation id="1104942323762546749">Chromium ला तुमचे पासवर्ड निर्यात करायचे आहेत. हे करू देण्यासाठी तुमचा Windows पासवर्ड टाइप करा.</translation>
 <translation id="1115445892567829615">Chromium तुमचा डेटा सिंक करू शकले नाही. कृपया तुमची सिंक पासफ्रेज अपडेट करा.</translation>
 <translation id="113122355610423240">Chromium तुमचा डीफॉल्ट ब्राउझर आहे</translation>
-<translation id="1170115874949214249">तुमच्या फोनवर Chromium इंस्टॉल करा. आम्ही तुमच्या खाते रिकव्हरी फोन नंबरवर एक SMS पाठवू.</translation>
-<translation id="1174473354587728743">कॉंप्युटर शेअर करायचा? तुम्हाला आवडते त्या प्रकारे तुम्ही Chromium सेट करू शकता.</translation>
 <translation id="1185134272377778587">Chromium बद्दल</translation>
-<translation id="1298199220304005244">Chromium OS वापरून मदत मिळवा</translation>
 <translation id="1396446129537741364">Chromium पासवर्ड दर्शविण्याचा प्रयत्न करत आहे.</translation>
 <translation id="1414495520565016063">तुम्ही Chromium मध्ये साइन इन केले आहे!</translation>
 <translation id="151962892725702025">आपल्या डोमेनसाठी संकालन उपलब्ध नसल्यामुळे Chromium OS तुमचा डेटा संकालित करू शकले नाही.</translation>
 <translation id="1524282610922162960">Chromium टॅब शेअर करा</translation>
-<translation id="1668054258064581266">Chromium वरून तुमचे खाते काढल्यानंतर, प्रभावी होण्यासाठी तुम्हाला तुमचे उघडे टॅब रीलोड करण्याची आवश्यकता असू शकते.</translation>
-<translation id="1688750314291223739">वेबवर तुमची पर्सनलाइझ केलेली ब्राउझर वैशिष्ट्ये सेव्ह करण्यासाठी सिंक सेट करा आणि कोणत्याही कॉंप्युटरवरील Chromium वरून ते अॅक्सेस करा.</translation>
 <translation id="1708666629004767631">Chromium ची नवीन, सुरक्षित आवृत्ती उपलब्ध आहे.</translation>
 <translation id="1766096484055239003">तुमच्या अॅडमिनिस्ट्रेटरला अपडेट लागू करता यावी यासाठी तुम्ही Chrome पुन्हा लाँच करण्याची आवश्यकता आहे</translation>
 <translation id="1774152462503052664">Chromium बॅकग्राउंडमध्ये चालू द्या</translation>
 <translation id="1779356040007214683">Chromium अधिक सुरक्षित बनविण्‍यासाठी, आम्‍ही <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> मध्‍ये सूचीबद्ध नसलेले आणि आपल्‍या माहिती शिवाय कदाचित जोडले गेलेले काही विस्‍तार अक्षम केले.</translation>
 <translation id="1808667845054772817">Chromium पुनर्स्थापित करा</translation>
-<translation id="1869480248812203386">तुम्ही Google कडे संभाव्य सुरक्षितता घटनांच्या तपशीलांचा स्वयंचलितपणे अहवाल देऊन Chromium वापरणे अधिक सुरक्षित आणि अधिक सुलभ करण्यात मदत करू शकता.</translation>
 <translation id="1881322772814446296">तुम्ही एका व्यवस्थापित खात्यासह साइन इन करत आहात आणि तुमच्या Chromium प्रोफाइलवर त्याच्या अॅडमिनिस्ट्रेटरला नियंत्रण देत आहात. तुमचा Chromium डेटा, जसे की तुमचे अॅप्स, बुकमार्क, इतिहास, पासवर्ड आणि अन्य सेटिंग्ज <ph name="USER_NAME" /> वर कायमच्या बद्ध होतील. तुम्ही Google खाती डॅशबोर्डद्वारे हा डेटा हटवण्यात सक्षम व्हाल, परंतु तुम्ही दुसर्‍या खात्यासह हा डेटा संबद्ध करण्यात सक्षम असणार नाही. तुम्ही तुमचा विद्यमान Chromium डेटा वेगळी ठेवण्यासाठी एक नवीन पर्यायी प्रोफाइल तयार करू शकता. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">हे बंद करून, तुम्ही Chromium वर साइन इन न करता Gmail सारख्या Google सायटींवर साइन इन करू शकता</translation>
 <translation id="1929939181775079593">Chromium असंवादी आहे. आता पुन्‍हा लाँच करायचे?</translation>
@@ -30,7 +24,6 @@
 <translation id="2117378023188580026">हे अपडेट लागू करण्यासाठी तुमच्या अॅडमिनिस्ट्रेटरने तुम्हाला Chromium पुन्हा लाँच करण्यास सांगितले आहे</translation>
 <translation id="2119636228670142020">&amp;Chromium OS बद्दल</translation>
 <translation id="2241627712206172106">तुम्ही कॉंप्युटर शेअर केल्यास, मित्र आणि कुटुंब स्वतंत्रपणे ब्राउझ करू शकतात आणि त्यांना पाहिजे तसे Chromium सेट अप करू शकतात.</translation>
-<translation id="2265088490657775772">Chromium तुमच्या iPhone वर मिळवा</translation>
 <translation id="2347108572062610441">तुम्ही Chromium सुरू करता तेव्हा कोणते पेज दर्शविले जाते हे या एक्स्टेंशनने बदलले आहे.</translation>
 <translation id="2396765026452590966">तुम्ही Chromium सुरू करता तेव्हा कोणते पेज दर्शविले जाते हे "<ph name="EXTENSION_NAME" />" एक्स्टेंशनने बदलले आहे.</translation>
 <translation id="2483889755041906834">Chromium मध्ये</translation>
@@ -49,11 +42,9 @@
 <translation id="2838154144102149890">अपडेट करण्यासाठी, या कॉंप्युटरवर Chromium बंद करणे आवश्यक आहे. यामुळे या कॉंप्युटरवर लॉग इन केलेल्या इतर वापरकर्त्यांनी सेव्ह न केलेले बदल गमावू शकतात.</translation>
 <translation id="2847479871509788944">Chromium मधून काढून टाका...</translation>
 <translation id="2886012850691518054">पर्यायी: वापर आकडेवारी आणि क्रॅश अहवाल Google कडे आपोआप पाठवून Chromium ला अधिक चांगले करण्यात मदत करा.</translation>
-<translation id="2898082584336937987">तुमच्या फोनवर Chromium इंस्टॉल करा. आम्ही तुमच्या या फोनवर एक SMS पाठवू: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium बद्दल</translation>
 <translation id="2977470724722393594">Chromium अद्ययावत आहे</translation>
 <translation id="3032787606318309379">Chromium वर जोडत आहे...</translation>
-<translation id="3046695367536568084">ॲप्स वापरण्यासाठी Chromium मध्ये तुम्हाला साइन इन करण्याची आवश्यकता आहे. हे डिव्हाइसेसवर तुमचे ॲप्स, बुकमार्क, इतिहास, पासवर्ड आणि अन्य सेटिंग्ज संकालित करण्याची Chromium ला अनुमती देते.</translation>
 <translation id="3068515742935458733">Google कडे क्रॅश अहवाल आणि <ph name="UMA_LINK" /> पाठवून Chromium अधिक चांगले करण्यात मदत करा</translation>
 <translation id="3103660991484857065">संग्रहण अनकॉम्प्रेस करण्यास इन्स्टॉलर अयशस्वी. कृपया Chromium पुन्हा डाउनलोड करा.</translation>
 <translation id="3130323860337406239">Chromium तुमचा मायक्रोफोन वापरत आहे.</translation>
@@ -61,7 +52,6 @@
 <translation id="3179665906251668410">लिंक Chromium गुप्त विंडो मध्ये उघडा</translation>
 <translation id="3190315855212034486">ओहो! Chromium क्रॅश झाले आहे. आता पुन्हा लाँच करायचे?</translation>
 <translation id="3229526316128325841">Chromium ला तुमचे पासवर्ड एक्सपोर्ट करायचे आहेत.</translation>
-<translation id="3256316712990552818">Chromium वर कॉपी केले</translation>
 <translation id="3258596308407688501">Chromium त्याची डेटा डिरेक्टरी वाचू किंवा लिहू शकत नाही:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -85,7 +75,6 @@
 <translation id="4050175100176540509">नवीनतम आवृत्तीमध्‍ये महत्त्वाच्या सुरक्षितता सुधारणा आणि नवीन वैशिष्ट्ये उपलब्‍ध आहेत.</translation>
 <translation id="421369550622382712">Chromium साठी उत्कृष्ट ॲप्स, गेम, विस्तार आणि थीम शोधा</translation>
 <translation id="4216212958613226427">ही भाषा Chromium UI दाखवण्यासाठी वापरली जाते</translation>
-<translation id="4222580632002216401">तुम्ही आता Chromium वर साइन इन केले आहे! तुमच्या अॅडमिनिस्ट्रेटरद्वारे सिंक अक्षम केले गेले आहे.</translation>
 <translation id="4230135487732243613">या खात्यावर तुमच्या Chromium डेटा लिंक करायचा?</translation>
 <translation id="4271805377592243930">Chromium सह मदत मिळवा</translation>
 <translation id="4285930937574705105">नमूद न केलेल्या एररमुळे स्थापना अयशस्वी झाली. सध्‍या Chromium चालत असल्‍यास, कृपया त्‍यास बंद करा आणि पुन्‍हा प्रयत्‍न करा.</translation>
@@ -108,7 +97,6 @@
 <translation id="4943838377383847465">Chromium पार्श्वभूमी मोड मध्ये आहे.</translation>
 <translation id="4987820182225656817">अतिथी कोणतीही गोष्ट मागे न सोडता Chromium वापरू शकतात.</translation>
 <translation id="4994636714258228724">आपल्या स्वतःस Chromium वर जोडा</translation>
-<translation id="5181952534059945058">हे पेज खूप जास्त मेमरी वापरत असल्यामुळे, Chromium ने काही आशय काढला आहे.</translation>
 <translation id="5277894862589591112">तुम्ही केलेले बदल लागू करण्यासाठी, Chromium रीलाँच करा</translation>
 <translation id="5358375970380395591">तुम्ही एका व्यवस्थापित खात्यासह साइन इन करत आहात आणि तुमच्या Chromium प्रोफाइलवर त्याच्या अॅडमिनिस्ट्रेटरला नियंत्रण देत आहात. तुमचा Chromium डेटा, जसे की तुमचे अॅप्स, बुकमार्क, इतिहास, पासवर्ड आणि अन्य सेटिंग्ज <ph name="USER_NAME" /> वर कायमच्या बद्ध होतील. तुम्ही Google खाती डॅशबोर्डद्वारे हा डेटा हटवण्यात सक्षम व्हाल, परंतु तुम्ही दुसर्‍या खात्यासह हा डेटा संबद्ध करण्यात सक्षम असणार नाही. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium अपडेट करीत आहे (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -131,7 +119,6 @@
 <translation id="5895138241574237353">रीस्टार्ट करा</translation>
 <translation id="5987687638152509985">सिंक करण्यासाठी Chromium अपडेट करा</translation>
 <translation id="6013050204643758987"><ph name="BEGIN_LINK_LINUX_OSS" />Linux (बीटा)<ph name="END_LINK_LINUX_OSS" /> सारख्या, अतिरिक्त <ph name="BEGIN_LINK_CROS_OSS" />मुक्त स्रोत सॉफ्टवेअर<ph name="END_LINK_CROS_OSS" /> मुळे Chromium OS शक्य झाले आहे.</translation>
-<translation id="6040143037577758943">बंद करा</translation>
 <translation id="6055895534982063517">Chromium ची नवीन आवृत्ती उपलब्ध आहे आणि ही नेहमीपेक्षा जलद आहे.</translation>
 <translation id="6063093106622310249">आणि Chromium मध्ये उघडा</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> Chromium मध्‍ये जोडण्यात आले आहे</translation>
@@ -153,7 +140,6 @@
 <translation id="6434250628340475518">Chromium OS सिस्टम</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium १ सेकंदात रीस्टार्ट होईल}other{Chromium # सेकंदांत रीस्टार्ट होईल}}</translation>
 <translation id="6475912303565314141">तुम्ही Chromium सुरू करता तेव्हा कोणते पृष्ठ दर्शविले जाते हे देखील हे नियंत्रित करते.</translation>
-<translation id="6485906693002546646">तुम्ही तुमचा Chromium आशय सिंक करण्यासाठी <ph name="PROFILE_EMAIL" /> वापरत आहात. तुमचे सिंक प्राधान्य अपडेट करण्यासाठी किंवा Google खाते न सोडता Chromium वापरण्यासाठी, <ph name="SETTINGS_LINK" /> ला भेट द्या.</translation>
 <translation id="6510925080656968729">Chromium अनइंस्टॉल करा</translation>
 <translation id="6570579332384693436">शब्दलेखनाच्या चुकांमध्ये सुधारणा करण्यासाठी Chromium तुम्ही मजकूर भागामध्ये टाइप केलेला मजकूर Google ला पाठवते</translation>
 <translation id="6598877126913850652">Chromium च्या सूचना सेटिंग्जमध्ये जा</translation>
@@ -163,7 +149,6 @@
 काही वैशिष्‍ट्ये उपलब्ध नसू शकतील. कृपया एक भिन्न प्रोफाइल डिरेक्टरी नमूद करा किंवा Chromium ची नवीन आवृत्ती वापरा.</translation>
 <translation id="6734080038664603509">&amp;Chromium अपडेट करा</translation>
 <translation id="6734291798041940871">तुमच्या कॉंप्युटरवर सर्व वापरकर्त्यांसाठी आधीच Chromium इंस्टॉल केले आहे.</translation>
-<translation id="6810143991807788455">वर्तमान सेटिंग्जचा अहवाल देऊन Chromium उत्कृष्ट बनविण्यास मदत करा</translation>
 <translation id="6847869444787758381">तुमचे पासवर्ड कधीही धोक्यात असल्यास, Chromium तुम्हाला कळवते</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (Chromium वर कॉपी केले)</translation>
@@ -182,7 +167,6 @@
 <translation id="7318036098707714271">तुमची प्राधान्ये फाइल दूषित किंवा चुकीची आहे.
 
 Chromium तुमची सेटिंग्ज रिकव्हर करू शकत नाही.</translation>
-<translation id="7331920710658926971">तुमच्या फोनवर Chromium इंस्टॉल करा. आम्ही तुमच्या फोनवर एक SMS पाठवू.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">नवीन विंडो</translation>
 <translation id="734373864078049451">तुमचे वेब, बुकमार्क आणि अन्य Chromium सामग्री येथे थेट आहे.</translation>
@@ -214,16 +198,13 @@
 <translation id="7979877361127045932">Chromium मेनूमध्‍ये लपवा</translation>
 <translation id="8013436988911883588">एकदा का Chromium ला ॲक्सेस मिळाला की, वेबसाइट तुम्हाला ॲक्सेससाठी विचारू शकतील.</translation>
 <translation id="81770708095080097">ही फाईल धोकादायक आहे, त्यामुळे Chromium ने अवरोधित केली आहे.</translation>
-<translation id="8222496066431494154">तुमच्या फोनवर Chromium इंस्टॉल करा. आम्ही तुमच्या या खाते रिकव्हरी फोन नंबरवर एक SMS पाठवू: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">इमेजचे उपयोगी वर्णन नसल्यास, Chromium तुमच्यासाठी ते देण्याचा प्रयत्न करेल. वर्णने तयार करण्यासाठी, इमेज Google ला पाठवल्या जातात. तुम्ही हे सेटिंग्जमध्ये कधीही बंद करू शकता.</translation>
-<translation id="8269379391216269538">Chromium उत्कृष्ट करण्यात मदत करा</translation>
 <translation id="8290862415967981663">ही फाईल कदाचित धोकादायक असू शकते, त्यामुळे Chromium ने ती अवरोधित केली आहे.</translation>
 <translation id="8330519371938183845">तुमच्या डिव्हाइसवर Chromium सिंक आणि पर्सनलाइझ करण्यासाठी साइन इन करा</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> पूर्वी Chromium वापरत होते</translation>
 <translation id="8417404458978023919">{0,plural, =1{Chromium एका दिवसामध्ये पुन्हा लाँच करा}other{Chromium # दिवसांमध्ये पुन्हा लाँच करा}}</translation>
 <translation id="8453117565092476964">इन्स्टॉलर संग्रहण दूषित किंवा चुकीचे आहे. कृपया Chromium पुन्हा डाउनलोड करा.</translation>
 <translation id="8493179195440786826">Chromium कालबाह्य आहे</translation>
-<translation id="85843667276690461">Chromium वापरून मदत मिळवा</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> The Chromium लेखक. सर्व हक्क राखीव.</translation>
 <translation id="8619360774459241877">Chromium लाँच करत आहे...</translation>
 <translation id="8621669128220841554">नमूद न केलेल्या एररमुळे स्थापना अयशस्वी झाली. कृपया Chromium पुन्‍हा डाउनलोड करा.</translation>
@@ -241,21 +222,14 @@
 <translation id="8907580949721785412">Chromium पासवर्ड दर्शविण्‍याचा प्रयत्‍न करत आहे. यास अनुमती देण्‍यासाठी तुमचा Windows पासवर्ड टाइप करा.</translation>
 <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="8985587603644336029">कोणीतरी यापूर्वी या कॉंप्युटरवरील Chromiumमध्ये <ph name="ACCOUNT_EMAIL_LAST" /> या रुपात साइन इन केले होते. ते तुमचे खाते नसल्यास, तुमची माहिती स्वतंत्र ठेवण्यासाठी एक नवीन Chromium वापरकर्ता तयार करा.
-
-तरीही साइन इन करण्यामुळे <ph name="ACCOUNT_EMAIL_NEW" />मध्ये बुकमार्क, इतिहास यासारखी Chromium माहिती आणि अन्य सेटिंग्ज मर्ज होईल.</translation>
 <translation id="9019929317751753759">Chromium अधिक सुरक्षित करण्यासाठी, आम्ही <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> मध्ये सूचीबद्ध नसलेले आणि तुमच्या माहितीशिवाय कदाचित जोडले गेलेले खालील एक्स्टेंशन बंद केले आहे.</translation>
 <translation id="9022552996538154597">Chromium वर साइन इन करा</translation>
-<translation id="9025992965467895364">हे पेज खूपच जास्त मेमरी वापरत असल्यामुळे Chromium ने ते थांबवून ठेवले आहे.</translation>
-<translation id="9036189287518468038">Chromium App लाँचर</translation>
 <translation id="9089354809943900324">Chromium कालबाह्य आहे</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium एका तासामध्ये पुन्हा लाँच होईल}other{Chromium # तासांमध्ये पुन्हा लाँच होईल}}</translation>
 <translation id="91086099826398415">लिंक नवीन Chromium &amp;टॅबमध्ये उघडा</translation>
 <translation id="911206726377975832">तुमचा ब्राउझिंग डेटा देखील हटवायचा?</translation>
 <translation id="9158494823179993217">तुमच्या सिस्टम अ‍ॅडमिनिस्ट्रेटरने <ph name="TARGET_URL_HOSTNAME" />ॲक्सेस करण्याकरिता पर्यायी ब्राउझर उघडण्यासाठी Chromium कॉन्फिगर केले आहे.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> डिस्कनेक्ट केल्याने, या डिव्हाइसवर संचयित केलेला तुमचा इतिहास, बुकमार्क, सेटिंग्ज आणि अन्य Chromium डेटा साफ होईल. आपल्या Google खात्यामध्ये संचयित केलेला डेटा साफ केला जाणार नाही आणि हा <ph name="GOOGLE_DASHBOARD_LINK" />Google डॅशबोर्ड<ph name="END_GOOGLE_DASHBOARD_LINK" /> वर व्यवस्थापित केला जाऊ शकतो.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-मध्ये)</translation>
-<translation id="9197815481970649201">तुम्ही आता Chromium वर साइन इन केले आहे</translation>
 <translation id="93478295209880648">Chromium ला आता Windows XP किंवा Windows Vista चा सपोर्ट नसल्यामुळे ते आता कदाचित अचूकपणे काम करणार नाही</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> ला तुम्ही हे डिव्हाइस वापरण्यापूर्वी खालील सेवा अटी वाचणे आणि स्वीकारणे आवश्यक आहे. या अटी Chromium OS अटींना विस्तृत, सुधारित किंवा मर्यादित करत नाहीत.</translation>
 <translation id="985602178874221306">Chromium लेखक</translation>
diff --git a/chrome/app/resources/chromium_strings_ms.xtb b/chrome/app/resources/chromium_strings_ms.xtb
index 87b864a..2f509d1b 100644
--- a/chrome/app/resources/chromium_strings_ms.xtb
+++ b/chrome/app/resources/chromium_strings_ms.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium mahu mengeksport kata laluan anda. Taip kata laluan Windows anda untuk membenarkannya.</translation>
 <translation id="1115445892567829615">Chromium tidak dapat menyegerakkan data anda. Sila kemas kini frasa laluan Segerak anda.</translation>
 <translation id="113122355610423240">Chromium ialah penyemak imbas lalai anda</translation>
-<translation id="1170115874949214249">Pasang Chromium pada telefon anda. Kami akan menghantar SMS ke nombor telefon pemulihan akaun anda.</translation>
-<translation id="1174473354587728743">Berkongsi komputer? Sekarang anda boleh menyediakan Chromium menurut cara yang anda suka.</translation>
 <translation id="1185134272377778587">Mengenai Chromium</translation>
-<translation id="1298199220304005244">Dapatkan bantuan untuk menggunakan Chromium OS</translation>
 <translation id="1396446129537741364">Chromium sedang cuba memaparkan kata laluan.</translation>
 <translation id="1414495520565016063">Anda log masuk ke Chromium!</translation>
 <translation id="151962892725702025">OS Chromium tidak dapat menyegerakkan data anda kerana Segerak tidak tersedia untuk domain anda.</translation>
 <translation id="1524282610922162960">Kongsi tab Chromium</translation>
-<translation id="1668054258064581266">Selepas mengalih keluar akaun anda daripada Chromium, anda mungkin perlu memuatkan semula tab yang dibuka untuk memberi kesan.</translation>
-<translation id="1688750314291223739">Sediakan Penyegerakan untuk menyimpan ciri penyemak imbas yang diperibadikan di web dan aksesnya dari Chromium pada mana-mana komputer.</translation>
 <translation id="1708666629004767631">Terdapat versi Chromium baharu yang lebih selamat tersedia.</translation>
 <translation id="1766096484055239003">Pentadbir anda menghendaki anda melancarkan semula Chromium untuk menggunakan kemas kini</translation>
 <translation id="1774152462503052664">Benarkan Chromium dijalankan dalam latar belakang</translation>
 <translation id="1779356040007214683">Untuk menjadikan Chromium lebih selamat, kami melumpuhkan beberapa sambungan yang tidak disenaraikan dalam <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> dan mungkin telah ditambahkan tanpa pengetahuan anda.</translation>
 <translation id="1808667845054772817">Pasang semula Chromium</translation>
-<translation id="1869480248812203386">Anda boleh membantu menjadikan Chromium lebih selamat dan lebih mudah untuk digunakan dengan melaporkan butiran kemungkinan insiden keselamatan secara automatik kepada Google.</translation>
 <translation id="1881322772814446296">Anda log masuk menggunakan akaun yang terurus dan memberikan pentadbirnya kawalan ke atas profil Chromium anda. Data Chromium anda, seperti apl, penanda halaman, sejarah, kata laluan dan tetapan anda yang lain akan terikat kepada <ph name="USER_NAME" /> secara kekal. Anda akan dapat memadamkan data ini melalui Papan Pemuka Akaun Google, tetapi anda tidak akan dapat mengaitkan data ini dengan akaun lain. Anda boleh memilih untuk membuat profil baharu untuk mengasingkan data Chromium anda yang sedia ada. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Dengan mematikan pilihan ini, anda boleh mengelog masuk ke tapak Google seperti Gmail tanpa perlu mengelog masuk ke Chromium</translation>
 <translation id="1929939181775079593">Chromium tidak responsif. Lancarkan semula sekarang?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Pentadbir anda meminta anda melancarkan semula Chromium untuk menggunakan kemas kini ini</translation>
 <translation id="2119636228670142020">Mengenai &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Jika anda berkongsi komputer, rakan dan keluarga boleh menyemak imbas secara berasingan dan menyediakan Chromium sebagaimana yang mereka mahukan.</translation>
-<translation id="2265088490657775772">dapatkan Chromium pada iPhone anda</translation>
 <translation id="2347108572062610441">Sambungan ini telah menukar halaman yang ditunjukkan apabila anda memulakan Chromium.</translation>
 <translation id="2396765026452590966">Sambungan "<ph name="EXTENSION_NAME" />" telah menukar halaman yang ditunjukkan apabila anda memulakan Chromium.</translation>
 <translation id="2483889755041906834">Dalam Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Chromium perlu dihentikan pada komputer ini untuk mengemas kini. Tindakan ini mungkin menyebabkan pengguna yang log masuk ke komputer ini kehilangan perubahan yang belum disimpan.</translation>
 <translation id="2847479871509788944">Alih keluar daripada Chromium...</translation>
 <translation id="2886012850691518054">Pilihan: Bantu jadikan Chromium lebih baik dengan menghantar statistik penggunaan dan laporan ranap kepada Google secara automatik.</translation>
-<translation id="2898082584336937987">Pasang Chromium pada telefon anda. Kami akan menghantar SMS ke telefon anda: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Mengenai &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium telah dikemas kini</translation>
 <translation id="3032787606318309379">Menambah ke Chromium...</translation>
-<translation id="3046695367536568084">Anda perlu log masuk ke Chromium untuk menggunakan apl. Tindakan ini membolehkan Chromium menyegerakkan apl, penanda halaman, sejarah, kata laluan dan tetapan anda yang lain pada semua peranti.</translation>
 <translation id="3068515742935458733">Bantu jadikan Chromium lebih baik dengan menghantar laporan ranap dan <ph name="UMA_LINK" /> kepada Google.</translation>
 <translation id="3103660991484857065">Pemasang gagal untuk menyahmampat arkib. Sila muat turun Chromium sekali lagi.</translation>
 <translation id="3130323860337406239">Chromium menggunakan mikrofon anda.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Buka Pautan dalam Tetingkap Inko&amp;gnito Chromium</translation>
 <translation id="3190315855212034486">Alamak! Chromium mengalami ranap sistem. Lancarkan semula sekarang?</translation>
 <translation id="3229526316128325841">Chromium mahu mengeksport kata laluan anda.</translation>
-<translation id="3256316712990552818">Disalin ke Chromium</translation>
 <translation id="3258596308407688501">Chromium tidak dapat membaca atau menulis pada direktori datanya:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Peningkatan keselamatan penting dan ciri baharu tersedia dalam versi terkini.</translation>
 <translation id="421369550622382712">Temui apl, permainan, sambungan dan tema yang hebat untuk Chromium.</translation>
 <translation id="4216212958613226427">Bahasa ini digunakan untuk memaparkan UI Chromium</translation>
-<translation id="4222580632002216401">Anda kini sedang log masuk ke Chromium! Penyegerakan dilumpuhkan oleh pentadbir anda.</translation>
 <translation id="4230135487732243613">Paut data Chromium anda ke akaun ini?</translation>
 <translation id="4271805377592243930">Dapatkan bantuan berkenaan Chromium</translation>
 <translation id="4285930937574705105">Pemasangan gagal disebabkan ralat yang tidak dinyatakan. Jika Chromium sedang dijalankan, sila tutup dan cuba semula.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium dalam mod latar belakang.</translation>
 <translation id="4987820182225656817">Tetamu boleh menggunakan Chromium tanpa meninggalkan apa-apa.</translation>
 <translation id="4994636714258228724">Tambahkan diri anda kepada Chromium</translation>
-<translation id="5181952534059945058">Halaman ini menggunakan terlalu banyak memori, jadi Chromium mengalih keluar sebahagian kandungan.</translation>
 <translation id="5277894862589591112">Untuk menggunakan perubahan anda, mulakan semula Chromium</translation>
 <translation id="5358375970380395591">Anda log masuk menggunakan akaun yang terurus dan memberikan pentadbirnya kawalan ke atas profil Chromium anda. Data Chromium anda, seperti apl, penanda halaman, sejarah, kata laluan dan tetapan anda yang lain akan terikat kepada <ph name="USER_NAME" /> secara kekal. Anda akan dapat memadamkan data ini melalui Papan Pemuka Akaun Google, tetapi anda tidak akan dapat mengaitkan data ini dengan akaun lain. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Mengemas kini Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Mulakan Semula</translation>
 <translation id="5987687638152509985">Kemas kini Chromium untuk memulakan penyegerakan</translation>
 <translation id="6013050204643758987">OS Chromium menjadi kenyataan dengan <ph name="BEGIN_LINK_CROS_OSS" />perisian sumber terbuka<ph name="END_LINK_CROS_OSS" /> tambahan, sebagaimana <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Tutup</translation>
 <translation id="6055895534982063517">Terdapat versi baharu Chromium yang lebih pantas daripada biasa tersedia.</translation>
 <translation id="6063093106622310249">&amp;Buka dalam Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> telah ditambahkan pada Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Sistem OS Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium akan dimulakan semula dalam 1 saat}other{Chromium akan dimulakan semula dalam # saat}}</translation>
 <translation id="6475912303565314141">Sambungan turut mengawal halaman yang ditunjukkan apabila anda memulakan Chromium.</translation>
-<translation id="6485906693002546646">Anda menggunakan <ph name="PROFILE_EMAIL" /> untuk menyegerakkan bahan digital chromium anda. Untuk mengemas kini pilihan penyegerakan anda atau menggunakan Chromium tanpa akaun Google, lawati <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Nyahpasang Chromium</translation>
 <translation id="6570579332384693436">Untuk membetulkan kesilapan ejaan, Chromium menghantar teks yang anda taip dalam medan teks kepada Google</translation>
 <translation id="6598877126913850652">Pergi ke tetapan pemberitahuan Chromium</translation>
@@ -162,7 +148,6 @@
 Beberapa ciri mungkin tidak tersedia. Sila nyatakan direktori profil yang berbeza atau gunakan versi Chromium yang lebih baharu.</translation>
 <translation id="6734080038664603509">Kemas kini &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium telah dipasang untuk semua pengguna pada komputer anda.</translation>
-<translation id="6810143991807788455">Bantu jadikan Chromium lebih baik dengan melaporkan tetapan semasa</translation>
 <translation id="6847869444787758381">Chromium akan memberitahu anda sekiranya kata laluan anda terjejas</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (disalin ke Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Fail pilihan anda rosak atau tidak sah.
 
 Chromium tidak dapat mengembalikan tetapan anda.</translation>
-<translation id="7331920710658926971">Pasang Chromium pada telefon anda. Kami akan menghantar SMS ke telefon anda.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Tetingkap baharu</translation>
 <translation id="734373864078049451">Web, penanda halaman dan barangan Chromium anda yang lain tinggal di sini.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Sembunyikan dalam menu Chromium</translation>
 <translation id="8013436988911883588">Sebaik sahaja Chromium mendapat akses, tapak web akan dapat meminta akses daripada anda.</translation>
 <translation id="81770708095080097">Fail ini berbahaya, maka Chromium telah menyekatnya.</translation>
-<translation id="8222496066431494154">Pasang Chromium pada telefon anda. Kami akan menghantar SMS ke nombor telefon pemulihan akaun anda: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Jika imej tiada perihalan yang berguna, Chromium akan cuba memberikan perihalan untuk anda. Untuk membuat perihalan, imej dihantar kepada Google. Anda boleh mematikan pilihan ini dalam tetapan pada bila-bila masa.</translation>
-<translation id="8269379391216269538">Bantu menjadikan Chromium lebih baik</translation>
 <translation id="8290862415967981663">Fail ini mungkin berbahaya, maka Chromium telah menyekatnya.</translation>
 <translation id="8330519371938183845">Log masuk untuk menyegerakkan dan memperibadikan Chromium pada semua peranti anda</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> menggunakan Chromium sebelum ini</translation>
 <translation id="8417404458978023919">{0,plural, =1{Lancarkan semula Chromium dalam masa sehari}other{Lancarkan semula Chromium dalam masa # hari}}</translation>
 <translation id="8453117565092476964">Arkib pemasang rosak atau tidak sah. Sila muat turun Chromium sekali lagi.</translation>
 <translation id="8493179195440786826">Chromium sudah usang</translation>
-<translation id="85843667276690461">Dapatkan bantuan untuk menggunakan Chromium</translation>
 <translation id="8586442755830160949">Hak Cipta <ph name="YEAR" /> Pengarang Chromium. Hak cipta terpelihara.</translation>
 <translation id="8619360774459241877">Melancarkan Chromium...</translation>
 <translation id="8621669128220841554">Pemasangan gagal disebabkan ralat yang tidak dinyatakan. Sila muat turun semula Chromium.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium cuba menunjukkan kata laluan. Taip kata laluan Windows anda untuk membenarkannya.</translation>
 <translation id="8941642502866065432">Tidak dapat mengemas kini Chromium</translation>
 <translation id="8974095189086268230">Chromium OS berjaya dilaksanakan dengan adanya <ph name="BEGIN_LINK_CROS_OSS" />perisian sumber terbuka<ph name="END_LINK_CROS_OSS" /> tambahan.</translation>
-<translation id="8985587603644336029">Seseorang telah log masuk ke Chromium pada komputer ini sebagai <ph name="ACCOUNT_EMAIL_LAST" /> sebelum ini. Jika itu bukan akaun anda, buat pengguna Chromium baharu untuk mengasingkan maklumat anda.
-
-Meneruskan juga log masuk akan menggabungkan maklumat Chromium seperti penanda halaman, sejarah dan tetapan lain ke <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Untuk menjadikan Chromium lebih selamat, kami melumpuhkan sambungan berikut yang tidak disenaraikan dalam  <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> dan mungkin telah ditambahkan tanpa pengetahuan anda.</translation>
 <translation id="9022552996538154597">Log masuk ke Chromium</translation>
-<translation id="9025992965467895364">Halaman ini menggunakan terlalu banyak memori, jadi Chromium menjeda halaman ini.</translation>
-<translation id="9036189287518468038">Pelancar Apl Chromium</translation>
 <translation id="9089354809943900324">Chromium sudah usang</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium akan dilancarkan semula dalam masa sejam}other{Chromium akan dilancarkan semula dalam masa # jam}}</translation>
 <translation id="91086099826398415">Buka Pautan dalam &amp;tab Chromium Baharu</translation>
 <translation id="911206726377975832">Padamkan juga data menyemak imbas anda?</translation>
 <translation id="9158494823179993217">Pentadbir sistem anda telah mengkonfigurasikan Chromium agar membuka penyemak imbas alternatif untuk mengakses <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Memutuskan sambungan <ph name="USERNAME" /> akan mengosongkan sejarah anda, penanda halaman, tetapan dan data Chromium lain yang disimpan pada peranti ini. Data yang disimpan dalam Akaun Google anda tidak akan dikosongkan dan boleh diuruskan pada <ph name="GOOGLE_DASHBOARD_LINK" />Papan Pemuka Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Anda dilog masuk ke Chromium</translation>
 <translation id="93478295209880648">Chromium mungkin tidak akan berfungsi dengan betul kerana tidak lagi disokong pada Windows XP atau Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> menghendaki anda membaca dan menerima Syarat Perkhidmatan berikut sebelum menggunakan peranti ini. Syarat ini tidak meluaskan, mengubah suai atau mengehadkan Syarat OS Chromium.</translation>
 <translation id="985602178874221306">Pengarang Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_nl.xtb b/chrome/app/resources/chromium_strings_nl.xtb
index 73bac3ae..100e3f47 100644
--- a/chrome/app/resources/chromium_strings_nl.xtb
+++ b/chrome/app/resources/chromium_strings_nl.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium wil je wachtwoorden exporteren. Geef je Windows-wachtwoord op om dit toe te staan.</translation>
 <translation id="1115445892567829615">Chromium kan je gegevens niet synchroniseren. Update je synchronisatiewachtwoord.</translation>
 <translation id="113122355610423240">Chromium is je standaardbrowser</translation>
-<translation id="1170115874949214249">Installeer Chromium op je telefoon. We sturen een sms naar het hersteltelefoonnummer voor je account.</translation>
-<translation id="1174473354587728743">Deel je een computer? Je kunt Chromium nu precies instellen zoals jij dat wilt.</translation>
 <translation id="1185134272377778587">Over Chromium</translation>
-<translation id="1298199220304005244">Hulp bij het gebruik van Chromium OS</translation>
 <translation id="1396446129537741364">Chromium probeert wachtwoorden weer te geven.</translation>
 <translation id="1414495520565016063">Je bent ingelogd bij Chromium.</translation>
 <translation id="151962892725702025">Chromium OS kan je gegevens niet synchroniseren omdat synchronisatie niet beschikbaar is voor je domein.</translation>
 <translation id="1524282610922162960">Een Chromium-tabblad delen</translation>
-<translation id="1668054258064581266">Nadat je je account uit Chromium hebt verwijderd, moet je je geopende tabbladen mogelijk opnieuw laden om de wijzigingen door te voeren.</translation>
-<translation id="1688750314291223739">Stel synchronisatie in om je persoonlijke browserfuncties online op te slaan en toegang te hebben tot deze functies via Chromium, vanaf elke computer.</translation>
 <translation id="1708666629004767631">Er is een nieuwe, veiligere versie van Chromium beschikbaar.</translation>
 <translation id="1766096484055239003">Je beheerder vereist dat je Chromium opnieuw start om een update toe te passen</translation>
 <translation id="1774152462503052664">Chromium laten uitvoeren op de achtergrond</translation>
 <translation id="1779356040007214683">Om Chromium veiliger te maken, hebben we een aantal extensies uitgeschakeld die niet worden vermeld in de <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> en mogelijk zonder je medeweten zijn geïnstalleerd.</translation>
 <translation id="1808667845054772817">Chromium opnieuw installeren</translation>
-<translation id="1869480248812203386">Je kunt helpen Chromium veiliger en gebruiksvriendelijker te maken door automatisch informatie over mogelijke beveiligingsincidenten aan Google te melden.</translation>
 <translation id="1881322772814446296">Je logt in op een beheerd account waarmee de eigenaar van dat account beheer krijgt over je Chromium-profiel. Je Chromium-gegevens zoals je apps, bladwijzers, geschiedenis, wachtwoorden en andere instellingen worden permanent gekoppeld aan <ph name="USER_NAME" />. Je kunt deze gegevens verwijderen via het Google Accounts Dashboard, maar je kunt deze gegevens niet koppelen aan een ander account. Je kunt een nieuw profiel maken om je bestaande Chromium-gegevens apart te houden. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Als je dit uitschakelt, kun je inloggen bij Google-sites zoals Gmail zonder in te loggen bij Chromium</translation>
 <translation id="1929939181775079593">Chromium reageert niet. Nu opnieuw starten?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Je beheerder vraagt je Chromium opnieuw te starten om deze update toe te passen</translation>
 <translation id="2119636228670142020">Over &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Als je een computer deelt, kunnen vrienden en familie afzonderlijk surfen en Chromium configureren zoals zij dat willen.</translation>
-<translation id="2265088490657775772">Download Chromium naar je iPhone</translation>
 <translation id="2347108572062610441">Deze extensie heeft gewijzigd welke pagina wordt weergegeven wanneer je Chromium start.</translation>
 <translation id="2396765026452590966">De extensie '<ph name="EXTENSION_NAME" />' heeft gewijzigd welke pagina wordt weergegeven wanneer je Chromium start.</translation>
 <translation id="2483889755041906834">In Chromium</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Chromium moet worden gestopt op deze computer om een update uit te voeren. Hierdoor kunnen andere gebruikers die bij deze computer zijn ingelogd, niet-opgeslagen wijzigingen kwijtraken.</translation>
 <translation id="2847479871509788944">Verwijderen uit Chromium…</translation>
 <translation id="2886012850691518054">Optioneel: help Chromium beter te maken door automatisch gebruiksstatistieken en crashmeldingen naar Google te verzenden.</translation>
-<translation id="2898082584336937987">Installeer Chromium op je telefoon. We sturen een sms naar je telefoon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Over &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium is up-to-date</translation>
 <translation id="3032787606318309379">Toevoegen aan Chromium...</translation>
-<translation id="3046695367536568084">Je moet zijn ingelogd bij Chromium om apps te gebruiken. Hierdoor kan Chromium je apps, bladwijzers, geschiedenis, wachtwoorden en andere instellingen op verschillende apparaten synchroniseren.</translation>
 <translation id="3068515742935458733">Help ons Chromium te verbeteren door crashrapporten en <ph name="UMA_LINK" /> naar Google te verzenden</translation>
 <translation id="3103660991484857065">Het installatieprogramma kan het archief niet uitpakken. Download Chromium opnieuw.</translation>
 <translation id="3130323860337406239">Chromium gebruikt je microfoon.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Link openen in een Chromium-inco&amp;gnitovenster</translation>
 <translation id="3190315855212034486">Chromium is gecrasht. Nu opnieuw starten?</translation>
 <translation id="3229526316128325841">Chromium wil je wachtwoorden exporteren.</translation>
-<translation id="3256316712990552818">Gekopieerd naar Chromium</translation>
 <translation id="3258596308407688501">Chrome kan niet lezen van en schrijven naar de eigen gegevensdirectory :
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">Er zijn belangrijke beveiligingsverbeteringen en nieuwe functies beschikbaar in de nieuwste versie.</translation>
 <translation id="421369550622382712">Ontdek fantastische apps, games, extensies en thema's voor Chromium.</translation>
 <translation id="4216212958613226427">Deze taal wordt gebruikt om de Chromium-UI weer te geven</translation>
-<translation id="4222580632002216401">Je bent nu ingelogd bij Chromium! Synchronisatie is uitgeschakeld door je beheerder.</translation>
 <translation id="4230135487732243613">Wil je je Chromium-gegevens aan dit account koppelen?</translation>
 <translation id="4271805377592243930">Hulp bij Chromium</translation>
 <translation id="4285930937574705105">De installatie is mislukt wegens een onbekende fout. Als Chromium momenteel actief is, moet je Chromium sluiten en het opnieuw proberen.</translation>
@@ -108,7 +97,6 @@
 <translation id="4943838377383847465">Chromium bevindt zich in de achtergrondmodus.</translation>
 <translation id="4987820182225656817">Gasten kunnen Chromium gebruiken zonder iets achter te laten.</translation>
 <translation id="4994636714258228724">Jezelf toevoegen aan Chromium</translation>
-<translation id="5181952534059945058">Omdat deze pagina te veel geheugen gebruikt, heeft Chromium wat content verwijderd.</translation>
 <translation id="5277894862589591112">Als je de wijzigingen wilt toepassen, start je Chromium opnieuw</translation>
 <translation id="5358375970380395591">Je logt in op een beheerd account waarmee de eigenaar van dat account beheer krijgt over je Chromium-profiel. Je Chromium-gegevens zoals je apps, bladwijzers, geschiedenis, wachtwoorden en andere instellingen worden permanent gekoppeld aan <ph name="USER_NAME" />. Je kunt deze gegevens verwijderen via het Google Accounts Dashboard, maar je kunt deze gegevens niet koppelen aan een ander account.<ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium updaten (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -131,7 +119,6 @@
 <translation id="5895138241574237353">Opnieuw starten</translation>
 <translation id="5987687638152509985">Chromium updaten om de synchronisatie te starten</translation>
 <translation id="6013050204643758987">Chromium OS wordt mogelijk gemaakt door aanvullende <ph name="BEGIN_LINK_CROS_OSS" />open-sourcesoftware<ph name="END_LINK_CROS_OSS" />, net als <ph name="BEGIN_LINK_LINUX_OSS" />Linux (bèta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Sluiten</translation>
 <translation id="6055895534982063517">Er is een nieuwe versie van Chromium beschikbaar, en deze is sneller dan ooit.</translation>
 <translation id="6063093106622310249">&amp;Openen in Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> is toegevoegd aan Chromium</translation>
@@ -153,7 +140,6 @@
 <translation id="6434250628340475518">Chromium OS-systeem</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium wordt over één seconde opnieuw gestart}other{Chromium wordt over # seconden opnieuw gestart}}</translation>
 <translation id="6475912303565314141">Hiermee wordt ook gecontroleerd welke pagina wordt weergegeven wanneer je Chromium start.</translation>
-<translation id="6485906693002546646">Je gebruikt <ph name="PROFILE_EMAIL" /> om je Chromium-bestanden te synchroniseren. Als je je synchronisatievoorkeur wilt bijwerken of Chromium zonder een Google-account wilt gebruiken, ga je naar '<ph name="SETTINGS_LINK" />'.</translation>
 <translation id="6510925080656968729">Chromium verwijderen</translation>
 <translation id="6570579332384693436">Chromium verzendt de tekst die je in tekstvelden typt naar Google om spelfouten te corrigeren</translation>
 <translation id="6598877126913850652">Ga naar instellingen voor Chromium-meldingen</translation>
@@ -163,7 +149,6 @@
 Sommige functies zijn mogelijk niet beschikbaar. Geef een andere profieldirectory op of gebruik een recentere versie van Chromium.</translation>
 <translation id="6734080038664603509">&amp;Chromium updaten</translation>
 <translation id="6734291798041940871">Chromium is al geïnstalleerd voor alle gebruikers op je computer.</translation>
-<translation id="6810143991807788455">Help Chromium beter te maken door de huidige instellingen te melden</translation>
 <translation id="6847869444787758381">Chromium laat het je weten als je wachtwoorden mogelijk niet veilig meer zijn</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (gekopieerd naar Chromium)</translation>
@@ -182,7 +167,6 @@
 <translation id="7318036098707714271">Je bestand met voorkeuren is beschadigd of ongeldig.
 
 Chromium kan je instellingen niet herstellen.</translation>
-<translation id="7331920710658926971">Installeer Chromium op je telefoon. We sturen een sms naar je telefoon.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nieuw venster</translation>
 <translation id="734373864078049451">Hier vind je internet, bladwijzers en andere Chromium-instellingen.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Verbergen in Chromium-menu</translation>
 <translation id="8013436988911883588">Zodra Chromium toegang heeft, kunnen websites je om toegang vragen.</translation>
 <translation id="81770708095080097">Dit bestand is gevaarlijk en is daarom door Chromium geblokkeerd.</translation>
-<translation id="8222496066431494154">Installeer Chromium op je telefoon. We sturen een sms naar het hersteltelefoonnummer voor je account: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Als een afbeelding geen nuttige beschrijving bevat, probeert Chromium je er een te geven. Afbeeldingen worden naar Google verzonden om beschrijvingen te maken. Je kunt dit op elk gewenst moment uitschakelen in Instellingen.</translation>
-<translation id="8269379391216269538">Help ons Chromium beter te maken</translation>
 <translation id="8290862415967981663">Dit bestand kan gevaarlijk zijn en is daarom door Chromium geblokkeerd.</translation>
 <translation id="8330519371938183845">Log in om Chromium op al je apparaten te synchroniseren en te personaliseren</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> maakte eerder gebruik van Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Start Chromium binnen een dag opnieuw}other{Start Chromium binnen # dagen opnieuw}}</translation>
 <translation id="8453117565092476964">Het archief van het installatieprogramma is beschadigd of ongeldig. Download Chromium opnieuw.</translation>
 <translation id="8493179195440786826">Chromium is verouderd</translation>
-<translation id="85843667276690461">Hulp bij het gebruik van Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> De auteurs van Chromium. Alle rechten voorbehouden.</translation>
 <translation id="8619360774459241877">Chromium starten…</translation>
 <translation id="8621669128220841554">De installatie is mislukt wegens een onbekende fout. Download Chromium opnieuw.</translation>
@@ -239,21 +220,14 @@
 <translation id="8907580949721785412">Chromium probeert wachtwoorden weer te geven. Geef je Windows-wachtwoord op om dit toe te staan.</translation>
 <translation id="8941642502866065432">Kan Chromium niet updaten</translation>
 <translation id="8974095189086268230">Chromium OS wordt mogelijk gemaakt door aanvullende <ph name="BEGIN_LINK_CROS_OSS" />open source-software<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Iemand is eerder op deze computer ingelogd bij Chromium als <ph name="ACCOUNT_EMAIL_LAST" />. Als dit niet je account is, maak je een nieuwe Chromium-gebruiker om je gegevens gescheiden te houden.
-
-Als je toch inlogt, worden Chromium-gegevens zoals bladwijzers, geschiedenis en andere instellingen samengevoegd met <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">We hebben de volgende extensie uitgeschakeld die niet wordt vermeld in de <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> en mogelijk zonder je medeweten is toegevoegd. We doen dit om Chromium veiliger te maken.</translation>
 <translation id="9022552996538154597">Inloggen bij Chromium</translation>
-<translation id="9025992965467895364">Omdat deze pagina te veel geheugen gebruikt, heeft Chromium de pagina onderbroken.</translation>
-<translation id="9036189287518468038">App-opstartprogramma van Chromium</translation>
 <translation id="9089354809943900324">Chromium is verouderd</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium wordt over een uur opnieuw gestart}other{Chromium wordt over # uur opnieuw gestart}}</translation>
 <translation id="91086099826398415">Link openen op een nieuw Chromium-&amp;tabblad</translation>
 <translation id="911206726377975832">Ook browsegegevens wissen?</translation>
 <translation id="9158494823179993217">Je systeembeheerder heeft geconfigureerd dat Chromium een alternatieve browser opent voor toegang tot <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Als je de verbinding met <ph name="USERNAME" /> verbreekt, worden je geschiedenis, bladwijzers, instellingen en andere Chromium-gegevens die op dit apparaat zijn opgeslagen, gewist. Gegevens die zijn opgeslagen in je Google-account worden niet gewist en kunnen worden beheerd via <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Je bent nu ingelogd bij Chromium</translation>
 <translation id="93478295209880648">Chromium werkt mogelijk niet naar behoren omdat dit niet langer wordt ondersteund op Windows XP en Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> vereist dat je de volgende Servicevoorwaarden leest en accepteert voordat je dit apparaat gebruikt. Deze voorwaarden zijn geen uitbreiding, aanpassing of beperking van de Voorwaarden van Chromium OS.</translation>
 <translation id="985602178874221306">De auteurs van Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_no.xtb b/chrome/app/resources/chromium_strings_no.xtb
index b756243..e578461 100644
--- a/chrome/app/resources/chromium_strings_no.xtb
+++ b/chrome/app/resources/chromium_strings_no.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium forsøker å eksportere passordene dine. Skriv inn Windows-passordet ditt for å tillate dette.</translation>
 <translation id="1115445892567829615">Chromium kunne ikke synkronisere dataene dine. Oppdater passordfrasen for synkronisering.</translation>
 <translation id="113122355610423240">Chromium er standardnettleseren din</translation>
-<translation id="1170115874949214249">Installer Chromium på telefonen din. Vi sender en SMS til telefonnummeret ditt for kontogjenoppretting.</translation>
-<translation id="1174473354587728743">Deler du datamaskinen din med andre? Nå kan du konfigurere Chromium akkurat slik du vil.</translation>
 <translation id="1185134272377778587">Om Chromium</translation>
-<translation id="1298199220304005244">Få hjelp med å bruke Chromium OS</translation>
 <translation id="1396446129537741364">Chromium prøver å vise passord.</translation>
 <translation id="1414495520565016063">Du er logget på Chromium.</translation>
 <translation id="151962892725702025">Chromium OS kunne ikke synkronisere dataene dine fordi synkronisering ikke er tilgjengelig for domenet ditt.</translation>
 <translation id="1524282610922162960">Del en Chromium-fane</translation>
-<translation id="1668054258064581266">Når du har fjernet kontoen din fra Chromium, kan det hende at du må laste inn de åpne fanene på nytt før endringene trer i kraft.</translation>
-<translation id="1688750314291223739">Konfigurer Synkronisering til å lagre de personlig tilpassede nettleserfunksjonene dine på nettet slik at du kan bruke dem fra Chromium på enhver datamaskin.</translation>
 <translation id="1708666629004767631">En ny, sikrere versjon av Chromium er tilgjengelig.</translation>
 <translation id="1766096484055239003">Administratoren din krever at du starter Chromium på nytt for at en oppdatering skal tas i bruk</translation>
 <translation id="1774152462503052664">La Chromium kjøre i bakgrunnen</translation>
 <translation id="1779356040007214683">For å gjøre Chromium tryggere, har vi deaktivert noen utvidelser som ikke er oppført i <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />, og som kan ha blitt lagt uten at du har vært klar over det.</translation>
 <translation id="1808667845054772817">Installer Chromium på nytt</translation>
-<translation id="1869480248812203386">Du kan bidra til å gjøre Chromium tryggere og enklere å bruke ved å rapportere detaljer om mulige sikkerhetsbrudd til Google automatisk.</translation>
 <translation id="1881322772814446296">Du logger deg på med en administrert konto og gir tilhørende administratorer kontroll over Chromium-profilen din. Chromium-dataene dine, slik som apper, bokmerker, loggen, passord og andre innstillinger knyttes permanent til <ph name="USER_NAME" />. Du kan slette disse dataene via oversikten for Google-kontoer, men du kan ikke knytte disse dataene til en annen konto. Du kan velge om du vil opprette en ny profil for å holde de eksisterende Chromium-dataene atskilte. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Ved å slå dette av kan du logge på Google-sider, som Gmail, uten å logge på Chromium</translation>
 <translation id="1929939181775079593">Chromium svarer ikke. Vil du starte den på nytt nå?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Administratoren din ber deg om å starte Chromium på nytt for at denne oppdateringen skal tas i bruk</translation>
 <translation id="2119636228670142020">Om &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Hvis du deler en datamaskin med andre, kan venner og familie surfe hver for seg og konfigurere Chromium akkurat slik de vil.</translation>
-<translation id="2265088490657775772">få Chromium på iPhone</translation>
 <translation id="2347108572062610441">Denne utvidelsen har endret hvilken side som vises når du starter Chromium.</translation>
 <translation id="2396765026452590966">Utvidelsen «<ph name="EXTENSION_NAME" />» har endret hvilken side som vises når du starter Chromium.</translation>
 <translation id="2483889755041906834">I Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">For å oppdateres må Chromium slutte å kjøre på denne datamaskinen. Dette kan medføre at andre brukere som er logget på datamaskinen, mister endringer som ikke er lagret.</translation>
 <translation id="2847479871509788944">Fjern fra Chromium</translation>
 <translation id="2886012850691518054">Valgfritt: Bidra til å gjøre Chromium bedre ved å sende brukerstatistikk og krasjrapporter automatisk til Google.</translation>
-<translation id="2898082584336937987">Installer Chromium på telefonen din. Vi sender deg en SMS på <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Om &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium er oppdatert</translation>
 <translation id="3032787606318309379">Legger til i Chromium …</translation>
-<translation id="3046695367536568084">Du må være logget på Chromium for å bruke apper. På denne måten kan Chromium synkronisere appene, bokmerkene og passordene dine, samt loggen din og andre innstillinger, på alle enheter.</translation>
 <translation id="3068515742935458733">Bidra til å gjøre Chromium bedre ved å sende programstopprapporter og <ph name="UMA_LINK" /> til Google</translation>
 <translation id="3103660991484857065">Installasjonsprogrammet kunne ikke dekomprimere arkivet. Last ned Chromium på nytt.</translation>
 <translation id="3130323860337406239">Chromium bruker mikrofonen din.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Åpne linken i et inkognitovindu i Chromium</translation>
 <translation id="3190315855212034486">Chromium har krasjet. Vil du starte den på nytt nå?</translation>
 <translation id="3229526316128325841">Chromium forsøker å eksportere passordene dine.</translation>
-<translation id="3256316712990552818">Kopiert til Chromium</translation>
 <translation id="3258596308407688501">Chromium kan ikke lese og skrive til egen datakatalog:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Viktige sikkerhetsforbedringer og nye funksjoner er tilgjengelige i den nyeste versjonen.</translation>
 <translation id="421369550622382712">Oppdag flotte apper, spill, utvidelser og temaer for Chromium.</translation>
 <translation id="4216212958613226427">Dette språket brukes for UI-et i Chromium</translation>
-<translation id="4222580632002216401">Du er nå logget på Chromium. Synkronisering er deaktivert av administratoren din.</translation>
 <translation id="4230135487732243613">Vil du koble Chromium-dataene dine til denne kontoen?</translation>
 <translation id="4271805377592243930">Få hjelp med Chromium</translation>
 <translation id="4285930937574705105">Installeringen mislyktes på grunn av en uspesifisert feil. Lukk Chromium hvis nettleseren kjører, og prøv på nytt.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium er i bakgrunnsmodus.</translation>
 <translation id="4987820182225656817">Gjester kan bruke Chromium uten å etterlate seg spor.</translation>
 <translation id="4994636714258228724">Legg til deg selv i Chromium</translation>
-<translation id="5181952534059945058">Denne siden bruker for mye minne, så Chromium har fjernet noe av innholdet.</translation>
 <translation id="5277894862589591112">For å bruke endringene dine må du starte Chromium på nytt</translation>
 <translation id="5358375970380395591">Du logger deg på med en administrert konto og gir tilhørende administratorer kontroll over Chromium-profilen din. Chromium-dataene dine, slik som apper, bokmerker, loggen, passord og andre innstillinger, knyttes permanent til <ph name="USER_NAME" />. Du kan slette disse dataene via oversikten for Google-kontoer, men du kan ikke knytte disse dataene til en annen konto. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Oppdaterer Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Start på nytt</translation>
 <translation id="5987687638152509985">Oppdater Chromium for å starte synkroniseringen</translation>
 <translation id="6013050204643758987">Chromium OS er basert på <ph name="BEGIN_LINK_CROS_OSS" />tilleggsprogramvare med åpen kildekode<ph name="END_LINK_CROS_OSS" />, i likhet med <ph name="BEGIN_LINK_LINUX_OSS" />Linux (betaversjon)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Lukk</translation>
 <translation id="6055895534982063517">En nyere versjon av Chromium er tilgjengelig, og den er raskere enn noen gang.</translation>
 <translation id="6063093106622310249">&amp;Åpne i Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> er lagt til i Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium startes på nytt om 1 sekund}other{Chromium startes på nytt om # sekunder}}</translation>
 <translation id="6475912303565314141">Den styrer også hvilken side som vises når du starter Chromium.</translation>
-<translation id="6485906693002546646">Du bruker <ph name="PROFILE_EMAIL" /> for synkronisering av Chromium-tingene dine. For å oppdatere alternativene for synkronisering eller bruke Chromium uten Google-konto, kan du gå til <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Avinstaller Chromium</translation>
 <translation id="6570579332384693436">For å rette opp i skrivefeil sender Chromium sender tekst du skriver i tekstfelt, til Google</translation>
 <translation id="6598877126913850652">Gå til innstillinger for Chromium-varsler</translation>
@@ -162,7 +148,6 @@
 Det er mulig at enkelte funksjoner ikke er tilgjengelige. Angi en annen profilkatalog eller bruk en nyere versjon av Chromium.</translation>
 <translation id="6734080038664603509">Oppdater &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium er allerede installert for alle brukerne på datamaskinen din.</translation>
-<translation id="6810143991807788455">Bidra til å gjøre Chromium bedre ved å rapportere inn de gjeldende innstillingene</translation>
 <translation id="6847869444787758381">Med Chromium får du beskjed hvis passordene dine noensinne utsettes for sikkerhetsbrudd</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (kopiert til Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Innstillingerfilen din er ødelagt eller ugyldig.
 
 Chromium kan ikke gjenopprette innstillingen dine.</translation>
-<translation id="7331920710658926971">Installer Chromium på telefonen din. Vi sender deg en SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nytt vindu</translation>
 <translation id="734373864078049451">Her finner du nettinnholdet, bokmerkene og de andre Chromium-tingene dine.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Skjul i Chromium-menyen</translation>
 <translation id="8013436988911883588">Når Chromium har fått tilgang, kan nettsteder spørre deg om tilgang.</translation>
 <translation id="81770708095080097">Denne filen er farlig, så Chromium har blokkert den.</translation>
-<translation id="8222496066431494154">Installer Chromium på telefonen din. Vi sender en SMS til telefonnummeret ditt for kontogjenoppretting (<ph name="PHONE_NUMBER" />)</translation>
 <translation id="8248265253516264921">Hvis et bilde ikke har noen nyttig beskrivelse, prøver Chromium å finne en til deg. For å opprette beskrivelser blir bilder sendt til Google. Du kan slå av dette i innstillingene når som helst.</translation>
-<translation id="8269379391216269538">Bidra til å gjøre Chromium bedre</translation>
 <translation id="8290862415967981663">Denne filen kan være farlig, så Chromium har blokkert den.</translation>
 <translation id="8330519371938183845">Logg på for å synkronisere og gi Chromium et personlig preg på alle enhetene dine</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> brukte Chromium tidligere</translation>
 <translation id="8417404458978023919">{0,plural, =1{Start Chromium på nytt innen én dag}other{Start Chromium på nytt innen # dager}}</translation>
 <translation id="8453117565092476964">Installasjonsarkivet er skadet eller ugyldig. Last ned Chromium på nytt.</translation>
 <translation id="8493179195440786826">Chromium er utdatert</translation>
-<translation id="85843667276690461">Få hjelp med å bruke Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> – The Chromium Authors. Med enerett.</translation>
 <translation id="8619360774459241877">Starter Chromium ...</translation>
 <translation id="8621669128220841554">Installeringen mislyktes på grunn av en uspesifisert feil. Last ned Chromium på nytt.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium forsøker å vise passord. Skriv inn Windows-passordet ditt for å tillate dette.</translation>
 <translation id="8941642502866065432">Kan ikke oppdatere Chromium</translation>
 <translation id="8974095189086268230">Chromium OS er gjort mulig av ytterligere <ph name="BEGIN_LINK_CROS_OSS" />åpen kilde-programvare<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Noen har tidligere logget seg på Chromium på denne datamaskinen som <ph name="ACCOUNT_EMAIL_LAST" />. Hvis det ikke er kontoen din, må du opprette en ny Chromium-bruker for å holde informasjonen din atskilt.
-
-Hvis du logger deg på allikevel, blir Chromium-informasjon som bokmerker, loggen og andre innstillinger slått sammen med <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">For å gjøre Chromium tryggere har vi slått av følgende utvidelse som ikke finnes i <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />, og som kan ha blitt lagt til uten at du vet det.</translation>
 <translation id="9022552996538154597">Logg på Chromium</translation>
-<translation id="9025992965467895364">Denne siden bruker for mye minne, så Chromium har satt den på pause.</translation>
-<translation id="9036189287518468038">Chromium-appvelger</translation>
 <translation id="9089354809943900324">Chromium er utdatert</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium startes på nytt om en time}other{Chromium startes på nytt om # timer}}</translation>
 <translation id="91086099826398415">Åpne linken i en ny &amp;fane i Chromium</translation>
 <translation id="911206726377975832">Vil du slette all nettleserdata også?</translation>
 <translation id="9158494823179993217">Systemadministratoren din har konfigurert Chromium til å åpne en annen nettleser når du går til <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Hvis du kobler fra <ph name="USERNAME" />, slettes loggen din, bokmerkene, innstillingene og andre Chromium-data som er lagret på denne enheten. Data som er lagret i Google-kontoen din, blir ikke tømt og kan administreres på <ph name="GOOGLE_DASHBOARD_LINK" />Google Oversikt<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-Inn)</translation>
-<translation id="9197815481970649201">Du er logget på Chromium</translation>
 <translation id="93478295209880648">Chromium fungerer kanskje ikke riktig fordi den ikke lenger støttes på Windows XP eller Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> krever at du leser og godtar følgende vilkår før du bruker denne enheten. Disse vilkårene utvider, endrer eller begrenser ikke Chromium OS-vilkårene.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_pl.xtb b/chrome/app/resources/chromium_strings_pl.xtb
index 226e1c6b..a541922f 100644
--- a/chrome/app/resources/chromium_strings_pl.xtb
+++ b/chrome/app/resources/chromium_strings_pl.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium chce wyeksportować Twoje hasła. Wpisz swoje hasło do Windows, by na to zezwolić.</translation>
 <translation id="1115445892567829615">Chromium nie może zsynchronizować Twoich danych. Zaktualizuj hasło synchronizacji.</translation>
 <translation id="113122355610423240">Chromium jest domyślną przeglądarką</translation>
-<translation id="1170115874949214249">Zainstaluj Chromium na telefonie. Wyślemy SMS-a pod numer telefonu do odzyskiwania konta.</translation>
-<translation id="1174473354587728743">Używasz komputera, z którego korzystają inne osoby? Teraz możesz skonfigurować Chromium tak, jak chcesz.</translation>
 <translation id="1185134272377778587">Chromium – informacje</translation>
-<translation id="1298199220304005244">Skorzystaj z pomocy dotyczącej używania systemu operacyjnego Chromium</translation>
 <translation id="1396446129537741364">Chromium próbuje pokazać hasła.</translation>
 <translation id="1414495520565016063">Jesteś zalogowany w Chromium.</translation>
 <translation id="151962892725702025">System operacyjny Chromium nie może zsynchronizować danych, ponieważ synchronizacja jest niedostępna w Twojej domenie.</translation>
 <translation id="1524282610922162960">Udostępnij kartę Chromium</translation>
-<translation id="1668054258064581266">Aby po usunięciu konta z Chromium zmiany zostały zastosowane, może być konieczne ponowne załadowanie otwartych kart.</translation>
-<translation id="1688750314291223739">Skonfiguruj synchronizację, by zapisać w internecie własne funkcje przeglądarki i mieć do nich dostęp w Chromium na każdym komputerze.</translation>
 <translation id="1708666629004767631">Dostępna jest nowa, bezpieczniejsza wersja Chromium.</translation>
 <translation id="1766096484055239003">Administrator wymaga od Ciebie ponownego uruchomienia Chromium, by przeglądarka mogła zainstalować aktualizację</translation>
 <translation id="1774152462503052664">Zezwól Chromium na działanie w tle</translation>
 <translation id="1779356040007214683">Aby poprawić bezpieczeństwo Chromium, wyłączyliśmy niektóre rozszerzenia niedostępne w <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />, które mogły zostać dodane bez Twojej wiedzy.</translation>
 <translation id="1808667845054772817">Ponownie zainstaluj Chromium</translation>
-<translation id="1869480248812203386">Możesz pomóc zwiększyć bezpieczeństwo i komfort korzystania z Chromium, automatycznie przesyłając do Google szczegółowe informacje o możliwych zagrożeniach.</translation>
 <translation id="1881322772814446296">Logujesz się na zarządzane konto i przekazujesz jego administratorowi kontrolę nad swoim profilem Chromium. Twoje dane Chromium, takie jak aplikacje, zakładki, historia, hasła i inne ustawienia, zostaną trwale powiązane z użytkownikiem <ph name="USER_NAME" />. Będzie można je usunąć w Panelu kont Google, ale nie będzie można ich powiązać z innym kontem. Możesz też utworzyć nowy profil, by przechowywać swoje dotychczasowe dane Chromium osobno. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Jeśli wyłączysz tę opcję, możesz logować się na stronach Google takich jak Gmail bez logowania się w Chromium</translation>
 <translation id="1929939181775079593">Chromium nie odpowiada. Uruchomić go teraz ponownie?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Administrator prosi Cię o ponowne uruchomienie Chromium, by przeglądarka mogła zainstalować tę aktualizację</translation>
 <translation id="2119636228670142020">System operacyjny &amp;Chromium – informacje</translation>
 <translation id="2241627712206172106">Jeśli dzielisz się komputerem ze znajomymi lub rodziną, wszyscy możecie niezależnie przeglądać internet i po swojemu skonfigurować Chromium.</translation>
-<translation id="2265088490657775772">pobierz Chromium na iPhone'a</translation>
 <translation id="2347108572062610441">To rozszerzenie ustawiło inną stronę wyświetlaną po uruchomieniu Chromium.</translation>
 <translation id="2396765026452590966">Rozszerzenie „<ph name="EXTENSION_NAME" />” ustawiło inną stronę wyświetlaną po uruchomieniu Chromium.</translation>
 <translation id="2483889755041906834">W Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Aby można było przeprowadzić aktualizację, musisz wyłączyć Chromium na tym komputerze. Może to spowodować, że inni zalogowani na nim użytkownicy utracą niezapisane dane.</translation>
 <translation id="2847479871509788944">Usuń z Chromium...</translation>
 <translation id="2886012850691518054">Opcjonalnie: pomóż nam udoskonalać Chromium, wysyłając do Google statystyki użytkowania i raporty o awariach.</translation>
-<translation id="2898082584336937987">Zainstaluj Chromium na telefonie. Wyślemy SMS-a na Twój telefon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium – informacje</translation>
 <translation id="2977470724722393594">Masz aktualną wersję Chromium</translation>
 <translation id="3032787606318309379">Dodawanie do Chromium...</translation>
-<translation id="3046695367536568084">Jeśli chcesz korzystać z aplikacji, musisz zalogować się w Chromium, by Twoje aplikacje, zakładki, historia, hasła i inne ustawienia były synchronizowane między urządzeniami.</translation>
 <translation id="3068515742935458733">Pomóż nam ulepszyć Chromium, przesyłając do Google raporty o awariach i <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Instalator nie może prawidłowo rozpakować archiwum. Pobierz Chromium ponownie.</translation>
 <translation id="3130323860337406239">Chromium używa Twojego mikrofonu.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Otwórz link w oknie inco&amp;gnito Chromium</translation>
 <translation id="3190315855212034486">O kurczę! Chromium uległ awarii. Uruchomić go teraz ponownie?</translation>
 <translation id="3229526316128325841">Chromium chce wyeksportować Twoje hasła.</translation>
-<translation id="3256316712990552818">Skopiowana do Chromium</translation>
 <translation id="3258596308407688501">Chromium nie może odczytać ani zapisać danych w katalogu <ph name="USER_DATA_DIRECTORY" />.</translation>
 <translation id="328888136576916638">Brakuje kluczy interfejsu Google API. Niektóre funkcje Chromium będą wyłączone.</translation>
 <translation id="3296368748942286671">Kontynuuj działanie aplikacji w tle po zamknięciu Chromium</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">W najnowszej wersji zostały wprowadzone ważne poprawki bezpieczeństwa i nowe funkcje.</translation>
 <translation id="421369550622382712">Odkryj znakomite aplikacje, gry, rozszerzenia i motywy do Chromium.</translation>
 <translation id="4216212958613226427">Ten język jest używany do wyświetlania UI Chromium</translation>
-<translation id="4222580632002216401">Jesteś zalogowany w Chromium. Administrator wyłączył synchronizację.</translation>
 <translation id="4230135487732243613">Połączyć Twoje dane Chromium z tym kontem?</translation>
 <translation id="4271805377592243930">Pomoc do Chromium</translation>
 <translation id="4285930937574705105">Instalacja nie powiodła się z powodu nieokreślonego błędu. Jeśli Chromium jest aktualnie uruchomiony, zamknij go i spróbuj ponownie.</translation>
@@ -105,7 +94,6 @@
 <translation id="4943838377383847465">Chromium jest w trybie działania w tle</translation>
 <translation id="4987820182225656817">Goście mogą korzystać z Chromium, nie pozostawiając żadnych danych.</translation>
 <translation id="4994636714258228724">Dodaj siebie do Chromium</translation>
-<translation id="5181952534059945058">Ta strona używa zbyt dużo pamięci, dlatego przeglądarka Chromium usunęła część jej zawartości.</translation>
 <translation id="5277894862589591112">Aby zastosować zmiany, uruchom ponownie Chromium</translation>
 <translation id="5358375970380395591">Logujesz się na zarządzane konto i przekazujesz jego administratorowi kontrolę nad swoim profilem Chromium. Twoje dane Chromium, takie jak aplikacje, zakładki, historia, hasła i inne ustawienia, zostaną trwale powiązane z użytkownikiem <ph name="USER_NAME" />. Będzie można je usunąć w Panelu kont Google, ale nie będzie można ich powiązać z innym kontem. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Aktualizuję Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -128,7 +116,6 @@
 <translation id="5895138241574237353">Uruchom ponownie</translation>
 <translation id="5987687638152509985">Zaktualizuj Chromium, by rozpocząć synchronizację</translation>
 <translation id="6013050204643758987">Opracowanie systemu operacyjnego Chromium było możliwe dzięki dodatkowemu <ph name="BEGIN_LINK_CROS_OSS" />oprogramowaniu open source<ph name="END_LINK_CROS_OSS" />. To samo dotyczy funkcji <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Zamknij</translation>
 <translation id="6055895534982063517">Dostępna jest nowa, szybsza niż kiedykolwiek wersja Chromium.</translation>
 <translation id="6063093106622310249">&amp;Otwórz w Chromium</translation>
 <translation id="6072279588547424923">Rozszerzenie <ph name="EXTENSION_NAME" /> zostało dodane do Chromium</translation>
@@ -150,7 +137,6 @@
 <translation id="6434250628340475518">System operacyjny Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium uruchomi się ponownie za sekundę}few{Chromium uruchomi się ponownie za # sekundy}many{Chromium uruchomi się ponownie za # sekund}other{Chromium uruchomi się ponownie za # sekundy}}</translation>
 <translation id="6475912303565314141">Kontroluje także to, jaka strona wyświetla się po uruchomieniu Chromium.</translation>
-<translation id="6485906693002546646">Używasz adresu <ph name="PROFILE_EMAIL" /> do synchronizowania danych w Chromium. Aby zaktualizować ustawienia synchronizacji lub używać Chromium bez konta Google, wejdź na stronę <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Odinstaluj Chromium</translation>
 <translation id="6570579332384693436">Aby naprawić błędy pisowni, Chromium wysyła tekst wpisany w polach tekstowych do Google</translation>
 <translation id="6598877126913850652">Otwórz ustawienia powiadomień Chromium</translation>
@@ -160,7 +146,6 @@
 Niektóre funkcje mogą być niedostępne. Podaj inny katalog z profilem lub użyj nowszej wersji Chromium.</translation>
 <translation id="6734080038664603509">Aktualizuj &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium jest już zainstalowany dla wszystkich użytkowników tego komputera.</translation>
-<translation id="6810143991807788455">Pomóż ulepszyć Chromium, zgłaszając bieżące ustawienia</translation>
 <translation id="6847869444787758381">Chromium poinformuje Cię, jeśli Twoje hasła dostaną się w niepowołane ręce</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (skopiowana do Chromium)</translation>
@@ -179,7 +164,6 @@
 <translation id="7318036098707714271">Plik ustawień jest uszkodzony lub nieprawidłowy.
 
 Chromium nie może odzyskać ustawień.</translation>
-<translation id="7331920710658926971">Zainstaluj Chromium na telefonie. Na Twój telefon wyślemy SMS-a.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nowe okno</translation>
 <translation id="734373864078049451">Tu są Twoje strony, zakładki i inne dane z Chromium.</translation>
@@ -210,16 +194,13 @@
 <translation id="7979877361127045932">Ukryj w menu Chromium</translation>
 <translation id="8013436988911883588">Gdy Chromium będzie mieć dostęp, strony będą mogły prosić Cię o dostęp.</translation>
 <translation id="81770708095080097">Ten plik jest niebezpieczny, dlatego został zablokowany przez Chromium.</translation>
-<translation id="8222496066431494154">Zainstaluj Chromium na telefonie. Wyślemy SMS-a pod numer telefonu do odzyskiwania konta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Jeśli obraz nie ma przydatnego opisu, Chromium spróbuje go dla Ciebie stworzyć. W tym celu obrazy zostaną wysłane do Google. W każdej chwili możesz wyłączyć tę funkcję w ustawieniach.</translation>
-<translation id="8269379391216269538">Pomóż ulepszyć Chromium</translation>
 <translation id="8290862415967981663">Ten plik może być niebezpieczny, dlatego został zablokowany przez Chromium.</translation>
 <translation id="8330519371938183845">Zaloguj się, by synchronizować dane Chromium i korzystać z własnych ustawień przeglądarki na wielu urządzeniach</translation>
 <translation id="8340674089072921962">Użytkownik <ph name="USER_EMAIL_ADDRESS" /> wcześniej używał Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Ponowne uruchomienie Chromium nastąpi w ciągu 1 dnia}few{Ponowne uruchomienie Chromium nastąpi w ciągu # dni}many{Ponowne uruchomienie Chromium nastąpi w ciągu # dni}other{Ponowne uruchomienie Chromium nastąpi w ciągu # dnia}}</translation>
 <translation id="8453117565092476964">Archiwum instalatora jest uszkodzone lub nieprawidłowe. Pobierz Chromium ponownie.</translation>
 <translation id="8493179195440786826">Chromium jest nieaktualny</translation>
-<translation id="85843667276690461">Pomoc do Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Autorzy Chromium. Wszelkie prawa zastrzeżone.</translation>
 <translation id="8619360774459241877">Uruchamiam Chromium…</translation>
 <translation id="8621669128220841554">Instalacja nie powiodła się z powodu nieokreślonego błędu. Pobierz Chromium ponownie.</translation>
@@ -236,21 +217,14 @@
 <translation id="8907580949721785412">Chromium próbuje pokazać hasła. Podaj swoje hasło do Windows, by na to zezwolić.</translation>
 <translation id="8941642502866065432">Nie można zaktualizować Chromium</translation>
 <translation id="8974095189086268230">Stworzenie systemu operacyjnego Chromium było możliwe dzięki dodatkowym <ph name="BEGIN_LINK_CROS_OSS" />programom o otwartym kodzie źródłowym<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Ktoś zalogował się wcześniej w Chromium na tym komputerze jako <ph name="ACCOUNT_EMAIL_LAST" />. Jeśli to nie jest Twoje konto, utwórz nowego użytkownika Chromium, by Twoje informacje były przechowywane oddzielnie.
-
-Jeśli jednak zalogujesz się teraz, informacje Chromium, takie jak zakładki, historia i inne ustawienia, zostaną połączone z kontem <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Aby poprawić bezpieczeństwo Chromium, wyłączyliśmy to rozszerzenie. Nie jest ono dostępne w <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> i mogło zostać dodane bez Twojej wiedzy.</translation>
 <translation id="9022552996538154597">Zaloguj się w Chromium</translation>
-<translation id="9025992965467895364">Ta strona używa zbyt dużo pamięci, dlatego została wstrzymana w Chromium.</translation>
-<translation id="9036189287518468038">Menu z aplikacjami Chromium</translation>
 <translation id="9089354809943900324">Chromium jest nieaktualny</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium uruchomi się ponownie za godzinę}few{Chromium uruchomi się ponownie za # godziny}many{Chromium uruchomi się ponownie za # godzin}other{Chromium uruchomi się ponownie za # godziny}}</translation>
 <translation id="91086099826398415">O&amp;twórz link w nowej karcie Chromium</translation>
 <translation id="911206726377975832">Czy usunąć także dane przeglądania?</translation>
 <translation id="9158494823179993217">Administrator systemu skonfigurował Chromium w taki sposób, by strona <ph name="TARGET_URL_HOSTNAME" /> otwierała się w alternatywnej przeglądarce.</translation>
-<translation id="918373042641772655">Odłączenie konta <ph name="USERNAME" /> spowoduje wyczyszczenie jego historii, zakładek, ustawień i innych danych Chromium zapisanych na tym urządzeniu. Dane przechowywane na koncie Google nie zostaną usunięte. Możesz nimi zarządzać w <ph name="GOOGLE_DASHBOARD_LINK" />Panelu Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Jesteś teraz zalogowany w Chromium</translation>
 <translation id="93478295209880648">Chromium może działać nieprawidłowo, bo nie jest już zgodny z Windows XP ani Windows Vista</translation>
 <translation id="95514773681268843">Domena <ph name="DOMAIN" /> wymaga, by przed korzystaniem z tego urządzenia przeczytać i zaakceptować Warunki korzystania z usługi. Nie rozszerzają, nie zmieniają ani nie ograniczają one Warunków korzystania z systemu Chromium OS.</translation>
 <translation id="985602178874221306">Autorzy Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_pt-BR.xtb b/chrome/app/resources/chromium_strings_pt-BR.xtb
index 2ae323b..da30300 100644
--- a/chrome/app/resources/chromium_strings_pt-BR.xtb
+++ b/chrome/app/resources/chromium_strings_pt-BR.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">O Chromium quer exportar suas senhas. Digite sua senha do Windows para permitir isso.</translation>
 <translation id="1115445892567829615">O Chromium não pôde sincronizar seus dados. Atualize sua senha de sincronização.</translation>
 <translation id="113122355610423240">O Chromium é seu navegador padrão</translation>
-<translation id="1170115874949214249">Instale o Chromium no seu smartphone. Enviaremos um SMS para o número de recuperação da sua conta.</translation>
-<translation id="1174473354587728743">Você compartilha um computador? Agora é possível configurar o Chromium do jeito que você gosta.</translation>
 <translation id="1185134272377778587">Sobre o Chromium</translation>
-<translation id="1298199220304005244">Obter ajuda para usar o Chromium OS</translation>
 <translation id="1396446129537741364">O Chromium está tentando mostrar senhas.</translation>
 <translation id="1414495520565016063">Você está conectado ao Chromium.</translation>
 <translation id="151962892725702025">O Chromium OS não pôde sincronizar seus dados porque a sincronização não está disponível para seu domínio.</translation>
 <translation id="1524282610922162960">Compartilhar uma guia do Chromium</translation>
-<translation id="1668054258064581266">Depois de remover sua conta do Chromium, pode ser necessário recarregar as guias abertas para que a alteração entre em vigor.</translation>
-<translation id="1688750314291223739">Configure a sincronização para salvar suas características de navegador personalizadas na web e acessá-las do Chromium em qualquer computador.</translation>
 <translation id="1708666629004767631">Há uma nova versão mais segura do Chromium disponível.</translation>
 <translation id="1766096484055239003">Seu administrador exige que você reinicie o Chromium para que uma atualização seja aplicada</translation>
 <translation id="1774152462503052664">Permitir que o Chromium seja executado em segundo plano</translation>
 <translation id="1779356040007214683">Para tornar o Chromium mais seguro, desativamos algumas extensões que não estão listadas na <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> e podem ser sido adicionadas sem seu conhecimento.</translation>
 <translation id="1808667845054772817">Reinstalar o Chromium</translation>
-<translation id="1869480248812203386">Você pode ajudar a tornar o Chromium mais seguro e mais fácil de usar ao informar automaticamente ao Google detalhes sobre possíveis incidentes de segurança.</translation>
 <translation id="1881322772814446296">Você está fazendo login com uma conta gerenciada e concedendo ao administrador da conta o controle sobre seu perfil do Chromium. Seus dados do Chromium, como aplicativos, favoritos, histórico, senhas e outras configurações serão permanentemente vinculados a <ph name="USER_NAME" />. Você pode excluir esses dados pelo painel das Contas do Google, mas não pode associá-los a outra conta. Você tem a opção de criar um novo perfil para manter seus dados existentes do Chromium separados. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Desative essa opção para fazer login em sites do Google, como o Gmail, sem fazer login no Chromium</translation>
 <translation id="1929939181775079593">O Chromium não está respondendo. Reiniciar agora?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Seu administrador pede que você reinicie o Chromium para que essa atualização seja aplicada</translation>
 <translation id="2119636228670142020">Sobre o &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Se você usa um computador compartilhado, seus amigos e familiares podem navegar separadamente e configurar o Chromium da maneira que desejarem.</translation>
-<translation id="2265088490657775772">use o Chromium no seu iPhone</translation>
 <translation id="2347108572062610441">Esta extensão alterou a página que é exibida quando você inicia o Chromium.</translation>
 <translation id="2396765026452590966">A extensão "<ph name="EXTENSION_NAME" />" alterou a página que é exibida quando você inicia o Chromium.</translation>
 <translation id="2483889755041906834">No Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Para atualizar, é necessário interromper o Chromium neste computador. Essa ação pode causar perda de dados não salvos de outros usuários conectados a esta máquina.</translation>
 <translation id="2847479871509788944">Remover do Chromium</translation>
 <translation id="2886012850691518054">Opcional: Ajude a tornar o Chromium melhor enviando automaticamente as estatísticas de uso e os relatórios de erros ao Google.</translation>
-<translation id="2898082584336937987">Instale o Chromium no seu smartphone. Enviaremos um SMS para seu número: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Sobre o &amp;Chromium</translation>
 <translation id="2977470724722393594">O Chromium está atualizado</translation>
 <translation id="3032787606318309379">Adicionando ao Chromium...</translation>
-<translation id="3046695367536568084">É necessário estar conectado ao Chromium para usar os aplicativos. Isso permite que o Chromium sincronize seus aplicativos, favoritos, histórico, senhas e outras configurações entre diferentes dispositivos.</translation>
 <translation id="3068515742935458733">Ajude a melhorar o Chromium. Envie relatórios de erros e <ph name="UMA_LINK" /> para o Google</translation>
 <translation id="3103660991484857065">Ocorreu uma falha no instalador ao descompactar o arquivo. Faça o download do Chromium novamente.</translation>
 <translation id="3130323860337406239">O Chromium está usando seu microfone.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Abrir link na janela &amp;sem rastros do Chromium</translation>
 <translation id="3190315855212034486">O Chromium travou. Reiniciar agora?</translation>
 <translation id="3229526316128325841">O Chromium quer exportar suas senhas.</translation>
-<translation id="3256316712990552818">Copiado no Chromium</translation>
 <translation id="3258596308407688501">O Chromium não pode ler e gravar neste diretório de dados: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">As chaves da API do Google não foram encontradas. Algumas funcionalidades do Chromium serão desativadas.</translation>
 <translation id="3296368748942286671">Continuar executando os aplicativos em segundo plano quando o Chromium for fechado</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">Melhorias de segurança importantes e novos recursos estão disponíveis na versão mais recente.</translation>
 <translation id="421369550622382712">Descubra ótimos aplicativos, jogos, extensões e temas para o Chromium.</translation>
 <translation id="4216212958613226427">Este idioma é usado para exibir a IU do Chromium</translation>
-<translation id="4222580632002216401">Agora, você está conectado ao Chromium. A sincronização está desativada por seu administrador.</translation>
 <translation id="4230135487732243613">Vincular seus dados do Chromium a esta conta?</translation>
 <translation id="4271805377592243930">Ajuda com o Chromium</translation>
 <translation id="4285930937574705105">Ocorreu uma falha na instalação devido a um erro não especificado. Se o Chromium estiver sendo executado, feche-o e tente novamente.</translation>
@@ -105,7 +94,6 @@
 <translation id="4943838377383847465">O Chromium está em modo de segundo plano.</translation>
 <translation id="4987820182225656817">Convidados podem usar o Chromium sem deixar nada para trás.</translation>
 <translation id="4994636714258228724">Cadastrar-se no Chromium</translation>
-<translation id="5181952534059945058">Como esta página usa muita memória, o Chromium removeu parte do conteúdo.</translation>
 <translation id="5277894862589591112">Para que as alterações sejam aplicadas, reinicie o Chromium</translation>
 <translation id="5358375970380395591">Você está fazendo login com uma conta gerenciada e concedendo ao administrador da conta o controle sobre seu perfil do Chromium. Seus dados do Chromium, como aplicativos, favoritos, histórico, senhas e outras configurações serão permanentemente vinculados a <ph name="USER_NAME" />. Você pode excluir esses dados pelo painel das Contas do Google, mas não pode associá-los a outra conta. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Atualizando o Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -128,7 +116,6 @@
 <translation id="5895138241574237353">Reiniciar</translation>
 <translation id="5987687638152509985">Atualize o Chromium para começar a sincronizar</translation>
 <translation id="6013050204643758987">O desenvolvimento do Chromium OS tornou-se possível graças a outros <ph name="BEGIN_LINK_CROS_OSS" />softwares de código aberto<ph name="END_LINK_CROS_OSS" />, como o <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Fechar</translation>
 <translation id="6055895534982063517">Há uma nova versão ainda mais rápida do Chromium disponível.</translation>
 <translation id="6063093106622310249">&amp;Abrir no Chromium</translation>
 <translation id="6072279588547424923">A extensão <ph name="EXTENSION_NAME" /> foi adicionada ao Chromium</translation>
@@ -150,7 +137,6 @@
 <translation id="6434250628340475518">Sistema Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{O Chromium será reiniciado em 1 segundo}one{O Chromium será reiniciado em # segundo}other{O Chromium será reiniciado em # segundos}}</translation>
 <translation id="6475912303565314141">Controla também qual página deve ser exibida quando você inicia o Chromium.</translation>
-<translation id="6485906693002546646">Você está usando <ph name="PROFILE_EMAIL" /> para sincronizar suas informações do Chromium. Para atualizar suas preferências de sincronização ou usar o Chromium sem uma Conta do Google, vá para <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Desinstalar Chromium</translation>
 <translation id="6570579332384693436">Para corrigir erros de ortografia, o Chromium envia ao Google o texto que você digita nos campos de texto</translation>
 <translation id="6598877126913850652">Acessar as configurações de notificação do Chromium</translation>
@@ -158,7 +144,6 @@
 <translation id="6717134281241384636">Seu perfil não pode ser usado porque é de uma versão mais recente do Chromium. Alguns recursos podem não estar disponíveis. Especifique outro diretório de perfil ou use uma versão mais recente do Chromium.</translation>
 <translation id="6734080038664603509">Atualizar o &amp;Chromium</translation>
 <translation id="6734291798041940871">O Chromium já está instalado para todos os usuários do seu computador.</translation>
-<translation id="6810143991807788455">Ajude a melhorar o Chromium informando as configurações atuais</translation>
 <translation id="6847869444787758381">O Chromium avisa se suas senhas forem comprometidas</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copiado para o Chromium)</translation>
@@ -175,7 +160,6 @@
 <translation id="731644333568559921">Atualizar o &amp;Chromium OS</translation>
 <translation id="731795002583552498">Atualizando o Chromium</translation>
 <translation id="7318036098707714271">Seu arquivo de preferências foi corrompido ou não é válido. O Chromium não conseguiu recuperar suas configurações.</translation>
-<translation id="7331920710658926971">Instale o Chromium no seu smartphone. Enviaremos um SMS para seu número.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nova janela</translation>
 <translation id="734373864078049451">Sua Web, seus favoritos e demais conteúdo do Chromium estão aqui.</translation>
@@ -206,16 +190,13 @@
 <translation id="7979877361127045932">Esconder no menu do Chromium</translation>
 <translation id="8013436988911883588">Assim que o Chromium tiver acesso, os sites poderão solicitar acesso.</translation>
 <translation id="81770708095080097">Esse arquivo é perigoso, por isso ele foi bloqueado pelo Chromium.</translation>
-<translation id="8222496066431494154">Instale o Chromium no seu smartphone. Enviaremos um SMS para o número de recuperação da sua conta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Se uma imagem não tiver uma descrição útil, o Chromium tentará fornecer uma para você. As imagens serão enviadas ao Google para a criação de descrições. É possível desativar essa opção nas configurações a qualquer momento.</translation>
-<translation id="8269379391216269538">Ajudar a melhorar o Chromium</translation>
 <translation id="8290862415967981663">Esse arquivo pode ser perigoso, por isso ele foi bloqueado pelo Chromium.</translation>
 <translation id="8330519371938183845">Faça login para sincronizar e personalizar o Chromium em todos os seus dispositivos</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> estava usando o Chromium anteriormente</translation>
 <translation id="8417404458978023919">{0,plural, =1{Reiniciar o Chromium em 1 dia}one{Reiniciar o Chromium em # dia}other{Reiniciar o Chromium em # dias}}</translation>
 <translation id="8453117565092476964">O arquivo de instalação está corrompido ou não é válido. Faça o download do Chromium novamente.</translation>
 <translation id="8493179195440786826">O Chromium está desatualizado</translation>
-<translation id="85843667276690461">Obter ajuda para usar o Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Autores do Chromium. Todos os direitos reservados.</translation>
 <translation id="8619360774459241877">Iniciando o Chromium…</translation>
 <translation id="8621669128220841554">Falha na instalação devido a um erro não especificado. Faça o download do Chromium novamente.</translation>
@@ -232,21 +213,14 @@
 <translation id="8907580949721785412">O Chromium está tentando mostrar senhas. Digite sua senha do Windows para permitir isso.</translation>
 <translation id="8941642502866065432">Não é possível atualizar o Chromium</translation>
 <translation id="8974095189086268230">O Chromium OS tornou-se possível graças a um <ph name="BEGIN_LINK_CROS_OSS" />software de código aberto<ph name="END_LINK_CROS_OSS" /> adicional.</translation>
-<translation id="8985587603644336029">Anteriormente, alguém fez login no Chromium neste computador como <ph name="ACCOUNT_EMAIL_LAST" />. Se esta não for sua conta, crie um novo usuário do Chromium para manter suas informações separadas.
-
-Se você decidir fazer login assim mesmo, as informações do Chromium, como favoritos, histórico e outras configurações serão mescladas com as informações de <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Para tornar o Chromium mais seguro, desativamos a extensão a seguir, que não está listada na <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> e pode ter sido adicionada sem seu conhecimento.</translation>
 <translation id="9022552996538154597">Fazer login no Chromium</translation>
-<translation id="9025992965467895364">Como esta página usa muita memória, o Chromium a pausou.</translation>
-<translation id="9036189287518468038">Iniciador de aplicativos do Chromium</translation>
 <translation id="9089354809943900324">O Chromium está desatualizado</translation>
 <translation id="9093206154853821181">{0,plural, =1{O Chromium será reiniciado em 1 hora}one{O Chromium será reiniciado em # hora}other{O Chromium será reiniciado em # horas}}</translation>
 <translation id="91086099826398415">Abrir link em nova &amp;guia do Chromium</translation>
 <translation id="911206726377975832">Excluir também dados de navegação?</translation>
 <translation id="9158494823179993217">O administrador do seu sistema configurou o Chromium para abrir um navegador alternativo ao acessar <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Ao desconectar <ph name="USERNAME" />, o histórico, os favoritos, as configurações e outros dados do Chromium armazenados neste dispositivo serão excluídos. Os dados armazenados na sua Conta do Google não serão apagados e poderão ser gerenciados no <ph name="GOOGLE_DASHBOARD_LINK" />Painel de Controle do Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Você está conectado ao Chromium no momento</translation>
 <translation id="93478295209880648">É possível que o Chromium não funcione corretamente, porque ele não é mais compatível com o Windows XP ou Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> requer que você leia e aceite os Termos de Serviço a seguir antes de utilizar o serviço. Esses termos não ampliam, modificam nem limitam os Termos do Chromium OS.</translation>
 <translation id="985602178874221306">Autores do Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_pt-PT.xtb b/chrome/app/resources/chromium_strings_pt-PT.xtb
index 10f4921..73f5b26 100644
--- a/chrome/app/resources/chromium_strings_pt-PT.xtb
+++ b/chrome/app/resources/chromium_strings_pt-PT.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">O Chromium pretende exportar as suas palavras-passe. Escreva a sua palavra-passe do Windows para permitir esta ação.</translation>
 <translation id="1115445892567829615">O Chromium não conseguiu sincronizar os dados. Atualize a frase de acesso da Sincronização.</translation>
 <translation id="113122355610423240">O Chromium é o seu navegador predefinido</translation>
-<translation id="1170115874949214249">Instale o Chromium no telemóvel. Vamos enviar uma SMS para o seu número de telefone de recuperação de conta.</translation>
-<translation id="1174473354587728743">Partilha um computador? Agora pode configurar o Chromium exatamente como pretende.</translation>
 <translation id="1185134272377778587">Acerca do Chromium</translation>
-<translation id="1298199220304005244">Obter ajuda para utilizar o SO Chromium</translation>
 <translation id="1396446129537741364">O Chromium está a tentar mostrar palavras-passe.</translation>
 <translation id="1414495520565016063">Tem sessão iniciada no Chromium!</translation>
 <translation id="151962892725702025">O SO Chromium não conseguiu sincronizar os dados porque a sincronização não está disponível para o seu domínio.</translation>
 <translation id="1524282610922162960">Partilhe um separador do Chromium</translation>
-<translation id="1668054258064581266">Depois de remover a sua conta do Chromium, poderá ter de recarregar os separadores abertos para que as alterações tenham efeito.</translation>
-<translation id="1688750314291223739">Configure a Sincronização para guardar as suas funcionalidades personalizadas do navegador para a Web e aceder às mesmas a partir do Chromium em qualquer computador.</translation>
 <translation id="1708666629004767631">Está disponível uma versão nova e mais segura do Chromium.</translation>
 <translation id="1766096484055239003">O seu administrador necessita que reinicie o Chromium para aplicar uma atualização.</translation>
 <translation id="1774152462503052664">Permitir que o Chromium seja executado em segundo plano</translation>
 <translation id="1779356040007214683">Para tornar o Chromium mais seguro, desativámos algumas extensões que não estão listadas na <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> e é possível que tenham sido adicionadas sem o seu conhecimento.</translation>
 <translation id="1808667845054772817">Reinstalar Chromium</translation>
-<translation id="1869480248812203386">Pode contribuir para tornar o Chromium mais seguro e fácil de utilizar ao comunicar automaticamente os detalhes de possíveis incidentes de segurança à Google.</translation>
 <translation id="1881322772814446296">Está a iniciar sessão com uma conta gerida e a permitir que o gestor controle o seu perfil do Chromium. Os seus dados do Chromium, como aplicações, marcadores, histórico, palavras-passe e outras definições, ficarão associados definitivamente a <ph name="USER_NAME" />. Poderá eliminar estes dados através do Painel de Controlo das Contas Google, mas não poderá associá-los a outra conta. Opcionalmente, pode criar um perfil novo para manter os seus dados atuais do Chromium em separado. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Ao desativar esta opção, pode iniciar sessão nos sites Google como o Gmail sem iniciar sessão no Chromium.</translation>
 <translation id="1929939181775079593">O Chromium não responde. Reiniciar agora?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">O seu administrador solicita-lhe que reinicie o Chromium para aplicar esta atualização.</translation>
 <translation id="2119636228670142020">Acerca do SO &amp;Chromium</translation>
 <translation id="2241627712206172106">Se partilhar um computador, os amigos e os familiares podem navegar separadamente e configurar o Chromium da forma que quiserem.</translation>
-<translation id="2265088490657775772">obtenha o Chromium no seu iPhone</translation>
 <translation id="2347108572062610441">Esta extensão alterou a página apresentada quando inicia o Chromium.</translation>
 <translation id="2396765026452590966">A extensão "<ph name="EXTENSION_NAME" />" alterou a página apresentada quando inicia o Chromium.</translation>
 <translation id="2483889755041906834">No Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Para atualizar, deve interromper a execução do Chromium neste computador. Tal pode fazer com que outros utilizadores com sessão iniciada neste computador percam alterações não guardadas.</translation>
 <translation id="2847479871509788944">Remover do Chromium...</translation>
 <translation id="2886012850691518054">Opcional: ajude a melhorar o Chromium enviando automaticamente estatísticas de utilização e relatórios de falhas para a Google.</translation>
-<translation id="2898082584336937987">Instale o Chromium no telemóvel. Vamos enviar uma SMS para o seu telemóvel: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Acerca do &amp;Chromium</translation>
 <translation id="2977470724722393594">O Chromium está atualizado</translation>
 <translation id="3032787606318309379">A adicionar ao Chromium...</translation>
-<translation id="3046695367536568084">É obrigatório ter sessão iniciada no Chromium para utilizar aplicações. Deste modo, o Chromium pode sincronizar as aplicações, os marcadores, o histórico, as palavras-passe e outras definições entre dispositivos.</translation>
 <translation id="3068515742935458733">Ajudar a melhorar o Chromium ao enviar relatórios de falhas e <ph name="UMA_LINK" /> à Google</translation>
 <translation id="3103660991484857065">Houve uma falha no programa de instalação ao descompactar o arquivo. Transfira novamente o Chromium.</translation>
 <translation id="3130323860337406239">O Chromium está a utilizar o microfone.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Abrir link numa janela de nave&amp;gação anónima do Chromium</translation>
 <translation id="3190315855212034486">Ups! O Chromium falhou. Reiniciar agora?</translation>
 <translation id="3229526316128325841">O Chromium pretende exportar as suas palavras-passe.</translation>
-<translation id="3256316712990552818">Copiado para o Chromium</translation>
 <translation id="3258596308407688501">O Chromium não consegue ler e escrever no respetivo diretório de dados:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Estão disponíveis na versão mais recente melhorias de segurança importantes e novas funcionalidades.</translation>
 <translation id="421369550622382712">Descubra aplicações, jogos, extensões e temas fantásticos para o Chromium.</translation>
 <translation id="4216212958613226427">Este idioma é utilizado para apresentar a IU do Chromium</translation>
-<translation id="4222580632002216401">Tem agora sessão iniciada no Chromium! A sincronização foi desativada pelo seu gestor.</translation>
 <translation id="4230135487732243613">Associar os seus dados do Chromium a esta conta?</translation>
 <translation id="4271805377592243930">Obter ajuda relacionada com o Chromium</translation>
 <translation id="4285930937574705105">A instalação falhou devido a um erro não especificado. Se o Chromium estiver em execução, feche-o e tente de novo.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">O Chromium está no modo em segundo plano.</translation>
 <translation id="4987820182225656817">Os convidados podem utilizar o Chromium sem perder qualquer funcionalidade.</translation>
 <translation id="4994636714258228724">Adicionar-se ao Chromium</translation>
-<translation id="5181952534059945058">Esta página utiliza demasiada memória, pelo que o Chromium removeu algum conteúdo.</translation>
 <translation id="5277894862589591112">Para aplicar as alterações, reinicie o Chromium.</translation>
 <translation id="5358375970380395591">Está a iniciar sessão com uma conta gerida e a permitir que o gestor controle o seu perfil do Chromium. Os seus dados do Chromium, como aplicações, marcadores, histórico, palavras-passe e outras definições, ficarão associados definitivamente a <ph name="USER_NAME" />. Poderá eliminar estes dados através do Painel de Controlo das Contas Google, mas não poderá associá-los a outra conta. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">A atualizar o Chromium (<ph name="PROGRESS_PERCENT" />)…</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Reiniciar</translation>
 <translation id="5987687638152509985">Atualize o Chromium para iniciar a sincronização</translation>
 <translation id="6013050204643758987">Foi possível conceber o Chromium OS devido a <ph name="BEGIN_LINK_CROS_OSS" />software de código aberto<ph name="END_LINK_CROS_OSS" /> adicional, como o <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Fechar</translation>
 <translation id="6055895534982063517">Está disponível uma nova versão do Chromium, mais rápida do que nunca.</translation>
 <translation id="6063093106622310249">&amp;Abrir no Chromium</translation>
 <translation id="6072279588547424923">A extensão <ph name="EXTENSION_NAME" /> foi adicionada ao Chromium.</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Sistema Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{O Chromium será reiniciado dentro de 1 segundo}other{O Chromium será reiniciado dentro de # segundos}}</translation>
 <translation id="6475912303565314141">Também controla a página apresentada quando inicia o Chromium.</translation>
-<translation id="6485906693002546646">Está a utilizar <ph name="PROFILE_EMAIL" /> para sincronizar os seus conteúdos do Chromium. Para atualizar a preferência de sincronização ou utilizar o Chromium sem uma Conta Google, aceda a <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Desinstalar o Chromium</translation>
 <translation id="6570579332384693436">Para corrigir erros ortográficos, o Chromium envia o texto que introduzir nos campos de texto para a Google.</translation>
 <translation id="6598877126913850652">Aceder às definições de notificação do Chromium</translation>
@@ -162,7 +148,6 @@
 Algumas funcionalidades podem não estar disponíveis. Especifique um diretório de perfil diferente ou utilize uma versão mais recente do Chromium.</translation>
 <translation id="6734080038664603509">Atualizar o &amp;Chromium</translation>
 <translation id="6734291798041940871">O Chromium já está instalado para todos os utilizadores no seu computador.</translation>
-<translation id="6810143991807788455">Ajude a melhorar o Chromium ao comunicar as definições atuais</translation>
 <translation id="6847869444787758381">O Chromium indica-lhe se as suas palavras-passe forem comprometidas.</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copiado para o Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">O ficheiro de preferências está danificado ou não é válido.
 
 O Chromium não consegue recuperar as suas definições.</translation>
-<translation id="7331920710658926971">Instale o Chromium no telemóvel. Vamos enviar uma SMS para o seu telemóvel.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nova janela</translation>
 <translation id="734373864078049451">A sua Web, os seus marcadores e os seus outros itens do Chromium estão aqui.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Ocultar no menu do Chromium</translation>
 <translation id="8013436988911883588">Assim que o Chromium tiver acesso, os Websites poderão solicitar-lhe o acesso.</translation>
 <translation id="81770708095080097">Este ficheiro é perigoso. Como tal, o Chromium bloqueou-o.</translation>
-<translation id="8222496066431494154">Instale o Chromium no telemóvel. Vamos enviar uma SMS para o seu número de telefone de recuperação de conta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Se uma imagem não tiver uma descrição útil, o Chromium tenta fornecer uma. Para criar as descrições, são enviadas imagens para a Google. Pode desativar esta opção nas definições em qualquer altura.</translation>
-<translation id="8269379391216269538">Ajudar a melhorar o Chromium</translation>
 <translation id="8290862415967981663">Este ficheiro pode ser perigoso. Como tal, o Chromium bloqueou-o.</translation>
 <translation id="8330519371938183845">Inicie sessão para sincronizar e personalizar o Chromium em todos os dispositivos.</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> estava a utilizar o Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Reinicie o Chromium dentro de um dia}other{Reinicie o Chromium dentro de # dias}}</translation>
 <translation id="8453117565092476964">O arquivo do programa de instalação está corrompido ou não é válido. Transfira novamente o Chromium.</translation>
 <translation id="8493179195440786826">O Chromium Está Desatualizado</translation>
-<translation id="85843667276690461">Obter ajuda para utilizar o Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Os autores do Chromium. Todos os direitos reservados.</translation>
 <translation id="8619360774459241877">A iniciar o Chromium…</translation>
 <translation id="8621669128220841554">A instalação falhou devido a um erro não especificado. Transfira novamente o Chromium .</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">O Chromium está a tentar mostrar palavras-passe. Escreva a sua palavra-passe do Windows para permitir esta ação.</translation>
 <translation id="8941642502866065432">Não é possível atualizar o Chromium.</translation>
 <translation id="8974095189086268230">O lançamento do SO Chromium foi possível devido a <ph name="BEGIN_LINK_CROS_OSS" />software de código aberto<ph name="END_LINK_CROS_OSS" /> adicional.</translation>
-<translation id="8985587603644336029">Anteriormente, alguém iniciou sessão no Chromium neste computador com a conta <ph name="ACCOUNT_EMAIL_LAST" />. Se esta conta não for sua, crie um novo utilizador do Chromium para manter as informações em separado.
-
-Se continuar com este início de sessão, as informações do Chromium, como marcadores, histórico e outras definições, fundir-se-ão com <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Para tornar o Chromium mais seguro, desativámos a seguinte extensão, que não está listada na <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />, e é possível que tenha sido adicionada sem o seu conhecimento.</translation>
 <translation id="9022552996538154597">Iniciar sessão no Chromium</translation>
-<translation id="9025992965467895364">Esta página utiliza demasiada memória, pelo que o Chromium a colocou em pausa.</translation>
-<translation id="9036189287518468038">Iniciador de Aplicações do Chromium</translation>
 <translation id="9089354809943900324">O Chromium está desatualizado</translation>
 <translation id="9093206154853821181">{0,plural, =1{O Chromium será reiniciado dentro de uma hora}other{O Chromium será reiniciado dentro de # horas}}</translation>
 <translation id="91086099826398415">Abrir link num novo &amp;separador do Chromium</translation>
 <translation id="911206726377975832">Eliminar também os seus dados de navegação?</translation>
 <translation id="9158494823179993217">O administrador do sistema configurou o Chromium para abrir um navegador alternativo, de modo a aceder a <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Desligar <ph name="USERNAME" /> limpará o seu histórico, os marcadores, as definições e outros dados do Chromium armazenados neste dispositivo. Os dados armazenados na Conta Google não serão limpos e podem ser geridos no <ph name="GOOGLE_DASHBOARD_LINK" />Painel de controlo Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Tem agora sessão iniciada no Chromium</translation>
 <translation id="93478295209880648">O Chromium pode não funcionar corretamente, uma vez que já não é suportado no Windows XP ou no Windows Vista.</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> obriga-o a ler e aceitar os seguintes Termos de Utilização antes de utilizar este dispositivo. Estes termos não ampliam, modificam nem limitam os Termos do SO Chromium.</translation>
 <translation id="985602178874221306">Os Autores do Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_ro.xtb b/chrome/app/resources/chromium_strings_ro.xtb
index f4f1c6f..fbd456d 100644
--- a/chrome/app/resources/chromium_strings_ro.xtb
+++ b/chrome/app/resources/chromium_strings_ro.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium vrea să îți exporte parolele. Pentru a permite asta, introdu parola pentru Windows.</translation>
 <translation id="1115445892567829615">Chromium nu a putut sincroniza datele. Actualizați expresia de acces pentru sincronizare.</translation>
 <translation id="113122355610423240">Chromium este browserul prestabilit</translation>
-<translation id="1170115874949214249">Instalează Chromium pe telefon. Vom trimite un SMS la numărul de telefon de recuperare a contului.</translation>
-<translation id="1174473354587728743">Folosești un computer în comun? Acum poți să configurezi Chromium exact cum îți place.</translation>
 <translation id="1185134272377778587">Despre Chromium</translation>
-<translation id="1298199220304005244">Obțineți ajutor în legătură cu utilizarea sistemului de operare Chromium</translation>
 <translation id="1396446129537741364">Chromium încearcă să afișeze parolele.</translation>
 <translation id="1414495520565016063">V-ați conectat la Chromium!</translation>
 <translation id="151962892725702025">Sistemul de operare Chromium nu a putut sincroniza datele, deoarece sincronizarea nu este disponibilă pentru domeniul dvs.</translation>
 <translation id="1524282610922162960">Distribuie o filă Chromium</translation>
-<translation id="1668054258064581266">După ce eliminați contul din Chromium, poate fi necesar să reîncărcați filele deschise pentru ca schimbarea să se aplice.</translation>
-<translation id="1688750314291223739">Configurați sincronizarea pentru a salva funcțiile personalizate ale browserului pe web și accesați-le din Chromium de pe orice computer.</translation>
 <translation id="1708666629004767631">Chromium este disponibil într-o versiune nouă și mai sigură.</translation>
 <translation id="1766096484055239003">Administratorul solicită să relansezi Chromium pentru a aplica o actualizare</translation>
 <translation id="1774152462503052664">Permiteți Chromium să ruleze în fundal</translation>
 <translation id="1779356040007214683">Pentru mai multă siguranță în Chromium, am dezactivat câteva extensii care nu sunt incluse în <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> și care este posibil să fi fost adăugate fără știrea dvs.</translation>
 <translation id="1808667845054772817">Reinstalați Chromium</translation>
-<translation id="1869480248812203386">Puteți contribui la un produs Chromium mai sigur și mai ușor de folosit raportând automat la Google detaliile eventualelor incidente privind securitatea.</translation>
 <translation id="1881322772814446296">Vă conectați cu un cont gestionat și îi permiteți administratorului acestuia controlul asupra profilului dvs. Chromium. Datele Chromium, cum ar fi aplicațiile, marcajele, istoricul, parolele și alte setări vor fi asociate definitiv cu <ph name="USER_NAME" />. Veți putea să ștergeți aceste date prin intermediul Tabloului de bord pentru Conturi Google, însă nu veți putea să asociați aceste date cu alt cont. Aveți opțiunea de a crea un profil nou, pentru a păstra separat datele Chromium existente. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Dacă dezactivezi, te poți conecta la site-uri Google ca Gmail fără a te conecta la Chromium</translation>
 <translation id="1929939181775079593">Chromium nu mai răspunde. Îl reporniți acum?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Administratorul solicită să relansezi Chromium pentru a aplica această actualizare</translation>
 <translation id="2119636228670142020">Despre sistemul de operare &amp;Chromium</translation>
 <translation id="2241627712206172106">Dacă permiteți accesul la un computer, familia și prietenii pot să navigheze separat și să configureze Chromium cum doresc.</translation>
-<translation id="2265088490657775772">descarcă Chromium pe iPhone</translation>
 <translation id="2347108572062610441">Această extensie a modificat ce pagină se afișează când pornești Chromium.</translation>
 <translation id="2396765026452590966">Extensia „<ph name="EXTENSION_NAME" />” a modificat ce pagină se afișează când pornești Chromium.</translation>
 <translation id="2483889755041906834">În Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Pentru a se actualiza, Chromium trebuie să nu mai ruleze pe acest computer. Din acest motiv, alți utilizatori conectați la acest computer pot pierde modificări nesalvate.</translation>
 <translation id="2847479871509788944">Elimină din Chromium...</translation>
 <translation id="2886012850691518054">Opțional: contribuie la îmbunătățirea Chromium prin trimiterea automată de statistici privind utilizarea și rapoarte de blocare la Google.</translation>
-<translation id="2898082584336937987">Instalează Chromium pe telefon. Vom trimite un SMS pe telefonul tău: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Despre &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium este actualizat</translation>
 <translation id="3032787606318309379">Se adaugă la Chromium...</translation>
-<translation id="3046695367536568084">Trebuie să vă conectați la Chromium pentru a folosi aplicațiile. Astfel, Chromium vă poate sincroniza aplicațiile, marcajele, istoricul, parolele și alte setări pe toate dispozitivele.</translation>
 <translation id="3068515742935458733">Contribuie la îmbunătățirea proiectului Chromium trimițând la Google rapoarte de blocare și <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Programul de instalare nu a putut decomprima arhiva. Descărcați din nou Chromium.</translation>
 <translation id="3130323860337406239">Chromium utilizează microfonul.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Deschide linkul într-o fereastră Chromium inco&amp;gnito</translation>
 <translation id="3190315855212034486">Hopa! Chromium s-a închis cu eroare. Reporniți acum?</translation>
 <translation id="3229526316128325841">Chromium vrea să îți exporte parolele.</translation>
-<translation id="3256316712990552818">Copiat în Chromium</translation>
 <translation id="3258596308407688501">Chromium nu poate citi și scrie în directorul propriu de date:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">În cea mai recentă versiune sunt disponibile îmbunătățiri de securitate și funcții noi importante.</translation>
 <translation id="421369550622382712">Descoperă aplicații, jocuri, extensii și teme extraordinare pentru Chromium.</translation>
 <translation id="4216212958613226427">Această limbă este folosită pentru a afișa IU Chromium</translation>
-<translation id="4222580632002216401">Acum sunteți conectat(ă) la Chromium! Sincronizarea este dezactivată de administrator.</translation>
 <translation id="4230135487732243613">Vă conectați datele Chromium cu acest cont?</translation>
 <translation id="4271805377592243930">Obține ajutor privind Chromium</translation>
 <translation id="4285930937574705105">Instalarea a eșuat din cauza unei erori necunoscute. Dacă Chromium rulează în acest moment, închideți-l și încercați din nou.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium este în modul fundal.</translation>
 <translation id="4987820182225656817">Invitații pot folosi Chromium fără a lăsa nicio urmă.</translation>
 <translation id="4994636714258228724">Adăugați-vă la Chromium</translation>
-<translation id="5181952534059945058">Această pagină folosește prea multă memorie, prin urmare Chromium a eliminat o parte din conținut.</translation>
 <translation id="5277894862589591112">Pentru a aplica modificările, relansează Chromium</translation>
 <translation id="5358375970380395591">Vă conectați cu un cont gestionat și îi permiteți administratorului acestuia controlul asupra profilului dvs. Chromium. Datele Chromium, cum ar fi aplicațiile, marcajele, istoricul, parolele și alte setări vor fi asociate definitiv cu <ph name="USER_NAME" />. Veți putea să ștergeți aceste date prin intermediul Tabloului de bord pentru Conturi Google, însă nu veți putea să asociați aceste date cu alt cont. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium se actualizează (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Reîncepe</translation>
 <translation id="5987687638152509985">Actualizează Chromium pentru a începe sincronizarea</translation>
 <translation id="6013050204643758987">Sistemul de operare Chromium este posibil datorită unui <ph name="BEGIN_LINK_CROS_OSS" />software open source<ph name="END_LINK_CROS_OSS" /> suplimentar, cum ar fi <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Închide</translation>
 <translation id="6055895534982063517">Este disponibilă o nouă versiune Chromium, iar aceasta este mai rapidă ca oricând.</translation>
 <translation id="6063093106622310249">&amp;Deschide în Chromium</translation>
 <translation id="6072279588547424923">Extensia <ph name="EXTENSION_NAME" /> a fost adăugată la Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Sistemul de operare Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium va reporni într-o secundă}few{Chromium va reporni în # secunde}other{Chromium va reporni în # de secunde}}</translation>
 <translation id="6475912303565314141">Stabilește și ce pagină se afișează când porniți Chromium.</translation>
-<translation id="6485906693002546646">În prezent, folosiți <ph name="PROFILE_EMAIL" /> pentru a sincroniza datele Chromium. Pentru a actualiza preferințele de sincronizare sau pentru a folosi Chromium fără un Cont Google, accesați <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Dezinstalați Chromium</translation>
 <translation id="6570579332384693436">Pentru a corecta erorile de scriere, Chromium trimite la Google textul pe care îl introduci în câmpurile de text</translation>
 <translation id="6598877126913850652">Accesează setările pentru notificări Chromium</translation>
@@ -162,7 +148,6 @@
 Este posibil ca unele funcții să nu fie disponibile. Specificați un director de profil diferit sau utilizați o versiune mai nouă de Chromium.</translation>
 <translation id="6734080038664603509">Actualizați &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium este instalat deja pentru toți utilizatorii de pe computerul tău.</translation>
-<translation id="6810143991807788455">Contribuie la îmbunătățirea browserului Chromium raportând setările actuale</translation>
 <translation id="6847869444787758381">Chromium te anunță dacă parolele tale sunt compromise</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (copiat în Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Fișierul de preferințe este fie deteriorat, fie nevalid.
 
 Chromium nu poate recupera setările.</translation>
-<translation id="7331920710658926971">Instalează Chromium pe telefon. Vom trimite un SMS pe telefonul tău.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Fereastră nouă</translation>
 <translation id="734373864078049451">Experiența web personalizată, marcajele și celelalte date Chromium chiar aici.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Ascunde în meniul Chromium</translation>
 <translation id="8013436988911883588">Odată ce Chromium are acces, site-urile web îți vor putea solicita accesul.</translation>
 <translation id="81770708095080097">Fișierul este periculos, așadar Chromium l-a blocat.</translation>
-<translation id="8222496066431494154">Instalează Chromium pe telefon. Vom trimite un SMS la numărul de telefon de recuperare a contului: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Dacă o imagine nu are o descriere utilă, Chromium va încerca să o completeze. Pentru a crea descrieri, imaginile sunt trimise la Google. Poți dezactiva această opțiune oricând din setări.</translation>
-<translation id="8269379391216269538">Să îmbunătățim Chromium</translation>
 <translation id="8290862415967981663">Este posibil ca fișierul să fie periculos, așadar Chromium l-a blocat.</translation>
 <translation id="8330519371938183845">Conectează-te pentru a sincroniza și a personaliza Chromium pe toate dispozitivele</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> a folosit Chromium anterior</translation>
 <translation id="8417404458978023919">{0,plural, =1{Relansează Chromium în cel mult o zi}few{Relansează Chromium în cel mult # zile}other{Relansează Chromium în cel mult # de zile}}</translation>
 <translation id="8453117565092476964">Arhiva programului de instalare este deteriorată sau nevalidă. Descărcați din nou Chromium.</translation>
 <translation id="8493179195440786826">Chromium nu este actualizat</translation>
-<translation id="85843667276690461">Obțineți ajutor în legătură cu utilizarea Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> The Chromium Authors. Toate drepturile rezervate.</translation>
 <translation id="8619360774459241877">Se lansează Chromium...</translation>
 <translation id="8621669128220841554">Instalarea nu a reușit din cauza unei erori neprecizate. Descărcați Chromium din nou.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium încearcă să afișeze parolele. Pentru a permite acest lucru, introduceți parola pentru Windows.</translation>
 <translation id="8941642502866065432">Chromium nu se poate actualiza</translation>
 <translation id="8974095189086268230">La realizarea sistemului de operare Chromium au contribuit și alte programe <ph name="BEGIN_LINK_CROS_OSS" />software open source<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Un alt utilizator s-a conectat anterior la Chromium de pe acest computer ca <ph name="ACCOUNT_EMAIL_LAST" />. Dacă acesta nu este contul dvs., creați un nou utilizator Chromium, pentru a vă păstra separat datele.
-
-Dacă totuși vă conectați, informațiile Chromium cum ar fi marcajele, istoricul și alte setări vor fi îmbinate cu <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Pentru mai multă siguranță în Chromium, am dezactivat următoarea extensie care nu este inclusă în <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> și care este posibil să fi fost adăugată fără știrea ta.</translation>
 <translation id="9022552996538154597">Conectați-vă la Chromium</translation>
-<translation id="9025992965467895364">Această pagină folosește prea multă memorie, prin urmare Chromium a întrerupt-o.</translation>
-<translation id="9036189287518468038">Lansatorul de aplicații Chromium</translation>
 <translation id="9089354809943900324">Chromium nu este actualizat</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium se va relansa într-o oră}few{Chromium se va relansa în # ore}other{Chromium se va relansa în # de ore}}</translation>
 <translation id="91086099826398415">Deschide linkul într-o &amp;filă Chromium nouă</translation>
 <translation id="911206726377975832">Ștergi și datele de navigare?</translation>
 <translation id="9158494823179993217">Administratorul de sistem a configurat Chromium să deschidă un browser secundar pentru a accesa <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Dacă deconectați utilizatorul <ph name="USERNAME" />, vor fi șterse istoricul, marcajele, setările și alte date Chromium salvate pe acest dispozitiv. Datele salvate în Contul Google nu vor fi șterse și pot fi gestionate din <ph name="GOOGLE_DASHBOARD_LINK" />Tabloul de bord Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Acum te-ai conectat la Chromium</translation>
 <translation id="93478295209880648">Este posibil ca Chromium să nu funcționeze corespunzător, deoarece nu mai este acceptat pe Windows XP sau Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> necesită să citiți și să acceptați Termenii și condițiile următoare înainte de a utiliza acest dispozitiv. Acești termeni nu extind, nu modifică și nu limitează Termenii pentru sistemul de operare Chromium.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_ru.xtb b/chrome/app/resources/chromium_strings_ru.xtb
index 408d1ec..87e6a02 100644
--- a/chrome/app/resources/chromium_strings_ru.xtb
+++ b/chrome/app/resources/chromium_strings_ru.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Чтобы экспортировать пароли из Chromium, введите пароль своего аккаунта Windows.</translation>
 <translation id="1115445892567829615">Chromium не удалось синхронизировать данные. Обновите кодовую фразу в Sync.</translation>
 <translation id="113122355610423240">Chromium используется как браузер по умолчанию</translation>
-<translation id="1170115874949214249">Установите Chromium на телефон. Мы отправим SMS на номер, указанный в вашем аккаунте.</translation>
-<translation id="1174473354587728743">Пользуетесь компьютером вместе с коллегой или другом? Теперь каждый из вас сможет настроить Chromium по своему вкусу.</translation>
 <translation id="1185134272377778587">О Chromium</translation>
-<translation id="1298199220304005244">Помощь по использованию Chromium OS</translation>
 <translation id="1396446129537741364">Вводимые пароли будут отображаться в Chromium.</translation>
 <translation id="1414495520565016063">Добро пожаловать в Chromium!</translation>
 <translation id="151962892725702025">Не удалось синхронизировать данные, поскольку сервис Sync недоступен в вашем домене.</translation>
 <translation id="1524282610922162960">Откройте доступ к вкладке Chromium</translation>
-<translation id="1668054258064581266">После удаления вашего аккаунта из Chromium может понадобиться перезагрузить открытые вкладки, чтобы изменения вступили в силу.</translation>
-<translation id="1688750314291223739">Настройте синхронизацию, чтобы сохранить в облаке персонализированные функции браузера и получить к ним доступ из Chromium с любого компьютера.</translation>
 <translation id="1708666629004767631">Доступна новая, еще более быстрая версия Chromium.</translation>
 <translation id="1766096484055239003">Администратор требует перезапустить Chromium для установки обновления</translation>
 <translation id="1774152462503052664">Разрешить Chromium работать в фоновом режиме</translation>
 <translation id="1779356040007214683">Чтобы обеспечить безопасность ваших данных, некоторые расширения Chromium были отключены, так как <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> не содержит сведений о них, то есть эти компоненты могли быть установлены без вашего ведома.</translation>
 <translation id="1808667845054772817">Переустановить Chromium</translation>
-<translation id="1869480248812203386">Вы можете сделать защиту Chromium ещё надежнее. Просто разрешите автоматически отправлять в Google информацию о возможных проблемах безопасности</translation>
 <translation id="1881322772814446296">Выполнив вход в управляемый аккаунт, вы предоставляете администратору право контролировать настройки вашего профиля Chromium. Ваши данные Chromium (приложения, закладки, история, пароли и другие настройки) будут временно связаны с аккаунтом <ph name="USER_NAME" />. Эти данные можно удалить в Личном кабинете Google, но их нельзя связать с другим аккаунтом. Чтобы сохранить данные Chromium отдельно, создайте новый профиль. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Отключив эту функцию, вы сможете входить в систему на сайтах Google (например, Gmail) без необходимости выполнять вход в Chromium.</translation>
 <translation id="1929939181775079593">Chromium не отвечает. Перезапустить сейчас?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Администратор просит перезапустить Chromium для установки обновления</translation>
 <translation id="2119636228670142020">О &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Если, кроме вас, компьютером пользуется кто-то ещё, например родные или друзья, они тоже смогут настроить Chromium на свой вкус.</translation>
-<translation id="2265088490657775772">скачайте Chromium для iOS</translation>
 <translation id="2347108572062610441">Расширение изменило стартовую страницу Chromium.</translation>
 <translation id="2396765026452590966">Расширение "<ph name="EXTENSION_NAME" />" изменило стартовую страницу Chromium.</translation>
 <translation id="2483889755041906834">В Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Чтобы выполнить обновление, необходимо остановить работу Chromium. В результате могут быть потеряны несохраненные изменения, внесенные другими пользователями на этом компьютере.</translation>
 <translation id="2847479871509788944">Удалить из Chromium</translation>
 <translation id="2886012850691518054">(Необязательно) Помогите сделать Chromium лучше, автоматически отправляя статистику использования и отчеты об ошибках в Google.</translation>
-<translation id="2898082584336937987">Установите Chromium на телефон. Мы отправим вам SMS на номер <ph name="PHONE_NUMBER" />.</translation>
 <translation id="2910007522516064972">О &amp;Chromium</translation>
 <translation id="2977470724722393594">Вы используете последнюю версию Chromium</translation>
 <translation id="3032787606318309379">Добавление в Chromium...</translation>
-<translation id="3046695367536568084">Для работы с приложениями необходимо выполнить вход в Chromium. Это обеспечит синхронизацию приложений, закладок, истории, паролей и настроек, сохраненных на всех ваших устройствах.</translation>
 <translation id="3068515742935458733">Помочь улучшить Chromium, отправляя в Google отчеты о сбоях и <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Установка прервана на этапе распаковки архива. Скачайте Chromium ещё раз.</translation>
 <translation id="3130323860337406239">Chromium использует микрофон.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Открыть ссылку в режиме инкогнито браузера Chromium</translation>
 <translation id="3190315855212034486">Произошел сбой Chromium. Перезапустить?</translation>
 <translation id="3229526316128325841">Вы собираетесь экспортировать пароли из Chromium.</translation>
-<translation id="3256316712990552818">Скопировано в Chromium</translation>
 <translation id="3258596308407688501">Chromium не может выполнять операции чтения и записи в своем каталоге: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">Отсутствуют ключи API Google. Некоторые функции Chromium могут не работать.</translation>
 <translation id="3296368748942286671">Продолжить выполнение фоновых приложений после закрытия Chromium</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">В последней версии улучшена защита и добавлены новые функции.</translation>
 <translation id="421369550622382712">Широкий выбор приложений, игр, расширений и тем для Chromium.</translation>
 <translation id="4216212958613226427">На этом языке отображается интерфейс Chromium</translation>
-<translation id="4222580632002216401">Добро пожаловать в Chromium! Синхронизация отключена администратором.</translation>
 <translation id="4230135487732243613">Связать данные Chromium с этим аккаунтом?</translation>
 <translation id="4271805377592243930">Справка Chromium</translation>
 <translation id="4285930937574705105">Установка не удалась из-за неизвестной ошибки. Если Chromium продолжает работать, закройте его и повторите попытку.</translation>
@@ -105,7 +94,6 @@
 <translation id="4943838377383847465">Chromium работает в фоновом режиме</translation>
 <translation id="4987820182225656817">Используйте Chromium в гостевом режиме, если не хотите сохранять данные о посещенных сайтах.</translation>
 <translation id="4994636714258228724">Добавить пользователя Chromium</translation>
-<translation id="5181952534059945058">Эта страница расходовала слишком много памяти, поэтому часть контента была удалена.</translation>
 <translation id="5277894862589591112">Чтобы изменения вступили в силу, перезапустите Chromium.</translation>
 <translation id="5358375970380395591">Выполнив вход в управляемый аккаунт, вы предоставляете администратору право контролировать настройки вашего профиля Chromium. Ваши данные Chromium (приложения, закладки, история, пароли и другие настройки) будут временно связаны с аккаунтом <ph name="USER_NAME" />. Эти данные можно удалить в Личном кабинете Google, но их нельзя связать с другим аккаунтом. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Обновление Chromium (<ph name="PROGRESS_PERCENT" />)…</translation>
@@ -128,7 +116,6 @@
 <translation id="5895138241574237353">Перезапустить</translation>
 <translation id="5987687638152509985">Чтобы начать синхронизацию, обновите Chromium</translation>
 <translation id="6013050204643758987">Chromium OS, как и <ph name="BEGIN_LINK_LINUX_OSS" />Linux (бета-версия)<ph name="END_LINK_LINUX_OSS" />, работает благодаря дополнительному <ph name="BEGIN_LINK_CROS_OSS" />программному обеспечению с открытым исходным кодом<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="6040143037577758943">Закрыть</translation>
 <translation id="6055895534982063517">Доступна новая версия Chromium, которая стала еще быстрее.</translation>
 <translation id="6063093106622310249">&amp;Открыть в Chromium</translation>
 <translation id="6072279588547424923">Расширение "<ph name="EXTENSION_NAME" />" добавлено в Chromium</translation>
@@ -150,7 +137,6 @@
 <translation id="6434250628340475518">Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium перезапустится через 1 секунду}one{Chromium перезапустится через # секунду}few{Chromium перезапустится через # секунды}many{Chromium перезапустится через # секунд}other{Chromium перезапустится через # секунды}}</translation>
 <translation id="6475912303565314141">Кроме того, расширение изменило стартовую страницу Chromium.</translation>
-<translation id="6485906693002546646">Для синхронизации данных Chromium используется аккаунт <ph name="PROFILE_EMAIL" />. Изменить параметры синхронизации или отключить аккаунт можно в <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Удаление Chromium</translation>
 <translation id="6570579332384693436">Для проверки правописания Chromium отправляет введенный вами текст в Google.</translation>
 <translation id="6598877126913850652">Открыть настройки уведомлений Chromium</translation>
@@ -160,7 +146,6 @@
 Некоторые возможности могут быть недоступны. Укажите другой каталог профиля либо используйте более новую версию Chromium.</translation>
 <translation id="6734080038664603509">Обновить &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium уже установлен для всех пользователей вашего компьютера</translation>
-<translation id="6810143991807788455">Отправьте отчет о текущих настройках Chromium и помогите усовершенствовать работу браузера</translation>
 <translation id="6847869444787758381">Chromium сообщит вам, если возникнет проблема с безопасностью ваших паролей.</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (скопирована в Chromium)</translation>
@@ -177,7 +162,6 @@
 <translation id="731644333568559921">Обновить &amp;Chromium OS</translation>
 <translation id="731795002583552498">Обновление Chromium…</translation>
 <translation id="7318036098707714271">Файл настроек поврежден или недействителен. Chromium не может восстановить ваши параметры.</translation>
-<translation id="7331920710658926971">Установите Chromium на телефон. Мы отправим вам SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Новое окно</translation>
 <translation id="734373864078049451">Все веб-страницы, закладки и другие данные Chromium можно найти здесь.</translation>
@@ -208,16 +192,13 @@
 <translation id="7979877361127045932">Не показывать в меню Chromium</translation>
 <translation id="8013436988911883588">Когда вы предоставите доступ Chromium, веб-сайты также смогут запрашивать у вас доступ.</translation>
 <translation id="81770708095080097">Chromium заблокировал этот файл как опасный.</translation>
-<translation id="8222496066431494154">Установите Chromium на телефон. Мы отправим SMS на номер, указанный в вашем аккаунте: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8248265253516264921">Если у изображения нет понятного описания, Chromium попытается его найти. Для создания описаний изображения отправляются в Google. Эту функцию можно отключить в настройках в любое время.</translation>
-<translation id="8269379391216269538">Сделайте Chromium лучше</translation>
 <translation id="8290862415967981663">Chromium заблокировал этот файл как потенциально опасный.</translation>
 <translation id="8330519371938183845">Войдите, чтобы синхронизировать данные Chromium на всех устройствах</translation>
 <translation id="8340674089072921962">Адрес <ph name="USER_EMAIL_ADDRESS" /> уже использовался в Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Перезапустите Chromium в течение дня}one{Перезапустите Chromium в течение # дня}few{Перезапустите Chromium в течение # дней}many{Перезапустите Chromium в течение # дней}other{Перезапустите Chromium в течение # дня}}</translation>
 <translation id="8453117565092476964">Установочный архив поврежден. Скачайте Chromium ещё раз.</translation>
 <translation id="8493179195440786826">Версия Chromium устарела</translation>
-<translation id="85843667276690461">Помощь по использованию Chromium</translation>
 <translation id="8586442755830160949">© The Chromium Authors, <ph name="YEAR" /> . Все права защищены.</translation>
 <translation id="8619360774459241877">Запуск Chromium...</translation>
 <translation id="8621669128220841554">В процессе установки произошла неизвестная ошибка. Скачайте Chromium ещё раз.</translation>
@@ -234,21 +215,14 @@
 <translation id="8907580949721785412">Чтобы просмотреть пароли, введите пароль своего аккаунта Windows.</translation>
 <translation id="8941642502866065432">Не удалось обновить Chromium</translation>
 <translation id="8974095189086268230">Chromium OS обязана своим появлением дополнительному <ph name="BEGIN_LINK_CROS_OSS" />программному обеспечению с открытым исходным кодом<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Ранее вход в Chromium на этом компьютере выполнялся с помощью аккаунта <ph name="ACCOUNT_EMAIL_LAST" />. Если это не ваш аккаунт и вы хотите закрыть доступ к ранее сохраненным в Chromium данным, создайте новый профиль Chromium. 
-
-Если войти в систему сейчас, закладки, история и прочие данные Chromium будут синхронизированы с новым аккаунтом: <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Чтобы обеспечить безопасность ваших данных, некоторые расширения были отключены, так как <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> не содержит сведений о них (то есть они могли быть установлены без вашего ведома).</translation>
 <translation id="9022552996538154597">Войти в Chromium</translation>
-<translation id="9025992965467895364">Эта страница расходовала слишком много памяти, поэтому работа ее скриптов была приостановлена.</translation>
-<translation id="9036189287518468038">Панель запуска Chromium</translation>
 <translation id="9089354809943900324">Версия Chromium устарела</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium перезапустится через 1 час}one{Chromium перезапустится через # час}few{Chromium перезапустится через # часа}many{Chromium перезапустится через # часов}other{Chromium перезапустится через # часа}}</translation>
 <translation id="91086099826398415">Открыть ссылку в новой вкладке браузера Chromium</translation>
 <translation id="911206726377975832">Также удалить данные о работе в браузере?</translation>
 <translation id="9158494823179993217">Ваш системный администратор задал настройки, согласно которым Chromium должен запускать альтернативный браузер для доступа к сайту <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Если вы отключите аккаунт <ph name="USERNAME" />, все сохраненные на этом устройстве закладки, настройки, история и другие данные Chromium будут удалены. Данные в вашем аккаунте Google сохранятся, и вы сможете управлять ими в <ph name="GOOGLE_DASHBOARD_LINK" />Личном кабинете Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Вы вошли в Chromium</translation>
 <translation id="93478295209880648">В работе Chromium могут возникать сбои, так как браузер больше не поддерживает Windows XP и Windows Vista.</translation>
 <translation id="95514773681268843">Прежде чем приступать к работе, ознакомьтесь с Условиями использования на сайте <ph name="DOMAIN" /> и примите их. Эти условия не дополняют, не заменяют и не ограничивают Условий использования Chromium OS.</translation>
 <translation id="985602178874221306">Авторы Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_sk.xtb b/chrome/app/resources/chromium_strings_sk.xtb
index ccb0c56..86095ca 100644
--- a/chrome/app/resources/chromium_strings_sk.xtb
+++ b/chrome/app/resources/chromium_strings_sk.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Prehliadač Chromium sa pokúša exportovať vaše heslá. Ak to chcete povoliť, zadajte heslo systému Windows.</translation>
 <translation id="1115445892567829615">Prehliadaču Chromium sa nepodarilo synchronizovať vaše údaje. Aktualizujte prístupovú frázu synchronizácie.</translation>
 <translation id="113122355610423240">Chromium je vaším predvoleným prehliadačom</translation>
-<translation id="1170115874949214249">Nainštalujte si Chromium do telefónu. Pošleme vám správu SMS na telefónne číslo na obnovenie účtu.</translation>
-<translation id="1174473354587728743">Zdieľať počítač? Teraz si môžete prehliadač Chromium nastaviť podľa vlastných predstáv.</translation>
 <translation id="1185134272377778587">Informácie o prehliadači Chromium</translation>
-<translation id="1298199220304005244">Získajte pomoc pri používaní systému Chromium OS</translation>
 <translation id="1396446129537741364">Prehliadač Chromium sa snaží zobraziť heslá.</translation>
 <translation id="1414495520565016063">Ste prihlásený/-á do prehliadača Chromium.</translation>
 <translation id="151962892725702025">Systému OS Chromium sa nepodarilo synchronizovať vaše údaje, pretože možnosť synchronizácie nie je pre vašu doménu k dispozícii.</translation>
 <translation id="1524282610922162960">Zdieľajte kartu prehliadača Chromium</translation>
-<translation id="1668054258064581266">Po odstránení účtu z prehliadača Chromium možno budete musieť znova načítať otvorené karty, aby sa zmena uplatnila.</translation>
-<translation id="1688750314291223739">Ak chcete uložiť svoje prispôsobené funkcie prehliadača na webe a pristupovať k nim z prehliadača Chromium v ktoromkoľvek počítači, nastavte synchronizáciu.</translation>
 <translation id="1708666629004767631">K dispozícii je nová bezpečnejšia verzia prehliadača Chromium.</translation>
 <translation id="1766096484055239003">Správca požaduje, aby ste reštartovali Chromium na použitie aktualizácie</translation>
 <translation id="1774152462503052664">Povoliť prehliadaču Chromium spustenie na pozadí</translation>
 <translation id="1779356040007214683">Z dôvodu vyššej bezpečnosti prehliadača Chromium sme zakázali niektoré rozšírenia, ktoré nedodáva <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> a mohli byť pridané bez vášho vedomia.</translation>
 <translation id="1808667845054772817">Preinštalovať prehliadač Chromium</translation>
-<translation id="1869480248812203386">Automatickým nahlasovaním podrobností o možných bezpečnostných problémoch môžete prispieť k zvýšeniu zabezpečenia prehliadača Chromium a k zjednodušeniu jeho používania.</translation>
 <translation id="1881322772814446296">Prihlasujete sa pomocou spravovaného účtu a jeho správcovi dávate kontrolu nad vaším profilom Chromium. Vaše údaje prehliadača Chromium, ako sú aplikácie, záložky, história, heslá a iné nastavenia, sa natrvalo priradia k účtu <ph name="USER_NAME" />. Tieto údaje budete môcť odstrániť len pomocou panela Dashboard v Účtoch Google, ale nebudete ich môcť priradiť k inému účtu. Ak chcete, aby boli existujúce údaje prehliadača Chromium oddelené, môžete vytvoriť nový profil. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Po vypnutí tejto možnosti sa budete môcť prihlásiť do webov Googlu (napríklad do Gmailu) bez prihlásenia do prehliadača Chromium</translation>
 <translation id="1929939181775079593">Chromium nereaguje. Chcete ho spustiť znova?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Správca vás žiada o reštartovanie prehliadača Chromium na použitie tejto aktualizácie</translation>
 <translation id="2119636228670142020">Informácie o systéme &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Ak počítač zdieľate s rodinou a priateľmi, môžu v prehliadači Chromium prehliadať oddelene a tiež si ho nastaviť podľa vlastných požiadaviek.</translation>
-<translation id="2265088490657775772">získať Chromium na zariadení iPhone</translation>
 <translation id="2347108572062610441">Toto rozšírenie zmenilo stránku, ktorá sa zobrazí pri spustení prehliadača Chromium.</translation>
 <translation id="2396765026452590966">Rozšírenie „<ph name="EXTENSION_NAME" />“ zmenilo stránku, ktorá sa zobrazí pri spustení prehliadača Chromium.</translation>
 <translation id="2483889755041906834">V prehliadači Chromium</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Ak chcete prehliadač Chromium aktualizovať, nesmie byť spustený v tomto počítači. Ostatní používatelia prihlásení do tohto počítača môžu prísť o neuložené zmeny.</translation>
 <translation id="2847479871509788944">Odstrániť z prehliadača Chromium...</translation>
 <translation id="2886012850691518054">Voliteľné: Pomôžte vylepšiť služby prehliadača Chromium tým, že nastavíte automatické odosielanie štatistík používania a správ o zlyhaní spoločnosti Google.</translation>
-<translation id="2898082584336937987">Nainštalujte si Chromium do telefónu. Pošleme vám správu SMS na telefón: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Informácie o prehliadači &amp;Chromium</translation>
 <translation id="2977470724722393594">Prehliadač Chromium bol aktualizovaný</translation>
 <translation id="3032787606318309379">Pridáva sa do prehliadača Chromium...</translation>
-<translation id="3046695367536568084">Aplikácie môžete používať až po prihlásení do prehliadača Chromium. Prehliadaču Chromium tým umožníte synchronizovať vaše aplikácie, záložky, históriu, heslá a ďalšie nastavenia na všetkých zariadeniach.</translation>
 <translation id="3068515742935458733">Pomôcť zlepšiť prehliadač Chromium odosielaním správ o zlyhaní a <ph name="UMA_LINK" /> spoločnosti Google</translation>
 <translation id="3103660991484857065">Inštalačný program pri dekomprimácii archívu zlyhal. Stiahnite prehliadač Chromium znova.</translation>
 <translation id="3130323860337406239">Chromium používa váš mikrofón.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Otvoriť odkaz v okne inko&amp;gnito prehliadača Chromium</translation>
 <translation id="3190315855212034486">Prehliadač Chromium zlyhal. Chcete ho spustiť znova?</translation>
 <translation id="3229526316128325841">Prehliadač Chromium sa pokúša exportovať vaše heslá.</translation>
-<translation id="3256316712990552818">Skopírovaná do prehliadača Chromium</translation>
 <translation id="3258596308407688501">Prehliadač Chromium nemôže čítať ani zapisovať do adresára s údajmi:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">V najnovšej verzii sú k dispozícii dôležité vylepšenia zabezpečenia a nové funkcie.</translation>
 <translation id="421369550622382712">Objavte skvelé aplikácie, hry, rozšírenia a motívy pre prehliadač Chromium.</translation>
 <translation id="4216212958613226427">V tomto jazyku sa zobrazuje používateľské rozhranie prehliadača Chromium.</translation>
-<translation id="4222580632002216401">Prihlásili ste sa do prehliadača Chromium. Synchronizácia je zakázaná administrátorom.</translation>
 <translation id="4230135487732243613">Chcete prepojiť údaje prehliadača Chromium s týmto účtom?</translation>
 <translation id="4271805377592243930">Pomoc s prehliadačom Chromium</translation>
 <translation id="4285930937574705105">Inštalácia zlyhala kvôli neurčenej chybe. Ak je prehliadač Chromium momentálne spustený, zatvorte ho a skúste znova.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Chromium je v režime na pozadí.</translation>
 <translation id="4987820182225656817">Hostia môžu používať prehliadač Chromium bez toho, aby po sebe zanechali akékoľvek informácie.</translation>
 <translation id="4994636714258228724">Pridajte si účet do prehliadača Chromium</translation>
-<translation id="5181952534059945058">Táto stránka využíva príliš veľa pamäte, a preto prehliadač Chromium odstránil časť obsahu.</translation>
 <translation id="5277894862589591112">Ak chcete zmeny použiť, spustite Chromium znova</translation>
 <translation id="5358375970380395591">Prihlasujete sa pomocou spravovaného účtu a jeho správcovi dávate kontrolu nad vaším profilom Chromium. Vaše údaje prehliadača Chromium, ako sú aplikácie, záložky, história, heslá a iné nastavenia, sa natrvalo priradia k účtu <ph name="USER_NAME" />. Tieto údaje budete môcť odstrániť len pomocou panela Dashboard v Účtoch Google, ale nebudete ich môcť priradiť k inému účtu. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Aktualizuje sa Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">Reštartovať</translation>
 <translation id="5987687638152509985">Ak chcete spustiť synchronizáciu, aktualizujte Chromium</translation>
 <translation id="6013050204643758987">Chromium OS mohol vzniknúť vďaka ďalšiemu <ph name="BEGIN_LINK_CROS_OSS" />softvéru open source<ph name="END_LINK_CROS_OSS" />, ako je napríklad <ph name="BEGIN_LINK_LINUX_OSS" />Linux (beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Zavrieť</translation>
 <translation id="6055895534982063517">K dispozícii je nová verzia prehliadača Chromium, ktorá je rýchlejšia ako kedykoľvek predtým.</translation>
 <translation id="6063093106622310249">&amp;Otvoriť v prehliadači Chromium</translation>
 <translation id="6072279588547424923">Rozšírenie <ph name="EXTENSION_NAME" /> bolo pridané do prehliadača Chromium</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Systém Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium sa reštartuje o 1 sekundu}few{Chromium sa reštartujte o # sekundy}many{Chromium sa reštartujte o # sekundy}other{Chromium sa reštartujte o # sekúnd}}</translation>
 <translation id="6475912303565314141">Tiež určuje, ktorá stránka sa zobrazí pri spustení prehliadača Chromium.</translation>
-<translation id="6485906693002546646">Na synchronizáciu prehliadača Chromium používate účet <ph name="PROFILE_EMAIL" />. Ak chcete upraviť predvoľby synchronizácie alebo používať prehliadač Chromium bez účtu Google, prejdite na <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Odinštalovať Chromium</translation>
 <translation id="6570579332384693436">Chromium odošle text zadaný v textových poliach Googlu s cieľom opraviť pravopisné chyby</translation>
 <translation id="6598877126913850652">Prejsť do nastavení upozornení prehliadača Chromium</translation>
@@ -164,7 +150,6 @@
 Niektoré funkcie nemusia byť k dispozícii. Zadajte iný adresár profilu alebo použite novšiu verziu prehliadača Chromium.</translation>
 <translation id="6734080038664603509">Aktualizovať prehliadač &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium už majú nainštalovaný všetci používatelia na vašom počítači.</translation>
-<translation id="6810143991807788455">Nahláste aktuálne nastavenia a pomôžte tak zlepšiť prehliadač Chromium</translation>
 <translation id="6847869444787758381">Ak budú vaše heslá napadnuté, Chromium vám to oznámi</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (skopírované do prehliadača Chromium)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">Súbor predvolieb je poškodený alebo neplatný. 
 
 Prehliadač Chromium nedokáže obnoviť vaše nastavenia.</translation>
-<translation id="7331920710658926971">Nainštalujte si Chromium do telefónu. Pošleme vám na telefón správu SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nové okno</translation>
 <translation id="734373864078049451">Tu nájdete svoj obsah na webe, záložky a ďalšie položky prehliadača Chromium.</translation>
@@ -214,16 +198,13 @@
 <translation id="7979877361127045932">Skryť v Ponuke Chromium</translation>
 <translation id="8013436988911883588">Keď Chromium získa prístup, weby vás budú môcť žiadať o prístup.</translation>
 <translation id="81770708095080097">Tento súbor je nebezpečný, a preto ho prehliadač Chromium zablokoval.</translation>
-<translation id="8222496066431494154">Nainštalujte si Chromium do telefónu. Pošleme vám správu SMS na telefónne číslo na obnovenie účtu: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Ak obrázok nemá užitočný popis, Chromium sa vám ho pokúsi poskytnúť. Obrázky sa odosielajú Googlu, aby bolo možné vytvoriť popisy. Môžete to kedykoľvek vypnúť v nastaveniach.</translation>
-<translation id="8269379391216269538">Pomôže zlepšiť Chromium</translation>
 <translation id="8290862415967981663">Tento súbor môže byť nebezpečný, a preto ho prehliadač Chromium zablokoval.</translation>
 <translation id="8330519371938183845">Po prihlásení budete môcť Chromium synchronizovať a prispôsobiť v rôznych zariadeniach.</translation>
 <translation id="8340674089072921962">Účet <ph name="USER_EMAIL_ADDRESS" /> predtým používal Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Chromium znova spustite do jedného dňa}few{Chromium znova spustite do # dní}many{Chromium znova spustite do # dňa}other{Chromium znova spustite do # dní}}</translation>
 <translation id="8453117565092476964">Archív inštalácie je poškodený alebo neplatný. Stiahnite prehliadač Chromium znova.</translation>
 <translation id="8493179195440786826">Prehliadač Chromium je zastaraný</translation>
-<translation id="85843667276690461">Získajte pomoc pri používaní prehliadača Chromium</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Autori Chromium. Všetky práva vyhradené.</translation>
 <translation id="8619360774459241877">Spúšťa sa Chromium…</translation>
 <translation id="8621669128220841554">Inštalácia zlyhala kvôli neznámej chybe. Skúste prehliadač Chromium stiahnuť znova.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Prehliadač Chromium sa pokúša zobraziť heslá. Ak to chcete povoliť, zadajte svoje heslo systému Windows.</translation>
 <translation id="8941642502866065432">Chromium sa nedá aktualizovať</translation>
 <translation id="8974095189086268230">Prehliadač Chromium mohol vzniknúť vďaka ďalšiemu <ph name="BEGIN_LINK_CROS_OSS" />softvéru s otvoreným zdrojom<ph name="END_LINK_CROS_OSS" /> .</translation>
-<translation id="8985587603644336029">Do prehliadača Chromium sa už na tomto počítači niekto prihlásil pomocou účtu <ph name="ACCOUNT_EMAIL_LAST" />. Ak tento účet nepatrí vám, vytvorte nového používateľa prehliadača Chromium, aby ste zachovali oddelenie informácií.
-
-Ak sa chcete aj napriek tomu prihlásiť, informácie prehliadača Chromium, ako sú záložky, história a iné nastavenia, sa priradia k účtu <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Z dôvodu zvýšenia bezpečnosti prehliadača Chromium sme zakázali nasledujúce rozšírenie, ktoré nie je uvedené v službe <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> a mohlo byť pridané bez vášho vedomia.</translation>
 <translation id="9022552996538154597">Prihlásiť sa do prehliadača Chromium</translation>
-<translation id="9025992965467895364">Táto stránka využíva príliš veľa pamäte, a preto ju Chromium pozastavil.</translation>
-<translation id="9036189287518468038">Spúšťač aplikácií Chromium</translation>
 <translation id="9089354809943900324">Prehliadač Chromium je zastaraný</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium sa znova spustí do jednej hodiny}few{Chromium sa znova spustí do # hodín}many{Chromium sa znova spustí do # hodiny}other{Chromium sa znova spustí do # hodín}}</translation>
 <translation id="91086099826398415">Otvoriť odkaz na novej &amp;karte prehliadača Chromium</translation>
 <translation id="911206726377975832">Chcete tiež odstrániť svoje údaje prehliadania?</translation>
 <translation id="9158494823179993217">Správca systému nakonfiguroval Chromium, aby web <ph name="TARGET_URL_HOSTNAME" /> otváral v alternatívnom prehliadači.</translation>
-<translation id="918373042641772655">Ak odpojíte účet <ph name="USERNAME" />, vymaže sa história, záložky, nastavenia a všetky ďalšie údaje prehliadača Chromium uložené na vašom zariadení. Údaje uložené v účte Google sa nevymažú a môžete ich spravovať v službe <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Ste prihlásený/-á do prehliadača Chromium</translation>
 <translation id="93478295209880648">Chromium nemusí fungovať správne, pretože v systémoch Windows XP a Windows Vista už nie je podporovaný</translation>
 <translation id="95514773681268843">Stránky <ph name="DOMAIN" /> vyžadujú, aby ste si pred používaním tohto zariadenia prečítali nasledujúce Zmluvné podmienky a vyjadrili s nimi súhlas. Tieto zmluvné podmienky nerozširujú, neupravujú ani neobmedzujú Zmluvné podmienky systému Chromium OS.</translation>
 <translation id="985602178874221306">Autori prehliadača Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_sl.xtb b/chrome/app/resources/chromium_strings_sl.xtb
index 4f7467b..d0e14360 100644
--- a/chrome/app/resources/chromium_strings_sl.xtb
+++ b/chrome/app/resources/chromium_strings_sl.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium želi izvoziti gesla. Če želite omogočiti to, vnesite geslo za Windows.</translation>
 <translation id="1115445892567829615">Chromium ni mogel sinhronizirati podatkov. Posodobite sinhronizacijsko geslo.</translation>
 <translation id="113122355610423240">Chromium je privzeti brskalnik</translation>
-<translation id="1170115874949214249">Namestite Chromium v telefonu. Na telefonsko številko za obnovitev računa bomo poslali SMS.</translation>
-<translation id="1174473354587728743">Imate računalnik v skupni rabi? Zdaj lahko nastavite Chromium po svojih željah.</translation>
 <translation id="1185134272377778587">O Chromiumu</translation>
-<translation id="1298199220304005244">Pomoč pri uporabi sistema Chromium OS</translation>
 <translation id="1396446129537741364">Chromium poskuša prikazati gesla.</translation>
 <translation id="1414495520565016063">Prijavljeni ste v Chromium.</translation>
 <translation id="151962892725702025">Chromium OS ni mogel sinhronizirati podatkov, ker sinhronizacija ni na voljo za vašo domeno.</translation>
 <translation id="1524282610922162960">Deljenje zavihka v Chromiumu</translation>
-<translation id="1668054258064581266">Ko odstranite račun iz Chromiuma, boste morali morda znova naložiti odprte zavihke, če želite uveljaviti spremembo.</translation>
-<translation id="1688750314291223739">Nastavite sinhronizacijo, da prilagojene funkcije brskalnika shranite v spletu in do njih v Chromiumu dostopate v katerem koli računalniku.</translation>
 <translation id="1708666629004767631">Na voljo je nova, varnejša različica Chromiuma.</translation>
 <translation id="1766096484055239003">Skrbnik zahteva, da za uveljavitev te posodobitve znova zaženete Chromium</translation>
 <translation id="1774152462503052664">Naj se Chromium izvaja v ozadju</translation>
 <translation id="1779356040007214683">Zaradi večje varnosti smo v Chromiumu onemogočili nekatere razširitve, ki niso navedene v storitvi <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> in so bile morda dodane brez vaše vednosti.</translation>
 <translation id="1808667845054772817">Vnovična namestitev Chromiuma</translation>
-<translation id="1869480248812203386">S samodejnim poročanjem podrobnosti o morebitnih varnostnih dogodkih Googlu lahko pomagate narediti Chromium varnejši in preprostejši za uporabo.</translation>
 <translation id="1881322772814446296">Prijavljate se z upravljanim računom in s tem njegovemu skrbniku omogočate nadzor vašega profila v Chromiumu. Vaši podatki v Chromiumu, kot so aplikacije, zaznamki, zgodovina, gesla in druge nastavitve, bodo postali trajno povezani z uporabnikom <ph name="USER_NAME" />. Te podatke boste lahko izbrisali na nadzorni plošči za Google Račune, vendar jih ne boste mogli povezati z drugim računom. Če želite, lahko ustvarite nov profil, da bodo obstoječi podatki v Chromiumu ostali ločeni. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Če to izklopite, se lahko prijavite na Googlovih spletnih mestih, kot je Gmail, ne da bi se morali prijaviti v Chromium</translation>
 <translation id="1929939181775079593">Chromium se ne odziva. Ga želite znova zagnati?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Skrbnik prosi, da za uveljavitev te posodobitve znova zaženete Chromium</translation>
 <translation id="2119636228670142020">O sistemu &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Če računalnik souporabljate z drugimi, lahko prijatelji in sorodniki ločeno brskajo ter nastavijo Chromium tako, kot ga želijo.</translation>
-<translation id="2265088490657775772">prenesite Chromium v iPhone</translation>
 <translation id="2347108572062610441">Zaradi te razširitve se je spremenila stran, ki je prikazana, ko zaženete Chromium.</translation>
 <translation id="2396765026452590966">Zaradi razširitve »<ph name="EXTENSION_NAME" />« se je spremenila stran, ki je prikazana, ko zaženete Chromium.</translation>
 <translation id="2483889755041906834">V Chromiumu</translation>
@@ -51,11 +44,9 @@
 <translation id="2838154144102149890">Če želite opraviti posodobitev, se mora Chromium nehati izvajati v tem računalniku. Zaradi tega bodo morda drugi uporabniki, prijavljeni v tem računalniku, ob neshranjene spremembe.</translation>
 <translation id="2847479871509788944">Odstranitev iz Chromiuma ...</translation>
 <translation id="2886012850691518054">Izbirno: Pomagajte izboljšati Chromium, tako da Googlu samodejno pošiljate statistične podatke o uporabi in poročila o zrušitvah.</translation>
-<translation id="2898082584336937987">Namestite Chromium v telefonu. V telefon vam bomo poslali SMS: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">O &amp;Chromiumu</translation>
 <translation id="2977470724722393594">Chromium je posodobljen</translation>
 <translation id="3032787606318309379">Dodajanje v Chromium ...</translation>
-<translation id="3046695367536568084">Če želite uporabljati aplikacije, morate biti prijavljeni v Chromium. Ko se prijavite, lahko Chromium sinhronizira aplikacije, zaznamke, zgodovino in druge nastavitve v različnih napravah.</translation>
 <translation id="3068515742935458733">Pomagajte izboljšati Chromium – Googlu pošiljajte poročila o zrušitvah in ta dokument: <ph name="UMA_LINK" />.</translation>
 <translation id="3103660991484857065">Namestitvenemu programu ni uspelo razširiti arhiva. Znova prenesite Chromium.</translation>
 <translation id="3130323860337406239">Chromium uporablja vaš mikrofon.</translation>
@@ -63,7 +54,6 @@
 <translation id="3179665906251668410">Odpri povezavo v Chromiumovem oknu brez bele&amp;ženja zgodovine</translation>
 <translation id="3190315855212034486">Opa! Chromium se je zrušil. Ga želite znova zagnati?</translation>
 <translation id="3229526316128325841">Chromium želi izvoziti gesla.</translation>
-<translation id="3256316712990552818">Kopirano v Chromium</translation>
 <translation id="3258596308407688501">Chromium ne more brati svojega imenika s podatki ali pisati vanj:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -87,7 +77,6 @@
 <translation id="4050175100176540509">V najnovejši različici so na voljo pomembne varnostne izboljšave in nove funkcije.</translation>
 <translation id="421369550622382712">Odkrijte zanimive aplikacije, igre, razširitve in teme za Chromium.</translation>
 <translation id="4216212958613226427">Ta jezik se uporablja za prikaz uporabniškega vmesnika v Chromiumu</translation>
-<translation id="4222580632002216401">Zdaj ste prijavljeni v Chromium. Sinhronizacijo je onemogočil skrbnik.</translation>
 <translation id="4230135487732243613">Želite svoje podatke v Chromiumu povezati s tem računom?</translation>
 <translation id="4271805377592243930">Pomoč za Chromium</translation>
 <translation id="4285930937574705105">Namestitev ni bila izvedena zaradi nedoločene napake. Če se Chromium trenutno izvaja, ga zaprite in poskusite znova.</translation>
@@ -110,7 +99,6 @@
 <translation id="4943838377383847465">Chromium se izvaja v ozadju.</translation>
 <translation id="4987820182225656817">Gostje lahko uporabljajo Chromium, ne da bi za seboj pustili kar koli.</translation>
 <translation id="4994636714258228724">Dodajte se v Chromium</translation>
-<translation id="5181952534059945058">Ta stran uporablja preveč pomnilnika, zato je Chromium odstranil nekaj vsebine.</translation>
 <translation id="5277894862589591112">Če želite uporabiti spremembe, znova zaženite Chromium</translation>
 <translation id="5358375970380395591">Prijavljate se z upravljanim računom in s tem njegovemu skrbniku omogočate nadzor vašega profila v Chromiumu. Vaši podatki v Chromiumu, kot so aplikacije, zaznamki, zgodovina, gesla in druge nastavitve, bodo postali trajno povezani z uporabnikom <ph name="USER_NAME" />. Te podatke boste lahko izbrisali na nadzorni plošči za Google Račune, vendar jih ne boste mogli povezati z drugim računom. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Posodabljanje Chromiuma (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -133,7 +121,6 @@
 <translation id="5895138241574237353">Znova zaženi</translation>
 <translation id="5987687638152509985">Posodobite Chromium, če želite začeti sinhronizacijo</translation>
 <translation id="6013050204643758987">OS Chromium omogoča dodatna <ph name="BEGIN_LINK_CROS_OSS" />odprtokodna programska oprema<ph name="END_LINK_CROS_OSS" />, enako kot <ph name="BEGIN_LINK_LINUX_OSS" />Linux (beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Zapri</translation>
 <translation id="6055895534982063517">Na voljo je nova različica Chromiuma, ki je najhitrejša doslej.</translation>
 <translation id="6063093106622310249">&amp;Odpri v Chromiumu</translation>
 <translation id="6072279588547424923">Razširitev <ph name="EXTENSION_NAME" /> je dodana v Chromium</translation>
@@ -155,7 +142,6 @@
 <translation id="6434250628340475518">Sistem OS Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium se bo znova zagnal čez 1 sekundo}one{Chromium se bo znova zagnal čez # sekundo}two{Chromium se bo znova zagnal čez # sekundi}few{Chromium se bo znova zagnal čez # sekunde}other{Chromium se bo znova zagnal čez # sekund}}</translation>
 <translation id="6475912303565314141">Določa tudi, katera stran je prikazana, ko zaženete Chromium.</translation>
-<translation id="6485906693002546646">Za sinhronizacijo stvari v Chromiumu uporabljate <ph name="PROFILE_EMAIL" />. Če želite posodobiti nastavitve sinhroniziranja ali uporabljati Chromium brez Google Računa, odprite <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Odstranitev Chromiuma</translation>
 <translation id="6570579332384693436">Chromium zaradi odpravljanja napak pri črkovanju Googlu pošlje besedilo, ki ga vnesete v besedilna polja</translation>
 <translation id="6598877126913850652">Odprite nastavitve obvestil v Chromiumu</translation>
@@ -165,7 +151,6 @@
 Nekatere funkcije morda ne bodo na voljo. Določite drug imenik profila ali uporabite novejšo različico Chromiuma.</translation>
 <translation id="6734080038664603509">Posodobi &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium je že nameščen za vse uporabnike v računalniku.</translation>
-<translation id="6810143991807788455">Pomagajte izboljšati Chromium s poročanjem o trenutnih nastavitvah</translation>
 <translation id="6847869444787758381">Chromium vam sporoči, ali so gesla ogrožena</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (kopirano v Chromium)</translation>
@@ -184,7 +169,6 @@
 <translation id="7318036098707714271">Datoteka z nastavitvami je poškodovana ali neveljavna.
 
 Chromium ne more obnoviti vaših nastavitev.</translation>
-<translation id="7331920710658926971">Namestite Chromium v telefonu. V telefon vam bomo poslali SMS.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Novo okno</translation>
 <translation id="734373864078049451">Tu so shranjeni vaš splet, zaznamki in druge stvari v Chromiumu.</translation>
@@ -216,16 +200,13 @@
 <translation id="7979877361127045932">Skrij v meniju Chromiuma</translation>
 <translation id="8013436988911883588">Ko bo imel Chromium dostop, vas bodo spletna mesta lahko pozvala k omogočanju dostopa.</translation>
 <translation id="81770708095080097">Ta datoteka je nevarna, zato jo je Chromium blokiral.</translation>
-<translation id="8222496066431494154">Namestite Chromium v telefonu. Na telefonsko številko za obnovitev računa bomo poslali SMS: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Če slika nima koristnega opisa, ga bo Chromium poskušal zagotoviti. Opisi se ustvarijo tako, da se slike pošljejo Googlu. To lahko kadar koli izklopite v nastavitvah.</translation>
-<translation id="8269379391216269538">Pomagajte izboljšati Chromium</translation>
 <translation id="8290862415967981663">Ta datoteka je morda nevarna, zato jo je Chromium blokiral.</translation>
 <translation id="8330519371938183845">Prijavite se, da boste lahko Chromium sinhronizirali in prilagodili v vseh svojih napravah</translation>
 <translation id="8340674089072921962">Uporabnik <ph name="USER_EMAIL_ADDRESS" /> je prej uporabljal Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Chromium znova zaženite v enem dnevu}one{Chromium znova zaženite v # dnevu}two{Chromium znova zaženite v # dnevih}few{Chromium znova zaženite v # dnevih}other{Chromium znova zaženite v # dnevih}}</translation>
 <translation id="8453117565092476964">Arhiv namestitvenega programa je poškodovan ali neveljaven. Znova prenesite Chromium.</translation>
 <translation id="8493179195440786826">Chromium je zastarel</translation>
-<translation id="85843667276690461">Pomoč pri uporabi Chromiuma</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> Ustvarjalci Chromiuma. Vse pravice pridržane.</translation>
 <translation id="8619360774459241877">Zagon Chromiuma …</translation>
 <translation id="8621669128220841554">Namestitev ni uspela zaradi nenavedene napake. Znova prenesite Chromium.</translation>
@@ -243,21 +224,14 @@
 <translation id="8907580949721785412">Chromium poskuša prikazati gesla. Če želite omogočiti to, vnesite geslo za Windows.</translation>
 <translation id="8941642502866065432">Chromiuma ni mogoče posodobiti</translation>
 <translation id="8974095189086268230">Sistem Chrome OS omogoča dodatna <ph name="BEGIN_LINK_CROS_OSS" />odprtokodna programska oprema<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Nekdo se je prijavil v Chromium v tem računalniku kot <ph name="ACCOUNT_EMAIL_LAST" />. Če to ni vaš račun, ustvarite novega uporabnika za Chromium, da bodo vaši podatki ločeni.
-
-Če se boste kljub temu prijavili, se bodo podatki iz Chromiuma, na primer zaznamki, zgodovina in druge nastavitve, združili v računu <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Zaradi večje varnosti smo v Chromiumu onemogočili to razširitev, ki ni navedena tukaj in je bila morda dodana brez vaše vednosti: <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />.</translation>
 <translation id="9022552996538154597">Prijava v Chromium</translation>
-<translation id="9025992965467895364">Ta stran uporablja preveč pomnilnika, zato jo je Chromium zaustavil.</translation>
-<translation id="9036189287518468038">Zaganjalnik aplikacij v Chromiumu</translation>
 <translation id="9089354809943900324">Chromium je zastarel</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium se bo znova zagnal čez eno uro}one{Chromium se bo znova zagnal čez # uro}two{Chromium se bo znova zagnal čez # uri}few{Chromium se bo znova zagnal čez # ure}other{Chromium se bo znova zagnal čez # ur}}</translation>
 <translation id="91086099826398415">Odpiranje povezave na novem &amp;zavihku v Chromiumu</translation>
 <translation id="911206726377975832">Ali želite izbrisati tudi podatke brskanja?</translation>
 <translation id="9158494823179993217">Skrbnik sistema je Chromium nastavil tako, da za dostop do <ph name="TARGET_URL_HOSTNAME" /> odpre drug brskalnik.</translation>
-<translation id="918373042641772655">Če prekinete povezavo za <ph name="USERNAME" />, boste izbrisali zgodovino, zaznamke, nastavitve in druge Chromiumove podatke, ki so shranjeni v tej napravi. Podatki, shranjeni v Google Računu, se ne bodo izbrisali in jih je mogoče upravljati na <ph name="GOOGLE_DASHBOARD_LINK" />Google Nadzorni plošči<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Prijavljeni ste v Chromium</translation>
 <translation id="93478295209880648">Chromium morda ne bo deloval pravilno, ker ni več podprt v sistemu Windows XP ali Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> zahteva, da preberete in sprejmete pogoje storitve, preden začnete uporabljati napravo. Ti pogoji ne dopolnjujejo, spreminjajo ali omejujejo pogojev za Chromium OS.</translation>
 <translation id="985602178874221306">Ustvarjalci Chromiuma</translation>
diff --git a/chrome/app/resources/chromium_strings_sr.xtb b/chrome/app/resources/chromium_strings_sr.xtb
index 155e073..0048b4a 100644
--- a/chrome/app/resources/chromium_strings_sr.xtb
+++ b/chrome/app/resources/chromium_strings_sr.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium жели да извезе лозинке. Унесите лозинку за Windows да бисте то омогућили.</translation>
 <translation id="1115445892567829615">Chromium не може да синхронизује податке. Ажурирајте приступну фразу за Синхронизацију.</translation>
 <translation id="113122355610423240">Chromium је подразумевани прегледач</translation>
-<translation id="1170115874949214249">Инсталирајте Chromium на телефону. Послаћемо вам SMS на број телефона за враћање приступа налогу.</translation>
-<translation id="1174473354587728743">Делите рачунар? Сада можете да подесите Chromium баш онако како вама одговара.</translation>
 <translation id="1185134272377778587">О Chromium-у</translation>
-<translation id="1298199220304005244">Пронађи помоћ за коришћење Chromium ОС-а</translation>
 <translation id="1396446129537741364">Chromium покушава да прикаже лозинке.</translation>
 <translation id="1414495520565016063">Пријављени сте на Chromium!</translation>
 <translation id="151962892725702025">Chromium ОС не може да синхронизује податке јер Синхронизација није доступна за домен.</translation>
 <translation id="1524282610922162960">Делите Chromium картицу</translation>
-<translation id="1668054258064581266">Када уклоните налог из Chromium-а, можда ћете морати поново да учитате отворене картице да би то ступило на снагу.</translation>
-<translation id="1688750314291223739">Подесите Синхронизацију како бисте сачували персонализоване функције прегледача на Веб и приступали им из Chromium-а на било ком рачунару.</translation>
 <translation id="1708666629004767631">Доступна је нова, безбеднија верзија Chromium-а.</translation>
 <translation id="1766096484055239003">Администратор захтева да поново покренете Chromium да бисте применили ажурирање</translation>
 <translation id="1774152462503052664">Нека Chromium ради у позадини</translation>
 <translation id="1779356040007214683">Да бисмо учинили Chromium безбеднијим, онемогућили смо неке додатке које не наводи <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> и који су можда додати без вашег знања.</translation>
 <translation id="1808667845054772817">Поново инсталирај Chromium</translation>
-<translation id="1869480248812203386">Можете да помогнете да Chromium буде безбеднији и једноставнији за коришћење ако аутоматски пријављујете Google-у детаље могућих безбедносних инцидената.</translation>
 <translation id="1881322772814446296">Пријављујете се помоћу налога којим се управља и дајете његовом администратору контролу над Chromium профилом. Chromium подаци, као што су апликације, обележивачи, историја, лозинке и друга подешавања, биће трајно повезани са налогом <ph name="USER_NAME" />. Моћи ћете да избришете те податке преко Контролне табле Google налога, али нећете моћи да их повежете са неким другим налогом. Можете опционално да направите нови профил да би постојећи Chromium подаци остали одвојени. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Када то укључите, можете да се пријављујете на Google сајтове, као што је Gmail, али се не пријављујете у Chromium</translation>
 <translation id="1929939181775079593">Chromium не реагује. Желите ли да га одмах поново покренете?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Администратор тражи да поново покренете Chromium да бисте применили ово ажурирање</translation>
 <translation id="2119636228670142020">О &amp;Chromium ОС-у</translation>
 <translation id="2241627712206172106">Ако делите рачунар, пријатељи и породица могу засебно да прегледају и да подесе Chromium баш онако како желе.</translation>
-<translation id="2265088490657775772">преузмите Chromium на iPhone</translation>
 <translation id="2347108572062610441">Овај додатак је променио страницу која се приказује када покренете Chromium.</translation>
 <translation id="2396765026452590966">Додатак „<ph name="EXTENSION_NAME" />“ је променио страницу која се приказује када покренете Chromium.</translation>
 <translation id="2483889755041906834">У Chromium-у</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Chromium треба да престане са радом на овом рачунару да бисте га ажурирали. Због тога ће други корисници пријављени на овом рачунару можда изгубити несачуване промене.</translation>
 <translation id="2847479871509788944">Уклони из Chromium-а...</translation>
 <translation id="2886012850691518054">Опционално: Помозите да побољшамо Chromium тако што ћете Google-у аутоматски слати статистику коришћења и извештаје о отказивању.</translation>
-<translation id="2898082584336937987">Инсталирајте Chromium на телефону. Послаћемо вам SMS на телефон: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">О &amp;Chromium-у</translation>
 <translation id="2977470724722393594">Chromium је ажуриран</translation>
 <translation id="3032787606318309379">Додавање у Chromium...</translation>
-<translation id="3046695367536568084">Треба да будете пријављени у Chromium да бисте користили апликације. То омогућава Chromium-у да синхронизује апликације, обележиваче, историју, лозинке и друга подешавања на свим уређајима.</translation>
 <translation id="3068515742935458733">Помозите нам да побољшамо Chromium тако што ћете Google-у слати извештаје о отказивању и <ph name="UMA_LINK" /></translation>
 <translation id="3103660991484857065">Програм за инсталацију није успео да декомпримује архиву. Преузмите Chromium поново.</translation>
 <translation id="3130323860337406239">Chromium користи микрофон.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Отвори линк у Chromium прозору без архи&amp;вирања</translation>
 <translation id="3190315855212034486">Опа! Chromium је отказао. Желите ли да га одмах поново покренете?</translation>
 <translation id="3229526316128325841">Chromium жели да извезе лозинке.</translation>
-<translation id="3256316712990552818">Копирана у Chromium</translation>
 <translation id="3258596308407688501">Chromium не може да чита податке из директоријума са подацима нити да их уписује у њега:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">Важна безбедносна побољшања и нове функције су доступни у најновијој верзији.</translation>
 <translation id="421369550622382712">Откријте одличне апликације, игре, додатке и теме за Chromium.</translation>
 <translation id="4216212958613226427">Овај језик се користи за приказивање корисничког интерфејса Chromium-а</translation>
-<translation id="4222580632002216401">Сада сте пријављени у Chromium! Администратор је онемогућио синхронизацију.</translation>
 <translation id="4230135487732243613">Желите ли да повежете Chromium податке са овим налогом?</translation>
 <translation id="4271805377592243930">Пронађите помоћ за Chromium</translation>
 <translation id="4285930937574705105">Инсталација није успела због неодређене грешке. Ако је Chromium тренутно отворен, затворите га и покушајте поново.</translation>
@@ -108,7 +97,6 @@
 <translation id="4943838377383847465">Chromium је у позадинском режиму.</translation>
 <translation id="4987820182225656817">Гости могу да користе Chromium а да не остављају никакве трагове.</translation>
 <translation id="4994636714258228724">Додајте себе у Chromium</translation>
-<translation id="5181952534059945058">Ова страница користи превише меморије, па је Chromium уклонио одређени садржај.</translation>
 <translation id="5277894862589591112">Да бисте применили промене, поново покрените Chromium</translation>
 <translation id="5358375970380395591">Пријављујете се помоћу налога којим се управља и дајете његовом администратору контролу над Chromium профилом. Chromium подаци, као што су апликације, обележивачи, историја, лозинке и друга подешавања, биће трајно повезани са налогом <ph name="USER_NAME" />. Моћи ћете да избришете те податке преко Контролне табле Google налога, али нећете моћи да их повежете са неким другим налогом. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Ажурирање Chromium-а (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -131,7 +119,6 @@
 <translation id="5895138241574237353">Покрени поново</translation>
 <translation id="5987687638152509985">Ажурирајте Chromium да бисте започели синхронизацију</translation>
 <translation id="6013050204643758987">Chromium ОС је омогућен захваљујући додатном <ph name="BEGIN_LINK_CROS_OSS" />софтверу са отвореним кодом<ph name="END_LINK_CROS_OSS" />, као што је <ph name="BEGIN_LINK_LINUX_OSS" />Linux (бета)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Затвори</translation>
 <translation id="6055895534982063517">Доступна је нова верзија Chromium-а, бржа него икада пре.</translation>
 <translation id="6063093106622310249">&amp;Отвори у Chromium-у</translation>
 <translation id="6072279588547424923">Додатак <ph name="EXTENSION_NAME" /> је додат у Chromium</translation>
@@ -153,7 +140,6 @@
 <translation id="6434250628340475518">Систем Chromium ОС</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium ће се рестартовати за 1 секунду}one{Chromium ће се рестартовати за # секунду}few{Chromium ће се рестартовати за # секунде}other{Chromium ће се рестартовати за # секунди}}</translation>
 <translation id="6475912303565314141">Контролише и страницу која се приказује када покренете Chromium.</translation>
-<translation id="6485906693002546646">Користите <ph name="PROFILE_EMAIL" /> за синхронизацију Chromium садржаја. Да бисте ажурирали подешавање синхронизације или користили Chromium без Google налога, посетите <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Деинсталирај Chromium</translation>
 <translation id="6570579332384693436">Да би исправио правописне грешке, Chromium шаље Google-овим серверима текст који уносите у поља за текст.</translation>
 <translation id="6598877126913850652">Иди на подешавања обавештења за Chromium</translation>
@@ -163,7 +149,6 @@
 Неке функције ће можда бити недоступне. Наведите други директоријум профила или користите новију верзију Chromium-а.</translation>
 <translation id="6734080038664603509">Ажурирај &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium је већ инсталиран за све кориснике на рачунару.</translation>
-<translation id="6810143991807788455">Помозите да побољшамо Chromium тако што ћете послати извештај о актуелним подешавањима</translation>
 <translation id="6847869444787758381">Chromium вас обавештава ако су лозинке угрожене</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (копирано у Chromium)</translation>
@@ -182,7 +167,6 @@
 <translation id="7318036098707714271">Датотека подешавања је оштећена или неважећа.
 
 Chromium не може да врати подешавања.</translation>
-<translation id="7331920710658926971">Инсталирајте Chromium на телефону. Послаћемо вам SMS на телефон.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Нови прозор</translation>
 <translation id="734373864078049451">Веб, обележивачи и други Chromium садржај се овде уживо приказују.</translation>
@@ -214,16 +198,13 @@
 <translation id="7979877361127045932">Сакриј у Chromium менију</translation>
 <translation id="8013436988911883588">Када Chromium добије приступ, веб-сајтови ће моћи да затраже приступ.</translation>
 <translation id="81770708095080097">Ова датотека је опасна, па ју је Chromium блокирао.</translation>
-<translation id="8222496066431494154">Инсталирајте Chromium на телефону. Послаћемо вам SMS на број телефона за враћање приступа налогу: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Ако слика нема користан опис, Chromium ће пробати да вам га пружи. Слике се шаљу Google-у ради прављења описа. То можете да искључите у подешавањима у сваком тренутку.</translation>
-<translation id="8269379391216269538">Помозите нам да побољшамо Chromium</translation>
 <translation id="8290862415967981663">Ова датотека је можда опасна, па ју је Chromium блокирао.</translation>
 <translation id="8330519371938183845">Пријавите се да бисте синхронизовали и персонализовали Chromium на свим уређајима</translation>
 <translation id="8340674089072921962">Корисник <ph name="USER_EMAIL_ADDRESS" /> је претходно користио Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Поново покрените Chromium за један дан}one{Поново покрените Chromium за # дан}few{Поново покрените Chromium за # дана}other{Поново покрените Chromium за # дана}}</translation>
 <translation id="8453117565092476964">Архива програма за инсталацију је оштећена или неважећа. Преузмите Chromium поново.</translation>
 <translation id="8493179195440786826">Chromium је застарео</translation>
-<translation id="85843667276690461">Пронађи помоћ за коришћење Chromium-а</translation>
 <translation id="8586442755830160949">Ауторска права <ph name="YEAR" />. Аутори Chromium-а. Сва права задржана.</translation>
 <translation id="8619360774459241877">Покреће се Chromium...</translation>
 <translation id="8621669128220841554">Инсталација није успела због неодређене грешке. Преузмите Chromium поново.</translation>
@@ -241,21 +222,14 @@
 <translation id="8907580949721785412">Chromium покушава да прикаже лозинке. Унесите лозинку за Windows да бисте то омогућили.</translation>
 <translation id="8941642502866065432">Не можете да ажурирате Chromium</translation>
 <translation id="8974095189086268230">Chromium ОС омогућава додатни <ph name="BEGIN_LINK_CROS_OSS" />софтвер отвореног кода<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Неко се претходно пријавио на Chromium на овом рачунару као <ph name="ACCOUNT_EMAIL_LAST" />. Ако то није ваш налог, направите новог Chromium корисника да би информације биле раздвојене.
-
-Ако се ипак пријавите, Chromium информације као што су обележивачи, историја и друга подешавања ће бити обједињене на <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Да бисмо учинили Chromium безбеднијим, онемогућили смо следећи додатак који <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> не наводи и који је можда додат без вашег знања.</translation>
 <translation id="9022552996538154597">Пријављивање на Chromium</translation>
-<translation id="9025992965467895364">Ова страница користи превише меморије, па ју је Chromium паузирао.</translation>
-<translation id="9036189287518468038">Покретач Chromium апликација</translation>
 <translation id="9089354809943900324">Chromium је застарео</translation>
 <translation id="9093206154853821181">{0,plural, =1{Поново ћемо покренути Chromium за један сат}one{Поново ћемо покренути Chromium за # сат}few{Поново ћемо покренути Chromium за # сата}other{Поново ћемо покренути Chromium за # сати}}</translation>
 <translation id="91086099826398415">Отвори линк у новој Chromium &amp;картици</translation>
 <translation id="911206726377975832">Желите ли да избришете и податке прегледања?</translation>
 <translation id="9158494823179993217">Администратор система је конфигурисао Chromium да отвара алтернативни прегледач за приступ URL-у <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Ако прекинете везу са <ph name="USERNAME" />, обрисаћете историју, обележиваче, подешавања и друге Chromium податке сачуване на овом уређају. Подаци сачувани на Google налогу неће бити обрисани и можете њима да управљате на <ph name="GOOGLE_DASHBOARD_LINK" />Google контролној табли<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Сада сте пријављени на Chromium</translation>
 <translation id="93478295209880648">Chromium можда неће исправно функционисати зато што више није подржан на Windows XP-у или Windows Vista-и</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> захтева да прочитате и прихватите следеће Услове коришћења услуге пре него што почнете да користите овај уређај. Ови услови не представљају проширење, измену или ограничење Услова за Chromium ОС.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_sv.xtb b/chrome/app/resources/chromium_strings_sv.xtb
index 975215a9..3f6e8e2 100644
--- a/chrome/app/resources/chromium_strings_sv.xtb
+++ b/chrome/app/resources/chromium_strings_sv.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Lösenorden exporteras från Chromium. Skriv ditt Windows-lösenord om du tillåter detta.</translation>
 <translation id="1115445892567829615">Chromium kunde inte synkronisera data. Uppdatera lösenfrasen för synkroniseringen.</translation>
 <translation id="113122355610423240">Chromium är din standardwebbläsare</translation>
-<translation id="1170115874949214249">Installera Chromium på mobilen. Vi skickar ett sms till ditt telefonnummer för kontoåterställning.</translation>
-<translation id="1174473354587728743">Delar du dator? Nu kan du konfigurera Chromium precis som du vill.</translation>
 <translation id="1185134272377778587">Om Chromium</translation>
-<translation id="1298199220304005244">Få hjälp med att använda Chromium OS</translation>
 <translation id="1396446129537741364">Chromium försöker visa lösenord.</translation>
 <translation id="1414495520565016063">Du är inloggad i Chromium.</translation>
 <translation id="151962892725702025">Det gick inte att synkronisera data med Chromium eftersom synkronisering inte är tillgängligt för domänen.</translation>
 <translation id="1524282610922162960">Dela en flik i Chromium</translation>
-<translation id="1668054258064581266">När du har tagit bort kontot från Chromium kan öppna flikar behöva läsas in på nytt för att ändringen ska träda i kraft.</translation>
-<translation id="1688750314291223739">Konfigurera synkronisering för att spara dina webbläsarfunktioner på webben och använda dem i Chromium på alla datorer.</translation>
 <translation id="1708666629004767631">Det finns en ny, ännu säkrare version av Chromium.</translation>
 <translation id="1766096484055239003">Administratören meddelar att du måste starta om Chromium så att en uppdatering tillämpas</translation>
 <translation id="1774152462503052664">Låt Chromium köras i bakgrunden</translation>
 <translation id="1779356040007214683">Vi har gjort Chromium säkrare genom att inaktivera vissa tillägg som inte finns i <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> och som kan ha lagts till utan att du vet om det.</translation>
 <translation id="1808667845054772817">Installera om Chromium</translation>
-<translation id="1869480248812203386">Du kan bidra till att göra Chromium säkrare och enklare att använda genom att rapportera uppgifter om möjliga säkerhetsincidenter till Google automatiskt.</translation>
 <translation id="1881322772814446296">Du loggar in med ett hanterat konto och ger dess administratör kontroll över din Chromium-profil. Dina uppgifter i Chromium, t.ex. dina appar, bokmärken, din historik, ditt lösenord och andra inställningar, kopplas då permanent till <ph name="USER_NAME" />. Du kommer att kunna ta bort dessa uppgifter via instrumentpanelen i Google Konton, men du kommer inte att kunna koppla dem till något annat konto. Du kan skapa en ny profil om du vill hålla dina befintliga Chromium-uppgifter separata. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Om du inaktiverar detta kan du logga in på Googles webbplatser, till exempel Gmail, utan att logga in i Chromium</translation>
 <translation id="1929939181775079593">Chromium svarar inte. Vill du starta om?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Administratören meddelar att du bör starta om Chromium så att uppdateringen tillämpas</translation>
 <translation id="2119636228670142020">Om &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Om du delar en dator med vänner och familj kan de konfigurera Chromium precis som de vill och surfa separat.</translation>
-<translation id="2265088490657775772">Ladda ned Chromium på iPhone</translation>
 <translation id="2347108572062610441">Det här tillägget har ändrat vilken sida som visas när du startar Chromium.</translation>
 <translation id="2396765026452590966">Tillägget <ph name="EXTENSION_NAME" /> har ändrat vilken sida som visas när du startar Chromium.</translation>
 <translation id="2483889755041906834">I Chromium</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Chromium måste avslutas på datorn före uppdateringen. Detta kan leda till att andra användare som är inloggade på datorn förlorar ändringar som inte har sparats.</translation>
 <translation id="2847479871509788944">Ta bort från Chromium …</translation>
 <translation id="2886012850691518054">Valfritt: Hjälp till att göra Chromium bättre genom att automatiskt skicka användningsstatistik och felrapporter till Google.</translation>
-<translation id="2898082584336937987">Installera Chromium på mobilen. Vi skickar ett sms till mobilen: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Om &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium är uppdaterat</translation>
 <translation id="3032787606318309379">Lägger till i Chromium ...</translation>
-<translation id="3046695367536568084">Du måste vara inloggad i Chromium för att kunna använda appar. När du är inloggad kan du synkronisera appar, bokmärken, historik, lösenord och andra inställningar mellan dina enheter.</translation>
 <translation id="3068515742935458733">Hjälp oss att göra Chromium bättre genom att skicka felrapporter och <ph name="UMA_LINK" /> till Google</translation>
 <translation id="3103660991484857065">Det gick inte att packa upp arkivet med installationsfilen. Ladda ned Chromium igen.</translation>
 <translation id="3130323860337406239">Chromium använder din mikrofon.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Öppna länken i ett inko&amp;gnitofönster i Chromium</translation>
 <translation id="3190315855212034486">Hoppsan! Chromium har kraschat. Vill du starta om nu?</translation>
 <translation id="3229526316128325841">Lösenorden exporteras från Chromium.</translation>
-<translation id="3256316712990552818">Kopierat till Chromium</translation>
 <translation id="3258596308407688501">Chromium kan inte läsa och skriva till datakatalogen:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">Den senaste versionen har viktiga säkerhetsförbättringar och nya funktioner.</translation>
 <translation id="421369550622382712">Upptäck fantastiska appar, spel, tillägg och teman för Chromium.</translation>
 <translation id="4216212958613226427">Användargränssnittet i Chromium visas på det här språket</translation>
-<translation id="4222580632002216401">Nu är du inloggad på Chromium. Synkronisering har inaktiverats av administratören.</translation>
 <translation id="4230135487732243613">Vill du koppla dina uppgifter i Chromium till det här kontot?</translation>
 <translation id="4271805377592243930">Få hjälp med Chromium</translation>
 <translation id="4285930937574705105">Installationen misslyckades på grund av ett ospecificerat fel. Stäng Chromium om det är igång och försök sedan igen.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Chromium körs i bakgrundsläge.</translation>
 <translation id="4987820182225656817">Gäster kan använda Chromium utan att lämna spår efter sig.</translation>
 <translation id="4994636714258228724">Lägg till dig själv i Chromium</translation>
-<translation id="5181952534059945058">Den här sidan använder för mycket minne, så en del innehåll har tagits bort.</translation>
 <translation id="5277894862589591112">Ändringarna tillämpas när du startar om Chromium</translation>
 <translation id="5358375970380395591">Du loggar in med ett hanterat konto och ger dess administratör kontroll över din Chromium-profil. Dina uppgifter i Chromium, t.ex. dina appar, bokmärken, din historik, ditt lösenord och andra inställningar, kopplas då permanent till <ph name="USER_NAME" />. Du kommer att kunna ta bort dessa uppgifter via instrumentpanelen i Google Konton, men du kommer inte att kunna koppla dem till något annat konto. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium uppdateras (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">Starta om</translation>
 <translation id="5987687638152509985">Du måste uppdatera Chromium innan synkroniseringen kan starta</translation>
 <translation id="6013050204643758987">Chromium OS fungerar tack vare <ph name="BEGIN_LINK_CROS_OSS" />program med öppen källkod<ph name="END_LINK_CROS_OSS" />, liksom <ph name="BEGIN_LINK_LINUX_OSS" />Linux (beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Stäng</translation>
 <translation id="6055895534982063517">Det finns en ny version av Chromium och den är snabbare än någonsin.</translation>
 <translation id="6063093106622310249">&amp;Öppna i Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> har lagts till i Chromium</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Chromium OS-system</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium startas om om en sekund}other{Chromium startas om om # sekunder}}</translation>
 <translation id="6475912303565314141">Det styr också vilken sida som visas när du startar Chromium.</translation>
-<translation id="6485906693002546646">Du synkroniserar dina grejer i Chromium med <ph name="PROFILE_EMAIL" />. Om du vill ändra synkroniseringsinställningen eller använda Chromium utan ett Google-konto besöker du <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Avinstallera Chromium</translation>
 <translation id="6570579332384693436">Chromium skickar det du skriver i textfält till Google för att kontrollera stavningen</translation>
 <translation id="6598877126913850652">Öppna aviseringsinställningarna för Chromium</translation>
@@ -164,7 +150,6 @@
 Vissa funktioner är kanske inte tillgängliga. Ange en annan profilkatalog eller använd en nyare version av Chromium.</translation>
 <translation id="6734080038664603509">Uppdatera &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium har redan installerats för alla användare på datorn.</translation>
-<translation id="6810143991807788455">Hjälp oss att förbättra Chromium genom att rapportera dina aktuella inställningar</translation>
 <translation id="6847869444787758381">Om dina lösenord någonsin skulle läcka ut får du veta det i Chromium</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (har kopierats till Chromium)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">Inställningsfilen är skadad eller ogiltig.
 
 Chromium kan inte återställa dina inställningar.</translation>
-<translation id="7331920710658926971">Installera Chromium på mobilen. Vi skickar ett sms till mobilen.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Nytt fönster</translation>
 <translation id="734373864078049451">Här finns webben, bokmärken och allt annat du använder Chromium till.</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">Dölj i Chromium-menyn</translation>
 <translation id="8013436988911883588">När du har gett Chromium åtkomst kan webbplatser begära att få åtkomst.</translation>
 <translation id="81770708095080097">Filen är farlig och har blockerats av Chromium.</translation>
-<translation id="8222496066431494154">Installera Chromium på mobilen. Vi skickar ett sms till ditt telefonnummer för kontoåterställning: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Om en bild inte har någon användbar beskrivning görs ett försök att beskriva den åt dig i Chromium. Bilderna skickas till Google så att beskrivningen kan genereras. Du kan när som helst inaktivera den här inställningen.</translation>
-<translation id="8269379391216269538">Bidra till att förbättra Chromium</translation>
 <translation id="8290862415967981663">Filen kan vara farlig och har blockerats av Chromium.</translation>
 <translation id="8330519371938183845">Genom att logga in kan du synkronisera och anpassa Chromium på alla enheter du använder</translation>
 <translation id="8340674089072921962">Chromium användes tidigare av <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="8417404458978023919">{0,plural, =1{Starta om Chromium inom en dag}other{Starta om Chromium inom # dagar}}</translation>
 <translation id="8453117565092476964">Arkivet för installationsfilen är skadat eller ogiltigt. Ladda ned Chromium igen.</translation>
 <translation id="8493179195440786826">Den här versionen av Chromium är inaktuell</translation>
-<translation id="85843667276690461">Få hjälp med att använda Chromium</translation>
 <translation id="8586442755830160949">Upphovsrätt <ph name="YEAR" /> The Chromium Authors. Med ensamrätt.</translation>
 <translation id="8619360774459241877">Chromium startas …</translation>
 <translation id="8621669128220841554">Installationen misslyckades på grund av ett okänt fel. Ladda ned Chromium igen.</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">Skriv ditt lösenord i Windows om du vill tillåta att lösenord visas i Chromium.</translation>
 <translation id="8941642502866065432">Det gick inte att uppdatera Chromium</translation>
 <translation id="8974095189086268230">Chromium OS fungerar tack vare <ph name="BEGIN_LINK_CROS_OSS" />program med öppen källkod<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Någon har tidigare loggat in i Chromium på den här datorn som <ph name="ACCOUNT_EMAIL_LAST" />. Om det inte är ditt konto skapar du en ny Chromium-användare för att hålla din information privat för dig.
-
-Om du loggar in ändå kommer information som bokmärken, historik och andra inställningar i Chromium att synkroniseras med <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Vi har gjort Chromium säkrare genom att inaktivera följande tillägg som inte anges i <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> och som kan ha lagts till utan att du vet om det.</translation>
 <translation id="9022552996538154597">Logga in i Chromium</translation>
-<translation id="9025992965467895364">Den här sidan har pausats i Chromium eftersom den använder för mycket minne.</translation>
-<translation id="9036189287518468038">Startprogrammet för appar i Chromium</translation>
 <translation id="9089354809943900324">Den här versionen av Chromium är inaktuell</translation>
 <translation id="9093206154853821181">{0,plural, =1{Om en timme startas Chromium om}other{Om # timmar startas Chromium om}}</translation>
 <translation id="91086099826398415">Öppna länken i en ny &amp;flik i Chromium</translation>
 <translation id="911206726377975832">Vill du även ta bort din webbinformation?</translation>
 <translation id="9158494823179993217">Systemadministratören har konfigurerat Chromium så att <ph name="TARGET_URL_HOSTNAME" /> öppnas i en annan webbläsare.</translation>
-<translation id="918373042641772655">Om du kopplar från <ph name="USERNAME" /> rensas din historik, dina bokmärken, dina inställningar och annan Chromium-data som du har lagrat på enheten. Data som lagras i Google-kontot rensas inte utan kan hanteras via <ph name="GOOGLE_DASHBOARD_LINK" />Google Översikt<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Du är nu inloggad i Chromium</translation>
 <translation id="93478295209880648">Chromium kanske inte fungerar ordentligt eftersom den inte längre stöds på Windows XP och Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> kräver att du läser och godkänner följande användarvillkor innan du använder enheten. Villkoren varken utökar, ändrar eller begränsar villkoren för Chromium OS.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_sw.xtb b/chrome/app/resources/chromium_strings_sw.xtb
index 723fec9..8dc2a9dc 100644
--- a/chrome/app/resources/chromium_strings_sw.xtb
+++ b/chrome/app/resources/chromium_strings_sw.xtb
@@ -7,22 +7,16 @@
 <translation id="1104942323762546749">Chromium ingependa kuhamisha manenosiri yako. Andika nenosiri lako la Windows ili uruhusu shughuli hii.</translation>
 <translation id="1115445892567829615">Chromium haikuweza kusawazisha data yako. Tafadhali sasisha kauli siri yako ya Usawazishaji.</translation>
 <translation id="113122355610423240">Chromium ni kivinjari chako chaguomsingi</translation>
-<translation id="1170115874949214249">Sakinisha Chromium kwenye simu yako. Tutatuma SMS kwenye nambari yako ya simu ya mbinu za kurejesha uwezo wa kufikia akaunti.</translation>
-<translation id="1174473354587728743">Ungependa kushiriki kompyuta? Sasa unaweza kusanidi Chromium kama tu unavyoipenda.</translation>
 <translation id="1185134272377778587">Kuhusu Chromium</translation>
-<translation id="1298199220304005244">Pata msaada unapotumia Chromium OS</translation>
 <translation id="1396446129537741364">Chromium inajaribu kuonyesha manenosiri.</translation>
 <translation id="1414495520565016063">Umeingia kwenye Chromium!</translation>
 <translation id="151962892725702025">Mfumo wa Uendeshaji wa Chromium haukuweza kusawazisha data yako kwa sababu Usawazishaji haupatikani kwa kikoa chako.</translation>
 <translation id="1524282610922162960">Shiriki kichupo cha Chromium</translation>
-<translation id="1668054258064581266">Baada ya kuondoa akaunti yako kwenye Chromium, huenda ukahitajika kupakia upya vichupo vyako vilivyo wazi ili kuanza kufanya kazi.</translation>
-<translation id="1688750314291223739">Sanidi Usawazishaji ili uhifadhi vipengele vyako vya kivinjari vilivyobinafsishwa kwenye mtandao na uvifikie kutoka Chromium katika kompyuta yoyote</translation>
 <translation id="1708666629004767631">Kuna toleo jipya, na salama linalopatikana la Chromium.</translation>
 <translation id="1766096484055239003">Msimamizi wako anakushauri uwashe Chromium upya ili utumie sasisho</translation>
 <translation id="1774152462503052664">Acha Chromium iendeshe katika mandharinyuma</translation>
 <translation id="1779356040007214683">Ili kufanya Chromium salama zaidi, tumezima baadhi ya viendelezi ambavyo havijaorodheshwa katika <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> na ambavyo huendwa viliongezwa pasipo ridhaa yako.</translation>
 <translation id="1808667845054772817">Sakinisha Chromium Upya</translation>
-<translation id="1869480248812203386">Unaweza kusaidia kuifanya Chromium salama na rahisi zaidi kutumia kwa kuripoti maelezo ya uwezekano wa matukio yasiyo salama kwa Google kiotomatiki.</translation>
 <translation id="1881322772814446296">Unaingia katika akaunti ukitumia akaunti inayodhibitiwa na kumpa msimamizi wa akaunti hiyo udhibiti wa wasifu wako kwenye Chromium. Data yako ya Chromium, kama vile programu zako, alamisho, historia, manenosiri, na mipangilio nyingine itahusishwa na<ph name="USER_NAME" /> kabisa. Utaweza kufuta data hii kupitia Dashibodi ya Akaunti za Google, lakini hutaweza  kuunganisha data hii na akaunti nyingine. Unaweza kwa hiari kuunda wasifu mpya ili kuweka data yako ya Chromium iliyo kando. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Kwa kuzima kipengele hiki, unaweza kuingia katika tovuti za Google kama vile Gmail bila kuingia katika akaunti ya Chromium</translation>
 <translation id="1929939181775079593">Chromium haiamiliki. Zindua upya sasa?</translation>
@@ -31,7 +25,6 @@
 <translation id="2117378023188580026">Msimamizi wako anakuomba uwashe Chromium upya ili utumie sasisho</translation>
 <translation id="2119636228670142020">Kuhusu Chromium OS</translation>
 <translation id="2241627712206172106">Kama unatumia kompyuta pamoja na wengine, marafiki na familia wanaweza kuvinjari tofauti na kusanidi Chromium jinsi wapendavyo.</translation>
-<translation id="2265088490657775772">pata Chromium kwenye iPhone yako</translation>
 <translation id="2347108572062610441">Kiendelezi hiki kimebadilisha ukurasa unaoonyeshwa unapoanzisha Chromium.</translation>
 <translation id="2396765026452590966">Kiendelezi hiki "<ph name="EXTENSION_NAME" />" kimebadilisha ukurasa unaoonyeshwa unapoanzisha Chromium.</translation>
 <translation id="2483889755041906834">Katika Chromium</translation>
@@ -50,11 +43,9 @@
 <translation id="2838154144102149890">Ili usasishe, unahitaji kuacha kutumia Chromium kwenye kompyuta hii. Hali hii inaweza kusababisha watumiaji wengine walioingia katika akaunti kwenye kompyuta hii kupoteza mabadiliko ambayo hawajahifadhi.</translation>
 <translation id="2847479871509788944">Ondoa kwenye Chromium...</translation>
 <translation id="2886012850691518054">Si lazima: Saidia kuboresha Chromium kwa kutumia Google takwimu za matumizi na ripoti wakati wowote huduma hii inapoacha kufanya kazi.</translation>
-<translation id="2898082584336937987">Sakinisha Chromium kwenye simu yako. Tutatuma SMS kwenye nambari yako ya simu: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Kuhusu Chromium</translation>
 <translation id="2977470724722393594">Chromium imesasishwa</translation>
 <translation id="3032787606318309379">Inaongeza kwenye Chromium...</translation>
-<translation id="3046695367536568084">Unapaswa kuwa umeingia katika akaunti ya Chromium ili utumie programu hizi. Hii inaruhusu Chromium kusawazisha programu, alamisho, historia, manenosiri yako, na mipangilio mingine katika vifaa vyote.</translation>
 <translation id="3068515742935458733">Saidia kuboresha Chromium kwa kutuma ripoti za kuacha kufanya kazi na <ph name="UMA_LINK" /> kwenda Google</translation>
 <translation id="3103660991484857065">Kisakinishi kilishindwa kufinyuza kumbukumbu. Tafadhali pakua Chromium tena.</translation>
 <translation id="3130323860337406239">Chromium inatumia maikrofoni yako.</translation>
@@ -62,7 +53,6 @@
 <translation id="3179665906251668410">Fungua Kiungo katika Dirisha Fiche la Chromium</translation>
 <translation id="3190315855212034486">Lo! Chromium imevurugika. Unataka kuzindua upya sasa?</translation>
 <translation id="3229526316128325841">Chromium ingependa kuhamisha manenosiri yako.</translation>
-<translation id="3256316712990552818">Imenakiliwa kwenye Chromium</translation>
 <translation id="3258596308407688501">Chromium haiwezi kusoma na kuandika kwenye saraka yake ya data:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -86,7 +76,6 @@
 <translation id="4050175100176540509">Maboresho muhimu ya usalama na vipengele vipya vinapatikana katika toleo jipya.</translation>
 <translation id="421369550622382712">Gundua programu, michezo, viendelezi na mandhari bora ya Chromium.</translation>
 <translation id="4216212958613226427">Lugha hii inatumiwa kuonyesha Kiolesura cha Chromium</translation>
-<translation id="4222580632002216401">Sasa umeingia kwenye Chromium! Usawazishaji umezimwa na msimamizi wako.</translation>
 <translation id="4230135487732243613">Ungependa kuunganisha data yako ya Chromium kwenye akaunti hii?</translation>
 <translation id="4271805377592243930">Pata usaidizi wa kutumia Chromium</translation>
 <translation id="4285930937574705105">Usanidi umeshindwa kwa sababu ya hitilafu isiyojulikana. Ikiwa Chromium inaendesha sasa, tafadhali ifunge na ujaribu tena.</translation>
@@ -109,7 +98,6 @@
 <translation id="4943838377383847465">Chromium iko katika hali ya chini chini.</translation>
 <translation id="4987820182225656817">Walioalikwa wanaweza kutumia Chromium bila kuacha kitu chochote nyuma.</translation>
 <translation id="4994636714258228724">Jiongeze kwenye Chrome</translation>
-<translation id="5181952534059945058">Ukurasa huu unatumia hifadhi kubwa mno, hivyo basi Chromium imeondoa baadhi ya maudhui.</translation>
 <translation id="5277894862589591112">Ili utumie mabadiliko uliyofanya, fungua Chromium upya</translation>
 <translation id="5358375970380395591">Unaingia katika akaunti inayodhibitiwa na kumpa msimamizi wa akaunti hiyo udhibiti wa wasifu wako kwenye Chromium. Data yako ya Chromium, kama vile programu zako, alamisho, historia, manenosiri, na mipangilio miingine itahusishwa na <ph name="USER_NAME" /> kabisa. Utaweza kufuta data hii kupitia Dashibodi ya Akaunti za Google, lakini hutaweza  kuunganisha data hii na akaunti nyingine. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Inasasisha Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -132,7 +120,6 @@
 <translation id="5895138241574237353">Zzima na uwashe</translation>
 <translation id="5987687638152509985">Sasisha Chromium ili uanze kusawazisha</translation>
 <translation id="6013050204643758987">Mfumo wa uendeshaji wa Chromium unawezeshwa na <ph name="BEGIN_LINK_CROS_OSS" />programu huria<ph name="END_LINK_CROS_OSS" /> za ziada, jinsi ilivyo <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Funga</translation>
 <translation id="6055895534982063517">Kuna toleo jipya la Chromium linalopatikana, na ni la kasi kuliko la awali.</translation>
 <translation id="6063093106622310249">Fungua katika Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> imeongezwa kwenye Chromium</translation>
@@ -154,7 +141,6 @@
 <translation id="6434250628340475518">Mfumo wa Uendeshaji wa Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium itazimika na kuwaka tena baada ya sekunde 1}other{Chromium itazimika na kuwaka tena baada ya sekunde #}}</translation>
 <translation id="6475912303565314141">Pia inadhibiti ukurasa unaoonyeshwa unapoanzisha Chromium.</translation>
-<translation id="6485906693002546646">Unatumia <ph name="PROFILE_EMAIL" /> kusawazisha vitu vyako vya Chromium. Ili usasishe mapendeleo yako ya usawazishaji au utumie Chromium bila akaunti ya Google, tembelea <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Ondoa Chromium</translation>
 <translation id="6570579332384693436">Ili kurekebisha makosa ya tahajia, Chromium hutuma maandishi unayoandika kwenye sehemu za maandishi kwa Google</translation>
 <translation id="6598877126913850652">Nenda kwenye mipangilio ya arifa ya Chromium</translation>
@@ -164,7 +150,6 @@
 Baadhi ya vipengele huenda visipatikane. Tafadhali bainisha saraka tofauti ya wasifu au utumie toleo jipya la Chromium.</translation>
 <translation id="6734080038664603509">Sasisha &amp;Chromium</translation>
 <translation id="6734291798041940871">Tayari Chromium imesakinishwa kwa watumiaji wote kwenye kompyuta yako.</translation>
-<translation id="6810143991807788455">Saidia kuboresha Chromium kwa kuripoti mipangilio ya sasa</translation>
 <translation id="6847869444787758381">Chromium hukuruhusu ujue iwapo manenosiri yako yameathiriwa</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (imenakiliwa kwenye Chromium)</translation>
@@ -183,7 +168,6 @@
 <translation id="7318036098707714271">Faili yako ya mapendeleo imeharibika au ni batili. 
 
 Chromium haiwezi kufufua mipangilio yako.</translation>
-<translation id="7331920710658926971">Sakinisha Chromium kwenye simu yako. Tutatuma SMS kwenye simu yako.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Dirisha jipya</translation>
 <translation id="734373864078049451">Wavuti, alamisho, na mambo yako mengine ya Chromium yanapatikana hapa.</translation>
@@ -215,16 +199,13 @@
 <translation id="7979877361127045932">Ficha katika menyu ya Chromium</translation>
 <translation id="8013436988911883588">Chromium itakapopata idhini, tovuti zitaweza kukuomba idhini ya kufikia.</translation>
 <translation id="81770708095080097">Faili hii ni hatari, kwa hivyo Chromium imeizuia.</translation>
-<translation id="8222496066431494154">Sakinisha Chromium kwenye simu yako. Tutatuma SMS kwenye nambari yako ya simu ya mbinu za kurejesha uwezo wa kufikia akaunti: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Ikiwa picha haina ufafanuzi muhimu, Chromium itajaribu kukuwekea. Ili kuweka ufafanuzi, tutatuma picha kwa Google. Unaweza kuzima mipangilio hii wakati wowote.</translation>
-<translation id="8269379391216269538">Saidia ili kuiboresha Chromium</translation>
 <translation id="8290862415967981663">Huenda faili hii ni hatari, kwa hivyo Chromium imeizuia.</translation>
 <translation id="8330519371938183845">Ingia katika akaunti ili usawazishe na uweke mapendeleo kwenye Chromium katika vifaa vyako vyote</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> ilikuwa ikitumia Chromium awali</translation>
 <translation id="8417404458978023919">{0,plural, =1{Fungua Chromium upya ndani ya siku moja}other{Fungua Chromium upya ndani ya siku #}}</translation>
 <translation id="8453117565092476964">Kumbukumbu ya kisakinishi imeharibika au ni batili. Tafadhali pakua Chromium tena.</translation>
 <translation id="8493179195440786826">Chromium Imepitwa na Wakati</translation>
-<translation id="85843667276690461">Pata msaada kwa kutumia Chromium</translation>
 <translation id="8586442755830160949">Hakimiliki <ph name="YEAR" /> Wasanidi wa Chromium. Haki zote zimehifadhiwa.</translation>
 <translation id="8619360774459241877">Inaanzisha Chromium...</translation>
 <translation id="8621669128220841554">Usakinishaji ulishindwa kwa sababu ya hitilafu isiyobainika. Tafadhali pakua Chromium tena.</translation>
@@ -242,21 +223,14 @@
 <translation id="8907580949721785412">Chromium inajaribu kuonyesha manenosiri. Chapa nenosiri lako la Windows ili uruhusu hili.</translation>
 <translation id="8941642502866065432">Imeshindwa kusasisha Chromium</translation>
 <translation id="8974095189086268230">Chromium OS imewezeshwa na programu za ziada za <ph name="BEGIN_LINK_CROS_OSS" />programu huria<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Awali kuna mtu aliingia katika Chromium kwenye kompyuta hii kama <ph name="ACCOUNT_EMAIL_LAST" />. Iwapo hiyo si akaunti yako, fungua mtumiaji mwengine wa Chromium ili utenge maelezo yako.
-
-Kuingia bila kujali kutaunganisha maelezo ya Chromium kama vile alamisho, historia, na mipangilio mingine kwenye <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Ili kufanya Chromium salama zaidi, tumezima kiendelezi kinachofuata ambacho hakijaorodheshwa katika <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> na huenda kimeongezwa bila ridhaa yako.</translation>
 <translation id="9022552996538154597">Ingia kwenye Chromium</translation>
-<translation id="9025992965467895364">Ukurasa huu unatumia hifadhi kubwa zaidi, kwa hivyo Chromium imeusitisha.</translation>
-<translation id="9036189287518468038">Kizinduzi cha Programu ya Chromium</translation>
 <translation id="9089354809943900324">Chromium imepitwa na wakati</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium itafunguka upya ndani ya saa moja}other{Chromium itafunguka upya ndani ya saa #}}</translation>
 <translation id="91086099826398415">Fungua Kiungo katika kichupo kipya cha Chromium</translation>
 <translation id="911206726377975832">Futa historia yako ya kuvinjari pia?</translation>
 <translation id="9158494823179993217">Msimamizi wa mfumo unaotumia ameweka mipangilio ya Chromium ifungue kivinjari mbadala ili ufikie<ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Kuondoa <ph name="USERNAME" /> kutafuta historia, alamisho, mipangilio, na data zako nyingine kwenye Chromium zilizohifadhiwa kwenye kifaa hiki. Data iliyohifadhiwa katika Akaunti ya Google haitafutwa na inaweza kudhibitiwa kwenye <ph name="GOOGLE_DASHBOARD_LINK" />Dashibodi ya Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Sasa umeingia kwenye Chromium</translation>
 <translation id="93478295209880648">Huenda Chromium isifanye kazi vizuri kwa sababu haitumiki tena kwenye Windows XP au Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> huhitaji usome na ukubali Sheria na Masharti yafuatayo kabla ya kutumia kifaa hiki. Masharti haya hayapanui, kurekebisha au kupunguza Masharti ya Chromium OS.</translation>
 <translation id="985602178874221306">Waandishi wa Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_ta.xtb b/chrome/app/resources/chromium_strings_ta.xtb
index 4ea3570..5edb3fe 100644
--- a/chrome/app/resources/chromium_strings_ta.xtb
+++ b/chrome/app/resources/chromium_strings_ta.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium உங்கள் கடவுச்சொற்களை ஏற்ற விரும்புகிறது. இதை அனுமதிக்க, உங்கள் Windows கடவுச்சொல்லை உள்ளிடவும்.</translation>
 <translation id="1115445892567829615">Chromium ஆல் உங்கள் தரவை ஒத்திசைக்க முடியவில்லை. உங்கள் ஒத்திசைவு கடவுச்சொற்றொடரைப் புதுப்பிக்கவும்.</translation>
 <translation id="113122355610423240">உங்கள் இயல்புநிலை உலாவி Chromium ஆகும்</translation>
-<translation id="1170115874949214249">உங்கள் மொபைலில் Chromiumமை நிறுவவும். கணக்கின் மீட்பு மொபைல் எண்ணுக்கு SMS ஒன்றை அனுப்புவோம்.</translation>
-<translation id="1174473354587728743">கம்ப்யூட்டரைப் பகிர்ந்து கொண்டுள்ளீர்களா? இப்போது நீங்கள் விரும்பும் விதத்தில் Chromiumமை அமைக்கலாம்.</translation>
 <translation id="1185134272377778587">Chromium அறிமுகம்</translation>
-<translation id="1298199220304005244">Chromium OS பயன்படுத்தி உதவி பெறுக</translation>
 <translation id="1396446129537741364">Chromium ஆனது கடவுச்சொற்களைக் காட்ட முயற்சிக்கிறது.</translation>
 <translation id="1414495520565016063">Chromium இல் உள்நுழைந்துள்ளீர்கள்!</translation>
 <translation id="151962892725702025">உங்கள் களத்திற்கு ஒத்திசைவு கிடைக்கவில்லை என்பதால், Chromium OS ஆல் உங்கள் தரவை ஒத்திசைக்க முடியவில்லை.</translation>
 <translation id="1524282610922162960">Chromium தாவலைப் பகிர்தல்</translation>
-<translation id="1668054258064581266">Chromiumமிலிருந்து உங்கள் கணக்கை அகற்றிய பின்னர், செயல்படுத்த உங்கள் திறந்த தாவல்களை மீண்டும் ஏற்ற வேண்டியிருக்கலாம்.</translation>
-<translation id="1688750314291223739">உங்கள் தனிப்பயனாக்கப்பட்ட உலாவி அம்சங்களை வலையில் சேமிக்க, ஒத்திசைவை அமைத்து, எந்தக் கம்ப்யூட்டரிலும் Chromiumமிலிருந்து அவற்றை அணுகலாம்.</translation>
 <translation id="1708666629004767631">Chromium இன் புதிய, பாதுகாப்பான பதிப்பு கிடைக்கிறது.</translation>
 <translation id="1766096484055239003">புதுப்பிப்பைப் பயன்படுத்த, Chromiumஐ மீண்டும் தொடங்கும்படி உங்கள் நிர்வாகி சொல்கிறார்</translation>
 <translation id="1774152462503052664">பின்புலத்தில் Chromium ஐ இயக்கு</translation>
 <translation id="1779356040007214683">Chromium ஐப் பாதுகாப்பானதாக்க <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> இல் பட்டியலிடப்படாத சில நீட்டிப்புகளை நாங்கள் முடக்கிவிட்டோம், மேலும் அவை உங்களுக்குத் தெரியாமல் சேர்க்கப்பட்டிருக்கலாம்.</translation>
 <translation id="1808667845054772817">Chromium ஐ மீண்டும்நிறுவு</translation>
-<translation id="1869480248812203386">பாதுகாப்பிற்கு இடையூறு விளைவிக்கும் சாத்தியமுள்ள செயல்பாடு குறித்த விவரங்களைத் தானாகவே Google க்கு அனுப்புவதன் மூலம், Chromium ஐ மேலும் பாதுகாப்பானதாகவும், பயன்படுத்துவதற்கு எளிதானதாகவும் மாற்ற உதவவும்.</translation>
 <translation id="1881322772814446296">நீங்கள் நிர்வகிக்கப்படும் கணக்கு மூலம் உள்நுழைகிறீர்கள், மேலும் அதன் நிர்வாகிக்கு உங்கள் Chromium சுயவிவரத்தின் கட்டுப்பாட்டை வழங்குகிறீர்கள். உங்கள் ஆப்ஸ், புக்மார்க்குகள், வரலாறு, கடவுச்சொற்கள் போன்ற உங்கள் Chromium தரவு மற்றும் பிற அமைப்புகள் நிரந்தரமாக <ph name="USER_NAME" /> உடன் இணைக்கப்படும். இந்தத் தரவை Google கணக்குகளின் டாஷ்போர்டு வழியாக நீக்க முடியும், ஆனால் இந்தத் தரவை வேறொரு கணக்குடன் தொடர்புபடுத்த முடியாது. விரும்பினால், உங்களுடைய நடப்பு Chromium தரவைத் தனிப்பட்ட முறையில் வைத்திருக்க நீங்கள் புதிய சுயவிவரத்தை உருவாக்கலாம். <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">இதை முடக்கினால், நீங்கள் Chromiumமில் உள்நுழையாமலேயே Gmail போன்ற Google தளங்களில் உள்நுழையலாம்</translation>
 <translation id="1929939181775079593">Chromium பதிலளிக்கவில்லை. இப்போது மீண்டும் தொடங்கவா?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">இந்தப் புதுப்பிப்பைப் பயன்படுத்த, Chromiumஐ மீண்டும் தொடங்கும்படி உங்கள் நிர்வாகி பரிந்துரைக்கிறார்</translation>
 <translation id="2119636228670142020">&amp;Chromium OS அறிமுகம்</translation>
 <translation id="2241627712206172106">நீங்கள் கம்ப்யூட்டரைப் பகிர்ந்தால், நண்பர்களும் குடும்பத்தினரும் தனிப்பட்ட முறையில் உலாவலாம், மேலும் Chromiumமை அவர்கள் விருப்பத்திற்கு ஏற்ப அமைத்துக்கொள்ளலாம்.</translation>
-<translation id="2265088490657775772">iPhone இல் Chromiumஐப் பெறுக</translation>
 <translation id="2347108572062610441">Chromiumஐத் தொடங்கும் போது காண்பிக்கப்படும் பக்கத்தை இந்த நீட்டிப்பு மாற்றியுள்ளது.</translation>
 <translation id="2396765026452590966">Chromiumஐத் தொடங்கும் போது காண்பிக்கப்படும் பக்கத்தை, "<ph name="EXTENSION_NAME" />" நீட்டிப்பு மாற்றியுள்ளது.</translation>
 <translation id="2483889755041906834">Chromium இல்</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">புதுப்பிக்க இந்தக் கம்ப்யூட்டரில் Chromium இயங்குவதை நிறுத்த வேண்டும். இதனால் உள்நுழைந்துள்ள பிற பயனர்கள் தங்களின் சேமிக்கப்படாத மாற்றங்களை இழக்கக்கூடும்.</translation>
 <translation id="2847479871509788944">Chromium இலிருந்து அகற்று...</translation>
 <translation id="2886012850691518054">விருப்பத்தேர்வு: பயன்பாட்டு புள்ளிவிவரங்களையும், சிதைவு அறிக்கைகளையும் Google க்கு தானாகவே அனுப்புவதன் மூலம் Chromium ஐ இன்னும் சிறந்ததாக்க உதவுக.</translation>
-<translation id="2898082584336937987">உங்கள் மொபைலில் Chromiumமை நிறுவவும். மொபைல் எண்ணுக்கு SMS ஒன்றை அனுப்புவோம்: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium அறிமுகம்</translation>
 <translation id="2977470724722393594">Chromium புதுப்பித்த நிலையில் உள்ளது</translation>
 <translation id="3032787606318309379">Chromium இல் சேர்க்கிறது...</translation>
-<translation id="3046695367536568084">பயன்பாடுகளைப் பயன்படுத்த Chromium இல் உள்நுழைந்திருக்க வேண்டும். எல்லா சாதனங்களிலும் உள்ள உங்கள் ஆப்ஸ், புக்மார்க்குகள், வரலாறு, கடவுச்சொற்கள் மற்றும் பிற அமைப்புகளை ஒத்திசைக்க Chromium ஐ இது அனுமதிக்கிறது.</translation>
 <translation id="3068515742935458733">சிதைவு அறிக்கைகளையும் <ph name="UMA_LINK" /> உம் Google க்கு அனுப்புவதன் மூலம் Chromium ஐ மேலும் சிறப்பானதாக்க உதவவும்</translation>
 <translation id="3103660991484857065">காப்பகத்தைச் சுருக்குவதில் நிறுவி தோல்வியடைந்தது. Chromiumமை மீண்டும் பதிவிறக்குக.</translation>
 <translation id="3130323860337406239">Chromium உங்கள் மைக்ரோஃபோனைப் பயன்படுத்துகிறது.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Chromium மறை&amp;நிலை சாளரத்தில் இணைப்பைத் திற</translation>
 <translation id="3190315855212034486">ஓ! Chromium செயலிழந்தது. இப்போது மீண்டும் தொடங்கவா?</translation>
 <translation id="3229526316128325841">Chromium உங்கள் கடவுச்சொற்களை ஏற்ற விரும்புகிறது.</translation>
-<translation id="3256316712990552818">Chromium இல் நகலெடுக்கப்பட்டது</translation>
 <translation id="3258596308407688501">தன்னுடைய தரவுக் கோப்பகத்தில் Chromium படிக்கவும் எழுதவும் செய்யாது:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">முக்கியப் பாதுகாப்பு மேம்பாடுகளும், புதிய அம்சங்களும் சமீபத்திய பதிப்பில் கிடைக்கின்றன.</translation>
 <translation id="421369550622382712">Chromiumக்கான சிறந்த ஆப்ஸ், கேம்கள், நீட்டிப்புகள் மற்றும் தீம்களைக் கண்டறியவும்.</translation>
 <translation id="4216212958613226427">Chromium UIயைக் காட்ட இந்த மொழி பயன்படுத்தப்படும்</translation>
-<translation id="4222580632002216401">தற்போது Chromium இல் உள்நுழைந்துள்ளீர்கள்! உங்கள் நிர்வாகியால் ஒத்திசைவு முடக்கப்பட்டுள்ளது.</translation>
 <translation id="4230135487732243613">உங்கள் Chromium தரவை இந்தக் கணக்குடன் இணைக்கவா?</translation>
 <translation id="4271805377592243930">Chromium தொடர்பான உதவி பெறுக</translation>
 <translation id="4285930937574705105">குறிப்பிடப்படாத பிழைக் காரணமாக நிறுவல் தோல்வியடைந்தது. Chromium தற்போது இயக்கத்தில் இருந்தால், அதை மூடி, பின்னர் முயலவும்.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium பின்புல பயன்முறையில் இயங்குகிறது.</translation>
 <translation id="4987820182225656817">எதையும் விட்டுசெல்லாமல் விருந்தினர்கள் Chromium ஐப் பயன்படுத்தலாம்.</translation>
 <translation id="4994636714258228724">உங்களை Chromium இல் சேர்க்கவும்</translation>
-<translation id="5181952534059945058">இந்தப் பக்கம் அதிகளவு நினைவகத்தைப் பயன்படுத்துவதால் Chromium சில உள்ளடக்கங்களை அகற்றியது.</translation>
 <translation id="5277894862589591112">உங்கள் மாற்றங்களைச் செயல்படுத்த, Chromiumமை மீண்டும் தொடங்கவும்</translation>
 <translation id="5358375970380395591">நீங்கள் நிர்வகிக்கப்படும் கணக்கு மூலம் உள்நுழைகிறீர்கள், மேலும் அதன் நிர்வாகிக்கு உங்கள் Chromium சுயவிவரத்தின் கட்டுப்பாட்டை வழங்குகிறீர்கள். உங்கள் ஆப்ஸ், புக்மார்க்குகள், வரலாறு, கடவுச்சொற்கள் போன்ற உங்கள் Chromium தரவு மற்றும் பிற அமைப்புகள் நிரந்தரமாக <ph name="USER_NAME" /> உடன் இணைக்கப்படும். இந்தத் தரவை Google கணக்குகளின் டாஷ்போர்டு வழியாக நீக்க முடியும், ஆனால் இந்தத் தரவை வேறொரு கணக்குடன் தொடர்புபடுத்த முடியாது. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromiumஐப் புதுப்பிக்கிறது (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">மறுதொடக்கம்</translation>
 <translation id="5987687638152509985">ஒத்திசைவைத் தொடங்க, Chromiumஐப் புதுப்பிக்கவும்</translation>
 <translation id="6013050204643758987">Chromium OS, <ph name="BEGIN_LINK_LINUX_OSS" />Linuxஸை (பீட்டா)<ph name="END_LINK_LINUX_OSS" /> போலவே கூடுதல் <ph name="BEGIN_LINK_CROS_OSS" />ஓப்பன் சோர்ஸ் மென்பொருளால்<ph name="END_LINK_CROS_OSS" /> உருவாக்கப்பட்டுள்ளது.</translation>
-<translation id="6040143037577758943">மூடு</translation>
 <translation id="6055895534982063517">Chromium இன் புதிய பதிப்பு கிடைக்கிறது, அது முன்பு இருந்ததை விடவும் வேகமானது.</translation>
 <translation id="6063093106622310249">Chromium இல் &amp;திற</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> என்ற நீட்டிப்பு Chromium இல் சேர்க்கப்பட்டது</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium OS சிஸ்டம்</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium 1 வினாடியில் மீண்டும் தொடங்கும்}other{Chromium # வினாடிகளில் மீண்டும் தொடங்கும்}}</translation>
 <translation id="6475912303565314141">Chromium ஐத் தொடங்கும்போது காண்பிக்கப்படும் பக்கத்தையும் இது கட்டுப்படுத்துகிறது.</translation>
-<translation id="6485906693002546646">உங்கள் Chromium விஷயங்களை ஒத்திசைக்க, <ph name="PROFILE_EMAIL" /> ஐப் பயன்படுத்துகிறீர்கள். உங்கள் ஒத்திசைவு விருப்பத்தேர்வைப் புதுப்பிக்க அல்லது Google கணக்கு இல்லாமல் Chromiumமைப் பயன்படுத்த, <ph name="SETTINGS_LINK" /> ஐப் பார்வையிடவும்.</translation>
 <translation id="6510925080656968729">Chromium ஐ நிறுவல் நீக்கு</translation>
 <translation id="6570579332384693436">எழுத்துப் பிழைகளைச் சரிசெய்ய, Chromium நீங்கள் உரைப் புலங்களில் உள்ளிடும் உரைகளை Googleளுக்கு அனுப்பும்</translation>
 <translation id="6598877126913850652">Chromium அறிவிப்பு அமைப்புகளுக்குச் செல்</translation>
@@ -162,7 +148,6 @@
 சில அம்சங்கள் கிடைக்காமல் போகலாம். வேறு சுயவிவர கோப்பகத்தைக் குறிப்பிடுக அல்லது Chromium இன் புதிய பதிப்பைப் பயன்படுத்துக.</translation>
 <translation id="6734080038664603509">&amp;Chromium ஐப் புதுப்பி</translation>
 <translation id="6734291798041940871">உங்கள் கம்ப்யூட்டரில் ஏற்கனவே எல்லாப் பயனர்களுக்கும் Chromium நிறுவப்பட்டுள்ளது.</translation>
-<translation id="6810143991807788455">நடப்பு அமைப்புகள் குறித்து தெரிவிப்பதன் மூலம் Chromiumஐச் சிறந்ததாக்க உதவவும்</translation>
 <translation id="6847869444787758381">கடவுச்சொற்கள் பாதுகாப்பை இழக்கும்பட்சத்தில் அவற்றை Chromium உங்களுக்குத் தெரியப்படுத்தும்</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (Chromiumக்கு நகலெடுக்கப்பட்டது)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">உங்கள் விருப்பத்தேர்வுகளின் கோப்பு சிதைவடைந்துள்ளது அல்லது தவறானது.
 
 உங்கள் அமைப்புகளை Chromium ஆல் மீட்டெடுக்க முடியவில்லை.</translation>
-<translation id="7331920710658926971">உங்கள் மொபைலில் Chromiumமை நிறுவவும். மொபைல் எண்ணுக்கு SMS ஒன்றை அனுப்புவோம்.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">புதிய சாளரம்</translation>
 <translation id="734373864078049451">உங்களின் இணையம், புக்மார்க்குகள் மற்றும் பிற Chromium உருப்படிகள் இங்கே உள்ளன.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Chromium மெனுவில் மறை</translation>
 <translation id="8013436988911883588">Chromiumமுக்கு அணுகல் கிடைத்தவுடன், இணையதளங்கள் உங்களிடம் அணுகலைக் கோர முடியும்.</translation>
 <translation id="81770708095080097">இந்தக் கோப்பு ஆபத்தானது என்பதால், அதை Chromium தடுத்துள்ளது.</translation>
-<translation id="8222496066431494154">உங்கள் மொபைலில் Chromiumமை நிறுவவும். கணக்கின் மீட்பு மொபைல் எண்ணுக்கு SMS ஒன்றை அனுப்புவோம்: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">ஒரு படத்திற்குப் பயனுள்ள விளக்கம் இல்லாதபட்சத்தில் Chromium உங்களுக்காக அதை வழங்க முயலும். விளக்கங்களை உருவாக்குவதற்காக படங்கள் Googleளுக்கு அனுப்பப்படும். அமைப்புகளுக்குச் சென்று எப்போது வேண்டுமானாலும் இதை முடக்கலாம்.</translation>
-<translation id="8269379391216269538">Chromium ஐ மேலும் சிறப்பாக்க உதவவும்</translation>
 <translation id="8290862415967981663">இந்தக் கோப்பு ஆபத்தானதாக இருக்கக்கூடும் என்பதால், அதை Chromium தடுத்துள்ளது.</translation>
 <translation id="8330519371938183845">உங்கள் எல்லாச் சாதனங்களிலும் Chromiumஐ ஒத்திசைக்க மற்றும் தனிப்பயனாக்க, உள்நுழையவும்</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> ஏற்கனவே Chromiumஐப் பயன்படுத்திக் கொண்டிருந்தது</translation>
 <translation id="8417404458978023919">{0,plural, =1{ஒரு நாளுக்குள் Chromiumமை மீண்டும் தொடங்கவும்}other{# நாட்களுக்குள் Chromiumமை மீண்டும் தொடங்கவும்}}</translation>
 <translation id="8453117565092476964">நிறுவி காப்பகம் சிதைந்துள்ளது அல்லது தவறானது. Chromiumமை மீண்டும் பதிவிறக்கவும்.</translation>
 <translation id="8493179195440786826">Chromium காலாவதியானது</translation>
-<translation id="85843667276690461">Chromium ஐப் பயன்படுத்தி உதவி பெறுக</translation>
 <translation id="8586442755830160949">பதிப்புரிமை <ph name="YEAR" /> Chromium உருவாக்குநர்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.</translation>
 <translation id="8619360774459241877">Chromiumமைத் தொடங்குகிறது...</translation>
 <translation id="8621669128220841554">குறிப்பிடப்படாத பிழை காரணமாக நிறுவல் தோல்வியடைந்தது. Chromiumமை மீண்டும் பதிவிறக்கம் செய்க.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium கடவுச்சொற்களைக் காண்பிக்க முயற்சிக்கிறது. இதை அனுமதிக்க உங்கள் Windows கடவுச்சொல்லைத் தட்டச்சு செய்யவும்.</translation>
 <translation id="8941642502866065432">Chromiumஐப் புதுப்பிக்க முடியவில்லை</translation>
 <translation id="8974095189086268230">கூடுதலான <ph name="BEGIN_LINK_CROS_OSS" />ஓப்பன் சோர்ஸ் மென்பொருட்களால்<ph name="END_LINK_CROS_OSS" /> Google Chrome OS ஐ உருவாக்குவது சாத்தியமானது.</translation>
-<translation id="8985587603644336029">இதற்கு முன்னர் ஒருவர் இந்தக் கம்ப்யூட்டரிலுள்ள Chromiumமில் <ph name="ACCOUNT_EMAIL_LAST" /> ஆக உள்நுழைந்திருந்தார். அது உங்கள் கணக்கு இல்லையெனில், உங்கள் தகவலைத் தனியாக வைத்திருக்க புதிய Chromium பயனரை உருவாக்கவும்.
-
-எப்படியிருந்தாலும் உள்நுழைதல் <ph name="ACCOUNT_EMAIL_NEW" /> க்கான புக்மார்க்குகள், வரலாறு, மற்றும் பிற அமைப்புகள் போன்ற Chromium தகவலைப் பிணைக்கும்.</translation>
 <translation id="9019929317751753759">Chromiumஐப் பாதுகாப்பானதாக்க, <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> இல் பட்டியலிடப்படாத பின்வரும் நீட்டிப்பை முடக்கியுள்ளோம், மேலும் அது உங்களுக்குத் தெரியாமல் சேர்க்கப்பட்டிருக்கலாம்.</translation>
 <translation id="9022552996538154597">Chromium இல் உள்நுழைக</translation>
-<translation id="9025992965467895364">இந்தப் பக்கம் அதிகளவு நினைவகத்தைப் பயன்படுத்துவதால், Chromium அதை இடைநிறுத்தியுள்ளது.</translation>
-<translation id="9036189287518468038">Chromium பயன்பாட்டுத் துவக்கி</translation>
 <translation id="9089354809943900324">Chromium காலாவதியானது</translation>
 <translation id="9093206154853821181">{0,plural, =1{ஒரு மணிநேரத்திற்குள் Chromium மீண்டும் தொடங்கும்}other{# மணிநேரத்திற்குள் Chromium மீண்டும் தொடங்கும்}}</translation>
 <translation id="91086099826398415">புதிய Chromium &amp;தாவலில் இணைப்பைத் திற</translation>
 <translation id="911206726377975832">உங்கள் உலாவிய தரவையும் நீக்க வேண்டுமா?</translation>
 <translation id="9158494823179993217"><ph name="TARGET_URL_HOSTNAME" />ஐ அணுக Chromium அதை மாற்று உலாவியில் திறக்கும்படி உங்கள் சிஸ்டம் நிர்வாகி உள்ளமைத்துள்ளார்.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> ஐத் துண்டிப்பது, இந்தச் சாதனத்தில் உள்ள உங்கள் வரலாறு, புத்தகக்குறிகள், அமைப்புகள் மற்றும் பிற Chromium தரவை அழிக்கும். உங்கள் Google கணக்கில் சேமிக்கப்பட்ட தரவு அழிக்கப்படாது, மேலும் <ph name="GOOGLE_DASHBOARD_LINK" />Google டாஷ்போர்டில்<ph name="END_GOOGLE_DASHBOARD_LINK" /> நிர்வகிக்கலாம்.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">இப்போது Chromium இல் உள்நுழைந்துள்ளீர்கள்</translation>
 <translation id="93478295209880648">Windows XP அல்லது Windows Vista ஆகியவற்றில் Chromium இனி ஆதரிக்கப்படாது என்பதால், அது சரியாகச் செயல்படாது</translation>
 <translation id="95514773681268843">இந்தச் சாதனத்தைப் பயன்படுத்துவதற்கு முன் பின்வரும் சேவை விதிமுறைகளைப் படித்து ஏற்றுக்கொள்வது <ph name="DOMAIN" /> க்கு அவசியமாகும். இந்த விதிமுறைகளானது Chromium OS விதிமுறைகளை விரிவாக்கவோ, மாற்றவோ அல்லது கட்டுப்படுத்தவோ செய்யாது.</translation>
 <translation id="985602178874221306">Chromium அங்கீகரிப்பாளர்கள்</translation>
diff --git a/chrome/app/resources/chromium_strings_te.xtb b/chrome/app/resources/chromium_strings_te.xtb
index bb176c5..5d1f564 100644
--- a/chrome/app/resources/chromium_strings_te.xtb
+++ b/chrome/app/resources/chromium_strings_te.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium మీ పాస్‌వర్డ్‌లను ఎగుమతి చేయాలనుకుంటోంది. దీనిని అనుమతించడం కోసం మీ Windows పాస్‌వర్డ్‌ని టైప్ చేయండి.</translation>
 <translation id="1115445892567829615">Chromium మీ డేటాను సింక్ చేయ‌లేక‌పోయింది. దయచేసి మీ సింక్‌ రహస్య పదబంధాన్ని అప్‌డేట్ చేయండి.</translation>
 <translation id="113122355610423240">మీ డిఫాల్ట్ బ్రౌజర్ Chromium</translation>
-<translation id="1170115874949214249">మీ ఫోన్‌లో Chromiumను ఇన్‌స్టాల్ చేయండి. మేము మీ ఖాతా పునరుద్ధరణ ఫోన్ నంబర్‌కు SMS పంపుతాము.</translation>
-<translation id="1174473354587728743">కంప్యూటర్‌ను షేర్‌ చేయాలా? ఇప్పుడు మీరు కోరుకున్న విధంగా Chromiumను సెటప్ చేయవచ్చు.</translation>
 <translation id="1185134272377778587">Chromium గురించి</translation>
-<translation id="1298199220304005244">Chromium OSను ఉపయోగించడం గురించి సహాయాన్ని పొందండి</translation>
 <translation id="1396446129537741364">Chromium పాస్‌వర్డ్‌లను చూపడానికి ప్రయత్నిస్తోంది.</translation>
 <translation id="1414495520565016063">మీరు Chromiumకు సైన్ ఇన్ చేసారు!</translation>
 <translation id="151962892725702025">మీ డొమైన్ కోసం సింక్‌ అందుబాటులో లేనందున, Chromium OS, మీ డేటాను సింక్ చేయ‌లేక‌పోయింది.</translation>
 <translation id="1524282610922162960">Chromium ట్యాబ్‌ను షేర్ చేయండి</translation>
-<translation id="1668054258064581266">Chromium నుండి మీ ఖాతాను తీసివేసిన తర్వాత, ప్రభావవంతం కావడానికి మీరు మీ తెరిచిన ట్యాబ్‌లను మళ్లీ లోడ్ చేయాల్సి రావచ్చు.</translation>
-<translation id="1688750314291223739">వెబ్‌కు మీ వ్యక్తిగతీకరించిన బ్రౌజర్ ఫీచ‌ర్‌ల‌ను సేవ్ చేయడానికి సింక్‌ను సెటప్ చేయండి మరియు వాటిని ఏదైనా కంప్యూటర్‌లోని Chromium నుండి యాక్సెస్‌ చేయండి.</translation>
 <translation id="1708666629004767631">Chromium యొక్క కొత్త సురక్షితమైన వెర్షన్ అందుబాటులో ఉంది.</translation>
 <translation id="1766096484055239003">అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromiumను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు</translation>
 <translation id="1774152462503052664">నేపథ్యంలో Chromiumని అమలు చేయడానికి అనుమతించు</translation>
 <translation id="1779356040007214683">Chromiumను సురక్షితం చేయడానికి, మేము <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో జాబితా చేయబడని మరియు మీకు తెలియకుండానే జోడించబడిన కొన్ని పొడిగింపులను నిలిపివేసాము.</translation>
 <translation id="1808667845054772817">Chromiumను మళ్లీ ఇన్‌స్టాల్ చేయి</translation>
-<translation id="1869480248812203386">భద్రతాపరమైన దాడులయ్యే అవకాశమున్న అన్ని సంఘటనలకు సంబంధించిన వివరాలను Googleకు ఆటోమేటిక్‌గా నివేదించడం ద్వారా Chromiumను సురక్షితంగా మరియు సులభంగా ఉపయోగించదగినదిగా చేయడంలో సాయం చేయవచ్చు.</translation>
 <translation id="1881322772814446296">మీరు నిర్వహించబడే ఖాతాతో సైన్ ఇన్ చేస్తున్నారు. దీని నిర్వాహకునికి మీ Chromium ప్రొఫైల్‌పై నియంత్రణను అందిస్తున్నారు. మీ యాప్‌లు, బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు, ఇతర సెట్టింగ్‌ల వంటి మీ Chromium డేటా శాశ్వతంగా <ph name="USER_NAME" />కు అనుబంధించబడుతుంది. మీరు Google ఖాతాల డాష్‌బోర్డ్ ద్వారా ఈ డేటాను తొలగించవచ్చు. కానీ ఈ డేటాను మరో ఖాతాతో అనుబంధించలేరు. మీరు ప్రస్తుతం ఉన్న మీ Chromium డేటాను వేరుగా ఉంచడానికి ఐచ్ఛికంగా కొత్త ప్రొఫైల్‌ను సృష్టించవచ్చు. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">దీనిని ఆఫ్ చేయడం ద్వారా, మీరు Chromiumకి సైన్ ఇన్ చేయకుండానే Gmail లాంటి Google సైట్‌లలో సైన్ ఇన్ చేయగలరు</translation>
 <translation id="1929939181775079593">Chromium ప్రతిస్పందించడం లేదు. ఇప్పుడు మళ్లీ ప్రారంభించాలా?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">ఈ అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromiumను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు</translation>
 <translation id="2119636228670142020">&amp;Chromium OS గురించి</translation>
 <translation id="2241627712206172106">మీరు కంప్యూటర్‌ను షేర్‌ చేస్తే, స్నేహితులు, కుటుంబ సభ్యులు విడివిడిగా బ్రౌజ్ చేయవచ్చు. Chromiumను వారికి నచ్చిన రీతిలో సెటప్ చేసుకోవచ్చు.</translation>
-<translation id="2265088490657775772">మీ iPhoneలో Chromiumని పొందండి</translation>
 <translation id="2347108572062610441">ఈ పొడిగింపు మీరు Chromiumని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
 <translation id="2396765026452590966"><ph name="EXTENSION_NAME" /> పొడిగింపు మీరు Chromiumని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
 <translation id="2483889755041906834">Chromiumలో</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">అప్‌డేట్ చేయడానికి, ఈ కంప్యూటర్‌లో Chromiumను అమలు చేయకుండా ఆపివేయాలి. దీని వలన ఈ కంప్యూటర్‌లో లాగిన్ చేసిన ఇతర వినియోగదారులు సేవ్ చేయని మార్పులను కోల్పోయే అవకాశం ఉంది.</translation>
 <translation id="2847479871509788944">Chromium నుండి తీసివేయి...</translation>
 <translation id="2886012850691518054">ఐచ్ఛికం: Googleకు వినియోగ‌ గణాంకాలను, క్రాష్ నివేదికలను ఆటోమేటిక్‌గా పంపడం ద్వారా Chromiumను మరింత మెరుగుపరచడానికి సహాయం చేస్తుంది.</translation>
-<translation id="2898082584336937987">మీ ఫోన్‌లో Chromiumను ఇన్‌స్టాల్ చేయండి. మేము మీ ఫోన్ నంబర్‌కు SMS పంపుతాము: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium గురించి</translation>
 <translation id="2977470724722393594">Chromium తాజాగా ఉంది</translation>
 <translation id="3032787606318309379">Chromiumకి జోడిస్తోంది...</translation>
-<translation id="3046695367536568084">మీరు అనువర్తనాలను ఉపయోగించడానికి Chromiumకు సైన్ ఇన్ చేయాలి. ఇది పరికరాల్లో మీ అనువర్తనాలు, బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు మరియు ఇతర సెట్టింగ్‌లను సమకాలీకరించడానికి Chromiumను అనుమతిస్తుంది.</translation>
 <translation id="3068515742935458733">Googleకు వినియోగ గణాంకాలు, <ph name="UMA_LINK" />ను పంపడం ద్వారా Chromiumను మెరుగుపరచడంలో సహాయపడండి</translation>
 <translation id="3103660991484857065">ఇన్‌స్టాలర్ ఆర్కైవ్‌ను వాస్తవ పరిమాణానికి తీసుకుని రావడంలో విఫలమైంది. దయచేసి Chromiumను మళ్లీ డౌన్‌లోడ్ చేయండి.</translation>
 <translation id="3130323860337406239">Chromium మీ మైక్రోఫోన్‌ని ఉపయోగిస్తోంది.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Chromium అజ్ఞా&amp;త విండోలో లింక్‌ను తెరువు</translation>
 <translation id="3190315855212034486">అయ్యో! Chromium క్రాష్ అయ్యింది. ఇప్పుడే మళ్లీ ప్రారంభించాలా?</translation>
 <translation id="3229526316128325841">Chromium మీ పాస్‌వర్డ్‌లను ఎగుమతి చేయాలనుకుంటోంది.</translation>
-<translation id="3256316712990552818">Chromiumకి కాపీ చేయబడింది</translation>
 <translation id="3258596308407688501">Chromium దీని డేటా డైరెక్టరీని చదవలేదు మరియు దీనిలో రాయ‌లేదు: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">Google API కీలు లేవు. Chromium కార్యాచరణలో కొంత భాగం నిలిపివేయబడుతుంది.</translation>
 <translation id="3296368748942286671">Chromium మూసివేయబడినప్పుడు నేపథ్య అనువర్తనాలను అమలు చేయడాన్ని కొనసాగించు</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">ముఖ్యమైన భద్రతా మెరుగుదలలు మరియు కొత్త ఫీచర్‌లు తాజా వెర్షన్‌లో అందుబాటులో ఉన్నాయి.</translation>
 <translation id="421369550622382712">Chromium కోసం గొప్ప అనువర్తనాలు, ఆటలు, పొడిగింపులు మరియు థీమ్‌లను కనుగొనండి.</translation>
 <translation id="4216212958613226427">Chromium UI ప్రదర్శించడం కోసం ఈ భాష ఉపయోగించబడింది</translation>
-<translation id="4222580632002216401">ఇప్పుడు మీరు Chromiumకు సైన్ ఇన్ చేశారు! మీ నిర్వాహకులు సింక్‌ను నిలిపివేశారు.</translation>
 <translation id="4230135487732243613">మీ Chromium డేటాను ఈ ఖాతాకు జోడించాలా?</translation>
 <translation id="4271805377592243930">Chromium గురించి సహాయాన్ని పొందండి</translation>
 <translation id="4285930937574705105">పేర్కొనబడని ఎర్రర్ కారణంగా ఇన్‌స్టాలేషన్ విఫలమైంది. ప్రస్తుతం Chromium అమలు చేయబడుతుంటే, దయచేసి దీనిని మూసివేసి, మళ్లీ ప్రయత్నించండి.</translation>
@@ -105,7 +94,6 @@
 <translation id="4943838377383847465">Chromium నేపథ్య మోడ్‌లో ఉంది.</translation>
 <translation id="4987820182225656817">అతిథులు ఎటువంటి చరిత్రను వదలకుండానే Chromiumను ఉపయోగించవచ్చు.</translation>
 <translation id="4994636714258228724">Chromiumకు మిమ్మల్ని జోడించుకోండి</translation>
-<translation id="5181952534059945058">ఈ పేజీ చాలా ఎక్కువ మెమరీని ఉపయోగిస్తోంది, కాబట్టి Chromium కొంత కంటెంట్‌ను తీసివేసింది.</translation>
 <translation id="5277894862589591112">మీ మార్పులను వర్తింపజేయడానికి, Chromiumని పునఃప్రారంభించండి</translation>
 <translation id="5358375970380395591">మీరు నిర్వహించబడే ఖాతాతో సైన్ ఇన్ చేస్తున్నారు. దీని నిర్వాహకునికి మీ Chromium ప్రొఫైల్‌పై నియంత్రణను అందిస్తున్నారు. మీ యాప్‌లు, బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు, ఇతర సెట్టింగ్‌ల వంటి మీ Chromium డేటా శాశ్వతంగా <ph name="USER_NAME" />కు అనుబంధించబడుతుంది. మీరు Google ఖాతాల డాష్‌బోర్డ్ ద్వారా ఈ డేటాను తొలగించవచ్చు. కానీ ఈ డేటాను మరో ఖాతాతో అనుబంధించలేరు. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium నవీకరించబడుతోంది (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -128,7 +116,6 @@
 <translation id="5895138241574237353">మళ్ళీ ప్రారంభించు</translation>
 <translation id="5987687638152509985">సింక్‌ను ప్రారంభించడానికి Chromiumను అప్‌డేట్ చేయండి</translation>
 <translation id="6013050204643758987"><ph name="BEGIN_LINK_LINUX_OSS" />Linux (బీటా) <ph name="END_LINK_LINUX_OSS" /> లాగానే, Chromium OS కూడా అదనపు <ph name="BEGIN_LINK_CROS_OSS" /> ఓపెన్ సోర్స్ సాఫ్ట్‌వేర్‌ <ph name="END_LINK_CROS_OSS" /> మూలంగానే సాధ్యమైంది.</translation>
-<translation id="6040143037577758943">మూసివేయి</translation>
 <translation id="6055895534982063517">కొత్త Chromium వెర్షన్ అందుబాటులో ఉంది, ఇది మునుపటి కంటే వేగవంతంగా ఉంటుంది.</translation>
 <translation id="6063093106622310249">&amp;Chromiumలో తెరవండి</translation>
 <translation id="6072279588547424923">Chromiumకు <ph name="EXTENSION_NAME" /> జోడించబడింది</translation>
@@ -150,7 +137,6 @@
 <translation id="6434250628340475518">Chromium OS సిస్టమ్</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium 1 సెకనులో పునఃప్రారంభమవుతుంది}other{Chromium # సెకన్లలో పునఃప్రారంభమవుతుంది}}</translation>
 <translation id="6475912303565314141">ఇది మీరు Chromiumని ప్రారంభించేటప్పుడు చూపబడే పేజీని కూడా నియంత్రిస్తుంది.</translation>
-<translation id="6485906693002546646">మీరు మీ Chromium అంశాలను సింక్ చేయ‌డానికి <ph name="PROFILE_EMAIL" />ను ఉపయోగిస్తున్నారు. మీ సింక్‌ ప్రాధాన్యతను అప్‌డేట్ చేయ‌డానికి లేదా Google ఖాతా లేకుండా Chromiumను ఉపయోగించడానికి, <ph name="SETTINGS_LINK" />ను సందర్శించండి.</translation>
 <translation id="6510925080656968729">Chromiumను అన్ఇన్‌స్టాల్ చేయి</translation>
 <translation id="6570579332384693436">అక్షరక్రమ లోపాలను పరిష్కరించడానికి, మీరు వచన ఫీల్డ్‌లలో టైప్ చేసే వచనాన్ని, Chromium Googleకి పంపుతుంది</translation>
 <translation id="6598877126913850652">Chromium నోటిఫికేషన్ సెట్టింగ్‌లకు వెళ్లు</translation>
@@ -160,7 +146,6 @@
 కొన్ని ఫీచర్‌లు అందుబాటులో ఉండకపోవచ్చు. దయచేసి వేరొక ప్రొఫైల్ డైరెక్టరీని పేర్కొనండి లేదా Chromium యొక్క కొత్త వెర్షన్‌ను ఉపయోగించండి.</translation>
 <translation id="6734080038664603509">&amp;Chromiumను అప్‌డేట్ చేయండి</translation>
 <translation id="6734291798041940871">మీ కంప్యూటర్‌లోని వినియోగదారులందరికీ Chromium ఇప్పటికే ఇన్‌స్టాల్ చేయబడింది.</translation>
-<translation id="6810143991807788455">ప్రస్తుత సెట్టింగ్‌లను నివేదించడం ద్వారా Chromiumను మెరుగుపరచడంలో సహాయపడండి</translation>
 <translation id="6847869444787758381">మీ పాస్‌వర్డ్‌లు ఎప్పుడైనా హ్యాక్ అయితే, Chromium మీకు తెలియచేస్తుంది</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (Chromiumకి కాపీ చేయబడింది)</translation>
@@ -177,7 +162,6 @@
 <translation id="731644333568559921">&amp;Chromium OSను అప్‌డేట్ చేయండి</translation>
 <translation id="731795002583552498">Chromiumని నవీకరిస్తోంది</translation>
 <translation id="7318036098707714271">మీ ప్రాధాన్యతల ఫైల్ పాడైంది లేదా చెల్లదు. Chromium మీ సెట్టింగ్‌లను పునరుద్ధరించలేకపోయింది.</translation>
-<translation id="7331920710658926971">మీ ఫోన్‌లో Chromiumని ఇన్‌స్టాల్ చేయండి. మేము మీ ఫోన్ నంబర్‌కు SMS పంపుతాము.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">కొత్త విండో</translation>
 <translation id="734373864078049451">మీ వెబ్, బుక్‌మార్క్‌లు మరియు ఇతర Chromium అంశాలు ఇక్కడ చూపబడతాయి.</translation>
@@ -209,16 +193,13 @@
 <translation id="7979877361127045932">Chromium మెనూలో దాచండి</translation>
 <translation id="8013436988911883588">ఓసారి Chromiumకి యాక్సెస్ లభించాక, ఆపై వెబ్‌సైట్‌లకు ఏమైనా యాక్సెస్‌ కావాలంటే అవి మిమ్మల్ని అడగవచ్చు.</translation>
 <translation id="81770708095080097">ఈ ఫైల్ అపాయకరమైనది, కాబట్టి Chromium దీన్ని బ్లాక్ చేసింది.</translation>
-<translation id="8222496066431494154">మీ ఫోన్‌లో Chromiumను ఇన్‌స్టాల్ చేయండి. మేము మీ ఖాతా పునరుద్ధరణ ఫోన్ నంబర్‌కు SMSను పంపుతాము: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">చిత్రంలో ఉపయోగకరమైన వివరణ లేకుంటే, మీ కోసం ఒక వివరణను అందించడానికి Chromium ప్రయత్నిస్తుంది. వివరణలను సృష్టించడానికి, చిత్రాలు Googleకు పంపబడతాయి. మీరు దీన్ని ఎప్పుడైనా సెట్టింగ్‌లలో ఆఫ్ చేయవచ్చు.</translation>
-<translation id="8269379391216269538">Chromiumను మెరుగుపరచడంలో సహాయం అందించండి</translation>
 <translation id="8290862415967981663">ఈ ఫైల్ అపాయకరం కావచ్చు, కాబట్టి Chromium దీన్ని బ్లాక్ చేసింది.</translation>
 <translation id="8330519371938183845">మీ పరికరాల అంతటా Chromiumను సింక్ చేయడానికి, వ్యక్తిగతీకరించడానికి సైన్ ఇన్ చేయండి</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> మునుపు Chromiumని ఉపయోగించింది</translation>
 <translation id="8417404458978023919">{0,plural, =1{ఒక రోజులోపు Chromiumను తిరిగి ప్రారంభించండి}other{# రోజులలోపు Chromiumను తిరిగి ప్రారంభించండి}}</translation>
 <translation id="8453117565092476964">ఇన్‌స్టాలర్ ఆర్కైవ్ పాడైంది లేదా చెల్లదు. దయచేసి Chromiumను మళ్లీ డౌన్‌లోడ్ చేయండి.</translation>
 <translation id="8493179195440786826">Chromium కాలం చెల్లినది</translation>
-<translation id="85843667276690461">Chromiumను ఉపయోగించడం గురించి సహాయాన్ని పొందండి</translation>
 <translation id="8586442755830160949">కాపీరైట్ <ph name="YEAR" /> Chromium రచయితలు. అన్ని హ‌క్కులు రిజ‌ర్వ్ చేయ‌బ‌డ్డాయి.</translation>
 <translation id="8619360774459241877">Chromiumని ప్రారంభిస్తోంది...</translation>
 <translation id="8621669128220841554">తెలియ‌ని ఎర్ర‌ర్‌ కారణంగా ఇన‌స్ట‌లేష‌న్‌ విఫలమైంది. దయచేసి Chromiumను మళ్లీ డౌన్‌లోడ్ చేయండి.</translation>
@@ -236,21 +217,14 @@
 <translation id="8907580949721785412">Chromium పాస్‌వర్డ్‌లను చూపడానికి ప్రయత్నిస్తోంది. దీన్ని అనుమతించడానికి మీ Windows పాస్‌వర్డ్‌ను టైప్ చేయండి.</translation>
 <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="8985587603644336029">ఒకరు ఈ కంప్యూటర్‌లో మునుపు <ph name="ACCOUNT_EMAIL_LAST" />గా Chromiumకు సైన్ ఇన్ చేశారు. అది మీ ఖాతా కాకుంటే, మీ సమాచారాన్ని వేరుగా ఉంచడానికి కొత్త‌ Chromium వినియోగదారును సృష్టించండి.
-
-ఏదేమైనా సైన్ ఇన్ చేస్తే బుక్‌మార్క్‌లు, చరిత్ర మరియు ఇతర సెట్టింగ్‌ల వంటి Chromium సమాచారం <ph name="ACCOUNT_EMAIL_NEW" />కు విలీనం చేయబడుతుంది.</translation>
 <translation id="9019929317751753759">Chromiumని సురక్షితం చేయడానికి, మేము క్రింది పొడిగింపుని నిలిపివేసాము, ఇది <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో జాబితా చేయబడలేదు మరియు మీకు తెలియకుండా జోడించబడి ఉండవచ్చు.</translation>
 <translation id="9022552996538154597">Chromiumకు సైన్ ఇన్ చేయండి</translation>
-<translation id="9025992965467895364">ఈ పేజీ చాలా మెమరీని ఉపయోగిస్తోంది, కాబట్టి దీన్ని Chromium పాజ్ చేయబడింది.</translation>
-<translation id="9036189287518468038">Chromium యాప్ లాంఛ‌ర్</translation>
 <translation id="9089354809943900324">Chromium కాలం చెల్లినది</translation>
 <translation id="9093206154853821181">{0,plural, =1{ఒక గంటలో Chromium తిరిగి ప్రారంభించబడుతుంది}other{# గంటల్లో Chromium తిరిగి ప్రారంభించబడుతుంది}}</translation>
 <translation id="91086099826398415">కొత్త Chromium &amp;ట్యాబ్‌లో లింక్‌ని తెరువు</translation>
 <translation id="911206726377975832">మీ బ్రౌజింగ్ డేటాను కూడా తొలగించాలా?</translation>
 <translation id="9158494823179993217"><ph name="TARGET_URL_HOSTNAME" />‌ను యాక్సెస్ చేయడం కోసం ఒక ప్రత్యామ్నాయ బ్రౌజర్‌ను తెరిచే విధంగా Chromiumను మీ సిస్టమ్ నిర్వాహకులు కాన్ఫిగర్ చేశారు.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" />ను డిస్‌కనెక్ట్ చేయడం వ‌ల్ల ఈ పరికరంలో నిల్వ చేయబడిన మీ చరిత్ర, బుక్‌మార్క్‌లు, సెట్టింగ్‌లు, ఇతర Chromium డేటా క్లియర్ చేయబడతాయి. మీ Google ఖాతాలో నిల్వ చేయబడిన డేటా క్లియర్ చేయబడదు. దాన్ని <ph name="GOOGLE_DASHBOARD_LINK" />Google డాష్‌బోర్డ్<ph name="END_GOOGLE_DASHBOARD_LINK" />లో నిర్వహించవచ్చు.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">మీరు ఇప్పుడు Chromiumకు సైన్ ఇన్ చేసారు</translation>
 <translation id="93478295209880648">Chromiumకి ఇప్పుడు Windows XP లేదా Windows Vistaలో మద్దతు లేనందున ఇది సరిగ్గా పని చేయకపోవచ్చు</translation>
 <translation id="95514773681268843">మీరు ఈ పరికరాన్ని ఉపయోగించడానికి ముందు సేవా నిబంధనలను చదివి, అంగీకరించాలని <ph name="DOMAIN" /> కోరుతోంది. ఈ నిబంధనలు Chromium OS నిబంధనలను విస్తరింపజేయవు, సవరించవు లేదా పరిమితం చేయవు.</translation>
 <translation id="985602178874221306">Chromium రచయితలు</translation>
diff --git a/chrome/app/resources/chromium_strings_th.xtb b/chrome/app/resources/chromium_strings_th.xtb
index fbb0070..b5075e51 100644
--- a/chrome/app/resources/chromium_strings_th.xtb
+++ b/chrome/app/resources/chromium_strings_th.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium ต้องการส่งออกรหัสผ่านของคุณ พิมพ์รหัสผ่าน Windows เพื่ออนุญาตให้ดำเนินการ</translation>
 <translation id="1115445892567829615">Chromium ไม่สามารถซิงค์ข้อมูลของคุณ โปรดอัปเดตข้อความรหัสผ่านการซิงค์</translation>
 <translation id="113122355610423240">Chromium เป็นเบราว์เซอร์เริ่มต้นของคุณ</translation>
-<translation id="1170115874949214249">ติดตั้ง Chromium ในโทรศัพท์ เราจะส่ง SMS ไปยังหมายเลขโทรศัพท์สำหรับการกู้คืนบัญชีของคุณ</translation>
-<translation id="1174473354587728743">หากต้องการแชร์คอมพิวเตอร์ ตอนนี้คุณสามารถตั้งค่า Chromium ในแบบที่คุณชอบได้แล้ว</translation>
 <translation id="1185134272377778587">เกี่ยวกับ Chromium</translation>
-<translation id="1298199220304005244">รับความช่วยเหลือเกี่ยวกับการใช้ Chromium OS</translation>
 <translation id="1396446129537741364">Chromium กำลังพยายามแสดงรหัสผ่าน</translation>
 <translation id="1414495520565016063">คุณลงชื่อเข้าใช้ Chromium แล้ว!</translation>
 <translation id="151962892725702025">Chromium OS ไม่สามารถซิงค์ข้อมูลของคุณเนื่องจากการซิงค์ไม่พร้อมให้บริการสำหรับโดเมนของคุณ</translation>
 <translation id="1524282610922162960">แชร์แท็บ Chromium</translation>
-<translation id="1668054258064581266">เมื่อลบบัญชีของคุณออกจาก Chromium แล้ว คุณต้องโหลดแท็บที่เปิดอยู่ซ้ำเพื่อให้มีผล</translation>
-<translation id="1688750314291223739">ตั้งค่าการซิงค์เพื่อบัน​​ทึกฟีเจอร์เบราว์เซอร์ในแบบของคุณไปยังเว็บและเข้าถึงได้จาก Chromium บนคอมพิวเตอร์เครื่องใดก็ได้</translation>
 <translation id="1708666629004767631">Chromium รุ่นใหม่ที่ปลอดภัยกว่าเดิมพร้อมให้ใช้งานแล้ว</translation>
 <translation id="1766096484055239003">ผู้ดูแลระบบต้องการให้คุณเปิด Chromium ขึ้นมาใหม่เพื่อใช้การอัปเดต</translation>
 <translation id="1774152462503052664">ให้ Chromium ทำงานในพื้นหลัง</translation>
 <translation id="1779356040007214683">เพื่อให้ Chromium ปลอดภัยขึ้น เราได้ปิดส่วนขยายบางรายการที่ไม่ได้ระบุไว้ใน <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> และอาจถูกเพิ่มเข้ามาโดยที่คุณไม่รู้ตัว</translation>
 <translation id="1808667845054772817">ติดตั้ง Chromium ใหม่</translation>
-<translation id="1869480248812203386">คุณสามารถช่วยปรับปรุงให้ Chromium ปลอดภัยและใช้งานง่ายขึ้นโดยรายงานรายละเอียดของเหตุการณ์ด้านความปลอดภัยที่อาจจะเกิดขึ้นต่อ Google โดยอัตโนมัติ</translation>
 <translation id="1881322772814446296">คุณกำลังลงชื่อเข้าใช้ด้วยบัญชีที่จัดการ และให้การควบคุมระดับผู้ดูแลระบบของบัญชีดังกล่าวเหนือโปรไฟล์ Chromium ของคุณ ข้อมูล Chromium เช่น แอป บุ๊กมาร์ก ประวัติการเข้าชม รหัสผ่าน และการตั้งค่าอื่นๆ จะเชื่อมโยงอย่างถาวรกับ <ph name="USER_NAME" /> คุณจะสามารถลบข้อมูลนี้ผ่านทางแผงควบคุมบัญชี Google แต่คุณจะไม่สามารถเชื่อมโยงข้อมูลนี้กับบัญชีอื่น คุณสามารถเลือกที่จะสร้างโปรไฟล์ใหม่เพื่อแยกเก็บข้อมูล Chromium ที่มีอยู่ของคุณ <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">เมื่อปิดการตั้งค่านี้ คุณจะลงชื่อเข้าใช้เว็บไซต์ของ Google อย่างเช่น Gmail ได้โดยไม่ต้องลงชื่อเข้าใช้ Chromium</translation>
 <translation id="1929939181775079593">Chromium ไม่ตอบสนอง เปิดใหม่เลยหรือไม่</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">ผู้ดูแลระบบขอให้คุณเปิด Chromium ขึ้นมาใหม่เพื่อใช้การอัปเดตนี้</translation>
 <translation id="2119636228670142020">เกี่ยวกับ &amp;Chromium OS</translation>
 <translation id="2241627712206172106">ถ้าคุณให้ผู้อื่นใช้คอมพิวเตอร์ร่วมด้วย เพื่อนๆ และครอบครัวของคุณสามารถท่องเว็บแยกกันได้และตั้งค่า Chromium ได้ตามที่พวกเขาต้องการ</translation>
-<translation id="2265088490657775772">รับ Chromium ใน iPhone ของคุณ</translation>
 <translation id="2347108572062610441">ส่วนขยายนี้ได้เปลี่ยนหน้าที่จะแสดงเมื่อคุณเริ่มต้น Chromium</translation>
 <translation id="2396765026452590966">ส่วนขยาย "<ph name="EXTENSION_NAME" />" ได้เปลี่ยนหน้าที่จะแสดงเมื่อคุณเริ่มต้น Chromium</translation>
 <translation id="2483889755041906834">ใน Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Chromium ต้องหยุดทำงานในคอมพิวเตอร์เครื่องนี้ก่อนจึงจะอัปเดตได้ การดำเนินการนี้อาจทำให้ผู้ใช้ที่อยู่ในระบบของคอมพิวเตอร์เครื่องนี้สูญเสียการเปลี่ยนแปลงที่ยังไม่ได้บันทึก</translation>
 <translation id="2847479871509788944">นำออกจาก Chromium...</translation>
 <translation id="2886012850691518054">ตัวเลือก: ช่วยปรับปรุง Chromium ให้ดีขึ้นโดยการส่งสถิติการใช้งานและรายงานข้อขัดข้องไปยัง Google โดยอัตโนมัติ</translation>
-<translation id="2898082584336937987">ติดตั้ง Chromium ในโทรศัพท์ เราจะส่ง SMS ไปยังโทรศัพท์ของคุณ: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">เกี่ยวกับ &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium อัปเดตแล้ว</translation>
 <translation id="3032787606318309379">กำลังเพิ่มลงใน Chromium...</translation>
-<translation id="3046695367536568084">คุณจะต้องลงชื่อเข้าใช้ Chromium เพื่อใช้แอป ซึ่งจะช่วยให้ Chromium สามารถซิงค์แอป บุ๊กมาร์ก ประวัติ รหัสผ่าน และการตั้งค่าอื่นๆ ระหว่างอุปกรณ์ได้</translation>
 <translation id="3068515742935458733">ช่วยทำให้ Chromium ดียิ่งขึ้นโดยการส่งรายงานข้อขัดข้องและ <ph name="UMA_LINK" /> ไปยัง Google</translation>
 <translation id="3103660991484857065">โปรแกรมติดตั้งคลายการบีบอัดการเก็บข้อมูลไม่ได้ โปรดดาวน์โหลด Chromium อีกครั้ง</translation>
 <translation id="3130323860337406239">Chromium ใช้ไมโครโฟนของคุณอยู่</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">เปิดลิงก์ในหน้าต่างที่ไม่ระบุตัวตนของ Chromium</translation>
 <translation id="3190315855212034486">อ้าว! Chromium ขัดข้อง เปิดใหม่ตอนนี้หรือไม่</translation>
 <translation id="3229526316128325841">Chromium ต้องการส่งออกรหัสผ่านของคุณ</translation>
-<translation id="3256316712990552818">คัดลอกลงใน Chromium แล้ว</translation>
 <translation id="3258596308407688501">Google Chrome ไม่สามารถอ่านและเขียนข้อมูลในไดเรกทอรีข้อมูล:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">การปรับปรุงด้านความปลอดภัยที่สำคัญและฟีเจอร์ใหม่ๆ พร้อมให้บริการในเวอร์ชันล่าสุด</translation>
 <translation id="421369550622382712">พบกับแอป เกม ส่วนขยาย และธีมเด็ดๆ สำหรับ Chromium</translation>
 <translation id="4216212958613226427">นี่เป็นภาษาที่ใช้ในการแสดง UI ของ Chromium</translation>
-<translation id="4222580632002216401">ขณะนี้คุณลงชื่อเข้าใช้ Chromium แล้ว! การซิงค์ถูกปิดใช้งานโดยผู้ดูแลระบบของคุณ</translation>
 <translation id="4230135487732243613">เชื่อมโยงข้อมูล Chromium กับบัญชีนี้ไหม</translation>
 <translation id="4271805377592243930">รับความช่วยเหลือเกี่ยวกับ Chromium</translation>
 <translation id="4285930937574705105">การติดตั้งล้มเหลวเนื่องจากมีข้อผิดพลาดที่ไม่ได้ระบุ หาก Chromium ทำงานอยู่ในขณะนี้ โปรดปิดและลองอีกครั้ง</translation>
@@ -106,7 +95,6 @@
 <translation id="4943838377383847465">Chromium กำลังอยู่ในโหมดทำงานในพื้นหลัง</translation>
 <translation id="4987820182225656817">ผู้เยี่ยมชมสามารถใช้ Chromium โดยไม่ทิ้งร่องรอยไว้</translation>
 <translation id="4994636714258228724">เพิ่มตัวคุณเองใน Chromium</translation>
-<translation id="5181952534059945058">หน้านี้ใช้หน่วยความจำมากเกินไป Chromium จึงนำเนื้อหาบางส่วนออก</translation>
 <translation id="5277894862589591112">เปิด Chromium ขึ้นมาใหม่เพื่อให้การเปลี่ยนแปลงมีผล</translation>
 <translation id="5358375970380395591">คุณกำลังลงชื่อเข้าใช้ด้วยบัญชีที่จัดการ และให้การควบคุมระดับผู้ดูแลระบบของบัญชีดังกล่าวเหนือโปรไฟล์ Chromium ของคุณ ข้อมูล Chromium เช่น แอป บุ๊กมาร์ก ประวัติการเข้าชม รหัสผ่าน และการตั้งค่าอื่นๆ จะเชื่อมโยงอย่างถาวรกับ <ph name="USER_NAME" /> คุณจะสามารถลบข้อมูลนี้ผ่านทางแผงควบคุมบัญชี Google แต่คุณจะไม่สามารถเชื่อมโยงข้อมูลนี้กับบัญชีอื่น <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">กำลังอัปเดต Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -129,7 +117,6 @@
 <translation id="5895138241574237353">ปิดแล้วเปิดอีกครั้ง</translation>
 <translation id="5987687638152509985">อัปเดต Chromium เพื่อเริ่มการซิงค์</translation>
 <translation id="6013050204643758987">Chromium OS เกิดขึ้นได้ด้วยการสนับสนุนจาก<ph name="BEGIN_LINK_CROS_OSS" />ซอฟต์แวร์โอเพนซอร์ส<ph name="END_LINK_CROS_OSS" />เพิ่มเติม เช่นเดียวกับ <ph name="BEGIN_LINK_LINUX_OSS" />Linux (เบต้า)<ph name="END_LINK_LINUX_OSS" /></translation>
-<translation id="6040143037577758943">ปิด</translation>
 <translation id="6055895534982063517">มี Chromium รุ่นใหม่ให้ใช้งานแล้วและทำงานได้เร็วกว่าเดิม</translation>
 <translation id="6063093106622310249">&amp;เปิดใน Chromium</translation>
 <translation id="6072279588547424923">เพิ่ม <ph name="EXTENSION_NAME" /> ลงใน Chromium แล้ว</translation>
@@ -151,7 +138,6 @@
 <translation id="6434250628340475518">ระบบ Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium จะรีสตาร์ทใน 1 วินาที}other{Chromium จะรีสตาร์ทใน # วินาที}}</translation>
 <translation id="6475912303565314141">อีกทั้งยังควบคุมหน้าที่จะแสดงเมื่อคุณเปิด Chromium ด้วย</translation>
-<translation id="6485906693002546646">คุณกำลังใช้ <ph name="PROFILE_EMAIL" /> ในการซิงค์ข้อมูลใน Chromium หากต้องการอัปเดตค่ากำหนดการซิงค์หรือใช้ Chromium โดยไม่มีบัญชี Google โปรดไปที่ <ph name="SETTINGS_LINK" /></translation>
 <translation id="6510925080656968729">ถอนการติดตั้ง Chromium</translation>
 <translation id="6570579332384693436">Chromium จะส่งข้อความที่คุณพิมพ์ในช่องข้อความไปยัง Google เพื่อแก้ไขข้อผิดพลาดของการสะกดคำ</translation>
 <translation id="6598877126913850652">ไปที่การตั้งค่าการแจ้งเตือน Chromium</translation>
@@ -161,7 +147,6 @@
 ฟีเจอร์บางประการอาจไม่มี โปรดระบุไดเรกทอรีโปรไฟล์อื่น หรือใช้ Chromium รุ่นใหม่</translation>
 <translation id="6734080038664603509">อัปเดต &amp;Chromium</translation>
 <translation id="6734291798041940871">มีการติดตั้ง Chromium สำหรับผู้ใช้ทุกคนบนคอมพิวเตอร์ของคุณแล้ว</translation>
-<translation id="6810143991807788455">ช่วยให้ Chromium ดียิ่งขึ้นด้วยการรายงานการตั้งค่าปัจจุบัน</translation>
 <translation id="6847869444787758381">Chromium จะแจ้งให้ทราบหากมีคนล่วงรู้รหัสผ่านของคุณ</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (คัดลอกไปยัง Chromium)</translation>
@@ -180,7 +165,6 @@
 <translation id="7318036098707714271">ไฟล์ค่ากำหนดของคุณขัดข้องหรือไม่ถูกต้อง
 
 Chromium ไม่สามารถกู้คืนการตั้งค่าของคุณได้</translation>
-<translation id="7331920710658926971">ติดตั้ง Chromium ในโทรศัพท์ เราจะส่ง SMS ไปยังโทรศัพท์ของคุณ</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">หน้าต่างใหม่</translation>
 <translation id="734373864078049451">เว็บของคุณ บุ๊กมาร์ก และข้อมูลอื่นๆ ใน Chromium พร้อมใช้แล้วที่นี่</translation>
@@ -211,16 +195,13 @@
 <translation id="7979877361127045932">ซ่อนในเมนู Chromium</translation>
 <translation id="8013436988911883588">เมื่อ Chromium มีสิทธิ์การเข้าถึงแล้ว เว็บไซต์จะขอสิทธิ์การเข้าถึงจากคุณได้</translation>
 <translation id="81770708095080097">ไฟล์นี้อันตราย Chromium จึงบล็อกไว้</translation>
-<translation id="8222496066431494154">ติดตั้ง Chromium ในโทรศัพท์ เราจะส่ง SMS ไปยังหมายเลขโทรศัพท์สำหรับการกู้คืนบัญชีของคุณ: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">หากรูปภาพไม่มีคำอธิบายที่เป็นประโยชน์ Chromium จะพยายามใส่คำอธิบายให้คุณ รูปภาพจะส่งมายัง Google เพื่อสร้างคำอธิบาย คุณปิดการดำเนินการนี้ได้ทุกเมื่อในการตั้งค่า</translation>
-<translation id="8269379391216269538">ช่วยปรับปรุง Chromium ให้ดีขึ้น</translation>
 <translation id="8290862415967981663">ไฟล์นี้อาจเป็นอันตราย Chromium จึงบล็อกไว้</translation>
 <translation id="8330519371938183845">ลงชื่อเข้าใช้เพื่อซิงค์และปรับเปลี่ยน Chromium ในอุปกรณ์ต่างๆ</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> ใช้ Chromium อยู่ก่อนหน้านี้</translation>
 <translation id="8417404458978023919">{0,plural, =1{เปิด Chromium ขึ้นมาใหม่ภายใน 1 วัน}other{เปิด Chromium ขึ้นมาใหม่ภายใน # วัน}}</translation>
 <translation id="8453117565092476964">การเก็บข้อมูลของโปรแกรมติดตั้งเสียหายหรือไม่ถูกต้อง โปรดดาวน์โหลด Chromium อีกครั้ง</translation>
 <translation id="8493179195440786826">Chromium ล้าสมัย</translation>
-<translation id="85843667276690461">รับความช่วยเหลือเกี่ยวกับการใช้ Chromium</translation>
 <translation id="8586442755830160949">ลิขสิทธิ์ <ph name="YEAR" /> The Chromium Authors สงวนลิขสิทธิ์</translation>
 <translation id="8619360774459241877">กำลังเปิด Chromium...</translation>
 <translation id="8621669128220841554">การติดตั้งล้มเหลวเนื่องจากเกิดข้อผิดพลาดที่ไม่ระบุ โปรดดาวน์โหลด Chromium อีกครั้ง</translation>
@@ -237,21 +218,14 @@
 <translation id="8907580949721785412">Chromium กำลังพยายามแสดงรหัสผ่าน พิมพ์รหัสผ่าน Windows ของคุณเพื่อแสดงรหัสผ่าน</translation>
 <translation id="8941642502866065432">อัปเดต Chromium ไม่ได้</translation>
 <translation id="8974095189086268230">Google Chrome OS เกิดขึ้นได้ด้วยการสนับสนุนจาก<ph name="BEGIN_LINK_CROS_OSS" />ซอฟต์แวร์โอเพนซอร์ส<ph name="END_LINK_CROS_OSS" />อื่นๆ</translation>
-<translation id="8985587603644336029">ก่อนหน้านี้มีผู้ลงชื่อเข้าใช้ Chromium บนคอมพิวเตอร์นี้ในชื่อ <ph name="ACCOUNT_EMAIL_LAST" /> หากนั่นไม่ใช่บัญชีของคุณ ให้สร้างผู้ใช้ Chromium ใหม่เพื่อเก็บข้อมูลแยก
-
-การลงชื่อเข้าใช้ต่อไปจะรวมข้อมูล Chromium เช่น บุ๊กมาร์ก ประวัติการเข้าชม และการตั้งค่าอื่นๆ เข้ากับ <ph name="ACCOUNT_EMAIL_NEW" /></translation>
 <translation id="9019929317751753759">เพื่อให้ Chromium ปลอดภัยขึ้น เราได้ปิดส่วนขยายต่อไปนี้ซึ่งไม่ได้แสดงอยู่ใน <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> และอาจมีการเพิ่มเข้ามาโดยที่คุณไม่รู้ตัว</translation>
 <translation id="9022552996538154597">ลงชื่อเข้าใช้ Chromium</translation>
-<translation id="9025992965467895364">หน้านี้ใช้หน่วยความจำมากเกินไป Chromium จึงหยุดหน้าชั่วคราว</translation>
-<translation id="9036189287518468038">Chromium App Launcher</translation>
 <translation id="9089354809943900324">Chromium ล้าสมัย</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium จะเปิดขึ้นมาใหม่ใน 1 ชั่วโมง}other{Chromium จะเปิดขึ้นมาใหม่ใน # ชั่วโมง}}</translation>
 <translation id="91086099826398415">เปิดลิงก์ใน Chromium แท็บใหม่</translation>
 <translation id="911206726377975832">ลบข้อมูลการท่องเว็บด้วยหรือไม่</translation>
 <translation id="9158494823179993217">ผู้ดูแลระบบของคุณกำหนดค่าให้ Chromium เปิดเบราว์เซอร์สำรองเพื่อเข้าถึง <ph name="TARGET_URL_HOSTNAME" /></translation>
-<translation id="918373042641772655">การยกเลิกการเชื่อมต่อกับ <ph name="USERNAME" /> จะล้างประวัติการเข้าชม บุ๊กมาร์ก การตั้งค่า และข้อมูลอื่นๆ ของ Chromium ที่เก็บไว้ในอุปกรณ์นี้ ข้อมูลที่เก็บไว้ในบัญชี Google ของคุณจะไม่ถูกล้างและสามารถจัดการได้บน <ph name="GOOGLE_DASHBOARD_LINK" />Google แดชบอร์ด<ph name="END_GOOGLE_DASHBOARD_LINK" /></translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">คุณได้ลงชื่อเข้าใช้ Chromium แล้ว</translation>
 <translation id="93478295209880648">Chromium อาจทำงานไม่ถูกต้องเพราะไม่รองรับ Windows XP หรือ Windows Vista อีกต่อไป</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> กำหนดว่าคุณต้องอ่านและยอมรับข้อกำหนดในการให้บริการต่อไปนี้ก่อนใช้อุปกรณ์นี้ ข้อกำหนดเหล่านี้ไม่ขยาย แก้ไข หรือจำกัดข้อกำหนดของ Chromium OS</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_tr.xtb b/chrome/app/resources/chromium_strings_tr.xtb
index c8ed9ac9..eaf6401 100644
--- a/chrome/app/resources/chromium_strings_tr.xtb
+++ b/chrome/app/resources/chromium_strings_tr.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium, şifrelerinizi dışa aktarmak istiyor. Buna izin vermek için Windows şifrenizi yazın.</translation>
 <translation id="1115445892567829615">Chromium, verilerinizi senkronize edemedi. Lütfen Senkronizasyon parolanızı güncelleyin.</translation>
 <translation id="113122355610423240">Chromium varsayılan tarayıcınız</translation>
-<translation id="1170115874949214249">Chromium'u telefonunuza yükleyin. Hesap kurtarma telefon numaranıza SMS göndereceğiz.</translation>
-<translation id="1174473354587728743">Bilgisayarı paylaşıyor musunuz? Artık Chromium'u tam olarak istediğiniz gibi kurabilirsiniz.</translation>
 <translation id="1185134272377778587">Chromium hakkında</translation>
-<translation id="1298199220304005244">Chromium OS'i kullanma konusunda yardım alın</translation>
 <translation id="1396446129537741364">Chromium, şifreleri göstermeye çalışıyor.</translation>
 <translation id="1414495520565016063">Chromium'da oturum açtınız!</translation>
 <translation id="151962892725702025">Senkronizasyon alan adınızda kullanılamadığından Chromium OS, verilerinizi senkronize edemedi.</translation>
 <translation id="1524282610922162960">Chromium sekmesini paylaşın</translation>
-<translation id="1668054258064581266">Hesabınızı Chromium'dan kaldırdıktan sonra, bu durumun etkili olması için açık sekmelerinizi yeniden yüklemeniz gerekebilir.</translation>
-<translation id="1688750314291223739">Kişiselleştirilmiş tarayıcı özelliklerinizi Web'e kaydetmek ve herhangi bir bilgisayardan Chromium ile bu özelliklere erişmek için senkronizasyonu ayarlayın.</translation>
 <translation id="1708666629004767631">Chromium'un kullanabileceğiniz yeni, daha güvenli bir sürümü var.</translation>
 <translation id="1766096484055239003">Yöneticiniz bir güncellemeyi uygulamak için Chromium'u yeniden başlatmanızı gerektiriyor</translation>
 <translation id="1774152462503052664">Chromium'un arka planda çalışmasına izin ver</translation>
 <translation id="1779356040007214683">Chromium'u daha güvenli bir hale getirmek için <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> altında listelenmeyen ve bilginiz dışında eklenmiş olabilecek bazı uzantıları devre dışı bıraktık.</translation>
 <translation id="1808667845054772817">Chromium'u yeniden yükle</translation>
-<translation id="1869480248812203386">Olası güvenlik olaylarının ayrıntılarını Google'a otomatik olarak bildirerek Chromium'un daha güvenli ve kullanımı kolay bir hale gelmesine yardımcı olabilirsiniz.</translation>
 <translation id="1881322772814446296">Yönetilen bir hesapla oturum açıyor ve hesabın yöneticisine Chromium profilinizi denetleme izni veriyorsunuz. Uygulamalarınız, yer işaretleriniz, geçmişiniz, şifreleriniz ve diğer ayarlarınız gibi Chromium verileriniz kalıcı olarak <ph name="USER_NAME" /> ile bağlantılandırılacaktır. Google Hesapları Hesap Özeti'ni kullanarak bu verileri silebilecek, ancak bu verileri başka bir hesapla ilişkilendiremeyeceksiniz. İsterseniz mevcut Chromium verilerinizi ayrı tutmak için yeni bir profil oluşturabilirsiniz. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Bu özelliği kapatarak Chromium'da oturum açmadan Gmail gibi Google sitelerinde oturum açabilirsiniz</translation>
 <translation id="1929939181775079593">Chromium yanıt vermiyor. Şimdi yeniden başlatılsın mı?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Yöneticiniz bu güncellemeyi uygulamak için Chromium'u yeniden başlatmanızı istiyor</translation>
 <translation id="2119636228670142020">&amp;Chromium OS hakkında</translation>
 <translation id="2241627712206172106">Bir bilgisayarı paylaşıyorsanız arkadaşlarınız ve aileniz ayrı olarak göz atabilir ve Chromium'u tam olarak istedikleri şekilde ayarlayabilir.</translation>
-<translation id="2265088490657775772">iPhone'unuzda Chromium'u edinin</translation>
 <translation id="2347108572062610441">Bu uzantı, Chromium'u başlattığınızda gösterilen sayfayı değiştirdi.</translation>
 <translation id="2396765026452590966">"<ph name="EXTENSION_NAME" />" uzantısı, Chromium'u başlattığınızda gösterilen sayfayı değiştirdi.</translation>
 <translation id="2483889755041906834">Chromium'da</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Güncellemek için Chromuium'un bu bilgisayarda kapatılması gerekiyor. Bu durum, bilgisayara giriş yapmış diğer kullanıcıların kaydedilmemiş bilgilerinin silinmesine yol açabilir.</translation>
 <translation id="2847479871509788944">Chromium'dan kaldır...</translation>
 <translation id="2886012850691518054">İsteğe Bağlı: Kullanıcı istatistiklerini ve kilitlenme raporlarını Google'a otomatik olarak göndererek Chromium'u iyileştirmemize yardımcı olun.</translation>
-<translation id="2898082584336937987">Chromium'u telefonunuza yükleyin. Telefonunuza SMS göndereceğiz: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">&amp;Chromium hakkında</translation>
 <translation id="2977470724722393594">Chromium güncel durumda</translation>
 <translation id="3032787606318309379">Chromium'a ekleniyor ...</translation>
-<translation id="3046695367536568084">Uygulamaları kullanmak için Chromium'da oturum açmış olmanız gerekir. Oturum açmanız, Chromium'un uygulamalarınızı, yer işaretlerinizi, geçmişinizi, şifrelerinizi ve diğer ayarlarınızı tüm cihazlarınızda senkronize etmesine olanak sağlar.</translation>
 <translation id="3068515742935458733">Kilitlenme raporlarını ve <ph name="UMA_LINK" /> bilgilerini Google'a göndererek, Chromium'u daha iyi hale getirmeye yardımcı olun</translation>
 <translation id="3103660991484857065">Yükleyici sıkıştırılmış arşivi açamadı. Lütfen Chromium'u yeniden indirin.</translation>
 <translation id="3130323860337406239">Chromium mikrofonunuzu kullanıyor.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Bağlantıyı Chromium &amp;Gizli Penceresinde Aç</translation>
 <translation id="3190315855212034486">Hata! Chromium kilitlendi. Yeniden başlatılsın mı?</translation>
 <translation id="3229526316128325841">Chromium, şifrelerinizi dışa aktarmak istiyor.</translation>
-<translation id="3256316712990552818">Chromium'a kopyalandı</translation>
 <translation id="3258596308407688501">Chromium veri dizini üzerinde okuma ve yazma işlemi yapamıyor: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="328888136576916638">Google API anahtarları eksik. Chromium'un bazı işlevleri devre dışı bırakılacak.</translation>
 <translation id="3296368748942286671">Chromium kapandığında arka plan uygulamaları çalıştırmaya devam et</translation>
@@ -82,7 +72,6 @@
 <translation id="4050175100176540509">Son sürümde güvenlikle ilgili önemli iyileştirmeler ve yeni özellikler mevcuttur.</translation>
 <translation id="421369550622382712">Chromium'a özgü harika uygulamaları, oyunları, uzantıları ve temaları keşfedin.</translation>
 <translation id="4216212958613226427">Bu dil, Chromium kullanıcı arayüzünü görüntülemek için kullanılır</translation>
-<translation id="4222580632002216401">Chromium'da oturum açtınız! Senkronizasyon, yöneticiniz tarafından devre dışı bırakıldı.</translation>
 <translation id="4230135487732243613">Chromium verileriniz bu hesaba bağlansın mı?</translation>
 <translation id="4271805377592243930">Chromium'la ilgili yardım alın</translation>
 <translation id="4285930937574705105">Belirlenemeyen bir hata nedeniyle yükleme başarısız oldu. Chromium şu anda çalışır durumdaysa kapatıp yeniden deneyin.</translation>
@@ -105,7 +94,6 @@
 <translation id="4943838377383847465">Chromium arka plan modunda.</translation>
 <translation id="4987820182225656817">Misafirler Chromium'u geride hiçbir şey bırakmadan kullanabilir.</translation>
 <translation id="4994636714258228724">Kendinizi Chromium'a ekleyin</translation>
-<translation id="5181952534059945058">Bu sayfa çok fazla bellek kullandığından Chromium bazı içerikleri kaldırdı.</translation>
 <translation id="5277894862589591112">Yaptığınız değişiklikleri uygulamak için Chromium'u yeniden başlatın</translation>
 <translation id="5358375970380395591">Yönetilen bir hesapla oturum açıyor ve hesabın yöneticisine Chromium profilinizi denetleme izni veriyorsunuz. Uygulamalarınız, yer işaretleriniz, geçmişiniz, şifreleriniz ve diğer ayarlarınız gibi Chromium verileriniz kalıcı olarak <ph name="USER_NAME" /> ile bağlantılandırılacaktır. Google Hesapları Hesap Özeti'ni kullanarak bu verileri silebilecek, ancak bu verileri başka bir hesapla ilişkilendiremeyeceksiniz. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium güncelleniyor (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -128,7 +116,6 @@
 <translation id="5895138241574237353">Yeniden başlat</translation>
 <translation id="5987687638152509985">Senkronizasyonu başlatmak için Chromium'u güncelleyin</translation>
 <translation id="6013050204643758987">Chromium OS, <ph name="BEGIN_LINK_LINUX_OSS" />Linux'ta (Beta)<ph name="END_LINK_LINUX_OSS" /> olduğu gibi ek <ph name="BEGIN_LINK_CROS_OSS" />açık kaynak yazılımlardan<ph name="END_LINK_CROS_OSS" /> yararlanılarak geliştirilmiştir.</translation>
-<translation id="6040143037577758943">Kapat</translation>
 <translation id="6055895534982063517">Kullanabileceğiniz yeni bir Chromium sürümü var ve bu sürüm her zamankinden daha hızlı.</translation>
 <translation id="6063093106622310249">&amp;Chromium'da aç</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> Chromium'a eklendi</translation>
@@ -150,7 +137,6 @@
 <translation id="6434250628340475518">Chromium OS Sistemi</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium 1 saniye içinde yeniden başlatılacak}other{Chromium # saniye içinde yeniden başlatılacak}}</translation>
 <translation id="6475912303565314141">Ayrıca, Chromium'u başlattığınızda gösterilecek sayfayı da denetler.</translation>
-<translation id="6485906693002546646">Chromium öğelerinizi senkronize etmek için <ph name="PROFILE_EMAIL" /> adresini kullanıyorsunuz. Senkronizasyon tercihinizi güncellemek veya Chromium'u bir Google Hesabı olmadan kullanmak için şurayı ziyaret edin: <ph name="SETTINGS_LINK" /></translation>
 <translation id="6510925080656968729">Chromium'u Kaldır</translation>
 <translation id="6570579332384693436">Yazım hatalarını düzeltmek için Chromium, metin alanlarına yazdığınız metinleri Google'a gönderir</translation>
 <translation id="6598877126913850652">Chromium bildirim ayarlarına git</translation>
@@ -160,7 +146,6 @@
 Bazı özellikler kullanılamayabilir. Lütfen farklı bir profil dizini belirtin veya daha yeni bir Chromium sürümünü kullanın.</translation>
 <translation id="6734080038664603509">&amp;Chromium'u güncelle</translation>
 <translation id="6734291798041940871">Chromium zaten bilgisayarınızdaki tüm kullanıcılar için yüklendi.</translation>
-<translation id="6810143991807788455">Mevcut ayarlarınızı bildirerek Chromium'u daha iyi hale getirmemize yardımcı olun</translation>
 <translation id="6847869444787758381">Chromium, şifrelerinizin güvenliğinin ihlal edilip edilmediğini size bildirir</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (Chromium'a kopyalandı)</translation>
@@ -179,7 +164,6 @@
 <translation id="7318036098707714271">Tercihler dosyanız bozuk veya geçersiz.
 
 Chromium ayarlarınızı kurtaramıyor.</translation>
-<translation id="7331920710658926971">Chromium'u telefonunuza yükleyin. Telefonunuza SMS göndereceğiz.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Yeni pencere</translation>
 <translation id="734373864078049451">Web, yer işaretleri ve diğer Chromium bilgileriniz burada bulunur.</translation>
@@ -211,16 +195,13 @@
 <translation id="7979877361127045932">Chromium menüsünde gizle</translation>
 <translation id="8013436988911883588">Chromium erişim izni aldıktan sonra, web siteleri de erişim için sizden izin isteyebilecek.</translation>
 <translation id="81770708095080097">Bu dosya tehlikeli olduğu için Chromium tarafından engellendi.</translation>
-<translation id="8222496066431494154">Chromium'u telefonunuza yükleyin. Hesap kurtarma telefon numaranıza SMS göndereceğiz: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Bir resmin işe yarar bir açıklaması yoksa, Chromium sizin için bir açıklama sağlamaya çalışır. Açıklama oluşturmak için resimler Google'a gönderilir. Bu özelliği istediğiniz zaman ayarlardan kapatabilirsiniz.</translation>
-<translation id="8269379391216269538">Chromium'u daha iyi hale getirmeye yardımcı olun</translation>
 <translation id="8290862415967981663">Bu dosya tehlikeli olabileceği için Chromium tarafından engellendi.</translation>
 <translation id="8330519371938183845">Chromium'u cihazlarınız arasında senkronize etmek ve kişiselleştirmek için oturum açın</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> önceden Chromium kullanıyordu</translation>
 <translation id="8417404458978023919">{0,plural, =1{Chromium'u bir gün içinde yeniden başlatın}other{Chromium'u # gün içinde yeniden başlatın}}</translation>
 <translation id="8453117565092476964">Yükleyici arşivi bozuk veya geçersiz. Lütfen Chromium'u yeniden indirin.</translation>
 <translation id="8493179195440786826">Chromium Sürümü Eski</translation>
-<translation id="85843667276690461">Chromium'u kullanma konusunda yardım alın</translation>
 <translation id="8586442755830160949">Telif Hakkı <ph name="YEAR" /> The Chromium Authors. Tüm hakları saklıdır.</translation>
 <translation id="8619360774459241877">Chromium başlatılıyor...</translation>
 <translation id="8621669128220841554">Yükleme belirtilmeyen bir hata nedeniyle başarısız oldu. Lütfen Chromium'u tekrar indirin.</translation>
@@ -238,21 +219,14 @@
 <translation id="8907580949721785412">Chromium şifreleri göstermeye çalışıyor. Buna izin vermek için Windows şifrenizi yazın.</translation>
 <translation id="8941642502866065432">Chromium güncellenemiyor</translation>
 <translation id="8974095189086268230">Chromium OS, ek <ph name="BEGIN_LINK_CROS_OSS" />açık kaynak yazılımlar<ph name="END_LINK_CROS_OSS" /> ile hazırlanmıştır.</translation>
-<translation id="8985587603644336029">Bu bilgisayarda daha önce birisi <ph name="ACCOUNT_EMAIL_LAST" /> olarak Chromium'da oturum açmış. Bu sizin hesabınız değilse, bilgilerinizi ayrı tutmak için yeni bir Chromium kullanıcısı oluşturun.
-
-Yine de oturum açarsanız, yer işaretleriniz, geçmişiniz ve diğer ayarlarınız gibi Chromium bilgileriniz <ph name="ACCOUNT_EMAIL_NEW" /> ile birleştirilecektir.</translation>
 <translation id="9019929317751753759">Chromium'u daha güvenli bir hale getirmek için <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> altında listelenmeyen ve bilginiz dışında eklenmiş olabilecek aşağıdaki uzantıyı devre dışı bıraktık.</translation>
 <translation id="9022552996538154597">Chromium'da oturum aç</translation>
-<translation id="9025992965467895364">Bu sayfa, bellekte çok fazla yer kapladığından Chromium tarafından duraklatıldı.</translation>
-<translation id="9036189287518468038">Chromium Uygulama Başlatıcı</translation>
 <translation id="9089354809943900324">Chromium sürümü eski</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium bir saat içinde yeniden başlatılacak}other{Chromium # saat içinde yeniden başlatılacak}}</translation>
 <translation id="91086099826398415">Bağlantıyı Yeni Chromium &amp;sekmesinde aç</translation>
 <translation id="911206726377975832">Tarama verileriniz de silinsin mi?</translation>
 <translation id="9158494823179993217">Sistem yöneticiniz, Chromium'u, <ph name="TARGET_URL_HOSTNAME" /> sitesini alternatif bir tarayıcıda açacak şekilde yapılandırmış.</translation>
-<translation id="918373042641772655"><ph name="USERNAME" /> kullanıcısının bağlantısını kesmek, geçmişinizi, yer işaretlerinizi, ayarlarınızı ve bu cihazda depolanan diğer Chromium verilerinizi temizler. Google Hesabınızda depolanan veriler temizlenmez ve <ph name="GOOGLE_DASHBOARD_LINK" />Google Hesap Özeti<ph name="END_GOOGLE_DASHBOARD_LINK" />'nden yönetilebilir.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Şu anda Chromium'da oturum açtınız</translation>
 <translation id="93478295209880648">Chromium artık Windows XP veya Windows Vista üzerinde desteklenmediği için doğru şekilde çalışmayabilir</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" />, bu cihazı kullanmadan önce aşağıdaki Hizmet Şartları'nı okuyup kabul etmenizi gerektirmektedir. Bu şartlar, Chromium OS Şartları'nın kapsamını genişletmez, değiştirmez veya sınırlamaz.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_uk.xtb b/chrome/app/resources/chromium_strings_uk.xtb
index f47a949..066638e8 100644
--- a/chrome/app/resources/chromium_strings_uk.xtb
+++ b/chrome/app/resources/chromium_strings_uk.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium хоче експортувати ваші паролі. Щоб дозволити, введіть свій пароль Windows.</translation>
 <translation id="1115445892567829615">Chromium не вдалося синхронізувати ваші дані. Оновіть свою парольну фразу для синхронізації.</translation>
 <translation id="113122355610423240">Chromium – ваш веб-переглядач за умовчанням</translation>
-<translation id="1170115874949214249">Установіть Chromium на телефоні. Ми надішлемо SMS на номер телефону для відновлення облікового запису.</translation>
-<translation id="1174473354587728743">Користуєтеся комп’ютером спільно з іншими? Тепер ви можете налаштувати Chromium на свій смак.</translation>
 <translation id="1185134272377778587">Про Chromium</translation>
-<translation id="1298199220304005244">Отримати довідку щодо користування ОС Chromium</translation>
 <translation id="1396446129537741364">Chromium намагається показати паролі.</translation>
 <translation id="1414495520565016063">Ви ввійшли в Chromium.</translation>
 <translation id="151962892725702025">ОС Chromium не вдалося синхронізувати ваші дані, оскільки синхронізація для вашого домену недоступна.</translation>
 <translation id="1524282610922162960">Поділитися вкладкою Chromium</translation>
-<translation id="1668054258064581266">Якщо видалити обліковий запис із Chromium, можливо, потрібно оновити відкриті вкладки, щоб зміни почали діяти.</translation>
-<translation id="1688750314291223739">Налаштуйте синхронізацію, щоб зберегти свої персоналізовані функції веб-переглядача в Інтернеті й мати до них доступ із Chromium на будь-якому комп’ютері.</translation>
 <translation id="1708666629004767631">Доступна нова, надійніша версія Chromium.</translation>
 <translation id="1766096484055239003">Адміністратор вимагає перезапустити Chromium, щоб застосувати оновлення</translation>
 <translation id="1774152462503052664">Дозволити Chromium працювати у фоновому режимі</translation>
 <translation id="1779356040007214683">Щоб зробити Chromium безпечнішим, ми вимкнути деякі розширення, джерелом яких не є <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />, і які, можливо, було додано без вашого відома.</translation>
 <translation id="1808667845054772817">Перевстановити Chromium</translation>
-<translation id="1869480248812203386">Ви можете допомогти зробити Chromium безпечнішим і простішим у користуванні, автоматично повідомляючи Google деталі щодо можливого порушення безпеки.</translation>
 <translation id="1881322772814446296">Ви входите, використовуючи дані облікового запису, яким керує адміністратор. Адміністратор може контролювати ваш профіль Chromium. Ваші дані Chromium, як-от програми, закладки, історія, паролі й інші налаштування, буде назавжди пов’язано з обліковим записом <ph name="USER_NAME" />. Ці дані можна видалити на інформаційній панелі Облікових записів Google, але ви не зможете пов’язати їх з іншим обліковим записом. Проте ви можете створити новий профіль, щоб зберігати наявні дані Chromium окремо. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Якщо вимкнути цей параметр, ви зможете входити на сайти Google, як-от Gmail, без входу в Chromium</translation>
 <translation id="1929939181775079593">Chromium не відповідає. Перезапустити зараз?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Адміністратор просить перезапустити Chromium, щоб застосувати це оновлення</translation>
 <translation id="2119636228670142020">Про &amp;ОС Chromium</translation>
 <translation id="2241627712206172106">Якщо вашим комп’ютером користуєтесь не лише ви, а й ваші друзі чи сім’я, вони можуть налаштувати Chromium на свій смак.</translation>
-<translation id="2265088490657775772">завантажити Chromium на iPhone</translation>
 <translation id="2347108572062610441">Це розширення змінило сторінку, яка відкривається під час запуску Chromium.</translation>
 <translation id="2396765026452590966">Розширення "<ph name="EXTENSION_NAME" />" змінило сторінку, яка відкривається під час запуску Chromium.</translation>
 <translation id="2483889755041906834">У Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Для оновлення потрібно припинити роботу Chromium. У результаті інші користувачі, що ввійшли в обліковий запис на цьому комп’ютері, можуть утратити незбережені зміни.</translation>
 <translation id="2847479871509788944">Видалити з Chromium…</translation>
 <translation id="2886012850691518054">Додатково: допоможіть покращити Chromium,  автоматично надсилаючи статистику використання та звіти про аварійне завершення роботи в Google.</translation>
-<translation id="2898082584336937987">Установіть Chromium на телефоні. Ми надішлемо SMS на ваш телефон: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Про &amp;Chromium</translation>
 <translation id="2977470724722393594">У вас остання версія Chromium</translation>
 <translation id="3032787606318309379">Додавання в Chromium...</translation>
-<translation id="3046695367536568084">Щоб користуватися додатками, потрібно ввійти в Chromium. Це дозволяє веб-переглядачу Chromium синхронізувати ваші додатки, закладки, історію, паролі й інші налаштування на різних пристроях.</translation>
 <translation id="3068515742935458733">Допоможіть покращити Chromium, надсилаючи звіти про аварійне завершення роботи та <ph name="UMA_LINK" /> в Google</translation>
 <translation id="3103660991484857065">Програмі встановлення не вдалося видобути архів. Завантажте Chromium ще раз.</translation>
 <translation id="3130323860337406239">Chromium використовує ваш мікрофон.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Відкрити посилання в аноні&amp;мному вікні Chromium</translation>
 <translation id="3190315855212034486">Помилка. Chromium аварійно завершив роботу. Перезапустити зараз?</translation>
 <translation id="3229526316128325841">Chromium хоче експортувати ваші паролі.</translation>
-<translation id="3256316712990552818">Скопійовано в Chromium</translation>
 <translation id="3258596308407688501">Chromium не може читати та писати дані у свій каталог даних:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">В останній версії покращено безпеку та додано нові функції.</translation>
 <translation id="421369550622382712">Знаходьте чудові додатки, ігри, розширення й теми для Chromium.</translation>
 <translation id="4216212958613226427">Цією мовою відображається інтерфейс Chromium</translation>
-<translation id="4222580632002216401">Ви ввійшли в Chromium. Проте ваш адміністратор вимкнув синхронізацію.</translation>
 <translation id="4230135487732243613">Пов’язати ваші дані Chromium із цим обліковим записом?</translation>
 <translation id="4271805377592243930">Отримати довідку щодо Chromium</translation>
 <translation id="4285930937574705105">Не вдалося встановити через невизначену помилку. Якщо Chromium зараз запущено, закрийте його та повторіть спробу.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium у фоновому режимі.</translation>
 <translation id="4987820182225656817">Гості можуть анонімно користуватися Chromium.</translation>
 <translation id="4994636714258228724">Додати себе в Chromium</translation>
-<translation id="5181952534059945058">Ця сторінка використовує забагато пам’яті, тому Chromium вилучив деякий вміст.</translation>
 <translation id="5277894862589591112">Щоб застосувати зміни, перезапустіть Chromium</translation>
 <translation id="5358375970380395591">Ви входите, використовуючи дані облікового запису, яким керує адміністратор. Адміністратор може контролювати ваш профіль Chromium. Ваші дані Chromium, як-от програми, закладки, історія, паролі й інші налаштування, буде назавжди пов’язано з обліковим записом <ph name="USER_NAME" />. Ці дані можна видалити на інформаційній панелі Облікових записів Google, але ви не зможете пов’язати їх з іншим обліковим записом. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Chromium оновлюється (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Перезапустити</translation>
 <translation id="5987687638152509985">Щоб почати синхронізацію, оновіть Chromium</translation>
 <translation id="6013050204643758987">ОС Chromium, як і <ph name="BEGIN_LINK_LINUX_OSS" />бета-версія Linux<ph name="END_LINK_LINUX_OSS" />, працює завдяки додатковому <ph name="BEGIN_LINK_CROS_OSS" />програмному забезпеченню з відкритим кодом<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="6040143037577758943">Закрити</translation>
 <translation id="6055895534982063517">Доступна нова версія Chromium – швидша, ніж будь-коли.</translation>
 <translation id="6063093106622310249">&amp;Відкрити в Chromium</translation>
 <translation id="6072279588547424923">Розширення <ph name="EXTENSION_NAME" /> додано в Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">ОС Chromium</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium перезапуститься через 1 секунду}one{Chromium перезапуститься через # секунду}few{Chromium перезапуститься через # секунди}many{Chromium перезапуститься через # секунд}other{Chromium перезапуститься через # секунди}}</translation>
 <translation id="6475912303565314141">Також указує сторінку, яка відкривається під час запуску Chromium.</translation>
-<translation id="6485906693002546646">Ви синхронізуєте дані Chromium через обліковий запис <ph name="PROFILE_EMAIL" />. Щоб оновити параметри синхронізації або використовувати Chromium без облікового запису Google, перейдіть на сторінку <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Видалити Chromium</translation>
 <translation id="6570579332384693436">Щоб виправляти орфографічні помилки, Chromium надсилає введений текст у Google</translation>
 <translation id="6598877126913850652">Перейти до налаштувань сповіщень Chromium</translation>
@@ -162,7 +148,6 @@
 Деякі функції можуть бути недоступними. Укажіть інший каталог профілю або скористайтеся новішою версією Chromium.</translation>
 <translation id="6734080038664603509">Оновити &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium уже встановлено для всіх користувачів на вашому комп’ютері.</translation>
-<translation id="6810143991807788455">Допоможіть покращити Chromium, надсилаючи звіти про поточні налаштування</translation>
 <translation id="6847869444787758381">Chromium повідомляє, коли ваші паролі зламують</translation>
 <translation id="6857782730669500492">Chromium – <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (скопійовано в Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Ваш файл налаштувань пошкоджений або недійсний.
 
 Chromium не може відновити ваші налаштування.</translation>
-<translation id="7331920710658926971">Установіть Chromium на телефоні. Ми надішлемо SMS на ваш телефон.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Нове вікно</translation>
 <translation id="734373864078049451">Тут містяться ваші веб-сторінки, закладки та інші дані Chromium.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Сховати в меню Chromium</translation>
 <translation id="8013436988911883588">Коли Chromium отримає доступ, веб-сайти зможуть надсилати вам запити на доступ.</translation>
 <translation id="81770708095080097">Цей файл небезпечний, тому Chromium заблокував його.</translation>
-<translation id="8222496066431494154">Установіть Chromium на телефоні. Ми надішлемо SMS на номер телефону для відновлення облікового запису: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Якщо зображення не має корисного опису, Chromium спробує додати його. Для цього зображення надсилаються в Google. Ви можете будь-коли вимкнути це в налаштуваннях.</translation>
-<translation id="8269379391216269538">Допоможіть покращити Chromium</translation>
 <translation id="8290862415967981663">Цей файл може бути небезпечним, тому Chromium заблокував його.</translation>
 <translation id="8330519371938183845">Увійдіть, щоб синхронізувати та персоналізувати роботу Chromium на всіх своїх пристроях</translation>
 <translation id="8340674089072921962">Раніше ви входили в обліковий запис <ph name="USER_EMAIL_ADDRESS" /> у Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Перезапустіть Chromium упродовж дня}one{Перезапустіть Chromium упродовж # дня}few{Перезапустіть Chromium упродовж # днів}many{Перезапустіть Chromium упродовж # днів}other{Перезапустіть Chromium упродовж # дня}}</translation>
 <translation id="8453117565092476964">Архів програми встановлення пошкоджений або недійсний. Завантажте Chromium ще раз.</translation>
 <translation id="8493179195440786826">Версія Chromium застаріла</translation>
-<translation id="85843667276690461">Отримати довідку щодо користування Chromium</translation>
 <translation id="8586442755830160949">Авторське право <ph name="YEAR" /> Автори Chromium. Усі права захищено.</translation>
 <translation id="8619360774459241877">Запускається Chromium…</translation>
 <translation id="8621669128220841554">Не вдалося встановити через невизначену помилку. Завантажте Chromium ще раз.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium намагається показати паролі. Щоб дозволити, введіть свій пароль Windows.</translation>
 <translation id="8941642502866065432">Не вдається оновити Chromium</translation>
 <translation id="8974095189086268230">ОС Chromium стала можливою завдяки додатковому <ph name="BEGIN_LINK_CROS_OSS" />програмному забезпеченню з відкритим кодом<ph name="END_LINK_CROS_OSS" />.</translation>
-<translation id="8985587603644336029">Хтось раніше входив у Chromium на цьому комп’ютері як <ph name="ACCOUNT_EMAIL_LAST" />. Якщо це не ваш обліковий запис, створіть нового користувача Chromium, щоб зберігати свою інформацію окремо.
-
-Якщо ви все одно ввійдете, наявні дані Chromium, як-от закладки, історію й інші налаштування, буде об’єднано з обліковим записом <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Щоб зробити Chromium безпечнішим, ми вимкнули наведене нижче розширення, установлене не із сайту <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> і, можливо, додане без вашого відома.</translation>
 <translation id="9022552996538154597">Вхід у Chromium</translation>
-<translation id="9025992965467895364">Ця сторінка займає велику кількість пам’яті, тому Chromium призупинив її роботу.</translation>
-<translation id="9036189287518468038">Панель запуску програм Chromium</translation>
 <translation id="9089354809943900324">Версія Chromium застаріла</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium перезапуститься через годину}one{Chromium перезапуститься через # годину}few{Chromium перезапуститься через # години}many{Chromium перезапуститься через # годин}other{Chromium перезапуститься через # години}}</translation>
 <translation id="91086099826398415">Відкрити посилання в новій &amp;вкладці Chromium</translation>
 <translation id="911206726377975832">Також видалити дані веб-перегляду?</translation>
 <translation id="9158494823179993217">Ваш системний адміністратор налаштував Chromium відкривати сторінку <ph name="TARGET_URL_HOSTNAME" /> в альтернативному веб-переглядачі.</translation>
-<translation id="918373042641772655">Якщо від’єднати користувача <ph name="USERNAME" />, вашу історію, закладки, налаштування й інші дані Chromium, збережені на цьому пристрої, буде видалено. Дані, які зберігаються в обліковому записі Google, не буде видалено. Ними можна керувати на <ph name="GOOGLE_DASHBOARD_LINK" />Інформаційній панелі Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Ви ввійшли в Chromium</translation>
 <translation id="93478295209880648">Chromium може працювати неналежним чином, оскільки більше не підтримується у Windows XP та Windows Vista</translation>
 <translation id="95514773681268843">Перш ніж використовувати цей пристрій, потрібно прочитати й прийняти наведені нижче Загальні положення та умови для <ph name="DOMAIN" />. Ці умови не розширюють, не змінюють і не обмежують Умови використання ОС Chromium.</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_vi.xtb b/chrome/app/resources/chromium_strings_vi.xtb
index 1f04cc3..1cea43e 100644
--- a/chrome/app/resources/chromium_strings_vi.xtb
+++ b/chrome/app/resources/chromium_strings_vi.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium muốn xuất các mật khẩu của bạn. Hãy nhập mật khẩu Windows để cho phép thực hiện việc này.</translation>
 <translation id="1115445892567829615">Chromium không thể đồng bộ hóa dữ liệu của bạn. Vui lòng cập nhật cụm mật khẩu Đồng bộ hóa của bạn.</translation>
 <translation id="113122355610423240">Chromium là trình duyệt mặc định của bạn</translation>
-<translation id="1170115874949214249">Cài đặt Chromium trên điện thoại của bạn. Chúng tôi sẽ gửi SMS tới số điện thoại khôi phục tài khoản của bạn.</translation>
-<translation id="1174473354587728743">Bạn muốn chia sẻ máy tính? Giờ đây, bạn có thể thiết lập Chromium theo cách mình muốn.</translation>
 <translation id="1185134272377778587">Giới thiệu về Chromium</translation>
-<translation id="1298199220304005244">Nhận trợ giúp về cách sử dụng Chromium OS</translation>
 <translation id="1396446129537741364">Chromium đang cố gắng hiển thị mật khẩu.</translation>
 <translation id="1414495520565016063">Bạn đã đăng nhập vào Chromium!</translation>
 <translation id="151962892725702025">Chromium OS không thể đồng bộ hóa dữ liệu của bạn vì Đồng bộ hóa không khả dụng với miền của bạn.</translation>
 <translation id="1524282610922162960">Chia sẻ một tab Chromium</translation>
-<translation id="1668054258064581266">Sau khi xóa tài khoản khỏi Chromium, bạn có thể cần tải lại các tab đang mở của mình để tác vụ có hiệu lực.</translation>
-<translation id="1688750314291223739">Thiết lập đồng bộ hóa để lưu các tính năng trình duyệt được cá nhân hóa của bạn vào web và truy cập chúng từ Chromium trên bất kỳ máy tính nào.</translation>
 <translation id="1708666629004767631">Hiện đã có phiên bản Chromium mới an toàn hơn.</translation>
 <translation id="1766096484055239003">Quản trị viên của bạn yêu cầu bạn chạy lại Chromium để áp dụng bản cập nhật</translation>
 <translation id="1774152462503052664">Cho phép Chromium chạy dưới nền</translation>
 <translation id="1779356040007214683">Để làm cho Chromium an toàn hơn, chúng tôi đã vô hiệu hóa một số tiện ích không được liệt kê trong <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> và có thể đã được thêm mà bạn không biết.</translation>
 <translation id="1808667845054772817">Cài đặt lại Chromium</translation>
-<translation id="1869480248812203386">Bạn có thể giúp Chromium an toàn và dễ sử dụng hơn bằng cách tự động báo cáo với Google chi tiết về sự cố bảo mật có thể xảy ra.</translation>
 <translation id="1881322772814446296">Bạn đang đăng nhập bằng tài khoản được quản lý và cấp cho quản trị viên của tài khoản quyền kiểm soát cấu hình Chromium của bạn. Dữ liệu Chromium của bạn, chẳng hạn như ứng dụng, dấu trang, lịch sử, mật khẩu và các cài đặt khác sẽ vĩnh viễn được liên kết với <ph name="USER_NAME" />. Bạn có thể xóa dữ liệu này thông qua Trang tổng quan của tài khoản Google nhưng không thể liên kết dữ liệu này với tài khoản khác. Bạn có thể tùy chọn tạo cấu hình mới để giữ cho dữ liệu Chromium hiện có của bạn riêng biệt. <ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">Bằng việc tắt tính năng này, bạn có thể đăng nhập vào các trang web của Google, chẳng hạn như Gmail mà không cần đăng nhập vào Chromium</translation>
 <translation id="1929939181775079593">Chromium không phản hồi. Chạy lại ngay bây giờ?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">Quản trị viên của bạn yêu cầu bạn chạy lại Chromium để áp dụng bản cập nhật này</translation>
 <translation id="2119636228670142020">Giới thiệu về &amp;Chromium OS</translation>
 <translation id="2241627712206172106">Nếu bạn chia sẻ máy tính, bạn bè và gia đình có thể duyệt web một cách riêng biệt và thiết lập Chromium theo ý của họ.</translation>
-<translation id="2265088490657775772">tải Chromium trên iPhone của bạn</translation>
 <translation id="2347108572062610441">Tiện ích này đã thay đổi trang nào được hiển thị khi bạn khởi động Chromium.</translation>
 <translation id="2396765026452590966">Tiện ích "<ph name="EXTENSION_NAME" />" đã thay đổi trang nào được hiển thị khi bạn khởi động Chromium.</translation>
 <translation id="2483889755041906834">Trong Chromium</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">Để cập nhật, bạn cần ngừng chạy Chromium trên máy tính này. Nếu ngừng chạy, những người dùng khác đăng nhập vào máy tính này có thể bị mất các thay đổi chưa lưu.</translation>
 <translation id="2847479871509788944">Xóa khỏi Chromium...</translation>
 <translation id="2886012850691518054">Tùy chọn: giúp cải thiện Chromium bằng cách tự động gửi thống kê sử dụng và báo cáo sự cố cho Google.</translation>
-<translation id="2898082584336937987">Cài đặt Chromium trên điện thoại của bạn. Chúng tôi sẽ gửi SMS tới điện thoại của bạn: <ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">Giới thiệu về &amp;Chromium</translation>
 <translation id="2977470724722393594">Chromium đã được cập nhật</translation>
 <translation id="3032787606318309379">Đang thêm vào Chromium...</translation>
-<translation id="3046695367536568084">Bạn cần đăng nhập vào Chromium để sử dụng ứng dụng. Điều này cho phép Chromium đồng bộ hóa ứng dụng, dấu trang, lịch sử, mật khẩu và cài đặt khác trên các thiết bị.</translation>
 <translation id="3068515742935458733">Giúp cải thiện Chromium bằng cách gửi báo cáo sự cố và <ph name="UMA_LINK" /> tới Google</translation>
 <translation id="3103660991484857065">Trình cài đặt không thể giải nén tệp lưu trữ. Hãy tải xuống Chromium lại lần nữa.</translation>
 <translation id="3130323860337406239">Chromium đang sử dụng micrô của bạn.</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">Mở liên kết trong cửa sổ ẩn danh của Chromium</translation>
 <translation id="3190315855212034486">Rất tiếc! Chromium đã gặp sự cố. Chạy lại ngay bây giờ?</translation>
 <translation id="3229526316128325841">Chromium muốn xuất các mật khẩu của bạn.</translation>
-<translation id="3256316712990552818">Đã sao chép vào Chromium</translation>
 <translation id="3258596308407688501">Chromium không thể đọc và ghi vào thư mục dữ liệu:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">Cải thiện bảo mật quan trọng và tính năng mới có trong phiên bản mới nhất.</translation>
 <translation id="421369550622382712">Khám phá các ứng dụng, trò chơi, tiện ích và chủ đề tuyệt vời cho Chromium.</translation>
 <translation id="4216212958613226427">Ngôn ngữ này dùng để hiển thị giao diện người dùng của Chromium</translation>
-<translation id="4222580632002216401">Bạn hiện đã đăng nhập vào Chromium! Quản trị viên của bạn đã tắt tính năng Đồng bộ hóa.</translation>
 <translation id="4230135487732243613">Bạn muốn liên kết dữ liệu Chromium của bạn với tài khoản này?</translation>
 <translation id="4271805377592243930">Nhận trợ giúp về Chromium</translation>
 <translation id="4285930937574705105">Không thể cài đặt do lỗi chưa xác định. Nếu Chromium hiện đang chạy, hãy đóng Chromium và thử lại.</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium đang chạy trong nền.</translation>
 <translation id="4987820182225656817">Khách có thể sử dụng Chromium mà không phải thoát khỏi bất cứ nội dung nào.</translation>
 <translation id="4994636714258228724">Thêm chính bạn vào Chromium</translation>
-<translation id="5181952534059945058">Trang này sử dụng quá nhiều bộ nhớ nên Chromium đã xóa bớt một số nội dung.</translation>
 <translation id="5277894862589591112">Để áp dụng các mục thay đổi của bạn, hãy chạy lại Chromium</translation>
 <translation id="5358375970380395591">Bạn đang đăng nhập bằng tài khoản được quản lý và cấp cho quản trị viên của tài khoản quyền kiểm soát cấu hình Chromium của bạn. Dữ liệu Chromium của bạn, chẳng hạn như ứng dụng, dấu trang, lịch sử, mật khẩu và các cài đặt khác sẽ vĩnh viễn được liên kết với <ph name="USER_NAME" />. Bạn có thể xóa dữ liệu này thông qua Trang tổng quan của tài khoản Google nhưng không thể liên kết dữ liệu này với tài khoản khác. <ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">Đang cập nhật Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">Khởi động lại</translation>
 <translation id="5987687638152509985">Cập nhật Chromium để bắt đầu đồng bộ hóa</translation>
 <translation id="6013050204643758987">Chromium OS có thể hoạt động được là nhờ <ph name="BEGIN_LINK_CROS_OSS" />phần mềm nguồn mở<ph name="END_LINK_CROS_OSS" /> bổ sung, tương tự như <ph name="BEGIN_LINK_LINUX_OSS" />Linux (Beta)<ph name="END_LINK_LINUX_OSS" />.</translation>
-<translation id="6040143037577758943">Đóng</translation>
 <translation id="6055895534982063517">Hiện đã có phiên bản Chromium mới và phiên bản này nhanh hơn bao giờ hết.</translation>
 <translation id="6063093106622310249">&amp;Mở trong Chromium</translation>
 <translation id="6072279588547424923"><ph name="EXTENSION_NAME" /> đã được thêm vào Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Hệ thống Chromium OS</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium sẽ khởi động lại sau 1 giây}other{Chromium sẽ khởi động lại sau # giây}}</translation>
 <translation id="6475912303565314141">Tiện ích này cũng điều khiển trang nào được hiển thị khi bạn khởi động Chromium.</translation>
-<translation id="6485906693002546646">Bạn đang sử dụng <ph name="PROFILE_EMAIL" /> để đồng bộ hóa nội dung Chromium của mình. Để cập nhật tùy chọn đồng bộ hóa hoặc sử dụng Chromium mà không cần tài khoản Google, hãy truy cập <ph name="SETTINGS_LINK" />.</translation>
 <translation id="6510925080656968729">Gỡ cài đặt Chromium</translation>
 <translation id="6570579332384693436">Để sửa lỗi chính tả, Chromium sẽ gửi cho Google nội dung bạn nhập vào các trường văn bản</translation>
 <translation id="6598877126913850652">Đi tới cài đặt thông báo của Chromium</translation>
@@ -162,7 +148,6 @@
 Một số tính năng có thể không khả dụng. Hãy chỉ định thư mục cấu hình khác hoặc sử dụng phiên bản Chromium mới hơn.</translation>
 <translation id="6734080038664603509">Cập nhật &amp;Chromium</translation>
 <translation id="6734291798041940871">Chromium đã được cài đặt cho tất cả người dùng trên máy tính của bạn.</translation>
-<translation id="6810143991807788455">Giúp cải thiện Chromium bằng cách báo cáo cài đặt hiện tại</translation>
 <translation id="6847869444787758381">Chromium cho bạn biết mật khẩu của bạn có bị đánh cắp hay không</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (đã sao chép vào Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">Tệp tùy chọn của bạn bị hỏng hoặc không hợp lệ. 
 
 Chromium không thể khôi phục cài đặt của bạn.</translation>
-<translation id="7331920710658926971">Cài đặt Chromium trên điện thoại của bạn. Chúng tôi sẽ gửi SMS tới điện thoại của bạn.</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">Cửa sổ mới</translation>
 <translation id="734373864078049451">Web, dấu trang và các nội dung khác của bạn trên Chromium đều có ở đây.</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">Ẩn trong menu Chromium</translation>
 <translation id="8013436988911883588">Sau khi Chromium có quyền truy cập, các trang web sẽ có thể yêu cầu bạn cấp quyền truy cập.</translation>
 <translation id="81770708095080097">Tệp này nguy hiểm, do đó Chromium đã chặn tệp.</translation>
-<translation id="8222496066431494154">Cài đặt Chromium trên điện thoại của bạn. Chúng tôi sẽ gửi SMS tới số điện thoại khôi phục tài khoản của bạn: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">Chromium sẽ cố gắng mô tả cho bạn những hình ảnh không có nội dung mô tả hữu ích. Để tạo nội dung mô tả, các hình ảnh sẽ được gửi đến Google. Bạn có thể tắt dịch vụ này trong phần cài đặt bất kỳ lúc nào.</translation>
-<translation id="8269379391216269538">Giúp cải thiện Chromium</translation>
 <translation id="8290862415967981663">Tệp này nguy hiểm, do đó Chromium đã chặn tệp.</translation>
 <translation id="8330519371938183845">Đăng nhập để đồng bộ hóa và cá nhân hóa Chromium trên các thiết bị của bạn</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> trước đó đã sử dụng Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{Khởi động lại Chromium trong vòng một ngày}other{Khởi động lại Chromium trong vòng # ngày}}</translation>
 <translation id="8453117565092476964">Tệp lưu trữ trình cài đặt bị hỏng hoặc không hợp lệ. Hãy tải xuống Chromium lại lần nữa.</translation>
 <translation id="8493179195440786826">Chromium đã lỗi thời</translation>
-<translation id="85843667276690461">Nhận trợ giúp về cách sử dụng Chromium</translation>
 <translation id="8586442755830160949">Bản quyền <ph name="YEAR" /> Tác giả Chromium. Mọi quyền được bảo lưu.</translation>
 <translation id="8619360774459241877">Đang khởi động Chromium...</translation>
 <translation id="8621669128220841554">Không thể cài đặt do xảy ra lỗi không xác định. Hãy tải xuống Chromium lại lần nữa.</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium đang cố gắng hiển thị mật khẩu. Nhập mật khẩu Windows của bạn để cho phép thực hiện việc này.</translation>
 <translation id="8941642502866065432">Không thể cập nhật Chromium</translation>
 <translation id="8974095189086268230">Chromium OS trở nên khả thi là nhờ các <ph name="BEGIN_LINK_CROS_OSS" />phần mềm nguồn mở<ph name="END_LINK_CROS_OSS" /> bổ sung.</translation>
-<translation id="8985587603644336029">Ai đó trước đây đã đăng nhập vào Chromium trên máy tính này là <ph name="ACCOUNT_EMAIL_LAST" />. Nếu đó không phải là tài khoản của bạn, hãy tạo một người dùng Chromium mới để giữ thông tin của bạn riêng biệt.
-
-Đăng nhập bằng mọi cách sẽ kết hợp thông tin Chromium như dấu trang, lịch sử và các cài đặt khác vào <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="9019929317751753759">Để làm cho Chromium an toàn hơn, chúng tôi đã vô hiệu hóa tiện ích không được liệt kê trong <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> và có thể đã được thêm mà bạn không biết.</translation>
 <translation id="9022552996538154597">Đăng nhập vào Chromium</translation>
-<translation id="9025992965467895364">Chromium đã tạm dừng trang này vì trang dùng quá nhiều bộ nhớ.</translation>
-<translation id="9036189287518468038">Trình chạy ứng dụng Chromium</translation>
 <translation id="9089354809943900324">Chromium đã lỗi thời</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium sẽ khởi động lại sau một giờ}other{Chromium sẽ khởi động lại sau # giờ}}</translation>
 <translation id="91086099826398415">Mở liên kết trong tab mới của Chromium</translation>
 <translation id="911206726377975832">Bạn cũng muốn xóa dữ liệu duyệt web của mình?</translation>
 <translation id="9158494823179993217">Quản trị viên hệ thống của bạn đã định cấu hình Chromium để mở một trình duyệt thay thế khi truy cập vào <ph name="TARGET_URL_HOSTNAME" />.</translation>
-<translation id="918373042641772655">Ngắt kết nối <ph name="USERNAME" /> sẽ xóa lịch sử, dấu trang, cài đặt và các dữ liệu Chromium khác của bạn trên thiết bị này. Dữ liệu được lưu trữ trong tài khoản Google của bạn sẽ không bị xóa và có thể được quản lý trên <ph name="GOOGLE_DASHBOARD_LINK" />Trang tổng quan của Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">Bạn hiện đã đăng nhập vào Chromium</translation>
 <translation id="93478295209880648">Chromium có thể không hoạt động chính xác do không được hỗ trợ trên Windows XP hoặc Windows Vista nữa</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> yêu cầu bạn đọc và chấp nhận Điều khoản dịch vụ sau đây trước khi sử dụng thiết bị này. Những điều khoản này không mở rộng, sửa đổi hoặc giới hạn Điều khoản Chromium OS.</translation>
 <translation id="985602178874221306">Tác giả Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_zh-CN.xtb b/chrome/app/resources/chromium_strings_zh-CN.xtb
index dcf12e3e..28cb34d3 100644
--- a/chrome/app/resources/chromium_strings_zh-CN.xtb
+++ b/chrome/app/resources/chromium_strings_zh-CN.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium 想导出您的密码。请输入您的 Windows 密码以允许此操作。</translation>
 <translation id="1115445892567829615">Chromium无法同步您的数据。请更新您的同步密码。</translation>
 <translation id="113122355610423240">Chromium 是您的默认浏览器</translation>
-<translation id="1170115874949214249">请在您的手机上安装 Chromium。我们会将一条短信发送到您帐号的辅助电话号码。</translation>
-<translation id="1174473354587728743">与其他人共用计算机?现在,您可以随心所欲地设置Chromium。</translation>
 <translation id="1185134272377778587">关于 Chromium</translation>
-<translation id="1298199220304005244">获取 Chromium 操作系统使用帮助</translation>
 <translation id="1396446129537741364">Chromium 正尝试显示密码。</translation>
 <translation id="1414495520565016063">您已登录 Chromium!</translation>
 <translation id="151962892725702025">由于您的网域停用了同步功能,Chromium操作系统无法同步您的数据。</translation>
 <translation id="1524282610922162960">共享 Chromium 标签页</translation>
-<translation id="1668054258064581266">从Chromium移除您的帐号后,您可能需要重新加载已打开的标签页才能使其正常显示。</translation>
-<translation id="1688750314291223739">您可以设置同步以将个性化浏览器功能保存到网上,以便在任意计算机上的 Chromium 中使用这些功能。</translation>
 <translation id="1708666629004767631">Chromium 现已推出更安全的新版本。</translation>
 <translation id="1766096484055239003">您的管理员要求您重新启动 Chromium 以应用一项更新</translation>
 <translation id="1774152462503052664">让 Chromium 在后台运行</translation>
 <translation id="1779356040007214683">为了提高 Chromium 的安全性,系统停用了一些未列在 <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />中、可能是在您不知情的情况下添加的扩展程序。</translation>
 <translation id="1808667845054772817">重新安装Chromium</translation>
-<translation id="1869480248812203386">您可以选择自动向 Google 报告可能出现的安全事件详情,以帮助我们提高 Chromium 的安全性和易用性。</translation>
 <translation id="1881322772814446296">您目前登录的帐号是一个托管帐号,该帐号的管理员将能够控制您的 Chromium 个人资料。您的 Chromium 数据(例如您的应用、书签、历史记录、密码和其他设置)将永远与 <ph name="USER_NAME" /> 相关联。您可以通过 Google 帐号信息中心删除这些数据,但无法将这些数据与其他帐号相关联。您可以选择创建新的个人资料来单独存储您现有的 Chromium 数据。<ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">关闭此功能后,您无需登录 Chromium 即可登录 Gmail 等 Google 网站</translation>
 <translation id="1929939181775079593">Chromium 未响应。要立即重新启动吗?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">您的管理员要求您重新启动 Chromium 以应用此项更新</translation>
 <translation id="2119636228670142020">关于 Chromium 操作系统(&amp;C)</translation>
 <translation id="2241627712206172106">如果您与亲朋好友共用计算机,他们将能够使用单独的帐号进行浏览,并可随心所欲地设置Chromium。</translation>
-<translation id="2265088490657775772">在 iPhone 上下载 Chromium</translation>
 <translation id="2347108572062610441">此扩展程序更改了 Chromium 启动后系统显示的页面。</translation>
 <translation id="2396765026452590966">“<ph name="EXTENSION_NAME" />”扩展程序更改了 Chromium 启动后系统显示的页面。</translation>
 <translation id="2483889755041906834">在 Chromium 中</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">若要更新,Chromium 需要在此计算机上停止运行。这可能会导致登录此计算机的其他用户丢失未保存的更改。</translation>
 <translation id="2847479871509788944">从Chromium中移除…</translation>
 <translation id="2886012850691518054">可选:将使用情况统计信息和崩溃报告自动发送给 Google,帮助我们完善 Chromium。</translation>
-<translation id="2898082584336937987">请在您的手机上安装 Chromium。我们会将一条短信发送到您的手机:<ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">关于 Chromium(&amp;C)</translation>
 <translation id="2977470724722393594">Chromium 已是最新版本</translation>
 <translation id="3032787606318309379">正在添加到 Chromium...</translation>
-<translation id="3046695367536568084">您需要先登录Chromium,再使用各项应用。这样,Chromium就可以在各个设备上同步您的应用、书签、历史记录、密码和其他设置。</translation>
 <translation id="3068515742935458733">将崩溃报告和<ph name="UMA_LINK" />发送给Google,帮助我们完善Chromium。</translation>
 <translation id="3103660991484857065">安装程序解压缩归档失败。请重新下载 Chromium。</translation>
 <translation id="3130323860337406239">Chromium 正在使用您的麦克风。</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">在 Chromium 无痕式窗口中打开链接(&amp;G)</translation>
 <translation id="3190315855212034486">哎呀!Chromium 崩溃了。要立即重新启动吗?</translation>
 <translation id="3229526316128325841">Chromium 想导出您的密码。</translation>
-<translation id="3256316712990552818">已复制到 Chromium</translation>
 <translation id="3258596308407688501">Chromium 无法读写其数据目录:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">最新版本不仅在安全性方面做出了重要改进,还提供了多项新功能。</translation>
 <translation id="421369550622382712">在这里,您可以找到适用于 Chromium 的精彩应用、游戏、扩展程序和主题背景。</translation>
 <translation id="4216212958613226427">使用此语言显示 Chromium 界面</translation>
-<translation id="4222580632002216401">您现在已登录 Chromium!不过,管理员已停用同步功能。</translation>
 <translation id="4230135487732243613">是否将您的 Chromium 数据与此帐号相关联?</translation>
 <translation id="4271805377592243930">获取有关 Chromium 的帮助</translation>
 <translation id="4285930937574705105">未知错误导致安装失败。如果 Chromium 正在运行,请将其关闭,然后重试。</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium处于后台运行模式。</translation>
 <translation id="4987820182225656817">访客使用Chromium不会留下任何痕迹。</translation>
 <translation id="4994636714258228724">将您自己添加到Chromium</translation>
-<translation id="5181952534059945058">此网页占用的内存过多,因此 Chromium 移除了部分内容。</translation>
 <translation id="5277894862589591112">要想应用您的更改,请重新启动 Chromium</translation>
 <translation id="5358375970380395591">您目前登录的帐号是一个托管帐号,该帐号的管理员将能够控制您的 Chromium 个人资料。您的 Chromium 数据(例如您的应用、书签、历史记录、密码和其他设置)将永远与 <ph name="USER_NAME" /> 相关联。您可以通过 Google 帐号信息中心删除这些数据,但无法将这些数据与其他帐号相关联。<ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">正在更新 Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">重新启动</translation>
 <translation id="5987687638152509985">更新 Chromium 以开始同步</translation>
 <translation id="6013050204643758987">Chromium 操作系统是借助了其他<ph name="BEGIN_LINK_CROS_OSS" />开放源代码软件<ph name="END_LINK_CROS_OSS" />才得以问世,<ph name="BEGIN_LINK_LINUX_OSS" />Linux(测试版)<ph name="END_LINK_LINUX_OSS" />也是如此。</translation>
-<translation id="6040143037577758943">关闭</translation>
 <translation id="6055895534982063517">Chromium 现已推出速度更快的新版本。</translation>
 <translation id="6063093106622310249">在 Chromium 中打开(&amp;O)</translation>
 <translation id="6072279588547424923">“<ph name="EXTENSION_NAME" />”已添加到 Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium 操作系统</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium 将在 1 秒后重新启动}other{Chromium 将在 # 秒后重新启动}}</translation>
 <translation id="6475912303565314141">它还能够控制Chromium启动后显示的页面。</translation>
-<translation id="6485906693002546646">您在使用<ph name="PROFILE_EMAIL" />同步自己的Chromium资料和数据。要更新您的同步偏好设置或在不登录Google帐号的情况下使用Chromium,请前往<ph name="SETTINGS_LINK" />部分。</translation>
 <translation id="6510925080656968729">卸载 Chromium</translation>
 <translation id="6570579332384693436">为了修正拼写错误,Chromium 会将您在文本字段中输入的文字发送给 Google</translation>
 <translation id="6598877126913850652">转到 Chromium 通知设置部分</translation>
@@ -162,7 +148,6 @@
 某些功能可能会无法使用。请指定其他个人资料目录或使用更高版本的 Chromium。</translation>
 <translation id="6734080038664603509">更新 Chromium(&amp;C)</translation>
 <translation id="6734291798041940871">已为您计算机上的所有用户都安装 Chromium。</translation>
-<translation id="6810143991807788455">报告当前设置,帮助我们完善 Chromium</translation>
 <translation id="6847869444787758381">Chromium 会让您知道您的密码是否曾被泄露</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay(已复制到 Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">您的偏好设置文件已损坏或无效。
 
 Chromium 无法恢复您的设置。</translation>
-<translation id="7331920710658926971">请在您的手机上安装 Chromium。我们会将一条短信发送到您的手机。</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">打开新的窗口</translation>
 <translation id="734373864078049451">您的上网记录、书签和其他Chromium内容都保存在此处。</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">在 Chromium 菜单中隐藏</translation>
 <translation id="8013436988911883588">一旦 Chromium 获得了使用权限,网站便能请求您向其授予使用权限。</translation>
 <translation id="81770708095080097">此文件存在危险,因此 Chromium 已将其拦截。</translation>
-<translation id="8222496066431494154">请在您的手机上安装 Chromium。我们会将一条短信发送到您帐号的辅助电话号码:<ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">如果图片缺少有用的说明,则 Chromium 会尝试为您提供一条说明。为便于创建说明,系统会将图片发送给 Google。您可以随时在“设置”中关闭此功能。</translation>
-<translation id="8269379391216269538">帮助我们改进Chromium</translation>
 <translation id="8290862415967981663">此文件可能存在危险,因此 Chromium 已将其拦截。</translation>
 <translation id="8330519371938183845">登录即可在您的所有设备上同步并个性化设置 Chromium</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> 之前使用的是 Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{请于 1 天内重新启动 Chromium}other{请于 # 天内重新启动 Chromium}}</translation>
 <translation id="8453117565092476964">安装程序归档损坏或无效。请重新下载 Chromium。</translation>
 <translation id="8493179195440786826">Chromium版本太旧</translation>
-<translation id="85843667276690461">获取 Chromium 使用帮助</translation>
 <translation id="8586442755830160949">版权所有<ph name="YEAR" /> The Chromium Authors。保留所有权利。</translation>
 <translation id="8619360774459241877">正在启动 Chromium…</translation>
 <translation id="8621669128220841554">未指定的错误导致安装失败。请重新下载 Chromium。</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium正在尝试显示密码,请输入您的Windows密码以允许此操作。</translation>
 <translation id="8941642502866065432">无法更新 Chromium</translation>
 <translation id="8974095189086268230">Chromium 操作系统的问世还有其他<ph name="BEGIN_LINK_CROS_OSS" />开放源代码软件<ph name="END_LINK_CROS_OSS" />的一份功能。</translation>
-<translation id="8985587603644336029">之前有人在此计算机上以 <ph name="ACCOUNT_EMAIL_LAST" /> 帐号登录 Chromium。如果这不是您的帐号,请新建一个 Chromium 用户来单独保存您的信息。
-
-如果您仍然登录,Chromium 信息(例如书签、历史记录和其他设置)将合并到 <ph name="ACCOUNT_EMAIL_NEW" />。</translation>
 <translation id="9019929317751753759">为了提高 Chromium 的安全性,我们停用了以下扩展程序(该扩展程序未列在<ph name="IDS_EXTENSION_WEB_STORE_TITLE" />中,并且可能是在您不知情的情况下添加的)。</translation>
 <translation id="9022552996538154597">登录 Chromium</translation>
-<translation id="9025992965467895364">此网页占用的内存过多,因此 Chromium 已将其暂停。</translation>
-<translation id="9036189287518468038">Chromium 应用启动器</translation>
 <translation id="9089354809943900324">Chromium版本太旧</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium 将在 1 小时后重新启动}other{Chromium 将在 # 小时后重新启动}}</translation>
 <translation id="91086099826398415">在 Chromium 新标签页中打开链接(&amp;T)</translation>
 <translation id="911206726377975832">同时删除您的浏览数据吗?</translation>
 <translation id="9158494823179993217">您的系统管理员已将 Chromium 配置为使用备用浏览器访问 <ph name="TARGET_URL_HOSTNAME" />。</translation>
-<translation id="918373042641772655">取消与<ph name="USERNAME" />的关联将会清除您的历史记录、书签、设置以及存储在此设备上的其他Chromium数据。您的Google帐号中存储的数据将不会被清除,并且您可以通过<ph name="GOOGLE_DASHBOARD_LINK" />Google信息中心<ph name="END_GOOGLE_DASHBOARD_LINK" />管理这些数据。</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">现在您已登录到Chromium</translation>
 <translation id="93478295209880648">Chromium 可能无法正常运行,因为它不再支持 Windows XP 和 Windows Vista</translation>
 <translation id="95514773681268843"><ph name="DOMAIN" /> 要求您必须先阅读并接受以下服务条款,才能使用此设备。这些条款不会扩大、修改或限制 Chromium 操作系统条款。</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/chromium_strings_zh-TW.xtb b/chrome/app/resources/chromium_strings_zh-TW.xtb
index 9893450..29af428 100644
--- a/chrome/app/resources/chromium_strings_zh-TW.xtb
+++ b/chrome/app/resources/chromium_strings_zh-TW.xtb
@@ -5,22 +5,16 @@
 <translation id="1104942323762546749">Chromium 要求匯出你的密碼。如果允許,請輸入你的 Windows 密碼。</translation>
 <translation id="1115445892567829615">Chromium 無法同步處理你的資料,請更新你的同步通關密語。</translation>
 <translation id="113122355610423240">Chromium 是你的預設瀏覽器</translation>
-<translation id="1170115874949214249">在手機上安裝 Chromium。我們會傳送簡訊到你的帳戶備援電話號碼。</translation>
-<translation id="1174473354587728743">如果你與他人共用電腦,現在可以依自己的喜好和習慣設定 Chromium。</translation>
 <translation id="1185134272377778587">關於 Chromium</translation>
-<translation id="1298199220304005244">前往 Chromium 作業系統說明頁面</translation>
 <translation id="1396446129537741364">Chromium 即將顯示密碼。</translation>
 <translation id="1414495520565016063">你已登入 Chromium!</translation>
 <translation id="151962892725702025">你的網域無法使用「同步功能」,因此 Chromium 作業系統無法同步處理你的資料。</translation>
 <translation id="1524282610922162960">分享 Chromium 分頁</translation>
-<translation id="1668054258064581266">將你的帳戶從 Chromium 移除後,可能需要重新載入開啟的分頁,這項操作才會生效。</translation>
-<translation id="1688750314291223739">設定同步處理功能,即可在網路上儲存你的個人化瀏覽器功能,並且透過任何電腦從 Chromium 使用這些功能。</translation>
 <translation id="1708666629004767631">新版 Chromium 現已推出,安全更上一層樓。</translation>
 <translation id="1766096484055239003">你的管理員要求你重新啟動 Chromium,以套用更新</translation>
 <translation id="1774152462503052664">讓 Chromium 在背景執行</translation>
 <translation id="1779356040007214683">為了讓 Chromium 的安全性更有保障,我們已將部分未列在 <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> 中的擴充功能停用,它們可能在你不知情的情況下加入瀏覽器。</translation>
 <translation id="1808667845054772817">重新安裝 Chromium</translation>
-<translation id="1869480248812203386">你可以自動將疑似安全性事件的詳細資料傳送給 Google,協助我們讓 Chromium 變得更安全、更好用。</translation>
 <translation id="1881322772814446296">你已登入管理化環境下的帳戶,並將管理控制權授予你的 Chromium 設定檔。你的 Chromium 資料 (例如應用程式、書籤、記錄、密碼和其他設定) 均將永久與 <ph name="USER_NAME" /> 建立關聯。你可以透過 Google 帳戶資訊主頁刪除這些資料,但你無法將這些資料與其他帳戶建立關聯。如要另行保留現有的 Chromium 資料,你可以選擇建立新的設定檔。<ph name="LEARN_MORE" /></translation>
 <translation id="1911763535808217981">關閉這項功能後,你可以單獨登入 Gmail 等這類 Google 網站,不必同時登入 Chromium</translation>
 <translation id="1929939181775079593">Chromium 沒有回應,要立即重新啟動嗎?</translation>
@@ -29,7 +23,6 @@
 <translation id="2117378023188580026">你的管理員請你重新啟動 Chromium,以套用這項更新</translation>
 <translation id="2119636228670142020">關於 Chromium 作業系統(&amp;C)</translation>
 <translation id="2241627712206172106">如果你與親朋好友共用電腦,人人皆可享有獨立的瀏覽空間,依照自己的偏好設定 Chromium。</translation>
-<translation id="2265088490657775772">在 iPhone 上使用 Chromium</translation>
 <translation id="2347108572062610441">這個擴充功能已變更 Chromium 啟動時所顯示的網頁。</translation>
 <translation id="2396765026452590966">擴充功能「<ph name="EXTENSION_NAME" />」已變更 Chromium 啟動時所顯示的網頁。</translation>
 <translation id="2483889755041906834">在 Chromium 中</translation>
@@ -48,11 +41,9 @@
 <translation id="2838154144102149890">這台電腦上的 Chromium 必須停止執行,才能進行更新。這可能會導致其他登入這台電腦的使用者遺失尚未儲存的變更。</translation>
 <translation id="2847479871509788944">從 Chromium 中移除...</translation>
 <translation id="2886012850691518054">選用:將使用統計資料及當機報告自動傳送給 Google,助我們一臂之力,讓 Chromium 更臻完美。</translation>
-<translation id="2898082584336937987">在手機上安裝 Chromium。我們會傳送簡訊到你的手機:<ph name="PHONE_NUMBER" /></translation>
 <translation id="2910007522516064972">關於 Chromium(&amp;C)</translation>
 <translation id="2977470724722393594">Chromium 目前是最新版本</translation>
 <translation id="3032787606318309379">正在新增至 Chromium...</translation>
-<translation id="3046695367536568084">你必須登入 Chromium 才能使用應用程式。在登入狀態下,Chromium 可同步處理你在多個裝置上的應用程式、書籤、記錄、密碼和其他設定。</translation>
 <translation id="3068515742935458733">將當機報告和<ph name="UMA_LINK" />傳送給 Google,助我們一臂之力,讓 Chromium 更臻完美</translation>
 <translation id="3103660991484857065">安裝程式無法解壓縮封存檔案,請重新下載 Chromium。</translation>
 <translation id="3130323860337406239">Chromium 正在使用你的麥克風。</translation>
@@ -60,7 +51,6 @@
 <translation id="3179665906251668410">在 Chromium 無痕式視窗中開啟連結(&amp;G)</translation>
 <translation id="3190315855212034486">Chromium 當機了,要立即重新啟動嗎?</translation>
 <translation id="3229526316128325841">Chromium 要求匯出你的密碼。</translation>
-<translation id="3256316712990552818">已複製到 Chromium</translation>
 <translation id="3258596308407688501">Chromium 無法讀取及寫入資料目錄:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -84,7 +74,6 @@
 <translation id="4050175100176540509">最新版本包含重要的安全性改善與新功能。</translation>
 <translation id="421369550622382712">探索 Chromium 專用的優質應用程式、遊戲、擴充功能和主題。</translation>
 <translation id="4216212958613226427">這是 Chromium UI 的顯示語言</translation>
-<translation id="4222580632002216401">你現在已登入 Chromium!但管理員已關閉同步功能。</translation>
 <translation id="4230135487732243613">要將你的 Chromium 資料連結至這個帳戶嗎?</translation>
 <translation id="4271805377592243930">前往 Chromium 說明頁面</translation>
 <translation id="4285930937574705105">不明錯誤導致安裝失敗。如果目前 Chromium 正在執行,請關閉 Chromium,然後再試一次。</translation>
@@ -107,7 +96,6 @@
 <translation id="4943838377383847465">Chromium 正在背景模式中執行。</translation>
 <translation id="4987820182225656817">以訪客身分使用 Chromium 不會留下任何記錄。</translation>
 <translation id="4994636714258228724">新增為 Chromium 使用者</translation>
-<translation id="5181952534059945058">這個網頁佔用了太多記憶體空間,因此 Chromium 移除了部分內容。</translation>
 <translation id="5277894862589591112">如要套用變更,請重新啟動 Chromium</translation>
 <translation id="5358375970380395591">你已登入管理化環境下的帳戶,並將管理控制權授予你的 Chromium 設定檔。你的 Chromium 資料 (例如應用程式、書籤、記錄、密碼和其他設定) 均將永久與 <ph name="USER_NAME" /> 建立關聯。你可以透過 Google 帳戶資訊主頁刪除這些資料,但你無法將這些資料與其他帳戶建立關聯。<ph name="LEARN_MORE" /></translation>
 <translation id="5386450000063123300">正在更新 Chromium (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -130,7 +118,6 @@
 <translation id="5895138241574237353">重新啟動</translation>
 <translation id="5987687638152509985">如要開始同步處理,請更新 Chromium</translation>
 <translation id="6013050204643758987">Chromium 作業系統有賴其他<ph name="BEGIN_LINK_CROS_OSS" />開放原始碼軟體<ph name="END_LINK_CROS_OSS" />才得以問世,<ph name="BEGIN_LINK_LINUX_OSS" />Linux (測試版)<ph name="END_LINK_LINUX_OSS" /> 也是如此。</translation>
-<translation id="6040143037577758943">關閉</translation>
 <translation id="6055895534982063517">新版 Chromium 現已推出,速度更勝以往。</translation>
 <translation id="6063093106622310249">在 Chromium 中開啟(&amp;O)</translation>
 <translation id="6072279588547424923">已將「<ph name="EXTENSION_NAME" />」加到 Chromium</translation>
@@ -152,7 +139,6 @@
 <translation id="6434250628340475518">Chromium 作業系統</translation>
 <translation id="6457450909262716557">{SECONDS,plural, =1{Chromium 將於 1 秒後重新啟動}other{Chromium 將於 # 秒後重新啟動}}</translation>
 <translation id="6475912303565314141">這個擴充功能也會控管你啟動 Chromium 時所顯示的網頁。</translation>
-<translation id="6485906693002546646">你正使用 <ph name="PROFILE_EMAIL" /> 帳戶同步處理你的 Chromium 資料。如要更新你的偏好設定,或是在未登入 Google 帳戶的情況下使用 Chromium,請前往 [<ph name="SETTINGS_LINK" />]。</translation>
 <translation id="6510925080656968729">解除安裝 Chromium</translation>
 <translation id="6570579332384693436">為修正拼字錯誤,Chromium 會將你在文字欄位輸入的文字傳送給 Google</translation>
 <translation id="6598877126913850652">前往 Chromium 通知設定</translation>
@@ -162,7 +148,6 @@
 這表示你可能無法使用部分功能。請指定另一個設定檔目錄,或使用較新版本的 Chromium。</translation>
 <translation id="6734080038664603509">更新 Chromium(&amp;C)</translation>
 <translation id="6734291798041940871">電腦上的所有使用者都已經安裝 Chromium 了。</translation>
-<translation id="6810143991807788455">只要回報目前的設定,就能助我們一臂之力,讓 Chromium 更臻完美</translation>
 <translation id="6847869444787758381">Chromium 會通知你密碼是否曾遭外洩</translation>
 <translation id="6857782730669500492">Chromium - <ph name="PAGE_TITLE" /></translation>
 <translation id="6863361426438995919">Google Pay (已複製到 Chromium)</translation>
@@ -181,7 +166,6 @@
 <translation id="7318036098707714271">你的偏好設定檔案已毀損或無效。
 
 Chromium 無法復原你的設定。</translation>
-<translation id="7331920710658926971">在手機上安裝 Chromium。我們會傳送簡訊到你的手機。</translation>
 <translation id="7337881442233988129">Chromium</translation>
 <translation id="7339898014177206373">新視窗</translation>
 <translation id="734373864078049451">你瀏覽的網頁、書籤和其他 Chromium 設定都在這裡。</translation>
@@ -213,16 +197,13 @@
 <translation id="7979877361127045932">在 Chromium 選單中隱藏</translation>
 <translation id="8013436988911883588">Chromium 取得存取權後,網站將可要求你授予存取權。</translation>
 <translation id="81770708095080097">這個檔案並不安全,因此遭到 Chromium 封鎖。</translation>
-<translation id="8222496066431494154">在手機上安裝 Chromium。我們會傳送簡訊到你的帳戶備援電話號碼:<ph name="PHONE_NUMBER" /></translation>
 <translation id="8248265253516264921">如果圖片缺少有用的說明,Chromium 會嘗試為你提供說明。系統會將圖片傳送給 Google,以便產生說明。你隨時可以在設定中關閉這項功能。</translation>
-<translation id="8269379391216269538">協助改善 Chromium</translation>
 <translation id="8290862415967981663">這個檔案可能不安全,因此遭到 Chromium 封鎖。</translation>
 <translation id="8330519371938183845">登入即可進行同步處理,讓你在所有裝置上享有個人化的 Chromium 體驗</translation>
 <translation id="8340674089072921962"><ph name="USER_EMAIL_ADDRESS" /> 先前使用的是 Chromium</translation>
 <translation id="8417404458978023919">{0,plural, =1{請在 1 天內重新啟動 Chromium}other{請在 # 天內重新啟動 Chromium}}</translation>
 <translation id="8453117565092476964">安裝程式封存檔案已毀損或無效,請重新下載 Chromium。</translation>
 <translation id="8493179195440786826">Chromium 版本過舊</translation>
-<translation id="85843667276690461">前往 Chromium 說明頁面</translation>
 <translation id="8586442755830160949">Copyright <ph name="YEAR" /> The Chromium Authors. 版權所有。</translation>
 <translation id="8619360774459241877">正在啟動 Chromium…</translation>
 <translation id="8621669128220841554">不明錯誤導致安裝失敗,請重新下載 Chromium。</translation>
@@ -240,21 +221,14 @@
 <translation id="8907580949721785412">Chromium 現在會嘗試顯示密碼。如果你同意的話,請輸入你的 Windows 密碼。</translation>
 <translation id="8941642502866065432">無法更新 Chromium</translation>
 <translation id="8974095189086268230">Chromium 作業系統的開發有賴其他<ph name="BEGIN_LINK_CROS_OSS" />開放原始碼軟體<ph name="END_LINK_CROS_OSS" />。</translation>
-<translation id="8985587603644336029">先前已有其他使用者使用 <ph name="ACCOUNT_EMAIL_LAST" /> 在這台電腦上登入 Chromium。如果這不是你的帳戶,請建立新的 Chromium 使用者以便個別保存你的資訊。
-
-如果你仍要繼續登入帳戶,各項 Chromium 資訊 (例如書籤、記錄和其他設定) 則會合併至 <ph name="ACCOUNT_EMAIL_NEW" />。</translation>
 <translation id="9019929317751753759">為了讓 Chromium 的安全性更有保障,我們停用了以下這個未列在「<ph name="IDS_EXTENSION_WEB_STORE_TITLE" />」中的擴充功能 (它可能是在您不知情的情況下加入瀏覽器)。</translation>
 <translation id="9022552996538154597">登入 Chromium</translation>
-<translation id="9025992965467895364">這個網頁使用了過多記憶體,因此遭到 Chromium 暫停。</translation>
-<translation id="9036189287518468038">Chromium 應用程式啟動器</translation>
 <translation id="9089354809943900324">Chromium 版本過舊</translation>
 <translation id="9093206154853821181">{0,plural, =1{Chromium 將在 1 小時後重新啟動}other{Chromium 將在 # 小時後重新啟動}}</translation>
 <translation id="91086099826398415">在新的 Chromium 分頁中開啟連結(&amp;T)</translation>
 <translation id="911206726377975832">你要一併刪除瀏覽資料嗎?</translation>
 <translation id="9158494823179993217">系統管理員已設定 Chromium 開啟替代瀏覽器來存取 <ph name="TARGET_URL_HOSTNAME" />。</translation>
-<translation id="918373042641772655">解除與 <ph name="USERNAME" /> 的連結將會清除此裝置上已儲存的歷史記錄、書籤、設定和其他 Chromium 資料。不過,這不會清除 Google 帳戶中儲存的資料,你可以在 <ph name="GOOGLE_DASHBOARD_LINK" />Google 資訊主頁<ph name="END_GOOGLE_DASHBOARD_LINK" />管理這些資料。</translation>
 <translation id="9190841055450128916">Chromium (mDNS-In)</translation>
-<translation id="9197815481970649201">你現在已登入 Chromium</translation>
 <translation id="93478295209880648">Chromium 已不適用於 Windows XP 或 Windows Vista,因此可能無法正常運作</translation>
 <translation id="95514773681268843">在使用這個裝置前,<ph name="DOMAIN" /> 要求你詳讀並接受下列《服務條款》。這些條款不會擴展、修改或限制《Chromium 作業系統條款》。</translation>
 <translation id="985602178874221306">The Chromium Authors</translation>
diff --git a/chrome/app/resources/generated_resources_am.xtb b/chrome/app/resources/generated_resources_am.xtb
index 70342d2..6a8db68 100644
--- a/chrome/app/resources/generated_resources_am.xtb
+++ b/chrome/app/resources/generated_resources_am.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">በሁሉም ኮምፒውተሮችዎ ላይ ቅጥያዎችዎን ለማግኘት <ph name="SIGN_IN_LINK" />።</translation>
 <translation id="1470967055429794975">ይህ ፒኑን ጨምሮ በደህንነቱ ቁልፉ ላይ ያለው ሁሉምን ውሂብ ይደመስሳል</translation>
 <translation id="1475502736924165259">ከሌሎች ማንኛቸውም መደቦች ጋር የማይገጣጠሙ የእውቅና ማረጋገጫዎች በፋይል ላይ አለዎት</translation>
+<translation id="1476088332184200792">ወደ መሣሪያዎ ይቅዱ</translation>
 <translation id="1476607407192946488">የ&amp;ቋንቋ ቅንብሮች...</translation>
 <translation id="1478340334823509079">ዝርዝሮች፦ <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">መጫን አልነቃም</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">የስርዓት መገናኛ ተጠቅመው ያትሙ... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">ከመላክ በፊት ጠይቅ (የሚመከር)</translation>
 <translation id="2384436799579181135">አንድ ስህተት ተከስቷል። እባክዎ የእርስዎን አታሚ ያረጋግጡና እንደገና ይሞክሩ።</translation>
-<translation id="2386926718981642523">«Ok Google» ባሉ ማንኛውም ጊዜ ረዳትዎን ይድረሱ</translation>
 <translation id="2387458720915042159">የተኪ ግንኙነት አይነት</translation>
 <translation id="2391419135980381625">መደበኛ ቅርጸ-ቁምፊ</translation>
 <translation id="2392369802118427583">አግብር</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">ዝቅተኛ</translation>
 <translation id="2942560570858569904">በመጠበቅ ላይ...</translation>
 <translation id="2942581856830209953">ይህን ገጽ ብጁ ያድርጉ</translation>
+<translation id="294308617863380348">የሶስተኛ ወገን ኩኪዎችም ጨምሮ</translation>
 <translation id="2944060181911631861">የአጠቃቀም እና የምርመራ ውሂብ ይላኩ። የምርመራ፣ የመሣሪያ እና የመተግበሪያ አጠቃቀም ውሂብ በራስ-ሰር ወደ በራስ-ሰር ወደ Google በመላክ የAndroid ተሞክሮዎ እንዲሻሻል ያግዙ። ይህ የስርዓት እና የመተግበሪያ እርጋታን እና ሌሎች ማሻሻያዎችን ያግዛል። አንዳንድ ውሑድ ውሂብ እንዲሁም የGoogle መተግበሪያዎችን እና እንደ የAndroid ገንቢዎች ያሉ አጋሮችን ያግዛሉ። የእርስዎ የተጨማሪ ድር እና መተግበሪያ እንቅስቃሴ ቅንብር በርቶ ከሆነ ይህ ውሂብ በGoogle መለያዎ ላይ ሊቀመጥ ይችላል። <ph name="BEGIN_LINK1" />የበለጠ ለመረዳት<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">ግንኑነት ያክሉ</translation>
 <translation id="2948300991547862301">ወደ <ph name="PAGE_TITLE" /> ይሂዱ</translation>
@@ -1354,7 +1355,6 @@
 <translation id="2961695502793809356">ወደ ፊት ለመሄድ ጠቅ ያድርጉ፣ ታሪክ ለማየት ይያዙ</translation>
 <translation id="2963151496262057773">የሚከተለው ተሰኪ ምላሽ አይሰጥም፦ <ph name="PLUGIN_NAME" />ሊያቆሙት ይፈልጋሉ?</translation>
 <translation id="2966937470348689686">የAndroid ምርጫዎችን ያቀናብሩ</translation>
-<translation id="2972557485845626008">ጽኑ ትዕዛዝ</translation>
 <translation id="2972581237482394796">&amp;ድገም</translation>
 <translation id="2973324205039581528">ጣቢያ ላይ ድምፀ-ከል አድርግ</translation>
 <translation id="2977480621796371840">ከቡድን አስወግድ</translation>
@@ -1612,7 +1612,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">መለያ</translation>
 <translation id="3387614642886316601">የበለጸገ ፊደል አራሚን ተጠቀም</translation>
-<translation id="3393352139658145068">የሆነ ሰው «Ok Google» ሲል ረዳቱን ያግብሩ። ባትሪን ለመቆጠብ ሲባል «Ok Google» የሚበራው መሣሪያዎ ከኃይል ምንጭ ጋር ሲገናኝ ብቻ ነው።</translation>
 <translation id="3396800784455899911">የ«እስማማለሁ እና ቀጥል» አዝራርን ጠቅ በማድረግ ለእነዚህ የGoogle አገልግሎቶች ከላይ በተብራራው ማስሄድ መስማማትዎን ያረጋግጣሉ።</translation>
 <translation id="3399432415385675819">ማሳወቂያዎች ይሰናከላሉ</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - የተጠላለፈ</translation>
@@ -1773,6 +1772,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" />ን አሳይ</translation>
 <translation id="3613422051106148727">&amp;አዲስ ትር ውስጥ ክፈት</translation>
 <translation id="3615073365085224194">የጣት አሻራ ዳሳሹን በእርስዎ ጣት ይንኩት</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> እየተቃኘ ነው።</translation>
 <translation id="3616741288025931835">&amp;የአሰሳ ውሂብ አጽዳ…</translation>
 <translation id="3617891479562106823">ዳራዎች አይገኙም። ቆይተው እንደገና ይሞክሩ።</translation>
 <translation id="3619115746895587757">ካፑቺኖ</translation>
@@ -1887,7 +1887,6 @@
 <translation id="3759933321830434300">የድረ-ገጾች ክፍሎችን ያግዳል</translation>
 <translation id="3760460896538743390">&amp;የጀርባ ገጽ ይመርምሩ</translation>
 <translation id="37613671848467444">&amp;ማንነትን በማያሳውቅ መስኮት ውስጥ ክፈት</translation>
-<translation id="3764314093345384080">ዝርዝር የግንብ መረጃ</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{በዩኤስቢ መሣሪያ መልዕክት ይለዋወጡ}one{በ# ዩኤስቢ መሣሪያዎች መልዕክት ይለዋወጡ}other{በ# ዩኤስቢ መሣሪያዎች መልዕክት ይለዋወጡ}}</translation>
 <translation id="3765246971671567135">የቅንጭብ ማሳያ ሁነታ መመሪያን ከመስመር ውጭ ማንበብ አልተቻለም።</translation>
 <translation id="3768037234834996183">የእርስዎን ምርጫዎች በማመሳሰል ላይ...</translation>
@@ -2166,7 +2165,6 @@
 <translation id="4138267921960073861">በመግቢያ ገጹ ላይ የተጠቃሚ ስሞች እና ፎቶዎችን አሳይ</translation>
 <translation id="4142052906269098341">የእርስዎን <ph name="DEVICE_TYPE" /> በስልክዎ መክፈት አለብዎት። <ph name="LINK_BEGIN" />የበለጠ ለመረዳት<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">የተሻለ ጥራት ያለውን ቪዲዮ ያግኙ እና የባትሪ ዕድሜ ይቆጥቡ። ቪዲዮ በእርስዎ የCast-የነቃ ማያ ገጽ ላይ ብቻ ይጫወታል።</translation>
-<translation id="4145922204387553806">ረዳቱ በእርስዎ ማያ ገጽ ላይ ካለው ጋር ተዛማጅ መረጃ ለእርስዎ እንዲሰጥዎት ያድርጉ</translation>
 <translation id="4146026355784316281">ሁልጊዜ ከሥርዓት ተመልካች ጋር ክፈት</translation>
 <translation id="4146785383423576110">ዳግም አዘጋጅ እና አጽዳ</translation>
 <translation id="4147911968024186208">እባክዎ እንደገና ይሞክሩ። ይህን ስህተት በድጋሚ ከተመለከቱ እባክዎ የድጋፍ ተወካይዎን ያነጋግሩ።</translation>
@@ -2253,6 +2251,7 @@
 <translation id="4297322094678649474">ቋንቋዎችን ይቀይሩ</translation>
 <translation id="4301671483919369635">ይህ ገጽ ፋይሎችን አርትዖት እንዲያደርግ ይፈቀድለታል</translation>
 <translation id="4303079906735388947">ለእርስዎ የደህንነት ቁልፍ አዲስ ፒን ያቀናብሩ</translation>
+<translation id="4305402730127028764">ወደ <ph name="DEVICE_NAME" /> ይቅዱ</translation>
 <translation id="4306119971288449206">መተግበሪያዎች በይዘት አይነት «<ph name="CONTENT_TYPE" />» ሊቀርቡ ይገባል</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K በቀጥታ)</translation>
 <translation id="4310139701823742692">ፋይሉ በተሳሳተ ቅርጸት ነው ያለው። የPPD ፋይሉን ይመልከቱና እንደገና ይሞክሩ።</translation>
@@ -2388,7 +2387,6 @@
 <translation id="4534661889221639075">እንደገና ይሞክሩ።</translation>
 <translation id="4535127706710932914">ነባሪ መገለጫ</translation>
 <translation id="4535767533210902251">የጣት አሽራ ዳሳሹ በእርስዎ የቁልፍ ሰሌዳ ላይ ከላይ ያለው ቀኝ እጅ ቁልፉ ነው። በማናቸውም ጣት በስሱ ነካ ያድርጉት።</translation>
-<translation id="4538417792467843292">ቃል ይሰርዙ</translation>
 <translation id="4538684596480161368">በማጠሪያ ያልተቀመጡ ተሰኪዎች ሁልጊዜ <ph name="HOST" /> ላይ አግድ</translation>
 <translation id="4538792345715658285">በድርጅት መመሪያ የተጫነ።</translation>
 <translation id="4542520061254486227">የእርስዎን ውሂብ በ<ph name="WEBSITE_1" /> እና በ<ph name="WEBSITE_2" /> ላይ ያንብቡ</translation>
@@ -2932,6 +2930,7 @@
 <translation id="5367091008316207019">ፋይል በማንበብ ላይ..</translation>
 <translation id="5368720394188453070">የእርስዎ ስልክ ተቆልፏል። ለመግባት ያስከፍቱት።</translation>
 <translation id="5368779022775404937">ወደ <ph name="REALM" /> ይግቡ</translation>
+<translation id="5369491905435686894">የመዳፊት ማፍጠኛን አንቃ</translation>
 <translation id="5370819323174483825">&amp;ዳግም ጫን</translation>
 <translation id="5372529912055771682">የተሰጠው የምዝገባ ሁነታ በዚህ የስርዓተ ክወና ስሪት አይደገፍም። አዲሱን ስሪት እያሂዱ መሆንዎን ያረጋግጡና እንደገና ይሞክሩ።</translation>
 <translation id="5372579129492968947">ቅጥያን ንቀል</translation>
@@ -3004,6 +3003,7 @@
 <translation id="5464632865477611176">አሁን አሂደው</translation>
 <translation id="5464660706533281090">ይህ ቅንብር በልጅ ተጠቃሚ ሊቀየር አይችልም።</translation>
 <translation id="5466374726908360271">ይለጥፉና «<ph name="SEARCH_TERMS" />»ን ይፈልጉ</translation>
+<translation id="5468173180030470402">የፋይል ማጋራቶችን በመፈለግ ላይ</translation>
 <translation id="5471768120198416576">ጤና ይስጥልን! እኔ የጽሑፍ-ወደ-ንግግር ድምጽዎ ነኝ።</translation>
 <translation id="5473333559083690127">አዲሱን ፒን ደግመው ያስገቡ</translation>
 <translation id="5481941284378890518">አቅራቢያ ያሉ አታሚዎችን አክል</translation>
@@ -3539,6 +3539,7 @@
 <translation id="6233154960150021497">በቁልፍ ሰሌዳ ፈንታ ድምፅን ለመጠቀም ነባሪ</translation>
 <translation id="6234474535228214774">መጫንን በመጠባበቅ ላይ</translation>
 <translation id="6237816943013845465">የእርስዎን ማያ ገጽ ምስል ጥራት እንዲቀይሩ ያስችልዎታል</translation>
+<translation id="6238767809035845642">ከሌላ መሣሪያ የተጋራ ጽሑፍ</translation>
 <translation id="6238923052227198598">በማያ ገጽ መቆለፊያ ላይ የቅርብ ጊዜውን ማስታወሻ አቆይ</translation>
 <translation id="6239558157302047471">&amp;ክፈፍን ዳግም ጫን</translation>
 <translation id="6241530762627360640">ከስርዓትዎ ጋር ስለተጣመሩ የብሉቱዝ መሣሪያዎች ያለ መረጃ ይደርሳልና አቅራቢያ ያሉ የብሉቱዝ መሣሪያዎችን ያገኛል።</translation>
@@ -3765,7 +3766,6 @@
 <translation id="6577284282025554716">ማውረድ ተሰርዟል፦ <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">የሰመሩ ይለፍ ቃላ በእርስዎ የGoogle ተጠቃሚ ስም እና ይለፍ ቃል ያመስጥሯቸው</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - የዴስክቶፕ ይዘት ተጋርቷል</translation>
-<translation id="6580151766480067746">የኤአርሲ ስሪት</translation>
 <translation id="6582080224869403177">ደህንነትዎን ለማላቅ የእርስዎን <ph name="DEVICE_TYPE" /> ዳግም ያስጀምሩት።</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">የዋና መዳፊት አዘራር ይቀይሩ</translation>
@@ -4370,6 +4370,7 @@
 <translation id="7487141338393529395">የበለጸገ የፊደል አራሚን ያብሩ</translation>
 <translation id="7487969577036436319">ምንም አካላት አልተጫኑም</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;ሁሉንም ክፈት}=1{&amp;ዕልባት ክፈት}one{&amp;ሁሉንም ክፈት (#)}other{&amp;ሁሉንም ክፈት (#)}}</translation>
+<translation id="7489761397368794366">ከመሣሪያዎ የመጣ ጥሪ</translation>
 <translation id="749028671485790643">ሰው <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">የማክ አድራሻ</translation>
 <translation id="7493386493263658176">የ<ph name="EXTENSION_NAME" /> ቅጥያ እንደ የይለፍ ቃላት እና የክሬዲት ካርድ ቁጥሮች ያለ የሚተይቡትን ጽሑፍ ሁሉ ሊሰበስብ ይችላል። ይህን ቅጥያ መጠቀም ይፈልጋሉ?</translation>
@@ -4389,6 +4390,7 @@
 <translation id="7508054832109420082">ለአታሚዎች መዳረሻ ይስጡ</translation>
 <translation id="7510943789645525906">የሚጠቀሙበት የይለፍ ቃል የውሂብ ደንብ ጥሰት አንድ አካል ከሆነ ያስጠነቅቅዎታል</translation>
 <translation id="7513029293694390567">የተከማቹ ምስክርነቶችን በመጠቀም በራስ-ሰር ወደ ድር ጣቢያዎች ይግቡ። ከተሰናከለ ወደ አንድ ድር ጣቢያ ከመግባትዎ በፊት ሁልጊዜ ማረጋገጫ እንዲሰጡ ይጠየቃሉ።</translation>
+<translation id="7514239104543605883">ወደ መሣሪያዎ ይቅዱ</translation>
 <translation id="7514365320538308">አውርድ</translation>
 <translation id="7521387064766892559">ጃቫስክሪፕት</translation>
 <translation id="7522255036471229694">«Ok Google» ይብሉ</translation>
@@ -4949,6 +4951,7 @@
 <translation id="8274332263553132018">ፋይል Cast ያድርጉ</translation>
 <translation id="8274924778568117936">ዝማኔው እስኪጨርስ ድረስ የእርስዎን <ph name="DEVICE_TYPE" /> አያጥፉት ወይም አይዝጉት። መጫኑ ከተጠናቀቀ በኋላ የእርስዎ <ph name="DEVICE_TYPE" /> ዳግም ይነሳል።</translation>
 <translation id="8275038454117074363">ከውጭ አስመጣ</translation>
+<translation id="8275080796245127762">ከመሣሪያዎ የመጣ ጥሪ</translation>
 <translation id="8276560076771292512">ባዶ መሸጎጫ እና ደረቅ ዳግም መጫን</translation>
 <translation id="8281886186245836920">ዝለል</translation>
 <translation id="8282947398454257691">የእርስዎን ልዩ የመሣሪያ ለይቶ ማወቂያ ይወቁ</translation>
@@ -5269,6 +5272,7 @@
 <translation id="8758418656925882523">በቃል ማጻፍን አንቃ (ለመተየብ ይናገሩ)</translation>
 <translation id="8759408218731716181">ባለብዙ መለያ መግቢያን ማዋቀር አልተቻለም</translation>
 <translation id="8759753423332885148">ተጨማሪ ለመረዳት።</translation>
+<translation id="8761945298804995673">ይህ ተጠቃሚ አስቀድሞ አለ</translation>
 <translation id="8762886931014513155">የእርስዎ <ph name="DEVICE_TYPE" /> ዝማኔ ያስፈልገዋል</translation>
 <translation id="8763927697961133303">የዩኤስቢ መሣሪያ</translation>
 <translation id="8767621466733104912">Chromeን ለሁሉም ተጠቃሚዎች በራስ-ሰር አዘምን</translation>
@@ -5357,6 +5361,7 @@
 <translation id="8879284080359814990">&amp;በትር አሳይ</translation>
 <translation id="8879921471468674457">በመለያ መግቢያ መረጃን አስታውስ</translation>
 <translation id="8881020143150461183">እባክዎ እንደገና ይሞክሩ። ለቴክኒካዊ ድጋፍ፣ <ph name="CARRIER_NAME" /> ን ያነጋግሩ።</translation>
+<translation id="8883273463630735858">የመዳሰሻ ሰሌዳን ማፍጠኛን ያንቁ</translation>
 <translation id="8884570509232205463">መሣሪያዎ አሁን <ph name="UNLOCK_TIME" /> ላይ ይቆለፋል።</translation>
 <translation id="8885197664446363138">Smart Lock ሊገኝ አይችልም</translation>
 <translation id="8888253246822647887">ማላቁ ሲያልቅ መተግበሪያዎ ይከፈታል ማላቆች ጥቂት ደቂቃዎችን ሊወስዱ ይችላሉ</translation>
diff --git a/chrome/app/resources/generated_resources_ar.xtb b/chrome/app/resources/generated_resources_ar.xtb
index 51b3775..e2f84aa 100644
--- a/chrome/app/resources/generated_resources_ar.xtb
+++ b/chrome/app/resources/generated_resources_ar.xtb
@@ -319,10 +319,11 @@
 <translation id="1470811252759861213">للحصول على الإضافات على جميع أجهزة الكمبيوتر، <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">سيؤدي هذا الإجراء إلى محو جميع البيانات على مفتاح الأمان، بما في ذلك رقم تعريفه الشخصي.</translation>
 <translation id="1475502736924165259">لديك شهادات في الملف لا تندرج تحت أي فئة من الفئات الأخرى</translation>
+<translation id="1476088332184200792">نسخ إلى جهازك</translation>
 <translation id="1476607407192946488">إ&amp;عدادات اللغة</translation>
 <translation id="1478340334823509079">التفاصيل: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">التثبيت غير مُفعَّل</translation>
-<translation id="1481206932476131736">‏يمكنك إدارة حساباتك التي سجّلت الدخول إليها. وبناءً على الأذونات، يمكن لمواقع الويب والتطبيقات والإضافات في Chrome وGoogle Play استخدام هذه الحسابات لتخصيص تجربتك.</translation>
+<translation id="1481206932476131736">‏يمكنك إدارة حساباتك التي سجّلت الدخول إليها. وبناءً على الأذونات، يمكن للمواقع الإلكترونية والتطبيقات والإضافات في Chrome وGoogle Play استخدام هذه الحسابات لتخصيص تجربتك.</translation>
 <translation id="1482626744466814421">وضع إشارة مرجعية لعلامة التبويب هذه</translation>
 <translation id="1483493594462132177">إرسال</translation>
 <translation id="1484979925941077974">يستخدم الموقع الإلكتروني البلوتوث.</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">الطباعة باستخدام مربع حوار النظام... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">اسأل قبل الإرسال (موصى به)</translation>
 <translation id="2384436799579181135">حدث خطأ ما. يُرجى التحقق من الطابعة وإعادة المحاولة.</translation>
-<translation id="2386926718981642523">‏يمكنك الوصول إلى "مساعد Google" في أي وقت بمجرّد قول العبارة "Ok Google".</translation>
 <translation id="2387458720915042159">نوع الاتصال بالخادم الوكيل</translation>
 <translation id="2391419135980381625">الخط القياسي</translation>
 <translation id="2392369802118427583">تفعيل</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">منخفضة</translation>
 <translation id="2942560570858569904">جارٍ الانتظار...</translation>
 <translation id="2942581856830209953">تخصيص هذه الصفحة</translation>
+<translation id="294308617863380348">تضمين ملفات تعريف الارتباط التابعة لجهات خارجية</translation>
 <translation id="2944060181911631861">‏يمكنك إرسال بيانات الاستخدام والتشخيص. يمكنك المساعدة في تحسين تجربة نظام التشغيل Android من خلال إرسال بيانات استخدام التطبيق والجهاز والتشخيص تلقائيًا إلى Google. سيساعد ذلك في استقرار عمل النظام والتطبيقات، بالإضافة إلى التحسينات الأخرى. كما ستساعد بعض البيانات المجمّعة تطبيقات Google وشركائها، مثل مطوّري برامج نظام التشغيل Android. في حال تفعيل إعداد "النشاط الإضافي على الويب وفي التطبيقات"، قد يتم حفظ هذه البيانات في حسابك على Google. <ph name="BEGIN_LINK1" />مزيد من المعلومات<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">إضافة اتصال</translation>
 <translation id="2948300991547862301">انتقل إلى <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">انقر للانتقال إلى الأمام واضغط لمشاهدة السجل</translation>
 <translation id="2963151496262057773">المكوّن الإضافي التالي غير مستجيب: <ph name="PLUGIN_NAME" />‏، هل تريد إيقافه؟</translation>
 <translation id="2966937470348689686">‏إدارة إعدادات Android المفضّلة</translation>
-<translation id="2972557485845626008">البرامج الثابتة</translation>
 <translation id="2972581237482394796">إعا&amp;دة</translation>
 <translation id="2973324205039581528">تجاهل الموقع</translation>
 <translation id="2977480621796371840">الإزالة من مجموعة</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">فاصل</translation>
 <translation id="3387614642886316601">استخدام التدقيق الإملائي المُحسَّن</translation>
-<translation id="3393352139658145068">‏يُرجى تفعيل "مساعد Google" عند سماع العبارة "Ok Google". ولتوفير شحن البطارية، يتم تفعيل "Ok Google" فقط عند توصيل الجهاز بمصدر طاقة.</translation>
 <translation id="3396800784455899911">‏بالنقر على الزر "قبول ومتابعة"، فأنت توافق على المعالجة الموضّحة أعلاه لخدمات Google هذه.</translation>
 <translation id="3399432415385675819">سيتم إيقاف الإشعارات</translation>
 <translation id="3400390787768057815">‏<ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> هرتز) - متداخل</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">عرض <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;فتح في علامة تبويب جديدة</translation>
 <translation id="3615073365085224194">يُرجى لمس مستشعر بصمات الإصبع بإصبعك.</translation>
+<translation id="3615579745882581859">يتم الآن فحص <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;محو بيانات التصفح...</translation>
 <translation id="3617891479562106823">الخلفيات غير متاحة. يُرجى إعادة المحاولة لاحقًا.</translation>
 <translation id="3619115746895587757">كابتشينو</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">الأجزاء المقيدة من صفحات الويب</translation>
 <translation id="3760460896538743390">فحص &amp;صفحة الخلفية</translation>
 <translation id="37613671848467444">فتح في &amp;نافذة التصفح المتخفي</translation>
-<translation id="3764314093345384080">معلومات الإصدار التفصيلية</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{‏الاتصال بجهاز USB}zero{‏الاتصال بـ # من أجهزة USB}two{‏الاتصال بجهازي USB (#)}few{‏الاتصال بـ # أجهزة USB}many{‏ الاتصال بـ # جهاز USB}other{‏ الاتصال بـ # من أجهزة USB}}</translation>
 <translation id="3765246971671567135">تعذَّرت قراءة سياسة الوضع التجريبي بلا إنترنت.</translation>
 <translation id="3768037234834996183">جارٍ مزامنة تفضيلاتك...</translation>
@@ -2166,7 +2165,6 @@
 <translation id="4138267921960073861">عرض أسماء المستخدمين والصور على شاشة تسجيل الدخول</translation>
 <translation id="4142052906269098341">يمكنك فتح قفل الجهاز <ph name="DEVICE_TYPE" /> باستخدام هاتفك <ph name="LINK_BEGIN" />مزيد من المعلومات<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">‏يمكنك الحصول على فيديو بجودة أفضل والحفاظ على عمر البطارية. ولن يتم تشغيل الفيديو إلا على شاشة تعمل بتكنولوجيا Google Cast.</translation>
-<translation id="4145922204387553806">‏السماح "لمساعد Google" بعرض معلومات متعلِّقة بالمحتوى المعروض على شاشتك</translation>
 <translation id="4146026355784316281">افتح دائمًا باستخدام عرض النظام</translation>
 <translation id="4146785383423576110">إعادة التعيين وإزالة البرامج الضارة</translation>
 <translation id="4147911968024186208">يُرجى إعادة المحاولة. وإذا ظهر هذا الخطأ مرة أخرى، يُرجى التواصل مع ممثِّل الدعم.</translation>
@@ -2253,6 +2251,7 @@
 <translation id="4297322094678649474">تغيير اللغات</translation>
 <translation id="4301671483919369635">يتم السماح لهذه الصفحة بتعديل الملفات.</translation>
 <translation id="4303079906735388947">إعداد رقم تعريف شخصي جديد لمفتاح الأمان</translation>
+<translation id="4305402730127028764">نسخ إلى <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">يجب عرض التطبيقات باستخدام نوع المحتوى "<ph name="CONTENT_TYPE" />".</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />كيلوبايت (<ph name="NUM_KILOBYTES_LIVE" />كيلوبايت مباشرة)</translation>
 <translation id="4310139701823742692">‏الملف بتنسيق خاطئ. تحقق من ملف PPD وأعد المحاولة.</translation>
@@ -2388,7 +2387,6 @@
 <translation id="4534661889221639075">يُرجى إعادة المحاولة.</translation>
 <translation id="4535127706710932914">الملف الشخصي التلقائي</translation>
 <translation id="4535767533210902251">يتوفَّر مستشعر بصمات الإصبع في الزر في أعلى يمين لوحة المفاتيح. يمكنك لمسه برفقٍ بأي إصبع.</translation>
-<translation id="4538417792467843292">حذف كلمة</translation>
 <translation id="4538684596480161368">حظر المكونات الإضافية غير المحمية دومًا على <ph name="HOST" /></translation>
 <translation id="4538792345715658285">تمّ التثبيت بموجب سياسة المؤسسة.</translation>
 <translation id="4542520061254486227">قراءة بياناتك على <ph name="WEBSITE_1" /> و<ph name="WEBSITE_2" /></translation>
@@ -2932,6 +2930,7 @@
 <translation id="5367091008316207019">جارٍ قراءة الملف..</translation>
 <translation id="5368720394188453070">هاتفك مغلق. ألغ قفله للدخول.</translation>
 <translation id="5368779022775404937">تسجيل الدخول إلى <ph name="REALM" /></translation>
+<translation id="5369491905435686894">تفعيل تسريع الماوس</translation>
 <translation id="5370819323174483825">&amp;إعادة تحميل</translation>
 <translation id="5372529912055771682">لا يتيح هذا الإصدار من نظام التشغيل استخدام وضع التسجيل المزود. يُرجى التأكد من تشغيل أحدث إصدار وإعادة المحاولة.</translation>
 <translation id="5372579129492968947">إزالة تثبيت الإضافة</translation>
@@ -3004,6 +3003,7 @@
 <translation id="5464632865477611176">التشغيل في هذه المرة</translation>
 <translation id="5464660706533281090">لا يمكن للمستخدم تغيير هذا الإعداد إذا كان طفلاً.</translation>
 <translation id="5466374726908360271">ل&amp;صق وبحث عن "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">البحث عن مشاركات الملفات</translation>
 <translation id="5471768120198416576">مرحبًا! هذا صوت ميزة تحويل النص إلى كلام.</translation>
 <translation id="5473333559083690127">إعادة إدخال رقم التعريف الشخصي الجديد</translation>
 <translation id="5481941284378890518">إضافة طابعات مجاورة</translation>
@@ -3540,6 +3540,7 @@
 <translation id="6233154960150021497">الخيار التلقائي لاستخدام الصوت بدلاً من لوحة المفاتيح</translation>
 <translation id="6234474535228214774">التثبيت معلّق</translation>
 <translation id="6237816943013845465">تسمح لك بضبط دقة الشاشة</translation>
+<translation id="6238767809035845642">النصوص التي تمت مشاركتها من جهاز آخر</translation>
 <translation id="6238923052227198598">إبقاء آخر ملاحظة على شاشة التأمين</translation>
 <translation id="6239558157302047471">إعادة تحميل الإطار</translation>
 <translation id="6241530762627360640">الوصول إلى معلومات حول أجهزة البلوتوث المقترنة بنظامك واكتشاف أجهزة البلوتوث القريبة.</translation>
@@ -3766,7 +3767,6 @@
 <translation id="6577284282025554716">تم إلغاء التنزيل: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">‏تشفير كلمات المرور المتزامنة باستخدام اسم المستخدم وكلمة المرور لحساب Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - تمت مشاركة محتوى سطح المكتب</translation>
-<translation id="6580151766480067746">‏إصدار ARC</translation>
 <translation id="6582080224869403177">إعادة ضبط <ph name="DEVICE_TYPE" /> لترقية الأمان</translation>
 <translation id="6584878029876017575">‏التوقيع مدى الحياة لـ Microsoft</translation>
 <translation id="6586451623538375658">تبديل زر الماوس الرئيسي</translation>
@@ -3777,7 +3777,7 @@
 <translation id="6596325263575161958">خيارات التشفير</translation>
 <translation id="6596816719288285829">‏عنوان IP</translation>
 <translation id="6597017209724497268">نماذج</translation>
-<translation id="6597148444736186483">لتسجيل الخروج من الحساب الأساسي في هذا الجهاز، يُرجى النقر على الوقت على الشاشة. في القائمة التي تظهر، يُرجى النقر على "تسجيل الخروج".</translation>
+<translation id="6597148444736186483">لتسجيل الخروج من الحساب الأساسي في هذا الجهاز، يُرجى النقر على الوقت الظاهر على الشاشة. في القائمة التي تظهر، يُرجى النقر على "تسجيل الخروج".</translation>
 <translation id="659934686219830168">ستبدأ المزامنة بعد مغادرتك هذه الصفحة.</translation>
 <translation id="6602956230557165253">استخدام مفتاحي السهمين لليمين واليسار للتنقل.</translation>
 <translation id="6605847144724004692">لم يتم التقييم بواسطة أي مستخدمين بعد.</translation>
@@ -4297,7 +4297,7 @@
 <translation id="7366415735885268578">إضافة موقع ويب</translation>
 <translation id="7366909168761621528">بيانات التصفح</translation>
 <translation id="736877393389250337">تعذَّر فتح <ph name="URL" /> في <ph name="ALTERNATIVE_BROWSER_NAME" />. يُرجى التواصل مع مشرف النظام.</translation>
-<translation id="7370592524170198497">‏إيثرنت EAP:</translation>
+<translation id="7370592524170198497">‏بروتوكول المصادقة القابل للامتداد (EAP) للإيثرنت:</translation>
 <translation id="7371006317849674875">وقت البدء</translation>
 <translation id="7375053625150546623">EAP</translation>
 <translation id="7376553024552204454">تمييز مؤشر الماوس عندما يتحرك</translation>
@@ -4371,6 +4371,7 @@
 <translation id="7487141338393529395">تفعيل التدقيق الإملائي المُحسَّن</translation>
 <translation id="7487969577036436319">لم يتم تثبيت أي مكونات</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;فتح الكل}=1{&amp;فتح الإشارة المرجعية}two{&amp;فتح كلا العنوانين (#)}few{&amp;فتح كل الـ (#) عناوين}many{&amp;فتح كل الـ (#) عنوانًا}other{&amp;فتح كل الـ (#) عنوان}}</translation>
+<translation id="7489761397368794366">الاتصال من جهازك</translation>
 <translation id="749028671485790643">الشخص <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">‏عنوان MAC</translation>
 <translation id="7493386493263658176">يمكن أن تجمع إضافة <ph name="EXTENSION_NAME" /> كل النصوص التي تكتبها، بما في ذلك المعلومات الشخصية مثل كلمات المرور وأرقام بطاقات الائتمان. هل تريد استخدام هذه الإضافة؟</translation>
@@ -4390,6 +4391,7 @@
 <translation id="7508054832109420082">منح الإذن للطابعات</translation>
 <translation id="7510943789645525906">يُرسَل إليك تحذير في حال كانت كلمة المرور التي تستخدمها جزءًا من عملية اختراق البيانات.</translation>
 <translation id="7513029293694390567">يمكنك تسجيل الدخول تلقائيًا إلى مواقع الويب باستخدام بيانات الاعتماد المخزّنة. وعندما تكون هذه الميزة غير مفعّلة، سيُطلب منك التحقّق من بيانات الاعتماد في كل مرة قبل تسجيل الدخول إلى موقع ويب.</translation>
+<translation id="7514239104543605883">نسخ إلى جهازك</translation>
 <translation id="7514365320538308">تنزيل</translation>
 <translation id="7521387064766892559">جافا سكريبت</translation>
 <translation id="7522255036471229694">‏قل "Ok Google".</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">إرسال الملف</translation>
 <translation id="8274924778568117936">لا توقف تشغيل جهاز <ph name="DEVICE_TYPE" /> أو تُغلقه لحين الانتهاء من التحديث. ستتم إعادة تشغيل جهاز <ph name="DEVICE_TYPE" /> بعد اكتمال التثبيت.</translation>
 <translation id="8275038454117074363">الاستيراد</translation>
+<translation id="8275080796245127762">الاتصال من جهازك</translation>
 <translation id="8276560076771292512">إفراغ ذاكرة التخزين المؤقت وإعادة التحميل بشكل كامل</translation>
 <translation id="8281886186245836920">تخطّي</translation>
 <translation id="8282947398454257691">معرفة معرّف جهازك الفريد</translation>
@@ -5266,6 +5269,7 @@
 <translation id="8758418656925882523">تفعيل الإملاء (التحدُّث للكتابة)</translation>
 <translation id="8759408218731716181">يتعذر إعداد الدخول المتعدد</translation>
 <translation id="8759753423332885148">معرفة المزيد.</translation>
+<translation id="8761945298804995673">هذا المستخدم متوفّر مسبقًا.</translation>
 <translation id="8762886931014513155">يحتاج <ph name="DEVICE_TYPE" /> إلى تحديث</translation>
 <translation id="8763927697961133303">‏جهاز USB</translation>
 <translation id="8767621466733104912">‏تحديث Chrome لجميع المستخدمين تلقائيًا</translation>
@@ -5354,6 +5358,7 @@
 <translation id="8879284080359814990">إ&amp;ظهار كعلامة تبويب</translation>
 <translation id="8879921471468674457">تذكّر معلومات تسجيل الدخول</translation>
 <translation id="8881020143150461183">يُرجى إعادة المحاولة. للحصول على الدعم الفني، يُرجى التواصل مع <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">تفعيل تسريع لوحة اللمس</translation>
 <translation id="8884570509232205463">يتم قفل جهازك الآن في <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">‏Smart Lock غير متاح</translation>
 <translation id="8888253246822647887">سيتم فتح التطبيق عند انتهاء الترقية. قد تستغرق عمليات الترقية بضع دقائق.</translation>
diff --git a/chrome/app/resources/generated_resources_bg.xtb b/chrome/app/resources/generated_resources_bg.xtb
index e12be94..c86421fe 100644
--- a/chrome/app/resources/generated_resources_bg.xtb
+++ b/chrome/app/resources/generated_resources_bg.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213"><ph name="SIGN_IN_LINK" />, за да получите разширенията си на всичките си компютри.</translation>
 <translation id="1470967055429794975">Това ще изтрие всички данни на ключа за сигурност, включително ПИН кода му</translation>
 <translation id="1475502736924165259">Разполагате със сертификати, които не отговарят на нито една от другите категории</translation>
+<translation id="1476088332184200792">Копиране на устройството ви</translation>
 <translation id="1476607407192946488">&amp;Езикови настройки</translation>
 <translation id="1478340334823509079">Подробности: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Инсталирането не е активирано</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">Печат чрез системния диалогов прозорец... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Извеждане на запитване преди изпращане (препоръчително)</translation>
 <translation id="2384436799579181135">Възникна грешка. Моля, проверете принтера си и опитайте отново.</translation>
-<translation id="2386926718981642523">Осъществявайте достъп до Асистент всеки път, когато кажете „Ok Google“</translation>
 <translation id="2387458720915042159">Тип на връзката през прокси сървър</translation>
 <translation id="2391419135980381625">Стандартен шрифт</translation>
 <translation id="2392369802118427583">Активиране</translation>
@@ -1338,6 +1338,7 @@
 <translation id="2941112035454246133">Нисък</translation>
 <translation id="2942560570858569904">Изчаква се...</translation>
 <translation id="2942581856830209953">Персонализиране на тази страница</translation>
+<translation id="294308617863380348">Включително „бисквитките“ на трети страни</translation>
 <translation id="2944060181911631861">Изпращане на данни за употребата и диагностиката. Помогнете за подобряването на работата си с Android, като автоматично изпращате до Google диагностична информация и данни за употребата на устройството и приложенията. Това ще послужи за подобряване на стабилността на системата и приложенията и др. Някои обобщени данни също така ще подпомогнат приложенията и партньорите на Google, напр. програмистите за Android. Ако настройката „Допълнителна активност в мрежата и приложенията“ е включена за вас, тези данни може да се запазват в профила ви в Google. <ph name="BEGIN_LINK1" />Научете повече<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Добавяне на връзка</translation>
 <translation id="2948300991547862301">Към „<ph name="PAGE_TITLE" />“</translation>
@@ -1352,7 +1353,6 @@
 <translation id="2961695502793809356">Кликнете, за да преминете напред. Задръжте, за да видите историята.</translation>
 <translation id="2963151496262057773">Следната приставка е блокирала: <ph name="PLUGIN_NAME" />. Искате ли да я спрете?</translation>
 <translation id="2966937470348689686">Управление на предпочитанията за Android</translation>
-<translation id="2972557485845626008">Фърмуер</translation>
 <translation id="2972581237482394796">&amp;Възстановяване</translation>
 <translation id="2973324205039581528">Заглушаване на сайта</translation>
 <translation id="2977480621796371840">Премахване от групата</translation>
@@ -1610,7 +1610,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Разделител</translation>
 <translation id="3387614642886316601">Използване на подобрената проверка на правописа</translation>
-<translation id="3393352139658145068">Активиране на Асистент, когато някой каже „Ok Google“. С цел икономия на батерия „Ok Google“ е активно само когато устройството е свързано със захранващ източник.</translation>
 <translation id="3396800784455899911">С кликването си върху бутона „Приемам и продължавам“ приемате описаното по-горе обработване за тези услуги на Google.</translation>
 <translation id="3399432415385675819">Известията ще бъдат деактивирани</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> херца) – презредова развивка</translation>
@@ -1771,6 +1770,7 @@
 <translation id="3613134908380545408">Показване на „<ph name="FOLDER_NAME" />“</translation>
 <translation id="3613422051106148727">&amp;Отваряне в нов раздел</translation>
 <translation id="3615073365085224194">Докоснете сензора за отпечатъци с пръста си</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> се сканира.</translation>
 <translation id="3616741288025931835">&amp;Изчистване на данните за сърфирането...</translation>
 <translation id="3617891479562106823">Фоновете не са налице. Опитайте отново по-късно.</translation>
 <translation id="3619115746895587757">Капучино</translation>
@@ -1886,7 +1886,6 @@
 <translation id="3759933321830434300">Блокиране на части от уеб страници</translation>
 <translation id="3760460896538743390">Инспектиране на &amp;фоновата страница</translation>
 <translation id="37613671848467444">Отваряне на прозорец в режим „&amp;инкогнито“</translation>
-<translation id="3764314093345384080">Подробна информация за компилацията</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Комуникация с USB устройство}other{Комуникация с # USB устройства}}</translation>
 <translation id="3765246971671567135">Правилото за офлайн демонстрационен режим не можа да бъде прочетено.</translation>
 <translation id="3768037234834996183">Предпочитанията ви се синхронизират...</translation>
@@ -2168,7 +2167,6 @@
 <translation id="4138267921960073861">Потребителските имена и снимките да се показват на екрана за вход</translation>
 <translation id="4142052906269098341">Отключвайте своя <ph name="DEVICE_TYPE" /> с телефона си. <ph name="LINK_BEGIN" />Научете повече<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Гледайте видео с по-добро качество и удължете живота на батерията. Видеото ще се възпроизвежда само на екрана ви, поддържащ Cast.</translation>
-<translation id="4145922204387553806">Разрешаване на Асистент да ви показва информация въз основа на съдържанието на екрана ви</translation>
 <translation id="4146026355784316281">Отваряне винаги със системния визуализатор</translation>
 <translation id="4146785383423576110">Нулиране на настройките и почистване</translation>
 <translation id="4147911968024186208">Моля, опитайте пак. Ако отново видите тази грешка, свържете се с представител на екипа за поддръжка.</translation>
@@ -2255,6 +2253,7 @@
 <translation id="4297322094678649474">Промяна на езиците</translation>
 <translation id="4301671483919369635">Тази страница има разрешение да редактира файлове</translation>
 <translation id="4303079906735388947">Настройте нов ПИН код за ключа си за сигурност</translation>
+<translation id="4305402730127028764">Копиране на <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Приложенията трябва да се показват с тип съдържание „<ph name="CONTENT_TYPE" />“</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> КБ (<ph name="NUM_KILOBYTES_LIVE" /> КБ активни)</translation>
 <translation id="4310139701823742692">Файловият формат е неправилен. Проверете PPD файла и опитайте отново.</translation>
@@ -2390,7 +2389,6 @@
 <translation id="4534661889221639075">Опитайте отново.</translation>
 <translation id="4535127706710932914">Потребителски профил по подразбиране</translation>
 <translation id="4535767533210902251">Сензорът за отпечатъци е бутонът най-горе вдясно на клавиатурата. Докоснете го леко с който и да е пръст.</translation>
-<translation id="4538417792467843292">Изтриване на дума</translation>
 <translation id="4538684596480161368">Приставките извън тестова среда да се блокират винаги за <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Инсталирано от корпоративно правило.</translation>
 <translation id="4542520061254486227">Четене на данните ви от <ph name="WEBSITE_1" /> и <ph name="WEBSITE_2" /></translation>
@@ -2934,6 +2932,7 @@
 <translation id="5367091008316207019">Файлът се чете...</translation>
 <translation id="5368720394188453070">Телефонът ви е заключен. Отключете го, за да влезете.</translation>
 <translation id="5368779022775404937">Влизане в домейна <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Активиране на ускоряването на мишката</translation>
 <translation id="5370819323174483825">&amp;Презареждане</translation>
 <translation id="5372529912055771682">Предоставеният режим за записване не се поддържа от тази версия на операционната система.  Моля, уверете се, че използвате най-новата версия и опитайте отново.</translation>
 <translation id="5372579129492968947">Освобождаване на разширението</translation>
@@ -3006,6 +3005,7 @@
 <translation id="5464632865477611176">Стартиране този път</translation>
 <translation id="5464660706533281090">Тази настройка не може да бъде променена от дете.</translation>
 <translation id="5466374726908360271">Пост&amp;авяне и търсене на „<ph name="SEARCH_TERMS" />“</translation>
+<translation id="5468173180030470402">Търсят се споделени хранилища</translation>
 <translation id="5471768120198416576">Здравейте! Аз съм гласът за синтезиран говор.</translation>
 <translation id="5473333559083690127">Въведете пак новия ПИН</translation>
 <translation id="5481941284378890518">Добавяне на принтери в близост</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Стандартно използване на глас вместо клавиатура</translation>
 <translation id="6234474535228214774">Предстои инсталиране</translation>
 <translation id="6237816943013845465">Позволява ви да коригирате разделителната способност на екрана</translation>
+<translation id="6238767809035845642">Текст, споделен от друго устройство</translation>
 <translation id="6238923052227198598">Запазване на най-новата бележка на заключения екран</translation>
 <translation id="6239558157302047471">Презареждане на рамката</translation>
 <translation id="6241530762627360640">Да осъществява достъп до информацията за сдвоените със системата ви устройства с Bluetooth и да открива тези, които са наблизо.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Изтеглянето е анулирано: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Шифроване на синхронизираните пароли с потребителското име и паролата ви в Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – съдържанието на работния плот е споделено</translation>
-<translation id="6580151766480067746">Версия на ARC</translation>
 <translation id="6582080224869403177">Нулирайте устройството си <ph name="DEVICE_TYPE" />, за да надстроите функциите за сигурност.</translation>
 <translation id="6584878029876017575">Подписване на периода на валидност от Microsoft</translation>
 <translation id="6586451623538375658">Да се размени основният бутон на мишката</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Включване на подобрената проверка на правописа</translation>
 <translation id="7487969577036436319">Няма инсталирани компоненти</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Отваряне на всички}=1{&amp;Отваряне на отметката}other{&amp;Отваряне на всички (#)}}</translation>
+<translation id="7489761397368794366">Обаждане от устройството ви</translation>
 <translation id="749028671485790643">Човек <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC адрес</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> може да събира целия въведен от вас текст, включително лични данни, като пароли и номера на кредитни карти. Искате ли да използвате това разширение?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Предоставяне на достъп до принтерите</translation>
 <translation id="7510943789645525906">Предупреждава ви, ако използвана от вас парола е изтекла при нарушение на сигурността на данните</translation>
 <translation id="7513029293694390567">Автоматично влизане в уебсайтове посредством съхраняваните идентификационни данни. Ако е деактивирано, ще се иска потвърждение от вас преди всяко влизане в профил в уебсайт.</translation>
+<translation id="7514239104543605883">Копиране на устройството ви</translation>
 <translation id="7514365320538308">Изтегляне</translation>
 <translation id="7521387064766892559">Javascript</translation>
 <translation id="7522255036471229694">Кажете „Ok Google“</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Предаване на файл</translation>
 <translation id="8274924778568117936">Не изключвайте, нито затваряйте устройството си <ph name="DEVICE_TYPE" />, докато актуализирането не завърши. <ph name="DEVICE_TYPE" /> ще се рестартира след завършване на инсталирането.</translation>
 <translation id="8275038454117074363">Импортиране</translation>
+<translation id="8275080796245127762">Обаждане от устройството ви</translation>
 <translation id="8276560076771292512">Изпразване на кеша и твърдо презареждане</translation>
 <translation id="8281886186245836920">Пропускане</translation>
 <translation id="8282947398454257691">Достъп до уникалния идентификатор на устройството ви</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Активиране на режима на диктуване (въвеждане чрез говор)</translation>
 <translation id="8759408218731716181">Централизираният вход не може да се настрои</translation>
 <translation id="8759753423332885148">Научете повече.</translation>
+<translation id="8761945298804995673">Този потребител вече съществува</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> се нуждае от актуализация</translation>
 <translation id="8763927697961133303">USB устройство</translation>
 <translation id="8767621466733104912">Автоматично актуализиране на Chrome за всички потребители</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Показване като раздел</translation>
 <translation id="8879921471468674457">Запомняне на данните за вход</translation>
 <translation id="8881020143150461183">Моля, опитайте отново. За техническа поддръжка се обърнете към <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Активиране на ускоряването на сензорния панел</translation>
 <translation id="8884570509232205463">Устройството ви вече ще се заключи в <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Няма достъп до Smart Lock</translation>
 <translation id="8888253246822647887">Приложението ще се отвори, щом надстройването завърши. Това може да отнеме няколко минути.</translation>
diff --git a/chrome/app/resources/generated_resources_bn.xtb b/chrome/app/resources/generated_resources_bn.xtb
index e095fbe..d2f3006 100644
--- a/chrome/app/resources/generated_resources_bn.xtb
+++ b/chrome/app/resources/generated_resources_bn.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">আপনার সকল কম্পিউটারে আপনার এক্সটেনশানগুলি পেতে, <ph name="SIGN_IN_LINK" />।</translation>
 <translation id="1470967055429794975">এটি নিরাপত্তা কী ডিভাইসের পিন নম্বর সহ সমস্ত ডেটা মুছে ফেলবে</translation>
 <translation id="1475502736924165259">আপনার কাছে ফাইলে সেই শংসাপত্রগুলি আছে যা অন্য বিভাগগুলির একটিতেও মেলে না</translation>
+<translation id="1476088332184200792">আপনার ডিভাইসে কপি করুন</translation>
 <translation id="1476607407192946488">&amp;ভাষা সেটিংস</translation>
 <translation id="1478340334823509079">বিবরণ: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">ইনস্টলেশন চালু করা হয়নি</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">সিস্টেম ডায়ালগ ব্যবহার করে প্রিন্ট করুন...<ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">পাঠানোর আগে জিজ্ঞাসা করুন (প্রস্তাবিত)</translation>
 <translation id="2384436799579181135">একটি ত্রুটি ঘটেছে৷ অনুগ্রহ করে আপনার প্রিন্টারটি পরীক্ষা করে আবার চেষ্টা করুন।</translation>
-<translation id="2386926718981642523">যেকোনও সময়ে "হ্যালো Google" বলে অ্যাসিস্ট্যান্টকে অ্যাক্সেস করতে পারবেন</translation>
 <translation id="2387458720915042159">প্রক্সি কানেকশনের ধরণ</translation>
 <translation id="2391419135980381625">মানক হরফ</translation>
 <translation id="2392369802118427583">সক্রিয় করুন</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">নিম্ন</translation>
 <translation id="2942560570858569904">অপেক্ষা করা হচ্ছে...</translation>
 <translation id="2942581856830209953">এই পৃষ্ঠাটি কাস্টমাইজ করুন</translation>
+<translation id="294308617863380348">থার্ড-পার্টি কুকি সহ</translation>
 <translation id="2944060181911631861">ব্যবহার এবং ডায়াগনস্টিক ডেটা পাঠান। Google-এ নিজে থেকে ডায়াগনস্টিক, ডিভাইস এবং অ্যাপ ব্যবহারের ডেটা পাঠিয়ে, আপনার Android অভিজ্ঞতাকে উন্নত করতে সাহায্য করুন। এটি সিস্টেম ও অ্যাপের স্থিতিশীলতা এবং অন্যান্য উন্নতিতে সাহায্য করে। ব্যবহারকারীদের কিছু সম্মিলিত ডেটা Google অ্যাপ এবং Android ডেভেলপারদের মতো পার্টনারদের কাজে লাগবে। আপনার অতিরিক্ত ওয়েব ও অ্যাপ অ্যাক্টিভিটি সেটিং চালু থাকলে, এই ডেটা আপনার Google অ্যাকাউন্টে সেভ করা হতে পারে। <ph name="BEGIN_LINK1" />আরও জানুন<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">সংযোগ জুড়ুন</translation>
 <translation id="2948300991547862301"><ph name="PAGE_TITLE" /> এ যান</translation>
@@ -1354,7 +1355,6 @@
 <translation id="2961695502793809356">এগিয়ে যাওয়ার জন্য ক্লিক করুন, ইতিহাস দেখার জন্য ধরে রাখুন</translation>
 <translation id="2963151496262057773">নিম্নোক্ত প্লাগ-ইনটি কাজ করছে না: <ph name="PLUGIN_NAME" /> আপনি কি এটিকে থামাতে চান?</translation>
 <translation id="2966937470348689686">Android ডিভাইসে পছন্দের সেটিংগুলি পরিচালনা করুন</translation>
-<translation id="2972557485845626008">ফার্মওয়্যার</translation>
 <translation id="2972581237482394796">&amp;পুনরায় করুন</translation>
 <translation id="2973324205039581528">সাইটটি মিউট করুন</translation>
 <translation id="2977480621796371840">গ্রুপ থেকে সরান</translation>
@@ -1612,7 +1612,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">পৃথককারী</translation>
 <translation id="3387614642886316601">উন্নত বানান পরীক্ষা ব্যবহার করুন</translation>
-<translation id="3393352139658145068">কেউ “হ্যালো Google” বললে অ্যাসিস্ট্যান্ট কাজ শুরু করবে। ব্যাটারির চার্জ সাশ্রয় করার জন্য, আপনার ডিভাইস চার্জে লাগানো থাকলে তবেই “হ্যালো Google” চালু থাকে।</translation>
 <translation id="3396800784455899911">'স্বীকার করে চালিয়ে যান' বোতামে ক্লিক করার অর্থ এই Google পরিষেবাগুলির জন্য উপরোক্ত বর্ণিত প্রক্রিয়াগুলিতে আপনি সম্মতি দেন।</translation>
 <translation id="3399432415385675819">বিজ্ঞপ্তি অক্ষম করা হবে</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> হার্জ) - একত্রে</translation>
@@ -1773,6 +1772,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> দেখান</translation>
 <translation id="3613422051106148727">&amp;নতুন ট্যাবে খুলুন</translation>
 <translation id="3615073365085224194">আঙ্গুলের ছাপের সেন্সরটিকে আপনার আঙ্গুল দিয়ে টাচ করুন</translation>
+<translation id="3615579745882581859">এই <ph name="FILE_NAME" /> স্ক্যান করা হচ্ছে।</translation>
 <translation id="3616741288025931835">ব্রাউজ করা ডেটা সাফ করুন...</translation>
 <translation id="3617891479562106823">ব্যাকগ্রাউন্ডগুলি উপলভ্য নয়। পরে আবার চেষ্টা করুন।</translation>
 <translation id="3619115746895587757">ক্যাপুচিনো</translation>
@@ -1887,7 +1887,6 @@
 <translation id="3759933321830434300">ওয়েব পৃষ্ঠাগুলির অংশগুলি অবরুদ্ধ করুন</translation>
 <translation id="3760460896538743390">&amp;পশ্চাদপট পৃষ্ঠা পরিদর্শন করুন</translation>
 <translation id="37613671848467444">ছদ্মবেশী উইন্ডোতে খুলু&amp;ন</translation>
-<translation id="3764314093345384080">বিল্ড সম্পর্কিত বিস্তারিত তথ্য</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{একটি USB ডিভাইসের সাথে যোগাযোগ করুন}one{# USB ডিভাইসের সাথে যোগাযোগ করুন}other{# USB ডিভাইসের সাথে যোগাযোগ করুন}}</translation>
 <translation id="3765246971671567135">অফলাইন ডেমো মোড নীতি পড়া যায়নি।</translation>
 <translation id="3768037234834996183">আপনার পছন্দগুলি সিঙ্ক হচ্ছে...</translation>
@@ -2167,7 +2166,6 @@
 <translation id="4138267921960073861">সাইন-ইন স্ক্রিনে ব্যবহারকারীর নামগুলি এবং ফটো দেখান</translation>
 <translation id="4142052906269098341">ফোন দিয়ে <ph name="DEVICE_TYPE" /> আনলক করুন <ph name="LINK_BEGIN" />আরও জানুন<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">আরও উন্নত মানের ভিডিও পান এবং ব্যাটারি সাশ্রয় করুন। শুধুমাত্র আপনার Cast চালু আছে এমন স্ক্রিনে ভিডিও চলবে</translation>
-<translation id="4145922204387553806">আপনার স্ক্রিনে যা আছে সেই সম্পর্কিত তথ্য দেখানোর জন্য অ্যাসিস্ট্যান্টকে অনুমতি দিন</translation>
 <translation id="4146026355784316281">সর্বদা সিস্টেম নিরীক্ষকের সাথে খুলুন</translation>
 <translation id="4146785383423576110">রিসেট এবং সাফ করুন</translation>
 <translation id="4147911968024186208">আবার চেষ্টা করুন। সমস্যাটি আবার হলে, কাস্টমার সাপোর্টের সাথে যোগাযোগ করুন।</translation>
@@ -2254,6 +2252,7 @@
 <translation id="4297322094678649474">ভাষাগুলি পরিবর্তন করুন</translation>
 <translation id="4301671483919369635">এই পৃষ্ঠাকে ফাইল এডিট করার অনুমতি দেওয়া হয়েছে</translation>
 <translation id="4303079906735388947">আপনার নিরাপত্তা কীয়ের জন্য একটি নতুন পিন সেট-আপ করুন</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" />-এ কপি করুন</translation>
 <translation id="4306119971288449206">অ্যাপ "<ph name="CONTENT_TYPE" />" কন্টেন্ট-প্রকার সহ হওয়া উচিত</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K লাইভ)</translation>
 <translation id="4310139701823742692">ফাইলের ফর্ম্যাটটি ভুল। PPD ফাইল ঠিক আছে কিনা দেখে নিয়ে আবার চেষ্টা করুন।</translation>
@@ -2389,7 +2388,6 @@
 <translation id="4534661889221639075">আবার চেষ্টা করুন।</translation>
 <translation id="4535127706710932914">ডিফল্ট প্রোফাইল</translation>
 <translation id="4535767533210902251">আপনার কীবোর্ডের সবচেয়ে উপরে ডানদিকের বোতামটি হল আঙ্গুলের ছাপের সেন্সর। যেকোনও আঙ্গুল দিয়ে সেটি আলতো করে টাচ করুন।</translation>
-<translation id="4538417792467843292">শব্দ মুছুন </translation>
 <translation id="4538684596480161368"><ph name="HOST" /> এ সর্বদা আনস্যান্ডবক্সড প্লাগ ইন অবরুদ্ধ করুন</translation>
 <translation id="4538792345715658285">এন্টারপ্রাইজ নীতি দ্বারা ইনস্টল করা হয়েছে৷</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" /> এবং <ph name="WEBSITE_2" /> আপনার ডেটা পড়ে</translation>
@@ -2933,6 +2931,7 @@
 <translation id="5367091008316207019">ফাইল পড়া হচ্ছে..</translation>
 <translation id="5368720394188453070">আপনার ফোন লক করা আছে৷ লিখতে আনলক করুন৷</translation>
 <translation id="5368779022775404937"><ph name="REALM" />-এ সাইন-ইন করুন</translation>
+<translation id="5369491905435686894">মাউস অ্যাক্সিলারেশন বিকল্পটি চালু করুন</translation>
 <translation id="5370819323174483825">&amp;পুনরায় লোড করুন</translation>
 <translation id="5372529912055771682">সরবরাহকৃত তালিকাভুক্তি মোড অপারেটিং সিস্টেমের এই ভার্সন দ্বারা সমর্থিত নয়৷ নিশ্চিত করুন যে আপনি নতুন ভার্সন চালাচ্ছেন এবং পুনরায় চেষ্টা করুন৷</translation>
 <translation id="5372579129492968947">এক্সটেনশন আনপিন করুন</translation>
@@ -3005,6 +3004,7 @@
 <translation id="5464632865477611176">এখন চালান</translation>
 <translation id="5464660706533281090">নাবালক ব্যবহারকারী এই সেটিংস পরিবর্তন করতে পারবেন না।</translation>
 <translation id="5466374726908360271">“<ph name="SEARCH_TERMS" />” পে&amp;স্ট করে সার্চ করুন</translation>
+<translation id="5468173180030470402">ফাইল শেয়ার বিকল্পটি খোঁজা হচ্ছে</translation>
 <translation id="5471768120198416576">হ্যালো! আমি হলাম আপনার পাঠ্য থেকে ভাষ্য ভয়েস।</translation>
 <translation id="5473333559083690127">নতুন পিন পুনরায় লিখুন</translation>
 <translation id="5481941284378890518">আশেপাশের প্রিন্টারগুলি যোগ করুন</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">সাধারণভাবে কিবোর্ডের পরিবর্তে ভয়েস ব্যবহার</translation>
 <translation id="6234474535228214774">এখনও ইনস্টল করা সম্পূর্ণ হয়নি</translation>
 <translation id="6237816943013845465">আপনাকে আপনার স্ক্রিন রেজোলিউশন পরিবর্তন করতে অনুমতি দেয়</translation>
+<translation id="6238767809035845642">অন্য ডিভাইস থেকে টেক্সট শেয়ার করা হয়েছে</translation>
 <translation id="6238923052227198598">লেটেস্ট নোটটি লক স্ক্রিনে রাখুন</translation>
 <translation id="6239558157302047471">রিলোড এবং ফ্রেম</translation>
 <translation id="6241530762627360640">আপনার সিস্টেমের সঙ্গে যুক্ত করা ব্লুটুথ ডিভাইসগুলির সম্পর্কে তথ্য অ্যাক্সেস করুন এবং কাছাকাছি  ব্লুটুথ ডিভাইসগুলি খুঁজুন।</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">ডাউনলোড বাতিল হয়েছে: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">আপনার Google ইউজারনেম ও পাসওয়ার্ড দিয়ে সিঙ্ক করা পাসওয়ার্ডগুলি এনক্রিপ্ট করুন</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - ডেস্কটপ কন্টেন্ট শেয়ার করেছে</translation>
-<translation id="6580151766480067746">ARC সংস্করণ</translation>
 <translation id="6582080224869403177">আপনার নিরাপত্তা আপগ্রেড করতে <ph name="DEVICE_TYPE" /> রিসেট করুন।</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">প্রাথমিক মাউস বোতাম অদল-বদল করুন</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">উন্নত বানান পরীক্ষা চালু করুন</translation>
 <translation id="7487969577036436319">কোন উপাদান ইনস্টল ইনস্টল নেই</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{সবগুলি &amp;খুলুন}=1{বুকমার্ক &amp;খুলুন}one{সবগুলি (#টি) &amp;খুলুন}other{সবগুলি (#টি) &amp;খুলুন}}</translation>
+<translation id="7489761397368794366">আপনার ডিভাইস থেকে কল করুন</translation>
 <translation id="749028671485790643">ব্যক্তি <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC ঠিকানা</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> এক্সটেনশন হয়ত ব্যক্তিগত ডেটা যেমন পাসওয়ার্ড ও ক্রেডিট কার্ড নম্বরগুলি সহ আপনি যা টাইপ করেন সেসব পাঠ্য সংগ্রহ করতে পারে। আপনি কি এই এক্সটেনশন ব্যবহার করতে চান?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">প্রিন্টারে অ্যাক্সেস দিন</translation>
 <translation id="7510943789645525906">চুরি হওয়া পাসওয়ার্ডের তালিকায় রয়েছে এমন কোনও পাসওয়ার্ড ব্যবহার করলে আপনাকে সতর্ক করে দেয়</translation>
 <translation id="7513029293694390567">সঞ্চিত সার্টিফিকেট ব্যবহার করে ওয়েবসাইটে অটোমেটিক সাইন-ইন করুন। এটি বন্ধ থাকলে, প্রতিবারই একটি ওয়েবসাইটে সাইন-ইনের সময় আপনাকে যাচাইকরণের জন্য বলা হবে।</translation>
+<translation id="7514239104543605883">আপনার ডিভাইসে কপি করুন</translation>
 <translation id="7514365320538308">ডাউনলোড করুন</translation>
 <translation id="7521387064766892559">জাভাস্ক্রিপ্ট</translation>
 <translation id="7522255036471229694">"Ok Google" বলুন</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">ফাইল কাস্ট করুন</translation>
 <translation id="8274924778568117936">আপডেটটি সম্পূর্ণ না হওয়া পর্যন্ত <ph name="DEVICE_TYPE" />টি বন্ধ করবেন না। ইনস্টলেশন হয়ে গেলে <ph name="DEVICE_TYPE" />টি নিজে থেকেই রিস্টার্ট হবে।</translation>
 <translation id="8275038454117074363">আমদানি</translation>
+<translation id="8275080796245127762">আপনার ডিভাইস থেকে কল করুন</translation>
 <translation id="8276560076771292512">ক্যাশে খালি করুন ও কঠিন রলোড</translation>
 <translation id="8281886186245836920">ছেড়ে যান</translation>
 <translation id="8282947398454257691">আপনার অনন্য ডিভাইস সনাক্তকারীকে জানুন</translation>
@@ -5266,6 +5269,7 @@
 <translation id="8758418656925882523">ডিক্টেশন চালু করুন (টাইপ করার জন্য বলুন)</translation>
 <translation id="8759408218731716181">একাধিক সাইন-ইন সেট-আপ করা যাবে না</translation>
 <translation id="8759753423332885148">আরও জানুন৷</translation>
+<translation id="8761945298804995673">এই ব্যবহারকারী আগে থেকেই আছেন</translation>
 <translation id="8762886931014513155">আপনার <ph name="DEVICE_TYPE" /> আপডেট করা প্রয়োজন</translation>
 <translation id="8763927697961133303">USB ডিভাইস</translation>
 <translation id="8767621466733104912">সকল ব্যবহারকারীর জন্য স্বয়ংক্রিয়ভাবে Chrome আপডেট করুন</translation>
@@ -5354,6 +5358,7 @@
 <translation id="8879284080359814990">ট্যাব রূপে &amp;দেখান</translation>
 <translation id="8879921471468674457">সাইন-ইন সংক্রান্ত তথ্য মনে রাখুন</translation>
 <translation id="8881020143150461183">আবার চেষ্টা করুন। প্রযুক্তিগত সহায়তা পেতে <ph name="CARRIER_NAME" />-এর সাথে যোগাযোগ করুন।</translation>
+<translation id="8883273463630735858">টাচপ্যাড অ্যাক্সিলারেশন বিকল্পটি চালু করুন</translation>
 <translation id="8884570509232205463">তোমার ডিভাইস এখন <ph name="UNLOCK_TIME" />-এ লক হয়ে যায়।</translation>
 <translation id="8885197664446363138">Smart Lock অনুপলব্ধ</translation>
 <translation id="8888253246822647887">আপগ্রেড প্রক্রিয়া শেষ হওয়ার পরেই আপনার অ্যাপ চালু হবে। আপগ্রেড প্রক্রিয়াতে কয়েক মিনিট লাগতে পারে।</translation>
diff --git a/chrome/app/resources/generated_resources_ca.xtb b/chrome/app/resources/generated_resources_ca.xtb
index d061247..6a5603d 100644
--- a/chrome/app/resources/generated_resources_ca.xtb
+++ b/chrome/app/resources/generated_resources_ca.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Per accedir a les extensions des de tots els ordinadors, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Amb aquesta acció s'esborraran totes les dades de la clau de seguretat, inclòs el PIN</translation>
 <translation id="1475502736924165259">Tens certificats arxivats que no s'ajusten a cap de les altres categories</translation>
+<translation id="1476088332184200792">Copia-ho al dispositiu</translation>
 <translation id="1476607407192946488">&amp;Configuració d'idioma</translation>
 <translation id="1478340334823509079">Detalls: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">La instal·lació no està activada</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Imprimeix des de la finestra de diàleg del sistema… <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Pregunta'm abans de fer cap enviament (opció recomanada)</translation>
 <translation id="2384436799579181135">S'ha produït un error. Comprova la impressora i torna-ho a provar.</translation>
-<translation id="2386926718981642523">Accedeix a l'Assistent cada vegada que diguis "Ok Google"</translation>
 <translation id="2387458720915042159">Tipus de connexió del servidor intermediari</translation>
 <translation id="2391419135980381625">Tipus de lletra estàndard</translation>
 <translation id="2392369802118427583">Activa</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">Baixa</translation>
 <translation id="2942560570858569904">S'està esperant...</translation>
 <translation id="2942581856830209953">Personalitza aquesta pàgina</translation>
+<translation id="294308617863380348">S'inclouen les galetes de tercers</translation>
 <translation id="2944060181911631861">Envia dades d'ús i de diagnòstic. Ajuda a millorar la teva experiència a Android enviant automàticament a Google dades de diagnòstic, del dispositiu i d''ús d'aplicacions. Aquestes dades ajudaran a millorar l'estabilitat del sistema i de les aplicacions, entre altres característiques. Una part de les dades agregades també serà útil per a les aplicacions i els col·laboradors de Google, com ara els desenvolupadors d'Android. Si tens activada l'opció Activitat al web i en aplicacions addicional, és possible que aquestes dades es desin al teu Compte de Google. <ph name="BEGIN_LINK1" />Més informació<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Afegeix una connexió</translation>
 <translation id="2948300991547862301">Ves a <ph name="PAGE_TITLE" /></translation>
@@ -1354,7 +1355,6 @@
 <translation id="2961695502793809356">Feu clic per anar endavant o manteniu premut per veure l'historial</translation>
 <translation id="2963151496262057773">El connector següent no respon: <ph name="PLUGIN_NAME" />. Voleu aturar-lo?</translation>
 <translation id="2966937470348689686">Gestiona les preferències d'Android</translation>
-<translation id="2972557485845626008">Microprogramari</translation>
 <translation id="2972581237482394796">&amp;Refés</translation>
 <translation id="2973324205039581528">Silencia el lloc web</translation>
 <translation id="2977480621796371840">Suprimeix del grup</translation>
@@ -1610,7 +1610,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separador</translation>
 <translation id="3387614642886316601">Fes servir el corrector ortogràfic millorat</translation>
-<translation id="3393352139658145068">Activa l'Assitent quan algú digui "Ok Google". Per estalviar bateria, la funció "Ok Google" només estarà activada quan el dispositiu estigui connectat a una font d'alimentació.</translation>
 <translation id="3396800784455899911">En fer clic al botó Accepta i continua, acceptes el processament descrit anteriorment per a aquests serveis de Google.</translation>
 <translation id="3399432415385675819">Les notificacions es desactivaran</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertzs): entrellaçat</translation>
@@ -1771,6 +1770,7 @@
 <translation id="3613134908380545408">Mostra <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Obre en una pestanya nova</translation>
 <translation id="3615073365085224194">Toca el sensor d'empremtes digitals amb el dit</translation>
+<translation id="3615579745882581859">S'està analitzant <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;Elimina les dades de navegació...</translation>
 <translation id="3617891479562106823">Els fons de pantalla no estan disponibles. Torna-ho a provar més tard.</translation>
 <translation id="3619115746895587757">Caputxino</translation>
@@ -1886,7 +1886,6 @@
 <translation id="3759933321830434300">Bloquejar elements de pàgines web</translation>
 <translation id="3760460896538743390">Inspecciona la &amp;pàgina de fons</translation>
 <translation id="37613671848467444">Obre en una &amp;finestra d'incògnit</translation>
-<translation id="3764314093345384080">Informació detallada de la compilació</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Es comunica amb un dispositiu USB}other{Es comunica amb # dispositius USB}}</translation>
 <translation id="3765246971671567135">No s'ha pogut llegir la política del mode de demostració sense connexió.</translation>
 <translation id="3768037234834996183">S'estan sincronitzant les preferències...</translation>
@@ -2166,7 +2165,6 @@
 <translation id="4138267921960073861">Mostra els noms d'usuari i les fotos a la pantalla d'inici de sessió</translation>
 <translation id="4142052906269098341">Desbloqueja el dispositiu <ph name="DEVICE_TYPE" /> amb el telèfon. <ph name="LINK_BEGIN" />Més informació<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Obtén una millor qualitat de vídeo i estalvia bateria. El vídeo només es reproduirà a la pantalla compatible amb Cast.</translation>
-<translation id="4145922204387553806">Permet que l'Assistent et mostri informació relacionada amb el que hi ha a la pantalla</translation>
 <translation id="4146026355784316281">Obrir sempre amb el visualitzador del sistema</translation>
 <translation id="4146785383423576110">Restableix i neteja</translation>
 <translation id="4147911968024186208">Torna-ho a provar. Si tornes a veure aquest error, contacta amb el representant del servei d'assistència.</translation>
@@ -2253,6 +2251,7 @@
 <translation id="4297322094678649474">Canvia els idiomes</translation>
 <translation id="4301671483919369635">Aquesta pàgina té permís per editar fitxers</translation>
 <translation id="4303079906735388947">Configura un PIN nou per a la clau de seguretat</translation>
+<translation id="4305402730127028764">Copia al dispositiu <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Les aplicacions s'han de distribuir amb el tipus de contingut "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K (<ph name="NUM_KILOBYTES_LIVE" /> K actius)</translation>
 <translation id="4310139701823742692">El format del fitxer PPD és incorrecte. Revisa'l i torna-ho a provar.</translation>
@@ -2388,7 +2387,6 @@
 <translation id="4534661889221639075">Torna-ho a provar.</translation>
 <translation id="4535127706710932914">Perfil predeterminat</translation>
 <translation id="4535767533210902251">El sensor d'empremtes digitals és la tecla de la part superior dreta del teclat. Toca-la lleugerament amb un dit.</translation>
-<translation id="4538417792467843292">Suprimeix la paraula</translation>
 <translation id="4538684596480161368">Bloqueja sempre els connectors fora de la zona de proves a <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Instal·lat per una política empresarial</translation>
 <translation id="4542520061254486227">Llegir les dades dels llocs <ph name="WEBSITE_1" /> i <ph name="WEBSITE_2" /></translation>
@@ -2933,6 +2931,7 @@
 <translation id="5367091008316207019">S'està llegint el fitxer...</translation>
 <translation id="5368720394188453070">El telèfon està bloquejat. Desbloquegeu-lo per accedir-hi.</translation>
 <translation id="5368779022775404937">Inicia la sessió a <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Activa l'acceleració del ratolí</translation>
 <translation id="5370819323174483825">&amp;Tornar a carregar</translation>
 <translation id="5372529912055771682">El mode d'inscripció proporcionat no és compatible amb aquesta versió del sistema operatiu. Assegureu-vos que estigueu executant la darrera versió i torneu-ho a provar.</translation>
 <translation id="5372579129492968947">Deixa de fixar l'extensió</translation>
@@ -3005,6 +3004,7 @@
 <translation id="5464632865477611176">Executa aquesta vegada</translation>
 <translation id="5464660706533281090">Els usuaris menors d'edat no poden canviar aquesta opció de configuració.</translation>
 <translation id="5466374726908360271">Engan&amp;xa i cerca "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">S'estan cercant usos compartits de fitxers</translation>
 <translation id="5471768120198416576">Hola! Soc la teva veu per a la conversió de text a parla.</translation>
 <translation id="5473333559083690127">Torna a introduir el PIN nou</translation>
 <translation id="5481941284378890518">Afegeix impressores properes</translation>
@@ -3541,6 +3541,7 @@
 <translation id="6233154960150021497">Utilitza la veu en comptes del teclat de manera predeterminada</translation>
 <translation id="6234474535228214774">Instal·lació pendent</translation>
 <translation id="6237816943013845465">Permet ajustar la resolució de pantalla</translation>
+<translation id="6238767809035845642">Text compartit d'un altre dispositiu</translation>
 <translation id="6238923052227198598">Mantén la darrera nota a la pantalla de bloqueig</translation>
 <translation id="6239558157302047471">Torna a carregar el &amp;marc</translation>
 <translation id="6241530762627360640">Accedir a informació sobre els dispositius Bluetooth vinculats al sistema i descobrir dispositius Bluetooth a prop</translation>
@@ -3767,7 +3768,6 @@
 <translation id="6577284282025554716">Baixada cancel·lada: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Encripta les contrasenyes sincronitzades amb el teu nom d'usuari i la teva contrasenya de Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" />: el contingut de l'escriptori es comparteix</translation>
-<translation id="6580151766480067746">Versió d'ARC</translation>
 <translation id="6582080224869403177">Restableix el dispositiu <ph name="DEVICE_TYPE" /> per actualitzar-ne el sistema de seguretat.</translation>
 <translation id="6584878029876017575">Signatura de durada de Microsoft</translation>
 <translation id="6586451623538375658">Canvia el botó principal del ratolí</translation>
@@ -4372,6 +4372,7 @@
 <translation id="7487141338393529395">Activa el corrector ortogràfic millorat</translation>
 <translation id="7487969577036436319">No hi ha cap component instal·lat</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Obre-les totes}=1{&amp;Obre una adreça d'interès}other{&amp;Obre-les totes (#)}}</translation>
+<translation id="7489761397368794366">Truca des del teu dispositiu</translation>
 <translation id="749028671485790643">Persona <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Adreça MAC</translation>
 <translation id="7493386493263658176">És possible que l'extensió <ph name="EXTENSION_NAME" /> recopili tot el que escriviu, incloses les dades personals, com ara les contrasenyes i els números de targetes de crèdit. Voleu fer-la servir?</translation>
@@ -4391,6 +4392,7 @@
 <translation id="7508054832109420082">Dona permís per accedir a les impressores</translation>
 <translation id="7510943789645525906">T'avisa si una contrasenya que utilitzes ha patit una violació de les dades</translation>
 <translation id="7513029293694390567">Inicia la sessió automàticament als llocs web amb les credencials emmagatzemades. Si la funció està desactivada, se't demanarà sempre que confirmis les credencials per iniciar la sessió en un lloc web.</translation>
+<translation id="7514239104543605883">Copia-ho al dispositiu</translation>
 <translation id="7514365320538308">Baixa</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Digueu "Ok Google"</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">Emet el fitxer</translation>
 <translation id="8274924778568117936">No apaguis ni tanquis el dispositiu <ph name="DEVICE_TYPE" /> fins que l'actualització no hagi finalitzat. <ph name="DEVICE_TYPE" /> es reiniciarà un cop finalitzi la instal·lació.</translation>
 <translation id="8275038454117074363">Importa</translation>
+<translation id="8275080796245127762">Truca des del teu dispositiu</translation>
 <translation id="8276560076771292512">Buida la memòria cau i torna a carregar de manera forçada</translation>
 <translation id="8281886186245836920">Omet</translation>
 <translation id="8282947398454257691">Saber l'identificador únic del dispositiu</translation>
@@ -5267,6 +5270,7 @@
 <translation id="8758418656925882523">Activa el dictat (parlar per escriure)</translation>
 <translation id="8759408218731716181">No es pot configurar l'inici de sessió múltiple</translation>
 <translation id="8759753423332885148">Més informació</translation>
+<translation id="8761945298804995673">Aquest usuari ja existeix</translation>
 <translation id="8762886931014513155">S'ha d'actualitzar <ph name="DEVICE_TYPE" /></translation>
 <translation id="8763927697961133303">Dispositiu USB</translation>
 <translation id="8767621466733104912">Actualitza Chrome automàticament per a tots els usuaris</translation>
@@ -5355,6 +5359,7 @@
 <translation id="8879284080359814990">&amp;Mostra com a pestanya</translation>
 <translation id="8879921471468674457">Recorda la informació d'inici de sessió</translation>
 <translation id="8881020143150461183">Torna-ho a provar. Per obtenir assistència tècnica, contacta amb <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Activa l'acceleració del ratolí tàctil</translation>
 <translation id="8884570509232205463">Ara el dispositiu es bloquejarà a les <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock no està disponible</translation>
 <translation id="8888253246822647887">L'aplicació s'obrirà quan finalitzi l'actualització. Les actualitzacions poden tardar uns quants minuts.</translation>
diff --git a/chrome/app/resources/generated_resources_cs.xtb b/chrome/app/resources/generated_resources_cs.xtb
index e999466..388a753 100644
--- a/chrome/app/resources/generated_resources_cs.xtb
+++ b/chrome/app/resources/generated_resources_cs.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Chcete-li rozšíření přenést do všech počítačů, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Touto akcí vymažete veškerá data na bezpečnostním klíči, včetně jeho kódu PIN</translation>
 <translation id="1475502736924165259">Máte založené certifikáty, které se nehodí do žádné z ostatních kategorií</translation>
+<translation id="1476088332184200792">Kopírovat do zařízení</translation>
 <translation id="1476607407192946488">&amp;Jazyková nastavení</translation>
 <translation id="1478340334823509079">Podrobnosti: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Instalace není povolena</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Tisk pomocí dialogového okna systému... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Před odesláním se zeptat (doporučeno)</translation>
 <translation id="2384436799579181135">Došlo k chybě. Zkontrolujte tiskárnu a zkuste to znovu.</translation>
-<translation id="2386926718981642523">Aktivovat Asistenta, kdykoliv řeknete „Ok Google“</translation>
 <translation id="2387458720915042159">Typ připojení k proxy serveru</translation>
 <translation id="2391419135980381625">Standardní písmo</translation>
 <translation id="2392369802118427583">Aktivovat</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">Nízká</translation>
 <translation id="2942560570858569904">Čekání...</translation>
 <translation id="2942581856830209953">Přizpůsobit tuto stránku</translation>
+<translation id="294308617863380348">Soubory cookie třetích stran</translation>
 <translation id="2944060181911631861">Odesílat údaje o využití a diagnostice. Pomozte se zlepšením prostředí Android tím, že budete do Googlu automaticky odesílat diagnostická data a údaje o využití zařízení a aplikací. Tyto údaje nám pomohou se zvyšováním stability systému a aplikací a dalšími vylepšeními. Některá souhrnná data budou moci využít také naši partneři, např. vývojáři aplikací pro Android. Pokud máte zapnuté dodatečné nastavení Aktivita na webu a v aplikacích, mohou se tato data ukládat do vašeho účtu Google. <ph name="BEGIN_LINK1" />Další informace<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Přidat připojení</translation>
 <translation id="2948300991547862301">Přejít na stránku <ph name="PAGE_TITLE" /></translation>
@@ -1354,7 +1355,6 @@
 <translation id="2961695502793809356">Kliknutím přejdete vpřed, přidržením se zobrazí historie</translation>
 <translation id="2963151496262057773">Následující plugin nereaguje: <ph name="PLUGIN_NAME" /> Chcete jej zastavit?</translation>
 <translation id="2966937470348689686">Spravovat nastavení aplikací Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Opakovat</translation>
 <translation id="2973324205039581528">Ztlumit web</translation>
 <translation id="2977480621796371840">Odebrat ze skupiny</translation>
@@ -1612,7 +1612,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Oddělovač</translation>
 <translation id="3387614642886316601">Použít vylepšenou kontrolu pravopisu</translation>
-<translation id="3393352139658145068">Aktivovat Asistenta, když někdo řekne „Ok Google“. Kvůli úspoře energie je příkaz „Ok Google“ zapnutý, jen když je zařízení připojené ke zdroji napájení.</translation>
 <translation id="3396800784455899911">Kliknutím na tlačítko Přijmout a pokračovat vyjadřujete souhlas se zpracováním popsaným výše pro tyto služby Google.</translation>
 <translation id="3399432415385675819">Oznámení budou zakázána</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> × <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hz) – prokládané</translation>
@@ -1773,6 +1772,7 @@
 <translation id="3613134908380545408">Zobrazit <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Otevřít v nové kartě</translation>
 <translation id="3615073365085224194">Dotkněte se prstem snímače otisků prstů</translation>
+<translation id="3615579745882581859">Probíhá kontrola souboru <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;Smazat údaje o prohlížení...</translation>
 <translation id="3617891479562106823">Pozadí nejsou k dispozici. Zkuste to znovu později.</translation>
 <translation id="3619115746895587757">Kapučíno</translation>
@@ -1887,7 +1887,6 @@
 <translation id="3759933321830434300">Blokování částí webových stránek</translation>
 <translation id="3760460896538743390">Prozkoumat stránku na &amp;pozadí</translation>
 <translation id="37613671848467444">Otevřít v &amp;anonymním okně</translation>
-<translation id="3764314093345384080">Podrobné informace o sestavení</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Komunikace se zařízením USB}few{Komunikace se # zařízeními USB}many{Komunikace s # zařízení USB}other{Komunikace s # zařízeními USB}}</translation>
 <translation id="3765246971671567135">Načtení zásady pro offline ukázkový režim se nezdařilo.</translation>
 <translation id="3768037234834996183">Synchronizace předvoleb…</translation>
@@ -2167,7 +2166,6 @@
 <translation id="4138267921960073861">Zobrazit na přihlašovací obrazovce uživatelská jména a fotografie</translation>
 <translation id="4142052906269098341">Odemykejte své zařízení <ph name="DEVICE_TYPE" /> telefonem. <ph name="LINK_BEGIN" />Další informace<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Získejte kvalitnější video a prodlužte životnost baterie. Video se bude přehrávat jen na obrazovce, která podporuje technologii Cast.</translation>
-<translation id="4145922204387553806">Nechat Asistenta zobrazovat informace související s obsahem na obrazovce</translation>
 <translation id="4146026355784316281">Vždy otevřít pomocí systémového prohlížeče</translation>
 <translation id="4146785383423576110">Resetovat a vyčistit</translation>
 <translation id="4147911968024186208">Zkuste to znovu. Pokud se opět zobrazí tato chyba, kontaktujte zástupce podpory.</translation>
@@ -2254,6 +2252,7 @@
 <translation id="4297322094678649474">Změnit jazyky</translation>
 <translation id="4301671483919369635">Tato stránka má povoleno upravovat soubory</translation>
 <translation id="4303079906735388947">Nastavte pro svůj bezpečnostní klíč nový PIN</translation>
+<translation id="4305402730127028764">Kopírovat do zařízení <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Aplikace musí být poskytovány s typem obsahu <ph name="CONTENT_TYPE" /></translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> kB (<ph name="NUM_KILOBYTES_LIVE" /> kB aktivních)</translation>
 <translation id="4310139701823742692">Soubor má nesprávný formát. Zkontrolujte soubor PPD a zkuste to znovu.</translation>
@@ -2389,7 +2388,6 @@
 <translation id="4534661889221639075">Zkuste to znovu.</translation>
 <translation id="4535127706710932914">Výchozí profil</translation>
 <translation id="4535767533210902251">Snímač otisků prstů je klávesa v pravém horním rohu klávesnice. Zlehka se ho dotkněte jakýmkoli prstem.</translation>
-<translation id="4538417792467843292">Smazat slovo</translation>
 <translation id="4538684596480161368">Vždy blokovat rozbalené pluginy u hostitele <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Nainstalováno podnikovými zásadami.</translation>
 <translation id="4542520061254486227">Čtení vašich dat na webech <ph name="WEBSITE_1" /> a <ph name="WEBSITE_2" /></translation>
@@ -2933,6 +2931,7 @@
 <translation id="5367091008316207019">Čtení souboru..</translation>
 <translation id="5368720394188453070">Telefon je uzamčen. Chcete-li pokračovat, odemkněte jej.</translation>
 <translation id="5368779022775404937">Přihlaste se do domény <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Zapnout zrychlení myši</translation>
 <translation id="5370819323174483825">Načíst &amp;znovu</translation>
 <translation id="5372529912055771682">Uvedený režim registrace není touto verzí operačního systému podporován. Zkontrolujte prosím, zda máte spuštěnou nejnovější verzi, a zkuste to znovu.</translation>
 <translation id="5372579129492968947">Odepnout rozšíření</translation>
@@ -3005,6 +3004,7 @@
 <translation id="5464632865477611176">Tentokrát spustit</translation>
 <translation id="5464660706533281090">Dětský uživatel toto nastavení nemůže změnit.</translation>
 <translation id="5466374726908360271">Vl&amp;ožit a vyhledat výraz „<ph name="SEARCH_TERMS" />“</translation>
+<translation id="5468173180030470402">Vyhledávání sdílených úložišť</translation>
 <translation id="5471768120198416576">Zdravím vás. Jsem váš hlas převodu textu na řeč.</translation>
 <translation id="5473333559083690127">Znovu zadejte nový PIN</translation>
 <translation id="5481941284378890518">Přidat tiskárny v okolí</translation>
@@ -3540,6 +3540,7 @@
 <translation id="6233154960150021497">Ve výchozím nastavení používat místo klávesnice hlas</translation>
 <translation id="6234474535228214774">Čeká se na instalaci</translation>
 <translation id="6237816943013845465">Umožňuje upravit rozlišení obrazovky</translation>
+<translation id="6238767809035845642">Text sdílený z jiného zařízení</translation>
 <translation id="6238923052227198598">Zobrazovat poslední poznámku na obrazovce uzamčení</translation>
 <translation id="6239558157302047471">Znovu načíst &amp;rámec</translation>
 <translation id="6241530762627360640">Přístup k informacím o zařízeních Bluetooth spárovaných s vaším systémem a objevování zařízení Bluetooth v okolí</translation>
@@ -3766,7 +3767,6 @@
 <translation id="6577284282025554716">Stahování zrušeno: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Šifrovat synchronizovaná hesla pomocí vašeho uživatelského jména a hesla</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – sdílí obsah plochy</translation>
-<translation id="6580151766480067746">Verze ARC</translation>
 <translation id="6582080224869403177">Resetujte zařízení <ph name="DEVICE_TYPE" />, aby se upgradovalo zabezpečení</translation>
 <translation id="6584878029876017575">Životnost podepisování Microsoft</translation>
 <translation id="6586451623538375658">Zaměnit primární tlačítko myši</translation>
@@ -4371,6 +4371,7 @@
 <translation id="7487141338393529395">Zapnout vylepšenou kontrolu pravopisu</translation>
 <translation id="7487969577036436319">Nejsou nainstalovány žádné komponenty</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Otevřít vše}=1{&amp;Otevřít záložku}few{&amp;Otevřít vše (#)}many{&amp;Otevřít vše (#)}other{&amp;Otevřít vše (#)}}</translation>
+<translation id="7489761397368794366">Zavolat ze zařízení</translation>
 <translation id="749028671485790643">Osoba <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Adresa MAC</translation>
 <translation id="7493386493263658176">Rozšíření <ph name="EXTENSION_NAME" /> může shromažďovat veškerý text, který napíšete, včetně osobních údajů, jako jsou hesla nebo čísla platebních karet. Chcete toto rozšíření použít?</translation>
@@ -4390,6 +4391,7 @@
 <translation id="7508054832109420082">Udělit přístup k tiskárnám</translation>
 <translation id="7510943789645525906">Upozorní vás, pokud vaše heslo bylo součástí úniku dat</translation>
 <translation id="7513029293694390567">Přihlašovat se na weby automaticky pomocí uložených identifikačních údajů. Když je tato funkce vypnutá, budete před každým přihlášením na web požádáni o potvrzení.</translation>
+<translation id="7514239104543605883">Kopírovat do zařízení</translation>
 <translation id="7514365320538308">Stáhnout</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Řekněte „Ok Google“.</translation>
@@ -4945,6 +4947,7 @@
 <translation id="8274332263553132018">Odešlete soubor</translation>
 <translation id="8274924778568117936">V průběhu aktualizace <ph name="DEVICE_TYPE" /> nevypínejte ani nezavírejte. Po dokončení instalace se <ph name="DEVICE_TYPE" /> restartuje.</translation>
 <translation id="8275038454117074363">Importovat</translation>
+<translation id="8275080796245127762">Zavolat ze zařízení</translation>
 <translation id="8276560076771292512">Vymazání mezipaměti a úplné opětovné načtení</translation>
 <translation id="8281886186245836920">Přeskočit</translation>
 <translation id="8282947398454257691">Znát jedinečný identifikátor vašeho zařízení</translation>
@@ -5265,6 +5268,7 @@
 <translation id="8758418656925882523">Povolit diktování (hlasové zadávání textu)</translation>
 <translation id="8759408218731716181">Vícenásobné přihlášení nelze nastavit</translation>
 <translation id="8759753423332885148">Další informace</translation>
+<translation id="8761945298804995673">Tento uživatel již existuje</translation>
 <translation id="8762886931014513155">Vaše zařízení <ph name="DEVICE_TYPE" /> vyžaduje aktualizaci</translation>
 <translation id="8763927697961133303">Zařízení USB</translation>
 <translation id="8767621466733104912">Automaticky aktualizovat Chrome pro všechny uživatele</translation>
@@ -5353,6 +5357,7 @@
 <translation id="8879284080359814990">Zobrazit jako &amp;kartu</translation>
 <translation id="8879921471468674457">Zapamatovat si přihlašovací údaje</translation>
 <translation id="8881020143150461183">Zkuste to znovu. Se žádostmi o technickou podporu se obracejte na operátora <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Zapnout zrychlení touchpadu</translation>
 <translation id="8884570509232205463">Zařízení se uzamkne v <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Funkce Smart Lock není k dispozici</translation>
 <translation id="8888253246822647887">Aplikace se spustí po dokončení upgradu. Upgrade může trvat několik minut.</translation>
diff --git a/chrome/app/resources/generated_resources_da.xtb b/chrome/app/resources/generated_resources_da.xtb
index 2037736..cd8bf56 100644
--- a/chrome/app/resources/generated_resources_da.xtb
+++ b/chrome/app/resources/generated_resources_da.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213"><ph name="SIGN_IN_LINK" /> for at få dine udvidelser på alle dine computere.</translation>
 <translation id="1470967055429794975">Dette sletter alle data på sikkerhedsnøglen, herunder pinkoden</translation>
 <translation id="1475502736924165259">Du har lagrede certifikater, som ikke passer i nogen af de andre kategorier</translation>
+<translation id="1476088332184200792">Kopiér til din enhed</translation>
 <translation id="1476607407192946488">&amp;Sprogindstillinger</translation>
 <translation id="1478340334823509079">Detaljer: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Installationen er ikke aktiveret</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Dialogboks til Udskriv via system... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Spørg inden afsendelse (anbefales)</translation>
 <translation id="2384436799579181135">Der opstod en fejl. Tjek din printer, og prøv igen.</translation>
-<translation id="2386926718981642523">Få adgang til din assistent, hver gang du siger "Ok Google"</translation>
 <translation id="2387458720915042159">Proxy-forbindelsestype</translation>
 <translation id="2391419135980381625">Standardskriftstørrelse</translation>
 <translation id="2392369802118427583">Aktivér</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Lav</translation>
 <translation id="2942560570858569904">Venter...</translation>
 <translation id="2942581856830209953">Tilpas denne side</translation>
+<translation id="294308617863380348">Omfatter cookies fra tredjeparter</translation>
 <translation id="2944060181911631861">Send brugs- og diagnosticeringsdata. Hjælp med at forbedre din Android-oplevelse ved automatisk at sende diagnosticerings- og enhedsdata samt data om brug af apps til Google. Dataene bruges til forbedring af bl.a. systemets og appens stabilitet. Visse samlede data hjælper også Google-apps og -partnere, f.eks. Android-udviklere. Hvis indstillingen til yderligere web- og appaktivitet er aktiveret, gemmes disse data muligvis på din Google-konto. <ph name="BEGIN_LINK1" />Få flere oplysninger<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Tilføj forbindelse</translation>
 <translation id="2948300991547862301">Gå til <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Klik for at gå frem. Hold knappen inde for at se historikken.</translation>
 <translation id="2963151496262057773">Følgende plugins svarer ikke: <ph name="PLUGIN_NAME" />Vil du stoppe det?</translation>
 <translation id="2966937470348689686">Administrer Android-præferencer</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Annuller fortryd</translation>
 <translation id="2973324205039581528">Slå lyden fra på et website</translation>
 <translation id="2977480621796371840">Fjern fra gruppe</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Separator</translation>
 <translation id="3387614642886316601">Brug forbedret stavekontrol</translation>
-<translation id="3393352139658145068">Aktivér assistenten, når nogen siger “Ok Google”. For at spare på batteriet er “Ok Google” kun aktiveret, når din enhed er sluttet til en strømkilde.</translation>
 <translation id="3396800784455899911">Når du klikker på knappen "Acceptér og fortsæt", accepterer du den behandling, der er beskrevet ovenfor, for disse Google-tjenester.</translation>
 <translation id="3399432415385675819">Notifikationer deaktiveres</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" />x<ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertz) – sammenflettet</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Vis <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Åbn på ny fane</translation>
 <translation id="3615073365085224194">Tryk på fingeraftrykslæseren med din finger</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> scannes.</translation>
 <translation id="3616741288025931835">&amp;Slet browserdata...</translation>
 <translation id="3617891479562106823">Baggrunde er utilgængelige. Prøv igen senere.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Blokere dele af websiderne</translation>
 <translation id="3760460896538743390">Undersøg &amp;baggrundsside</translation>
 <translation id="37613671848467444">Åbn i &amp;inkognitovindue</translation>
-<translation id="3764314093345384080">Detaljerede buildoplysninger</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Kommuniker med en USB-enhed}one{Kommuniker med # USB-enheder}other{Kommuniker med # USB-enheder}}</translation>
 <translation id="3765246971671567135">Politikken for offlinedemotilstand kunne ikke læses.</translation>
 <translation id="3768037234834996183">Synkroniserer dine præferencer...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Vis brugernavne og billeder på loginskærmen</translation>
 <translation id="4142052906269098341">Lås din <ph name="DEVICE_TYPE" /> op med din telefon. <ph name="LINK_BEGIN" />Få flere oplysninger<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Se video i bedre kvalitet, og forlæng batteritiden. Der afspilles kun video på din Cast-kompatible skærm.</translation>
-<translation id="4145922204387553806">Tillad, at assistenten viser dig relaterede oplysninger til det, der vises på din skærm</translation>
 <translation id="4146026355784316281">Åbn altid med systemets visningsprogram</translation>
 <translation id="4146785383423576110">Nulstil og ryd op</translation>
 <translation id="4147911968024186208">Prøv igen. Hvis du ser denne fejl igen, skal du kontakte din supportrepræsentant.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Skift sprog</translation>
 <translation id="4301671483919369635">Denne side har tilladelse til at redigere filer</translation>
 <translation id="4303079906735388947">Opret en ny pinkode til din sikkerhedsnøgle</translation>
+<translation id="4305402730127028764">Kopiér til <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Apps skal downloades med indholdstypen "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K live)</translation>
 <translation id="4310139701823742692">Filen har et forkert format. Tjek PPD-filen, og prøv igen.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Prøv igen.</translation>
 <translation id="4535127706710932914">Standardprofil</translation>
 <translation id="4535767533210902251">Fingeraftrykslæseren er tasten øverst til højre på dit tastatur. Tryk let på den med en finger.</translation>
-<translation id="4538417792467843292">Slet ord</translation>
 <translation id="4538684596480161368">Bloker altid plugins, der ikke er gemt i sandbox, på <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Installeret af virksomhedspolitik.</translation>
 <translation id="4542520061254486227">Læs dine data på <ph name="WEBSITE_1" /> og <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Læser fil...</translation>
 <translation id="5368720394188453070">Din telefon er låst. Lås den op for at få adgang.</translation>
 <translation id="5368779022775404937">Log ind på <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Aktivér acceleration af mus</translation>
 <translation id="5370819323174483825">&amp;Opdater</translation>
 <translation id="5372529912055771682">Den medfølgende tilstand for tilmelding understøttes ikke af denne version af operativsystemet. Sørg for, at du kører den nyeste version, og prøv igen.</translation>
 <translation id="5372579129492968947">Frigør udvidelse</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Kør nu</translation>
 <translation id="5464660706533281090">Denne indstilling kan ikke ændres af en bruger, som er et barn.</translation>
 <translation id="5466374726908360271">Ind&amp;sæt, og søg efter "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Søger efter fildelinger</translation>
 <translation id="5471768120198416576">Hej! Jeg er din stemme til oplæsning.</translation>
 <translation id="5473333559083690127">Angiv ny pinkode igen</translation>
 <translation id="5481941284378890518">Tilføj printere i nærheden</translation>
@@ -3543,6 +3543,7 @@
 <translation id="6233154960150021497">Brug stemmen som standard i stedet for tastaturet</translation>
 <translation id="6234474535228214774">Installation afventer</translation>
 <translation id="6237816943013845465">Giver dig mulighed for at justere skærmopløsningen</translation>
+<translation id="6238767809035845642">Tekst, der er delt fra en anden enhed</translation>
 <translation id="6238923052227198598">Behold den nyeste note på låseskærmen</translation>
 <translation id="6239558157302047471">Genindlæs &amp;ramme</translation>
 <translation id="6241530762627360640">Få adgang til oplysninger om Bluetooth-enheder, der er parret med dit system, og registrér Bluetooth-enheder i nærheden.</translation>
@@ -3769,7 +3770,6 @@
 <translation id="6577284282025554716">Downloaden blev annulleret: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Kryptér synkroniserede adgangskoder med brugernavnet og adgangskoden til din Google-konto</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – skrivebordsindholdet deles</translation>
-<translation id="6580151766480067746">ARC-version</translation>
 <translation id="6582080224869403177">Nulstil din <ph name="DEVICE_TYPE" /> for at opgradere din beskyttelse.</translation>
 <translation id="6584878029876017575">Microsoft-signering af levetid</translation>
 <translation id="6586451623538375658">Skift primær museknap</translation>
@@ -4066,7 +4066,7 @@
 <translation id="7031962166228839643">TPM forberedes. Vent lidt (dette kan tage et par minutter)...</translation>
 <translation id="7037509989619051237">Tekst til eksempel på oplæsning</translation>
 <translation id="7039326228527141150">Få adgang til USB-enheder fra <ph name="VENDOR_NAME" /></translation>
-<translation id="7039912931802252762">Microsoft Smart Card-logon</translation>
+<translation id="7039912931802252762">Logon med Microsoft-chipkort</translation>
 <translation id="7040230719604914234">Udbyder</translation>
 <translation id="7043108582968290193">Udført. Der blev ikke fundet nogen ikke-kompatible apps.</translation>
 <translation id="7044124535091449260">Få flere oplysninger om websiteadgang</translation>
@@ -4374,6 +4374,7 @@
 <translation id="7487141338393529395">Aktivér forbedret stavekontrol</translation>
 <translation id="7487969577036436319">Der er ikke installeret nogen komponenter</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Åbn alle}=1{&amp;Åbn bogmærke}one{&amp;Åbn (#)}other{&amp;Åbn alle (#)}}</translation>
+<translation id="7489761397368794366">Ring fra din enhed</translation>
 <translation id="749028671485790643">Person <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-adresse</translation>
 <translation id="7493386493263658176">Udvidelsen <ph name="EXTENSION_NAME" /> indsamler muligvis al den tekst, du indtaster, herunder personlige oplysninger såsom adgangskoder og kreditkortnumre. Vil du bruge denne udvidelse?</translation>
@@ -4393,6 +4394,7 @@
 <translation id="7508054832109420082">Giv adgang til printere</translation>
 <translation id="7510943789645525906">Advarer dig, hvis en adgangskode, du bruger, har været berørt af et brud på datasikkerheden</translation>
 <translation id="7513029293694390567">Log automatisk ind på websites ved hjælp af gemte loginoplysninger. Hvis funktionen er slået fra, bliver du bedt om bekræftelse, hver gang du vil logge ind på et website.</translation>
+<translation id="7514239104543605883">Kopiér til din enhed</translation>
 <translation id="7514365320538308">Download</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Sig "Ok Google".</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Cast fil</translation>
 <translation id="8274924778568117936">Undgå at slukke eller lukke din <ph name="DEVICE_TYPE" />, før opdateringen er færdig. Din <ph name="DEVICE_TYPE" /> genstarter, når installationen er fuldført.</translation>
 <translation id="8275038454117074363">Importer</translation>
+<translation id="8275080796245127762">Ring fra din enhed</translation>
 <translation id="8276560076771292512">Tøm cache og genindlæs fuldstændig</translation>
 <translation id="8281886186245836920">Spring over</translation>
 <translation id="8282947398454257691">Kende dit unikke enheds-id</translation>
@@ -5020,7 +5023,7 @@
 <translation id="839736845446313156">Registrer</translation>
 <translation id="8398877366907290961">Fortsæt alligevel</translation>
 <translation id="8400146488506985033">Administrer personer</translation>
-<translation id="8401432541486058167">Brug den pinkode, der er hører til dit Smart Card.</translation>
+<translation id="8401432541486058167">Brug den pinkode, der hører til dit chipkort.</translation>
 <translation id="8405046151008197676">Få højdepunkter fra den seneste opdatering</translation>
 <translation id="8410775397654368139">Google Play</translation>
 <translation id="8413385045638830869">Spørg først (anbefales)</translation>
@@ -5269,6 +5272,7 @@
 <translation id="8758418656925882523">Aktivér diktering (tal for at skrive)</translation>
 <translation id="8759408218731716181">Samlet login fra flere konti kan ikke konfigureres</translation>
 <translation id="8759753423332885148">Få flere oplysninger.</translation>
+<translation id="8761945298804995673">Denne bruger eksisterer allerede</translation>
 <translation id="8762886931014513155">Din <ph name="DEVICE_TYPE" /> skal opdateres</translation>
 <translation id="8763927697961133303">USB-enhed</translation>
 <translation id="8767621466733104912">Opdater Chrome automatisk for alle brugere</translation>
@@ -5357,6 +5361,7 @@
 <translation id="8879284080359814990">&amp;Vis som fane</translation>
 <translation id="8879921471468674457">Husk loginoplysninger</translation>
 <translation id="8881020143150461183">Prøv igen. Kontakt <ph name="CARRIER_NAME" /> for at få teknisk support.</translation>
+<translation id="8883273463630735858">Aktivér acceleration af touchpad</translation>
 <translation id="8884570509232205463">Din enhed låses nu kl. <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock er ikke tilgængelig</translation>
 <translation id="8888253246822647887">Din app åbner, når opgraderingen er fuldført. Opgraderinger kan tage et par minutter.</translation>
diff --git a/chrome/app/resources/generated_resources_de.xtb b/chrome/app/resources/generated_resources_de.xtb
index a97416ae..a1eb076 100644
--- a/chrome/app/resources/generated_resources_de.xtb
+++ b/chrome/app/resources/generated_resources_de.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Um die Erweiterungen auf allen Ihren Computern zu nutzen, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Damit werden alle Daten auf dem Sicherheitsschlüssel einschließlich seiner PIN gelöscht.</translation>
 <translation id="1475502736924165259">Einige Ihrer gespeicherten Zertifikate passen zu keiner der anderen Kategorien</translation>
+<translation id="1476088332184200792">Auf mein Gerät kopieren</translation>
 <translation id="1476607407192946488">&amp;Spracheinstellungen</translation>
 <translation id="1478340334823509079">Details: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Die Installation ist nicht aktiviert</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">Über das Systemdialogfeld drucken... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Vor dem Senden nachfragen (empfohlen)</translation>
 <translation id="2384436799579181135">Ein Fehler ist aufgetreten. Bitte überprüfen Sie Ihren Drucker und versuchen Sie es noch einmal.</translation>
-<translation id="2386926718981642523">Mit "Ok Google" können Sie jederzeit auf Assistant zugreifen</translation>
 <translation id="2387458720915042159">Proxy-Verbindungstyp</translation>
 <translation id="2391419135980381625">Standardschrift</translation>
 <translation id="2392369802118427583">Aktivieren</translation>
@@ -1337,6 +1337,7 @@
 <translation id="2941112035454246133">Niedrig</translation>
 <translation id="2942560570858569904">Bitte warten...</translation>
 <translation id="2942581856830209953">Diese Seite anpassen</translation>
+<translation id="294308617863380348">Einschließlich Drittanbieter-Cookies</translation>
 <translation id="2944060181911631861">Sie haben die Möglichkeit, Nutzungs- und Diagnosedaten zu senden. Sie können uns helfen, Android zu verbessern, indem Sie zulassen, dass Diagnose- sowie Geräte- und App-Nutzungsdaten automatisch an Google gesendet werden. Die Daten helfen unter anderem dabei, die Stabilität des Systems und der Apps zu verbessern. Einige aggregierte Daten sind auch für Apps und Partner von Google, beispielsweise Android-Entwickler, nützlich. Wenn zusätzlich die Einstellung "Web- &amp; App-Aktivitäten" aktiviert ist, werden diese Daten eventuell in Ihrem Google-Konto gespeichert. <ph name="BEGIN_LINK1" />Weitere Informationen<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Verbindung hinzufügen</translation>
 <translation id="2948300991547862301">Zu <ph name="PAGE_TITLE" /> wechseln</translation>
@@ -1351,7 +1352,6 @@
 <translation id="2961695502793809356">Klicken, um weiterzugehen. Gedrückt halten, um den Verlauf aufzurufen</translation>
 <translation id="2963151496262057773">Das folgende Plug-in reagiert nicht: <ph name="PLUGIN_NAME" />. Möchten Sie es anhalten?</translation>
 <translation id="2966937470348689686">Android-Einstellungen verwalten</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Wiederholen</translation>
 <translation id="2973324205039581528">Website stummschalten</translation>
 <translation id="2977480621796371840">Aus Gruppe entfernen</translation>
@@ -1609,7 +1609,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Trennzeichen</translation>
 <translation id="3387614642886316601">Erweiterte Rechtschreibprüfung verwenden</translation>
-<translation id="3393352139658145068">Assistant wird aktiviert, sobald jemand "Ok Google" sagt. Damit der Akku geschont wird, wird "Ok Google" nur aktiviert, wenn Ihr Gerät an eine Stromquelle angeschlossen ist.</translation>
 <translation id="3396800784455899911">Wenn Sie auf die Schaltfläche "Akzeptieren und fortfahren" klicken, willigen Sie damit in die oben für diese Google-Dienste beschriebene Verarbeitung Ihrer Daten ein.</translation>
 <translation id="3399432415385675819">Benachrichtigungen werden deaktiviert</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) – Zeilensprung</translation>
@@ -1770,6 +1769,7 @@
 <translation id="3613134908380545408">"<ph name="FOLDER_NAME" />" anzeigen</translation>
 <translation id="3613422051106148727">In &amp;neuem Tab öffnen</translation>
 <translation id="3615073365085224194">Berühren Sie den Fingerabdrucksensor mit dem Finger</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> wird gegenwärtig gescannt</translation>
 <translation id="3616741288025931835">&amp;Browserdaten löschen...</translation>
 <translation id="3617891479562106823">Hintergründe sind nicht verfügbar. Bitte versuchen Sie es später noch einmal.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1884,7 +1884,6 @@
 <translation id="3759933321830434300">Teile von Webseiten blockieren</translation>
 <translation id="3760460896538743390">&amp;Hintergrundseite prüfen</translation>
 <translation id="37613671848467444">In &amp;Inkognito-Fenster öffnen</translation>
-<translation id="3764314093345384080">Detaillierte Build-Informationen</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Kommunikation mit einem USB-Gerät}other{Kommunikation mit # USB-Geräten}}</translation>
 <translation id="3765246971671567135">Richtlinie für den Offlinedemomodus konnte nicht verarbeitet werden.</translation>
 <translation id="3768037234834996183">Ihre Einstellungen werden synchronisiert...</translation>
@@ -2165,7 +2164,6 @@
 <translation id="4138267921960073861">Nutzernamen und Fotos auf der Anmeldeseite anzeigen</translation>
 <translation id="4142052906269098341"><ph name="DEVICE_TYPE" /> mit dem Smartphone entsperren. <ph name="LINK_BEGIN" />Weitere Informationen<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Bessere Videoqualität und längere Akkulaufzeit. Videos werden nur auf Ihrem für Google Cast optimierten Gerät abgespielt.</translation>
-<translation id="4145922204387553806">Zulassen, dass Assistant Ihnen Informationen zu den Inhalten auf Ihrem Bildschirm anzeigt</translation>
 <translation id="4146026355784316281">Immer mit System Viewer öffnen</translation>
 <translation id="4146785383423576110">Zurücksetzen und bereinigen</translation>
 <translation id="4147911968024186208">Bitte versuchen Sie es noch einmal. Wenn dieser Fehler wieder auftritt, wenden Sie sich an Ihren Support-Mitarbeiter.</translation>
@@ -2252,6 +2250,7 @@
 <translation id="4297322094678649474">Sprachen ändern</translation>
 <translation id="4301671483919369635">Diese Website ist berechtigt, Dateien zu bearbeiten</translation>
 <translation id="4303079906735388947">Richten Sie eine neue PIN für Ihren Sicherheitsschlüssel ein</translation>
+<translation id="4305402730127028764">Auf <ph name="DEVICE_NAME" /> kopieren</translation>
 <translation id="4306119971288449206">Für Apps muss der Inhaltstyp "<ph name="CONTENT_TYPE" />" bereitgestellt werden</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> KB (<ph name="NUM_KILOBYTES_LIVE" /> KB live)</translation>
 <translation id="4310139701823742692">Die Datei hat das falsche Format. Prüfen Sie die PPD-Datei und versuchen Sie es noch einmal.</translation>
@@ -2387,7 +2386,6 @@
 <translation id="4534661889221639075">Versuchen Sie es noch einmal.</translation>
 <translation id="4535127706710932914">Standardprofil</translation>
 <translation id="4535767533210902251">Der Fingerabdrucksensor ist die Taste rechts oben auf der Tastatur. Berühren Sie ihn leicht mit dem Finger.</translation>
-<translation id="4538417792467843292">Wort löschen</translation>
 <translation id="4538684596480161368">Plug-ins ohne Sandbox auf <ph name="HOST" /> immer blockieren</translation>
 <translation id="4538792345715658285">Durch Unternehmensrichtlinie installiert</translation>
 <translation id="4542520061254486227">Ihre Daten auf <ph name="WEBSITE_1" /> und <ph name="WEBSITE_2" /> lesen</translation>
@@ -2931,6 +2929,7 @@
 <translation id="5367091008316207019">Datei wird gelesen...</translation>
 <translation id="5368720394188453070">Ihr Telefon ist gesperrt. Entsperren Sie es, um fortzufahren.</translation>
 <translation id="5368779022775404937">Anmelden bei <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Mausbeschleunigung aktivieren</translation>
 <translation id="5370819323174483825">&amp;Neu laden</translation>
 <translation id="5372529912055771682">Der bereitgestellte Anmeldemodus wird von dieser Betriebssystemversion nicht unterstützt. Führen Sie eine Aktualisierung auf die neueste Version aus und versuchen Sie es dann erneut.</translation>
 <translation id="5372579129492968947">Erweiterung loslösen</translation>
@@ -3003,6 +3002,7 @@
 <translation id="5464632865477611176">Dieses Mal ausführen</translation>
 <translation id="5464660706533281090">Diese Einstellung kann nicht von einem Kind geändert werden.</translation>
 <translation id="5466374726908360271">Ei&amp;nfügen und nach "<ph name="SEARCH_TERMS" />" suchen</translation>
+<translation id="5468173180030470402">Nach Dateifreigaben wird gesucht</translation>
 <translation id="5471768120198416576">Hallo! Ich bin die Stimme Ihrer Sprachausgabe.</translation>
 <translation id="5473333559083690127">Neue PIN noch einmal eingeben</translation>
 <translation id="5481941284378890518">Drucker in der Nähe hinzufügen</translation>
@@ -3538,6 +3538,7 @@
 <translation id="6233154960150021497">Standardmäßig Sprachsteuerung anstatt Tastatur verwenden</translation>
 <translation id="6234474535228214774">Installation ausstehend</translation>
 <translation id="6237816943013845465">Ermöglicht die Anpassung der Bildschirmauflösung</translation>
+<translation id="6238767809035845642">Text, der über ein anderes Gerät geteilt wurde</translation>
 <translation id="6238923052227198598">Neueste Notiz auf Sperrbildschirm anzeigen</translation>
 <translation id="6239558157302047471">&amp;Frame neu laden</translation>
 <translation id="6241530762627360640">Informationen zu mit ihrem System gekoppelten Bluetooth-Geräten abrufen und Bluetooth-Geräte in der Nähe finden</translation>
@@ -3764,7 +3765,6 @@
 <translation id="6577284282025554716">Download abgebrochen: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Synchronisierte Passwörter mit meinem Google-Nutzernamen und meinem Passwort verschlüsseln</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – Desktopinhalte geteilt</translation>
-<translation id="6580151766480067746">ARC-Version</translation>
 <translation id="6582080224869403177">Setzen Sie Ihr <ph name="DEVICE_TYPE" /> zurück, um das Sicherheitsupdate durchzuführen.</translation>
 <translation id="6584878029876017575">Microsoft-Lebensdauersignatur</translation>
 <translation id="6586451623538375658">Primäre Maustaste tauschen</translation>
@@ -4369,6 +4369,7 @@
 <translation id="7487141338393529395">Erweiterte Rechtschreibprüfung aktivieren</translation>
 <translation id="7487969577036436319">Es sind keine Komponenten installiert.</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{Alle &amp;öffnen}=1{Lesezeichen &amp;öffnen}other{Alle (#) &amp;öffnen}}</translation>
+<translation id="7489761397368794366">Über mein Gerät anrufen</translation>
 <translation id="749028671485790643">Profil <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-Adresse</translation>
 <translation id="7493386493263658176">Die Erweiterung <ph name="EXTENSION_NAME" /> erfasst unter Umständen alle von Ihnen eingegebenen Textinhalte, einschließlich personenbezogener Daten wie Passwörter und Kreditkartennummern. Möchten Sie diese Erweiterung verwenden?</translation>
@@ -4388,6 +4389,7 @@
 <translation id="7508054832109420082">Zugriff auf Drucker geben</translation>
 <translation id="7510943789645525906">Warnt Sie, wenn eines Ihrer Passwörter von einer Datenpanne betroffen ist</translation>
 <translation id="7513029293694390567">Sie werden mithilfe gespeicherter Anmeldedaten automatisch auf Websites angemeldet. Wenn diese Funktion deaktiviert ist, werden Sie bei jeder Anmeldung auf einer Website nach einer Bestätigung gefragt.</translation>
+<translation id="7514239104543605883">Auf mein Gerät kopieren</translation>
 <translation id="7514365320538308">Herunterladen</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Sagen Sie "Ok Google".</translation>
@@ -4943,6 +4945,7 @@
 <translation id="8274332263553132018">Datei streamen</translation>
 <translation id="8274924778568117936">Schalten Sie Ihr <ph name="DEVICE_TYPE" /> nicht aus bzw. schließen Sie es nicht, bis das Update abgeschlossen ist. Nach Abschluss der Installation wird Ihr <ph name="DEVICE_TYPE" /> neu gestartet.</translation>
 <translation id="8275038454117074363">Importieren</translation>
+<translation id="8275080796245127762">Über mein Gerät anrufen</translation>
 <translation id="8276560076771292512">Cache leeren und vollständig aktualisieren</translation>
 <translation id="8281886186245836920">Überspringen</translation>
 <translation id="8282947398454257691">Ihre eindeutige Geräte-ID abrufen</translation>
@@ -5263,6 +5266,7 @@
 <translation id="8758418656925882523">Diktierfunktion aktivieren (zum Tippen sprechen)</translation>
 <translation id="8759408218731716181">Mehrfachanmeldung kann nicht eingerichtet werden</translation>
 <translation id="8759753423332885148">Weitere Informationen</translation>
+<translation id="8761945298804995673">Dieser Nutzer ist bereits vorhanden</translation>
 <translation id="8762886931014513155">Ihr <ph name="DEVICE_TYPE" /> muss aktualisiert werden</translation>
 <translation id="8763927697961133303">USB-Gerät</translation>
 <translation id="8767621466733104912">Chrome automatisch für alle Nutzer aktualisieren</translation>
@@ -5351,6 +5355,7 @@
 <translation id="8879284080359814990">Tab "Anzeigen al&amp;s"</translation>
 <translation id="8879921471468674457">Anmeldedaten speichern</translation>
 <translation id="8881020143150461183">Versuchen Sie es noch einmal. Für technischen Support wenden Sie sich bitte an <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Touchpadbeschleunigung aktivieren</translation>
 <translation id="8884570509232205463">Das Gerät wird jetzt um <ph name="UNLOCK_TIME" /> gesperrt.</translation>
 <translation id="8885197664446363138">Smart Lock ist nicht verfügbar.</translation>
 <translation id="8888253246822647887">Ihre App wird geöffnet, wenn das Upgrade abgeschlossen ist. Upgrades können ein paar Minuten dauern.</translation>
diff --git a/chrome/app/resources/generated_resources_el.xtb b/chrome/app/resources/generated_resources_el.xtb
index 3c093db..c819ab9 100644
--- a/chrome/app/resources/generated_resources_el.xtb
+++ b/chrome/app/resources/generated_resources_el.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Για να εμφανίζονται οι επεκτάσεις σε όλους τους υπολογιστές, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Με αυτήν την ενέργεια θα διαγραφούν όλα τα δεδομένα στο κλειδί ασφαλείας, συμπεριλαμβανομένου του PIN του</translation>
 <translation id="1475502736924165259">Έχετε καταχωρίσει πιστοποιητικά που δεν αντιστοιχούν σε καμία από τις άλλες κατηγορίες</translation>
+<translation id="1476088332184200792">Αντιγραφή στη συσκευή σας</translation>
 <translation id="1476607407192946488">Ρυθμίσεις &amp;γλώσσας</translation>
 <translation id="1478340334823509079">Λεπτομέρειες: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Η εγκατάσταση δεν έχει ενεργοποιηθεί</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Εκτύπωση με χρήση του παραθύρου διαλόγου συστήματος... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Ερώτηση πριν από την αποστολή (συνιστάται)</translation>
 <translation id="2384436799579181135">Προέκυψε σφάλμα. Ελέγξτε τον εκτυπωτή σας και δοκιμάστε ξανά.</translation>
-<translation id="2386926718981642523">Αποκτήστε πρόσβαση στον Βοηθό ανά πάσα στιγμή λέγοντας "Ok Google"</translation>
 <translation id="2387458720915042159">Τύπος σύνδεσης διακομιστή μεσολάβησης</translation>
 <translation id="2391419135980381625">Τυπική γραμματοσειρά</translation>
 <translation id="2392369802118427583">Ενεργοποίηση</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Χαμηλή</translation>
 <translation id="2942560570858569904">Αναμονή…</translation>
 <translation id="2942581856830209953">Εξατομίκευση αυτής της σελίδας</translation>
+<translation id="294308617863380348">Συμπεριλαμβάνονται cookie τρίτου μέρους</translation>
 <translation id="2944060181911631861">Αποστολή δεδομένων χρήσης και διαγνωστικών. Συμβάλετε στη βελτίωση της εμπειρίας Android με αυτόματη αποστολή διαγνωστικών δεδομένων και δεδομένων συσκευής και χρήσης εφαρμογών στην Google. Με αυτόν τον τρόπο βελτιώνεται η σταθερότητα του συστήματος και των εφαρμογών και παρέχονται επιπλέον βελτιώσεις. Ορισμένα συγκεντρωτικά δεδομένα θα βοηθήσουν επίσης τις εφαρμογές και τους συνεργάτες της Google, όπως τους προγραμματιστές Android. Εάν η ρύθμιση της πρόσθετης Δραστηριότητας ιστού και εφαρμογών είναι ενεργοποιημένη, αυτά τα δεδομένα μπορεί να αποθηκευτούν στον Λογαριασμό σας Google. <ph name="BEGIN_LINK1" />Μάθετε περισσότερα<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Προσθήκη σύνδεσης</translation>
 <translation id="2948300991547862301">Μετάβαση στη σελίδα <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Κάντε κλικ για να πάτε μπροστά, κρατήστε το κουμπί πατημένο για να δείτε το ιστορικό</translation>
 <translation id="2963151496262057773">Η ακόλουθη προσθήκη δεν ανταποκρίνεται: <ph name="PLUGIN_NAME" />Θέλετε να την τερματίσετε;</translation>
 <translation id="2966937470348689686">Διαχείριση προτιμήσεων Android</translation>
-<translation id="2972557485845626008">Υλικολογισμικό</translation>
 <translation id="2972581237482394796">&amp;Επανάληψη ενέργειας</translation>
 <translation id="2973324205039581528">Σίγαση Ιστοτόπου</translation>
 <translation id="2977480621796371840">Κατάργηση από την ομάδα</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Διαχωριστικό</translation>
 <translation id="3387614642886316601">Χρήση βελτιωμένου ορθογραφικού ελέγχου</translation>
-<translation id="3393352139658145068">Να ενεργοποιείται ο Βοηθός όταν οποιοσδήποτε χρήστης λέει "Ok Google". Για εξοικονόμηση μπαταρίας, η λειτουργία "Ok Google" ενεργοποιείται μόνο όταν η συσκευή σας είναι συνδεδεμένη σε μια πηγή ενέργειας.</translation>
 <translation id="3396800784455899911">Εάν κάνετε κλικ στο κουμπί "Αποδοχή και συνέχεια", αποδέχεστε την επεξεργασία που περιγράφεται παραπάνω για αυτές τις υπηρεσίες Google.</translation>
 <translation id="3399432415385675819">Οι ειδοποιήσεις θα απενεργοποιηθούν</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - περιπλεγμένη</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Εμφάνιση <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">Άνοιγμα σε νέα καρτέ&amp;λα</translation>
 <translation id="3615073365085224194">Αγγίξτε τον αισθητήρα δακτυλικών αποτυπωμάτων με το δάχτυλό σας</translation>
+<translation id="3615579745882581859">Πραγματοποιείται σάρωση του αρχείου <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;Διαγραφή δεδομένων περιήγησης...</translation>
 <translation id="3617891479562106823">Τα φόντα δεν είναι διαθέσιμα. Δοκιμάστε ξανά αργότερα.</translation>
 <translation id="3619115746895587757">Καπουτσίνο</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Αποκλεισμός τμημάτων ιστοσελίδων</translation>
 <translation id="3760460896538743390">Έλεγχος &amp;σελίδας παρασκηνίου</translation>
 <translation id="37613671848467444">Άνοιγμα σε παράθυρο ανώνυμης περιήγησης</translation>
-<translation id="3764314093345384080">Λεπτομερείς πληροφορίες έκδοσης</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Επικοινωνία με μια συσκευή USB}other{Επικοινωνία με # συσκευές USB}}</translation>
 <translation id="3765246971671567135">Δεν ήταν δυνατή η ανάγνωση της πολιτικής λειτουργίας επίδειξης εκτός σύνδεσης.</translation>
 <translation id="3768037234834996183">Γίνεται συγχρονισμός των προτιμήσεών σας…</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Εμφάνιση ονομάτων χρηστών και φωτογραφιών στην οθόνη σύνδεσης</translation>
 <translation id="4142052906269098341">Ξεκλειδώστε τη συσκευή <ph name="DEVICE_TYPE" /> με το τηλέφωνό σας. <ph name="LINK_BEGIN" />Μάθετε περισσότερα<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Απολαύστε βίντεο καλύτερης ποιότητας και εξοικονομήστε μπαταρία. Το βίντεο θα αναπαράγεται μόνο στην οθόνη σας με δυνατότητα Cast.</translation>
-<translation id="4145922204387553806">Επιτρέψτε στον Βοηθό να σας εμφανίζει πληροφορίες σχετικά με το περιεχόμενο της οθόνης σας</translation>
 <translation id="4146026355784316281">Άνοιγμα πάντα με πρόγραμμα προβολής συστήματος</translation>
 <translation id="4146785383423576110">Επαναφορά και διαγραφή επιβλαβούς λογισμικού</translation>
 <translation id="4147911968024186208">Δοκιμάστε ξανά. Εάν εμφανιστεί ξανά αυτό το σφάλμα, επικοινωνήστε με τον αντιπρόσωπο υποστήριξης.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Αλλαγή γλωσσών</translation>
 <translation id="4301671483919369635">Επιτρέπεται σε αυτήν τη σελίδα να επεξεργάζεται αρχεία</translation>
 <translation id="4303079906735388947">Ρυθμίστε νέο PIN για το κλειδί ασφαλείας σας</translation>
+<translation id="4305402730127028764">Αντιγραφή στη συσκευή <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Οι εφαρμογές θα πρέπει να προβάλλονται με τον τύπο περιεχομένου "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (πραγματικά <ph name="NUM_KILOBYTES_LIVE" />K)</translation>
 <translation id="4310139701823742692">Λανθασμένη μορφή αρχείου. Ελέγξτε το αρχείο PPD και δοκιμάστε ξανά.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Δοκιμάστε ξανά.</translation>
 <translation id="4535127706710932914">Προεπιλεγμένο προφίλ</translation>
 <translation id="4535767533210902251">Ο αισθητήρας δακτυλικών αποτυπωμάτων είναι το επάνω δεξιά πλήκτρο του πληκτρολογίου σας. Αγγίξτε το ελαφρώς με οποιοδήποτε δάκτυλο.</translation>
-<translation id="4538417792467843292">Διαγραφή λέξης</translation>
 <translation id="4538684596480161368">Να γίνεται πάντα αποκλεισμός των προσθηκών εκτός περιβάλλοντος δοκιμών σε <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Εγκαταστάθηκε από την εταιρική πολιτική.</translation>
 <translation id="4542520061254486227">Ανάγνωση των δεδομένων σας στο <ph name="WEBSITE_1" /> και στο <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Ανάγνωση αρχείου…</translation>
 <translation id="5368720394188453070">Το τηλέφωνό σας είναι κλειδωμένο. Ξεκλειδώστε το για να εισέλθετε.</translation>
 <translation id="5368779022775404937">Συνδεθείτε στο <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Ενεργοποίηση επιτάχυνσης ποντικιού</translation>
 <translation id="5370819323174483825">Ε&amp;πανάληψη φόρτωσης</translation>
 <translation id="5372529912055771682">Η παρεχόμενη λειτουργία εγγραφής δεν υποστηρίζεται από αυτήν την έκδοση του λειτουργικού συστήματος.  Βεβαιωθείτε ότι εκτελείτε την πιο πρόσφατη έκδοση και δοκιμάστε ξανά.</translation>
 <translation id="5372579129492968947">Ξεκαρφίτσωμα επέκτασης</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Εκτέλεση αυτή τη φορά</translation>
 <translation id="5464660706533281090">Δεν είναι δυνατή η αλλαγή αυτής της ρύθμισης από ένα παιδί.</translation>
 <translation id="5466374726908360271">Επικόλληση και αναζήτηση για "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Αναζήτηση για κοινές χρήσεις αρχείου</translation>
 <translation id="5471768120198416576">Γεια σας! Είμαι η φωνή της λειτουργίας μετατροπής κειμένου σε ομιλία.</translation>
 <translation id="5473333559083690127">Εισαγάγετε ξανά το νέο PIN</translation>
 <translation id="5481941284378890518">Προσθήκη εκτυπωτών σε κοντινή απόσταση</translation>
@@ -3543,6 +3543,7 @@
 <translation id="6233154960150021497">Προεπιλεγμένη χρήση φωνής αντί για πληκτρολόγιο</translation>
 <translation id="6234474535228214774">Εγκατάσταση σε εκκρεμότητα</translation>
 <translation id="6237816943013845465">Σας επιτρέπει να προσαρμόσετε την ανάλυση της οθόνης σας</translation>
+<translation id="6238767809035845642">Κοινόχρηστο κείμενο από άλλη συσκευή</translation>
 <translation id="6238923052227198598">Διατήρηση πιο πρόσφατης σημείωσης στον οθόνη κλειδώματος</translation>
 <translation id="6239558157302047471">Επαναφόρτωση &amp;πλαισίου</translation>
 <translation id="6241530762627360640">Πρόσβαση σε πληροφορίες σχετικά με τις συσκευές Bluetooth που βρίσκονται σε ζεύξη με το σύστημά σας και εντοπισμός κοντινών συσκευών Bluetooth.</translation>
@@ -3769,7 +3770,6 @@
 <translation id="6577284282025554716">Η λήψη ακυρώθηκε: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Κρυπτογράφηση συγχρονισμένων κωδικών πρόσβαση με το όνομα χρήστη και τον κωδικό πρόσβασης Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Κοινόχρηστο περιεχόμενο επιφάνειας εργασίας</translation>
-<translation id="6580151766480067746">Έκδοση ARC</translation>
 <translation id="6582080224869403177">Επαναφέρετε τη συσκευή <ph name="DEVICE_TYPE" /> για να αναβαθμίσετε την ασφάλειά σας.</translation>
 <translation id="6584878029876017575">Υπογραφή για πάντα Microsoft</translation>
 <translation id="6586451623538375658">Εναλλαγή κύριου κουμπιού ποντικιού</translation>
@@ -4374,6 +4374,7 @@
 <translation id="7487141338393529395">Ενεργοποίηση βελτιωμένου ορθογραφικού ελέγχου</translation>
 <translation id="7487969577036436319">Δεν έχουν εγκατασταθεί στοιχεία</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Άνοιγμα όλων}=1{&amp;Άνοιγμα σελιδοδείκτη}other{&amp;Άνοιγμα όλων (#)}}</translation>
+<translation id="7489761397368794366">Κλήση από τη συσκευή σας</translation>
 <translation id="749028671485790643">Άτομο <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Διεύθυνση MAC</translation>
 <translation id="7493386493263658176">Η επέκταση <ph name="EXTENSION_NAME" /> μπορεί να συλλέγει όλο το κείμενο που πληκτρολογείτε, συμπεριλαμβανομένων προσωπικών δεδομένων, όπως κωδικών πρόσβασης και αριθμών πιστωτικών καρτών. Θέλετε να χρησιμοποιήσετε αυτήν την επέκταση;</translation>
@@ -4393,6 +4394,7 @@
 <translation id="7508054832109420082">Παραχώρηση πρόσβασης σε εκτυπωτές</translation>
 <translation id="7510943789645525906">Σας προειδοποιεί σε περίπτωση που ο κωδικός πρόσβασης που χρησιμοποιείτε ήταν μέρος μιας παραβίασης δεδομένων.</translation>
 <translation id="7513029293694390567">Αυτόματη σύνδεση σε ιστοτόπους με χρήση αποθηκευμένων διαπιστευτηρίων. Όταν η λειτουργία είναι απενεργοποιημένη, θα σας ζητείται επιβεβαίωση κάθε φορά που προσπαθείτε να συνδεθείτε σε έναν ιστότοπο.</translation>
+<translation id="7514239104543605883">Αντιγραφή στη συσκευή σας</translation>
 <translation id="7514365320538308">Λήψη</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Εκφωνήστε "Ok Google"</translation>
@@ -4949,6 +4951,7 @@
 <translation id="8274332263553132018">Μετάδοση αρχείου</translation>
 <translation id="8274924778568117936">Μην απενεργοποιήσετε ή κλείσετε τη συσκευή <ph name="DEVICE_TYPE" /> μέχρι να ολοκληρωθεί η ενημέρωση. Θα γίνει επανεκκίνηση της συσκευής <ph name="DEVICE_TYPE" /> μόλις ολοκληρωθεί η εγκατάσταση.</translation>
 <translation id="8275038454117074363">Εισαγωγή</translation>
+<translation id="8275080796245127762">Κλήση από τη συσκευή σας</translation>
 <translation id="8276560076771292512">Άδειασμα προσωρινής μνήμης και υποχρεωτική επανάληψη φόρτωσης</translation>
 <translation id="8281886186245836920">Παράβλεψη</translation>
 <translation id="8282947398454257691">Πρόσβαση στο μοναδικό αναγνωριστικό της συσκευής σας</translation>
@@ -5267,6 +5270,7 @@
 <translation id="8758418656925882523">Ενεργοποίηση υπαγόρευσης (μιλήστε για πληκτρολόγηση)</translation>
 <translation id="8759408218731716181">Δεν είναι δυνατή η δημιουργία πολλαπλών συνδέσεων</translation>
 <translation id="8759753423332885148">Μάθετε περισσότερα.</translation>
+<translation id="8761945298804995673">Αυτός ο χρήστης υπάρχει ήδη</translation>
 <translation id="8762886931014513155">Η συσκευή <ph name="DEVICE_TYPE" /> χρειάζεται ενημέρωση</translation>
 <translation id="8763927697961133303">Συσκευή USB</translation>
 <translation id="8767621466733104912">Αυτόματη ενημέρωση του Chrome για όλους τους χρήστες</translation>
@@ -5355,6 +5359,7 @@
 <translation id="8879284080359814990">&amp;Εμφάνιση ως καρτέλα</translation>
 <translation id="8879921471468674457">Απομνημόνευση πληροφοριών σύνδεσης</translation>
 <translation id="8881020143150461183">Δοκιμάστε ξανά. Για τεχνική υποστήριξη, επικοινωνήστε με <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Ενεργοποίηση επιτάχυνσης επιφάνειας αφής</translation>
 <translation id="8884570509232205463">Η συσκευή σας θα κλειδωθεί στις <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Το Smart Lock είναι διαθέσιμο</translation>
 <translation id="8888253246822647887">Η εφαρμογή σας θα ανοίξει όταν η αναβάθμιση ολοκληρωθεί. Οι αναβαθμίσεις μπορεί να διαρκέσουν μερικά λεπτά.</translation>
diff --git a/chrome/app/resources/generated_resources_en-GB.xtb b/chrome/app/resources/generated_resources_en-GB.xtb
index f403e8a2..f9e4d7bc 100644
--- a/chrome/app/resources/generated_resources_en-GB.xtb
+++ b/chrome/app/resources/generated_resources_en-GB.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">To get your extensions on all your computers, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">This will erase all data on the security key, including its PIN</translation>
 <translation id="1475502736924165259">You have certificates on file that do not fit into any of the other categories</translation>
+<translation id="1476088332184200792">Copy to Your Device</translation>
 <translation id="1476607407192946488">&amp;Language Settings</translation>
 <translation id="1478340334823509079">Details: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Installation is not enabled</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Print using system dialogue... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Ask before sending (recommended)</translation>
 <translation id="2384436799579181135">An error has occurred. Please check your printer and try again.</translation>
-<translation id="2386926718981642523">Access your Assistant any time that you say "Ok Google"</translation>
 <translation id="2387458720915042159">Proxy connection type</translation>
 <translation id="2391419135980381625">Standard font</translation>
 <translation id="2392369802118427583">Activate</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Low</translation>
 <translation id="2942560570858569904">Waiting...</translation>
 <translation id="2942581856830209953">Customise this page</translation>
+<translation id="294308617863380348">Including third-party cookies</translation>
 <translation id="2944060181911631861">Send usage and diagnostic data. Help improve your Android experience by automatically sending diagnostic, device and app usage data to Google. This will help system and app stability and other improvements. Some aggregate data will also help Google apps and partners, such as Android developers. If your additional Web &amp; App Activity setting is turned on, this data may be saved to your Google Account. <ph name="BEGIN_LINK1" />Find out more<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Add connection</translation>
 <translation id="2948300991547862301">Go to <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Click to go forward, hold to see history</translation>
 <translation id="2963151496262057773">The following plug-in is unresponsive: <ph name="PLUGIN_NAME" />Would you like to stop it?</translation>
 <translation id="2966937470348689686">Manage Android preferences</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Redo</translation>
 <translation id="2973324205039581528">Mute Site</translation>
 <translation id="2977480621796371840">Remove from group</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separator</translation>
 <translation id="3387614642886316601">Use enhanced spell check</translation>
-<translation id="3393352139658145068">Activate the Assistant when anyone says “Ok Google”. To save battery, “Ok Google” is on only when your device is connected to a power source.</translation>
 <translation id="3396800784455899911">By clicking the 'Accept and continue' button, you agree to the processing described above for these Google services.</translation>
 <translation id="3399432415385675819">Notifications will be disabled</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) – interlaced</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Show <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Open in new tab</translation>
 <translation id="3615073365085224194">Touch the fingerprint sensor with your finger</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> is being scanned.</translation>
 <translation id="3616741288025931835">&amp;Clear Browsing Data...</translation>
 <translation id="3617891479562106823">Backgrounds are unavailable. Try again later.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Block parts of web pages</translation>
 <translation id="3760460896538743390">Inspect &amp;Background Page</translation>
 <translation id="37613671848467444">Open in &amp;Incognito Window</translation>
-<translation id="3764314093345384080">Detailed build information</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Communicate with a USB device}other{Communicate with # USB devices}}</translation>
 <translation id="3765246971671567135">Could not read offline demo mode policy.</translation>
 <translation id="3768037234834996183">Syncing your preferences...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Show usernames and photos on the sign-in screen</translation>
 <translation id="4142052906269098341">Unlock your <ph name="DEVICE_TYPE" /> with your phone. <ph name="LINK_BEGIN" />Learn more<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Get better quality video and save battery life. Video will play only on your Cast-enabled screen.</translation>
-<translation id="4145922204387553806">Let the Assistant show you info related to what's on your screen</translation>
 <translation id="4146026355784316281">Always Open With System Viewer</translation>
 <translation id="4146785383423576110">Reset and clean up</translation>
 <translation id="4147911968024186208">Please retry. If you see this error again, please contact your support representative.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Change Languages</translation>
 <translation id="4301671483919369635">This page is allowed to edit files</translation>
 <translation id="4303079906735388947">Set up a new PIN for your security key</translation>
+<translation id="4305402730127028764">Copy to <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Apps must be served with content-type '<ph name="CONTENT_TYPE" />'</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K live)</translation>
 <translation id="4310139701823742692">File is in the wrong format. Check the PPD file and try again.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Try again.</translation>
 <translation id="4535127706710932914">Default Profile</translation>
 <translation id="4535767533210902251">The fingerprint sensor is the top-right key on your keyboard. Touch it lightly with any finger.</translation>
-<translation id="4538417792467843292">Delete word</translation>
 <translation id="4538684596480161368">Always block unsandboxed plug-ins on <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Installed by enterprise policy.</translation>
 <translation id="4542520061254486227">Read your data on <ph name="WEBSITE_1" /> and <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Reading file..</translation>
 <translation id="5368720394188453070">Your phone is locked. Unlock it to enter.</translation>
 <translation id="5368779022775404937">Sign in to <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Enable mouse acceleration</translation>
 <translation id="5370819323174483825">&amp;Reload</translation>
 <translation id="5372529912055771682">The supplied enrolment mode is not supported by this version of the operating system. Please make sure you are running the newest version and try again.</translation>
 <translation id="5372579129492968947">Unpin extension</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Run this time</translation>
 <translation id="5464660706533281090">This setting can't be changed by a child user.</translation>
 <translation id="5466374726908360271">Paste and search for '<ph name="SEARCH_TERMS" />'</translation>
+<translation id="5468173180030470402">Looking for file shares</translation>
 <translation id="5471768120198416576">Hi there! I'm your text-to-speech voice.</translation>
 <translation id="5473333559083690127">Re-enter new PIN</translation>
 <translation id="5481941284378890518">Add Nearby Printers</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Default to using voice instead of keyboard</translation>
 <translation id="6234474535228214774">Install pending</translation>
 <translation id="6237816943013845465">Allows you to adjust your screen resolution</translation>
+<translation id="6238767809035845642">Text shared from other device</translation>
 <translation id="6238923052227198598">Keep latest note on lock screen</translation>
 <translation id="6239558157302047471">Reload &amp;frame</translation>
 <translation id="6241530762627360640">Access information about Bluetooth devices paired with your system and discover nearby Bluetooth devices.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Download cancelled: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Encrypt synced passwords with your Google username and password</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – Desktop content shared</translation>
-<translation id="6580151766480067746">ARC Version</translation>
 <translation id="6582080224869403177">Reset your <ph name="DEVICE_TYPE" /> to upgrade your security.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">Swap the primary mouse button</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Turn on Enhanced Spell Check</translation>
 <translation id="7487969577036436319">No components are installed</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Open all}=1{&amp;Open bookmark}other{&amp;Open all (#)}}</translation>
+<translation id="7489761397368794366">Call from your device</translation>
 <translation id="749028671485790643">Person <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC address</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> extension may collect all the text you type, including personal data like passwords and credit card numbers. Do you want to use this extension?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Give access to printers</translation>
 <translation id="7510943789645525906">Warns you if a password that you used was part of a data breach</translation>
 <translation id="7513029293694390567">Automatically sign in to websites using stored credentials. If disabled, you will be asked for confirmation every time before signing in to a website.</translation>
+<translation id="7514239104543605883">Copy to your device</translation>
 <translation id="7514365320538308">Download</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Say 'Ok Google'</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Cast file</translation>
 <translation id="8274924778568117936">Don’t turn off or close your <ph name="DEVICE_TYPE" /> until the update finishes. Your <ph name="DEVICE_TYPE" /> will restart after installation completes.</translation>
 <translation id="8275038454117074363">Import</translation>
+<translation id="8275080796245127762">Call from Your Device</translation>
 <translation id="8276560076771292512">Empty Cache and Hard Reload</translation>
 <translation id="8281886186245836920">Skip</translation>
 <translation id="8282947398454257691">Know your unique device identifier</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Enable dictation (speak to type)</translation>
 <translation id="8759408218731716181">Can't set up multiple sign-in</translation>
 <translation id="8759753423332885148">Learn more.</translation>
+<translation id="8761945298804995673">This user already exists</translation>
 <translation id="8762886931014513155">Your <ph name="DEVICE_TYPE" /> needs an update</translation>
 <translation id="8763927697961133303">USB device</translation>
 <translation id="8767621466733104912">Automatically update Chrome for all users</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Show As Tab</translation>
 <translation id="8879921471468674457">Remember sign-in info</translation>
 <translation id="8881020143150461183">Please try again. For technical support, contact <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Enable touchpad acceleration</translation>
 <translation id="8884570509232205463">Your device now locks at <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock is unavailable</translation>
 <translation id="8888253246822647887">Your app will open when the upgrade is finished. Upgrades can take a few minutes.</translation>
diff --git a/chrome/app/resources/generated_resources_es-419.xtb b/chrome/app/resources/generated_resources_es-419.xtb
index c1dac6a..f9ff2ba 100644
--- a/chrome/app/resources/generated_resources_es-419.xtb
+++ b/chrome/app/resources/generated_resources_es-419.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Para usar tus extensiones en todas tus computadoras, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Esta acción borrará todos los datos de la llave de seguridad, incluido su PIN</translation>
 <translation id="1475502736924165259">Tienes certificados archivados que no coinciden con ninguna de las demás categorías</translation>
+<translation id="1476088332184200792">Copiar a tu dispositivo</translation>
 <translation id="1476607407192946488">&amp;Configuración de idiomas</translation>
 <translation id="1478340334823509079">Detalles: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">La instalación no está habilitada</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">Imprimir mediante el sistema de diálogo... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Preguntar antes de enviar (recomendado)</translation>
 <translation id="2384436799579181135">Se produjo un error. Revisa la impresora y vuelve a intentarlo.</translation>
-<translation id="2386926718981642523">Di "Ok Google" para acceder al Asistente en cualquier momento</translation>
 <translation id="2387458720915042159">Tipo de conexión proxy</translation>
 <translation id="2391419135980381625">Fuente estándar</translation>
 <translation id="2392369802118427583">Activar</translation>
@@ -1338,6 +1338,7 @@
 <translation id="2941112035454246133">Baja</translation>
 <translation id="2942560570858569904">Esperando…</translation>
 <translation id="2942581856830209953">Personalizar esta página</translation>
+<translation id="294308617863380348">Incluidas las cookies de terceros</translation>
 <translation id="2944060181911631861">Envía datos de uso y diagnóstico. Para ayudar a mejorar tu experiencia de Android, envía a Google datos de diagnóstico y uso de dispositivos y apps de forma automática. Esta información ayudará a lograr la estabilidad de las apps y el sistema, entre otras mejoras. Algunos datos agregados también ayudarán a las apps y los socios de Google, como los desarrolladores de Android. Si habilitaste la "Actividad de web y de aplicaciones adicional", es posible que se almacenen estos datos en tu Cuenta de Google. <ph name="BEGIN_LINK1" />Más información<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Agregar conexión</translation>
 <translation id="2948300991547862301">Ir a <ph name="PAGE_TITLE" /></translation>
@@ -1352,7 +1353,6 @@
 <translation id="2961695502793809356">Haz clic para continuar o espera para ver el historial</translation>
 <translation id="2963151496262057773">El siguiente complemento no responde: <ph name="PLUGIN_NAME" /> ¿Quieres detenerlo?</translation>
 <translation id="2966937470348689686">Administrar las preferencias de Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Rehacer</translation>
 <translation id="2973324205039581528">Silenciar el sitio</translation>
 <translation id="2977480621796371840">Quitar del grupo</translation>
@@ -1610,7 +1610,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separador</translation>
 <translation id="3387614642886316601">Usar el corrector ortográfico mejorado</translation>
-<translation id="3393352139658145068">Activa el Asistente cuando alguien dice "Ok Google". Para ahorrar batería, "Ok Google" solo se activa cuando tu dispositivo está conectado a una fuente de alimentación.</translation>
 <translation id="3396800784455899911">Al hacer clic en el botón "Aceptar y continuar", confirmas el procesamiento descrito anteriormente para estos servicios de Google.</translation>
 <translation id="3399432415385675819">Se inhabilitarán las notificaciones</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> × <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - entrelazado</translation>
@@ -1771,6 +1770,7 @@
 <translation id="3613134908380545408">Mostrar <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Abrir en una pestaña nueva</translation>
 <translation id="3615073365085224194">Toca el sensor de huellas digitales con el dedo</translation>
+<translation id="3615579745882581859">Se está analizando <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">Eliminar datos de navega&amp;ción...</translation>
 <translation id="3617891479562106823">Los fondos no están disponibles. Vuelve a intentarlo más tarde.</translation>
 <translation id="3619115746895587757">Capuchino</translation>
@@ -1885,7 +1885,6 @@
 <translation id="3759933321830434300">Bloquear partes de páginas web</translation>
 <translation id="3760460896538743390">Inspeccionar página &amp;de fondo</translation>
 <translation id="37613671848467444">Abrir en una ventana de &amp;incógnito</translation>
-<translation id="3764314093345384080">Información detallada sobre la compilación</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Comunicarse con un dispositivo USB}other{Comunicarse con # dispositivos USB}}</translation>
 <translation id="3765246971671567135">No se pudo leer la política del modo de demostración sin conexión.</translation>
 <translation id="3768037234834996183">Sincronizando tus preferencias…</translation>
@@ -2166,7 +2165,6 @@
 <translation id="4138267921960073861">Mostrar nombres de usuarios y fotos en la pantalla de inicio</translation>
 <translation id="4142052906269098341">Desbloquea tu <ph name="DEVICE_TYPE" /> con el teléfono. <ph name="LINK_BEGIN" />Más información<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Obtén videos de mejor calidad y extiende la duración de la batería. El video solo se reproducirá en tu pantalla compatible con Cast.</translation>
-<translation id="4145922204387553806">Permitir que el Asistente proporcione información relacionada con lo que aparece en tu pantalla</translation>
 <translation id="4146026355784316281">Abrir siempre con el visualizador del sistema</translation>
 <translation id="4146785383423576110">Restablecer y limpiar</translation>
 <translation id="4147911968024186208">Vuelve a intentarlo. Si vuelves a ver este error, comunícate con tu representante de asistencia.</translation>
@@ -2253,6 +2251,7 @@
 <translation id="4297322094678649474">Cambiar idiomas</translation>
 <translation id="4301671483919369635">Esta página puede editar archivos</translation>
 <translation id="4303079906735388947">Configura un nuevo PIN para tu llave de seguridad</translation>
+<translation id="4305402730127028764">Copiar a <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Las apps deben incluir el encabezado content-type "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K en vivo)</translation>
 <translation id="4310139701823742692">El archivo no tiene el formato correcto. Verifica el archivo PPD y vuelve a intentarlo.</translation>
@@ -2388,7 +2387,6 @@
 <translation id="4534661889221639075">Vuelve a intentarlo.</translation>
 <translation id="4535127706710932914">Perfil predeterminado</translation>
 <translation id="4535767533210902251">El sensor de huellas digitales es la opción de la parte superior derecha del teclado. Tócalo suavemente con un dedo.</translation>
-<translation id="4538417792467843292">Eliminar palabra</translation>
 <translation id="4538684596480161368">Siempre bloquear los complementos no incluidos en la zona de pruebas en <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Instalada por una política empresarial</translation>
 <translation id="4542520061254486227">Leer los datos en <ph name="WEBSITE_1" /> y <ph name="WEBSITE_2" /></translation>
@@ -2932,6 +2930,7 @@
 <translation id="5367091008316207019">Leyendo el archivo...</translation>
 <translation id="5368720394188453070">El teléfono está bloqueado. Desbloquéalo para ingresar.</translation>
 <translation id="5368779022775404937">Acceder a <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Habilitar la aceleración del mouse</translation>
 <translation id="5370819323174483825">&amp;Volver a cargar</translation>
 <translation id="5372529912055771682">El modo de inscripción proporcionado no es compatible con esta versión del sistema operativo. Asegúrate de que estás ejecutando la versión más reciente y vuelve a intentarlo.</translation>
 <translation id="5372579129492968947">Deja de fijar extensión</translation>
@@ -3004,6 +3003,7 @@
 <translation id="5464632865477611176">Ejecutar esta vez</translation>
 <translation id="5464660706533281090">Un niño no puede cambiar esta configuración.</translation>
 <translation id="5466374726908360271">&amp;Pegar y buscar "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Buscando archivos compartidos</translation>
 <translation id="5471768120198416576">Hola, soy la voz que leerá tus textos.</translation>
 <translation id="5473333559083690127">Vuelve a ingresar el PIN nuevo</translation>
 <translation id="5481941284378890518">Agregar impresoras cercanas</translation>
@@ -3539,6 +3539,7 @@
 <translation id="6233154960150021497">Usar de forma predeterminada la voz en lugar del teclado</translation>
 <translation id="6234474535228214774">Instalación pendiente</translation>
 <translation id="6237816943013845465">Permite ajustar la resolución de pantalla</translation>
+<translation id="6238767809035845642">Texto compartido desde otro dispositivo</translation>
 <translation id="6238923052227198598">Mantener la nota más reciente en la pantalla bloqueada</translation>
 <translation id="6239558157302047471">Volver a cargar &amp;marco</translation>
 <translation id="6241530762627360640">Acceder a la información sobre los dispositivos Bluetooth sincronizados con el sistema y detectar dispositivos Bluetooth cercanos.</translation>
@@ -3765,7 +3766,6 @@
 <translation id="6577284282025554716">Se canceló la descarga: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Encriptar las contraseñas sincronizadas con tu contraseña y nombre de usuario de Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" />: Se comparte el contenido del escritorio</translation>
-<translation id="6580151766480067746">Versión de ARC</translation>
 <translation id="6582080224869403177">Restablece el dispositivo <ph name="DEVICE_TYPE" /> para actualizar la seguridad.</translation>
 <translation id="6584878029876017575">Firma de vigencia de Microsoft</translation>
 <translation id="6586451623538375658">Cambiar el botón principal del mouse</translation>
@@ -4370,6 +4370,7 @@
 <translation id="7487141338393529395">Activa el corrector ortográfico mejorado</translation>
 <translation id="7487969577036436319">No hay componentes instalados.</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Abrir todo}=1{&amp;Abrir favorito}other{&amp;Abrir todo (#)}}</translation>
+<translation id="7489761397368794366">Llamar desde tu dispositivo</translation>
 <translation id="749028671485790643">Persona <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Dirección MAC</translation>
 <translation id="7493386493263658176">Es posible que la extensión <ph name="EXTENSION_NAME" /> recopile todo el texto que escribas, lo que incluye datos personales como contraseñas y número de tarjetas de crédito. ¿Deseas usar esta extensión?</translation>
@@ -4389,6 +4390,7 @@
 <translation id="7508054832109420082">Otorgar acceso a las impresoras</translation>
 <translation id="7510943789645525906">Te avisa si una contraseña que usas formó parte de un incumplimiento de datos</translation>
 <translation id="7513029293694390567">Accede automáticamente a los sitios web con las credenciales almacenadas. Si la función está inhabilitada, deberás confirmar siempre tu identidad para acceder a un sitio web.</translation>
+<translation id="7514239104543605883">Copiar a tu dispositivo</translation>
 <translation id="7514365320538308">Descargar</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Di "OK Google".</translation>
@@ -4945,6 +4947,7 @@
 <translation id="8274332263553132018">Transmitir archivo</translation>
 <translation id="8274924778568117936">No apagues ni cierres el dispositivo <ph name="DEVICE_TYPE" /> hasta que finalice la actualización. Cuando el proceso termine, el dispositivo <ph name="DEVICE_TYPE" /> se reiniciará.</translation>
 <translation id="8275038454117074363">Importar</translation>
+<translation id="8275080796245127762">Llamar desde tu dispositivo</translation>
 <translation id="8276560076771292512">Vaciar caché y volver a cargar de manera forzada</translation>
 <translation id="8281886186245836920">Omitir</translation>
 <translation id="8282947398454257691">Conocer tu identificador de dispositivo único</translation>
@@ -5265,6 +5268,7 @@
 <translation id="8758418656925882523">Habilitar el dictado (escritura por voz)</translation>
 <translation id="8759408218731716181">No se puede configurar el acceso múltiple.</translation>
 <translation id="8759753423332885148">Más información</translation>
+<translation id="8761945298804995673">Ya existe este usuario</translation>
 <translation id="8762886931014513155">Tu <ph name="DEVICE_TYPE" /> necesita una actualización</translation>
 <translation id="8763927697961133303">Dispositivo USB</translation>
 <translation id="8767621466733104912">Actualizar Chrome automáticamente para todos los usuarios</translation>
@@ -5353,6 +5357,7 @@
 <translation id="8879284080359814990">Mo&amp;strar como pestaña</translation>
 <translation id="8879921471468674457">Recordar la información de acceso</translation>
 <translation id="8881020143150461183">Vuelve a intentarlo. Si necesitas asistencia técnica, comunícate con <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Habilitar la aceleración del panel táctil</translation>
 <translation id="8884570509232205463">Ahora, el dispositivo se bloqueará a la(s) <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock no está disponible</translation>
 <translation id="8888253246822647887">Cuando se complete la actualización, se abrirá la app. Las actualizaciones pueden tardar algunos minutos.</translation>
diff --git a/chrome/app/resources/generated_resources_es.xtb b/chrome/app/resources/generated_resources_es.xtb
index f742bda..d5075205 100644
--- a/chrome/app/resources/generated_resources_es.xtb
+++ b/chrome/app/resources/generated_resources_es.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Para ver tus extensiones en todos tus ordenadores, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Esta acción borrará todos los datos de la llave de seguridad, incluido el PIN</translation>
 <translation id="1475502736924165259">Tienes certificados registrados que no corresponden a ninguna otra categoría</translation>
+<translation id="1476088332184200792">Copiar en el dispositivo</translation>
 <translation id="1476607407192946488">&amp;Configuración de idioma</translation>
 <translation id="1478340334823509079">Detalles: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">La instalación no está habilitada</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Imprimir utilizando el cuadro de diálogo del sistema <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Preguntar antes de enviar (recomendado)</translation>
 <translation id="2384436799579181135">Se ha producido un error. Comprueba tu impresora y vuelve a intentarlo.</translation>
-<translation id="2386926718981642523">Acceder al Asistente cuando digas "Ok Google"</translation>
 <translation id="2387458720915042159">Tipo de conexión con proxy</translation>
 <translation id="2391419135980381625">Fuente estándar</translation>
 <translation id="2392369802118427583">Activar</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Baja</translation>
 <translation id="2942560570858569904">Esperando...</translation>
 <translation id="2942581856830209953">Personalizar esta página</translation>
+<translation id="294308617863380348">Incluidas las cookies de terceros</translation>
 <translation id="2944060181911631861">Enviar datos de uso y diagnóstico. Contribuye a mejorar tu experiencia de Android enviando automáticamente a Google datos de diagnóstico, del dispositivo y del uso de las aplicaciones. Los datos servirán para aumentar la estabilidad de las aplicaciones y del sistema y realizar otras mejoras. Parte de los datos recogidos también ayudarán a las aplicaciones y los colaboradores de Google, como los desarrolladores de Android. Si la opción Actividad en la Web y en Aplicaciones Adicional está activada, es posible que estos datos se guarden en tu cuenta de Google. <ph name="BEGIN_LINK1" />Más información<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Añadir conexión</translation>
 <translation id="2948300991547862301">Ir a <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Haz clic para avanzar una página o pulsa unos segundos para ver el historial</translation>
 <translation id="2963151496262057773">El complemento <ph name="PLUGIN_NAME" /> no responde. ¿Quieres detenerlo?</translation>
 <translation id="2966937470348689686">Gestionar las preferencias de Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Rehacer</translation>
 <translation id="2973324205039581528">Silenciar sitio web</translation>
 <translation id="2977480621796371840">Quitar del grupo</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Separador</translation>
 <translation id="3387614642886316601">Usar la revisión ortográfica mejorada</translation>
-<translation id="3393352139658145068">Activa el Asistente cuando alguien diga "Ok Google". Para ahorrar batería, "Ok Google" solo se activará cuando el dispositivo esté conectado a una fuente de alimentación.</translation>
 <translation id="3396800784455899911">Al hacer clic en el botón "Aceptar y continuar", declaras que estás conforme con el proceso descrito anteriormente de estos servicios de Google.</translation>
 <translation id="3399432415385675819">Se inhabilitarán las notificaciones</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hz) - entrelazado</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Mostrar <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Abrir en una pestaña nueva</translation>
 <translation id="3615073365085224194">Toca el sensor de huellas digitales con el dedo</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> se está analizando.</translation>
 <translation id="3616741288025931835">&amp;Borrar datos de navegación...</translation>
 <translation id="3617891479562106823">Los fondos no están disponibles. Inténtalo de nuevo más tarde.</translation>
 <translation id="3619115746895587757">Capuchino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Bloquear partes de páginas web</translation>
 <translation id="3760460896538743390">Inspeccionar página &amp;en segundo plano</translation>
 <translation id="37613671848467444">Abrir en una ventana de &amp;incógnito</translation>
-<translation id="3764314093345384080">Información detallada de compilación</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Comunicarse con un dispositivo USB}other{Comunicarse con # dispositivos USB}}</translation>
 <translation id="3765246971671567135">No se ha podido leer la política del modo de demostración sin conexión.</translation>
 <translation id="3768037234834996183">Sincronizando tus preferencias...</translation>
@@ -2168,7 +2167,6 @@
 <translation id="4138267921960073861">Mostrar nombres de usuario y fotos en la pantalla de inicio de sesión</translation>
 <translation id="4142052906269098341">Desbloquea el <ph name="DEVICE_TYPE" /> con tu teléfono. <ph name="LINK_BEGIN" />Más información<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Disfruta de una mejor calidad de vídeo y ahorra batería. El vídeo se reproducirá solo en tu pantalla compatible con Google Cast.</translation>
-<translation id="4145922204387553806">Deja que el Asistente te muestre información relacionada con lo que aparece en la pantalla</translation>
 <translation id="4146026355784316281">Abrir siempre con el visor del sistema</translation>
 <translation id="4146785383423576110">Recuperar ajustes y borrar</translation>
 <translation id="4147911968024186208">Inténtalo de nuevo. Si el error persiste, ponte en contacto con tu representante de asistencia.</translation>
@@ -2255,6 +2253,7 @@
 <translation id="4297322094678649474">Cambiar idiomas</translation>
 <translation id="4301671483919369635">Esta página tiene permiso para editar archivos</translation>
 <translation id="4303079906735388947">Configura un nuevo PIN para tu llave de seguridad</translation>
+<translation id="4305402730127028764">Copiar en <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Las aplicaciones deben incluir el encabezado content-type "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K (<ph name="NUM_KILOBYTES_LIVE" /> K activos)</translation>
 <translation id="4310139701823742692">El formato del archivo no es correcto. Comprueba el archivo PPD e inténtalo de nuevo.</translation>
@@ -2390,7 +2389,6 @@
 <translation id="4534661889221639075">Inténtalo de nuevo.</translation>
 <translation id="4535127706710932914">Perfil predeterminado</translation>
 <translation id="4535767533210902251">El sensor de huellas digitales está en la tecla de arriba a la derecha de tu teclado. Tócalo ligeramente con un dedo.</translation>
-<translation id="4538417792467843292">Eliminar palabra</translation>
 <translation id="4538684596480161368">Bloquear siempre complementos no incluidos en zona de pruebas en <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Instalada por una política empresarial</translation>
 <translation id="4542520061254486227">Leer tus datos en <ph name="WEBSITE_1" /> y en <ph name="WEBSITE_2" /></translation>
@@ -2934,6 +2932,7 @@
 <translation id="5367091008316207019">Leyendo archivo...</translation>
 <translation id="5368720394188453070">Tu teléfono está bloqueado. Desbloquéalo para acceder.</translation>
 <translation id="5368779022775404937">Inicia sesión en <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Habilitar la aceleración del ratón</translation>
 <translation id="5370819323174483825">&amp;Volver a cargar</translation>
 <translation id="5372529912055771682">El modo de inscripción proporcionado no es compatible con esta versión del sistema operativo. Comprueba que estés utilizando la última versión y vuelve a intentarlo.</translation>
 <translation id="5372579129492968947">No fijar extensión</translation>
@@ -3006,6 +3005,7 @@
 <translation id="5464632865477611176">Ejecutar esta vez</translation>
 <translation id="5464660706533281090">Los usuarios menores de edad no pueden cambiar este ajuste.</translation>
 <translation id="5466374726908360271">Pe&amp;gar y buscar "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Buscando sistemas de archivos compartidos</translation>
 <translation id="5471768120198416576">¡Hola! Soy tu voz de la síntesis de voz.</translation>
 <translation id="5473333559083690127">Volver a introducir el nuevo PIN</translation>
 <translation id="5481941284378890518">Añadir impresoras cercanas</translation>
@@ -3541,6 +3541,7 @@
 <translation id="6233154960150021497">Usar la voz en lugar del teclado de forma predeterminada</translation>
 <translation id="6234474535228214774">Instalación pendiente</translation>
 <translation id="6237816943013845465">Te permite ajustar la resolución de pantalla</translation>
+<translation id="6238767809035845642">Texto compartido desde otro dispositivo</translation>
 <translation id="6238923052227198598">Mantener la última nota en la pantalla de bloqueo</translation>
 <translation id="6239558157302047471">Volver a cargar &amp;marco</translation>
 <translation id="6241530762627360640">Acceder a información sobre dispositivos Bluetooth vinculados a tu sistema y descubrir dispositivos Bluetooth cercanos.</translation>
@@ -3767,7 +3768,6 @@
 <translation id="6577284282025554716">Descarga cancelada: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Cifrar las contraseñas sincronizadas con tu nombre de usuario y contraseña de Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Contenido del ordenador compartido</translation>
-<translation id="6580151766480067746">Versión de ARC</translation>
 <translation id="6582080224869403177">Restablece tu <ph name="DEVICE_TYPE" /> para actualizar la seguridad.</translation>
 <translation id="6584878029876017575">Firma de vigencia de Microsoft</translation>
 <translation id="6586451623538375658">Cambiar botón principal del ratón</translation>
@@ -4372,6 +4372,7 @@
 <translation id="7487141338393529395">Activa la revisión ortográfica mejorada</translation>
 <translation id="7487969577036436319">No hay componentes instalados</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Abrir todas}=1{&amp;Abrir marcador}other{&amp;Abrir (#)}}</translation>
+<translation id="7489761397368794366">Llamar desde tu dispositivo</translation>
 <translation id="749028671485790643">Persona <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Dirección MAC</translation>
 <translation id="7493386493263658176">Es posible que la extensión <ph name="EXTENSION_NAME" /> recopile todo el texto que escribes, como las contraseñas o los números de las tarjetas de crédito. ¿Quieres utilizar esta extensión?</translation>
@@ -4391,6 +4392,7 @@
 <translation id="7508054832109420082">Conceder acceso a impresoras</translation>
 <translation id="7510943789645525906">Te avisa si alguna de tus contraseñas se ha visto afectada por una quiebra de seguridad de datos</translation>
 <translation id="7513029293694390567">Permite iniciar sesión automáticamente en sitios web con credenciales almacenadas. Si esta función está inhabilitada, se te solicitará la confirmación cada vez que intentes iniciar sesión en un sitio web.</translation>
+<translation id="7514239104543605883">Copiar en el dispositivo</translation>
 <translation id="7514365320538308">Descargar</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Di "Ok Google"</translation>
@@ -4947,6 +4949,7 @@
 <translation id="8274332263553132018">Enviar archivo</translation>
 <translation id="8274924778568117936">No apagues ni cierres tu <ph name="DEVICE_TYPE" /> hasta que termine de actualizarse. Tu <ph name="DEVICE_TYPE" /> se reiniciará cuando se complete la instalación.</translation>
 <translation id="8275038454117074363">Importar</translation>
+<translation id="8275080796245127762">Llamar desde tu dispositivo</translation>
 <translation id="8276560076771292512">Vaciar la caché y volver a cargar de manera forzada</translation>
 <translation id="8281886186245836920">Saltar</translation>
 <translation id="8282947398454257691">Conocer tu identificador de dispositivo único</translation>
@@ -5267,6 +5270,7 @@
 <translation id="8758418656925882523">Habilitar dictado (hablar para escribir)</translation>
 <translation id="8759408218731716181">No se puede configurar el inicio de sesión múltiple</translation>
 <translation id="8759753423332885148">Más información</translation>
+<translation id="8761945298804995673">El usuario indicado ya existe</translation>
 <translation id="8762886931014513155">Es necesario actualizar tu <ph name="DEVICE_TYPE" /></translation>
 <translation id="8763927697961133303">Dispositivo USB</translation>
 <translation id="8767621466733104912">Actualizar Chrome automáticamente para todos los usuarios</translation>
@@ -5355,6 +5359,7 @@
 <translation id="8879284080359814990">&amp;Mostrar como pestaña</translation>
 <translation id="8879921471468674457">Recordar información de inicio de sesión</translation>
 <translation id="8881020143150461183">Vuelve a intentarlo. Si necesitas asistencia técnica, ponte en contacto con <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Habilitar la aceleración del panel táctil</translation>
 <translation id="8884570509232205463">Ahora, el dispositivo se bloqueará a las <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock no está disponible</translation>
 <translation id="8888253246822647887">La aplicación se abrirá cuando la actualización se haya completado. Las actualizaciones pueden tardar varios minutos.</translation>
diff --git a/chrome/app/resources/generated_resources_et.xtb b/chrome/app/resources/generated_resources_et.xtb
index 42ffb88..ce58cd27 100644
--- a/chrome/app/resources/generated_resources_et.xtb
+++ b/chrome/app/resources/generated_resources_et.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Oma laienduste nägemiseks kõigis oma arvutites <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">See kustutab kõik turvavõtmel olevad andmed, sh selle PIN-koodi</translation>
 <translation id="1475502736924165259">Teil on sertifikaate, mis ei sobi ühtegi muusse kategooriasse</translation>
+<translation id="1476088332184200792">Kopeeri seadmesse</translation>
 <translation id="1476607407192946488">&amp;Keeleseaded</translation>
 <translation id="1478340334823509079">Üksikasjad: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Installimine ei ole lubatud</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Prindi süsteemidialoogi abil ... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Küsib enne saatmist (soovitatav)</translation>
 <translation id="2384436799579181135">Ilmnes viga. Kontrollige printerit ja proovige uuesti.</translation>
-<translation id="2386926718981642523">Pääsete oma assistendile juurde igal ajal, öeldes lihtsalt „Ok Google”</translation>
 <translation id="2387458720915042159">Puhverserveri ühenduse tüüp</translation>
 <translation id="2391419135980381625">Standardne font</translation>
 <translation id="2392369802118427583">Aktiveeri</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Madal</translation>
 <translation id="2942560570858569904">Ootamine …</translation>
 <translation id="2942581856830209953">Selle lehe kohandamine</translation>
+<translation id="294308617863380348">Sealhulgas kolmanda osapoole küpsisefailid</translation>
 <translation id="2944060181911631861">Saada kasutus- ja diagnostikaandmeid. Aidake täiustada Androidi kasutuskogemust, saates Google'ile automaatselt seadme teavet ning rakenduse kasutus- ja  diagnostikaandmeid. See aitab parandada süsteemi ja rakenduse stabiilsust ning muud. Teatud koondandmed on abiks ka Google'i rakendustele ja partneritele, näiteks Androidi arendajatele. Kui täiendavad veebi- ja rakendustegevused on sisse lülitatud, võidakse need andmed salvestada teie Google'i kontole. <ph name="BEGIN_LINK1" />Lisateave<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Lisa ühendus</translation>
 <translation id="2948300991547862301">Avage <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Klõpsake edasi minemiseks, hoidke all ajaloo kuvamiseks</translation>
 <translation id="2963151496262057773">Järgmine pistikprogramm ei reageeri: <ph name="PLUGIN_NAME" />Kas soovite selle peatada?</translation>
 <translation id="2966937470348689686">Androidi eelistuste haldamine</translation>
-<translation id="2972557485845626008">Püsivara</translation>
 <translation id="2972581237482394796">&amp;Tee uuesti</translation>
 <translation id="2973324205039581528">Vaigista sait</translation>
 <translation id="2977480621796371840">Grupist eemaldamine</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Eraldaja</translation>
 <translation id="3387614642886316601">Kasuta täiustatud õigekirjakontrolli</translation>
-<translation id="3393352139658145068">Assistendi aktiveerimine, kui keegi ütleb „Ok Google”. Aku säästmiseks toimib „Ok Google” ainult juhul, kui seade on ühendatud toiteallikaga.</translation>
 <translation id="3396800784455899911">Kui klõpsate nupul „Nõustu ja jätka”, nõustute nende Google'i teenuste puhul andmete ülalkirjeldatud töötlemisega.</translation>
 <translation id="3399432415385675819">Märguanded keelatakse</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> × <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertsi) – ülereaskannimine</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Kuva <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Ava uuel vahelehel</translation>
 <translation id="3615073365085224194">Puudutage oma sõrmega sõrmejäljeandurit</translation>
+<translation id="3615579745882581859">Faili <ph name="FILE_NAME" /> skannitakse.</translation>
 <translation id="3616741288025931835">Kustuta sirvi&amp;mise andmed...</translation>
 <translation id="3617891479562106823">Taustad pole saadaval. Proovige hiljem uuesti</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Veebilehtede osade blokeerimine</translation>
 <translation id="3760460896538743390">Uuri &amp;taustalehte</translation>
 <translation id="37613671848467444">&amp;Ava inkognito aknas</translation>
-<translation id="3764314093345384080">Üksikasjalik järguteave</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Ühendus USB-seadmega}other{Ühendus # USB-seadmega}}</translation>
 <translation id="3765246971671567135">Võrguühenduseta demorežiimi reeglit ei saanud lugeda.</translation>
 <translation id="3768037234834996183">Eelistuste sünkroonimine ...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Kuva sisselogimisekraanil kasutajanimed ja fotod</translation>
 <translation id="4142052906269098341">Avage seade <ph name="DEVICE_TYPE" /> oma telefoniga. <ph name="LINK_BEGIN" />Lisateave<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Vaadake parema kvaliteediga videoid ja säästke aku tööiga. Videot esitatakse ainult Casti toega ekraanikuval.</translation>
-<translation id="4145922204387553806">Saate lubada assistendil esitada ekraanil kuvatavaga seotud teavet</translation>
 <translation id="4146026355784316281">Ava alati süsteemivaaturiga</translation>
 <translation id="4146785383423576110">Lähtestamine ja puhastamine</translation>
 <translation id="4147911968024186208">Proovige uuesti. Kui viga ilmub siiski, võtke ühendust tugiteenuse esindajaga.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Keelte vahetamine</translation>
 <translation id="4301671483919369635">Lehel on lubatud faile muuta</translation>
 <translation id="4303079906735388947">Looge turvavõtme jaoks uus PIN-kood</translation>
+<translation id="4305402730127028764">Kopeeri seadmesse <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Rakendusi tuleb esitada sisu tüübiga „<ph name="CONTENT_TYPE" />”</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />kB (<ph name="NUM_KILOBYTES_LIVE" />kB reaalajas)</translation>
 <translation id="4310139701823742692">Failivorming on vale. Kontrollige PPD-faili ja proovige uuesti.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Proovige uuesti.</translation>
 <translation id="4535127706710932914">Vaikeprofiil</translation>
 <translation id="4535767533210902251">Sõrmejäljeandur on teie klaviatuuri paremal ülal olev klahv. Puudutage seda õrnalt mis tahes sõrmega.</translation>
-<translation id="4538417792467843292">Kustutab sõna</translation>
 <translation id="4538684596480161368">Blokeeri alati saidil <ph name="HOST" /> pistikprogrammid, mis ei ole liivakastirežiimis</translation>
 <translation id="4538792345715658285">Installitud ettevõtte reegli alusel.</translation>
 <translation id="4542520061254486227">Lugege oma andmeid veebisaitidel <ph name="WEBSITE_1" /> ja <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Faili lugemine ...</translation>
 <translation id="5368720394188453070">Teie telefon on lukus. Avage see sisenemiseks.</translation>
 <translation id="5368779022775404937">Logige sisse saidile <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Luba hiire kiirendi</translation>
 <translation id="5370819323174483825">&amp;Laadi uuesti</translation>
 <translation id="5372529912055771682">Operatsioonisüsteemi see versioon ei toeta valitud registreerimisviisi. Veenduge, et käitate uusimat versiooni, ja proovige uuesti.</translation>
 <translation id="5372579129492968947">Vabasta laiendus</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Käita see kord</translation>
 <translation id="5464660706533281090">Seda seadet ei saa lapskasutaja muuta.</translation>
 <translation id="5466374726908360271">Kleebi ja otsi üksust „<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Jagatud failide otsimine</translation>
 <translation id="5471768120198416576">Tere! Mina olen teie kõnesünteesi hääl.</translation>
 <translation id="5473333559083690127">Sisestage uus PIN-kood uuesti</translation>
 <translation id="5481941284378890518">Läheduses olevate printerite lubamine</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Kasuta vaikimisi häält, mitte klaviatuuri</translation>
 <translation id="6234474535228214774">Installimine on ootel</translation>
 <translation id="6237816943013845465">Võimaldab kohandada ekraani eraldusvõimet</translation>
+<translation id="6238767809035845642">Muust seadmest jagatud tekst</translation>
 <translation id="6238923052227198598">Säilita viimane märge lukustuskuval</translation>
 <translation id="6239558157302047471">Laadi &amp;raam uuesti</translation>
 <translation id="6241530762627360640">Juurdepääs teie süsteemiga seotud Bluetoothi seadmete teabele ja läheduses olevate Bluetoothi seadmete tuvastamine.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Allalaadimine on tühistatud: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Krüpteeri sünkroonitud paroolid minu Google'i kasutajanime ja parooliga</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – jagab töölaua sisu</translation>
-<translation id="6580151766480067746">ARC versioon</translation>
 <translation id="6582080224869403177">Turvafunktsioonide värskendamiseks lähtestage <ph name="DEVICE_TYPE" />.</translation>
 <translation id="6584878029876017575">Microsofti pikaajaline signeerimine</translation>
 <translation id="6586451623538375658">Vaheta esmast hiirenuppu</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Lülita sisse täiustatud õigekirjakontroll</translation>
 <translation id="7487969577036436319">Ühtegi komponenti pole installitud</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Ava kõik}=1{&amp;Ava järjehoidja}other{&amp;Ava kõik (#)}}</translation>
+<translation id="7489761397368794366">Kõne teie seadmest</translation>
 <translation id="749028671485790643">Isik <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-aadress</translation>
 <translation id="7493386493263658176">Laiendus <ph name="EXTENSION_NAME" /> võib koguda kogu sisestatud teksti, sh isiklikud andmed, nagu paroolid ja krediitkaardinumbrid. Kas soovite seda laiendust kasutada?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Printeritele juurdepääsu andmine</translation>
 <translation id="7510943789645525906">Hoiatab teid, kui kasutatav parool oli osa andmetega seotud rikkumisest</translation>
 <translation id="7513029293694390567">Teid logitakse salvestatud mandaadiga veebisaitidele automaatselt sisse. Kui see on keelatud, palutakse teilt iga kord enne veebisaidile sisselogimist kinnitust.</translation>
+<translation id="7514239104543605883">Kopeeri seadmesse</translation>
 <translation id="7514365320538308">Laadi alla</translation>
 <translation id="7521387064766892559">Javascript</translation>
 <translation id="7522255036471229694">Öelge: „Ok Google”</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Faili ülekandmine</translation>
 <translation id="8274924778568117936">Ärge lülitage välja ega sulgege oma seadet <ph name="DEVICE_TYPE" />, kuni värskendus lõpule viiakse. Seade <ph name="DEVICE_TYPE" /> taaskäivitatakse pärast installimise lõpetamist.</translation>
 <translation id="8275038454117074363">Impordi</translation>
+<translation id="8275080796245127762">Kõne teie seadmest</translation>
 <translation id="8276560076771292512">Tühjenda vahemälu ja tee põhjalik uuestilaadimine</translation>
 <translation id="8281886186245836920">Jäta vahele</translation>
 <translation id="8282947398454257691">Teave teie ainulaadse seadme koodi kohta</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Dikteerimise lubamine (kõnelemine sisestamiseks)</translation>
 <translation id="8759408218731716181">Mitmesse kontosse sisselogimist ei saa häälestada</translation>
 <translation id="8759753423332885148">Lisateave.</translation>
+<translation id="8761945298804995673">See kasutaja on juba olemas</translation>
 <translation id="8762886931014513155">Teie <ph name="DEVICE_TYPE" /> vajab värskendamist</translation>
 <translation id="8763927697961133303">USB-seade</translation>
 <translation id="8767621466733104912">Värskenda Chrome'i automaatselt kõikide kasutajate jaoks</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Kuva vahelehena</translation>
 <translation id="8879921471468674457">Jäta sisselogimisandmed meelde</translation>
 <translation id="8881020143150461183">Proovige uuesti. Tehnilise toe saamiseks võtke ühendust operaatoriga <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Luba puuteplaadi kiirendi</translation>
 <translation id="8884570509232205463">Sinu seade lukustatakse nüüd kell <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock pole saadaval</translation>
 <translation id="8888253246822647887">Rakendus avatakse, kui uuendamine on lõppenud. Uuendamiseks võib kuluda mõni minut.</translation>
diff --git a/chrome/app/resources/generated_resources_fa.xtb b/chrome/app/resources/generated_resources_fa.xtb
index cee53e2..48293787 100644
--- a/chrome/app/resources/generated_resources_fa.xtb
+++ b/chrome/app/resources/generated_resources_fa.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">برای دریافت افزونه‌هایتان در همه رایانه‌هایتان، <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">با این کار، همه داده‌های موجود در کلید امنیتی، ازجمله پین آن، پاک‌سازی می‌شود</translation>
 <translation id="1475502736924165259">گواهی‌هایی برای فایل دارید که در هیچ‌کدام از دسته‌های دیگر قرار نمی‌گیرد</translation>
+<translation id="1476088332184200792">کپی در دستگاه</translation>
 <translation id="1476607407192946488">&amp;تنظیمات زبان</translation>
 <translation id="1478340334823509079">جزئیات: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">نصب فعال نشده است</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">چاپ با استفاده از گفتگوی سیستم... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">قبل از ارسال سؤال شود (توصیه می‌شود)</translation>
 <translation id="2384436799579181135">خطایی روی داده است. لطفاً چاپگرتان را بررسی و دوباره امتحان کنید.</translation>
-<translation id="2386926718981642523">‏هرزمان می‌گویید «Ok Google»، به «دستیار» دسترسی داشته باشید</translation>
 <translation id="2387458720915042159">نوع اتصال پراکسی</translation>
 <translation id="2391419135980381625">قلم استاندارد</translation>
 <translation id="2392369802118427583">فعالسازی</translation>
@@ -1338,6 +1338,7 @@
 <translation id="2941112035454246133">کم</translation>
 <translation id="2942560570858569904">درحال انتظار…</translation>
 <translation id="2942581856830209953">سفارشی کردن این صفحه</translation>
+<translation id="294308617863380348">شامل کوکی‌های شخص ثالث</translation>
 <translation id="2944060181911631861">‏داده‌های استفاده و عیب‌یابی را ارسال کنید. با ارسال خودکار داده‌های تشخیص عیب و داده‌های استفاده از دستگاه و برنامه به Google، به بهبود تجربه استفاده از Android کمک کنید. این داده‌ها به بهبود پایداری سیستم و برنامه و موارد دیگر کمک خواهد کرد. بعضی داده‌های انبوه نیز به برنامه‌ها و شرکای Google (مانند برنامه‌نویس‌های Android) کمک می‌کند. اگر تنظیم «فعالیت وب و برنامه» تکمیلی روشن باشد، ممکن است این داده‌ها در حساب Google شما ذخیره شود. <ph name="BEGIN_LINK1" />بیشتر بدانید<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">افزودن اتصال</translation>
 <translation id="2948300991547862301">رفتن به <ph name="PAGE_TITLE" /></translation>
@@ -1352,7 +1353,6 @@
 <translation id="2961695502793809356">برای رفتن به جلو کلیک کنید، برای دیدن سابقه نگه دارید</translation>
 <translation id="2963151496262057773">این افزایه جواب نمی‌دهد: <ph name="PLUGIN_NAME" />آیا می‌خواهید متوقف شود؟</translation>
 <translation id="2966937470348689686">‏مدیریت تنظیمات برگزیده Android</translation>
-<translation id="2972557485845626008">سفت‌افزار</translation>
 <translation id="2972581237482394796">انجام مجدد</translation>
 <translation id="2973324205039581528">بی‌صدا کردن سایت</translation>
 <translation id="2977480621796371840">برداشتن از گروه</translation>
@@ -1610,7 +1610,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">جداساز</translation>
 <translation id="3387614642886316601">استفاده از غلط‌گیر املای بهبودیافته</translation>
-<translation id="3393352139658145068">‏وفتی فردی می‌گوید «Ok Google»، «دستیار» فعال شود. برای صرفه‌جویی در مصرف باتری، «Ok Google» فقط زمانی روشن است که دستگاهتان به برق متصل باشد.</translation>
 <translation id="3396800784455899911">‏با کلیک کردن روی دکمه «پذیرفتن و ادامه»، با پردازش مربوط به این سرویس‌های Google که در بالا توضیح داده شد موافقت می‌کنید.</translation>
 <translation id="3399432415385675819">اعلان‌ها غیرفعال خواهند شد</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> × <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> هرتز) - درهم‌بافته</translation>
@@ -1771,6 +1770,7 @@
 <translation id="3613134908380545408">نشان دادن <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">باز &amp;کردن در برگهٔ جدید</translation>
 <translation id="3615073365085224194">حسگر اثر انگشت را با انگشتانتان لمس کنید</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> درحال اسکن است.</translation>
 <translation id="3616741288025931835">&amp;پاک کردن داده‌های مرور...</translation>
 <translation id="3617891479562106823">پس‌زمینه‌ها دردسترس نیست. بعداً دوباره امتحان کنید.</translation>
 <translation id="3619115746895587757">کاپوچینو</translation>
@@ -1885,7 +1885,6 @@
 <translation id="3759933321830434300">مسدود کردن بخش‌هایی از صفحات وب</translation>
 <translation id="3760460896538743390">بازرسی صفحه &amp;پس‌زمینه</translation>
 <translation id="37613671848467444">باز کردن در پنجره &amp;ناشناس</translation>
-<translation id="3764314093345384080">اطلاعات دقیق ساخت</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{‏ارتباط با یک دستگاه USB}one{‏ارتباط با # دستگاه USB}other{‏ارتباط با # دستگاه USB}}</translation>
 <translation id="3765246971671567135">خط‌مشی آفلاین حالت نمایشی خوانده نشد.</translation>
 <translation id="3768037234834996183">در حال همگام‌سازی تنظیمات ترجیحی...</translation>
@@ -2166,7 +2165,6 @@
 <translation id="4138267921960073861">نمایش نام‌های کاربری و عکس‌ها در صفحه ورود به سیستم</translation>
 <translation id="4142052906269098341">قفل <ph name="DEVICE_TYPE" /> را با تلفنتان باز کنید. <ph name="LINK_BEGIN" />بیشتر بدانید<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">‏دریافت ویدیوی با کیفیت بهتر و افزایش ماندگاری شارژ باتری. ویدیو فقط در صفحه‌نمایش سازگار با Cast پخش خواهد شد.</translation>
-<translation id="4145922204387553806">به «دستیار» اجازه دهید اطلاعات مرتبط با آنچه روی صفحه است نشان دهد</translation>
 <translation id="4146026355784316281">همیشه با نظاره‌گر سیستم باز شود</translation>
 <translation id="4146785383423576110">بارنشانی و پاک کردن</translation>
 <translation id="4147911968024186208">لطفاً دوباره امتحان کنید. اگر باز این خطا را دیدید، لطفاً با نماینده پشتیبانی‌تان تماس بگیرید.</translation>
@@ -2253,6 +2251,7 @@
 <translation id="4297322094678649474">تغییر زبان‌ها</translation>
 <translation id="4301671483919369635">این صفحه مجاز به ویرایش فایل‌ها است</translation>
 <translation id="4303079906735388947">پین جدیدی برای کلید امنیتی‌تان تنظیم کنید</translation>
+<translation id="4305402730127028764">کپی در <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">نوع محتوای برنامه باید «<ph name="CONTENT_TYPE" />» باشد</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> کیلوبایت (<ph name="NUM_KILOBYTES_LIVE" />کیلوبایت زنده)</translation>
 <translation id="4310139701823742692">‏قالب فایل صحیح نیست. فایل PPD را بررسی کرده و دوباره امتحان کنید.</translation>
@@ -2388,7 +2387,6 @@
 <translation id="4534661889221639075">دوباره امتحان کنید.</translation>
 <translation id="4535127706710932914">نمایه پیش‌فرض</translation>
 <translation id="4535767533210902251">حسگر اثر انگشت، بالاترین کلید سمت چپ در صفحه‌کلید است. با یکی از انگشت‌هایتان آن را به‌آرامی لمس کنید.</translation>
-<translation id="4538417792467843292">حذف کلمه</translation>
 <translation id="4538684596480161368">همیشه افزایه‌های آزمایشی نشده در <ph name="HOST" /> مسدود شوند</translation>
 <translation id="4538792345715658285">نصب شده توسط خط‌مشی سازمانی.</translation>
 <translation id="4542520061254486227">خواندن داده‌های شما در <ph name="WEBSITE_1" /> و <ph name="WEBSITE_2" /></translation>
@@ -2932,6 +2930,7 @@
 <translation id="5367091008316207019">درحال خواندن فایل ...</translation>
 <translation id="5368720394188453070">تلفنتان قفل است. برای وارد شدن قفل آن را باز کنید.</translation>
 <translation id="5368779022775404937">به سیستم <ph name="REALM" /> وارد شوید</translation>
+<translation id="5369491905435686894">فعال کردن شتاب‌دهنده موشواره</translation>
 <translation id="5370819323174483825">&amp;تازه‌سازی</translation>
 <translation id="5372529912055771682">حالت ثبت‌نام ارائه شده توسط این نسخه از سیستم عامل پشتیبانی نمی‌شود. لطفاً مطمئن شوید که جدیدترین نسخه را اجرا می‌کنید و دوباره امتحان کنید.</translation>
 <translation id="5372579129492968947">برداشتن پین افزونه</translation>
@@ -3004,6 +3003,7 @@
 <translation id="5464632865477611176">این بار اجرا شود</translation>
 <translation id="5464660706533281090">کاربر کودک نمی‌تواند این تنظیم را تغییر دهد.</translation>
 <translation id="5466374726908360271">جای‌گذاری و جستجوی «<ph name="SEARCH_TERMS" />»</translation>
+<translation id="5468173180030470402">درحال یافتن دستگاه ذخیره‌سازی متصل به شبکه</translation>
 <translation id="5471768120198416576">سلام! من صدای نوشتار به گفتار شما هستم.</translation>
 <translation id="5473333559083690127">پین جدید را دوباره وارد کنید</translation>
 <translation id="5481941284378890518">افزودن چاپگرهای اطراف</translation>
@@ -3539,6 +3539,7 @@
 <translation id="6233154960150021497">پیش‌فرض استفاده از صدا به‌جای صفحه‌کلید</translation>
 <translation id="6234474535228214774">نصب درانتظار</translation>
 <translation id="6237816943013845465">به شما امکان می‌دهد وضوح صفحه را تنظیم کنید</translation>
+<translation id="6238767809035845642">نوشتار هم‌رسانی‌شده از دستگاه دیگر</translation>
 <translation id="6238923052227198598">نگه داشتن جدیدترین یادداشت در صفحه درحالت قفل</translation>
 <translation id="6239558157302047471">تازه‌سازی قاب</translation>
 <translation id="6241530762627360640">دسترسی به اطلاعات دستگاه‌های بلوتوث مرتبط شده با سیستم شما و کشف دستگاه‌های بلوتوث در این نزدیکی.</translation>
@@ -3765,7 +3766,6 @@
 <translation id="6577284282025554716">بارگیری لغو شد: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">‏رمزگذاری گذرواژه‌های همگام‌سازی‌شده با گذرواژه و نام کاربری Google شما</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - محتوای میز کار هم‌رسانی می‌شود</translation>
-<translation id="6580151766480067746">‏نسخه ARC</translation>
 <translation id="6582080224869403177">برای ارتقای امنیت‌تان، <ph name="DEVICE_TYPE" /> را بازنشانی کنید.</translation>
 <translation id="6584878029876017575">‏امضای دائمی Microsoft</translation>
 <translation id="6586451623538375658">جابجایی دکمه اصلی ماوس</translation>
@@ -4370,6 +4370,7 @@
 <translation id="7487141338393529395">روشن کردن غلط‌گیر املای بهبود‌یافته</translation>
 <translation id="7487969577036436319">هیچ مؤلفه‌ای نصب نشده است</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{باز کردن همه}=1{باز کردن نشانک}one{باز کردن همه (#)}other{باز کردن همه (#)}}</translation>
+<translation id="7489761397368794366">تماس از دستگاه</translation>
 <translation id="749028671485790643">نفر <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">‏نشانی MAC</translation>
 <translation id="7493386493263658176">ممکن است افزونه <ph name="EXTENSION_NAME" /> همه نوشتاری را که تایپ می‌کنید (از جمله داده‌های شخصی مانند گذرواژه‌ها و شماره کارت‌های اعتباری) جمع‌آوری کند. می‌خواهید از این افزونه استفاده کنید؟</translation>
@@ -4389,6 +4390,7 @@
 <translation id="7508054832109420082">ارائه دسترسی به چاپگرها</translation>
 <translation id="7510943789645525906">اگر گذرواژه مورداستفاده بخشی از نقض داده باشد، هشدار می‌دهد</translation>
 <translation id="7513029293694390567">با استفاده از اعتبارنامه‌های ذخیره‌شده، به‌طور خودکار به سیستم وب‌سایت‌ها وارد شوید. اگر این قابلیت غیرفعال باشد، هر بار قبل از وارد شدن به وب‌سایت از شما برای تأیید اطلاعات درخواست می‌شود.</translation>
+<translation id="7514239104543605883">کپی در دستگاه</translation>
 <translation id="7514365320538308">بارگیری</translation>
 <translation id="7521387064766892559">جاوا اسکریپت</translation>
 <translation id="7522255036471229694">‏بگویید «Ok Google»</translation>
@@ -4945,6 +4947,7 @@
 <translation id="8274332263553132018">ارسال محتوای فایل</translation>
 <translation id="8274924778568117936">تا وقتی به‌روزرسانی به پایان نرسیده است، <ph name="DEVICE_TYPE" /> را خاموش نکنید یا نبندید. بعد از کامل شدن نصب، <ph name="DEVICE_TYPE" /> راه‌اندازی مجدد می‌شود.</translation>
 <translation id="8275038454117074363">وارد کردن</translation>
+<translation id="8275080796245127762">تماس از دستگاه</translation>
 <translation id="8276560076771292512">خالی کردن حافظه پنهان و تازه‌سازی سخت</translation>
 <translation id="8281886186245836920">رد شدن</translation>
 <translation id="8282947398454257691">شناسه یکتای دستگاهتان را بداند</translation>
@@ -5265,6 +5268,7 @@
 <translation id="8758418656925882523">فعال کردن املا (صحبت برای تایپ)</translation>
 <translation id="8759408218731716181">تنظیم ورود چندگانه به سیستم ممکن نیست</translation>
 <translation id="8759753423332885148">بیشتر بیاموزید.</translation>
+<translation id="8761945298804995673">این کاربر از قبل وجود دارد</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> شما باید به‌روزرسانی شود</translation>
 <translation id="8763927697961133303">‏دستگاه USB</translation>
 <translation id="8767621466733104912">‏به‌روزرسانی‌ خودکار Chrome برای همه کاربران</translation>
@@ -5353,6 +5357,7 @@
 <translation id="8879284080359814990">&amp;نمایش به‌صورت برگه</translation>
 <translation id="8879921471468674457">اطلاعات ورود به سیستم به‌خاطر سپرده شود</translation>
 <translation id="8881020143150461183">لطفاً دوباره امتحان کنید. برای پشتیبانی فنی، با <ph name="CARRIER_NAME" /> تماس بگیرید.</translation>
+<translation id="8883273463630735858">فعال کردن شتاب‌دهنده صفحه لمسی</translation>
 <translation id="8884570509232205463">اکنون دستگاهتان ساعت <ph name="UNLOCK_TIME" /> قفل می‌شود.</translation>
 <translation id="8885197664446363138">‏Smart Lock در دسترس نیست</translation>
 <translation id="8888253246822647887">وقتی ارتقا به پایان برسد، برنامه‌تان باز خواهد شد. ارتقا ممکن است چند دقیقه طول بکشد.</translation>
diff --git a/chrome/app/resources/generated_resources_fi.xtb b/chrome/app/resources/generated_resources_fi.xtb
index 266b952..86346cd 100644
--- a/chrome/app/resources/generated_resources_fi.xtb
+++ b/chrome/app/resources/generated_resources_fi.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213"><ph name="SIGN_IN_LINK" />, niin voit käyttää laajennuksia kaikilla tietokoneillasi.</translation>
 <translation id="1470967055429794975">Tämä poistaa kaiken suojausavaimen datan, mukaan lukien sen PIN-koodin</translation>
 <translation id="1475502736924165259">Sinulla on tallennettuja varmenteita, jotka eivät sovi muihin luokkiin.</translation>
+<translation id="1476088332184200792">Kopioi laitteelle</translation>
 <translation id="1476607407192946488">&amp;Kieliasetukset</translation>
 <translation id="1478340334823509079">Lisätiedot: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Asentaminen ei ole käytössä.</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Tulosta järjestelmän tulostusikkunalla... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Kysy ennen lähettämistä (suositus)</translation>
 <translation id="2384436799579181135">Tapahtui virhe. Tarkista tulostimesi ja yritä uudelleen.</translation>
-<translation id="2386926718981642523">Käytä Assistantia milloin tahansa sanomalla Ok Google</translation>
 <translation id="2387458720915042159">Välityspalvelinyhteyden tyyppi</translation>
 <translation id="2391419135980381625">Peruskirjasin</translation>
 <translation id="2392369802118427583">Aktivoi</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Matala</translation>
 <translation id="2942560570858569904">Odotetaan…</translation>
 <translation id="2942581856830209953">Muokkaa sivua</translation>
+<translation id="294308617863380348">Mukaan lukien kolmannen osapuolen evästeet</translation>
 <translation id="2944060181911631861">Lähetä käyttö- ja diagnostiikkadataa. Auta parantamaan Android-käyttökokemusta lähettämällä diagnostiikkadataa sekä laitteen ja sovellusten käyttödataa automaattisesti Googlelle. Datan avulla parannetaan esimerkiksi järjestelmän ja sovellusten vakautta. Kootusta datasta on hyötyä myös Googlen sovelluksille ja kumppaneille, kuten Android-kehittäjille. Jos olet ottanut käyttöön muun verkko- ja sovellustoiminnan asetuksen, tätä dataa voidaan tallentaa Google-tilillesi. <ph name="BEGIN_LINK1" />Lue lisää<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Lisää yhteys</translation>
 <translation id="2948300991547862301">Siirry kohtaan <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Siirry eteenpäin klikkaamalla, tarkastele historiaa pitämällä alhaalla</translation>
 <translation id="2963151496262057773">Seuraava laajennus ei vastaa: <ph name="PLUGIN_NAME" />. Haluatko pysäyttää sen?</translation>
 <translation id="2966937470348689686">Hallitse Android-asetuksia</translation>
-<translation id="2972557485845626008">Laiteohjelmisto</translation>
 <translation id="2972581237482394796">&amp;Tee uudelleen</translation>
 <translation id="2973324205039581528">Mykistä sivusto</translation>
 <translation id="2977480621796371840">Poista ryhmästä</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Erotin</translation>
 <translation id="3387614642886316601">Käytä parannettua oikeinkirjoituksen tarkistusta</translation>
-<translation id="3393352139658145068">Aktivoi Assistant, kun joku sanoo Ok Google. Jos haluat säästää virtaa, Ok Google on käytössä vain, kun laitteesi on yhdistetty virtalähteeseen.</translation>
 <translation id="3396800784455899911">Kun valitset Hyväksy ja jatka, hyväksyt käsittelyn näissä Google-palveluissa edellä kuvatuilla tavoilla.</translation>
 <translation id="3399432415385675819">Ilmoitukset poistetaan käytöstä.</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertsiä) – lomitettu</translation>
@@ -1672,7 +1671,7 @@
 <translation id="3470442499439619530">Poista tämä käyttäjä</translation>
 <translation id="3471876058939596279">HDMI- ja USB Type-C ‑portteja ei voi käyttää videota varten yhtä aikaa. Käytä toista videoporttia.</translation>
 <translation id="3473479545200714844">Ruudun suurentaminen</translation>
-<translation id="3475843873335999118">Sormenjälkeäsi ei tunnistettu vieläkään. Anna salasana.</translation>
+<translation id="3475843873335999118">Sormenjälkeäsi ei tunnistettu vieläkään. Lisää salasana.</translation>
 <translation id="3476303763173086583">Lähetä käyttö- ja diagnostiikkadataa. Auta parantamaan lapsesi Android-käyttökokemusta lähettämällä diagnostiikkadataa sekä laitteen ja sovellusten käyttödataa automaattisesti Googlelle. Dataa ei käytetä lapsesi henkilöllisyyden selvittämiseen – sen avulla parannetaan esimerkiksi järjestelmän ja sovellusten vakautta. Kootusta datasta on hyötyä myös Googlen sovelluksille ja kumppaneille, kuten Android-kehittäjille. Omistaja on ottanut tämän <ph name="BEGIN_LINK1" />asetuksen<ph name="END_LINK1" /> käyttöön. Omistaja voi lähettää tätä laitetta koskevaa diagnostiikka- ja käyttödataa Googlelle. Jos muun verkko- ja sovellustoiminnan asetus on lapsella käytössä, tätä dataa voidaan tallentaa hänen Google-tililleen. <ph name="BEGIN_LINK2" />Lue lisää<ph name="END_LINK2" /></translation>
 <translation id="347670947055184738">Hups! Järjestelmä ei onnistunut noutamaan käytäntöä laitteellesi.</translation>
 <translation id="347785443197175480">Anna sivuston <ph name="HOST" /> käyttää edelleen kameraasi ja mikrofoniasi</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Näytä <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">Avaa uudessa välilehdessä</translation>
 <translation id="3615073365085224194">Kosketa sormenjälkitunnistinta sormellasi.</translation>
+<translation id="3615579745882581859">Skannataan: <ph name="FILE_NAME" /></translation>
 <translation id="3616741288025931835">&amp;Poista selaustiedot...</translation>
 <translation id="3617891479562106823">Taustat eivät ole käytettävissä. Yritä myöhemmin uudelleen.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Estä joitain verkkosivujen osia</translation>
 <translation id="3760460896538743390">Tarkista &amp;taustasivu</translation>
 <translation id="37613671848467444">Avaa incognito-ikkunassa</translation>
-<translation id="3764314093345384080">Koontiversion yksityiskohtaiset tiedot</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Käyttää USB-laitetta}other{Käyttää # USB-laitetta}}</translation>
 <translation id="3765246971671567135">Esittelytilan offline-käytäntöjä ei voitu lukea.</translation>
 <translation id="3768037234834996183">Asetuksia synkronoidaan…</translation>
@@ -2166,7 +2165,6 @@
 <translation id="4138267921960073861">Näytä käyttäjänimet ja valokuvat kirjautumisruudulla</translation>
 <translation id="4142052906269098341">Avaa <ph name="DEVICE_TYPE" /> puhelimellasi. <ph name="LINK_BEGIN" />Lue lisää<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Katso laadukkaampia videoita ja säästä akkua. Videoita toistetaan vain Cast-yhteensopivalla näytöllä.</translation>
-<translation id="4145922204387553806">Anna Assistantin näyttää tietoa näytön sisällöstä</translation>
 <translation id="4146026355784316281">Avaa aina järjestelmän katselusovelluksella</translation>
 <translation id="4146785383423576110">Nollaa ja puhdista</translation>
 <translation id="4147911968024186208">Yritä uudelleen. Jos näet tämän virheen uudelleen, ota yhteyttä tukihenkilöön.</translation>
@@ -2253,6 +2251,7 @@
 <translation id="4297322094678649474">Vaihda kieltä</translation>
 <translation id="4301671483919369635">Tämä sivu saa muokata tiedostoja</translation>
 <translation id="4303079906735388947">Aseta suojausavaimelle uusi PIN-koodi</translation>
+<translation id="4305402730127028764">Kopioi: <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Sovellusten näyttämiseen tulee käyttää sisältötyyppiä <ph name="CONTENT_TYPE" />.</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> kt (<ph name="NUM_KILOBYTES_LIVE" /> kt live)</translation>
 <translation id="4310139701823742692">Tiedostomuoto on virheellinen. Tarkasta PPD-tiedosto ja yritä uudelleen.</translation>
@@ -2388,7 +2387,6 @@
 <translation id="4534661889221639075">Yritä uudelleen.</translation>
 <translation id="4535127706710932914">Oletusprofiili</translation>
 <translation id="4535767533210902251">Sormenjälkitunnistin on näppäimistön oikeassa yläkulmassa. Kosketa sitä kevyesti millä tahansa sormella.</translation>
-<translation id="4538417792467843292">Poista sana</translation>
 <translation id="4538684596480161368">Estä aina hiekkalaatikolla testaamattomat laajennukset sivustolla <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Asennettu yrityskäytännön mukaisesti</translation>
 <translation id="4542520061254486227">Lukea tietojasi sivustoissa <ph name="WEBSITE_1" /> ja <ph name="WEBSITE_2" /></translation>
@@ -2932,6 +2930,7 @@
 <translation id="5367091008316207019">Luetaan tiedostoa...</translation>
 <translation id="5368720394188453070">Puhelimesi on lukittu. Avaa lukitus käyttääksesi sitä.</translation>
 <translation id="5368779022775404937">Kirjaudu sisään kohteeseen <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Ota käyttöön hiiren nopeuttaminen</translation>
 <translation id="5370819323174483825">&amp;Lataa uudelleen</translation>
 <translation id="5372529912055771682">Tämä käyttöjärjestelmän versio ei tue annettua käyttöönottotilaa. Varmista, että käytössä on uusin versio, ja yritä uudelleen.</translation>
 <translation id="5372579129492968947">Irrota laajennus</translation>
@@ -3004,6 +3003,7 @@
 <translation id="5464632865477611176">Suorita tällä kertaa</translation>
 <translation id="5464660706533281090">Lapsikäyttäjä ei voi muuttaa tätä asetusta.</translation>
 <translation id="5466374726908360271">Liitä ja tee haku <ph name="SEARCH_TERMS" /></translation>
+<translation id="5468173180030470402">Etsitään jaettuja tiedostoja</translation>
 <translation id="5471768120198416576">Hei! Olen tekstistä puheeksi ‑äänesi.</translation>
 <translation id="5473333559083690127">Anna uusi PIN-koodi uudelleen</translation>
 <translation id="5481941284378890518">Lisää lähellä olevia tulostimia</translation>
@@ -3178,7 +3178,7 @@
 <translation id="5707185214361380026">Laajennuksen lataaminen seuraavasta kohteesta epäonnistui:</translation>
 <translation id="5708171344853220004">Microsoftin päänimi</translation>
 <translation id="5709557627224531708">Aseta Chrome oletusselaimeksi</translation>
-<translation id="5711983031544731014">Avaaminen ei onnistu. Anna salasana.</translation>
+<translation id="5711983031544731014">Avaaminen ei onnistu. Lisää salasana.</translation>
 <translation id="5713723565110096165">Väärä PIN-koodi. Yrityksiä jäljellä: <ph name="RETRIES" />.</translation>
 <translation id="5715711091495208045">Laajennuksen välittäjä: <ph name="PLUGIN_NAME" /></translation>
 <translation id="5719603411793408026">Oletushakukoneet</translation>
@@ -3541,6 +3541,7 @@
 <translation id="6233154960150021497">Oletuksena puhe näppäimistön sijaan</translation>
 <translation id="6234474535228214774">Odottaa asennusta</translation>
 <translation id="6237816943013845465">Sallii näytön resoluution säätämisen.</translation>
+<translation id="6238767809035845642">Toiselta laitteelta jaettu teksti</translation>
 <translation id="6238923052227198598">Jätä viimeisin muistiinpano lukitusnäytölle</translation>
 <translation id="6239558157302047471">Lataa kehys uudelleen</translation>
 <translation id="6241530762627360640">Käyttää järjestelmäsi kanssa laitepariksi liitettyjen Bluetooth-laitteiden tietoja ja löytää lähellä olevia Bluetooth-laitteita.</translation>
@@ -3767,7 +3768,6 @@
 <translation id="6577284282025554716">Lataus peruutettu: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Salaa synkronoidut salasanat Google-käyttäjänimellä ja ‑salasanalla</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – työpöydän sisältöä jaetaan</translation>
-<translation id="6580151766480067746">ARC-versio</translation>
 <translation id="6582080224869403177">Nollaa <ph name="DEVICE_TYPE" /> päivittääksesi tietoturvasi</translation>
 <translation id="6584878029876017575">Microsoftin elinikäinen allekirjoitus</translation>
 <translation id="6586451623538375658">Vaihda hiiren ykköspainiketta</translation>
@@ -4372,6 +4372,7 @@
 <translation id="7487141338393529395">Ota käyttöön parannettu oikeinkirjoituksen tarkistus</translation>
 <translation id="7487969577036436319">Ei asennettuja osia</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{Avaa kaikki}=1{Avaa kirjanmerkki}other{Avaa kaikki #}}</translation>
+<translation id="7489761397368794366">Soita laitteelta</translation>
 <translation id="749028671485790643">Henkilö <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-osoite</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> voi kerätä kaiken kirjoittamasi tekstin, myös henkilökohtaiset tiedot, kuten salasanat ja luottokorttien numerot. Haluatko käyttää tätä laajennusta?</translation>
@@ -4391,6 +4392,7 @@
 <translation id="7508054832109420082">Anna tulostinten käyttöoikeus</translation>
 <translation id="7510943789645525906">Varoittaa sinua, jos käyttämäsi salasana oli osallisena tietosuojaloukkauksessa</translation>
 <translation id="7513029293694390567">Kirjaudu automaattisesti verkkosivustoille käyttämällä tallennettuja kirjautumistietoja. Jos toiminto ei ole käytössä, sinua pyydetään vahvistamaan kirjautuminen aina, kun kirjaudut sivustolle.</translation>
+<translation id="7514239104543605883">Kopioi laitteelle</translation>
 <translation id="7514365320538308">Lataa</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Sano ”Ok Google”.</translation>
@@ -4408,7 +4410,7 @@
 <translation id="7551059576287086432"><ph name="FILE_NAME" /> lataus epäonnistui.</translation>
 <translation id="7551643184018910560">Kiinnitä hyllyyn</translation>
 <translation id="7552846755917812628">Kokeile seuraavia keinoja:</translation>
-<translation id="7553242001898162573">Anna salasana.</translation>
+<translation id="7553242001898162573">Lisää salasana.</translation>
 <translation id="7554791636758816595">Uusi välilehti</translation>
 <translation id="7556033326131260574">Smart Lock ei voinut vahvistaa tiliäsi. Avaa laite kirjoittamalla salasana.</translation>
 <translation id="7556242789364317684">Valitettavasti <ph name="SHORT_PRODUCT_NAME" /> ei voi palauttaa asetuksiasi. Jos haluat korjata tämän virheen, kohteen <ph name="SHORT_PRODUCT_NAME" /> on nollattava laitteesi Powerwashilla.</translation>
@@ -4662,7 +4664,7 @@
 <translation id="7889565820482017512">Näyttökoko</translation>
 <translation id="7892963120252479610"><ph name="ORIGIN" /> saa nähdä kansion <ph name="FOLDERNAME" /> tiedostot, kunnes suljet välilehden</translation>
 <translation id="7893008570150657497">käyttää valokuvia, musiikkia ja muuta tietokoneesi mediaa</translation>
-<translation id="7893153962594818789"><ph name="DEVICE_TYPE" /> ei käytä Bluetoothia tällä hetkellä. Anna salasana ja ota Bluetooth käyttöön.</translation>
+<translation id="7893153962594818789"><ph name="DEVICE_TYPE" /> ei käytä Bluetoothia tällä hetkellä. Lisää salasana ja ota Bluetooth käyttöön.</translation>
 <translation id="7893393459573308604"><ph name="ENGINE_NAME" /> (Oletus)</translation>
 <translation id="7897900149154324287">Muista seuraavilla kerroilla poistaa ulkoinen laitteesi käytöstä Tiedostot-sovelluksessa ennen kuin irrotat sen laitteesta. Muutoin voit menettää tietoja.</translation>
 <translation id="7898627924844766532">Pidä yläpalkissa</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">Suoratoista tiedosto</translation>
 <translation id="8274924778568117936">Pidä <ph name="DEVICE_TYPE" /> päällä, kunnes päivitys on valmis. <ph name="DEVICE_TYPE" /> käynnistyy uudelleen, kun asennus on valmis.</translation>
 <translation id="8275038454117074363">Tuo</translation>
+<translation id="8275080796245127762">Soita laitteelta</translation>
 <translation id="8276560076771292512">Tyhjennä välimuisti ja pakota päivitys</translation>
 <translation id="8281886186245836920">Ohita</translation>
 <translation id="8282947398454257691">Saada selville laitetunnuksesi.</translation>
@@ -5023,7 +5026,7 @@
 <translation id="8410775397654368139">Google Play</translation>
 <translation id="8413385045638830869">Kysy ensin (suositus)</translation>
 <translation id="8418445294933751433">&amp;Näytä välilehtenä</translation>
-<translation id="8419098111404128271">Hakutulokset kyselylle <ph name="SEARCH_TEXT" /></translation>
+<translation id="8419098111404128271">Tulokset haulle <ph name="SEARCH_TEXT" /></translation>
 <translation id="8419368276599091549">Tervetuloa <ph name="DEVICE_TYPE" />-käyttäjäksi!</translation>
 <translation id="8425213833346101688">Vaihda</translation>
 <translation id="8425492902634685834">Kiinnitä tehtäväpalkkiin</translation>
@@ -5266,6 +5269,7 @@
 <translation id="8758418656925882523">Ota sanelu käyttöön (kirjoita puhumalla)</translation>
 <translation id="8759408218731716181">Useisiin tileihin kirjautumista ei sallita</translation>
 <translation id="8759753423332885148">Lisätietoja</translation>
+<translation id="8761945298804995673">Tämä käyttäjä on jo olemassa</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> on päivitettävä</translation>
 <translation id="8763927697961133303">USB-laite</translation>
 <translation id="8767621466733104912">Päivitä kaikkien käyttäjien Chrome automaattisesti</translation>
@@ -5354,6 +5358,7 @@
 <translation id="8879284080359814990">&amp;Näytä välilehtenä</translation>
 <translation id="8879921471468674457">Muista kirjautumistiedot</translation>
 <translation id="8881020143150461183">Yritä uudelleen. Teknistä tukea tarjoaa <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Ota käyttöön kosketuslevyn nopeuttaminen</translation>
 <translation id="8884570509232205463">Laitteesi lukittuu nyt klo <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock ei ole käytettävissä</translation>
 <translation id="8888253246822647887">Sovelluksesi avautuu, kun päivitys on valmis. Päivitykset voivat kestää muutaman minuutin.</translation>
diff --git a/chrome/app/resources/generated_resources_fil.xtb b/chrome/app/resources/generated_resources_fil.xtb
index 9b22f0b1..bbb1808f 100644
--- a/chrome/app/resources/generated_resources_fil.xtb
+++ b/chrome/app/resources/generated_resources_fil.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Upang mailagay ang iyong mga extension sa lahat ng iyong computer, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Buburahin nito ang lahat ng data sa security key, kabilang ang PIN nito</translation>
 <translation id="1475502736924165259">Mayroon kang mga certificate sa file na hindi umaangkop sa alinman sa iba pang mga kategorya</translation>
+<translation id="1476088332184200792">Kopyahin sa Iyong Device</translation>
 <translation id="1476607407192946488">&amp;Mga Setting ng Wika</translation>
 <translation id="1478340334823509079">Mga detalye: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Hindi naka-enable ang pag-install</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">I-print gamit ang dialog ng system... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Magtanong bago magpadala (inirerekomenda)</translation>
 <translation id="2384436799579181135">Nagka-error. Pakisuri ang iyong printer at subukang muli.</translation>
-<translation id="2386926718981642523">I-access ang iyong Assistant sa tuwing sinasabi mo ang "Ok Google"</translation>
 <translation id="2387458720915042159">Uri ng koneksyon sa proxy</translation>
 <translation id="2391419135980381625">Karaniwang font</translation>
 <translation id="2392369802118427583">I-activate</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Mababa</translation>
 <translation id="2942560570858569904">Naghihintay...</translation>
 <translation id="2942581856830209953">I-customize ang page na ito</translation>
+<translation id="294308617863380348">Kasama ang cookies ng third party</translation>
 <translation id="2944060181911631861">Magpadala ng data ng paggamit at diagnostic na data. Tumulong sa pagpapaganda ng iyong karanasan sa Android sa pamamagitan ng awtomatikong pagpapadala ng diagnostic na data, data ng device, at data ng paggamit sa app sa Google. Makakatulong ito sa stability ng system at ng app, at sa iba pang pagpapahusay. Makakatulong din ang ilang pinagsama-samang data sa mga app at partner ng Google, gaya ng mga developer ng Android. Kung naka-on ang iyong karagdagang setting ng Aktibidad sa Web at App, maaaring ma-save ang data na ito sa Google account mo. <ph name="BEGIN_LINK1" />Matuto Pa<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Magdagdag ng koneksyon</translation>
 <translation id="2948300991547862301">Pumunta sa <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">I-click upang sumulong, pindutin nang matagal upang makita ang history</translation>
 <translation id="2963151496262057773">Hindi tumutugon ang sumusunod na plugin: <ph name="PLUGIN_NAME" />Gusto mo bang ihinto ito?</translation>
 <translation id="2966937470348689686">Pamahalaan ang mga kagustuhan sa Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;I-redo</translation>
 <translation id="2973324205039581528">I-mute ang Site</translation>
 <translation id="2977480621796371840">Alisin sa grupo</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separator</translation>
 <translation id="3387614642886316601">Gumamit ng pinahusay na pang-check ng pagbabaybay</translation>
-<translation id="3393352139658145068">I-activate ang Assistant kapag may sinumang nagsabi ng “Ok Google”. Para makatipid ng baterya, naka-on lang ang “Ok Google” kapag nakakonekta ang iyong device sa isang pinagmumulan ng kuryente.</translation>
 <translation id="3396800784455899911">Sa pamamagitan ng pag-click sa button na "Tanggapin at magpatuloy," sumasang-ayon ka sa pagpoproseso na inilarawan sa itaas para sa mga serbisyong ito ng Google.</translation>
 <translation id="3399432415385675819">Madi-disable ang mga notification</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - naka-interlace</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Ipakita ang <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Buksan sa bagong tab</translation>
 <translation id="3615073365085224194">Pindutin ang sensor para sa fingerprint gamit ang iyong daliri</translation>
+<translation id="3615579745882581859">Sina-scan ang <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;I-clear ang Data sa Pag-browse...</translation>
 <translation id="3617891479562106823">Hindi available ang mga background. Subukang muli sa ibang pagkakataon.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Mag-block ng mga bahagi ng mga web page</translation>
 <translation id="3760460896538743390">Siyasatin ang Pahina ng &amp;Background</translation>
 <translation id="37613671848467444">Buksan sa &amp;Incognito Window</translation>
-<translation id="3764314093345384080">Detalyadong impormasyon ng build</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Kumonekta sa isang USB device}one{Kumonekta sa # USB device}other{Kumonekta sa # na USB device}}</translation>
 <translation id="3765246971671567135">Hindi ma-read ang patakaran ng offline na demo mode.</translation>
 <translation id="3768037234834996183">Nagsi-sync ng iyong mga kagustuhan...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Ipakita ang mga username at larawan sa screen sa pag-sign-in</translation>
 <translation id="4142052906269098341">I-unlock ang iyong <ph name="DEVICE_TYPE" /> gamit ang telepono mo. <ph name="LINK_BEGIN" />Matuto pa<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Magkaroon ng mas magandang kalidad na video at makatipid ng baterya. Magpe-play lang ang video sa iyong screen na may naka-enable na Cast.</translation>
-<translation id="4145922204387553806">Hayaan ang Assistant na magpakita sa iyo ng impormasyong nauugnay sa nasa screen mo</translation>
 <translation id="4146026355784316281">Palaging Buksan Gamit ang System Viewer</translation>
 <translation id="4146785383423576110">I-reset at linisin</translation>
 <translation id="4147911968024186208">Pakisubukang muli. Kung makikita mong muli ang error na ito, makipag-ugnayan sa iyong kinatawan ng suporta.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Palitan ang Mga Wika</translation>
 <translation id="4301671483919369635">Pinapayagan ang page na ito na mag-edit ng mga file</translation>
 <translation id="4303079906735388947">Mag-set up ng bagong PIN para sa iyong security key</translation>
+<translation id="4305402730127028764">Kopyahin sa <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Dapat maihatid ang mga app gamit ang uri ng content na "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K live)</translation>
 <translation id="4310139701823742692">Nasa maling format ang file. Tingnan ang PPD file at subukang muli.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Subukang muli.</translation>
 <translation id="4535127706710932914">Default na Profile</translation>
 <translation id="4535767533210902251">Ang sensor para sa fingerprint ay ang key sa kanang bahagi sa itaas ng iyong keyboard. Pindutin ito nang magaan gamit ang alinmang daliri.</translation>
-<translation id="4538417792467843292">Magtanggal ng salita</translation>
 <translation id="4538684596480161368">Laging i-block ang mga hindi naka-sandbox na plugin sa <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Na-install ng patakaran ng enterprise.</translation>
 <translation id="4542520061254486227">Basahin ang iyong data sa <ph name="WEBSITE_1" /> at <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Binabasa ang file..</translation>
 <translation id="5368720394188453070">Naka-lock ang iyong telepono. I-unlock ito upang makapasok.</translation>
 <translation id="5368779022775404937">Mag-sign in sa <ph name="REALM" /></translation>
+<translation id="5369491905435686894">I-enable ang pag-accelerate ng mouse</translation>
 <translation id="5370819323174483825">I-&amp;reload</translation>
 <translation id="5372529912055771682">Hindi sinusuportahan ng bersyong ito ng operating system ang ibinigay na mode ng pagpapatala.  Pakitiyak na pinapatakbo mo ang pinakabagong bersyon at subukang muli.</translation>
 <translation id="5372579129492968947">I-unpin ang extension</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Patakbuhin ngayon</translation>
 <translation id="5464660706533281090">Hindi mababago ng batang user ang setting na ito.</translation>
 <translation id="5466374726908360271">I-pa&amp;ste at hanapin ang “<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Naghahanap ng mga file share</translation>
 <translation id="5471768120198416576">Kumusta! Ako ang iyong boses ng text-to-speech.</translation>
 <translation id="5473333559083690127">Muling ilagay ang bagong PIN</translation>
 <translation id="5481941284378890518">Magdagdag ng Mga Printer na Nasa Malapit</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Default na gumamit ng boses sa halip na keyboard</translation>
 <translation id="6234474535228214774">Nakabinbin ang pag-install</translation>
 <translation id="6237816943013845465">Nagbibigay-daan sa iyong i-adjust ang resolution ng iyong screen</translation>
+<translation id="6238767809035845642">Ibinahaging text mula sa Ibang Device</translation>
 <translation id="6238923052227198598">Panatilihin ang pinakabagong tala sa lock screen</translation>
 <translation id="6239558157302047471">I-reload ang &amp;frame</translation>
 <translation id="6241530762627360640">Mag-access ng impormasyon tungkol sa mga Bluetooth device na nakapares sa iyong system at tumuklas ng mga kalapit na Bluetooth device.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Nakansela ang pag-download: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">I-encrypt ang mga naka-sync na password sa iyong username at password sa Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Ibinabahagi ang content ng desktop</translation>
-<translation id="6580151766480067746">Bersyon ng ARC</translation>
 <translation id="6582080224869403177">I-reset ang iyong <ph name="DEVICE_TYPE" /> para i-upgrade ang iyong seguridad.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">Palitan ang pangunahing button ng mouse</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">I-on ang Pinahusay na Pang-check ng Pagbabaybay</translation>
 <translation id="7487969577036436319">Walang naka-install na mga bahagi</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Buksan lahat}=1{&amp;Buksan ang bookmark}one{&amp;Buksan lahat (#)}other{&amp;Buksan lahat (#)}}</translation>
+<translation id="7489761397368794366">Tumawag mula sa iyong device</translation>
 <translation id="749028671485790643">Tao <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC address</translation>
 <translation id="7493386493263658176">Maaaring kolektahin ng extension ng <ph name="EXTENSION_NAME" /> ang lahat ng text na ita-type mo, kabilang ang personal na data tulad ng mga password at numero ng credit card. Gusto mo bang gamitin ang extension na ito?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Magbigay ng access sa mga printer</translation>
 <translation id="7510943789645525906">Nagbibigay sa iyo ng babala kung ang isang password na ginagamit mo ay bahagi ng isang paglabag sa data</translation>
 <translation id="7513029293694390567">Awtomatikong mag-sign in sa mga website gamit ang mga naka-store na kredensyal. Kung naka-disable, hihingan ka ng kumpirmasyon sa bawat pagkakataon bago ka mag-sign in sa isang website.</translation>
+<translation id="7514239104543605883">Kopyahin sa iyong device</translation>
 <translation id="7514365320538308">I-download</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Sabihin ang "Ok Google"</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">I-cast ang file</translation>
 <translation id="8274924778568117936">Huwag i-off o isara ang iyong <ph name="DEVICE_TYPE" /> hanggang sa matapos ang pag-update. Magre-restart ang <ph name="DEVICE_TYPE" /> mo pagkatapos ng pag-install.</translation>
 <translation id="8275038454117074363">I-import</translation>
+<translation id="8275080796245127762">Tumawag mula sa Iyong Device</translation>
 <translation id="8276560076771292512">Alisan ng Laman ang Cache at I-hard reload</translation>
 <translation id="8281886186245836920">Laktawan</translation>
 <translation id="8282947398454257691">Alamin ang natatanging identifier ng iyong device</translation>
@@ -5269,6 +5272,7 @@
 <translation id="8758418656925882523">I-enable ang pagdidikta (magsalita para mag-type)</translation>
 <translation id="8759408218731716181">Hindi maaaring mag-set up ng multiple na pag-sign in</translation>
 <translation id="8759753423332885148">Matuto pa.</translation>
+<translation id="8761945298804995673">May ganito nang user</translation>
 <translation id="8762886931014513155">Kailangang i-update ang iyong <ph name="DEVICE_TYPE" /></translation>
 <translation id="8763927697961133303">USB device</translation>
 <translation id="8767621466733104912">Awtomatikong i-update ang Chrome para sa lahat ng user</translation>
@@ -5358,6 +5362,7 @@
 <translation id="8879284080359814990">&amp;Ipakita Bilang Tab</translation>
 <translation id="8879921471468674457">Tandaan ang impormasyon sa pag-sign in</translation>
 <translation id="8881020143150461183">Pakisubukan ulit. Para sa technical support, makipag-ugnayan sa <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">I-enable ang pag-accelerate ng touchpad</translation>
 <translation id="8884570509232205463">Nagla-lock na ngayon ang iyong device sa ganap na <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Hindi available ang Smart Lock</translation>
 <translation id="8888253246822647887">Bubukas ang iyong app kapag tapos na ang pag-upgrade. Maaaring tumagal nang ilang minuto ang mga pag-upgrade.</translation>
diff --git a/chrome/app/resources/generated_resources_fr.xtb b/chrome/app/resources/generated_resources_fr.xtb
index b1b940d..34a118a 100644
--- a/chrome/app/resources/generated_resources_fr.xtb
+++ b/chrome/app/resources/generated_resources_fr.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Pour synchroniser vos extensions sur tous vos ordinateurs, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Cette opération effacera toutes les données stockées sur la clé de sécurité, y compris son code</translation>
 <translation id="1475502736924165259">Vous disposez de certificats qui n'appartiennent à aucune autre catégorie.</translation>
+<translation id="1476088332184200792">Copier sur votre appareil</translation>
 <translation id="1476607407192946488">&amp;Paramètres linguistiques</translation>
 <translation id="1478340334823509079">Détails : <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">L'installation n'a pas été activée</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Imprimer via la boîte de dialogue du système... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Demander l'autorisation avant d'envoyer (recommandé)</translation>
 <translation id="2384436799579181135">Une erreur s'est produite. Veuillez vérifier l'imprimante, puis réessayer.</translation>
-<translation id="2386926718981642523">Accédez à l'Assistant Google en disant simplement "Ok Google"</translation>
 <translation id="2387458720915042159">Type de connexion proxy</translation>
 <translation id="2391419135980381625">Police standard</translation>
 <translation id="2392369802118427583">Activer</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Faible</translation>
 <translation id="2942560570858569904">En attente…</translation>
 <translation id="2942581856830209953">Personnaliser cette page</translation>
+<translation id="294308617863380348">Y compris les cookies tiers</translation>
 <translation id="2944060181911631861">Envoyer des données d'utilisation et de diagnostic. Contribuez à l'amélioration de votre expérience sur Android en envoyant automatiquement à Google des données relatives aux diagnostics et à l'utilisation de l'appareil et des applications. Ce processus permettra d'améliorer, entre autres, la stabilité du système et des applications. Certaines données globales seront également utiles aux développeurs des applications Google et à nos partenaires, tels que les développeurs Android. Si vous activez le paramètre relatif à l'activité supplémentaire sur le Web et les applications, ces données peuvent être enregistrées dans votre compte Google. <ph name="BEGIN_LINK1" />En savoir plus<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Ajouter une connexion</translation>
 <translation id="2948300991547862301">Accéder à la page <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Cliquer pour avancer, maintenir pour voir l'historique</translation>
 <translation id="2963151496262057773">Le plug-in "<ph name="PLUGIN_NAME" />" ne répond pas. Voulez-vous l'interrompre ?</translation>
 <translation id="2966937470348689686">Gérer les préférences Android</translation>
-<translation id="2972557485845626008">Micrologiciel</translation>
 <translation id="2972581237482394796">&amp;Rétablir</translation>
 <translation id="2973324205039581528">Couper le son du site</translation>
 <translation id="2977480621796371840">Retirer du groupe</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Séparateur</translation>
 <translation id="3387614642886316601">Utiliser le correcteur orthographique amélioré</translation>
-<translation id="3393352139658145068">Activez l'Assistant Google lorsque quelqu'un dit "Ok Google". Pour économiser la batterie, la détection du mot clé "Ok Google" n'est activée que lorsque vous branchez votre appareil sur une source d'alimentation externe.</translation>
 <translation id="3396800784455899911">En cliquant sur le bouton "Accepter et continuer", vous acceptez le processus décrit ci-dessus pour ces services Google.</translation>
 <translation id="3399432415385675819">Les notifications seront désactivées</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hz) – entrelacé</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Afficher "<ph name="FOLDER_NAME" />"</translation>
 <translation id="3613422051106148727">&amp;Ouvrir dans un nouvel onglet</translation>
 <translation id="3615073365085224194">Appuyez avec un doigt sur le lecteur d'empreinte digitale</translation>
+<translation id="3615579745882581859">Analyse de <ph name="FILE_NAME" />…</translation>
 <translation id="3616741288025931835">&amp;Effacer les données de navigation...</translation>
 <translation id="3617891479562106823">Les arrière-plans sont indisponibles. Réessayez plus tard.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Bloquer des parties de pages Web</translation>
 <translation id="3760460896538743390">Inspecter la page d'&amp;arrière-plan</translation>
 <translation id="37613671848467444">Ouvrir dans une fenêtre de &amp;navigation privée</translation>
-<translation id="3764314093345384080">Informations détaillées sur la version</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Communication avec un appareil USB}one{Communication avec # appareil USB}other{Communication avec # appareils USB}}</translation>
 <translation id="3765246971671567135">Impossible de lire la règle du mode de démonstration hors connexion.</translation>
 <translation id="3768037234834996183">Synchronisation des préférences en cours…</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Afficher les noms d'utilisateurs et leur photo sur la page de connexion</translation>
 <translation id="4142052906269098341">Déverrouillez votre <ph name="DEVICE_TYPE" /> à l'aide de votre téléphone. <ph name="LINK_BEGIN" />En savoir plus<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Bénéficiez d'une meilleure qualité et économisez de la batterie. La vidéo sera lue uniquement sur votre écran compatible Cast.</translation>
-<translation id="4145922204387553806">Autoriser l'Assistant à vous fournir des informations en lien avec le contenu affiché sur votre écran</translation>
 <translation id="4146026355784316281">Toujours ouvrir avec le lecteur système</translation>
 <translation id="4146785383423576110">Réinitialiser et nettoyer</translation>
 <translation id="4147911968024186208">Veuillez réessayer. Si l'erreur se reproduit, veuillez contacter le service d'assistance.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Modifier les langues</translation>
 <translation id="4301671483919369635">Cette page est autorisée à modifier les fichiers</translation>
 <translation id="4303079906735388947">Configurez un nouveau code pour votre clé de sécurité</translation>
+<translation id="4305402730127028764">Copier sur <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Les applications doivent être diffusées avec le type de contenu <ph name="CONTENT_TYPE" /></translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> Ko (<ph name="NUM_KILOBYTES_LIVE" /> Ko effectifs)</translation>
 <translation id="4310139701823742692">Le format du fichier n'est pas valide. Vérifiez le fichier PPD, puis réessayez.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Réessayez.</translation>
 <translation id="4535127706710932914">Profil par défaut</translation>
 <translation id="4535767533210902251">Le lecteur d'empreinte digitale est la touche située en haut à droite de votre clavier. Appuyez dessus légèrement avec n'importe quel doigt.</translation>
-<translation id="4538417792467843292">Supprimer le mot</translation>
 <translation id="4538684596480161368">Toujours bloquer l'exécution hors bac à sable des plug-ins sur <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Installée conformément à une règle d'entreprise</translation>
 <translation id="4542520061254486227">Lire vos données sur <ph name="WEBSITE_1" /> et <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Lecture du fichier en cours…</translation>
 <translation id="5368720394188453070">Votre téléphone est verrouillé. Déverrouillez-le pour y accéder.</translation>
 <translation id="5368779022775404937">Se connecter à <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Activer l'accélération du curseur</translation>
 <translation id="5370819323174483825">&amp;Actualiser</translation>
 <translation id="5372529912055771682">Le mode d'inscription fourni n'est pas compatible avec cette version du système d'exploitation. Veuillez vous assurer que vous utilisez bien la dernière version, puis réessayer.</translation>
 <translation id="5372579129492968947">Retirer l'extension</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Exécuter cette fois</translation>
 <translation id="5464660706533281090">Ce paramètre ne peut pas être modifié par un utilisateur mineur.</translation>
 <translation id="5466374726908360271">Coller et chercher "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Recherche de fichiers partagés…</translation>
 <translation id="5471768120198416576">Bonjour ! Je suis la voix de votre synthèse vocale.</translation>
 <translation id="5473333559083690127">Saisir encore le nouveau code</translation>
 <translation id="5481941284378890518">Ajouter des imprimantes à proximité</translation>
@@ -3543,6 +3543,7 @@
 <translation id="6233154960150021497">Utiliser par défaut les commandes vocales plutôt que le clavier</translation>
 <translation id="6234474535228214774">Installation en attente</translation>
 <translation id="6237816943013845465">Permet d'ajuster la résolution de l'écran</translation>
+<translation id="6238767809035845642">Texte partagé depuis un autre appareil</translation>
 <translation id="6238923052227198598">Conserver la dernière note sur l'écran de verrouillage</translation>
 <translation id="6239558157302047471">Actualiser le &amp;cadre</translation>
 <translation id="6241530762627360640">Accéder aux informations relatives aux appareils Bluetooth associés à votre système et détecter les appareils Bluetooth à proximité</translation>
@@ -3769,7 +3770,6 @@
 <translation id="6577284282025554716">Téléchargement annulé : <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Chiffrer les mots de passe synchronisés avec votre nom d'utilisateur et votre mot de passe Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – Contenu du bureau partagé</translation>
-<translation id="6580151766480067746">Version d'ARC</translation>
 <translation id="6582080224869403177">Réinitialisez votre appareil <ph name="DEVICE_TYPE" /> pour procéder à la mise à niveau de sécurité.</translation>
 <translation id="6584878029876017575">Signature permanente Microsoft</translation>
 <translation id="6586451623538375658">Inverser le bouton principal de la souris</translation>
@@ -4374,6 +4374,7 @@
 <translation id="7487141338393529395">Activer le correcteur orthographique amélioré</translation>
 <translation id="7487969577036436319">Aucun composant installé</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{Tout &amp;ouvrir}=1{&amp;Ouvrir le favori}one{Tout &amp;ouvrir (#)}other{Tout &amp;ouvrir (#)}}</translation>
+<translation id="7489761397368794366">Appeler depuis votre appareil</translation>
 <translation id="749028671485790643">Personne <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Adresse MAC</translation>
 <translation id="7493386493263658176">L'extension <ph name="EXTENSION_NAME" /> peut récupérer tout le texte que vous saisissez, y compris des données personnelles telles que des mots de passe et des numéros de carte de paiement. Souhaitez-vous utiliser cette extension ?</translation>
@@ -4393,6 +4394,7 @@
 <translation id="7508054832109420082">Autoriser l'accès aux imprimantes</translation>
 <translation id="7510943789645525906">Recevoir une alerte si l'un de vos mots de passe est compromis suite à une violation de données</translation>
 <translation id="7513029293694390567">Permet de se connecter automatiquement aux sites Web à l'aide des identifiants enregistrés. Si cette fonctionnalité est désactivée, vous êtes invité à confirmer chaque connexion à un site Web.</translation>
+<translation id="7514239104543605883">Copier sur votre appareil</translation>
 <translation id="7514365320538308">Télécharger</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Dites "Ok Google"</translation>
@@ -4949,6 +4951,7 @@
 <translation id="8274332263553132018">Caster le fichier</translation>
 <translation id="8274924778568117936">N'éteignez pas et ne fermez pas votre <ph name="DEVICE_TYPE" /> avant la fin de la mise à jour. Votre <ph name="DEVICE_TYPE" /> redémarrera une fois l'installation terminée.</translation>
 <translation id="8275038454117074363">Importer</translation>
+<translation id="8275080796245127762">Appeler depuis votre appareil</translation>
 <translation id="8276560076771292512">Vider le cache et effectuer une actualisation forcée</translation>
 <translation id="8281886186245836920">Passer</translation>
 <translation id="8282947398454257691">Connaître l'identifiant unique de votre appareil</translation>
@@ -5269,6 +5272,7 @@
 <translation id="8758418656925882523">Activer la dictée (parlez pour que vos propos soient saisis)</translation>
 <translation id="8759408218731716181">Impossible de configurer la connexion multicompte.</translation>
 <translation id="8759753423332885148">En savoir plus</translation>
+<translation id="8761945298804995673">Cet utilisateur existe déjà</translation>
 <translation id="8762886931014513155">Votre <ph name="DEVICE_TYPE" /> doit être mis à jour</translation>
 <translation id="8763927697961133303">Périphérique USB</translation>
 <translation id="8767621466733104912">Mettre à jour Chrome automatiquement pour tous les utilisateurs</translation>
@@ -5357,6 +5361,7 @@
 <translation id="8879284080359814990">Afficher dan&amp;s un onglet</translation>
 <translation id="8879921471468674457">Mémoriser les informations de connexion</translation>
 <translation id="8881020143150461183">Veuillez réessayer. Pour obtenir une assistance technique, contactez <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Activer l'accélération du pavé tactile</translation>
 <translation id="8884570509232205463">Ton appareil se verrouille désormais à <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock indisponible</translation>
 <translation id="8888253246822647887">Votre application s'ouvrira une fois la mise à jour terminée. Les mises à jour peuvent prendre quelques minutes.</translation>
diff --git a/chrome/app/resources/generated_resources_gu.xtb b/chrome/app/resources/generated_resources_gu.xtb
index cfcab9a1..c51523e 100644
--- a/chrome/app/resources/generated_resources_gu.xtb
+++ b/chrome/app/resources/generated_resources_gu.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">તમારા તમામ કમ્પ્યુટર્સ પર તમારા એક્સ્ટેન્શન્સ મેળવવા માટે, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">પિન સહિત સુરક્ષા કોડ પર રહેલા બધા ડેટાને આ કાઢી નાખશે</translation>
 <translation id="1475502736924165259">તમારી પાસે ફાઇલ પર પ્રમાણપત્રો છે જે અન્ય કોઈપણ કૅટેગરીઝમાં ફિટ થતાં નથી</translation>
+<translation id="1476088332184200792">તમારા ડિવાઇસ પર કૉપિ કરો</translation>
 <translation id="1476607407192946488">&amp;ભાષા સેટિંગ્સ</translation>
 <translation id="1478340334823509079">વિગતો: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">ઇન્સ્ટૉલેશન ચાલુ કર્યું નથી</translation>
@@ -947,7 +948,6 @@
 <translation id="2379281330731083556">સિસ્ટમ સંવાદનો ઉપયોગ કરીને પ્રિન્ટ કરો...<ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">મોકલતાં પહેલાં પૂછો (ભલામણ કરેલ)</translation>
 <translation id="2384436799579181135">એક ભૂલ આવી છે. કૃપા કરીને તમારું પ્રિન્ટર તપાસો અને ફરી પ્રયાસ કરો.</translation>
-<translation id="2386926718981642523">કોઈપણ સમયે "ઓકે Google" બોલીને તમારા આસિસ્ટંટને ઍક્સેસ કરો</translation>
 <translation id="2387458720915042159">પ્રૉક્સી કનેક્શનનો પ્રકાર</translation>
 <translation id="2391419135980381625">માનક ફૉન્ટ</translation>
 <translation id="2392369802118427583">સક્રિય કરો</translation>
@@ -1273,7 +1273,7 @@
 <translation id="284805635805850872">નુકસાનકારક સૉફ્ટવેર દૂર કરીએ?</translation>
 <translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
 <translation id="284975061945174219">ક્લીન અપ નિષ્ફળ થયું</translation>
-<translation id="2849936225196189499">મહત્વપૂર્ણ</translation>
+<translation id="2849936225196189499">ટીકાત્મક</translation>
 <translation id="2850541429955027218">થીમ ઉમેરો</translation>
 <translation id="2851634818064021665">આ સાઇટની મુલાકાત લેવા માટે તમને પરનાવગીની જરૂર છે</translation>
 <translation id="2854896010770911740">ત્રીજા પક્ષની કુકીને કાઢી નાખો</translation>
@@ -1337,6 +1337,7 @@
 <translation id="2941112035454246133">નીચું</translation>
 <translation id="2942560570858569904">રાહ જોઈ રહ્યાં છીએ...</translation>
 <translation id="2942581856830209953">આ પેજને કસ્ટમાઇઝ કરો</translation>
+<translation id="294308617863380348">ત્રીજા પક્ષની કુકી સહિત</translation>
 <translation id="2944060181911631861">વપરાશ અને નિદાનનો ડેટા મોકલો. Googleને નિદાન, ડિવાઇસ અને ઍપ વપરાશનો ડેટા ઑટોમૅટિક રીતે મોકલીને તમારા Android અનુભવને વધુ સારો બનાવવામાં સહાય કરો. આ સિસ્ટમ અને ઍપની સ્થિરતા અને અન્ય સુધારણાઓમાં સહાય કરશે. એકત્રીકરણ કરેલો કેટલોક ડેટા Google ઍપ અને ભાગીદારોને પણ મદદ કરશે, જેમ કે Android ડેવલપર. જો તમારી વધારાની વેબ અને ઍપ પ્રવૃત્તિ સેટિંગ ચાલુ હોય, તો આ ડેટા તમારા Google એકાઉન્ટમાં સાચવવામાં આવી શકે છે. <ph name="BEGIN_LINK1" />વધુ જાણો<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">કનેક્શન ઉમેરો</translation>
 <translation id="2948300991547862301"><ph name="PAGE_TITLE" /> પર જાઓ</translation>
@@ -1351,7 +1352,6 @@
 <translation id="2961695502793809356">આગળ જવા માટે ક્લિક કરો, ઇતિહાસ જોવા માટે હોલ્ડ કરો</translation>
 <translation id="2963151496262057773">નીચેનાં પ્લગ-ઇન ચાલતાં નથી: <ph name="PLUGIN_NAME" />તમે તેને રોકવા માંગશો?</translation>
 <translation id="2966937470348689686">Android પસંદગીઓનું સંચાલન કરો</translation>
-<translation id="2972557485845626008">ફર્મવેર</translation>
 <translation id="2972581237482394796">&amp;ફરી કરો</translation>
 <translation id="2973324205039581528">સાઇટને મ્યૂટ કરો</translation>
 <translation id="2977480621796371840">ગ્રૂપમાંથી દૂર કરો</translation>
@@ -1609,7 +1609,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">વિભાજક</translation>
 <translation id="3387614642886316601">વધુ સારી બનાવાયેલી જોડણીની તપાસનો ઉપયોગ કરો</translation>
-<translation id="3393352139658145068">જ્યારે કોઈ “ઓકે Google” કહે ત્યારે આસિસ્ટંટને સક્રિય કરો. બૅટરીની બચત કરવા માટે, જ્યારે તમારું ડિવાઇસ પાવર સ્રોત સાથે કનેક્ટેડ હોય ત્યારે જ માત્ર "ઓકે Google” ચાલુ હોય છે.</translation>
 <translation id="3396800784455899911">"સ્વીકારો અને ચાલુ રાખો" બટન પર ક્લિક કરીને, તમે આ Google સેવાઓ માટે ઉપર વર્ણવેલી પ્રક્રિયા સાથે સંમત થાઓ છો.</translation>
 <translation id="3399432415385675819">સૂચનાઓ અક્ષમ કરવામાં આવશે</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> હર્ટ્ઝ) - ઇન્ટર્લેસ</translation>
@@ -1770,6 +1769,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> ને દર્શાવો</translation>
 <translation id="3613422051106148727">નવા ટૅબમાં &amp;ખોલો</translation>
 <translation id="3615073365085224194">તમારી આંગળી વડે ફિંગરપ્રિન્ટ સેન્સરને સ્પર્શ કરો</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" />ને સ્કૅન કરવામાં આવી રહી છે.</translation>
 <translation id="3616741288025931835">બ્રાઉઝિંગ ડેટા &amp;સાફ કરો...</translation>
 <translation id="3617891479562106823">બૅકગ્રાઉન્ડ અનુપલબ્ધ છે. થોડા સમય પછી ફરી પ્રયાસ કરો.</translation>
 <translation id="3619115746895587757">કૅપુચિનો</translation>
@@ -1884,7 +1884,6 @@
 <translation id="3759933321830434300">વેબ પૃષ્ઠોના અવરોધિત ભાગ</translation>
 <translation id="3760460896538743390">&amp;પૃષ્ઠભૂમિ પૃષ્ઠની તપાસ કરો</translation>
 <translation id="37613671848467444">&amp;છુપી વિંડોમાં ખોલો</translation>
-<translation id="3764314093345384080">વિગતવાર બિલ્ડ માહિતી</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{એક USB ઉપકરણ સાથે સંચાર કરો}one{# USB ઉપકરણો સાથે સંચાર કરો}other{# USB ઉપકરણો સાથે સંચાર કરો}}</translation>
 <translation id="3765246971671567135">ઑફલાઇન ડેમો મોડ નીતિ વાંચી શકાઈ નથી.</translation>
 <translation id="3768037234834996183">તમારી પસંદગીઓને સમન્વયિત કરી રહ્યું છે...</translation>
@@ -2165,7 +2164,6 @@
 <translation id="4138267921960073861">સાઇન-ઇન સ્ક્રીન પર વપરાશકર્તા નામ અને ફોટો બતાવો</translation>
 <translation id="4142052906269098341">તમારા ફોન વડે તમારું <ph name="DEVICE_TYPE" /> અનલૉક કરો. <ph name="LINK_BEGIN" />વધુ જાણો<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">બહેતર ક્વૉલિટીના વીડિઓ મેળવો અને બૅટરી આવરદા સાચવો. વીડિઓ માત્ર તમારી કાસ્ટ ચાલુ કરેલ હોય એવી સ્ક્રીન પર જ ચલાવવામાં આવશે.</translation>
-<translation id="4145922204387553806">તમારા આસિસ્ટંટને તમારી સ્ક્રીન પર જે છે તેનાથી સંબંધિત માહિતી તમને બતાવવા દો</translation>
 <translation id="4146026355784316281">હંમેશા સિસ્ટમ દર્શક સાથે ખોલો</translation>
 <translation id="4146785383423576110">રીસેટ કરો અને સાફ કરો</translation>
 <translation id="4147911968024186208">કૃપા કરીને ફરી પ્રયાસ કરો. જો તમને આ ભૂલ ફરી દેખાય તો કૃપા કરીને તમારા સપોર્ટ પ્રતિનિધિનો સંપર્ક કરો.</translation>
@@ -2252,6 +2250,7 @@
 <translation id="4297322094678649474">ભાષાઓ બદલો</translation>
 <translation id="4301671483919369635">આ પેજ ફાઇલોમાં ફેરફાર કરવાની મંજૂરી ધરાવે છે</translation>
 <translation id="4303079906735388947">તમારા સુરક્ષા કોડ માટે નવો પિન સેટ કરો</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" /> પર કૉપિ કરો</translation>
 <translation id="4306119971288449206">ઍપ "<ph name="CONTENT_TYPE" />" કન્ટેન્ટ-પ્રકાર સાથે ઉપલબ્ધ કરાવવી જોઈએ</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K લાઇવ)</translation>
 <translation id="4310139701823742692">ખોટા ફોર્મેટની ફાઇલ છે. PPD ફાઇલ તપાસો અને ફરી પ્રયાસ કરો.</translation>
@@ -2387,7 +2386,6 @@
 <translation id="4534661889221639075">ફરી પ્રયાસ કરો.</translation>
 <translation id="4535127706710932914">ડિફૉલ્ટ પ્રોફાઇલ</translation>
 <translation id="4535767533210902251">ફિંગરપ્રિન્ટ સેન્સર એ તમારા કીબોર્ડ પર સૌથી ઉપર જમણી બાજુ સ્થિત કી છે. તેને કોઈપણ આંગળી વડે હળવેથી સ્પર્શ કરો.</translation>
-<translation id="4538417792467843292">શબ્દ ડિલીટ કરો</translation>
 <translation id="4538684596480161368"><ph name="HOST" /> પર અનસેન્ડબૉક્સ્ડ પ્લગિન્સને હંમેશાં અવરોધિત કરો</translation>
 <translation id="4538792345715658285">ઉદ્યોગ નીતિ દ્વારા ઇન્સ્ટોલ થયેલું છે.</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" /> અને <ph name="WEBSITE_2" /> પર તમારો ડેટા વાંચી શકે છે</translation>
@@ -2931,6 +2929,7 @@
 <translation id="5367091008316207019">ફાઇલ વાંચી રહ્યાં છીએ..</translation>
 <translation id="5368720394188453070">તમારો ફોન લૉક કરેલો છે. દાખલ કરવા માટે તેને અનલૉક કરો.</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> માં સાઇન ઇન કરો</translation>
+<translation id="5369491905435686894">માઉસનું ઍક્સલરેશન ચાલુ કરો</translation>
 <translation id="5370819323174483825">&amp;ફરીથી લોડ કરો</translation>
 <translation id="5372529912055771682">પૂરો પાડેલો નોંધણી મોડ ઑપરેટિંગ સિસ્ટમનાં આ વર્ઝન દ્વારા સપોર્ટ કરતો નથી. કૃપા કરીને ખાતરી કરો કે તમે નવીનતમ વર્ઝન ચલાવી રહ્યાં છો અને ફરી પ્રયાસ કરો.</translation>
 <translation id="5372579129492968947">એક્સ્ટેંશનને અનપિન કરો</translation>
@@ -3003,6 +3002,7 @@
 <translation id="5464632865477611176">આ વખતે ચલાવો</translation>
 <translation id="5464660706533281090">બાળ વપરાશકર્તા આ સેટિંગમાં ફેરફાર કરી શકતા નથી.</translation>
 <translation id="5466374726908360271">“<ph name="SEARCH_TERMS" />” પે&amp;સ્ટ કરો અને શોધો</translation>
+<translation id="5468173180030470402">શેર કરેલી ફાઇલ માટે શોધી રહ્યાં છીએ</translation>
 <translation id="5471768120198416576">કેમ છો! હું તમારો ટેક્સ્ટ-ટુ-સ્પીચ વૉઇસ છું.</translation>
 <translation id="5473333559083690127">નવો PIN ફરીથી દાખલ કરો</translation>
 <translation id="5481941284378890518">નજીકના પ્રિન્ટર્સ ઉમેરો</translation>
@@ -3540,6 +3540,7 @@
 <translation id="6233154960150021497">કીબોર્ડને બદલે અવાજનો ઉપયોગ કરવા માટે ડિફૉલ્ટ</translation>
 <translation id="6234474535228214774">ઇન્સ્ટૉલ બાકી છે</translation>
 <translation id="6237816943013845465">તમને તમારું સ્ક્રીન રિઝોલ્યૂશન સમાયોજિત કરવાની મંજૂરી આપે છે</translation>
+<translation id="6238767809035845642">બીજા ડિવાઇસ પરથી શેર કરવામાં આવેલી ટેક્સ્ટ</translation>
 <translation id="6238923052227198598">લૉક સ્ક્રીન પર એક એકદમ નવી નોંધ રાખો</translation>
 <translation id="6239558157302047471">&amp;ફ્રેમ ફરીથી લોડ કરો</translation>
 <translation id="6241530762627360640">તમારા સિસ્ટમ સાથે જોડી બનાવેલા Bluetooth ડિવાઇસ વિશેની માહિતી ઍક્સેસ કરો અને નજીકના Bluetooth ડિવાઇસની શોધ કરો.</translation>
@@ -3766,7 +3767,6 @@
 <translation id="6577284282025554716">ડાઉનલોડ રદ કર્યું: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">તમારા Google વપરાશકર્તાનું નામ અને પાસવર્ડ સાથે સિંક પાસવર્ડને એન્ક્રિપ્ટ કરો</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - ડેસ્કટૉપ કન્ટેન્ટ શેર કર્યું</translation>
-<translation id="6580151766480067746">ARC વર્ઝન</translation>
 <translation id="6582080224869403177">તમારી સુરક્ષા અપગ્રેડ કરવા માટે <ph name="DEVICE_TYPE" />ને રીસેટ કરો.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">પ્રાથમિક માઉસ બટનને સ્વેપ કરો</translation>
@@ -4371,6 +4371,7 @@
 <translation id="7487141338393529395">વધુ સારી બનાવાયેલી જોડણીની તપાસ ચાલુ કરો</translation>
 <translation id="7487969577036436319">કોઈ ઘટકો ઇન્સ્ટોલ કરેલા નથી</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;તમામ URL ખોલો}=1{&amp;બુકમાર્ક ખોલો}one{&amp;તમામ (#) URLને ખોલો}other{&amp;તમામ (#) URLને ખોલો}}</translation>
+<translation id="7489761397368794366">તમારા ડિવાઇસ પરથી કૉલ</translation>
 <translation id="749028671485790643">વ્યક્તિ <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC ઍડ્રેસ</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> એક્સટેન્શન પાસવર્ડ અને ક્રેડિટ કાર્ડ નંબર સહિત, તમે ટાઇપ કરો તે બધી ટેક્સ્ટને એકત્રિત કરી શકે છે. શું તમે આ એક્સટેન્શનનો ઉપયોગ કરવા માંગો છો?</translation>
@@ -4390,6 +4391,7 @@
 <translation id="7508054832109420082">પ્રિન્ટરનો ઍક્સેસ આપો</translation>
 <translation id="7510943789645525906">જો તમે ઉપયોગમાં લો છો તે પાસવર્ડ ડેટા ઉલ્લંઘનનો ભાગ હતો તો તમને ચેતવણી આપે છે</translation>
 <translation id="7513029293694390567">સંગ્રહિત ઓળખપત્રનો ઉપયોગ કરીને વેબસાઇટ્સમાં આપમેળે સાઇન ઇન કરો. જો અક્ષમ કરેલ હોય, તો વેબસાઇટમાં સાઇન ઇન કરતાં પહેલાં દર વખતે તમને પુષ્ટિકરણ માટે કહેવામાં આવશે.</translation>
+<translation id="7514239104543605883">તમારા ડિવાઇસ પર કૉપિ કરો</translation>
 <translation id="7514365320538308">ડાઉનલોડ કરો</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">"Ok Google" કહો</translation>
@@ -4940,6 +4942,7 @@
 <translation id="8274332263553132018">ફાઇલ કાસ્ટ કરો</translation>
 <translation id="8274924778568117936">અપડેટ પૂર્ણ ન થાય ત્યાં સુધી તમારું <ph name="DEVICE_TYPE" /> બંધ કરતા નહીં. ઇન્સ્ટૉલેશન પૂર્ણ થયા બાદ તમારું <ph name="DEVICE_TYPE" /> ફરી શરૂ થશે.</translation>
 <translation id="8275038454117074363">આયાત કરો</translation>
+<translation id="8275080796245127762">તમારા ડિવાઇસ પરથી કૉલ</translation>
 <translation id="8276560076771292512">કૅશ મેમરી ખાલી કરો અને સખત રીતે ફરીથી લોડ કરો</translation>
 <translation id="8281886186245836920">છોડો</translation>
 <translation id="8282947398454257691">તમારા અનન્ય ઉપકરણ ઓળખકર્તાને જાણો</translation>
@@ -5260,6 +5263,7 @@
 <translation id="8758418656925882523">સાંભળીને લખવાનું ચાલુ કરો (લખવા માટે બોલો)</translation>
 <translation id="8759408218731716181">બહુવિધ સાઇન-ઇન સેટ કરી શકતાં નથી</translation>
 <translation id="8759753423332885148">વધુ જાણો.</translation>
+<translation id="8761945298804995673">આ વપરાશકર્તા પહેલેથી જ અસ્તિત્વમાં છે</translation>
 <translation id="8762886931014513155">તમારા <ph name="DEVICE_TYPE" />ને અપડેટની જરૂર છે</translation>
 <translation id="8763927697961133303">USB ઉપકરણ</translation>
 <translation id="8767621466733104912">Chrome ને તમામ વપરાશકર્તાઓ માટે આપમેળે અપડેટ કરો</translation>
@@ -5348,6 +5352,7 @@
 <translation id="8879284080359814990">ટૅબ તરીકે &amp;બતાવો</translation>
 <translation id="8879921471468674457">સાઇન ઇન માહિતી યાદ રાખો</translation>
 <translation id="8881020143150461183">કૃપા કરીને ફરી પ્રયાસ કરો. ટેક્નિકલ સપોર્ટ માટે, <ph name="CARRIER_NAME" />નો સંપર્ક કરો.</translation>
+<translation id="8883273463630735858">ટચપૅડની ઍક્સલરેશન સુવિધા ચાલુ કરો</translation>
 <translation id="8884570509232205463">તમારું ડિવાઇસ હવે <ph name="UNLOCK_TIME" /> વાગ્યે લૉક થઈ જશે.</translation>
 <translation id="8885197664446363138">Smart Lock અનુપલબ્ધ છે</translation>
 <translation id="8888253246822647887">જ્યારે અપગ્રેડ પૂર્ણ થશે ત્યારે તમારી ઍપ ખુલશે. અપગ્રેડમાં થોડી મિનિટ લાગી શકે છે.</translation>
diff --git a/chrome/app/resources/generated_resources_hi.xtb b/chrome/app/resources/generated_resources_hi.xtb
index 748fcb01..a8b9a05 100644
--- a/chrome/app/resources/generated_resources_hi.xtb
+++ b/chrome/app/resources/generated_resources_hi.xtb
@@ -179,6 +179,7 @@
 <translation id="1243314992276662751">अपलोड करें</translation>
 <translation id="1244265436519979884">फ़िलहाल, Linux की बहाल करने की प्रक्रिया जारी है</translation>
 <translation id="1244303850296295656">एक्‍सटेंशन गड़बड़ी</translation>
+<translation id="1246905108078336582">क्लिपबोर्ड से सुझाव हटाना चाहते हैं?</translation>
 <translation id="1249643471736608405"><ph name="PLUGIN_NAME" /> अब काम नहीं करता, इसलिए इसे ब्लॉक कर दिया गया</translation>
 <translation id="1251366534849411931">शुरुआत में दिखने वाले ज़रूरी कर्ली ब्रेस: <ph name="ERROR_LINE" /></translation>
 <translation id="1252987234827889034">प्रोफ़ाइल संबंधी गड़बड़ी हुई</translation>
@@ -318,9 +319,11 @@
 <translation id="1470811252759861213">अपने सभी कंप्यूटर पर अपने एक्सटेंशन पाने के लिए, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">ऐसा करने से सुरक्षा कुंजी पर मौजूद सभी डेटा और इसका पिन भी मिट जाएगा</translation>
 <translation id="1475502736924165259">आपके पास फ़ाइल पर ऐसे प्रमाणपत्र हैं जो किसी भी अन्य श्रेणी में फ़िट नहीं होते</translation>
+<translation id="1476088332184200792">अपने डिवाइस में कॉपी करें</translation>
 <translation id="1476607407192946488">&amp;भाषा सेटिंग</translation>
 <translation id="1478340334823509079">विवरण: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">इंस्टॉलेशन चालू नहीं है</translation>
+<translation id="1481206932476131736">अपने साइन इन किए गए खातों को प्रबंधित करें. ऐप्लिकेशन, वेबसाइट, Chrome के एक्सटेंशन, और Google Play इन खातों का इस्तेमाल आपको पसंदीदा अनुभव देने के लिए कर सकते हैं. ऐसा आपकी अनुमतियों के आधार पर किया जाता है.</translation>
 <translation id="1482626744466814421">इस टैब को बुकमार्क करें...</translation>
 <translation id="1483493594462132177">भेजें</translation>
 <translation id="1484979925941077974">साइट ब्लूटूथ का इस्तेमाल कर रही है</translation>
@@ -949,7 +952,6 @@
 <translation id="2379281330731083556">सिस्‍टम डॉयलॉग का उपयोग करके प्रिंट करें… <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">भेजने से पहले पूछें (अनुशंसित)</translation>
 <translation id="2384436799579181135">कोई गड़बड़ी हुई है. कृपया अपना प्रिंटर जांचें और दोबारा कोशिश करें.</translation>
-<translation id="2386926718981642523">बस "Ok Google" कहें और अपनी Assistant सेवा ऐक्सेस करें</translation>
 <translation id="2387458720915042159">प्रॉक्सी कनेक्शन प्रकार</translation>
 <translation id="2391419135980381625">मानक फ़ॉन्ट</translation>
 <translation id="2392369802118427583">सक्रिय करें</translation>
@@ -1339,6 +1341,7 @@
 <translation id="2941112035454246133">कम</translation>
 <translation id="2942560570858569904">इंतज़ार कर रही है...</translation>
 <translation id="2942581856830209953">यह पेज पसंद के मुताबिक बनाएं</translation>
+<translation id="294308617863380348">तीसरे पक्ष की कुकी शामिल हैं</translation>
 <translation id="2944060181911631861">इस्तेमाल और निदान से जुड़ा डेटा भेजें. Google को निदान, डिवाइस, और ऐप्लिकेशन के इस्तेमाल से जुड़ा डेटा अपने आप भेजकर, अपने Android अनुभव को बेहतर बनाने में मदद करें. यह सिस्टम और ऐप्लिकेशन की स्थिरता और दूसरे सुधारों में मदद करेगा. कुछ एग्रीगेट डेटा Google ऐप्लिकेशन और पार्टनर, जैसे कि Android डेवलपरों की भी मदद करेगा. अगर आपकी दूसरी 'वेब और ऐप्लिकेशन गतिविधि' सेटिंग चालू है, तो यह डेटा आपके Google खाते में सेव किया जा सकता है. <ph name="BEGIN_LINK1" />ज़्यादा जानें<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">कनेक्शन जोड़ें</translation>
 <translation id="2948300991547862301"><ph name="PAGE_TITLE" /> पर जाएं</translation>
@@ -1353,7 +1356,6 @@
 <translation id="2961695502793809356">आगे जाने के लिए क्लिक करें, इतिहास देखने के लिए दबाकर रखें</translation>
 <translation id="2963151496262057773">निम्‍न प्‍लग इन प्रतिसाद नहीं दे रहा है: <ph name="PLUGIN_NAME" />क्‍या उसे रोकना चाहते हैं?</translation>
 <translation id="2966937470348689686">Android प्राथमिकताएं प्रबंधित करें</translation>
-<translation id="2972557485845626008">फ़र्मवेयर</translation>
 <translation id="2972581237482394796">&amp;फिर से करें</translation>
 <translation id="2973324205039581528">साइट म्यूट करें</translation>
 <translation id="2977480621796371840">समूह से हटाएं</translation>
@@ -1611,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">विभाजक</translation>
 <translation id="3387614642886316601">'बेहतर वर्तनी जाँच' का इस्तेमाल करें</translation>
-<translation id="3393352139658145068">जब कोई “Ok Google” कहे, तो Assistant चालू करें. बैटरी बचाने के लिए, “Ok Google” सिर्फ़ तब चालू होता है जब आपका डिवाइस चार्जिंग पर लगा होता है.</translation>
 <translation id="3396800784455899911">"स्वीकार करें और जारी रखें" बटन पर क्लिक करके, आप पुष्टि करते हैं कि इन Google सेवाओं के लिए ऊपर बताई गई प्रोसेसिंग से आप सहमत हैं.</translation>
 <translation id="3399432415385675819">नोटिफ़िकेशन अक्षम हो जाएंगे</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> गुणा <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> हर्ट्ज़) - जाली की तरह</translation>
@@ -1772,6 +1773,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> दिखाएं</translation>
 <translation id="3613422051106148727">नए टैब में &amp;खोलें</translation>
 <translation id="3615073365085224194">उंगली से फ़िंगरप्रिंट सेंसर को छुएं</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> स्कैन हो रही है.</translation>
 <translation id="3616741288025931835">ब्राउज़िंग डेटा &amp;साफ़ करें...</translation>
 <translation id="3617891479562106823">बैकग्राउंड उपलब्ध नहीं हैं. बाद में फिर से कोशिश करें.</translation>
 <translation id="3619115746895587757">कैपुचिनो</translation>
@@ -1886,7 +1888,6 @@
 <translation id="3759933321830434300">वेब पेज के भाग अवरोधित करें</translation>
 <translation id="3760460896538743390">निरीक्षण और पेजभूमि पेज</translation>
 <translation id="37613671848467444">&amp;गुप्त विंडों में खोलें</translation>
-<translation id="3764314093345384080">बिल्ड की विस्तृत जानकारी</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{किसी USB डिवाइस से संचार करें}one{# USB डिवाइस से संचार करें}other{# USB डिवाइस से संचार करें}}</translation>
 <translation id="3765246971671567135">ऑफ़लाइन डेमो मोड नीति पढ़ी नहीं जा सकी.</translation>
 <translation id="3768037234834996183">आपकी प्राथमिकताएं समन्‍वयित की जा रही हैं...</translation>
@@ -1936,6 +1937,7 @@
 <translation id="3820172043799983114">गलत पिन</translation>
 <translation id="3820749202859700794">SECG अंडाकार वक्र secp521r1 (अर्थात NIST P-521)</translation>
 <translation id="3822559385185038546">यह प्रॉक्सी आपके व्‍यवस्‍थापक ने लागू किया है</translation>
+<translation id="3826440694796503677">आपके एडमिन ने ज़्यादा Google खाते जोड़ने की सेटिंग बंद कर दी है</translation>
 <translation id="3827306204503227641">सैंडबॉक्स नहीं किए गए प्लग इन को अनुमति देते रहें</translation>
 <translation id="3827774300009121996">&amp;पूर्ण स्क्रीन</translation>
 <translation id="3828029223314399057">बुकमार्क से खोजें</translation>
@@ -2030,6 +2032,7 @@
 <translation id="3949790930165450333"><ph name="DEVICE_NAME" /> (<ph name="DEVICE_ID" />)</translation>
 <translation id="394984172568887996">IE से आयात किया गया</translation>
 <translation id="3950820424414687140">साइन इन करें</translation>
+<translation id="3953834000574892725">मेरे खाते</translation>
 <translation id="3954354850384043518">जारी है</translation>
 <translation id="3954469006674843813"><ph name="WIDTH" /> गुणा <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> हर्ट्ज़)</translation>
 <translation id="3954953195017194676">आपके पास हाल ही में कैप्चर किया गया कोई WebRTC इवेंट लॉग नहीं है.</translation>
@@ -2164,7 +2167,6 @@
 <translation id="4138267921960073861">साइन इन स्‍क्रीन पर उपयोगकर्ता का नाम और फ़ोटो दिखाएं</translation>
 <translation id="4142052906269098341">अपने फ़ोन से <ph name="DEVICE_TYPE" /> को अनलॉक करें. <ph name="LINK_BEGIN" />ज़्यादा जानें<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">बेहतर गुणवत्ता वाले वीडियो पाएं और बैटरी लाइफ़ बचाएं. वीडियो सिर्फ़ उस स्क्रीन पर चलेगा जिस पर आपने कास्ट करने की सुविधा चालू की है.</translation>
-<translation id="4145922204387553806">Assistant को अपनी स्क्रीन पर मौजूद सामग्री से जुड़ी जानकारी दिखाने दें</translation>
 <translation id="4146026355784316281">हमेशा सिस्‍टम व्‍यूअर से खोलें</translation>
 <translation id="4146785383423576110">रीसेट करें और साफ़ करें</translation>
 <translation id="4147911968024186208">कृपया फिर से कोशिश करें. अगर आपको यह गड़बड़ी फिर से दिखाई देती है, तो कृपया अपने सहायता प्रतिनिधि से संपर्क करें.</translation>
@@ -2251,6 +2253,7 @@
 <translation id="4297322094678649474">भाषाएं बदलें</translation>
 <translation id="4301671483919369635">इस पेज को फ़ाइलों में बदलाव करने की अनुमति है</translation>
 <translation id="4303079906735388947">अपनी 'सुरक्षा कुंजी' के लिए नया पिन सेट अप करें</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" /> में कॉपी करें</translation>
 <translation id="4306119971288449206">ऐप्लिकेशन को सामग्री-प्रकार "<ph name="CONTENT_TYPE" />" के साथ दिया जाना चाहिए</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K लाइव)</translation>
 <translation id="4310139701823742692">फ़ाइल का फ़ॉर्मैट गलत है. PPD फ़ाइल देखें और फिर से कोशिश करें.</translation>
@@ -2264,6 +2267,7 @@
 <translation id="4325237902968425115"><ph name="LINUX_APP_NAME" /> अनइंस्टॉल हो रहा है...</translation>
 <translation id="4330191372652740264">आइस वॉटर</translation>
 <translation id="4330387663455830245"><ph name="LANGUAGE" /> का कभी अनुवाद ना करें</translation>
+<translation id="4332976768901252016">माता-पिता के नियंत्रण सेट अप करें</translation>
 <translation id="4333854382783149454">RSA सुरक्षित करने के तरीके के साथ PKCS #1 SHA-1</translation>
 <translation id="4336979451636460645">नेटवर्क लॉग के लिए, देखें: <ph name="DEVICE_LOG_LINK" /></translation>
 <translation id="4340515029017875942"><ph name="ORIGIN" /> "<ph name="EXTENSION_NAME" />" से संचार करना चाहती है</translation>
@@ -2385,7 +2389,6 @@
 <translation id="4534661889221639075">फिर से कोशिश करें.</translation>
 <translation id="4535127706710932914">सामान्य प्रोफ़ाइल</translation>
 <translation id="4535767533210902251">फ़िंगरप्रिंट सेंसर, आपके कीबोर्ड पर सबसे ऊपर दाईं ओर दिया गया बटन होता है. किसी भी उंगली से इसे हल्के से छुएं.</translation>
-<translation id="4538417792467843292">शब्‍द मिटाएं</translation>
 <translation id="4538684596480161368">सैंडबॉक्‍स नहीं किए गए प्‍लग इन को <ph name="HOST" /> पर हमेशा ब्लॉक करें</translation>
 <translation id="4538792345715658285">एंटरप्राइज़ नीति द्वारा इंस्टॉल किया गया.</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" /> और <ph name="WEBSITE_2" /> पर अपना डेटा पढ़ें</translation>
@@ -2536,6 +2539,7 @@
 <translation id="4763830802490665879">बाहर निकलने पर एकाधिक साइटों की कुकी साफ़ कर दी जाएंगी.</translation>
 <translation id="4765582662863429759">Android मैसेज को अपने Chromebook से अपने फ़ोन पर लेख भेजने की मंज़ूरी दें</translation>
 <translation id="4768332406694066911">आपके पास इन संगठनों के प्रमाणपत्र हैं जो आपकी पहचान करते हैं</translation>
+<translation id="4774824109040330448">अपने फ़ोन पर मौजूद पुष्टि करने वाले किसी ऐसे ऐप्लिकेशन से क्यूआर कोड स्कैन करें जिससे इसे स्कैन किया जा सकता है.</translation>
 <translation id="4776146737004271126">Android सेटिंग खोलें</translation>
 <translation id="4776917500594043016"><ph name="USER_EMAIL_ADDRESS" /> के लिए पासवर्ड</translation>
 <translation id="4777825441726637019">Play स्टोर</translation>
@@ -2928,6 +2932,7 @@
 <translation id="5367091008316207019">फ़ाइल पढ़ी जा रही है..</translation>
 <translation id="5368720394188453070">आपका फ़ोन लॉक हो गया है. प्रवेश करने के लिए उसे अनलॉक करें.</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> में साइन इन करें</translation>
+<translation id="5369491905435686894">माउस की रफ़्तार बढ़ाने की सुविधा चालू करें</translation>
 <translation id="5370819323174483825">&amp;पुन: लोड करें</translation>
 <translation id="5372529912055771682">आपूर्ति किया गया नामांकन मोड, ऑपरेटिंग सिस्‍टम के इस वर्शन द्वारा समर्थित नहीं है. कृपया पक्का करें कि आप नवीनतम वर्शन चला रहे हैं और फिर से प्रयास करें.</translation>
 <translation id="5372579129492968947">एक्सटेंशन अनपिन करें</translation>
@@ -3000,6 +3005,7 @@
 <translation id="5464632865477611176">इस बार चलाएं</translation>
 <translation id="5464660706533281090">कोई भी बच्चा इस सेटिंग में बदलाव नहीं कर सकता.</translation>
 <translation id="5466374726908360271">“<ph name="SEARCH_TERMS" />” को चिपकाएं और खोजें</translation>
+<translation id="5468173180030470402">फ़ाइल शेयर को ढूंढा जा रहा है</translation>
 <translation id="5471768120198416576">नमस्ते! मैं आपकी लिखाई को बोली में बदलने वाली आवाज़ हूं.</translation>
 <translation id="5473333559083690127">नया पिन फिर से डालें</translation>
 <translation id="5481941284378890518">आस-पास के प्रिंटर जोड़ें</translation>
@@ -3535,6 +3541,7 @@
 <translation id="6233154960150021497">कीबोर्ड के बजाय आवाज़ का इस्तेमाल करना डिफ़ॉल्ट करें</translation>
 <translation id="6234474535228214774">इंस्टॉल होना बाकी है</translation>
 <translation id="6237816943013845465">आपको अपना स्क्रीन रिज़ॉल्‍यूशन समायोजित करने देती है</translation>
+<translation id="6238767809035845642">अन्य डिवाइस से शेयर किया गया टेक्स्ट</translation>
 <translation id="6238923052227198598">सबसे नया नोट लॉक स्क्रीन पर रखें</translation>
 <translation id="6239558157302047471">फ़्रेम को फिर लोड करें</translation>
 <translation id="6241530762627360640">अपने सिस्टम के साथ जोड़ी हुई ब्लूटूथ डिवाइस से संबंधित जानकारी एक्सेस करें और आस-पास के ब्लूटूथ डिवाइस की खोज करें.</translation>
@@ -3543,6 +3550,7 @@
 <translation id="6243280677745499710">इस समय सेट है</translation>
 <translation id="6243774244933267674">सर्वर अनुपलब्‍ध है</translation>
 <translation id="6246790815526961700">डिवाइस से अपलोड करें</translation>
+<translation id="6247620186971210352">कोई ऐप्लिकेशन नहीं मिला</translation>
 <translation id="6247708409970142803"><ph name="PERCENTAGE" />%</translation>
 <translation id="6247802389331535091">सिस्टम: <ph name="ARC_PROCESS_NAME" /></translation>
 <translation id="624789221780392884">अपडेट तैयार है</translation>
@@ -3760,7 +3768,6 @@
 <translation id="6577284282025554716">डाउनलोड रोका गया: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">सिंक किए गए पासवर्ड अपने Google उपयोगकर्ता नाम और पासवर्ड से सुरक्षित करें</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - डेस्कटॉप की सामग्री शेयर की गई</translation>
-<translation id="6580151766480067746">ARC वर्शन</translation>
 <translation id="6582080224869403177">अपनी सुरक्षा बेहतर बनाने के लिए अपना <ph name="DEVICE_TYPE" /> रीसेट करें.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">प्राथमिक माउस बटन स्वैप करें</translation>
@@ -3771,6 +3778,7 @@
 <translation id="6596325263575161958">सुरक्षित करने के तरीकों के विकल्प</translation>
 <translation id="6596816719288285829">आईपी पता</translation>
 <translation id="6597017209724497268">नमूने</translation>
+<translation id="6597148444736186483">इस डिवाइस के प्राथमिक खाते से साइन आउट करने के लिए अपनी स्क्रीन पर दिखाए गए समय पर क्लिक करें. दिखाई देने वाले मेन्यू में, "साइन आउट" पर क्लिक करें.</translation>
 <translation id="659934686219830168">आपके इस पेज को छोड़ने के बाद सिंक होना चालू होगा</translation>
 <translation id="6602956230557165253">नेविगेट करने के लिए बाईं और दाईं 'तीर का निशान' वाली कुंजियों का इस्तेमाल करें.</translation>
 <translation id="6605847144724004692">किसी भी उपयोगकर्ता ने अभी तक रेट नहीं किया है.</translation>
@@ -4290,6 +4298,7 @@
 <translation id="7366415735885268578">साइट जोड़ें</translation>
 <translation id="7366909168761621528">ब्राउज़िंग डेटा</translation>
 <translation id="736877393389250337"><ph name="URL" /> <ph name="ALTERNATIVE_BROWSER_NAME" /> में नहीं खोला जा सकता है. कृपया अपने सिस्टम एडमिन से संपर्क करें.</translation>
+<translation id="7370592524170198497">ईथरनेट EAP:</translation>
 <translation id="7371006317849674875">शुरू करने का समय</translation>
 <translation id="7375053625150546623">EAP</translation>
 <translation id="7376553024552204454">माउस कर्सर के हिलने पर उसे हाइलाइट करें</translation>
@@ -4297,6 +4306,7 @@
 <translation id="7378627244592794276">नहीं</translation>
 <translation id="73786666777299047">Chrome वेब स्टोर खोलें</translation>
 <translation id="7378812711085314936">डेटा कनेक्शन पाएं</translation>
+<translation id="7378962964415201590">नया फ़ोन जोड़ें</translation>
 <translation id="7380768571499464492"><ph name="PRINTER_NAME" /> अपडेट किया गया</translation>
 <translation id="7385854874724088939">प्रिंट करने की कोशिश करते समय कुछ गड़बड़ी हो गई.  कृपया अपना प्रिंटर जाँचें और फिर से कोशिश करें.</translation>
 <translation id="7385896526023870365">इस एक्सटेंशन में कोई भी दूसरा साइट ऐक्सेस नहीं है.</translation>
@@ -4307,6 +4317,7 @@
 <translation id="7396845648024431313">सिस्‍टम प्रारंभ होने पर <ph name="APP_NAME" /> लॉन्‍च होगा और   सभी अन्‍य <ph name="PRODUCT_NAME" /> विंडो बंद कर देने के बाद भी पृष्‍ठभूमि में चलता रहेगा.</translation>
 <translation id="7400418766976504921">URL</translation>
 <translation id="7400839060291901923">अपने <ph name="PHONE_NAME" /> पर कनेक्शन सेट अप करें</translation>
+<translation id="7401778920660465883">यह मैसेज खारिज करें</translation>
 <translation id="740624631517654988">पॉप-अप अवरोधित</translation>
 <translation id="7407430846095439694">आयात करें और आबद्ध करें</translation>
 <translation id="7409549334477097887">बहुत ज़्यादा</translation>
@@ -4361,6 +4372,7 @@
 <translation id="7487141338393529395">'बेहतर वर्तनी जाँच' चालू करें</translation>
 <translation id="7487969577036436319">कोई घटक इंस्टॉल नहीं हैं</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;सभी खोलें}=1{&amp;बुकमार्क खोलें}one{&amp;सभी (#) खोलें}other{&amp;सभी (#) खोलें}}</translation>
+<translation id="7489761397368794366">अपने डिवाइस से कॉल करें</translation>
 <translation id="749028671485790643">व्यक्ति <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC पता</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> एक्सटेंशन,   लिखे जाने वाले सभी लेख को एकत्र कर सकता है, जिसमें पासवर्ड और क्रेडिट कार्ड नंबर जैसा व्यक्तिगत डेटा भी शामिल है. क्या आप इस एक्सटेंशन का उपयोग करना चाहते हैं?</translation>
@@ -4380,6 +4392,7 @@
 <translation id="7508054832109420082">प्रिंटर के लिए ऐक्सेस दें</translation>
 <translation id="7510943789645525906">अगर आपने ऐसा पासवर्ड डाला है जो डेटा के उल्लंघन के तहत आता है, तो आपको चेतावनी मिलती है</translation>
 <translation id="7513029293694390567">स्टोर किए गए क्रेडेंशियल के ज़रिए वेबसाइट में अपने आप साइन इन करें. बंद होने पर, आपसे किसी वेबसाइट में साइन इन करने से पहले हर बार पुष्टि करने के लिए कहा जाएगा.</translation>
+<translation id="7514239104543605883">अपने डिवाइस में कॉपी करें</translation>
 <translation id="7514365320538308">डाउनलोड करें</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">"Ok Google" बोलें</translation>
@@ -4628,6 +4641,7 @@
 <translation id="7851457902707056880">साइन इन की सिर्फ़ मालिक के खाते तक पाबंदी लगाई गई है. कृपया 'रीबूट' करें और मालिक खाते से साइन इन करें. मशीन 30 सेकंड में अपने आप 'रीबूट' हो जाएगी.</translation>
 <translation id="7851716364080026749">कैमरा और माइक्रोफ़ोन एक्सेस कभी भी ब्लॉक करें</translation>
 <translation id="7851720427268294554">आईपीपी पार्सर</translation>
+<translation id="78526636422538552">और Google खाते जोड़ने की सुविधा बंद है</translation>
 <translation id="7853747251428735">ज़्यादा टू&amp;ल</translation>
 <translation id="7857117644404132472">अपवाद जोड़ें</translation>
 <translation id="7857949311770343000">क्या यह वही नया टैब पेज है जिसकी आप अपेक्षा कर रहे थे?</translation>
@@ -4934,6 +4948,7 @@
 <translation id="8274332263553132018">फ़ाइल कास्ट करें</translation>
 <translation id="8274924778568117936">अपडेट पूरा होने तक अपना <ph name="DEVICE_TYPE" /> बंद न करें. इंस्टॉल हो जाने के बाद आपका <ph name="DEVICE_TYPE" /> रीस्टार्ट होगा.</translation>
 <translation id="8275038454117074363">आयात करें</translation>
+<translation id="8275080796245127762">अपने डिवाइस से कॉल करें</translation>
 <translation id="8276560076771292512">कैश और हार्ड रिलोड खाली करें</translation>
 <translation id="8281886186245836920">अभी नहीं</translation>
 <translation id="8282947398454257691">आपका अद्वितीय डिवाइस पहचानकर्ता पता करना</translation>
@@ -4954,6 +4969,7 @@
 <translation id="8308179586020895837">अगर <ph name="HOST" /> आपका कैमरा और माइक्रोफ़ोन एक्सेस करना चाहे, तो इसके लिए पूछें</translation>
 <translation id="830868413617744215">बीटा</translation>
 <translation id="8309458809024885768">प्रमाणपत्र पहले से मौजूद है</translation>
+<translation id="8314089908545021657">नए फ़ोन से जोड़ें</translation>
 <translation id="8314381333424235892">एक्सटेंशन मौजूद नहीं है या अनइंस्टाॅल कर दिया गया है</translation>
 <translation id="831440797644402910">इस फ़ोल्डर को खोला नहीं जा सकता</translation>
 <translation id="8316618172731049784"><ph name="DEVICE_NAME" /> पर भेजें</translation>
@@ -5253,6 +5269,7 @@
 <translation id="8758418656925882523">सुनकर लिखना चालू करें (टाइप करने के लिए बोलें)</translation>
 <translation id="8759408218731716181">एक से ज़्यादा साइन-इन सेट अप नहीं किया जा सका</translation>
 <translation id="8759753423332885148">ज़्यादा जानें.</translation>
+<translation id="8761945298804995673">यह उपयोगकर्ता पहले से मौजूद है</translation>
 <translation id="8762886931014513155">आपके <ph name="DEVICE_TYPE" /> को अपडेट की ज़रूरत है</translation>
 <translation id="8763927697961133303">USB डिवाइस</translation>
 <translation id="8767621466733104912">Chrome को सभी उपयोगकर्ताओं के लिए अपने आप अपडेट करें</translation>
@@ -5341,6 +5358,7 @@
 <translation id="8879284080359814990">टैब के रूप में &amp;दिखाएं</translation>
 <translation id="8879921471468674457">साइन इन की जानकारी याद रखें</translation>
 <translation id="8881020143150461183">कृपया फिर से कोशिश करें. तकनीकी सहायता के लिए <ph name="CARRIER_NAME" /> से संपर्क करें.</translation>
+<translation id="8883273463630735858">टचपैड की रफ़्तार बढ़ाने की सुविधा चालू करें</translation>
 <translation id="8884570509232205463">आपका डिवाइस अब <ph name="UNLOCK_TIME" /> बजे अनलॉक होगा.</translation>
 <translation id="8885197664446363138">Smart Lock अनुपलब्‍ध है</translation>
 <translation id="8888253246822647887">अपग्रेड पूरा होने पर आपका ऐप्लिकेशन खुल जाएगा. अपग्रेड में कुछ समय लग सकता है.</translation>
diff --git a/chrome/app/resources/generated_resources_hr.xtb b/chrome/app/resources/generated_resources_hr.xtb
index cd945fa2b..16415a9d 100644
--- a/chrome/app/resources/generated_resources_hr.xtb
+++ b/chrome/app/resources/generated_resources_hr.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Da biste imali svoja proširenja na svim svojim računalima, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Time će se izbrisati svi podaci na sigurnosnom ključu, uključujući njegov PIN</translation>
 <translation id="1475502736924165259">U arhivi imate certifikate koji ne odgovaraju nijednoj od ostalih kategorija</translation>
+<translation id="1476088332184200792">Kopirajte na svoj uređaj</translation>
 <translation id="1476607407192946488">&amp;Postavke jezika</translation>
 <translation id="1478340334823509079">Pojedinosti: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Instalacija nije omogućena</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Ispis pomoću dijaloškog okvira sustava... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Pitanje prije slanja (preporučeno)</translation>
 <translation id="2384436799579181135">Došlo je do pogreške. Provjerite pisač i pokušajte opet.</translation>
-<translation id="2386926718981642523">Pristupite svojem Asistentu svaki put kad izgovorite "Ok Google"</translation>
 <translation id="2387458720915042159">Vrsta proxy veze</translation>
 <translation id="2391419135980381625">Standardni font</translation>
 <translation id="2392369802118427583">Aktiviraj</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Nizak</translation>
 <translation id="2942560570858569904">Čekanje...</translation>
 <translation id="2942581856830209953">Prilagodba stranice</translation>
+<translation id="294308617863380348">Uključujući kolačiće treće strane</translation>
 <translation id="2944060181911631861">Slanje podataka o upotrebi i dijagnostici. Pomognite poboljšati Android automatskim slanjem dijagnostičkih podataka te podataka o upotrebi uređaja i aplikacija Googleu. Ti podaci pomoći će poboljšati stabilnost sustava, aplikacija i drugo. Neki skupni podaci pomoći će i Googleovim aplikacijama i partnerima, na primjer razvojnim programerima za Android. Ako je uključena dodatna postavka Aktivnost na webu i u aplikacijama, ti se podaci mogu spremati na vaš Google račun. <ph name="BEGIN_LINK1" />Saznajte više<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Dodaj vezu</translation>
 <translation id="2948300991547862301">Idi na stranicu <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Kliknite za kretanje prema naprijed, zadržite da biste vidjeli povijest</translation>
 <translation id="2963151496262057773">Sljedeći dodatak ne reagira: <ph name="PLUGIN_NAME" />. Želite li ga zaustaviti?</translation>
 <translation id="2966937470348689686">Upravljanje postavkama Androida</translation>
-<translation id="2972557485845626008">Oprema</translation>
 <translation id="2972581237482394796">&amp;Vrati poništeno</translation>
 <translation id="2973324205039581528">Zanemari web-lokaciju</translation>
 <translation id="2977480621796371840">Ukloni iz grupe</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separator</translation>
 <translation id="3387614642886316601">Koristi poboljšanu provjeru pravopisa</translation>
-<translation id="3393352139658145068">Asistent će se aktivirati kad bilo tko kaže "Ok Google". Radi štednje baterije značajka "Ok Google" uključena je samo kad je uređaj priključen na napajanje.</translation>
 <translation id="3396800784455899911">Klikom na gumb "Prihvati i nastavi" prihvaćate prethodno opisanu obradu za ove Googleove usluge.</translation>
 <translation id="3399432415385675819">Obavijesti će se onemogućiti</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> herca) – isprepleteno</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Prikaži <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Otvori u novoj kartici</translation>
 <translation id="3615073365085224194">Prislonite prst na senzor otiska prsta</translation>
+<translation id="3615579745882581859">U tijeku je pregled datoteke <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;Obriši podatke o pregledavanju...</translation>
 <translation id="3617891479562106823">Pozadine nisu dostupne. Pokušajte ponovo kasnije.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">blokirati dijelove web-stranica</translation>
 <translation id="3760460896538743390">Provjeri &amp;pozadinsku stranicu</translation>
 <translation id="37613671848467444">Otvori u &amp;anonimnom prozoru</translation>
-<translation id="3764314093345384080">Detaljni podaci o međuverziji</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Komuniciranje s USB uređajem}one{Komuniciranje s # USB uređajem}few{Komuniciranje s # USB uređaja}other{Komuniciranje s # USB uređaja}}</translation>
 <translation id="3765246971671567135">Nije bilo moguće pročitati pravila izvanmrežnog demo načina.</translation>
 <translation id="3768037234834996183">Sinkroniziranje postavki...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Prikaži korisnička imena i fotografije na zaslonu za prijavu</translation>
 <translation id="4142052906269098341">Otključajte <ph name="DEVICE_TYPE" /> telefonom. <ph name="LINK_BEGIN" />Saznajte više<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Gledajte videozapise u boljoj kvaliteti i štedite bateriju. Videozapisi će se reproducirati samo na zaslonu koji podržava Cast.</translation>
-<translation id="4145922204387553806">Dopustite Asistentu da vam prikaže informacije povezane sa sadržajem zaslona</translation>
 <translation id="4146026355784316281">Uvijek otvori u pregledniku sustava</translation>
 <translation id="4146785383423576110">Vrati na zadano i očisti</translation>
 <translation id="4147911968024186208">Pokušajte ponovo. Ako se pogreška ponovi, obratite se predstavniku podrške.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Promijeni jezike</translation>
 <translation id="4301671483919369635">Ova stranica ima dopuštenje za uređivanje datoteka</translation>
 <translation id="4303079906735388947">Postavite novi PIN za sigurnosni ključ</translation>
+<translation id="4305402730127028764">Kopiraj na uređaj <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Aplikacije moraju biti poslužene s vrstom sadržaja "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K (<ph name="NUM_KILOBYTES_LIVE" /> K izravno)</translation>
 <translation id="4310139701823742692">Datoteka ima pogrešan format. Pregledajte PPD datoteku i pokušajte ponovo.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Pokušajte ponovo.</translation>
 <translation id="4535127706710932914">Zadani profil</translation>
 <translation id="4535767533210902251">Senzor otiska prsta nalazi se u najvišoj tipki s desne strane tipkovnice. Dodirnite ga lagano bilo kojim prstom.</translation>
-<translation id="4538417792467843292">Izbriši riječ</translation>
 <translation id="4538684596480161368">Uvijek blokiraj dodatke izvan testnog okruženja na <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Instalirano pravilima tvrtke.</translation>
 <translation id="4542520061254486227">čitati vaše podatke s web-lokacija <ph name="WEBSITE_1" /> i <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Čitanje datoteke...</translation>
 <translation id="5368720394188453070">Vaš je telefon zaključan. Otključajte ga da biste mu pristupili.</translation>
 <translation id="5368779022775404937">Prijavite se na <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Omogući ubrzanje miša</translation>
 <translation id="5370819323174483825">&amp;Ponovo učitaj</translation>
 <translation id="5372529912055771682">Ova verzija operativnog sustava ne podržava uneseni način prijave. Svakako pokrenite najnoviju verziju i pokušajte ponovo.</translation>
 <translation id="5372579129492968947">Otkvači proširenje</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Ovaj put pokreni</translation>
 <translation id="5464660706533281090">Tu postavku ne može promijeniti korisnik koji je dijete.</translation>
 <translation id="5466374726908360271">Za&amp;lijepi i traži pojam "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Traže se dijeljenja datoteka</translation>
 <translation id="5471768120198416576">Bok! Ja sam vaš glas alata za pretvaranje teksta u govor.</translation>
 <translation id="5473333559083690127">Ponovo unesite novi PIN</translation>
 <translation id="5481941284378890518">Dodaj pisače u blizini</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Vraćanje na upotrebu glasa umjesto tipkovnice</translation>
 <translation id="6234474535228214774">Instaliranje na čekanju</translation>
 <translation id="6237816943013845465">Omogućuje prilagodbu razlučivosti zaslona</translation>
+<translation id="6238767809035845642">Tekst podijeljen s drugog uređaja</translation>
 <translation id="6238923052227198598">Zadrži najnoviju bilješku na zaključanom zaslonu</translation>
 <translation id="6239558157302047471">Ponovo učitaj okvir</translation>
 <translation id="6241530762627360640">pristupiti informacijama o Bluetooth uređajima uparenim s vašim sustavom i otkrivati Bluetooth uređaje u blizini</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Preuzimanje otkazano: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Šifriraj sinkronizirane zaporke moijm korisničkim imenom i zaporkom za Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – dijeli se sadržaj radne površine</translation>
-<translation id="6580151766480067746">Verzija ARC-a</translation>
 <translation id="6582080224869403177">Vratite uređaj <ph name="DEVICE_TYPE" /> na zadano radi sigurnosne nadogradnje.</translation>
 <translation id="6584878029876017575">Microsoftovo cjeloživotno potpisivanje</translation>
 <translation id="6586451623538375658">Zamijeni primarnu tipku miša</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Uključivanje poboljšane provjere pravopisa</translation>
 <translation id="7487969577036436319">Nema instaliranih komponenti</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Otvori sve}=1{&amp;Otvori oznaku}one{&amp;Otvori sve (#)}few{&amp;Otvori sve (#)}other{&amp;Otvori sve (#)}}</translation>
+<translation id="7489761397368794366">Nazovite sa svojeg uređaja</translation>
 <translation id="749028671485790643">Osoba <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC adresa</translation>
 <translation id="7493386493263658176">Proširenje <ph name="EXTENSION_NAME" /> možda prikuplja cjelokupni tekst koji unesete, uključujući osobne podatke kao što su zaporke i brojevi kreditnih kartica. Želite li koristiti to proširenje?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Pruža pristup pisačima</translation>
 <translation id="7510943789645525906">Upozorava ako je zaporka koju upotrebljavate ugrožena zbog povrede podataka</translation>
 <translation id="7513029293694390567">Automatski se prijavite na web-lokacije pomoću spremljenih vjerodajnica. Ako je ta značajka onemogućena, tražit će se potvrda prije svakog prijavljivanja na web-lokaciju.</translation>
+<translation id="7514239104543605883">Kopirajte na svoj uređaj</translation>
 <translation id="7514365320538308">Preuzmi</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Recite "Ok Google"</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Emitiraj datoteku</translation>
 <translation id="8274924778568117936">Ne isključujte i ne zatvarajte uređaj <ph name="DEVICE_TYPE" /> dok ažuriranje ne završi. Uređaj <ph name="DEVICE_TYPE" /> ponovo će se pokrenuti kada instaliranje završi.</translation>
 <translation id="8275038454117074363">Uvezi</translation>
+<translation id="8275080796245127762">Nazovite sa svojeg uređaja</translation>
 <translation id="8276560076771292512">Pražnjenje predmemorije i tvrdo ponovno učitavanje</translation>
 <translation id="8281886186245836920">Preskoči</translation>
 <translation id="8282947398454257691">znati vaš jedinstveni identifikator uređaja</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Omogući diktiranje (zapisivanje govora)</translation>
 <translation id="8759408218731716181">Nije moguće postaviti višestruku prijavu</translation>
 <translation id="8759753423332885148">Saznajte više.</translation>
+<translation id="8761945298804995673">Taj korisnik već postoji</translation>
 <translation id="8762886931014513155">Potrebno je ažurirati <ph name="DEVICE_TYPE" /></translation>
 <translation id="8763927697961133303">USB uređaj</translation>
 <translation id="8767621466733104912">Automatski ažuriraj Chrome za sve korisnike</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Prikaži kao karticu</translation>
 <translation id="8879921471468674457">Zapamti podatke za prijavu</translation>
 <translation id="8881020143150461183">Pokušajte ponovo. Za tehničku podršku kontaktirajte <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Omogući ubrzanje dodirne podloge</translation>
 <translation id="8884570509232205463">Uređaj se odsad zaključava u <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock nije dostupan</translation>
 <translation id="8888253246822647887">Aplikacija će se otvoriti kad nadogradnja završi. Nadogradnje mogu trajati nekoliko minuta.</translation>
diff --git a/chrome/app/resources/generated_resources_hu.xtb b/chrome/app/resources/generated_resources_hu.xtb
index 8448a334..be25e91e 100644
--- a/chrome/app/resources/generated_resources_hu.xtb
+++ b/chrome/app/resources/generated_resources_hu.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Ha az összes számítógépén szeretné elérni bővítményeit: <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Ezzel törli a biztonsági hardverkulcson tárolt összes adatot, köztük a PIN-kódot is</translation>
 <translation id="1475502736924165259">Vannak olyan tanúsítványok, amelyek nem illenek a többi kategória egyikébe se</translation>
+<translation id="1476088332184200792">Átmásolás az eszközére</translation>
 <translation id="1476607407192946488">&amp;Nyelvi beállítások</translation>
 <translation id="1478340334823509079">Részletek: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">A telepítés nincs engedélyezve</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Nyomtatás a rendszer párbeszédablakán keresztül... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Kérdezzen rá küldés előtt (ajánlott)</translation>
 <translation id="2384436799579181135">Hiba történt. Ellenőrizze a nyomtatót, majd próbálja újra.</translation>
-<translation id="2386926718981642523">Bármikor hozzáférhet Segédjéhez, csak mondja azt, hogy „Ok Google”</translation>
 <translation id="2387458720915042159">Proxykapcsolat típusa</translation>
 <translation id="2391419135980381625">Alapértelmezett betűtípus</translation>
 <translation id="2392369802118427583">Aktiválás</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Alacsony</translation>
 <translation id="2942560570858569904">Várakozás…</translation>
 <translation id="2942581856830209953">Az oldal személyre szabása</translation>
+<translation id="294308617863380348">Harmadik féltől származó cookie-kkal együtt</translation>
 <translation id="2944060181911631861">Használati és diagnosztikai adatok küldése. Segítsen az Android-élmény továbbfejlesztésében azzal, hogy automatikusan diagnosztikai, valamint eszköz- és alkalmazáshasználati adatokat küld a Google-nak. Az adatok a rendszer- és alkalmazásstabilitás javításában, valamint más fejlesztésekben segítenek. Bizonyos összesített adatok a Google-alkalmazásoknak és -partnereknek, például az Android-fejlesztőknek is segítenek. Ha az Internetes és alkalmazástevékenységek beállítás is be van kapcsolva, akkor a rendszer ezeket az adatokat az Ön Google-fiókjába is mentheti. <ph name="BEGIN_LINK1" />További információ.<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Kapcsolat hozzáadása</translation>
 <translation id="2948300991547862301">Ugrás: <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Kattintson, ha tovább szeretne lépni; tartsa lenyomva, ha látni szeretné az előzményeket</translation>
 <translation id="2963151496262057773">Az alábbi beépülő modulok nem válaszolnak: <ph name="PLUGIN_NAME" />. Szeretné leállítani?</translation>
 <translation id="2966937470348689686">Android-beállítások kezelése</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Újra</translation>
 <translation id="2973324205039581528">Webhely némítása</translation>
 <translation id="2977480621796371840">Eltávolítás a csoportból</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Elválasztó</translation>
 <translation id="3387614642886316601">Továbbfejlesztett helyesírás-ellenőrzés használata</translation>
-<translation id="3393352139658145068">A Segéd aktiválása, amikor valaki azt mondja, hogy „Ok Google”. Az akkumulátor üzemidejének növelése érdekében az „Ok Google” csak akkor van bekapcsolva, amikor az eszköz áramforrásra csatlakozik.</translation>
 <translation id="3396800784455899911">Az „Elfogadás és folytatás” gombra kattintva elfogadja az ezen Google-szolgáltatásokkal kapcsolatos, fent részletezett feldolgozási folyamatot.</translation>
 <translation id="3399432415385675819">Az értesítések le lesznek tiltva</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> × <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) – váltottsoros</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> megjelenítése</translation>
 <translation id="3613422051106148727">&amp;Megnyitás új lapon</translation>
 <translation id="3615073365085224194">Érintse ujját az ujjlenyomat-érzékelőhöz</translation>
+<translation id="3615579745882581859">Folyamatban van a(z) <ph name="FILE_NAME" /> ellenőrzése.</translation>
 <translation id="3616741288025931835">&amp;Böngészés adatainak törlése...</translation>
 <translation id="3617891479562106823">A hátterek nem állnak rendelkezésre. Próbálja újra később.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Weboldalak adott részeinek letiltása</translation>
 <translation id="3760460896538743390">&amp;Háttéroldal vizsgálata</translation>
 <translation id="37613671848467444">Megnyitás &amp;inkognitóablakban</translation>
-<translation id="3764314093345384080">Részletes buildinformáció</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Kommunikáció egy USB-eszközzel}other{Kommunikáció # USB-eszközzel}}</translation>
 <translation id="3765246971671567135">Nem sikerült a demó mód offline házirendjének olvasása.</translation>
 <translation id="3768037234834996183">Beállítások szinkronizálása…</translation>
@@ -2168,7 +2167,6 @@
 <translation id="4138267921960073861">Felhasználónevek és képek megjelenítése a bejelentkezési oldalon</translation>
 <translation id="4142052906269098341">Feloldhatja <ph name="DEVICE_TYPE" /> eszközét telefonjával. <ph name="LINK_BEGIN" />További információ.<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Jobb videóminőséget és hosszabb akkumulátor-üzemidőt biztosít. A videókat csak a Cast-kompatibilis képernyőn játssza le a rendszer.</translation>
-<translation id="4145922204387553806">A Segéd a képernyő tartalmához kapcsolódó információkat jeleníthet meg</translation>
 <translation id="4146026355784316281">Megnyitás mindig a rendszer megtekintőjével</translation>
 <translation id="4146785383423576110">Visszaállítás és megtisztítás</translation>
 <translation id="4147911968024186208">Próbálja újra. Ha ismét ezt a hibaüzenetet látja, forduljon helyi ügyfélszolgálati képviselőjéhez.</translation>
@@ -2255,6 +2253,7 @@
 <translation id="4297322094678649474">Nyelvek módosítása</translation>
 <translation id="4301671483919369635">Ez az oldal szerkeszthet fájlokat</translation>
 <translation id="4303079906735388947">Új PIN-kód beállítása a biztonsági hardverkulcshoz</translation>
+<translation id="4305402730127028764">Másolás ide: <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Az alkalmazásokat „<ph name="CONTENT_TYPE" />” tartalomtípussal kell ellátni</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K élő)</translation>
 <translation id="4310139701823742692">Hibás fájlformátum. Ellenőrizze a PPD-fájlt, és próbálja újra.</translation>
@@ -2390,7 +2389,6 @@
 <translation id="4534661889221639075">Próbálja újra.</translation>
 <translation id="4535127706710932914">Alapértelmezett profil</translation>
 <translation id="4535767533210902251">Az ujjlenyomat-érzékelő a billentyűzet jobb felső sarkában található gomb. Érintse meg finoman valamelyik ujjával.</translation>
-<translation id="4538417792467843292">Szó törlése</translation>
 <translation id="4538684596480161368">Mindig tiltsa le a nem sandboxban lévő beépülő modulokat a következő webhelyen: <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Vállalati házirend által telepítve.</translation>
 <translation id="4542520061254486227">Adatok beolvasása a következő webhelyeken: <ph name="WEBSITE_1" /> és <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Fájl olvasása..</translation>
 <translation id="5368720394188453070">A telefon zárolva van. Oldja fel a belépéshez.</translation>
 <translation id="5368779022775404937">Bejelentkezés itt: <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Az egér gyorsításának engedélyezése</translation>
 <translation id="5370819323174483825">Új&amp;ratöltés</translation>
 <translation id="5372529912055771682">Az operációs rendszer jelen verziója nem támogatja a kínált regisztrációs módot. Kérjük, győződjön meg arról, hogy a legújabb verziót használja, majd próbálkozzon újra.</translation>
 <translation id="5372579129492968947">Bővítmény rögzítésének feloldása</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Futtatás most</translation>
 <translation id="5464660706533281090">Ezt a beállítást nem módosíthatja gyermek felhasználó.</translation>
 <translation id="5466374726908360271">„<ph name="SEARCH_TERMS" />” be&amp;illesztése és keresése</translation>
+<translation id="5468173180030470402">Fájlmegosztások keresése</translation>
 <translation id="5471768120198416576">Üdvözlöm! A szövegfelolvasó az én hangomon szólal majd meg.</translation>
 <translation id="5473333559083690127">Írja be újra az új PIN-kódot</translation>
 <translation id="5481941284378890518">Közeli nyomtatók hozzáadása</translation>
@@ -3543,6 +3543,7 @@
 <translation id="6233154960150021497">Alapértelmezés szerint hang használata billentyűzet helyett</translation>
 <translation id="6234474535228214774">Telepítés függőben</translation>
 <translation id="6237816943013845465">Lehetővé teszi a képernyő felbontásának módosítását</translation>
+<translation id="6238767809035845642">Más eszközről megosztott szöveg</translation>
 <translation id="6238923052227198598">Legutóbbi jegyzet megtartása a lezárási képernyőn</translation>
 <translation id="6239558157302047471">&amp;Keret újratöltése</translation>
 <translation id="6241530762627360640">A rendszerrel párosított Bluetooth-eszközökkel kapcsolatos információk elérése és a közeli Bluetooth-eszközök felderítése.</translation>
@@ -3769,7 +3770,6 @@
 <translation id="6577284282025554716">Letöltés megszakítva: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Szinkronizált jelszavak titkosítása Google-felhasználónevével és -jelszavával</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – Megosztott asztali tartalom</translation>
-<translation id="6580151766480067746">ARC-verzió</translation>
 <translation id="6582080224869403177">A biztonsági frissítés alkalmazásához állítsa vissza <ph name="DEVICE_TYPE" /> eszközét.</translation>
 <translation id="6584878029876017575">Microsoft élethosszig tartó aláírás</translation>
 <translation id="6586451623538375658">Az elsődleges egérgomb cseréje</translation>
@@ -4374,6 +4374,7 @@
 <translation id="7487141338393529395">A továbbfejlesztett helyesírás-ellenőrzés bekapcsolása</translation>
 <translation id="7487969577036436319">Nincsenek összetevők telepítve</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{Összes &amp;megnyitása}=1{Könyvjelző &amp;megnyitása}other{Összes (#) &amp;megnyitása}}</translation>
+<translation id="7489761397368794366">Hívás az eszközéről</translation>
 <translation id="749028671485790643">Személy: <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-cím</translation>
 <translation id="7493386493263658176">A(z) <ph name="EXTENSION_NAME" /> bővítmény begyűjtheti az összes Ön által beírt szöveget, így például a személyes adatokat (jelszavakat, hitelkártyaszámokat stb.). Biztosan használni szeretné ezt a bővítményt?</translation>
@@ -4393,6 +4394,7 @@
 <translation id="7508054832109420082">Hozzáférés biztosítása a nyomtatók számára</translation>
 <translation id="7510943789645525906">Figyelmezteti Önt, ha jelszava adatvédelmi incidensben volt érintett</translation>
 <translation id="7513029293694390567">Automatikus bejelentkezés webhelyekre a tárolt hitelesítő adatokkal. Ha a funkció ki van kapcsolva, akkor a rendszer minden alkalommal megerősítést kér Öntől, mielőtt bejelentkezne az adott webhelyre.</translation>
+<translation id="7514239104543605883">Átmásolás az eszközére</translation>
 <translation id="7514365320538308">Letöltés</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Mondja ki a következő szavakat: „Ok Google” (Oké Google).</translation>
@@ -4949,6 +4951,7 @@
 <translation id="8274332263553132018">Fájl átküldése</translation>
 <translation id="8274924778568117936">A frissítés befejezéséig ne kapcsolja ki vagy csukja le <ph name="DEVICE_TYPE" /> eszközét. <ph name="DEVICE_TYPE" /> eszköze a telepítést követően újraindul.</translation>
 <translation id="8275038454117074363">Importálás</translation>
+<translation id="8275080796245127762">Hívás az eszközéről</translation>
 <translation id="8276560076771292512">Gyorsítótár ürítése és teljes újratöltés</translation>
 <translation id="8281886186245836920">Kihagyás</translation>
 <translation id="8282947398454257691">Az egyedi eszközazonosító megtekintése</translation>
@@ -5269,6 +5272,7 @@
 <translation id="8758418656925882523">Diktálás (beszéddel írás) engedélyezése</translation>
 <translation id="8759408218731716181">Nem lehet beállítani a többfiókos bejelentkezést</translation>
 <translation id="8759753423332885148">További információ.</translation>
+<translation id="8761945298804995673">Már van ilyen felhasználó</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> eszközét frissíteni kell</translation>
 <translation id="8763927697961133303">USB-eszköz</translation>
 <translation id="8767621466733104912">A Chrome automatikus frissítése az összes felhasználó számára</translation>
@@ -5357,6 +5361,7 @@
 <translation id="8879284080359814990">Megjeleníté&amp;s lapként</translation>
 <translation id="8879921471468674457">Bejelentkezési adatok megjegyzése</translation>
 <translation id="8881020143150461183">Próbálja újra. Műszaki támogatásért forduljon a(z) <ph name="CARRIER_NAME" /> szolgáltatóhoz.</translation>
+<translation id="8883273463630735858">Az érintőpad gyorsításának engedélyezése</translation>
 <translation id="8884570509232205463">Az eszköz zárolásának új időpontja: <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">A Smart Lock nem áll rendelkezésre</translation>
 <translation id="8888253246822647887">A frissítés befejezése után megnyílik az alkalmazás. A frissítési folyamat eltarthat néhány percig.</translation>
diff --git a/chrome/app/resources/generated_resources_id.xtb b/chrome/app/resources/generated_resources_id.xtb
index 7b457c99c..29a04ae 100644
--- a/chrome/app/resources/generated_resources_id.xtb
+++ b/chrome/app/resources/generated_resources_id.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Untuk mendapatkan ekstensi di semua komputer, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Tindakan ini akan menghapus semua data di kunci keamanan, termasuk PIN-nya</translation>
 <translation id="1475502736924165259">Anda memiliki sertifikat pada file yang tidak sesuai dengan kategori lain mana pun</translation>
+<translation id="1476088332184200792">Salin ke Perangkat Anda</translation>
 <translation id="1476607407192946488">&amp;Setelan Bahasa</translation>
 <translation id="1478340334823509079">Detail: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Penginstalan tidak diaktifkan</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Cetak menggunakan dialog sistem... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Tanyakan sebelum mengirim (disarankan)</translation>
 <translation id="2384436799579181135">Terjadi error. Harap periksa printer Anda dan coba lagi.</translation>
-<translation id="2386926718981642523">Akses Asisten setiap kali Anda mengucapkan "Ok Google"</translation>
 <translation id="2387458720915042159">Jenis sambungan proxy</translation>
 <translation id="2391419135980381625">Font standar</translation>
 <translation id="2392369802118427583">Aktifkan</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Rendah</translation>
 <translation id="2942560570858569904">Menunggu...</translation>
 <translation id="2942581856830209953">Sesuaikan halaman ini</translation>
+<translation id="294308617863380348">Termasuk cookie pihak ketiga</translation>
 <translation id="2944060181911631861">Kirim data penggunaan dan diagnostik. Bantuan sempurnakan pengalaman Android Anda dengan otomatis mengirim data diagnostik, perangkat, dan penggunaan aplikasi ke Google. Data ini akan membantu sistem dan stabilitas aplikasi serta peningkatan lainnya. Beberapa data gabungan juga akan membantu aplikasi dan partner Google, seperti developer Android. Jika setelan Aktivitas Web &amp; Aplikasi tambahan diaktifkan, data ini mungkin akan disimpan ke Akun Google Anda. <ph name="BEGIN_LINK1" />Pelajari Lebih Lanjut<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Tambahkan koneksi</translation>
 <translation id="2948300991547862301">Buka <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Klik untuk maju, tahan untuk melihat histori</translation>
 <translation id="2963151496262057773">Plugin berikut tidak merespons: <ph name="PLUGIN_NAME" />Ingin menghentikannya?</translation>
 <translation id="2966937470348689686">Kelola preferensi Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Ulang</translation>
 <translation id="2973324205039581528">Matikan Notifikasi Situs</translation>
 <translation id="2977480621796371840">Hapus dari grup</translation>
@@ -1611,7 +1611,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Pemisah</translation>
 <translation id="3387614642886316601">Gunakan fitur periksa ejaan yang disempurnakan</translation>
-<translation id="3393352139658145068">Aktifkan Asisten saat seseorang mengatakan “Ok Google”. Untuk menghemat baterai, “Ok Google” hanya akan menyala saat perangkat terhubung ke sumber listrik.</translation>
 <translation id="3396800784455899911">Dengan mengklik tombol "Setuju dan lanjutkan", Anda menyetujui pemrosesan yang dijelaskan di atas terkait layanan Google ini.</translation>
 <translation id="3399432415385675819">Notifikasi akan dinonaktifkan</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - saling bertautan</translation>
@@ -1772,6 +1771,7 @@
 <translation id="3613134908380545408">Tampilkan <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Buka di tab baru</translation>
 <translation id="3615073365085224194">Sentuh sensor sidik jari dengan jari Anda</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> sedang dipindai.</translation>
 <translation id="3616741288025931835">&amp;Hapus Data browsing...</translation>
 <translation id="3617891479562106823">Background tidak tersedia. Coba lagi nanti.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1886,7 +1886,6 @@
 <translation id="3759933321830434300">Blokir bagian halaman web</translation>
 <translation id="3760460896538743390">Periksa Halaman Latar &amp;Belakang</translation>
 <translation id="37613671848467444">Buka di &amp;Jendela Samaran</translation>
-<translation id="3764314093345384080">Detail informasi build</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Berkomunikasi dengan satu perangkat USB}other{Berkomunikasi dengan # perangkat USB}}</translation>
 <translation id="3765246971671567135">Tidak dapat membaca kebijakan mode demo offline.</translation>
 <translation id="3768037234834996183">Menyinkronkan preferensi Anda...</translation>
@@ -2167,7 +2166,6 @@
 <translation id="4138267921960073861">Tampilkan nama pengguna dan foto pada layar masuk</translation>
 <translation id="4142052906269098341">Buka kunci <ph name="DEVICE_TYPE" /> Anda dengan ponsel. <ph name="LINK_BEGIN" />Pelajari lebih lanjut<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Dapatkan video yang berkualitas lebih baik dan hemat baterai. Video hanya akan diputar di layar yang kompatibel untuk Cast.</translation>
-<translation id="4145922204387553806">Biarkan Asisten menampilkan info yang berkaitan dengan apa yang ditampilkan di layar</translation>
 <translation id="4146026355784316281">Selalu Buka Dengan Penampil Sistem</translation>
 <translation id="4146785383423576110">Setel ulang dan bersihkan</translation>
 <translation id="4147911968024186208">Harap coba lagi. Jika Anda melihat error ini lagi, hubungi perwakilan dukungan Anda.</translation>
@@ -2254,6 +2252,7 @@
 <translation id="4297322094678649474">Ubah Bahasa</translation>
 <translation id="4301671483919369635">Halaman ini diizinkan untuk mengedit file</translation>
 <translation id="4303079906735388947">Siapkan PIN baru untuk kunci keamanan Anda</translation>
+<translation id="4305402730127028764">Salin ke <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Aplikasi harus disediakan dengan jenis konten "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K langsung)</translation>
 <translation id="4310139701823742692">Format file salah. Periksa file PPD dan coba lagi.</translation>
@@ -2389,7 +2388,6 @@
 <translation id="4534661889221639075">Coba lagi.</translation>
 <translation id="4535127706710932914">Profil Default</translation>
 <translation id="4535767533210902251">Sensor sidik jari adalah tombol di sebelah kanan atas pada keyboard Anda. Sentuh sensornya menggunakan jari apa pun.</translation>
-<translation id="4538417792467843292">Hapus kata</translation>
 <translation id="4538684596480161368">Selalu blokir plugin yang tidak dimasukkan kotak pasir di <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Dipasang oleh kebijakan perusahaan.</translation>
 <translation id="4542520061254486227">Membaca data Anda di <ph name="WEBSITE_1" /> dan <ph name="WEBSITE_2" /></translation>
@@ -2933,6 +2931,7 @@
 <translation id="5367091008316207019">Membaca file..</translation>
 <translation id="5368720394188453070">Ponsel terkunci. Buka kunci untuk masuk.</translation>
 <translation id="5368779022775404937">Login ke <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Aktifkan akselerasi mouse</translation>
 <translation id="5370819323174483825">&amp;Muat ulang</translation>
 <translation id="5372529912055771682">Mode pendaftaran yang disediakan tidak didukung oleh versi sistem operasi ini.  Pastikan Anda menjalankan versi terbaru dan coba lagi.</translation>
 <translation id="5372579129492968947">Lepas pin ekstensi</translation>
@@ -3005,6 +3004,7 @@
 <translation id="5464632865477611176">Jalankan saat ini</translation>
 <translation id="5464660706533281090">Setelan ini tidak dapat diubah oleh pengguna turunan.</translation>
 <translation id="5466374726908360271">Tempel dan telusuri “<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Mencari berbagi file</translation>
 <translation id="5471768120198416576">Halo! Saya suara text to speech Anda.</translation>
 <translation id="5473333559083690127">Masukkan lagi PIN baru</translation>
 <translation id="5481941284378890518">Tambahkan Printer di Sekitar</translation>
@@ -3540,6 +3540,7 @@
 <translation id="6233154960150021497">Default untuk menggunakan suara, bukan keyboard</translation>
 <translation id="6234474535228214774">Penginstalan menunggu antrean</translation>
 <translation id="6237816943013845465">Memungkinkan Anda menyesuaikan resolusi layar</translation>
+<translation id="6238767809035845642">Teks yang dibagikan dari Perangkat Lain</translation>
 <translation id="6238923052227198598">Tampilkan catatan terbaru di layar kunci</translation>
 <translation id="6239558157302047471">Muat ulang &amp;frame</translation>
 <translation id="6241530762627360640">Mengakses informasi tentang perangkat Bluetooth yang disandingkan dengan sistem Anda dan menemukan perangkat Bluetooth di sekitarnya.</translation>
@@ -3766,7 +3767,6 @@
 <translation id="6577284282025554716">Download dibatalkan: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Enkripsikan sandi yang disinkronkan dengan nama pengguna dan sandi Google Anda</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Konten desktop dibagikan</translation>
-<translation id="6580151766480067746">Versi ARC</translation>
 <translation id="6582080224869403177">Setel ulang <ph name="DEVICE_TYPE" /> untuk mengupgrade keamanan Anda.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">Tukar tombol mouse utama</translation>
@@ -4371,6 +4371,7 @@
 <translation id="7487141338393529395">Aktifkan fitur Periksa Ejaan yang Disempurnakan</translation>
 <translation id="7487969577036436319">Tidak ada komponen yang dipasang</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Buka semua}=1{&amp;Buka bookmark}other{&amp;Buka semua (#)}}</translation>
+<translation id="7489761397368794366">Panggil dari perangkat Anda</translation>
 <translation id="749028671485790643">Orang <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Alamat MAC</translation>
 <translation id="7493386493263658176">Ekstensi <ph name="EXTENSION_NAME" /> dapat mengumpulkan semua teks yang Anda ketik, termasuk data pribadi seperti sandi dan nomor kartu kredit. Ingin menggunakan ekstensi ini?</translation>
@@ -4390,6 +4391,7 @@
 <translation id="7508054832109420082">Beri akses ke printer</translation>
 <translation id="7510943789645525906">Memperingatkan Anda jika sandi yang digunakan pernah bocor saat terjadi pelanggaran data.</translation>
 <translation id="7513029293694390567">Otomatis login ke situs menggunakan kredensial yang tersimpan. Jika dinonaktifkan, Anda akan dimintai konfirmasi setiap kali login ke situs.</translation>
+<translation id="7514239104543605883">Salin ke perangkat Anda</translation>
 <translation id="7514365320538308">Download</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Ucapkan "Ok Google"</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">Cast file</translation>
 <translation id="8274924778568117936">Jangan menonaktifkan atau menutup <ph name="DEVICE_TYPE" /> Anda sampai proses update selesai. <ph name="DEVICE_TYPE" /> Anda akan dimulai ulang setelah proses instal selesai.</translation>
 <translation id="8275038454117074363">Impor</translation>
+<translation id="8275080796245127762">Panggil dari Perangkat Anda</translation>
 <translation id="8276560076771292512">Kosongkan Cache dan Muat Ulang Keras</translation>
 <translation id="8281886186245836920">Lewati</translation>
 <translation id="8282947398454257691">Mengetahui pengenal perangkat unik Anda</translation>
@@ -5266,6 +5269,7 @@
 <translation id="8758418656925882523">Aktifkan dikte (ucapkan untuk mengetik)</translation>
 <translation id="8759408218731716181">Tidak dapat menyiapkan fitur masuk banyak akun</translation>
 <translation id="8759753423332885148">Pelajari lebih lanjut.</translation>
+<translation id="8761945298804995673">Pengguna ini sudah ada</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> Anda perlu diupdate</translation>
 <translation id="8763927697961133303">Perangkat USB</translation>
 <translation id="8767621466733104912">Update Chrome secara otomatis untuk semua pengguna</translation>
@@ -5354,6 +5358,7 @@
 <translation id="8879284080359814990">Tampilkan &amp;Sebagai Tab</translation>
 <translation id="8879921471468674457">Ingat info login</translation>
 <translation id="8881020143150461183">Coba lagi. Untuk dukungan teknis, hubungi <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Aktifkan akselerasi touchpad</translation>
 <translation id="8884570509232205463">Sekarang perangkat akan terkunci pukul <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock tidak tersedia</translation>
 <translation id="8888253246822647887">Aplikasi Anda akan terbuka setelah proses upgrade selesai. Proses upgrade dapat memerlukan waktu beberapa menit.</translation>
diff --git a/chrome/app/resources/generated_resources_it.xtb b/chrome/app/resources/generated_resources_it.xtb
index 9a810542..e6edeca 100644
--- a/chrome/app/resources/generated_resources_it.xtb
+++ b/chrome/app/resources/generated_resources_it.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Per trovare le tue estensioni su tutti i computer, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Questa operazione cancellerà tutti i dati sul token di sicurezza, incluso il suo PIN</translation>
 <translation id="1475502736924165259">Hai certificati su file che non rientrano in nessuna delle altre categorie</translation>
+<translation id="1476088332184200792">Copia sul tuo dispositivo</translation>
 <translation id="1476607407192946488">&amp;Impostazioni lingua</translation>
 <translation id="1478340334823509079">Dettagli: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">L'installazione non è attiva</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Stampa utilizzando la finestra di dialogo di sistema... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Chiedi prima di inviare (opzione consigliata)</translation>
 <translation id="2384436799579181135">Si è verificato un errore. Controlla la tua stampante e riprova.</translation>
-<translation id="2386926718981642523">Accedi all'assistente ogni volta che dici "Ok Google"</translation>
 <translation id="2387458720915042159">Tipo di connessione proxy</translation>
 <translation id="2391419135980381625">Carattere standard</translation>
 <translation id="2392369802118427583">Attiva</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">Bassa</translation>
 <translation id="2942560570858569904">In attesa…</translation>
 <translation id="2942581856830209953">Personalizza questa pagina</translation>
+<translation id="294308617863380348">Inclusi i cookie di terze parti</translation>
 <translation id="2944060181911631861">Invia dati diagnostici e sull'utilizzo. Contribuisci a migliorare la tua esperienza Android tramite l'invio automatico a Google di dati diagnostici e sull'utilizzo delle app e del dispositivo. Tali dati contribuiranno alla stabilità di app e sistema, nonché ad altri miglioramenti. Alcuni dati aggregati saranno utili anche alle app e ai partner di Google, ad esempio agli sviluppatori Android. Se hai attivato l'impostazione Attività web e app aggiuntiva, queste informazioni potrebbero essere salvate nel tuo Account Google. <ph name="BEGIN_LINK1" />Ulteriori informazioni<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Aggiungi connessione</translation>
 <translation id="2948300991547862301">Vai a <ph name="PAGE_TITLE" /></translation>
@@ -1354,7 +1355,6 @@
 <translation id="2961695502793809356">Fai clic per andare avanti, tieni premuto per vedere la cronologia</translation>
 <translation id="2963151496262057773">Il seguente plug-in non risponde: <ph name="PLUGIN_NAME" />. Interrompere l'esecuzione?</translation>
 <translation id="2966937470348689686">Gestisci le preferenze Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Ripeti</translation>
 <translation id="2973324205039581528">Disattiva l'audio del sito</translation>
 <translation id="2977480621796371840">Rimuovi dal gruppo</translation>
@@ -1612,7 +1612,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separatore</translation>
 <translation id="3387614642886316601">Usa il controllo ortografico avanzato</translation>
-<translation id="3393352139658145068">Attiva l'assistente quando qualcuno dice "Ok Google". Per consumare meno batteria, la hotword "Ok Google" è attiva solo quando il dispositivo è collegato a una fonte di alimentazione.</translation>
 <translation id="3396800784455899911">Se fai clic sul pulsante "Accetta e continua", accetti l'elaborazione descritta in precedenza per questi servizi Google.</translation>
 <translation id="3399432415385675819">Le notifiche verranno disattivate</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertz) - interlacciata</translation>
@@ -1773,6 +1772,7 @@
 <translation id="3613134908380545408">Mostra <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Apri in un'altra scheda</translation>
 <translation id="3615073365085224194">Tocca il sensore di impronte digitali con il dito</translation>
+<translation id="3615579745882581859">È in corso la scansione di <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;Cancella dati di navigazione...</translation>
 <translation id="3617891479562106823">Gli sfondi non sono disponibili. Riprova più tardi.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1887,7 +1887,6 @@
 <translation id="3759933321830434300">Blocco di parti delle pagine web</translation>
 <translation id="3760460896538743390">Ispeziona pagina in &amp;background</translation>
 <translation id="37613671848467444">Apri in finestra di navigazione in &amp;incognito</translation>
-<translation id="3764314093345384080">Informazioni build dettagliate</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Comunicazione con un dispositivo USB}other{Comunicazione con # dispositivi USB}}</translation>
 <translation id="3765246971671567135">Impossibile leggere le norme offline relative alla modalità demo.</translation>
 <translation id="3768037234834996183">Sincronizzazione delle preferenze...</translation>
@@ -2168,7 +2167,6 @@
 <translation id="4138267921960073861">Visualizza nomi e foto dell'utente sulla schermata di accesso</translation>
 <translation id="4142052906269098341">Sblocca <ph name="DEVICE_TYPE" /> con il telefono. <ph name="LINK_BEGIN" />Ulteriori informazioni<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Migliora la qualità dei video e fai durare di più la batteria. I video verranno riprodotti soltanto sullo schermo compatibile con Google Cast.</translation>
-<translation id="4145922204387553806">Permetti all'assistente di mostrarti informazioni basate sui contenuti dello schermo</translation>
 <translation id="4146026355784316281">Apri sempre con visualizzatore di sistema</translation>
 <translation id="4146785383423576110">Reimpostazione e pulizia</translation>
 <translation id="4147911968024186208">Riprova. Se ricevi ancora questo messaggio di errore, contatta il tuo rappresentante dell'assistenza.</translation>
@@ -2255,6 +2253,7 @@
 <translation id="4297322094678649474">Cambia le lingue</translation>
 <translation id="4301671483919369635">Questa pagina è autorizzata a modificare i file</translation>
 <translation id="4303079906735388947">Configura un nuovo PIN per il token di sicurezza</translation>
+<translation id="4305402730127028764">Copia su <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Le app devono essere installate con il tipo di contenuto "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> kB (<ph name="NUM_KILOBYTES_LIVE" /> kB effettivi)</translation>
 <translation id="4310139701823742692">Il formato del file è sbagliato. Controlla il file PPD e riprova.</translation>
@@ -2390,7 +2389,6 @@
 <translation id="4534661889221639075">Riprova.</translation>
 <translation id="4535127706710932914">Profilo predefinito</translation>
 <translation id="4535767533210902251">Il sensore di impronte digitali è il tasto in alto a destra della tastiera. Toccalo leggermente con un dito.</translation>
-<translation id="4538417792467843292">Elimina parola</translation>
 <translation id="4538684596480161368">Blocca sempre i plug-in senza sandbox su <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Installata per norma aziendale.</translation>
 <translation id="4542520061254486227">Lettura dei dati su <ph name="WEBSITE_1" /> e <ph name="WEBSITE_2" /></translation>
@@ -2934,6 +2932,7 @@
 <translation id="5367091008316207019">Lettura del file in corso...</translation>
 <translation id="5368720394188453070">Il telefono è stato bloccato. Sbloccalo per accedere.</translation>
 <translation id="5368779022775404937">Accedi a <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Attiva l'accelerazione del mouse</translation>
 <translation id="5370819323174483825">&amp;Ricarica</translation>
 <translation id="5372529912055771682">La modalità di iscrizione specificata non è supportata da questa versione del sistema operativo. Assicurati che sia installata l'ultima versione e riprova.</translation>
 <translation id="5372579129492968947">Sblocca estensione</translation>
@@ -3006,6 +3005,7 @@
 <translation id="5464632865477611176">Eseguilo questa volta</translation>
 <translation id="5464660706533281090">Questa impostazione non può essere cambiata da utenti che sono bambini o ragazzi.</translation>
 <translation id="5466374726908360271">I&amp;ncolla e cerca "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Ricerca condivisioni file in corso</translation>
 <translation id="5471768120198416576">Ciao! Sono la voce della sintesi locale.</translation>
 <translation id="5473333559083690127">Inserisci ancora il nuovo PIN</translation>
 <translation id="5481941284378890518">Aggiungi stampanti nelle vicinanze</translation>
@@ -3541,6 +3541,7 @@
 <translation id="6233154960150021497">Imposta come predefinito l'uso della voce invece della tastiera</translation>
 <translation id="6234474535228214774">Installazione in attesa</translation>
 <translation id="6237816943013845465">Consente di regolare la risoluzione dello schermo</translation>
+<translation id="6238767809035845642">Testo condiviso da Altro dispositivo</translation>
 <translation id="6238923052227198598">Tieni le note più recenti sulla schermata di blocco</translation>
 <translation id="6239558157302047471">Ricarica &amp;frame</translation>
 <translation id="6241530762627360640">Accedere a informazioni sui dispositivi Bluetooth accoppiati con il sistema e rilevare dispositivi Bluetooth nelle vicinanze.</translation>
@@ -3767,7 +3768,6 @@
 <translation id="6577284282025554716">Download annullato: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Cripta le password sincronizzate con la password e il nome utente del tuo Account Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Contenuti del desktop condivisi</translation>
-<translation id="6580151766480067746">Versione ARC</translation>
 <translation id="6582080224869403177">Ripristina il tuo dispositivo <ph name="DEVICE_TYPE" /> per eseguire l'upgrade della sicurezza.</translation>
 <translation id="6584878029876017575">Firma definitiva Microsoft</translation>
 <translation id="6586451623538375658">Inverti pulsante principale del mouse</translation>
@@ -4372,6 +4372,7 @@
 <translation id="7487141338393529395">Attiva il controllo ortografico avanzato</translation>
 <translation id="7487969577036436319">Nessun componente installato</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Apri tutti}=1{&amp;Apri preferito}other{&amp;Apri tutti (#)}}</translation>
+<translation id="7489761397368794366">Chiama dal tuo dispositivo</translation>
 <translation id="749028671485790643">Persona <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Indirizzo MAC</translation>
 <translation id="7493386493263658176">L'estensione <ph name="EXTENSION_NAME" /> potrebbe memorizzare tutto il testo digitato, inclusi dati personali quali password e numeri di carte di credito. Vuoi utilizzare l'estensione?</translation>
@@ -4391,6 +4392,7 @@
 <translation id="7508054832109420082">Concedi accesso alle stampanti</translation>
 <translation id="7510943789645525906">Ricevi un avviso se una tua password è stata oggetto di una violazione dei dati</translation>
 <translation id="7513029293694390567">Accedi automaticamente ai siti web utilizzando credenziali memorizzate. Se la funzione non è attiva, ti viene chiesta la conferma prima di ogni accesso ai siti web.</translation>
+<translation id="7514239104543605883">Copia sul tuo dispositivo</translation>
 <translation id="7514365320538308">Scarica</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Di' "Ok Google"</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">Trasmetti file</translation>
 <translation id="8274924778568117936">Non spegnere o chiudere il tuo dispositivo <ph name="DEVICE_TYPE" /> fino al termine dell'aggiornamento. Il dispositivo <ph name="DEVICE_TYPE" /> si riavvierà al termine dell'installazione.</translation>
 <translation id="8275038454117074363">Importa</translation>
+<translation id="8275080796245127762">Chiama dal tuo dispositivo</translation>
 <translation id="8276560076771292512">Svuota la cache e ricarica manualmente</translation>
 <translation id="8281886186245836920">Salta</translation>
 <translation id="8282947398454257691">Conoscere l'identificatore univoco del dispositivo</translation>
@@ -5266,6 +5269,7 @@
 <translation id="8758418656925882523">Attiva dettatura (parla per digitare)</translation>
 <translation id="8759408218731716181">Impossibile impostare l'accesso simultaneo</translation>
 <translation id="8759753423332885148">Ulteriori informazioni.</translation>
+<translation id="8761945298804995673">Questo utente esiste già</translation>
 <translation id="8762886931014513155">Il dispositivo <ph name="DEVICE_TYPE" /> richiede un aggiornamento</translation>
 <translation id="8763927697961133303">Dispositivo USB</translation>
 <translation id="8767621466733104912">Aggiorna automaticamente Chrome per tutti gli utenti</translation>
@@ -5354,6 +5358,7 @@
 <translation id="8879284080359814990">Mostra come &amp;scheda</translation>
 <translation id="8879921471468674457">Memorizza dati di accesso</translation>
 <translation id="8881020143150461183">Riprova. Per assistenza tecnica, contatta <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Attiva accelerazione del touchpad</translation>
 <translation id="8884570509232205463">Il tuo dispositivo ora si bloccherà alle ore <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock non disponibile</translation>
 <translation id="8888253246822647887">L'app verrà aperta al termine dell'upgrade. Gli upgrade possono richiedere qualche minuto.</translation>
diff --git a/chrome/app/resources/generated_resources_iw.xtb b/chrome/app/resources/generated_resources_iw.xtb
index 65698ae..cc68776e 100644
--- a/chrome/app/resources/generated_resources_iw.xtb
+++ b/chrome/app/resources/generated_resources_iw.xtb
@@ -948,7 +948,6 @@
 <translation id="2379281330731083556">הדפס באמצעות תיבת דו-שיח של המערכת... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">שאל לפני שליחה (מומלץ)</translation>
 <translation id="2384436799579181135">אירעה שגיאה. יש לבדוק את המדפסת ולנסות שוב.</translation>
-<translation id="2386926718981642523">‏גישה אל ה-Assistant בכל פעם שנאמר הביטוי "Ok Google"</translation>
 <translation id="2387458720915042159">‏סוג חיבור לשרת proxy</translation>
 <translation id="2391419135980381625">גופן רגיל</translation>
 <translation id="2392369802118427583">הפעל</translation>
@@ -1352,7 +1351,6 @@
 <translation id="2961695502793809356">לחץ כדי לעבור קדימה, לחץ והחזק כדי לראות את ההיסטוריה</translation>
 <translation id="2963151496262057773">הפלאגין הבא אינו מגיב: <ph name="PLUGIN_NAME" /> האם ברצונך לכבות אותו?</translation>
 <translation id="2966937470348689686">‏ניהול העדפות ל-Android</translation>
-<translation id="2972557485845626008">קושחה</translation>
 <translation id="2972581237482394796">&amp;בצע שנית</translation>
 <translation id="2973324205039581528">השתקת האתר</translation>
 <translation id="2977480621796371840">הסרה מהקבוצה</translation>
@@ -1610,7 +1608,6 @@
 <translation id="3385092118218578224">%<ph name="DISPLAY_ZOOM" /></translation>
 <translation id="338583716107319301">מפריד</translation>
 <translation id="3387614642886316601">שימוש בבדיקת איות משופרת</translation>
-<translation id="3393352139658145068">‏הפעלה של ה-Assistant כשמישהו אומר "Ok Google". כדי לחסוך בסוללה, התכונה "Ok Google" פועלת רק כשהמכשיר מחובר למקור חשמל.</translation>
 <translation id="3396800784455899911">‏לחיצה על הלחצן "קבלה והמשך" מבטאת את הסכמתך לעיבוד שתואר קודם לכן לגבי השירותים האלה של Google.</translation>
 <translation id="3399432415385675819">הודעות יושבתו</translation>
 <translation id="3400390787768057815">‏<ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> הרץ) – סריקה שזורה (Interlaced)</translation>
@@ -1885,7 +1882,6 @@
 <translation id="3759933321830434300">חסימת חלקים של דפי אינטרנט</translation>
 <translation id="3760460896538743390">בדיקת דף ה&amp;רקע</translation>
 <translation id="37613671848467444">פתח בחלון &amp;גלישה בסתר</translation>
-<translation id="3764314093345384080">מידע מפורט על הגרסה</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{‏תקשורת עם מכשיר USB אחד}two{‏תקשורת עם # מכשירי USB}many{‏תקשורת עם # מכשירי USB}other{‏תקשורת עם # מכשירי USB}}</translation>
 <translation id="3765246971671567135">לא ניתן לקרוא מדיניות של מצב הדגמה לא מקוון.</translation>
 <translation id="3768037234834996183">מסנכרן את ההעדפות שלך...</translation>
@@ -2166,7 +2162,6 @@
 <translation id="4138267921960073861">הצג שמות משתמשים ותמונות במסך הכניסה</translation>
 <translation id="4142052906269098341">אפשר לבטל את הנעילה של <ph name="DEVICE_TYPE" /> בעזרת הטלפון. <ph name="LINK_BEGIN" />מידע נוסף<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">שיפור איכות הווידאו וחיסכון בחיי הסוללה. תוכן וידאו יופעל רק במסך התומך בהעברה.</translation>
-<translation id="4145922204387553806">‏Assistant יכול להראות לך מידע שקשור למה שמוצג על המסך</translation>
 <translation id="4146026355784316281">פתח תמיד באמצעות מציג המערכת</translation>
 <translation id="4146785383423576110">איפוס וניקוי</translation>
 <translation id="4147911968024186208">אפשר לנסות שוב. אם השגיאה הזאת ממשיכה להופיע, ניתן לפנות לנציג התמיכה.</translation>
@@ -2388,7 +2383,6 @@
 <translation id="4534661889221639075">יש לנסות שוב.</translation>
 <translation id="4535127706710932914">פרופיל ברירת מחדל</translation>
 <translation id="4535767533210902251">חיישן טביעת האצבע מותקן במקש הימני העליון במקלדת. יש לגעת בו בעדינות באחת האצבעות.</translation>
-<translation id="4538417792467843292">מחק מילה</translation>
 <translation id="4538684596480161368">חסום תמיד יישומי פלאגין ללא ארגז חול ב-<ph name="HOST" /></translation>
 <translation id="4538792345715658285">מותקן לפי מדיניות של ארגון.</translation>
 <translation id="4542520061254486227">קריאת הנתונים שלך באתרים <ph name="WEBSITE_1" /> ו-<ph name="WEBSITE_2" /></translation>
@@ -3765,7 +3759,6 @@
 <translation id="6577284282025554716">ההורדה בוטלה: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">‏הצפנת סיסמאות מסונכרנות עם שם המשתמש והסיסמה שלך ב-Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - תוכן שולחן העבודה משותף</translation>
-<translation id="6580151766480067746">‏גירסת ARC</translation>
 <translation id="6582080224869403177">יש לאתחל את <ph name="DEVICE_TYPE" /> כדי לשדרג את האבטחה.</translation>
 <translation id="6584878029876017575">‏חתימה לכל החיים של Microsoft</translation>
 <translation id="6586451623538375658">החלף את לחצן העכבר העיקרי</translation>
diff --git a/chrome/app/resources/generated_resources_ja.xtb b/chrome/app/resources/generated_resources_ja.xtb
index e5f3551..90832e85 100644
--- a/chrome/app/resources/generated_resources_ja.xtb
+++ b/chrome/app/resources/generated_resources_ja.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">お使いのどのデバイスでも同じ拡張機能を使用するには、<ph name="SIGN_IN_LINK" />します。</translation>
 <translation id="1470967055429794975">セキュリティ キーに保存されているすべてのデータ(PIN を含む)が消去されます</translation>
 <translation id="1475502736924165259">他のどのカテゴリにも適合しない証明書がファイルに格納されています</translation>
+<translation id="1476088332184200792">デバイスにコピー</translation>
 <translation id="1476607407192946488">言語設定(&amp;L)</translation>
 <translation id="1478340334823509079">詳細: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">インストールが有効になっていません</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">システム ダイアログを使用して印刷... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">送信する前に確認する(推奨)</translation>
 <translation id="2384436799579181135">エラーが発生しました。プリンタを確認してもう一度お試しください。</translation>
-<translation id="2386926718981642523">「OK Google」と話すといつでもアシスタントにアクセスできます</translation>
 <translation id="2387458720915042159">プロキシ接続タイプ</translation>
 <translation id="2391419135980381625">標準フォント</translation>
 <translation id="2392369802118427583">有効にする</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">低</translation>
 <translation id="2942560570858569904">待機しています…</translation>
 <translation id="2942581856830209953">このページをカスタマイズ</translation>
+<translation id="294308617863380348">サードパーティの Cookie を含む</translation>
 <translation id="2944060181911631861">使用状況データや診断データを送信します。診断データやデバイスとアプリの使用状況データを Google に自動送信して、Android の機能向上にご協力ください。この情報は、システムとアプリの安定性の向上やその他の機能の改善に役立てられます。また、Google のアプリやパートナー(Android デベロッパーなど)も、集計データとしてこの情報を活用します。[その他のウェブとアプリのアクティビティ] の設定がオンになっている場合、このデータは Google アカウントに保存されます。<ph name="BEGIN_LINK1" />詳細<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">接続を追加</translation>
 <translation id="2948300991547862301"><ph name="PAGE_TITLE" /> へ移動</translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">クリックすると次に進みます。押したまま待つと履歴が表示されます。</translation>
 <translation id="2963151496262057773">プラグイン(<ph name="PLUGIN_NAME" />)は応答していません。強制終了しますか?</translation>
 <translation id="2966937470348689686">Android 設定を管理</translation>
-<translation id="2972557485845626008">ファームウェア</translation>
 <translation id="2972581237482394796">やり直し(&amp;R)</translation>
 <translation id="2973324205039581528">サイトをミュート</translation>
 <translation id="2977480621796371840">グループから削除</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">セパレータ</translation>
 <translation id="3387614642886316601">拡張スペルチェックを使用する</translation>
-<translation id="3393352139658145068">「OK Google」と話すとアシスタントを起動できます。バッテリー消費を抑えるため、お使いのデバイスがコンセントに接続されている場合にのみ「OK Google」に反応します。</translation>
 <translation id="3396800784455899911">[同意して続行] をクリックすると、これらの Google サービスに関する上記の処理内容に同意したことになります。</translation>
 <translation id="3399432415385675819">通知が無効になります</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" />x<ph name="HEIGHT" />(<ph name="REFRESH_RATE" /> Hz)インターレース</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">「<ph name="FOLDER_NAME" />」を表示</translation>
 <translation id="3613422051106148727">新しいタブで開く(&amp;O)</translation>
 <translation id="3615073365085224194">指紋認証センサーに指を置いてください</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> をスキャンしています。</translation>
 <translation id="3616741288025931835">閲覧履歴を消去(&amp;C)...</translation>
 <translation id="3617891479562106823">背景を利用できません。しばらくしてからもう一度お試しください。</translation>
 <translation id="3619115746895587757">カプチーノ</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">一部のウェブページをブロックする</translation>
 <translation id="3760460896538743390">バックグラウンド ページの検証(&amp;B)</translation>
 <translation id="37613671848467444">シークレット ウィンドウで開く(&amp;I)</translation>
-<translation id="3764314093345384080">ビルド情報の詳細</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{1 台の USB デバイスと通信します}other{# 台の USB デバイスと通信します}}</translation>
 <translation id="3765246971671567135">オフライン デモモード ポリシーを読み取ることができませんでした。</translation>
 <translation id="3768037234834996183">設定を同期しています...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">ログイン ページにユーザー名と写真を表示する</translation>
 <translation id="4142052906269098341">スマートフォンを使って <ph name="DEVICE_TYPE" /> のロックを解除します。<ph name="LINK_BEGIN" />詳細<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">動画の品質を向上させ、バッテリー消費を抑えます。動画はキャスト対応のスクリーンでのみ再生されます。</translation>
-<translation id="4145922204387553806">アシスタントが画面上のアイテムに関連した情報を表示できるようにします</translation>
 <translation id="4146026355784316281">常にシステム ビューアで開く</translation>
 <translation id="4146785383423576110">リセットとクリーンアップ</translation>
 <translation id="4147911968024186208">もう一度お試しください。このエラーが再び表示される場合は、サポート担当者にお問い合わせください。</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">言語を変更</translation>
 <translation id="4301671483919369635">このページはファイルの編集が許可されています</translation>
 <translation id="4303079906735388947">セキュリティ キーの新しい PIN を設定します</translation>
+<translation id="4305402730127028764">「<ph name="DEVICE_NAME" />」にコピー</translation>
 <translation id="4306119971288449206">アプリはコンテンツタイプ「<ph name="CONTENT_TYPE" />」で配信される必要があります</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K(<ph name="NUM_KILOBYTES_LIVE" /> K ライブ)</translation>
 <translation id="4310139701823742692">ファイルの形式が正しくありません。PPD ファイルを確認してもう一度お試しください。</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">もう一度お試しください。</translation>
 <translation id="4535127706710932914">デフォルトのプロフィール</translation>
 <translation id="4535767533210902251">指紋認証センサーはキーボードの右上のキーに搭載されています。いずれかの指で軽く触れてください。</translation>
-<translation id="4538417792467843292">1 語削除する</translation>
 <translation id="4538684596480161368"><ph name="HOST" /> でサンドボックスの無効化プラグインを常にブロックする</translation>
 <translation id="4538792345715658285">会社のポリシーによってインストール済み。</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" /> と <ph name="WEBSITE_2" /> でのユーザーデータの読み取り</translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">ファイルを読み取っています...</translation>
 <translation id="5368720394188453070">スマートフォンがロックされています。ログインするにはロックを解除してしてください。</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> にログインしてください</translation>
+<translation id="5369491905435686894">マウス アクセラレーションを有効にする</translation>
 <translation id="5370819323174483825">再読み込み(&amp;R)</translation>
 <translation id="5372529912055771682">指定の登録モードは、このバージョンのオペレーティング システムではサポートされていません。最新バージョンであることを確認してから、もう一度お試しください。</translation>
 <translation id="5372579129492968947">拡張機能の固定を解除します</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">今回は実行する</translation>
 <translation id="5464660706533281090">子ユーザーはこの設定を変更できません。</translation>
 <translation id="5466374726908360271">「<ph name="SEARCH_TERMS" />」を貼り付けて検索</translation>
+<translation id="5468173180030470402">ファイル共有を探しています</translation>
 <translation id="5471768120198416576">こんにちは。テキスト読み上げの音声です。</translation>
 <translation id="5473333559083690127">新しい PIN を再入力</translation>
 <translation id="5481941284378890518">近くのプリンタを追加</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">キーボードではなく音声をデフォルトで使用します</translation>
 <translation id="6234474535228214774">インストールを準備しています</translation>
 <translation id="6237816943013845465">画面の解像度を調整できます</translation>
+<translation id="6238767809035845642">他のデバイスから共有されたテキスト</translation>
 <translation id="6238923052227198598">ロック画面に最新のメモを表示する</translation>
 <translation id="6239558157302047471">フレームを再読み込み(&amp;F)</translation>
 <translation id="6241530762627360640">システムでペア設定されている Bluetooth デバイスの情報へのアクセスと、近くにある Bluetooth デバイスの検出。</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716"><ph name="FILE_NAME" /> のダウンロードがキャンセルされました</translation>
 <translation id="6578664922716508575">Google のユーザー名とパスワードを使用して同期パスワードを暗号化する</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - パソコンのコンテンツが共有されています</translation>
-<translation id="6580151766480067746">ARC バージョン</translation>
 <translation id="6582080224869403177">セキュリティをアップグレードするには <ph name="DEVICE_TYPE" /> をリセットしてください。</translation>
 <translation id="6584878029876017575">Microsoft ライフタイム署名</translation>
 <translation id="6586451623538375658">マウスのメイン ボタンを右にする</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">拡張スペルチェックの有効化</translation>
 <translation id="7487969577036436319">コンポーネントはインストールされていません</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{すべてを開く(&amp;O)}=1{ブックマークを開く(&amp;O)}other{すべて(# 件)を開く(&amp;O)}}</translation>
+<translation id="7489761397368794366">デバイスから発信</translation>
 <translation id="749028671485790643">ユーザー <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC アドレス</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> 拡張機能では、パスワードやクレジット カード番号などの個人データを含むすべての入力テキストが収集される可能性があります。この拡張機能を使用しますか?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">プリンタへのアクセスを許可する</translation>
 <translation id="7510943789645525906">使用しているパスワードがデータ侵害を受けた場合に警告する</translation>
 <translation id="7513029293694390567">保存されている認証情報を使用してウェブサイトに自動的にログインします。この機能が無効になっている場合は、ウェブサイトにログインするときに毎回確認を求められます。</translation>
+<translation id="7514239104543605883">デバイスにコピー</translation>
 <translation id="7514365320538308">ダウンロード</translation>
 <translation id="7521387064766892559">Javascript</translation>
 <translation id="7522255036471229694">「OK Google」と言ってください</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">ファイルをキャスト</translation>
 <translation id="8274924778568117936">アップデートが完了するまでは、<ph name="DEVICE_TYPE" /> の電源を切ったり蓋を閉じたりしないでください。インストールが完了すると、<ph name="DEVICE_TYPE" /> は再起動します。</translation>
 <translation id="8275038454117074363">インポート</translation>
+<translation id="8275080796245127762">デバイスから発信</translation>
 <translation id="8276560076771292512">キャッシュの消去とハード再読み込み</translation>
 <translation id="8281886186245836920">スキップ</translation>
 <translation id="8282947398454257691">デバイス固有の ID の認識</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">音声入力を有効にする</translation>
 <translation id="8759408218731716181">マルチ ログインを設定できません</translation>
 <translation id="8759753423332885148">詳細</translation>
+<translation id="8761945298804995673">このユーザーはすでに存在しています</translation>
 <translation id="8762886931014513155">ご利用の <ph name="DEVICE_TYPE" /> は更新が必要です</translation>
 <translation id="8763927697961133303">USB デバイス</translation>
 <translation id="8767621466733104912">すべてのユーザーに対して Chrome を自動的に更新</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">タブで表示(&amp;S)</translation>
 <translation id="8879921471468674457">ログイン情報を保存する</translation>
 <translation id="8881020143150461183">もう一度お試しください。技術的なサポートについては、<ph name="CARRIER_NAME" /> にお問い合わせください。</translation>
+<translation id="8883273463630735858">タッチパッド アクセラレーションを有効にする</translation>
 <translation id="8884570509232205463">デバイスは <ph name="UNLOCK_TIME" /> にロックされるようになりました。</translation>
 <translation id="8885197664446363138">Smart Lock は使用できません</translation>
 <translation id="8888253246822647887">アップグレードが完了するとアプリが起動します。アップグレードには数分かかることがあります。</translation>
diff --git a/chrome/app/resources/generated_resources_kn.xtb b/chrome/app/resources/generated_resources_kn.xtb
index 8c05518..c6e31a2 100644
--- a/chrome/app/resources/generated_resources_kn.xtb
+++ b/chrome/app/resources/generated_resources_kn.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">ನಿಮ್ಮ ಎಲ್ಲಾ ಕಂಪ್ಯೂಟರ್‌ಗಳಲ್ಲಿ ನಿಮ್ಮ ವಿಸ್ತರಣೆಗಳನ್ನು ಪಡೆಯಲು, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">ಸುರಕ್ಷತಾ ಕೀಯ ಪಿನ್ ಸೇರಿದಂತೆ, ಅದರಲ್ಲಿರುವ ಎಲ್ಲಾ ಡೇಟಾವನ್ನು ಇದು ಅಳಿಸಿಹಾಕುತ್ತದೆ</translation>
 <translation id="1475502736924165259">ಇತರ ಯಾವುದೇ ವರ್ಗಗಳಿಗೆ ಹೊಂದದಿರುವಂತಹ ಫೈಲ್‌ನಲ್ಲಿ ಪ್ರಮಾಣಪತ್ರಗಳನ್ನು ನೀವು ಹೊಂದಿರುವಿರಿ</translation>
+<translation id="1476088332184200792">ನಿಮ್ಮ ಸಾಧನಕ್ಕೆ ನಕಲಿಸಿ</translation>
 <translation id="1476607407192946488">&amp;ಭಾಷೆ ಸೆಟ್ಟಿಂಗ್‌ಗಳು</translation>
 <translation id="1478340334823509079">ವಿವರಗಳು: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">ಇನ್‌ಸ್ಟಾಲೇಶನ್ ಸಕ್ರಿಯಗೊಳಿಸಿಲ್ಲ</translation>
@@ -952,7 +953,6 @@
 <translation id="2379281330731083556">ಸಿಸ್ಟಂ ಸಂವಾದವನ್ನು ಬಳಸಿ ಮುದ್ರಿಸಿ... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">ಕಳುಹಿಸುವ ಮೊದಲು ಕೇಳಿ (ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ)</translation>
 <translation id="2384436799579181135">ದೋಷ ಸಂಭವಿಸಿದೆ. ನಿಮ್ಮ ಪ್ರಿಂಟರ್ ಪರಿಶೀಲಿಸಿ ಮತ್ತು ಪುನಃ ಪ್ರಯತ್ನಿಸಿ.</translation>
-<translation id="2386926718981642523">ಯಾವಾಗ ಬೇಕಾದರೂ "Ok Google" ಎಂದು ಹೇಳಿ ನಿಮ್ಮ ಅಸಿಸ್ಟೆಂಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ</translation>
 <translation id="2387458720915042159">ಪ್ರಾಕ್ಸಿ ಪ್ರಕಾರ ಸಂಪರ್ಕ</translation>
 <translation id="2391419135980381625">ರೂಢಿಯಲ್ಲಿರುವ ಫಾಂಟ್</translation>
 <translation id="2392369802118427583">ಸಕ್ರಿಯಗೊಳಿಸಿ</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">ಕಡಿಮೆ</translation>
 <translation id="2942560570858569904">ನಿರೀಕ್ಷಿಸಲಾಗುತ್ತಿದೆ...</translation>
 <translation id="2942581856830209953">ಈ ಪುಟವನ್ನು ಕಸ್ಟಮೈಸ್ ಮಾಡಿ</translation>
+<translation id="294308617863380348">ಮೂರನೇ ವ್ಯಕ್ತಿ ಕುಕೀಗಳನ್ನು ಒಳಗೊಂಡಿವೆ</translation>
 <translation id="2944060181911631861">ಬಳಕೆ ಮತ್ತು ಡಯಾಗ್ನಾಸ್ಟಿಕ್ ಡೇಟಾವನ್ನು ಕಳುಹಿಸಿ. ಡಯಾಗ್ನಾಸ್ಟಿಕ್, ಸಾಧನ, ಹಾಗೂ ಆ್ಯಪ್ ಬಳಕೆಯ ಡೇಟಾವನ್ನು Google ಗೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕಳುಹಿಸುವ ಮೂಲಕ ನಿಮ್ಮ Android ಅನುಭವವನ್ನು ಉತ್ತಮಗೊಳಿಸುವುದಕ್ಕೆ ಸಹಾಯ ಮಾಡಿ. ಇದು ಸಿಸ್ಟಮ್ ಮತ್ತು ಆ್ಯಪ್ ಸ್ಥಿರತೆಗೆ, ಹಾಗೂ ಇತರ ಸುಧಾರಣೆಗಳಿಗೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಕೆಲವು ಒಟ್ಟುಗೂಡಿಸಿದ ಡೇಟಾವು, Google ಆ್ಯಪ್‌ಗಳಿಗೆ ಮತ್ತು ಪಾಲುದಾರರಿಗೂ ಸಹ ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, Android ಡೆವಲಪರ್‌ಗಳು. ನಿಮ್ಮ ಹೆಚ್ಚುವರಿ ವೆಬ್‌ ಮತ್ತು ಆ್ಯಪ್ ಚಟುವಟಿಕೆ ಸೆಟ್ಟಿಂಗ್ ಆನ್‌ ಆಗಿದ್ದಲ್ಲಿ, ಈ ಡೇಟಾವು ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ಉಳಿಸಲ್ಪಡಬಹುದು. <ph name="BEGIN_LINK1" />ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">ಸಂಪರ್ಕ ಸೇರಿಸಿ</translation>
 <translation id="2948300991547862301"><ph name="PAGE_TITLE" /> ಗೆ ಹೋಗಿ</translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">ಮುಂದಕ್ಕೆ ಹೋಗಲು ಕ್ಲಿಕ್ ಮಾಡಿ, ಇತಿಹಾಸ ನೋಡಲು ಒತ್ತಿಹಿಡಿಯಿರಿ</translation>
 <translation id="2963151496262057773">ಕೆಳಗಿನ ಪ್ಲಗ್-ಇನ್ ಪ್ರತಿಕ್ರಿಯಿಸದಂತದ್ದು: <ph name="PLUGIN_NAME" />ನೀವು ಇದನ್ನು ನಿಲ್ಲಿಸಲು ಬಯಸುವಿರಾ?</translation>
 <translation id="2966937470348689686">Android ಪ್ರಾಶಸ್ತ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸಿ</translation>
-<translation id="2972557485845626008">ಫರ್ಮ್‌ವೇರ್</translation>
 <translation id="2972581237482394796">&amp;ಮತ್ತೆಮಾಡು</translation>
 <translation id="2973324205039581528">ಸೈಟ್‌ ಅನ್ನು ಮ್ಯೂಟ್‌ ಮಾಡಿ</translation>
 <translation id="2977480621796371840">ಗುಂಪಿನಿಂದ ತೆಗೆದುಹಾಕಿ</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">ವಿಭಾಜಕ</translation>
 <translation id="3387614642886316601">ವರ್ಧಿತ ಕಾಗುಣಿತ ಪರೀಕ್ಷೆಯನ್ನು ಬಳಸಿ</translation>
-<translation id="3393352139658145068">ಯಾರಾದರೂ "Ok Google" ಎಂದು ಹೇಳಿದಾಗ ಅಸಿಸ್ಟೆಂಟ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ. ಬ್ಯಾಟರಿ ಬಾಳಿಕೆಯನ್ನು ಉಳಿಸುವುದಕ್ಕಾಗಿ, ನಿಮ್ಮ ಸಾಧನವು ಪವರ್ ಮೂಲಕ್ಕೆ ಸಂಪರ್ಕಿತಗೊಂಡಾಗ ಮಾತ್ರ "Ok Google" ಆನ್ ಆಗಿರುತ್ತದೆ.</translation>
 <translation id="3396800784455899911">ಈ Google ಸೇವೆಗಳಿಗಾಗಿ "ಸ್ವೀಕರಿಸಿ ಮತ್ತು ಮುಂದುವರೆಸು" ಬಟನ್‌ ಅನ್ನು ಕ್ಲಿಕ್‌ ಮಾಡುವುದರ ಮೂಲಕ, ನೀವು ಮೇಲೆ ವಿವರಿಸಿರುವ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಿಕೆಗೆ ಒಪ್ಪುತ್ತೀರಿ.</translation>
 <translation id="3399432415385675819">ಅಧಿಸೂಚನೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> ಹರ್ಟ್ಜ್) - ಇಂಟರ್‌ಲೇಸ್ ಆಗಿದೆ</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> ತೋರಿಸು</translation>
 <translation id="3613422051106148727">ಹೊಸ ಟ್ಯಾಬ್‌ನಲ್ಲಿ &amp;ತೆರೆಯಿರಿ</translation>
 <translation id="3615073365085224194">ನಿಮ್ಮ ಬೆರಳಿನ ಮೂಲಕ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಸೆನ್ಸರ್ ಅನ್ನು ಸ್ಪರ್ಶಿಸಿ</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> ಅನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಲಾಗುತ್ತಿದೆ.</translation>
 <translation id="3616741288025931835">ಬ್ರೌಸಿಂಗ್ ಡೇಟಾವನ್ನು &amp;ತೆರವುಗೊಳಿಸಿ...</translation>
 <translation id="3617891479562106823">ಹಿನ್ನೆಲೆಗಳ ಕಸ್ಟಮೈಸೇಶನ್‌ ಲಭ್ಯವಿಲ್ಲ. ನಂತರ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ.</translation>
 <translation id="3619115746895587757">ಕ್ಯಾಪಚಿನೊ</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">ವೆಬ್ ಪುಟಗಳ ಭಾಗಗಳನ್ನು ನಿರ್ಬಂಧಿಸಿ</translation>
 <translation id="3760460896538743390">&amp;ಹಿನ್ನಲೆ ಪುಟ ಪರಿಶೀಲಿಸಿ</translation>
 <translation id="37613671848467444">&amp;ಅಜ್ಞಾತ ವಿಂಡೋದಲ್ಲಿ ತೆರೆಯಿರಿ</translation>
-<translation id="3764314093345384080">ವಿವರವಾದ ಬಿಲ್ಡ್ ಮಾಹಿತಿ</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{USB ಸಾಧನದೊಂದಿಗೆ ಸಂವಹನ ಮಾಡಿ}one{# USB ಸಾಧನಗಳೊಂದಿಗೆ ಸಂವಹನ ಮಾಡಿ}other{# USB ಸಾಧನಗಳೊಂದಿಗೆ ಸಂವಹನ ಮಾಡಿ}}</translation>
 <translation id="3765246971671567135">ಆಫ್‌ಲೈನ್ ಡೆಮೊ ಮೋಡ್ ಕಾರ್ಯನೀತಿಯನ್ನು ಓದಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ.</translation>
 <translation id="3768037234834996183">ನಿಮ್ಮ ಪ್ರಾಶಸ್ತ್ಯಗಳನ್ನು ಸಿಂಕ್ ಮಾಡಲಾಗುತ್ತಿದೆ...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">ಬಳಕೆದಾರಹೆಸರುಗಳು ಮತ್ತು ಫೋಟೋಗಳನ್ನು ಸೈನ್-ಇನ್ ಪರದೆಯಲ್ಲಿ ತೋರಿಸು</translation>
 <translation id="4142052906269098341">ನಿಮ್ಮ ಫೋನ್‌ನ ಮೂಲಕ, ನಿಮ್ಮ <ph name="DEVICE_TYPE" /> ಅನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಿ. <ph name="LINK_BEGIN" />ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">ಉತ್ತಮ ಗುಣಮಟ್ಟದ ವೀಡಿಯೊ ಪಡೆಯಿರಿ ಮತ್ತು ಬ್ಯಾಟರಿ ಅವಧಿಯನ್ನು ಉಳಿಸಿ. ವೀಡಿಯೊ, ನಿಮ್ಮ Cast-ಸಕ್ರಿಯಗೊಂಡ ಸ್ಕ್ರೀನ್‌ನಲ್ಲಿ ಮಾತ್ರ ಪ್ಲೇ ಆಗುತ್ತದೆ.</translation>
-<translation id="4145922204387553806">ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ ಮೇಲೆ ಏನಿದೆ ಎಂಬುದಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಮಾಹಿತಿಯನ್ನು ನಿಮಗೆ ತೋರಿಸಲು ಅಸಿಸ್ಟೆಂಟ್‌ಗೆ ಅನುಮತಿಸಿ</translation>
 <translation id="4146026355784316281">ಯಾವಾಗಲೂ ಸಿಸ್ಟಂ ವೀಕ್ಷಕದ ಜೊತೆಗೆ ತೆರೆಯಿರಿ</translation>
 <translation id="4146785383423576110">ಮರುಹೊಂದಿಸಿ ಮತ್ತು ಸ್ವಚ್ಛಗೊಳಿಸಿ</translation>
 <translation id="4147911968024186208">ಪುನಃ ಪ್ರಯತ್ನಿಸಿ. ಈ ದೋಷವು ಮತ್ತೊಮ್ಮೆ ಕಂಡುಬಂದರೆ, ನಿಮ್ಮ ಬೆಂಬಲ ಪ್ರತಿನಿಧಿಯನ್ನು ಸಂಪರ್ಕಿಸಿ.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">ಭಾಷೆಗಳನ್ನು ಬದಲಾಯಿಸಿ</translation>
 <translation id="4301671483919369635">ಫೈಲ್‌ಗಳನ್ನು ಎಡಿಟ್ ಮಾಡಲು ಈ ಪುಟಕ್ಕೆ ಅನುಮತಿಸಲಾಗಿದೆ</translation>
 <translation id="4303079906735388947">ನಿಮ್ಮ ಭದ್ರತೆ ಕೀಗಾಗಿ ಹೊಸ ಪಿನ್ ಹೊಂದಿಸಿ</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" /> ಗೆ ನಕಲಿಸಿ</translation>
 <translation id="4306119971288449206">"<ph name="CONTENT_TYPE" />" ಪ್ರಕಾರದ ವಿಷಯದೊಂದಿಗೆ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಒದಗಿಸಬೇಕು</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K ಲೈವ್)</translation>
 <translation id="4310139701823742692">ಫೈಲ್ ತಪ್ಪು ಫಾರ್ಮ್ಯಾಟ್‌ನಲ್ಲಿದೆ. PPD ಫೈಲ್ ಅನ್ನು ಪರಿಶೀಲಿಸಿ, ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ.</translation>
 <translation id="4535127706710932914">ಡಿಫಾಲ್ಟ್ ಪ್ರೊಫೈಲ್</translation>
 <translation id="4535767533210902251">ನಿಮ್ಮ ಕೀಬೋರ್ಡ್‌ನಲ್ಲಿ ಮೇಲೆ ಬಲತುದಿಯಲ್ಲಿರುವ ಕೀ, ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಸೆನ್ಸರ್ ಆಗಿದೆ. ಯಾವುದೇ ಬೆರಳಿನ ಮೂಲಕ ಅದನ್ನು ಮೆಲ್ಲಗೆ ಸ್ಪರ್ಶಿಸಿ.</translation>
-<translation id="4538417792467843292">ಪದವನ್ನು ಅಳಿಸಿ</translation>
 <translation id="4538684596480161368"><ph name="HOST" /> ನಲ್ಲಿ ಸ್ಯಾಂಡ್‌ಬಾಕ್ಸ್ ರದ್ದುಗೊಳಿಸಲಾಗಿರುವ ಪ್ಲಗ್-ಇನ್‌ಗಳನ್ನು ಯಾವಾಗಲೂ ನಿರ್ಬಂಧಿಸು</translation>
 <translation id="4538792345715658285">ಎಂಟರ್‌ಪ್ರೈಸ್ ನೀತಿಯಿಂದ ಸ್ಥಾಪಿಸಲಾಗಿದೆ.</translation>
 <translation id="4542520061254486227">ನಿಮ್ಮ ಡೇಟಾವನ್ನು <ph name="WEBSITE_1" /> ಮತ್ತು <ph name="WEBSITE_2" /> ನಲ್ಲಿ ಓದಿ</translation>
@@ -2936,6 +2934,7 @@
 <translation id="5367091008316207019">ಓದುತ್ತಿರುವ ಫೈಲ್..</translation>
 <translation id="5368720394188453070">ನಿಮ್ಮ ಫೋನ್ ಲಾಕ್ ಮಾಡಲಾಗಿದೆ. ಪ್ರವೇಶಿಸಲು ಅದನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಿ.</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> ಗೆ ಸೈನ್‌ಇನ್ ಮಾಡಿ</translation>
+<translation id="5369491905435686894">ಮೌಸ್ ವೇಗವರ್ಧನೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ</translation>
 <translation id="5370819323174483825">&amp;ಮರುಲೋಡ್</translation>
 <translation id="5372529912055771682">ಪೂರೈಸಿದ ದಾಖಲಾತಿ ಮೋಡ್ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಂನ ಈ ಆವೃತ್ತಿಯ ಮೂಲಕ ಬೆಂಬಲಿತವಾಗಿಲ್ಲ. ನೀವು ಹೊಸ ಆವೃತ್ತಿಯನ್ನು ಚಾಲನೆಗೊಳಿಸುತ್ತಿರುವಿರಿ ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ ಮತ್ತು ಪುನಃ ಪ್ರಯತ್ನಿಸಿ.</translation>
 <translation id="5372579129492968947">ವಿಸ್ತರಣೆಯನ್ನು ಅನ್‌ಪಿನ್ ಮಾಡಿ</translation>
@@ -3008,6 +3007,7 @@
 <translation id="5464632865477611176">ಈ ಸಮಯದಲ್ಲಿ ಚಾಲನೆ ನೀಡಿ</translation>
 <translation id="5464660706533281090">ಬಳಕೆದಾರರು ಮಕ್ಕಳಾಗಿದ್ದರೆ, ಅವರು ಈ ಸೆಟ್ಟಿಂಗ್ ಅನ್ನು ಬದಲಾಯಿಸುವಂತಿಲ್ಲ.</translation>
 <translation id="5466374726908360271">ಅಂ&amp;ಟಿಸಿ ಮತ್ತು “<ph name="SEARCH_TERMS" />” ಗಾಗಿ ಹುಡುಕಿ</translation>
+<translation id="5468173180030470402">ಫೈಲ್‌ ಹಂಚಿಕೆಗಳನ್ನು ಹುಡುಕಲಾಗುತ್ತಿದೆ</translation>
 <translation id="5471768120198416576">ನಮಸ್ಕಾರ! ನಾನು ನಿಮ್ಮ ಪಠ್ಯದಿಂದ ಧ್ವನಿಯ ಧ್ವನಿ.</translation>
 <translation id="5473333559083690127">ಹೊಸ ಪಿನ್ ಮರು-ನಮೂದಿಸಿ</translation>
 <translation id="5481941284378890518">ಸಮೀಪದ ಪ್ರಿಂಟರ್‌ಗಳನ್ನು ಸೇರಿಸು</translation>
@@ -3544,6 +3544,7 @@
 <translation id="6233154960150021497">ಕೀಬೋರ್ಡ್‌ನ ಬದಲಿಗೆ ಧ್ವನಿ ಬಳಸುವುದನ್ನು ಡೀಫಾಲ್ಟ್ ಮಾಡಿಕೊಳ್ಳಿ</translation>
 <translation id="6234474535228214774">ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡುವುದು ಬಾಕಿ ಉಳಿದಿದೆ</translation>
 <translation id="6237816943013845465">ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ ರೆಸಲ್ಯೂಶನ್ ಸರಿಹೊಂದಿಸಲು ನಿಮಗೆ ಅವಕಾಶ ನೀಡುತ್ತದೆ</translation>
+<translation id="6238767809035845642">ಬೇರೆ ಸಾಧನದಿಂದ ಪಠ್ಯವನ್ನು ಹಂಚಿಕೊಳ್ಳಲಾಗಿದೆ</translation>
 <translation id="6238923052227198598">ಲಾಕ್ ಪರದೆಯ ಮೇಲೆ ಇತ್ತೀಚಿನ ಟಿಪ್ಪಣಿ ಇರಿಸಿ</translation>
 <translation id="6239558157302047471">ರೀಲೋಡ್ &amp;ಫ್ರೇಮ್</translation>
 <translation id="6241530762627360640">ನಿಮ್ಮ ಸಿಸ್ಟಂ ಜೊತೆಗೆ ಜೋಡಿಯಾಗಿರುವ ಬ್ಲೂಟೂತ್ ಸಾಧನಗಳ ಕುರಿತ ಮಾಹಿತಿಯನ್ನು ಪ್ರವೇಶಿಸಿ ಮತ್ತು ಹತ್ತಿರದ ಬ್ಲೂಟೂತ್ ಸಾಧನಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಿ.</translation>
@@ -3770,7 +3771,6 @@
 <translation id="6577284282025554716">ಡೌನ್‌ಲೋಡ್ ರದ್ದುಪಡಿಸಲಾಗಿದೆ: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">ಸಿಂಕ್ ಮಾಡಲಾದ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ನಿಮ್ಮ Google ಬಳಕೆದಾರರಹೆಸರು ಮತ್ತು ಪಾಸ್‌ವರ್ಡ್ ಮೂಲಕ ಎನ್‌ಕ್ರಿಪ್ಟ್ ಮಾಡಿ</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - ಡೆಸ್ಕ್‌ಟಾಪ್ ವಿಷಯವನ್ನು ಹಂಚಲಾಗಿದೆ</translation>
-<translation id="6580151766480067746">ARC ಆವೃತ್ತಿ</translation>
 <translation id="6582080224869403177">ನಿಮ್ಮ ಸುರಕ್ಷತೆಯನ್ನು ಅಪ್‌ಗ್ರೇಡ್‌ ಮಾಡಲು, ನಿಮ್ಮ <ph name="DEVICE_TYPE" /> ಅನ್ನು ಮರುಹೊಂದಿಸಿ.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">ಪ್ರಾಥಮಿಕ ಮೌಸ್ ಬಟನ್ ಅನ್ನು ಸ್ವ್ಯಾಪ್ ಮಾಡಿ</translation>
@@ -4303,7 +4303,7 @@
 <translation id="7366415735885268578">ಸೈಟ್ ಸೇರಿಸಿ</translation>
 <translation id="7366909168761621528">ಬ್ರೌಸಿಂಗ್ ಡೇಟಾ</translation>
 <translation id="736877393389250337"><ph name="URL" /> ಅನ್ನು <ph name="ALTERNATIVE_BROWSER_NAME" /> ನಲ್ಲಿ ತೆರೆಯಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ. ನಿಮ್ಮ ಸಿಸ್ಟಂ ನಿರ್ವಾಹಕರನ್ನು ಸಂಪರ್ಕಿಸಿ.</translation>
-<translation id="7370592524170198497">ಇಥರ್‌ನೆಟ್ EAP:</translation>
+<translation id="7370592524170198497">ಈಥರ್‌ನೆಟ್ EAP:</translation>
 <translation id="7371006317849674875">ಪ್ರಾರಂಭ ಸಮಯ</translation>
 <translation id="7375053625150546623">EAP</translation>
 <translation id="7376553024552204454">ಮೌಸ್ ಕರ್ಸರ್ ಅನ್ನು ಸರಿಸುವಾಗ ಹೈಲೈಟ್ ಮಾಡಿ</translation>
@@ -4377,6 +4377,7 @@
 <translation id="7487141338393529395">ವರ್ಧಿತ ಕಾಗುಣಿತ ಪರೀಕ್ಷೆಯನ್ನು ಆನ್ ಮಾಡಿ</translation>
 <translation id="7487969577036436319">ಯಾವುದೇ ಕಾಂಪೊನೆಂಟ್‌ಗಳನ್ನು ಸ್ಥಾಪಿಸಿಲ್ಲ</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;ಎಲ್ಲವನ್ನೂ ತೆರೆಯಿರಿ}=1{&amp;ಬುಕ್‌ಮಾರ್ಕ್ ತರೆಯಿರಿ}one{&amp;ಎಲ್ಲಾ (#) ಅನ್ನು ತೆರೆಯಿರಿ}other{&amp;ಎಲ್ಲಾ (#) ಅನ್ನು ತೆರೆಯಿರಿ}}</translation>
+<translation id="7489761397368794366">ನಿಮ್ಮ ಸಾಧನದಿಂದ ಕರೆ ಮಾಡಿ</translation>
 <translation id="749028671485790643">ವ್ಯಕ್ತಿ <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC ವಿಳಾಸ</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> ವಿಸ್ತರಣೆಯು ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ಮತ್ತು ಕ್ರೆಡಿಟ್ ಕಾರ್ಡ್ ಸಂಖ್ಯೆಗಳಂತಹ ವೈಯಕ್ತಿಕ ಡೇಟಾ ಒಳಗೊಂಡಂತೆ ನೀವು ಟೈಪ್ ಮಾಡುವ ಎಲ್ಲಾ ಪಠ್ಯವನ್ನು ಸಂಗ್ರಹಿಸಬಹುದು. ಈ ವಿಸ್ತರಣೆಯನ್ನು ಬಳಸಲು ನೀವು ಬಯಸುವಿರಾ?</translation>
@@ -4396,6 +4397,7 @@
 <translation id="7508054832109420082">ಪ್ರಿಂಟರ್‌ಗಳಿಗೆ ಪ್ರವೇಶವನ್ನು ನೀಡಿ</translation>
 <translation id="7510943789645525906">ನೀವು ಬಳಸುವ ಪಾಸ್‌ವರ್ಡ್ ಡೇಟಾ ಉಲ್ಲಂಘನೆಯ ಭಾಗವಾಗಿದ್ದರೆ ನಿಮಗೆ ಎಚ್ಚರಿಕೆ ನೀಡುತ್ತದೆ</translation>
 <translation id="7513029293694390567">ಸಂಗ್ರಹಿಸಲಾದ ರುಜುವಾತುಗಳನ್ನು ಬಳಸಿಕೊಳ್ಳುವ ಮೂಲಕ ವೆಬ್‌ಸೈಟ್‌ಗಳಿಗೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸೈನ್ ಇನ್ ಮಾಡಿ. ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದರೆ, ವೆಬ್‌ಸೈಟ್‌ಗೆ ಸೈನ್ ಇನ್ ಮಾಡುವ ಮೊದಲು ಪ್ರತಿ ಬಾರಿಯೂ ನಿಮಗೆ ದೃಢೀಕರಿಸಲು ಕೇಳಲಾಗುವುದು.</translation>
+<translation id="7514239104543605883">ನಿಮ್ಮ ಸಾಧನಕ್ಕೆ ನಕಲಿಸಿ</translation>
 <translation id="7514365320538308">ಡೌನ್‌ಲೋಡ್</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">"Ok Google" ಎಂದು ಹೇಳಿ</translation>
@@ -4949,6 +4951,7 @@
 <translation id="8274332263553132018">ಫೈಲ್‌ ಅನ್ನು ಬಿತ್ತರಿಸಿ</translation>
 <translation id="8274924778568117936">ಅಪ್‌ಡೇಟ್ ಮುಕ್ತಾಯಗೊಳ್ಳುವವರೆಗೆ <ph name="DEVICE_TYPE" /> ಅನ್ನು ಆಫ್ ಮಾಡಬೇಡಿ. ಇನ್‌ಸ್ಟಾಲೇಶನ್ ಪ್ರಕ್ರಿಯೆ ಪೂರ್ಣಗೊಂಡ ನಂತರ ನಿಮ್ಮ <ph name="DEVICE_TYPE" /> ಮರುಪ್ರಾರಂಭವಾಗುತ್ತದೆ.</translation>
 <translation id="8275038454117074363">ಆಮದು</translation>
+<translation id="8275080796245127762">ನಿಮ್ಮ ಸಾಧನದಿಂದ ಕರೆ ಮಾಡಿ</translation>
 <translation id="8276560076771292512">ಖಾಲಿ ಕ್ಯಾಷ್ ಮತ್ತು ಹಾರ್ಡ್ ಮರುಲೋಡ್</translation>
 <translation id="8281886186245836920">ಸ್ಕಿಪ್‌</translation>
 <translation id="8282947398454257691">ನಿಮ್ಮ ಅನನ್ಯ ಸಾಧನ ಗುರುತಿಸುವಿಕೆ ತಿಳಿದುಕೊಳ್ಳಿ</translation>
@@ -5271,6 +5274,7 @@
 <translation id="8758418656925882523">ಉಕ್ತಲೇಖನ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ (ಟೈಪ್ ಮಾಡಲು ಮಾತನಾಡಿ)</translation>
 <translation id="8759408218731716181">ಬಹು ಸೈನ್‍-ಇನ್ ಹೊಂದಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ</translation>
 <translation id="8759753423332885148">ಮತ್ತಷ್ಟು ತಿಳಿಯಿರಿ.</translation>
+<translation id="8761945298804995673">ಈ ಬಳಕೆದಾರರು ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿದ್ದಾರೆ</translation>
 <translation id="8762886931014513155">ನಿಮ್ಮ <ph name="DEVICE_TYPE" /> ಗೆ ಅಪ್‌ಡೇಟ್‌ ಒಂದರ ಅಗತ್ಯವಿದೆ</translation>
 <translation id="8763927697961133303">USB ಸಾಧನ</translation>
 <translation id="8767621466733104912">ಎಲ್ಲಾ ಬಳಕೆದಾರರಿಗಾಗಿ ಸ್ವಯಂಚಾಲಿತವಾಗಿ Chrome ಅನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಿ</translation>
@@ -5359,6 +5363,7 @@
 <translation id="8879284080359814990">ಟ್ಯಾಬ್‌ನಂತೆ &amp;ತೋರಿಸಿ</translation>
 <translation id="8879921471468674457">ಸೈನ್-ಇನ್ ಮಾಹಿತಿಯನ್ನು ನೆನಪಿನಲ್ಲಿಡಿ</translation>
 <translation id="8881020143150461183">ಪುನಃ ಪ್ರಯತ್ನಿಸಿ. ತಾಂತ್ರಿಕ ಬೆಂಬಲಕ್ಕಾಗಿ, <ph name="CARRIER_NAME" /> ಅನ್ನು ಸಂಪರ್ಕಿಸಿ.</translation>
+<translation id="8883273463630735858">ಟಚ್‌ಪ್ಯಾಡ್ ವೇಗವರ್ಧನೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ</translation>
 <translation id="8884570509232205463">ನಿಮ್ಮ ಸಾಧನವು ಇದೀಗ <ph name="UNLOCK_TIME" /> ಸಮಯಕ್ಕೆ ಲಾಕ್ ಆಗುತ್ತದೆ.</translation>
 <translation id="8885197664446363138">Smart Lock ಲಭ್ಯವಿಲ್ಲ</translation>
 <translation id="8888253246822647887">ಅಪ್‌ಗ್ರೇಡ್‌ ಮಾಡುವುದು ಪೂರ್ಣಗೊಂಡಾಗ ನಿಮ್ಮ ಆ್ಯಪ್‌ ತೆರೆದುಕೊಳ್ಳುತ್ತದೆ. ಅಪ್‌ಗ್ರೇಡ್‌ಗಳನ್ನು ಮಾಡುವುದಕ್ಕೆ ಕೆಲವು ನಿಮಿಷಗಳು ಬೇಕಾಗಬಹುದು.</translation>
diff --git a/chrome/app/resources/generated_resources_ko.xtb b/chrome/app/resources/generated_resources_ko.xtb
index 119ea30..91b91a6 100644
--- a/chrome/app/resources/generated_resources_ko.xtb
+++ b/chrome/app/resources/generated_resources_ko.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">모든 컴퓨터에서 확장 프로그램을 사용하려면 <ph name="SIGN_IN_LINK" />에 로그인하세요.</translation>
 <translation id="1470967055429794975">PIN을 포함하여 보안 키에 저장된 모든 데이터가 삭제됩니다.</translation>
 <translation id="1475502736924165259">모든 기타 카테고리에 맞지 않는 인증서가 등록되어 있습니다.</translation>
+<translation id="1476088332184200792">기기로 복사</translation>
 <translation id="1476607407192946488">언어 설정(&amp;L)</translation>
 <translation id="1478340334823509079">세부정보: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">설치하도록 설정되어 있지 않습니다</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">시스템 대화상자를 사용하여 인쇄... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">보내기 전에 확인(권장)</translation>
 <translation id="2384436799579181135">오류가 발생했습니다. 프린터를 확인한 후 다시 시도해 주세요.</translation>
-<translation id="2386926718981642523">"Ok Google"이라고 말할 때마다 어시스턴트에 액세스합니다.</translation>
 <translation id="2387458720915042159">프록시 연결 유형</translation>
 <translation id="2391419135980381625">표준 글꼴</translation>
 <translation id="2392369802118427583">활성화</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">낮음</translation>
 <translation id="2942560570858569904">대기 중...</translation>
 <translation id="2942581856830209953">페이지 맞춤설정</translation>
+<translation id="294308617863380348">타사 쿠키 포함</translation>
 <translation id="2944060181911631861">사용 및 진단 데이터를 보냅니다. 진단, 기기, 앱 사용 데이터를 Google에 자동으로 보내 Android 사용 환경 개선에 참여합니다. 이 데이터는 시스템 및 앱 안정성 등을 개선하는 데 활용됩니다. 일부 수집 데이터는 Google 앱과 파트너(Android 개발자 등)에게도 도움을 줍니다. 추가 웹 및 앱 활동이 사용 설정되어 있다면 이 데이터가 Google 계정에 저장될 수 있습니다. <ph name="BEGIN_LINK1" />자세히 알아보기<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">연결 추가</translation>
 <translation id="2948300991547862301"><ph name="PAGE_TITLE" />(으)로 이동</translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">클릭하면 다음 페이지로 가고 누르고 있으면 방문 기록이 나타납니다.</translation>
 <translation id="2963151496262057773">다음 플러그인에서 응답이 없습니다. <ph name="PLUGIN_NAME" />을(를) 중단하시겠습니까?</translation>
 <translation id="2966937470348689686">Android 환경설정 관리</translation>
-<translation id="2972557485845626008">펌웨어</translation>
 <translation id="2972581237482394796">다시 실행(&amp;R)</translation>
 <translation id="2973324205039581528">사이트 음소거</translation>
 <translation id="2977480621796371840">그룹에서 삭제</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">구분자</translation>
 <translation id="3387614642886316601">향상된 맞춤법 검사 기능 사용</translation>
-<translation id="3393352139658145068">누군가 “Ok Google”이라고 말하면 어시스턴트를 활성화합니다. 배터리를 절약하기 위하여 기기가 전원에 연결되어 있는 경우에만 “Ok Google” 기능이 켜집니다.</translation>
 <translation id="3396800784455899911">'동의 및 계속' 버튼을 클릭하면 이러한 Google 서비스와 관련하여 위에 설명된 처리 방식에 동의하는 것으로 간주됩니다.</translation>
 <translation id="3399432415385675819">알림이 사용 중지됩니다.</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" />x<ph name="HEIGHT" />(<ph name="REFRESH_RATE" />Hz) - 인터레이스</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> 표시</translation>
 <translation id="3613422051106148727">새 탭에서 열기(&amp;O)</translation>
 <translation id="3615073365085224194">손가락으로 지문 센서를 터치하세요.</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" />을(를) 스캔하는 중입니다.</translation>
 <translation id="3616741288025931835">인터넷 사용 기록 삭제(&amp;C)...</translation>
 <translation id="3617891479562106823">배경을 사용할 수 없습니다. 나중에 다시 시도하세요.</translation>
 <translation id="3619115746895587757">카푸치노</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">웹페이지의 일부 차단</translation>
 <translation id="3760460896538743390">백그라운드 페이지 검사(&amp;B)</translation>
 <translation id="37613671848467444">시크릿 창에서 열기(&amp;I)</translation>
-<translation id="3764314093345384080">자세한 빌드 정보</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{USB 기기 1개와 통신}other{USB 기기 #개와 통신}}</translation>
 <translation id="3765246971671567135">오프라인 데모 모드 정책을 읽을 수 없습니다.</translation>
 <translation id="3768037234834996183">환경설정 동기화 중...</translation>
@@ -2167,7 +2166,6 @@
 <translation id="4138267921960073861">로그인 화면에 사용자 이름과 사진 표시</translation>
 <translation id="4142052906269098341">휴대전화를 사용해 <ph name="DEVICE_TYPE" />을(를) 잠금 해제하세요. <ph name="LINK_BEGIN" />자세히 알아보기<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">우수한 화질의 동영상을 감상하고 배터리를 더 오래 사용하세요. 동영상은 Cast가 지원되는 화면에서만 재생됩니다.</translation>
-<translation id="4145922204387553806">어시스턴트가 화면에 표시된 내용과 관련된 정보를 표시하도록 허용합니다.</translation>
 <translation id="4146026355784316281">항상 시스템 뷰어로 열기</translation>
 <translation id="4146785383423576110">재설정 및 정리하기</translation>
 <translation id="4147911968024186208">다시 시도해 주세요. 이 오류가 다시 표시되면 지원 담당자에게 문의하시기 바랍니다.</translation>
@@ -2254,6 +2252,7 @@
 <translation id="4297322094678649474">언어 변경</translation>
 <translation id="4301671483919369635">이 페이지에서 파일을 수정할 수 있습니다.</translation>
 <translation id="4303079906735388947">보안 키의 새로운 PIN을 설정하세요.</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" />(으)로 복사</translation>
 <translation id="4306119971288449206">앱은 '<ph name="CONTENT_TYPE" />' 콘텐츠 유형으로 제공되어야 합니다</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K(<ph name="NUM_KILOBYTES_LIVE" />K 활성)</translation>
 <translation id="4310139701823742692">파일 형식이 잘못되었습니다. PPD 파일을 확인하고 다시 시도하세요.</translation>
@@ -2389,7 +2388,6 @@
 <translation id="4534661889221639075">다시 시도하세요.</translation>
 <translation id="4535127706710932914">기본 프로필</translation>
 <translation id="4535767533210902251">지문 센서는 키보드 오른쪽 상단의 키에 있습니다. 손가락으로 가볍게 터치하세요.</translation>
-<translation id="4538417792467843292">단어 삭제</translation>
 <translation id="4538684596480161368"><ph name="HOST" />에서 샌드박스 처리되지 않은 플러그인을 항상 차단</translation>
 <translation id="4538792345715658285">엔터프라이즈 정책에 의해 설치됨</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" /> 및 <ph name="WEBSITE_2" />에서 데이터 읽기</translation>
@@ -2933,6 +2931,7 @@
 <translation id="5367091008316207019">파일 읽는 중..</translation>
 <translation id="5368720394188453070">휴대전화가 잠겨있습니다. 이용하려면 기기를 잠금 해제하세요.</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> 로그인</translation>
+<translation id="5369491905435686894">마우스 가속 사용</translation>
 <translation id="5370819323174483825">새로고침(&amp;R)</translation>
 <translation id="5372529912055771682">제공된 등록 모드는 해당 버전의 운영 체제에서 지원되지 않습니다. 최신 버전을 실행하고 있는지 확인한 뒤 다시 시도하세요.</translation>
 <translation id="5372579129492968947">확장 프로그램 고정 해제</translation>
@@ -3005,6 +3004,7 @@
 <translation id="5464632865477611176">이번만 실행</translation>
 <translation id="5464660706533281090">이 설정은 자녀 사용자가 변경할 수 없습니다.</translation>
 <translation id="5466374726908360271">'<ph name="SEARCH_TERMS" />' 붙여넣기 및 검색(&amp;S)</translation>
+<translation id="5468173180030470402">파일 공유 찾는 중</translation>
 <translation id="5471768120198416576">안녕하세요. 텍스트 음성 변환의 음성입니다.</translation>
 <translation id="5473333559083690127">새 PIN 다시 입력</translation>
 <translation id="5481941284378890518">주변 프린터 추가</translation>
@@ -3540,6 +3540,7 @@
 <translation id="6233154960150021497">키보드 대신 음성 사용을 기본값으로 설정</translation>
 <translation id="6234474535228214774">설치 대기 중</translation>
 <translation id="6237816943013845465">화면 해상도를 조정할 수 있습니다.</translation>
+<translation id="6238767809035845642">다른 기기에서 공유된 텍스트</translation>
 <translation id="6238923052227198598">잠금 화면에 최근 메모 보관</translation>
 <translation id="6239558157302047471">프레임 새로고침(&amp;F)</translation>
 <translation id="6241530762627360640">시스템과 페어링된 블루투스 기기 관련 정보에 액세스하고 근처의 블루투스 기기를 검색합니다.</translation>
@@ -3766,7 +3767,6 @@
 <translation id="6577284282025554716">다운로드 취소됨: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Google 사용자 이름과 비밀번호로 동기화 데이터 암호화</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - 데스크톱 콘텐츠 공유됨</translation>
-<translation id="6580151766480067746">ARC 버전</translation>
 <translation id="6582080224869403177"><ph name="DEVICE_TYPE" />을(를) 재설정하여 보안을 업그레이드하세요.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">기본 마우스 버튼 전환</translation>
@@ -4371,6 +4371,7 @@
 <translation id="7487141338393529395">향상된 맞춤법 검사 기능 사용 설정</translation>
 <translation id="7487969577036436319">설치된 구성요소가 없습니다.</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{모두 열기(O)}=1{북마크 열기(O)}other{#개 모두 열기(O)}}</translation>
+<translation id="7489761397368794366">기기에서 전화 걸기</translation>
 <translation id="749028671485790643">사용자 이름 <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC 주소</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> 확장 프로그램에서 비밀번호와 신용카드 번호 등의 개인정보를 포함해 입력하는 모든 텍스트를 수집할 수 있습니다. 이 확장 프로그램을 사용하시겠어요?</translation>
@@ -4390,6 +4391,7 @@
 <translation id="7508054832109420082">프린터에 액세스 권한 부여</translation>
 <translation id="7510943789645525906">사용 중인 비밀번호가 정보 유출에 포함된 경우 경고를 표시합니다.</translation>
 <translation id="7513029293694390567">저장된 사용자 인증 정보를 사용하여 자동으로 웹사이트에 로그인합니다. 이 기능이 꺼져 있는 경우에는 웹사이트에 로그인할 때마다 확인 요청 메시지가 표시됩니다.</translation>
+<translation id="7514239104543605883">기기로 복사</translation>
 <translation id="7514365320538308">다운로드</translation>
 <translation id="7521387064766892559">자바스크립트</translation>
 <translation id="7522255036471229694">"Ok Google"이라고 말하세요.</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">파일 전송</translation>
 <translation id="8274924778568117936">업데이트가 완료될 때까지 <ph name="DEVICE_TYPE" />을(를) 끄거나 닫지 마세요. 설치가 완료되면 <ph name="DEVICE_TYPE" />이(가) 다시 시작됩니다.</translation>
 <translation id="8275038454117074363">가져오기</translation>
+<translation id="8275080796245127762">기기에서 전화 걸기</translation>
 <translation id="8276560076771292512">캐시 비우기 및 강력 새로고침</translation>
 <translation id="8281886186245836920">건너뛰기</translation>
 <translation id="8282947398454257691">고유 기기 식별자 조회</translation>
@@ -5266,6 +5269,7 @@
 <translation id="8758418656925882523">받아쓰기 사용(말하여 입력)</translation>
 <translation id="8759408218731716181">멀티 로그인을 설정할 수 없음</translation>
 <translation id="8759753423332885148">자세히 알아보기</translation>
+<translation id="8761945298804995673">이미 존재하는 사용자입니다.</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> 업데이트 필요</translation>
 <translation id="8763927697961133303">USB 기기</translation>
 <translation id="8767621466733104912">모든 사용자의 Chrome 자동 업데이트</translation>
@@ -5354,6 +5358,7 @@
 <translation id="8879284080359814990">탭으로 표시(&amp;S)</translation>
 <translation id="8879921471468674457">로그인 정보 저장</translation>
 <translation id="8881020143150461183">다시 시도해 주세요. 기술 지원이 필요하면 <ph name="CARRIER_NAME" />에 문의하세요.</translation>
+<translation id="8883273463630735858">터치패드 가속 사용</translation>
 <translation id="8884570509232205463">기기가 <ph name="UNLOCK_TIME" />에 잠깁니다.</translation>
 <translation id="8885197664446363138">Smart Lock을 사용할 수 없음</translation>
 <translation id="8888253246822647887">업그레이드가 종료되면 앱이 열립니다. 업그레이드하는 데 몇 분 정도 걸릴 수 있습니다.</translation>
diff --git a/chrome/app/resources/generated_resources_lt.xtb b/chrome/app/resources/generated_resources_lt.xtb
index 9a79ba9..e990a90 100644
--- a/chrome/app/resources/generated_resources_lt.xtb
+++ b/chrome/app/resources/generated_resources_lt.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Kad pasiektumėte plėtinius visuose įrenginiuose, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Taip bus ištrinti visi saugos rakte išsaugoti duomenys, įskaitant jo PIN kodą</translation>
 <translation id="1475502736924165259">Turite pateiktų sertifikatų, kurie neatitinka jokių kitų kategorijų</translation>
+<translation id="1476088332184200792">Kopijuoti į įrenginį</translation>
 <translation id="1476607407192946488">&amp;Kalbos nustatymai</translation>
 <translation id="1478340334823509079">Išsami informacija: „<ph name="FILE_NAME" />“</translation>
 <translation id="1478607704480248626">Diegimas neįgalintas</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Spausdinti naudojant sistemos dialogo langą... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Klausti prieš siunčiant (rekomenduojama)</translation>
 <translation id="2384436799579181135">Įvyko klaida. Patikrinkite spausdintuvą ir bandykite dar kartą.</translation>
-<translation id="2386926718981642523">Pasiekite „Google Assistant“ bet kuriuo metu pasakę „Ok Google“</translation>
 <translation id="2387458720915042159">Tarpinio serverio ryšio tipas</translation>
 <translation id="2391419135980381625">Standartinis šriftas</translation>
 <translation id="2392369802118427583">Suaktyvinti</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Žema</translation>
 <translation id="2942560570858569904">Laukiama...</translation>
 <translation id="2942581856830209953">Tinkinti šį puslapį</translation>
+<translation id="294308617863380348">Įskaitant trečiųjų šalių slapukus</translation>
 <translation id="2944060181911631861">Siųskite naudojimo ir diagnostikos duomenis. Padėkite tobulinti „Android“ funkcijas automatiškai siųsdami „Google“ diagnostikos, įrenginio ir programų naudojimo duomenis. Tai padės pagerinti sistemos bei programos stabilumą ir teikti kitus patobulinimus. Kai kurie sukaupti duomenys taip pat bus naudingi „Google“ programoms ir partneriams, pvz., „Android“ kūrėjams. Jei papildomas „Žiniatinklio ir programų veiklos“ nustatymas įjungtas, šie duomenys gali būti išsaugoti „Google“ paskyroje. <ph name="BEGIN_LINK1" />Sužinokite daugiau<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Pridėti ryšį</translation>
 <translation id="2948300991547862301">Eiti į <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Spustelėkite, kad eitumėte į priekį, palaukite, kad pamatytumėte istoriją</translation>
 <translation id="2963151496262057773">Šis papildinys neatsako: „<ph name="PLUGIN_NAME" />“ Ar norite jį sustabdyti?</translation>
 <translation id="2966937470348689686">Tvarkyti „Android“ nuostatas</translation>
-<translation id="2972557485845626008">Programinė aparatinė įranga</translation>
 <translation id="2972581237482394796">&amp;Atlikti iš naujo</translation>
 <translation id="2973324205039581528">Nutildyti svetainę</translation>
 <translation id="2977480621796371840">Pašalinti iš grupės</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Skyriklis</translation>
 <translation id="3387614642886316601">Naudoti patobulintą rašybos tikrinimą</translation>
-<translation id="3393352139658145068">Suaktyvinti „Google Assistant“, kai tik pasakoma „Ok Google“. Siekiant tausoti akumuliatoriaus energiją, funkcija „Ok Google“ įjungiama, tik kai įrenginys prijungtas prie maitinimo šaltinio.</translation>
 <translation id="3396800784455899911">Spustelėdami mygtuką „Sutikti ir tęsti“ sutinkate, kad šios „Google“ paslaugos būtų apdorojamos, kaip aprašyta anksčiau.</translation>
 <translation id="3399432415385675819">Pranešimai bus išjungti</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hz) – progresinis</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Rodyti „<ph name="FOLDER_NAME" />“</translation>
 <translation id="3613422051106148727">&amp;Atidaryti naujo skirtuko lape</translation>
 <translation id="3615073365085224194">Palieskite kontrolinio kodo jutiklį pirštu</translation>
+<translation id="3615579745882581859">Nuskaitomas „<ph name="FILE_NAME" />“.</translation>
 <translation id="3616741288025931835">&amp;Išvalyti naršymo duomenis...</translation>
 <translation id="3617891479562106823">Fonai nepasiekiami. Vėliau bandykite dar kartą.</translation>
 <translation id="3619115746895587757">Kapučino kava</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Blokuoti tinklalapių dalis</translation>
 <translation id="3760460896538743390">Tikrinti fono puslapį</translation>
 <translation id="37613671848467444">Atidaryti inkognito lange</translation>
-<translation id="3764314093345384080">Išsami versijos informacija</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Užmegzti ryšį su USB įrenginiu}one{Užmegzti ryšį su # USB įrenginiu}few{Užmegzti ryšį su # USB įrenginiais}many{Užmegzti ryšį su # USB įrenginio}other{Užmegzti ryšį su # USB įrenginių}}</translation>
 <translation id="3765246971671567135">Nepavyko nuskaityti neprisijungus pasiekiamos demonstracinio režimo politikos.</translation>
 <translation id="3768037234834996183">Sinchronizuojamos nuostatos...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Rodyti naudotojų vardus ir nuotraukas prisijungimo ekrane</translation>
 <translation id="4142052906269098341">Atrakinkite „<ph name="DEVICE_TYPE" />“ naudodami telefoną <ph name="LINK_BEGIN" />Sužinokite daugiau<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Gaukite kokybiškesnį vaizdo įrašą ir tausokite akumuliatoriaus energiją. Vaizdo įrašas bus leidžiamas tik su „Cast“ suderinamame įrenginyje.</translation>
-<translation id="4145922204387553806">Leiskite Padėjėjui parodyti jums informaciją apie tai, kas vyksta ekrane</translation>
 <translation id="4146026355784316281">Visada atidaryti naudojant sistemos peržiūros priemonę</translation>
 <translation id="4146785383423576110">Nustatykite iš naujo ir išvalykite</translation>
 <translation id="4147911968024186208">Bandykite iš naujo. Jei ši klaida bus parodyta dar kartą, susisiekite su palaikymo komandos atstovu.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Keisti kalbas</translation>
 <translation id="4301671483919369635">Šiam puslapiui leidžiama redaguoti failus</translation>
 <translation id="4303079906735388947">Nustatykite naują saugos rakto PIN kodą</translation>
+<translation id="4305402730127028764">Kopijuoti į „<ph name="DEVICE_NAME" />“</translation>
 <translation id="4306119971288449206">Teikiamų programų turinio tipas turi būti „<ph name="CONTENT_TYPE" />“</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> KB (<ph name="NUM_KILOBYTES_LIVE" /> KB tiesiogiai)</translation>
 <translation id="4310139701823742692">Failas netinkamo formato. Patikrinkite PPD failą ir bandykite dar kartą.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Bandykite dar kartą.</translation>
 <translation id="4535127706710932914">Numatytasis profilis</translation>
 <translation id="4535767533210902251">Kontrolinio kodo jutiklis yra ant jūsų klaviatūros viršutinio dešiniojo klavišo. Lengvai jį palieskite bet kuriuo pirštu.</translation>
-<translation id="4538417792467843292">Ištrinti žodį</translation>
 <translation id="4538684596480161368">Visada blokuoti į smėlio dėžę neįtrauktus papildinius, esančius <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Įdiegta pagal įmonės politiką.</translation>
 <translation id="4542520061254486227">Skaityti duomenis svetainėse <ph name="WEBSITE_1" /> ir <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Skaitomas failas...</translation>
 <translation id="5368720394188453070">Telefonas užrakintas. Norėdami įeiti, atrakinkite jį.</translation>
 <translation id="5368779022775404937">Prisijunkite prie <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Įgalinti pelės spartinimą</translation>
 <translation id="5370819323174483825">&amp;Įkelti iš naujo</translation>
 <translation id="5372529912055771682">Ši operacinė sistema nepalaiko teikiamo registracijos režimo. Įsitikinkite, kad naudojate naujausią versiją ir bandykite dar kartą.</translation>
 <translation id="5372579129492968947">Atsegti plėtinį</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Paleisti šį kartą</translation>
 <translation id="5464660706533281090">Šio nustatymo negalima pakeisti, jei naudotojas yra vaikas.</translation>
 <translation id="5466374726908360271">Įk&amp;klijuoti ir ieškoti „<ph name="SEARCH_TERMS" />“</translation>
+<translation id="5468173180030470402">Ieškoma failų bendrinimo įrenginių</translation>
 <translation id="5471768120198416576">Sveiki, tai – jūsų teksto į kalbą balsas.</translation>
 <translation id="5473333559083690127">Iš naujo įveskite naują PIN kodą</translation>
 <translation id="5481941284378890518">Pridėti netoliese esančius spausdintuvus</translation>
@@ -3543,6 +3543,7 @@
 <translation id="6233154960150021497">Numatyta naudoti balsą, o ne klaviatūrą</translation>
 <translation id="6234474535228214774">Laukiama, kol bus įdiegta</translation>
 <translation id="6237816943013845465">Leidžiama koreguoti ekrano skyrą</translation>
+<translation id="6238767809035845642">Tekstas, bendrinamas iš kito įrenginio</translation>
 <translation id="6238923052227198598">Palikti naujausią pastabą užrakinimo ekrane</translation>
 <translation id="6239558157302047471">Įkelti &amp;rėmelį iš naujo</translation>
 <translation id="6241530762627360640">Pasiekti informaciją apie „Bluetooth“ įrenginius, susietus su sistema, ir aptikti netoliese esančius „Bluetooth“ įrenginius.</translation>
@@ -3769,7 +3770,6 @@
 <translation id="6577284282025554716">Atsisiuntimas atšauktas: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Šifruokite sinchronizuotus slaptažodžius naudodami savo „Google“ naudotojo vardą ir slaptažodį</translation>
 <translation id="6579705087617859690">„<ph name="WINDOW_TITLE" />“ – darbalaukio turinys bendrinamas</translation>
-<translation id="6580151766480067746">ARC versija</translation>
 <translation id="6582080224869403177">Nustatykite „<ph name="DEVICE_TYPE" />“ įrenginį iš naujo, kad būtų galima naujovinti saugos sistemą.</translation>
 <translation id="6584878029876017575">„Microsoft“ pasirašymas visam laikui</translation>
 <translation id="6586451623538375658">Sukeisti pagrindinį pelės klavišą</translation>
@@ -4374,6 +4374,7 @@
 <translation id="7487141338393529395">Patobulinto rašybos tikrinimo įjungimas</translation>
 <translation id="7487969577036436319">Neįdiegta jokių komponentų</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Atidaryti viską}=1{&amp;Atidaryti žymę}one{&amp;Atidaryti viską (#)}few{&amp;Atidaryti viską (#)}many{&amp;Atidaryti viską (#)}other{&amp;Atidaryti viską (#)}}</translation>
+<translation id="7489761397368794366">Skambinti iš įrenginio</translation>
 <translation id="749028671485790643">Asmuo <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC adresas</translation>
 <translation id="7493386493263658176">Plėtinys „<ph name="EXTENSION_NAME" />“ gali rinkti visą įvedamą tekstą, įskaitant asmeninius duomenis, pvz., slaptažodžius ir kredito kortelės numerius. Ar norite naudoti šį plėtinį?</translation>
@@ -4393,6 +4394,7 @@
 <translation id="7508054832109420082">Suteikti prieigą prie spausdintuvų</translation>
 <translation id="7510943789645525906">Būsite perspėti, jei naudojamas slaptažodis yra susijęs su duomenų saugos pažeidimu</translation>
 <translation id="7513029293694390567">Automatiškai prisijungti prie svetainių naudojant išsaugotus prisijungimo duomenis. Kai funkcija išjungta, kaskart prisijungiant prie svetainės bus prašoma patvirtinti.</translation>
+<translation id="7514239104543605883">Kopijuoti į įrenginį</translation>
 <translation id="7514365320538308">Atsisiųsti</translation>
 <translation id="7521387064766892559">„JavaScript“</translation>
 <translation id="7522255036471229694">Ištarkite „Ok Google“.</translation>
@@ -4949,6 +4951,7 @@
 <translation id="8274332263553132018">Norimas perduoti failas</translation>
 <translation id="8274924778568117936">Neišjunkite ar neuždarykite „<ph name="DEVICE_TYPE" />“, kol atnaujinimo procesas nebus baigtas. Kai diegimo procesas baigsis, „<ph name="DEVICE_TYPE" />“ bus paleistas iš naujo.</translation>
 <translation id="8275038454117074363">Importuoti</translation>
+<translation id="8275080796245127762">Skambinti iš įrenginio</translation>
 <translation id="8276560076771292512">Tuščia talpykla ir priverstinis įkėlimas iš naujo</translation>
 <translation id="8281886186245836920">Praleisti</translation>
 <translation id="8282947398454257691">Žinoti unikalų įrenginio identifikatorių</translation>
@@ -5269,6 +5272,7 @@
 <translation id="8758418656925882523">Įgalinti diktavimą (sakomo teksto įvedimas)</translation>
 <translation id="8759408218731716181">Negalima nustatyti kelių paskyrų</translation>
 <translation id="8759753423332885148">Sužinokite daugiau.</translation>
+<translation id="8761945298804995673">Toks naudotojas jau yra</translation>
 <translation id="8762886931014513155">Reikia atnaujinti „<ph name="DEVICE_TYPE" />“</translation>
 <translation id="8763927697961133303">USB įrenginys</translation>
 <translation id="8767621466733104912">Automatiškai atnaujinti „Chrome“ visiems naudotojams</translation>
@@ -5357,6 +5361,7 @@
 <translation id="8879284080359814990">&amp;Rodyti kaip skirtuką</translation>
 <translation id="8879921471468674457">Atsiminti prisijungimo informaciją</translation>
 <translation id="8881020143150461183">Bandykite dar kartą. Jei reikia techninio palaikymo paslaugų, susisiekite su „<ph name="CARRIER_NAME" />“.</translation>
+<translation id="8883273463630735858">Įgalinti jutiklinės dalies spartinimą</translation>
 <translation id="8884570509232205463">Jūsų įrenginys dabar užrakinamas <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">„Smart Lock“ nepasiekiama</translation>
 <translation id="8888253246822647887">Programa bus atidaryta baigus naujovinti. Naujovinimas gali užtrukti keletą minučių.</translation>
diff --git a/chrome/app/resources/generated_resources_lv.xtb b/chrome/app/resources/generated_resources_lv.xtb
index 6dec8cd..f96e314 100644
--- a/chrome/app/resources/generated_resources_lv.xtb
+++ b/chrome/app/resources/generated_resources_lv.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Lai paplašinājumi būtu pieejami visos datoros, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Tas izdzēsīs visus drošības atslēgas datus, ieskaitot tās PIN</translation>
 <translation id="1475502736924165259">Sistēmā ir sertifikāti, kas neiederas nevienā no citām kategorijām</translation>
+<translation id="1476088332184200792">Kopēt uz jūsu ierīci</translation>
 <translation id="1476607407192946488">&amp;Valodas iestatījumi</translation>
 <translation id="1478340334823509079">Detalizēta informācija: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Instalēšana nav iespējota</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Drukāt, izmantojot sistēmas dialoglodziņu... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Jautāt pirms sūtīšanas (ieteicams)</translation>
 <translation id="2384436799579181135">Radās kļūda. Lūdzu, pārbaudiet printeri un mēģiniet vēlreiz.</translation>
-<translation id="2386926718981642523">Piekļūt Asistentam katru reizi, kad sakāt: “Ok Google”</translation>
 <translation id="2387458720915042159">Starpniekservera savienojuma veids</translation>
 <translation id="2391419135980381625">Standarta fonts</translation>
 <translation id="2392369802118427583">Aktivizēt</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Zema</translation>
 <translation id="2942560570858569904">Notiek gaidīšana...</translation>
 <translation id="2942581856830209953">Pielāgot šo lapu</translation>
+<translation id="294308617863380348">Ieskaitot trešo pušu sīkfailus</translation>
 <translation id="2944060181911631861">Lietojuma un diagnostikas datu sūtīšana. Palīdziet uzlabot Android lietošanas pieredzi, automātiski nosūtot diagnostikas, ierīces un lietotņu lietojuma datus uzņēmumam Google. Šī informācija palīdzēs uzlabot sistēmas un lietotņu stabilitāti un daudz ko citu. Noteiktus apkopotus datus izmantos arī Google lietotņu izstrādātāji un partneri, piemēram, Android izstrādātāji. Ja ir ieslēgts papildu iestatījums “Darbības tīmeklī un lietotnēs”, šie dati var tikt saglabāti jūsu Google kontā. <ph name="BEGIN_LINK1" />Uzzināt vairāk<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Pievienot savienojumu</translation>
 <translation id="2948300991547862301">Doties uz lapu <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Nospiediet, lai dotos uz priekšu, paturiet, lai redzētu vēsturi</translation>
 <translation id="2963151496262057773">Šis spraudnis neatbild: <ph name="PLUGIN_NAME" />. Vai vēlaties to apturēt?</translation>
 <translation id="2966937470348689686">Pārvaldīt Android preferences</translation>
-<translation id="2972557485845626008">Programmaparatūra</translation>
 <translation id="2972581237482394796">&amp;Pāratsaukt</translation>
 <translation id="2973324205039581528">Nerādīt vietni</translation>
 <translation id="2977480621796371840">Noņemt no grupas</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Atdalītājs</translation>
 <translation id="3387614642886316601">Izmantot uzlaboto pareizrakstības pārbaudi</translation>
-<translation id="3393352139658145068">Aktivizēt Asistentu, kad kāds saka: “Ok Google”. Lai paildzinātu akumulatora darbības laiku, komanda “Ok Google” ir iespējota tikai tad, kad ierīce ir pievienota strāvas avotam.</translation>
 <translation id="3396800784455899911">Noklikšķinot uz pogas “Piekrist un turpināt”, jūs piekrītat iepriekš aprakstītajai apstrādei šajos Google pakalpojumos.</translation>
 <translation id="3399432415385675819">Paziņojumi tiks atspējoti</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> herci) — rindpārlēces izvērse</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Mapes “<ph name="FOLDER_NAME" />” rādīšana</translation>
 <translation id="3613422051106148727">&amp;Atvērt jaunā cilnē</translation>
 <translation id="3615073365085224194">Ar pirkstu pieskarieties pirkstu nospiedumu sensoram</translation>
+<translation id="3615579745882581859">Notiek faila “<ph name="FILE_NAME" />” pārbaude.</translation>
 <translation id="3616741288025931835">&amp;Dzēst pārlūkošanas datus...</translation>
 <translation id="3617891479562106823">Fona attēli nav pieejami. Vēlāk mēģiniet vēlreiz.</translation>
 <translation id="3619115746895587757">Kapučīno</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Bloķēt tīmekļa lapu daļas</translation>
 <translation id="3760460896538743390">Pārbaudīt &amp;fona lapu</translation>
 <translation id="37613671848467444">Atvērt &amp;inkognito režīma logā</translation>
-<translation id="3764314093345384080">Detalizēta informācija par versiju</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Saziņa ar USB ierīci}zero{Saziņa ar # USB ierīcēm}one{Saziņa ar # USB ierīci}other{Saziņa ar # USB ierīcēm}}</translation>
 <translation id="3765246971671567135">Neizdevās nolasīt bezsaistes demonstrācijas režīma politiku.</translation>
 <translation id="3768037234834996183">Notiek jūsu preferenču sinhronizēšana...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Rādīt lietotājvārdus un fotoattēlus pierakstīšanās ekrānā</translation>
 <translation id="4142052906269098341">Atbloķējiet <ph name="DEVICE_TYPE" /> ierīci ar tālruni <ph name="LINK_BEGIN" />Uzzināt vairāk<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Iegūstiet labāku videoklipu kvalitāti un paildziniet akumulatora darbības laiku. Videoklipi tiks atskaņoti tikai Cast iespējotā ekrānā.</translation>
-<translation id="4145922204387553806">Ļaujiet Asistentam rādīt informāciju par ekrānā redzamo saturu</translation>
 <translation id="4146026355784316281">Vienmēr atvērt, izmantojot sistēmas skatītāju</translation>
 <translation id="4146785383423576110">Atiestatiet un tīriet</translation>
 <translation id="4147911968024186208">Lūdzu, mēģiniet vēlreiz. Ja atkal tiek parādīta šī kļūda, sazinieties ar atbalsta dienesta pārstāvi.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Mainīt valodas</translation>
 <translation id="4301671483919369635">Šai lapai ir atļauts rediģēt failus</translation>
 <translation id="4303079906735388947">Iestatiet drošības atslēgai jaunu PIN</translation>
+<translation id="4305402730127028764">Kopēt uz ierīci <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Instalētajām lietotnēm ir jābūt ar šāda veida saturu: <ph name="CONTENT_TYPE" />.</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> KB (<ph name="NUM_KILOBYTES_LIVE" /> KB tiešsaistē)</translation>
 <translation id="4310139701823742692">Nepareizs faila formāts. Pārbaudiet PPD failu un mēģiniet vēlreiz.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Mēģiniet vēlreiz.</translation>
 <translation id="4535127706710932914">Noklusējuma profils</translation>
 <translation id="4535767533210902251">Pirkstu nospiedumu sensors atrodas tastatūras augšējā labajā stūrī. Viegli pieskarieties tam ar jebkuru pirkstu.</translation>
-<translation id="4538417792467843292">Dzēst vārdu</translation>
 <translation id="4538684596480161368">Vienmēr bloķēt smilškastē neievietotos spraudņus vietnē <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Instalēts atbilstoši uzņēmuma politikai.</translation>
 <translation id="4542520061254486227">Lasīt jūsu datus vietnēs <ph name="WEBSITE_1" /> un <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Notiek faila lasīšana...</translation>
 <translation id="5368720394188453070">Jūsu tālrunis ir bloķēts. Lai tajā ieietu, atbloķējiet to.</translation>
 <translation id="5368779022775404937">Pierakstieties vietnē <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Iespējot peles paātrinātāju</translation>
 <translation id="5370819323174483825">&amp;Atkārtoti ielādēt</translation>
 <translation id="5372529912055771682">Nodrošinātais reģistrācijas režīms netiek atbalstīts šajā operētājsistēmas versijā. Noteikti lietojiet jaunāko versiju un mēģiniet vēlreiz.</translation>
 <translation id="5372579129492968947">Atspraust paplašinājumu</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Izpildīt šajā reizē</translation>
 <translation id="5464660706533281090">Bērns šo iestatījumu nevar mainīt.</translation>
 <translation id="5466374726908360271">Ielīmēt un meklēt “<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Notiek failu kopīgošanas ierīču meklēšana</translation>
 <translation id="5471768120198416576">Sveiki! Šī ir balss jūsu teksta pārvēršanai runā.</translation>
 <translation id="5473333559083690127">Atkārtoti ievadiet jauno PIN.</translation>
 <translation id="5481941284378890518">Pievienot tuvumā esošus printerus</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Kā noklusējumu iestatiet balss izmantošanu tastatūras vietā</translation>
 <translation id="6234474535228214774">Gaida instalēšanu</translation>
 <translation id="6237816943013845465">Ļauj pielāgot ekrāna izšķirtspēju.</translation>
+<translation id="6238767809035845642">No citas ierīces kopīgotais teksts</translation>
 <translation id="6238923052227198598">Paturēt pēdējo piezīmi bloķēšanas ekrānā</translation>
 <translation id="6239558157302047471">Atkārtoti ielādēt &amp;ietvaru</translation>
 <translation id="6241530762627360640">Piekļūt informācijai par Bluetooth ierīcēm, kuras savienotas pārī ar jūsu sistēmu, un atrast tuvumā esošas Bluetooth ierīces.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Lejupielāde atcelta: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Šifrēt sinhronizētās paroles, izmantojot savu Google lietotājvārdu un paroli</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> — tiek kopīgots darbvirsmas saturs</translation>
-<translation id="6580151766480067746">ARC versija</translation>
 <translation id="6582080224869403177">Lai uzlabotu drošību, atiestatiet ierīci <ph name="DEVICE_TYPE" />.</translation>
 <translation id="6584878029876017575">Microsoft beztermiņa parakstīšana</translation>
 <translation id="6586451623538375658">Apmainīt galveno peles pogu</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Uzlabotās pareizrakstības pārbaudes ieslēgšana</translation>
 <translation id="7487969577036436319">Nav instalēts neviens komponents.</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{Atvērt visas}=1{Atvērt grāmatzīmi}zero{Atvērt visas (#)}one{Atvērt visas (#)}other{Atvērt visas (#)}}</translation>
+<translation id="7489761397368794366">Zvanīt no jūsu ierīces</translation>
 <translation id="749028671485790643"><ph name="VALUE" />. persona</translation>
 <translation id="7490813197707563893">MAC adrese</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> var apkopot visu ievadīto tekstu, tostarp privātus datus, piemēram, paroles un kredītkaršu numurus. Vai vēlaties izmantot šo paplašinājumu?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Sniegt piekļuvi printeriem</translation>
 <translation id="7510943789645525906">Tiek rādīts brīdinājums, ja izmantotā parole bija daļa no datu pārkāpuma.</translation>
 <translation id="7513029293694390567">Automātiski pierakstieties vietnēs, izmantojot saglabātos akreditācijas datus. Ja funkcija ir atspējota, apstiprināšana būs jāveic ikreiz, kad pierakstīsieties vietnē.</translation>
+<translation id="7514239104543605883">Kopēt uz jūsu ierīci</translation>
 <translation id="7514365320538308">Lejupielādēt</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Sakiet frāzi “Ok Google”</translation>
@@ -4947,6 +4949,7 @@
 <translation id="8274332263553132018">Apraidīt failu</translation>
 <translation id="8274924778568117936">Neizslēdziet un neaizveriet savu <ph name="DEVICE_TYPE" /> ierīci, kamēr notiek atjaunināšana. Pēc instalēšanas pabeigšanas jūsu <ph name="DEVICE_TYPE" /> ierīce tiks restartēta.</translation>
 <translation id="8275038454117074363">Importēt</translation>
+<translation id="8275080796245127762">Zvanīt no jūsu ierīces</translation>
 <translation id="8276560076771292512">Iztīrīt kešatmiņu un veikt stingro atkārtoto ielādi</translation>
 <translation id="8281886186245836920">Izlaist</translation>
 <translation id="8282947398454257691">uzzināt jūsu unikālo ierīces identifikatoru</translation>
@@ -5267,6 +5270,7 @@
 <translation id="8758418656925882523">Iespējot diktēšanu (rakstīšanu, izmantojot balss ievadi)</translation>
 <translation id="8759408218731716181">Nevar iestatīt vairākkārtēju pierakstīšanos.</translation>
 <translation id="8759753423332885148">Uzziniet vairāk.</translation>
+<translation id="8761945298804995673">Šis lietotājs jau pastāv.</translation>
 <translation id="8762886931014513155">Ierīcei <ph name="DEVICE_TYPE" /> nepieciešams atjauninājums</translation>
 <translation id="8763927697961133303">USB ierīce</translation>
 <translation id="8767621466733104912">Automātiski atjaunināt pārlūku Chrome visiem lietotājiem</translation>
@@ -5355,6 +5359,7 @@
 <translation id="8879284080359814990">Rādīt kā &amp;cilni</translation>
 <translation id="8879921471468674457">Atcerēties pierakstīšanās informāciju</translation>
 <translation id="8881020143150461183">Lūdzu, mēģiniet vēlreiz! Lai saņemtu tehnisko atbalstu, sazinieties ar mobilo sakaru operatoru <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Iespējot skārienpaliktņa paātrinātāju</translation>
 <translation id="8884570509232205463">Tagad jūsu ierīce tiks bloķēta plkst. <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock nav pieejams</translation>
 <translation id="8888253246822647887">Lietotne tiks atvērta, kad jaunināšana būs pabeigta. Jaunināšana var ilgt vairākas minūtes.</translation>
diff --git a/chrome/app/resources/generated_resources_ml.xtb b/chrome/app/resources/generated_resources_ml.xtb
index 379b878..4e31d7c 100644
--- a/chrome/app/resources/generated_resources_ml.xtb
+++ b/chrome/app/resources/generated_resources_ml.xtb
@@ -143,7 +143,7 @@
 <translation id="1197979282329025000"><ph name="PRINTER_NAME" /> പ്രിന്‍ററിനായുള്ള പ്രിന്‍റര്‍ കാര്യക്ഷമതകള്‍ വീണ്ടെടുക്കുമ്പോള്‍ ഒരു പിശക് സംഭവിച്ചു. ഈ പ്രിന്‍റര്‍ <ph name="CLOUD_PRINT_NAME" /> ഉപയോഗിച്ച് രജിസ്റ്റര്‍ ചെയ്യാന്‍ കഴിയില്ല.</translation>
 <translation id="119944043368869598">എല്ലാം നീക്കുക</translation>
 <translation id="1201402288615127009">അടുത്തത്</translation>
-<translation id="1202596434010270079">കിയോസ്‌ക് അപ്ലിക്കേഷൻ അപ്‌ഡേറ്റ് ചെയ്‌തു. USB സ്‌റ്റിക്ക് നീക്കംചെയ്യുക.</translation>
+<translation id="1202596434010270079">കിയോസ്‌ക് ആപ്പ് അപ്‌ഡേറ്റ് ചെയ്‌തു. USB സ്‌റ്റിക്ക് നീക്കംചെയ്യുക.</translation>
 <translation id="120368089816228251">മ്യൂസിക് നോട്ട്</translation>
 <translation id="1205489148908752564">വൈറ്റ്‌ലിസ്റ്റ് ചെയ്‌ത ഉപയോക്താക്കളെ റീഡുചെയ്യുക, മാറ്റുക</translation>
 <translation id="1206407435587370571">നിങ്ങളുടെ Chromebook-നെ അടുത്തറിയൂ</translation>
@@ -183,7 +183,7 @@
 <translation id="1249643471736608405"><ph name="PLUGIN_NAME" /> അവസാനിപ്പിച്ചതിനാൽ ഇത് ബ്ലോക്ക് ചെയ്‌തു</translation>
 <translation id="1251366534849411931">പ്രതീക്ഷിച്ചത് ഓപ്പൺ ചുരുൾ ബ്രാക്കറ്റ്: <ph name="ERROR_LINE" /></translation>
 <translation id="1252987234827889034">പ്രൊഫൈലിൽ പ്രശ്‌നമുണ്ടായി</translation>
-<translation id="1254593899333212300">ഡയറക്ട് ഇന്‍റര്‍നെറ്റ് കണക്ഷന്‍</translation>
+<translation id="1254593899333212300">നേരിട്ടുള്ള ഇന്‍റര്‍നെറ്റ് കണക്ഷന്‍</translation>
 <translation id="1260240842868558614">ദൃശ്യമാക്കുക:</translation>
 <translation id="1260451001046713751">എല്ലായ്‌പ്പോഴും <ph name="HOST" />-ല്‍‌ നിന്നുമുള്ള പോപ്പ്-‌‌‌അപ്പുകളും റീഡയറക്‌റ്റുകളും അനുവദിക്കുക</translation>
 <translation id="126156426083987769">ഡെമോ മോഡ് ഉപകരണ ലൈസൻസുകളിൽ ഒരു പ്രശ്‌നമുണ്ടായി.</translation>
@@ -232,7 +232,7 @@
 <translation id="1331977651797684645">ഇത് എന്റെ പ്രൊഫൈലായിരുന്നു.</translation>
 <translation id="133535873114485416">തിരഞ്ഞെടുത്ത ഇൻപുട്ട്</translation>
 <translation id="1338950911836659113">ഇല്ലാതാക്കുന്നു...</translation>
-<translation id="1340527397989195812">ഫയലുകളുടെ ആപ്പ് ഉപയോഗിച്ച് ഉപകരണത്തിൽ നിന്നും മീഡിയാ ബാക്കപ്പെടുക്കുക.</translation>
+<translation id="1340527397989195812">ഫയലുകളുടെ ആപ്പ് ഉപയോഗിച്ച് ഉപകരണത്തിൽ നിന്നും മീഡിയ ബാക്കപ്പ് ചെയ്യുക.</translation>
 <translation id="1341988552785875222">നിലവിലുള്ള വാൾപേപ്പർ സജ്ജീകരിച്ചത് '<ph name="APP_NAME" />' ആണ്. മറ്റൊരു വാൾപേപ്പർ തിരഞ്ഞെടുക്കുന്നതിന് മുമ്പ് നിങ്ങൾ '<ph name="APP_NAME" />' അൺഇൻസ്‌റ്റാൾ ചെയ്യേണ്ടിവന്നേക്കാം.</translation>
 <translation id="1343865611738742294">USB ഉപകരണങ്ങൾ ആക്‌സസ് ചെയ്യാൻ Linux ആപ്പുകൾക്ക് അനുമതി നൽകുക. USB ഉപകരണം നീക്കം ചെയ്‌തുകഴിഞ്ഞാൽ Linux അത് ഓർക്കില്ല.</translation>
 <translation id="1347256498747320987">അപ്‌ഡേറ്റുകളും ആപ്പുകളും ഇൻസ്റ്റാൾ ചെയ്യുക. തുടരുന്നതിലൂടെ, ഈ ഉപകരണം Google-ൽ നിന്നും നിങ്ങളുടെ സേവനദാതാവിൽ നിന്നും ഉപകരണ നിർമ്മാതാവിൽ നിന്നും, ഒരുപക്ഷേ സെല്ലുലാർ ഡാറ്റ ഉപയോഗിച്ച്, അപ്‌ഡേറ്റുകളും ആപ്പുകളും സ്വമേധയാ ഡൗൺലോഡ് ചെയ്‌ത് ഇൻസ്‌റ്റാൾ ചെയ്യുന്നത് നിങ്ങൾ അംഗീകരിക്കുന്നു. ഈ ആപ്പുകളിൽ ചിലത് 'ആപ്പ് വഴി വാങ്ങൽ' സൗകര്യം നൽകിയേക്കാം. <ph name="BEGIN_LINK1" />കൂടുതലറിയുക<ph name="END_LINK1" /></translation>
@@ -273,7 +273,7 @@
 <translation id="1406500794671479665">സ്ഥിരീകരിക്കുന്നു...</translation>
 <translation id="140723521119632973">സെല്ലുലാൽ നെറ്റ്‌വർക്ക് സജീവമാക്കൽ</translation>
 <translation id="1407489512183974736">മധ്യഭാഗത്ത് മുറിക്കുക</translation>
-<translation id="1408504635543854729">ഫയലുകൾ ആപ്പിലെ ഉപകരണ ഉള്ളടക്കം അടുത്തറിയുക. ഒരു അഡ്‌മിൻ ഈ ഉള്ളടക്കം നിയന്ത്രിക്കുന്നതിനാൽ അതിൽ മാറ്റം വരുത്താനാകില്ല.</translation>
+<translation id="1408504635543854729">'ഫയലുകൾ' ആപ്പിലെ ഉപകരണ ഉള്ളടക്കം അടുത്തറിയുക. ഒരു അഡ്‌മിൻ, ഉള്ളടക്കം നിയന്ത്രിതമാക്കിയതിനാൽ അതിൽ മാറ്റം വരുത്താനാകില്ല.</translation>
 <translation id="1410197035576869800">ആപ്പ് ഐക്കൺ</translation>
 <translation id="1410616244180625362">നിങ്ങളുടെ ക്യാമറ ആക്‌സസ് ചെയ്യുന്നതിന് <ph name="HOST" />-നെ അനുവദിക്കുന്നത് തുടരുക</translation>
 <translation id="1414648216875402825">നിങ്ങൾ പുരോഗതിയിലുള്ള സവിശേഷതകൾ അടങ്ങിയ <ph name="PRODUCT_NAME" />-ന്റെ അസ്ഥിരമായ പതിപ്പിലേക്ക് അപ്‌ഡേറ്റ് ചെയ്യുന്നു. ക്രാഷുകളും അപ്രതീക്ഷിത ബഗ്ഗുകളും ഉണ്ടാകും. കരുതലോടെ മുന്നോട്ടുപോകുക.</translation>
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">നിങ്ങളുടെ എല്ലാ കമ്പ്യൂട്ടറുകളിലും വിപുലീകരണങ്ങൾ ലഭിക്കാൻ, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">സുരക്ഷാ കീയിലെ പിൻ ഉൾപ്പെടെയുള്ള എല്ലാ ഡാറ്റയും ഇത് മായ്‌ക്കും</translation>
 <translation id="1475502736924165259">മറ്റ് വിഭാഗങ്ങളിലൊന്നും യോജിക്കാത്ത സര്‍‌ട്ടിഫിക്കറ്റുകള്‍‌ നിങ്ങളുടെ ഫയലിലുണ്ട്</translation>
+<translation id="1476088332184200792">നിങ്ങളുടെ ഉപകരണത്തിലേക്ക് പകർത്തുക</translation>
 <translation id="1476607407192946488">&amp;ഭാഷ ക്രമീകരണം</translation>
 <translation id="1478340334823509079">വിശദാംശങ്ങൾ: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">ഇൻസ്റ്റലേഷൻ പ്രവർത്തനക്ഷമമാക്കിയിട്ടില്ല</translation>
@@ -522,7 +523,7 @@
 <translation id="1758018619400202187">EAP-TLS</translation>
 <translation id="17584710573359123">Chrome വെബ് സ്‌റ്റോറിൽ കാണുക</translation>
 <translation id="176193854664720708">വിരലടയാള സെന്‍സര്‍, പവര്‍ ബട്ടണിലാണ്‌ ഉള്ളത്. ഏതെങ്കിലും വിരലുകൊണ്ട് അത് മൃദുവായി സ്‌പര്‍ശിക്കുക.</translation>
-<translation id="1763046204212875858">അപ്ലിക്കേഷന്‍‌ കുറുക്കുവഴികള്‍‌ സൃഷ്‌ടിക്കുക</translation>
+<translation id="1763046204212875858">ആപ്പ് കുറുക്കുവഴികള്‍‌ സൃഷ്‌ടിക്കുക</translation>
 <translation id="1763108912552529023">പര്യവേക്ഷണം ചെയ്യുന്നത് തുടരുക</translation>
 <translation id="1763808908432309942">പുതിയൊരു ടാബിൽ തുറക്കുന്നു</translation>
 <translation id="1764226536771329714">ബീറ്റ</translation>
@@ -658,7 +659,7 @@
 <translation id="1954813140452229842">പങ്കിടൽ മൗണ്ട് ചെയ്യുന്നതിൽ പിശക്. ക്രെഡൻഷ്യലുകൾ പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="1956050014111002555">ഫയലില്‍ ഒന്നിലധികം സാക്‍ഷ്യപ്ത്രങ്ങള്‍ അടങ്ങിയിരിക്കുന്നു, അതിലൊന്നും ഇറക്കുമതി ചെയ്തില്ല:</translation>
 <translation id="1956390763342388273">"<ph name="FOLDER_PATH" />" ഫോൾഡറിൽ നിന്നുള്ള എല്ലാ ഫയലുകളും ഇത് അപ്‌ലോഡ് ചെയ്യും. നിങ്ങൾ സൈറ്റിനെ വിശ്വസിക്കുന്നുവെങ്കിൽ മാത്രം ഇത് ചെയ്യുക.</translation>
-<translation id="1962233722219655970">ഈ പേജ് നിങ്ങളുടെ കമ്പ്യൂട്ടറിൽ പ്രവർത്തിക്കാത്ത ഒരു നേറ്റീവ് ക്ലയന്റ് അപ്ലിക്കേഷൻ ഉപയോഗിക്കുന്നു.</translation>
+<translation id="1962233722219655970">ഈ പേജ് നിങ്ങളുടെ കമ്പ്യൂട്ടറിൽ പ്രവർത്തിക്കാത്ത ഒരു നേറ്റീവ് ക്ലയന്‍റ് ആപ്പ് ഉപയോഗിക്കുന്നു.</translation>
 <translation id="1963227389609234879">എല്ലാം നീക്കംചെയ്യൂ</translation>
 <translation id="1965624977906726414">പ്രത്യേക അനുമതികളൊന്നുമില്ല.</translation>
 <translation id="1969654639948595766">WebRTC ടെക്‌സ്‌റ്റ് ലോഗുകൾ (<ph name="WEBRTC_TEXT_LOG_COUNT" />)</translation>
@@ -760,7 +761,7 @@
 <translation id="212862741129535676">ആവൃത്തി നില ഒക്യുപ്പെൻസി ശതമാനം</translation>
 <translation id="212876957201860463">നിങ്ങളുടെ സെല്ലുലാർ ഉപകരണം സജ്ജീകരിക്കാൻ തയ്യാറെടുക്കുന്നു...</translation>
 <translation id="2129825002735785149">പ്ലഗിൻ അപ്ഡേറ്റ് ചെയ്യുക</translation>
-<translation id="2131077480075264">"<ph name="IMPORT_NAME" />", അനുവദിക്കാത്തതിനാൽ "<ph name="APP_NAME" />" ഇൻസ്‌റ്റാളുചെയ്യാനാവില്ല</translation>
+<translation id="2131077480075264">"<ph name="IMPORT_NAME" />", അനുവദിക്കാത്തതിനാൽ "<ph name="APP_NAME" />" ഇൻസ്‌റ്റാൾ ചെയ്യാനാവില്ല</translation>
 <translation id="21354425047973905">പിന്നുകൾ മറയ്‌ക്കുക</translation>
 <translation id="2135456203358955318">ഡോക്ക് ചെയ്‌ത മാഗ്‌നിഫയർ</translation>
 <translation id="2135787500304447609">&amp;പുനരാരംഭിക്കുക</translation>
@@ -788,7 +789,7 @@
 <translation id="2157875535253991059">ഈ പേജ് ഇപ്പോൾ പൂർണ്ണമായ സ്‌ക്രീനിലാണ്.</translation>
 <translation id="216169395504480358">Wi-Fi ചേർക്കുക...</translation>
 <translation id="2162155940152307086">നിങ്ങൾ സമന്വയിപ്പിക്കൽ ക്രമീകരണം വിടുമ്പോൾ, സമന്വയിപ്പിക്കൽ ആരംഭിക്കും</translation>
-<translation id="2163470535490402084"><ph name="DEVICE_TYPE" /> ഉപകരണത്തിൽ സൈൻ ഇൻ ചെയ്യാൻ ഇന്റർനെറ്റിലേക്ക് കണക്റ്റ് ചെയ്യുക.</translation>
+<translation id="2163470535490402084"><ph name="DEVICE_TYPE" /> ഉപകരണത്തിൽ സൈൻ ഇൻ ചെയ്യാൻ ഇന്റർനെറ്റിലേക്ക് കണക്റ്റുചെയ്യുക.</translation>
 <translation id="2166369534954157698">അജവും ആനയും ഐരാവതവും ഗരുഡനും കഠോര സ്വരം പൊഴിക്കെ ഹാരവും ഒഢ്യാണവും ഫാലത്തിൽ മഞ്ഞളും ഈറൻ കേശത്തിൽ ഔഷധ എണ്ണയുമായി ഋതുമതിയും അനഘയും ഭൂനാഥയുമായ ഉമ ദു:ഖഛവിയോടെ ഇടതു പാദം ഏന്തി നിർഝരിയിലെ ചിറ്റലകളെ ഓമനിക്കുമ്പോൾ ബാ‍ലയുടെ കൺകളിൽ നീർ ഊർന്നു വിങ്ങി.</translation>
 <translation id="2169062631698640254">ഏതുവിധേനയും സൈൻ ഇൻ ചെയ്യുക</translation>
 <translation id="2170088579611075216">VR അനുവദിച്ച് അതിൽ പ്രവേശിക്കുക</translation>
@@ -893,7 +894,7 @@
 <translation id="2301382460326681002">വിപുലീകരണ റൂട്ട് ഡയറക്‌ടറി അസാധുവാണ്.</translation>
 <translation id="23030561267973084">"<ph name="EXTENSION_NAME" />" കൂടുതൽ അനുമതികൾ അഭ്യർത്ഥിച്ചു.</translation>
 <translation id="2307462900900812319">നെറ്റ്‌വർക്ക് കോൺഫിഗർ ചെയ്യുക</translation>
-<translation id="230927227160767054">ഈ പേജ് ഒരു സേവന ഹാൻഡ്‌ലർ ഇൻസ്റ്റാൾ ചെയ്യാൻ താൽപ്പര്യപ്പെടുന്നു.</translation>
+<translation id="230927227160767054">ഈ പേജ് ഒരു സേവനം കൈകാര്യം ചെയ്യുന്ന സംവിധാനം ഇൻസ്റ്റാൾ ചെയ്യാൻ താൽപ്പര്യപ്പെടുന്നു.</translation>
 <translation id="2309620859903500144">നിങ്ങളുടെ ചലന സെൻസർ അല്ലെങ്കിൽ പ്രകാശ സെൻസർ ആക്‌സസ് ചെയ്യുന്നതിൽ നിന്ന് ഈ സൈറ്റിനെ ബ്ലോക്ക് ചെയ്‌തിരിക്കുന്നു.</translation>
 <translation id="2315414688463285945">Linux ഫയലുകൾ കോൺഫിഗർ ചെയ്യുന്നതിൽ പിശക്. വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="2315587498123194634"><ph name="DEVICE_NAME" /> എന്നതിലേക്ക് ലിങ്ക് അയയ്ക്കുക</translation>
@@ -907,7 +908,7 @@
 <translation id="2325002827435400643">ഈ സൈറ്റിന് ഓഫാക്കുക</translation>
 <translation id="2325444234681128157">പാസ്‌വേഡ് ഓർക്കുക</translation>
 <translation id="2326931316514688470">ആപ്പ് &amp;വീണ്ടും ലോഡ് ചെയ്യുക</translation>
-<translation id="2327492829706409234">അപ്ലിക്കേഷനുകൾ പ്രവർത്തനക്ഷമമാക്കുക</translation>
+<translation id="2327492829706409234">ആപ്പുകൾ പ്രാപ്‌തമാക്കുക</translation>
 <translation id="2329597144923131178">നിങ്ങളുടെ എല്ലാ ഉപകരണങ്ങളിലും ബുക്ക്‌മാർക്കുകളും ചരിത്രവും മറ്റ് ക്രമീകരണവും ലഭിക്കാൻ സൈൻ ഇൻ ചെയ്യുക.</translation>
 <translation id="2332131598580221120">സ്റ്റോറിൽ കാണുക</translation>
 <translation id="2332192922827071008">മുൻഗണനകൾ തുറക്കുക</translation>
@@ -923,7 +924,7 @@
 <translation id="2347644257713614136">Hangouts, വിദ്യാഭ്യാസത്തിനുള്ള Cast എന്നിവയുടെ ഉപയോഗത്തെ നിയന്ത്രിക്കുന്നത് Google സ്വകാര്യതാ നയമാണ്.</translation>
 <translation id="2348176352564285430">ആപ്പ്: <ph name="ARC_PROCESS_NAME" /></translation>
 <translation id="2350133097354918058">റീലോഡ് ചെയ്‌തു</translation>
-<translation id="2350182423316644347">അപ്ലിക്കേഷൻ സമാരംഭിക്കുന്നു...</translation>
+<translation id="2350182423316644347">ആപ്പ് സമാരംഭിക്കുന്നു...</translation>
 <translation id="2350796302381711542"><ph name="REPLACED_HANDLER_TITLE" /> എന്നതിനുപകരം എല്ലാ <ph name="PROTOCOL" /> ലിങ്കുകളും തുറക്കാൻ <ph name="HANDLER_HOSTNAME" /> എന്നതിനെ അനുവദിക്കണോ?</translation>
 <translation id="2351266942280602854">ഭാഷയും ടൈപ്പുചെയ്യലും</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">സിസ്റ്റം ഡയലോഗ് ഉപയോഗിച്ച് പ്രിന്റ് ചെയ്യുക... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">അയയ്‌ക്കുന്നതിന് മുമ്പ് ചോദിക്കുക (ശുപാർശചെയ്‌തത്)</translation>
 <translation id="2384436799579181135">ഒരു പിശക് സംഭവിച്ചു. നിങ്ങളുടെ പ്രിന്‍റർ പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക.</translation>
-<translation id="2386926718981642523">ഏതുസമയത്തും "Ok Google" എന്ന് പറഞ്ഞ് നിങ്ങളുടെ അസിസ്‌റ്റന്‍റ് ആക്‌സസ് ചെയ്യൂ</translation>
 <translation id="2387458720915042159">പ്രോക്‌സി കണക്ഷൻ തരം</translation>
 <translation id="2391419135980381625">സാധാരണ ഫോണ്ട്</translation>
 <translation id="2392369802118427583">സജീവമാക്കുക</translation>
@@ -1048,7 +1048,7 @@
 <translation id="252219247728877310">ഘടകഭാഗം അപ്‌ഡേറ്റു‌ചെയ്‌തിട്ടില്ല</translation>
 <translation id="2522791476825452208">വളരെ അടുത്ത്</translation>
 <translation id="2523184218357549926">Google-ൽ നിങ്ങൾ സന്ദർശിക്കുന്ന പേജുകളുടെ URL-കൾ അയയ്ക്കുന്നു</translation>
-<translation id="2525250408503682495">ക്രിപ്റ്റോനൈറ്റ്! കിയോസ്‌ക് അപ്ലിക്കേഷനായുള്ള ക്രിപ്റ്റോഹോം മൗണ്ടുചെയ്യാനായില്ല.</translation>
+<translation id="2525250408503682495">ക്രിപ്റ്റോനൈറ്റ്! കിയോസ്‌ക് ആപ്പിനായുള്ള ക്രിപ്റ്റോഹോം മൗണ്ട് ചെയ്യാനായില്ല.</translation>
 <translation id="2526277209479171883">ഇൻസ്‌റ്റാൾ ചെയ്‌ത് തുടരുക</translation>
 <translation id="2526590354069164005">ഡെസ്ക്‌ടോപ്പ്</translation>
 <translation id="2526619973349913024">അപ്ഡേറ്റിനായി പരിശോധിക്കുക</translation>
@@ -1132,7 +1132,7 @@
 <translation id="2653275834716714682">ടെക്‌സ്‌റ്റ് പകരംവയ്‌ക്കൽ</translation>
 <translation id="2653659639078652383">സമര്‍പ്പിക്കൂ</translation>
 <translation id="265390580714150011">ഫീല്‍‌ഡ് മൂല്യം</translation>
-<translation id="2654166010170466751">പേയ്‌മെന്റ് ഹാൻഡ്‌ലറുകളെ ഇൻസ്റ്റാൾ ചെയ്യാൻ സൈറ്റുകളെ അനുവദിക്കുന്നു</translation>
+<translation id="2654166010170466751">പേയ്‌മെന്റ് കൈകാര്യം ചെയ്യുന്ന സംവിധാനങ്ങൾ ഇൻസ്റ്റാൾ ചെയ്യാൻ സൈറ്റുകളെ അനുവദിക്കുന്നു</translation>
 <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />ഉപകരണത്തിന് അനുസരിച്ച് ഫീച്ചറുകൾ വ്യത്യാസപ്പെടും</translation>
 <translation id="2660779039299703961">ഇവന്റ്</translation>
 <translation id="266079277508604648">പ്രിന്‍റർ കണക്റ്റ് ചെയ്യാനാവുന്നില്ല. പ്രിന്‍റർ ഓണാണോ എന്നും വൈഫൈയോ USB-യോ ഉപയോഗിച്ച് Chromebook-ലേക്ക് കണക്റ്റ് ചെയ്‌‌തിട്ടുണ്ടോ എന്നും പരിശോധിക്കുക.</translation>
@@ -1220,7 +1220,7 @@
 <translation id="2773288106548584039">പഴയ ബ്രൗസർ പിന്തുണ</translation>
 <translation id="2773802008104670137">ഇത്തരത്തിലുള്ള ഫയൽ നിങ്ങളുടെ കമ്പ്യൂട്ടറിനെ കേടാക്കാനിടയുണ്ട്.</translation>
 <translation id="2775104091073479743">വിരലടയാളങ്ങൾ എഡിറ്റുചെയ്യുക</translation>
-<translation id="2776441542064982094">നെറ്റ്‌വർക്കിൽ രജിസ്റ്റർ ചെയ്യാൻ ഉപകരണങ്ങളൊന്നും ലഭ്യമല്ലാത്തതുപോലെ തോന്നുന്നു. നിങ്ങളുടെ ഉപകരണം ഓണായിരിക്കുകയും ഇന്റർനെറ്റിൽ കണക്റ്റ് ചെയ്‌തിട്ടുമുണ്ടെങ്കിൽ, അതിന്റെ നിർദ്ദേശ മാനുവലിലെ നിർദ്ദേശങ്ങൾ ഉപയോഗിച്ച് രജിസ്റ്റർ ചെയ്യുന്നത് പരീക്ഷിക്കുക.</translation>
+<translation id="2776441542064982094">നെറ്റ്‌വർക്കിൽ രജിസ്റ്റർ ചെയ്യാൻ ഉപകരണങ്ങളൊന്നും ലഭ്യമല്ലാത്തതുപോലെ തോന്നുന്നു. നിങ്ങളുടെ ഉപകരണം ഓണായിരിക്കുകയും ഇന്റർനെറ്റിൽ കണക്റ്റുചെയ്‌തിട്ടുമുണ്ടെങ്കിൽ, അതിന്റെ നിർദ്ദേശ മാനുവലിലെ നിർദ്ദേശങ്ങൾ ഉപയോഗിച്ച് രജിസ്റ്റർ ചെയ്യുന്നത് പരീക്ഷിക്കുക.</translation>
 <translation id="2780009105947267877">Plugin VM സജ്ജീകരിക്കുന്നു...</translation>
 <translation id="2781692009645368755">Google Pay</translation>
 <translation id="2783298271312924866">ഡൗൺലോഡുചെയ്‌തു</translation>
@@ -1338,6 +1338,7 @@
 <translation id="2941112035454246133">താഴ്ന്ന</translation>
 <translation id="2942560570858569904">കാത്തിരിക്കുന്നു...</translation>
 <translation id="2942581856830209953">ഈ പേജ് ഇഷ്‌ടാനുസൃതമാക്കുക</translation>
+<translation id="294308617863380348">മൂന്നാം കക്ഷി കുക്കികൾ ഉൾപ്പെടെ</translation>
 <translation id="2944060181911631861">ഉപയോഗവും പ്രശ്‌നനിർണ്ണയവുമായി ബന്ധപ്പെട്ട ഡാറ്റ അയയ്ക്കുക. പ്രശ്‌നനിർണ്ണയം, ഉപകരണം, ആപ്പ് ഉപയോഗം എന്നിവയുമായി ബന്ധപ്പെട്ട ഡാറ്റ സ്വയമേവ Google-ന് അയച്ച്, നിങ്ങളുടെ Android അനുഭവം മെച്ചപ്പെടുത്താൻ സഹായിക്കുക. സിസ്‌റ്റം, ആപ്പ് സ്ഥിരത, മറ്റ് മെച്ചപ്പെടുത്തൽ എന്നിവയ്ക്ക് ഇത് സഹായിക്കും. ചില സംഗ്രഹ ഡാറ്റ, Google ആപ്പുകളെയും Android ഡെവലപ്പർമാരെപ്പോലുള്ള പങ്കാളികളെയും സഹായിക്കുകയും ചെയ്യും. നിങ്ങളുടെ അധിക വെബ്, ആപ്പ് ആക്റ്റിവിറ്റി ക്രമീകരണം ഓണാക്കിയിട്ടുണ്ടെങ്കിൽ, ഈ ഡാറ്റ നിങ്ങളുടെ Google അക്കൗണ്ടിൽ സംരക്ഷിക്കപ്പെട്ടേക്കാം. <ph name="BEGIN_LINK1" />കൂടുതലറിയുക<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">കണക്ഷൻ ചേർക്കുക</translation>
 <translation id="2948300991547862301"><ph name="PAGE_TITLE" /> എന്നതിലേക്ക് പോകുക</translation>
@@ -1352,7 +1353,6 @@
 <translation id="2961695502793809356">മുന്നോട്ട് പോകാൻ ക്ലിക്ക് ചെയ്യുക, ചരിത്രം കാണാന്‍ ഹോള്‍ഡ് ചെയ്യുക</translation>
 <translation id="2963151496262057773">ഇനിപ്പറയുന്ന പ്ലഗിൻ പ്രതികരിക്കാത്തതാണ്: <ph name="PLUGIN_NAME" />അത് നിർത്തണോ?</translation>
 <translation id="2966937470348689686">Android മുൻഗണനകൾ മാനേജുചെയ്യുക</translation>
-<translation id="2972557485845626008">ഫേംവെയര്‍</translation>
 <translation id="2972581237482394796">&amp;വീണ്ടും ചെയ്യുക</translation>
 <translation id="2973324205039581528">സൈറ്റ് മ്യൂട്ട് ചെയ്യുക</translation>
 <translation id="2977480621796371840">ഗ്രൂപ്പിൽ നിന്ന് നീക്കം ചെയ്യുക</translation>
@@ -1600,7 +1600,7 @@
 <translation id="3368922792935385530">ബന്ധിപ്പിച്ചു</translation>
 <translation id="3369624026883419694">റിസോള്‍വിംഗ് ഹോസ്റ്റ്...</translation>
 <translation id="3371140690572404006">USB-C ഉപകരണം (വലതുവശത്ത് മുന്നിലെ പോർട്ട്)</translation>
-<translation id="337286756654493126">നിങ്ങൾ അപ്ലിക്കേഷനിൽ തുറക്കുന്ന ഫോൾഡറുകൾ റീഡുചെയ്യുക</translation>
+<translation id="337286756654493126">നിങ്ങൾ ആപ്പിൽ തുറക്കുന്ന ഫോൾഡറുകൾ റീഡ് ചെയ്യുക</translation>
 <translation id="3378572629723696641">ഈ വിപുലീകരണം കേടായിരിക്കാം.</translation>
 <translation id="337920581046691015"><ph name="PRODUCT_NAME" /> ഇന്‍സ്റ്റാള്‍ ചെയ്യും.</translation>
 <translation id="3380365263193509176">അജ്ഞാതമായ പിശക്</translation>
@@ -1610,7 +1610,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">സെപ്പറേറ്റര്‍</translation>
 <translation id="3387614642886316601">മെച്ചപ്പെട്ട അക്ഷരത്തെറ്റ് പരിശോധന ഉപയോഗിക്കുക</translation>
-<translation id="3393352139658145068">ആരെങ്കിലും “Ok Google” എന്ന് പറയുമ്പോൾ അസിസ്‌റ്റന്‍റ് സജീവമാക്കുക. ബാറ്ററി ചാർജ് ലാഭിക്കാൻ, നിങ്ങളുടെ ഉപകരണം ഒരു ഊർജ്ജ സ്രോതസുമായി കണക്‌റ്റ് ചെയ്യുമ്പോൾ മാത്രം “Ok Google” ഓണാക്കുക.</translation>
 <translation id="3396800784455899911">"അംഗീകരിച്ച് തുടരുക" ബട്ടൺ ക്ലിക്ക് ചെയ്യുക വഴി, ഈ Google സേവനങ്ങൾക്കായി മുകളിൽ വിവരിച്ചിട്ടുള്ള പ്രോസസിംഗിന് നിങ്ങൾ സമ്മതിക്കുകയാണ്.</translation>
 <translation id="3399432415385675819">അറിയിപ്പുകൾ പ്രവർത്തനരഹിതമാകും</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> ഹേർട്‌സ്) - മിശ്രമാക്കിയത്</translation>
@@ -1729,7 +1728,7 @@
 <translation id="3559262020195162408">ഉപകരണത്തിൽ നയം ഇൻസ്‌റ്റാൾ ചെയ്യാനായില്ല.</translation>
 <translation id="3560034655160545939">&amp;അക്ഷരത്തെറ്റ് പരിശോധന</translation>
 <translation id="3562423906127931518">ഈ പ്രക്രിയയ്ക്ക് കുറച്ച് സമയമെടുത്തേക്കാം. Linux കണ്ടെയ്‌നർ സജ്ജീകരിക്കുന്നു.</translation>
-<translation id="3563432852173030730">കിയോസ്‌ക് അപ്ലിക്കേഷൻ ഡൗൺലോഡുചെയ്യാനായില്ല.</translation>
+<translation id="3563432852173030730">കിയോസ്‌ക് ആപ്പ് ഡൗൺലോഡ് ചെയ്യാനായില്ല.</translation>
 <translation id="3564334271939054422">നിങ്ങൾ ഉപയോഗിക്കുന്ന Wi-Fi (<ph name="NETWORK_ID" />) അതിന്റെ ലോഗിൻ പേജ് സന്ദർശിക്കാൻ നിങ്ങളോട് ആവശ്യപ്പെടാം.</translation>
 <translation id="3564848315152754834">USB സുരക്ഷാ കീ</translation>
 <translation id="3566721612727112615">സൈറ്റുകൾ ചേർത്തിട്ടില്ല</translation>
@@ -1771,6 +1770,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> എന്നത് കാണിക്കുക</translation>
 <translation id="3613422051106148727">പുതിയ ടാബിൽ &amp;തുറക്കുക</translation>
 <translation id="3615073365085224194">വിരലടയാള സെൻസറിൽ സ്‌പർശിക്കുക</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> സ്‌കാൻ ചെയ്യുകയാണ്.</translation>
 <translation id="3616741288025931835">&amp;ബ്രൌസിംഗ് ഡാറ്റ ഇല്ലാതാക്കുക...</translation>
 <translation id="3617891479562106823">പശ്ചാത്തലങ്ങൾ ലഭ്യമല്ല. പിന്നീട് വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="3619115746895587757">കാപ്പുചീനോ</translation>
@@ -1824,7 +1824,7 @@
 <translation id="3683023058278427253">നിങ്ങളുടെ ‌ഡൊമെയ്‌നിനായി ഞങ്ങൾ ഒന്നിലധികം ലൈസൻസ് ‌തരങ്ങൾ കണ്ടെത്തി. തുടരാൻ ഒന്ന് ‌തിരഞ്ഞെടുക്കുക.</translation>
 <translation id="3683524264665795342"><ph name="APP_NAME" /> സ്‌ക്രീൻ പങ്കിടൽ അഭ്യർത്ഥന</translation>
 <translation id="368789413795732264">ഫയല്‍ റൈറ്റ് ചെയ്യാന്‍ ശ്രമിക്കുന്നതിനിടയില്‍ ഒരു പിശക് സംഭവിച്ചു: <ph name="ERROR_TEXT" /> .</translation>
-<translation id="3688507211863392146">അപ്ലിക്കേഷനിൽ നിങ്ങൾ തുറക്കുന്ന ഫയലുകളിലും ഫോൾഡറുകളിലും റൈറ്റുചെയ്യുക.</translation>
+<translation id="3688507211863392146">ആപ്പിൽ നിങ്ങൾ തുറക്കുന്ന ഫയലുകളിലും ഫോൾഡറുകളിലും റൈറ്റ് ചെയ്യുക.</translation>
 <translation id="3688526734140524629">ചാനൽ മാറ്റുക</translation>
 <translation id="3688578402379768763">അപ്‌ടുഡാറ്റാണ്</translation>
 <translation id="3691231116639905343">കീബോഡ് ആപ്പുകൾ</translation>
@@ -1845,7 +1845,7 @@
 <translation id="3709244229496787112">ഡൗൺലോഡ് ചെയ്യൽ പൂർത്തിയാകുന്നതിന് മുമ്പ് ബ്രൗസർ ഷട്ട്‌ഡൗൺ ചെയ്‌തു.</translation>
 <translation id="3711931198657368127">ഒട്ടിച്ച്, <ph name="URL" /> എന്നതിലേക്ക് പോവുക</translation>
 <translation id="3712050472459130149">അക്കൗണ്ട് അപ്ഡേറ്റ് ആവശ്യമാണ്</translation>
-<translation id="3712217561553024354">മൊബൈല്‍ ഡാറ്റാ കണക്ഷൻ ഉള്ളതും നിങ്ങളുടെ Google അക്കൗണ്ടുള്ളതുമായ മറ്റ് ഉപകരണങ്ങളെ കണ്ടെത്തുന്നതിന് ഈ ഉപകരണത്തെ അനുവദിക്കുക</translation>
+<translation id="3712217561553024354">നിങ്ങളുടെ Google അക്കൗണ്ടുള്ളതും മൊബൈല്‍ ഡാറ്റാ കണക്ഷൻ ഉള്ളതുമായ മറ്റ് ഉപകരണങ്ങളെ കണ്ടെത്തുന്നതിന് ഈ ഉപകരണത്തെ അനുവദിക്കുക</translation>
 <translation id="3712897371525859903">പേജ് &amp;ഇതായി സംരക്ഷിക്കുക...</translation>
 <translation id="371300529209814631">പിന്നിലേക്ക്/മുമ്പോട്ട്</translation>
 <translation id="3713047097299026954">ഈ സുരക്ഷാ കീയിൽ സൈൻ ഇൻ ഡാറ്റയൊന്നുമില്ല</translation>
@@ -1885,7 +1885,6 @@
 <translation id="3759933321830434300">വെബ് പേജുകളുടെ ഭാഗങ്ങൾ തടയുക</translation>
 <translation id="3760460896538743390">&amp;പശ്ചാത്തല പേജ് പരിശോധിക്കുക</translation>
 <translation id="37613671848467444">&amp;അദൃശ്യ വിന്‍ഡോയില്‍ തുറക്കുക</translation>
-<translation id="3764314093345384080">വിശദമായ ബിൽഡ് വിവരം</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{USB ഉപകരണവുമായി ആശയവിനിമയം നടത്തുക}other{C # USBഉപകരണങ്ങളുമായി ആശയവിനിമയം നടത്തുക}}</translation>
 <translation id="3765246971671567135">ഓഫ്‌ലൈൻ ഡെമോ മോഡ് നയം വായിക്കാനായില്ല.</translation>
 <translation id="3768037234834996183">നിങ്ങളുടെ മുൻഗണനകൾ സമന്വയിപ്പിക്കുന്നു...</translation>
@@ -1905,7 +1904,7 @@
 <translation id="3785308913036335955">അപ്ലിക്കേഷനുകളുടെ കുറുക്കുവഴി കാണിക്കുക</translation>
 <translation id="3785727820640310185">ഈ സൈറ്റിനായി സംരക്ഷിച്ച പാസ്‌വേഡുകൾ</translation>
 <translation id="3788401245189148511">ഇത് ആക്‌സ്സുചെയ്യാൻ താൽപ്പര്യപ്പെടുന്നത്:</translation>
-<translation id="3789841737615482174">ഇന്‍സ്റ്റാളുചെയ്യുക</translation>
+<translation id="3789841737615482174">ഇന്‍സ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="379082410132524484">നിങ്ങളുടെ കാർഡ്‌ കാലഹരണപ്പെട്ടു</translation>
 <translation id="3792890930871100565">പ്രിന്ററുകൾ വിച്ഛേദിക്കുക</translation>
 <translation id="3796648294839530037">പ്രിയപ്പെട്ട നെറ്റ്‌വർക്കുകൾ:</translation>
@@ -1942,7 +1941,7 @@
 <translation id="3829765597456725595">SMB ഫയൽ പങ്കിടൽ</translation>
 <translation id="3831436149286513437">Google ഡ്രൈവ് തിരയൽ നിർദ്ദേശങ്ങൾ</translation>
 <translation id="383161972796689579">പുതിയ ഉപയോക്താക്കളെ ചേർക്കുന്നത് ഈ ഉപകരണത്തിന്റെ ഉടമ പ്രവർത്തനരഹിതമാക്കി</translation>
-<translation id="3834775135533257713">"<ph name="INSTALLED_APP_NAME" />" ആപ്പുമായി യോജിക്കാത്തതിനാൽ "<ph name="TO_INSTALL_APP_NAME" />" അപ്ലിക്കേഷൻ ചേർക്കാനായില്ല.</translation>
+<translation id="3834775135533257713">"<ph name="INSTALLED_APP_NAME" />" ആപ്പുമായി യോജിക്കാത്തതിനാൽ "<ph name="TO_INSTALL_APP_NAME" />" ആപ്പ് ചേർക്കാനായില്ല.</translation>
 <translation id="3835522725882634757">ക്ഷമിക്കണം! ഈ സെർവർ അയയ്‌ക്കുന്ന ഡാറ്റ <ph name="PRODUCT_NAME" /> മനസിലാക്കാനാവുന്നില്ല. <ph name="BEGIN2_LINK" />റോ ലിസ്‌റ്റിംഗ്<ph name="END2_LINK" /> ഉൾപ്പെടെയുള്ള <ph name="BEGIN_LINK" />ബഗ് റിപ്പോർട്ട് ചെയ്യുക<ph name="END_LINK" />.</translation>
 <translation id="3838085852053358637">വിപുലീകരണം ലോഡ് ചെയ്യാനായില്ല</translation>
 <translation id="3838486795898716504">കൂടുതൽ <ph name="PAGE_TITLE" /></translation>
@@ -2165,7 +2164,6 @@
 <translation id="4138267921960073861">പ്രവേശന സ്ക്രീനില്‍ ഫോട്ടോകളും ഉപയോക്തൃനാമങ്ങളും  കാണിക്കുക</translation>
 <translation id="4142052906269098341">നിങ്ങളുടെ ഫോൺ ഉപയോഗിച്ച് <ph name="DEVICE_TYPE" /> അൺലോക്ക് ചെയ്യുക. <ph name="LINK_BEGIN" />കൂടുതലറിയുക<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">മികച്ച ഗുണമേന്മയുള്ള വീഡിയോ നേടുകയും ബാറ്ററി ലൈഫ് കൂട്ടുകയും ചെയ്യുക. നിങ്ങളുടെ Cast ചെയ്യാൻ പ്രാപ്തിയുള്ള സ്ക്രീനിൽ മാത്രം വീഡിയോ പ്ലേ ചെയ്യും.</translation>
-<translation id="4145922204387553806">നിങ്ങളുടെ സ്ക്രീനിൽ എന്താണുള്ളതെന്നതുമായി ബന്ധപ്പെട്ട വിവരം കാണിക്കാൻ അസിസ്‌റ്റന്‍റിനെ അനുവദിക്കുക</translation>
 <translation id="4146026355784316281">എപ്പോഴും സിസ്‌റ്റം വ്യൂവറിൽ തുറക്കുക</translation>
 <translation id="4146785383423576110">റീസെറ്റ് ചെയ്‌ത ശേഷം മായ്ക്കുക</translation>
 <translation id="4147911968024186208">വീണ്ടും ശ്രമിക്കുക. ഈ പിശക് വീണ്ടും കാണുകയാണെങ്കിൽ, നിങ്ങളുടെ പിന്തുണാ പ്രതിനിധിയെ ബന്ധപ്പെടുക.</translation>
@@ -2252,6 +2250,7 @@
 <translation id="4297322094678649474">ഭാഷകൾ മാറ്റുക</translation>
 <translation id="4301671483919369635">ഫയലുകൾ എഡിറ്റ് ചെയ്യാൻ ഈ പേജിനെ അനുവദിച്ചിരിക്കുന്നു</translation>
 <translation id="4303079906735388947">നിങ്ങളുടെ സുരക്ഷാ കോഡിന് പുതിയൊരു പിൻ സജ്ജീകരിക്കുക</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" /> എന്നതിലേക്ക് പകർത്തുക</translation>
 <translation id="4306119971288449206">"<ph name="CONTENT_TYPE" />" എന്ന ഉള്ളടക്ക തരത്തിനൊപ്പം ആപ്പുകൾ നൽകേണ്ടതുണ്ട്</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K ലൈവ്)</translation>
 <translation id="4310139701823742692">ഫയൽ, തെറ്റായ ഫോർമാറ്റിലാണ്. PPD ഫയൽ പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക.</translation>
@@ -2268,7 +2267,7 @@
 <translation id="4332976768901252016">രക്ഷാകർതൃ നിയന്ത്രണങ്ങൾ സജ്ജീകരിക്കുക</translation>
 <translation id="4333854382783149454">RSA എന്‍‌ക്രിപ്‌ഷനോടുകൂടിയ PKCS #1 SHA-1</translation>
 <translation id="4336979451636460645">നെറ്റ്‌വർക്ക് ലോഗുകൾക്കായി ഇത് കാണുക: <ph name="DEVICE_LOG_LINK" /></translation>
-<translation id="4340515029017875942">"<ph name="EXTENSION_NAME" />" അപ്ലിക്കേഷൻ ഉപയോഗിച്ച് <ph name="ORIGIN" /> എന്നത് ആശയവിനിമയം നടത്താൻ താൽപ്പര്യപ്പെടുന്നു</translation>
+<translation id="4340515029017875942">"<ph name="EXTENSION_NAME" />" ആപ്പ് ഉപയോഗിച്ച് <ph name="ORIGIN" /> എന്നത് ആശയവിനിമയം നടത്താൻ താൽപ്പര്യപ്പെടുന്നു</translation>
 <translation id="4345587454538109430">ക്രമീകരിക്കുക...</translation>
 <translation id="4345732373643853732">ഉപയോക്തൃനാമം സെർവറിന് പരിചയമില്ല</translation>
 <translation id="4348766275249686434">പിശകുകൾ ശേഖരിക്കുക</translation>
@@ -2387,7 +2386,6 @@
 <translation id="4534661889221639075">വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="4535127706710932914">ഡിഫോൾട്ട്  പ്രൊഫൈൽ</translation>
 <translation id="4535767533210902251">വിരലടയാള സെൻസർ നിങ്ങളുടെ കീബോർഡിൽ മുകളിലെ വലതുഭാഗത്തെ കീയാണ്. ഏതെങ്കിലും വിരലുകൊണ്ട് അതിൽ മൃദുവായി സ്‌പർശിക്കുക.</translation>
-<translation id="4538417792467843292">പദം ഇല്ലാതാക്കുക</translation>
 <translation id="4538684596480161368"><ph name="HOST" /> എന്നതില്‍ എല്ലായ്‌പ്പോഴും ഈ അൺസാൻഡ്‌ബോക്‌സ് ചെയ്‌ത പ്ലഗിന്നുകളെ തടയുക</translation>
 <translation id="4538792345715658285">എന്റർപ്രൈസ് നയത്തിനാൽ ഇൻസ്റ്റാൾ ചെയ്യപ്പെട്ടത്</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" />, <ph name="WEBSITE_2" /> എന്നിവയിലെ നിങ്ങളുടെ വിവരം വായിക്കുക</translation>
@@ -2538,7 +2536,7 @@
 <translation id="4763830802490665879">ഒന്നിലധികം സൈറ്റുകളിൽ നിന്നുള്ള കുക്കികൾ പുറത്തുകടക്കുമ്പോൾ മായ്‌ക്കപ്പെടും.</translation>
 <translation id="4765582662863429759">ഫോണിൽ നിന്ന് Chromebook-ലേക്ക് ടെക്‌സ്‌റ്റുകൾ കൈമാറാൻ Android മെസേജിനെ അനുവദിക്കുന്നു</translation>
 <translation id="4768332406694066911">നിങ്ങള്‍‌ക്ക് ഈ ഓര്‍‌ഗനൈസേഷനുകളില്‍‌ നിന്ന് നിങ്ങളെ തിരിച്ചറിയുന്ന സര്‍‌ട്ടിഫിക്കറ്റുകളുണ്ട്</translation>
-<translation id="4774824109040330448">നിങ്ങളുടെ ഫോണിലെ അനുയോജ്യമായ Authenticator ആപ്പ് ഉപയോഗിച്ച് QR കോഡ് സ്‌കാൻ ചെയ്യുക.</translation>
+<translation id="4774824109040330448">നിങ്ങളുടെ ഫോണിലെ അനുയോജ്യമായ പരിശോധിച്ചുറപ്പിക്കൽ ആപ്പ് ഉപയോഗിച്ച് QR കോഡ് സ്‌കാൻ ചെയ്യുക.</translation>
 <translation id="4776146737004271126">Android ക്രമീകരണം തുറക്കുക</translation>
 <translation id="4776917500594043016"><ph name="USER_EMAIL_ADDRESS" /> എന്നതിനായുള്ള പാസ്‌വേഡ്</translation>
 <translation id="4777825441726637019">Play സ്‌റ്റോർ</translation>
@@ -2571,7 +2569,7 @@
 <translation id="4828937774870308359">ഓസ്‌ട്രേലിയൻ</translation>
 <translation id="4829768588131278040">പിൻ നമ്പർ സജ്ജമാക്കുക</translation>
 <translation id="4830502475412647084">OS അപ്‌ഡേറ്റ് ഇൻസ്‌റ്റാൾ ചെയ്യുന്നു</translation>
-<translation id="4830573902900904548"><ph name="NETWORK_NAME" /> ഉപയോഗിച്ച് നിങ്ങളുടെ <ph name="DEVICE_TYPE" /> ഇന്റർനെറ്റിൽ കണ‌ക്റ്റ് ചെയ്യാനാകുന്നില്ല. മറ്റൊരു നെറ്റ്‌വർക്ക് തിരഞ്ഞെടുക്കുക. <ph name="LEARN_MORE_LINK_START" />കൂടുതലറിയുക<ph name="LEARN_MORE_LINK_END" /></translation>
+<translation id="4830573902900904548"><ph name="NETWORK_NAME" /> ഉപയോഗിച്ച് നിങ്ങളുടെ <ph name="DEVICE_TYPE" /> ഇന്റർനെറ്റിൽ കണ‌ക്റ്റു‌ചെയ്യാനാകുന്നില്ല. മറ്റൊരു നെറ്റ്‌വർക്ക് തിരഞ്ഞെടുക്കുക. <ph name="LEARN_MORE_LINK_START" />കൂടുതലറിയുക<ph name="LEARN_MORE_LINK_END" /></translation>
 <translation id="4833236810053292670">Chromebook-ൽ എന്തൊക്കെയാണ് പുതിയ കാര്യങ്ങളെന്ന് കാണുക</translation>
 <translation id="4835385943915508971">അഭ്യർത്ഥിച്ച ഉറവിടത്തിലേക്ക് Chrome-ന് ആക്‌സസ് ഇല്ല.</translation>
 <translation id="4836504898754963407">ഫിംഗർപ്രിന്റുകൾ മാനേജ് ചെയ്യുക</translation>
@@ -2585,7 +2583,7 @@
 <translation id="4846680374085650406">നിങ്ങൾ ഈ ക്രമീകരണത്തിനായി അഡ്‌മിനിസ്‌ട്രേറ്ററുടെ ശുപാർശ പാലിക്കുന്നു.</translation>
 <translation id="4848518990323155912">സിം കാർഡ് ലോക്കിംഗ് പ്രവർത്തനക്ഷമമാക്കുക (മൊബൈല്‍ ഡാറ്റ ഉപയോഗിക്കാൻ പിൻ നമ്പർ ആവശ്യമാണ്)</translation>
 <translation id="4849286518551984791">കോർഡിനേറ്റഡ് യൂണിവേഴ്‌സൽ ടൈം (UTC/GMT)</translation>
-<translation id="4849517651082200438">ഇന്‍സ്റ്റാള്‍ ചെയ്യരുത്</translation>
+<translation id="4849517651082200438">ഇൻസ്റ്റാൾ ചെയ്യരുത്</translation>
 <translation id="4850669014075537160">സ്‌ക്രോൾ ചെയ്യൽ</translation>
 <translation id="4850886885716139402">കാണുക</translation>
 <translation id="4853020600495124913">&amp;പുതിയ വിന്‍‌ഡോയില്‍‌ തുറക്കുക</translation>
@@ -2673,7 +2671,7 @@
 <translation id="4964455510556214366">ക്രമീകരണം</translation>
 <translation id="4964673849688379040">പരിശോധിക്കുന്നു...</translation>
 <translation id="4965808351167763748">Hangouts Meet റൺ ചെയ്യാനായി ഈ ഉപകരണം സജ്ജമാക്കണോ?</translation>
-<translation id="496888482094675990">ഫയലുകളുടെ ആപ്പ്, നിങ്ങൾ Google ഡ്രൈവിലോ ബാഹ്യ സ്‍റ്റോറേജിലോ Chrome OS ഉപകരണത്തിലോ സംരക്ഷിച്ചിരിക്കുന്ന ഫയലുകളിലേക്ക് പെട്ടന്നുള്ള ആക്‌സസ് നൽകുന്നു.</translation>
+<translation id="496888482094675990">ഫയലുകളുടെ ആപ്പ്, നിങ്ങൾ Google ഡ്രൈവിലോ ബാഹ്യ സംഭരണത്തിലോ Chrome OS ഉപകരണത്തിലോ സംരക്ഷിച്ചിരിക്കുന്ന ഫയലുകളിലേക്ക് പെട്ടന്നുള്ള ആക്‌സസ് നൽകുന്നു.</translation>
 <translation id="4971412780836297815">പൂര്‍ത്തിയാക്കുമ്പോള്‍ തുറക്കുക</translation>
 <translation id="4972129977812092092">പ്രിന്‍റർ എഡിറ്റുചെയ്യുക</translation>
 <translation id="4972164225939028131">പാസ്‌വേഡ് തെറ്റാണ്</translation>
@@ -2731,7 +2729,7 @@
 <translation id="5053604404986157245">ക്രമരഹിതമായി സൃഷ്‌ടിച്ച TPM പാസ്‌വേഡ് ലഭ്യമല്ല. പവർവാഷിന് ശേഷം ഇത് സാധാരണമാണ്.</translation>
 <translation id="5057110919553308744">നിങ്ങൾ വിപുലീകരണം ക്ലിക്ക് ചെയ്യുമ്പോൾ</translation>
 <translation id="5061347216700970798">{NUM_BOOKMARKS,plural, =1{ഈ ഫോൾഡറിൽ ഒരു ബുക്ക്‌മാർക്ക് അടങ്ങിയിരിക്കുന്നു. ഇത് ഇല്ലാതാക്കണമെന്ന് നിങ്ങൾക്കുറപ്പാണോ?}other{ഈ ഫോൾഡറിൽ # ബുക്ക്‌മാർക്കുകൾ അടങ്ങിയിരിക്കുന്നു. ഇത് ഇല്ലാതാക്കണമെന്ന് നിങ്ങൾക്കുറപ്പാണോ?}}</translation>
-<translation id="5062930723426326933">സൈൻ ഇൻ പരാജയപ്പെട്ടു, ഇന്റർനെറ്റിൽ കണക്റ്റ് ചെയ്‌തതിനുശേഷം വീണ്ടും ശ്രമിക്കുക.</translation>
+<translation id="5062930723426326933">സൈൻ ഇൻ പരാജയപ്പെട്ടു, ഇന്റർനെറ്റിൽ കണക്റ്റുചെയ്‌തതിനുശേഷം വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="5063480226653192405">ഉപയോഗം</translation>
 <translation id="5065775832226780415">Smart Lock</translation>
 <translation id="5067399438976153555">എല്ലായ്‌പ്പോഴും ഓണാക്കുക</translation>
@@ -2839,19 +2837,19 @@
 <translation id="5234764350956374838">ബഹിഷ്‌ക്കരിക്കുക</translation>
 <translation id="5235050375939235066">ആപ്പ് അൺഇൻസ്റ്റാൾ ചെയ്യണോ?</translation>
 <translation id="5235750401727657667">പുതിയ ടാബ് തുറക്കുമ്പോൾ കാണിക്കേണ്ട പേജ് മാറ്റുക</translation>
-<translation id="5238278114306905396">"<ph name="EXTENSION_NAME" />" ആപ്പ് യാന്ത്രികമായി നീക്കംചെയ്‌തു.</translation>
+<translation id="5238278114306905396">"<ph name="EXTENSION_NAME" />" ആപ്പ് സ്വയമേവ നീക്കംചെയ്‌തു.</translation>
 <translation id="5241128660650683457">നിങ്ങൾ സന്ദർശിക്കുന്ന വെബ്‌സൈറ്റുകളിലെ എല്ലാ വിവരവും വായിക്കുക</translation>
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />" പ്രവർത്തനക്ഷമമാക്കണോ?</translation>
 <translation id="5243522832766285132">അൽപ്പസമയത്തിനുള്ളിൽ വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> ഇമെയിലിലേക്ക് സമന്വയിപ്പിക്കുന്നു</translation>
-<translation id="5246282308050205996"><ph name="APP_NAME" /> എന്നത് ക്രാഷ് ചെയ്തു. അപ്ലിക്കേഷന്‍ പുനരാംഭിക്കുന്നതിനായി ഈ ബലൂണ്‍ ക്ലിക്ക് ചെയ്യുക.</translation>
+<translation id="5246282308050205996"><ph name="APP_NAME" /> എന്നത് ക്രാഷ് ചെയ്തു. ആപ്പ് പുനരാംഭിക്കുന്നതിനായി ഈ ബലൂൺ ക്ലിക്ക് ചെയ്യുക.</translation>
 <translation id="5247051749037287028">നാമം പ്രദർശിപ്പിക്കുക (ഓപ്ഷണൽ)</translation>
 <translation id="5249624017678798539">ഡൗൺലോഡ് പൂർത്തിയാകുന്നതിന് മുമ്പ് ബ്രൗസർ ക്രാഷായി.</translation>
 <translation id="5250372599208556903">പ്രാദേശിക ഉള്ളടക്കങ്ങൾ നൽകാനായി <ph name="SEARCH_ENGINE_NAME" /> നിങ്ങളുടെ ലൊക്കേഷൻ ഉപയോഗിക്കുന്നു. നിങ്ങൾക്കിത് <ph name="SETTINGS_LINK" /> എന്നതിൽ മാറ്റാം.</translation>
 <translation id="5252456968953390977">റോമിംഗ്</translation>
 <translation id="5252653240322147470">പിൻ നമ്പർ <ph name="MAXIMUM" /> അക്കങ്ങളിൽ കുറവായിരിക്കണം</translation>
 <translation id="5254368820972107711">നീക്കംചെയ്യേണ്ട ഫയലുകൾ കാണിക്കുക</translation>
-<translation id="52550593576409946">കിയോസ്‌ക് അപ്ലിക്കേഷൻ സമാരംഭിക്കാനായില്ല.</translation>
+<translation id="52550593576409946">കിയോസ്‌ക് ആപ്പ് സമാരംഭിക്കാനായില്ല.</translation>
 <translation id="5255859108402770436">വീണ്ടും സൈൻ ഇൻ ചെയ്യുക</translation>
 <translation id="5256861893479663409">എല്ലാ സൈറ്റുകളിലും</translation>
 <translation id="5258992782919386492">ഈ ഉപകരണത്തിൽ ഇൻസ്‌റ്റാൾ ചെയ്യുക</translation>
@@ -2859,7 +2857,7 @@
 <translation id="5260508466980570042">ക്ഷമിക്കൂ, നിങ്ങളുടെ ഇമെയില്‍ അല്ലെങ്കില്‍ പാസ്‍വേഡ് പരിശോധിച്ചുറപ്പിക്കാൻ കഴിഞ്ഞില്ല. വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="5261683757250193089">വെബ് സ്‌റ്റോറിൽ തുറക്കുക</translation>
 <translation id="5264148714798105376">ഇതിന് ഒന്നോ രണ്ടോ മിനിറ്റ് എടുത്തേക്കാം.</translation>
-<translation id="5264252276333215551">കിയോസ്‌ക് മോഡിൽ നിങ്ങളുടെ ആപ്പ് സമാരംഭിക്കാൻ ഇന്‍റർനെറ്റിൽ കണക്റ്റ് ചെയ്യുക.</translation>
+<translation id="5264252276333215551">കിയോസ്‌ക് മോഡിൽ നിങ്ങളുടെ ആപ്പ് സമാരംഭിക്കാൻ ഇന്റർനെറ്റിൽ കണക്റ്റ് ചെയ്യുക.</translation>
 <translation id="5265562206369321422">ഒരു ആഴ്‌ചയിലേറെയായി ഓഫ്‌ലൈനിലാണ്</translation>
 <translation id="5265797726250773323">ഇൻസ്‌റ്റാൾ ചെയ്യുന്നതിനിടെ പിശക്</translation>
 <translation id="5266113311903163739">സര്‍ട്ടിഫിക്കേഷന്‍ അതോറിറ്റി ഇറക്കുമതി പിശക്</translation>
@@ -2915,7 +2913,7 @@
 <translation id="5336688142483283574">നിങ്ങളുടെ ചരിത്രം, <ph name="SEARCH_ENGINE" /> ആക്‌റ്റിവിറ്റി എന്നിവയിൽ നിന്നും ഈ പേജ് നീക്കം ചെയ്യപ്പെടും.</translation>
 <translation id="5337771866151525739">ഒരു മൂന്നാം കക്ഷി ഇൻസ്റ്റാളുചെയ്‌തത്.</translation>
 <translation id="5338503421962489998">പ്രാദേശിക സംഭരണം</translation>
-<translation id="5340638867532133571">പേയ്‌മെന്റ് ഹാൻഡ്‌ലറുകളെ ഇൻസ്റ്റാൾ ചെയ്യാൻ സൈറ്റുകളെ അനുവദിക്കുന്നു (ശുപാർശ ചെയ്യുന്നു)</translation>
+<translation id="5340638867532133571">പേയ്‌മെന്റ് ഹാൻഡ്‌ലറുകളെ ഇൻസ്റ്റാൾ ചെയ്യാൻ സൈറ്റുകളെ അനുവദിക്കുന്നു (നിർദേശിക്കുന്നു)</translation>
 <translation id="5341793073192892252">ഇനിപ്പറയുന്ന കുക്കികളെ ബ്ലോക്ക് ചെയ്‌തു (മൂന്നാം കക്ഷി കുക്കികളെ വേര്‍തിരിവ് ഇല്ലാതെ ബ്ലോക്ക് ചെയ്യുന്നു)</translation>
 <translation id="5341980496415249280">കാത്തിരിക്കുക, പായ്‌ക്ക് ചെയ്യുന്നു...</translation>
 <translation id="5342091991439452114">പിൻ നമ്പറിൽ <ph name="MINIMUM" /> അക്കങ്ങളെങ്കിലും വേണം</translation>
@@ -2931,6 +2929,7 @@
 <translation id="5367091008316207019">ഫയൽ റീഡുചെയ്യുന്നു..</translation>
 <translation id="5368720394188453070">നിങ്ങളുടെ ഫോൺ ലോക്കായിരിക്കുമ്പോൾ. പ്രവേശിക്കുന്നതിന് അത് അൺലോക്ക് ചെയ്യുക.</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> എന്നതിൽ സൈൻ ഇൻ ചെയ്യുക</translation>
+<translation id="5369491905435686894">മൗസ് ആക്‌സിലറേഷൻ പ്രവർത്തനക്ഷമമാക്കുക</translation>
 <translation id="5370819323174483825">&amp;വീണ്ടും ലോഡുചെയ്യുക</translation>
 <translation id="5372529912055771682">വിതരണം ചെയ്‌ത എൻറോൾമെന്റ് മോഡിനെ ഈ ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിന്റെ പതിപ്പ് പിന്തുണയ്‌ക്കുന്നില്ല. പുതിയ പതിപ്പിലാണ് നിങ്ങൾ പ്രവർത്തിക്കുന്നതെന്ന് ഉറപ്പുവരുത്തി വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="5372579129492968947">വിപുലീകരണം അൺപിൻ ചെയ്യുക</translation>
@@ -2941,7 +2940,7 @@
 <translation id="5379140238605961210">മൈക്രോഫോൺ ആക്‌സസ് തടയുന്നത് തുടരുക</translation>
 <translation id="5382591305415226340">പിന്തുണയ്‌ക്കുന്ന ലിങ്കുകൾ മാനേജുചെയ്യുക</translation>
 <translation id="5383377866517186886">Mac സിസ്‌റ്റം മുൻഗണനകളിൽ ക്യാമറ ഓഫാക്കി</translation>
-<translation id="5384883051496921101">അദൃശ്യതാ സംവിധാനത്തിനു പുറത്തുള്ള ഒരു ആപ്പുമായി ഈ സൈറ്റ് വിവരങ്ങൾ പങ്കിടാൻ പോകുന്നു.</translation>
+<translation id="5384883051496921101">അദൃശ്യ മോഡിന് പുറത്തുള്ള ഒരു ആപ്പുമായി ഈ സൈറ്റ് വിവരങ്ങൾ പങ്കിടാൻ പോകുന്നു.</translation>
 <translation id="5388885445722491159">ജോഡിയായ</translation>
 <translation id="5389237414310520250">പുതിയ ഉപയോക്താവിനെ സൃഷ്‌ടിക്കാനായില്ല. നിങ്ങളുടെ ഹാർഡ് ഡ്രൈവിലെ ഇടവും അനുമതികളും പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="5390100381392048184">ശബ്‌ദം പ്ലേ ചെയ്യാൻ സൈറ്റുകളെ അനുവദിക്കുക</translation>
@@ -3003,6 +3002,7 @@
 <translation id="5464632865477611176">ഈ സമയം പ്രവര്‍ത്തിപ്പിക്കുക</translation>
 <translation id="5464660706533281090">ഈ ക്രമീകരണം ഒരു കുട്ടി ഉപയോക്താവിന് മാറ്റാനാവില്ല.</translation>
 <translation id="5466374726908360271">ഒട്ടിച്ച്, “<ph name="SEARCH_TERMS" />” എന്നതിനായി തിരയുക</translation>
+<translation id="5468173180030470402">ഫയൽ പങ്കിടലുകൾ തിരയുന്നു</translation>
 <translation id="5471768120198416576">അവിടെയുണ്ടോ! ഞാനാണ് നിങ്ങളുടെ ടെക്‌സ്റ്റ്-ടു-സ്‌പീച്ച് വോയ്‌സ്.</translation>
 <translation id="5473333559083690127">പുതിയ പിൻ വീണ്ടും നൽകുക</translation>
 <translation id="5481941284378890518">സമീപത്തുള്ള പ്രിന്ററുകൾ ചേർക്കുക</translation>
@@ -3041,7 +3041,7 @@
 <translation id="5522156646677899028">ഈ വിപുലീകരണത്തിൽ ഗുരുതരമായ സുരക്ഷാ പ്രശ്നമടങ്ങിയിരിക്കുന്നു.</translation>
 <translation id="5525677322972469346">പുതിയ മേൽനോട്ടത്തിലുള്ള ഉപയോക്താവിനെ സൃഷ്ടിക്കുക</translation>
 <translation id="5526701598901867718">എല്ലാം (സുരക്ഷിതമല്ല)</translation>
-<translation id="5526745900034778153">സമന്വയം പുനരാരംഭിക്കാനായി വീണ്ടും സൈൻ ഇൻ ചെയ്യുക</translation>
+<translation id="5526745900034778153">സമന്വയിപ്പിക്കൽ പുനരാരംഭിക്കാനായി വീണ്ടും സൈൻ ഇൻ ചെയ്യുക</translation>
 <translation id="5527463195266282916">എക്സ്റ്റന്‍ഷന്‍ തരം താഴ്ത്തുന്നതിന് ശ്രമിച്ചു.</translation>
 <translation id="5527474464531963247">നിങ്ങൾക്ക് മറ്റൊരു നെറ്റ്‌വർക്കും തിരഞ്ഞെടുക്കാവുന്നതാണ്.</translation>
 <translation id="5530160549030561969">ഓരോ ഫീച്ചറിനുമുള്ള ക്രമീകരണം അവലോകനം ചെയ്‌ത് ആവശ്യമെങ്കിൽ അവ മാറ്റുക</translation>
@@ -3076,7 +3076,7 @@
 <translation id="556321030400250233">ലോക്കൽ അല്ലെങ്കിൽ പങ്കിട്ട ഫയൽ</translation>
 <translation id="5563234215388768762">Google-ൽ തിരയുക അല്ലെങ്കിൽ URL ടൈപ്പ് ചെയ്യുക</translation>
 <translation id="5565735124758917034">സജീവമാണ്</translation>
-<translation id="5567989639534621706">അപ്ലിക്കേഷന്‍‌ കാഷെകള്‍‌</translation>
+<translation id="5567989639534621706">ആപ്പ് കാഷെകള്‍‌</translation>
 <translation id="5568069709869097550">സൈൻ ഇൻ ചെയ്യാനായില്ല</translation>
 <translation id="5568144734023334204">Android സ്‌റ്റോറേജ്</translation>
 <translation id="5572851009514199876">ആരംഭിച്ച് Chrome-ൽ സൈൻ ഇൻ ചെയ്യുന്നതിലൂടെ, നിങ്ങൾക്ക് ഈ സൈറ്റ് ആക്‌സസ് ചെയ്യാൻ അനുവാദമുണ്ടോയെന്ന് Chrome-ന് പരിശോധിക്കാനാവും.</translation>
@@ -3108,14 +3108,14 @@
 <translation id="5605623530403479164">മറ്റ് തിരയൽ യന്ത്രങ്ങൾ</translation>
 <translation id="5605758115928394442">ഇത് നിങ്ങൾ തന്നെയാണെന്ന് സ്ഥിരീകരിക്കാൻ ഫോണിലേക്ക് ഒരു അറിയിപ്പ് അയച്ചിട്ടുണ്ട്.</translation>
 <translation id="5608580678041221894">വലുപ്പം മാറ്റുന്നയിടം ക്രമീകരിക്കാനും നീക്കാനും ചുവടെയുള്ള കീകൾ ടാപ്പുചെയ്യുക</translation>
-<translation id="5609231933459083978">അപ്ലിക്കേഷൻ അസാധുവായി തോന്നുന്നു.</translation>
+<translation id="5609231933459083978">ആപ്പ് അസാധുവായി തോന്നുന്നു.</translation>
 <translation id="5610038042047936818">ക്യാമറ മോഡിലേക്ക് മാറുക</translation>
 <translation id="5612720917913232150">നിങ്ങളുടെ കമ്പ്യൂട്ടറിന്‍റെ ലൊക്കേഷൻ ഉപയോഗിക്കാൻ <ph name="URL" /> ആഗ്രഹിക്കുന്നു</translation>
 <translation id="5612734644261457353">ക്ഷമിക്കണം, ഇപ്പോഴും നിങ്ങളുടെ പാസ്‌വേഡ് സ്ഥിരീകരിക്കാൻ കഴിഞ്ഞില്ല. ശ്രദ്ധിക്കുക: സമീപകാലത്ത് നിങ്ങൾ പാസ്‌വേഡ് മാറ്റിയിട്ടുണ്ടെങ്കിൽ സൈൻ ഔട്ട് ചെയ്‌തുകഴിഞ്ഞാൽ പുതിയ പാസ്‍വേഡ് ബാധകമാകും, പഴയ പാസ്‌വേഡ് ഇവിടെ ഉപയോഗിക്കുക.</translation>
 <translation id="5614190747811328134">ഉപയോക്തൃ അറിയിപ്പ്</translation>
 <translation id="5614553682702429503">പാസ്‌വേഡ് സംരക്ഷിക്കണോ?</translation>
 <translation id="561698261642843490">Firefox അടയ്‌ക്കുക</translation>
-<translation id="5618075537869101857">ക്ഷമിക്കണം, കിയോസ്‌ക് അപ്ലിക്കേഷൻ സമാരംഭിക്കാനായില്ല.</translation>
+<translation id="5618075537869101857">ക്ഷമിക്കണം, കിയോസ്‌ക് ആപ്പ് സമാരംഭിക്കാനായില്ല.</translation>
 <translation id="5618333180342767515">(ഇതിന് കുറച്ച് മിനിറ്റെടുത്തേയ്‌ക്കാം)</translation>
 <translation id="56197088284879152">റിമോട്ട് ഉപകരണത്തിലേക്കുള്ള കണക്ഷൻ അനുവദനീയ എണ്ണത്തിലും കൂടുതലായി: "<ph name="DEVICE_NAME" />".</translation>
 <translation id="5620568081365989559"><ph name="FOLDER_PATH" />-ലേക്ക് DevTools പൂർണ്ണമായ ആക്‌സസ് അഭ്യർത്ഥിക്കുന്നു. സെൻസിറ്റീവായ വിവരങ്ങളൊന്നും തന്നെ വെളിപ്പെടുത്തുന്നില്ലെന്ന് ഉറപ്പാക്കുക.</translation>
@@ -3369,7 +3369,7 @@
 <translation id="598472838394900788">{0,plural, =1{അദൃശ്യ മോഡ്}other{അദൃശ്യ മോഡ് (#)}}</translation>
 <translation id="5985458664595100876">അസാധുവായ URL ഫോര്‍മാറ്റ്. \\server\share, smb://server/share എന്നിവയാണ്‌ പിന്തുണയ്‌ക്കുന്ന ഫോര്‍മാറ്റുകള്‍.</translation>
 <translation id="5990386583461751448">വിവർത്തനം ചെയ്‌തു</translation>
-<translation id="599131315899248751">{NUM_APPLICATIONS,plural, =1{നിങ്ങൾക്ക് വെബ് ബ്രൗസ് ചെയ്യുന്നത് തുടരാനാകുമെന്ന് ഉറപ്പാക്കാൻ, ഈ ആപ്പ് നീക്കം ചെയ്യാൻ അഡ്‌മിനിസ്ട്രേറ്ററോട് ആവശ്യപ്പെടുക.}other{നിങ്ങൾക്ക് വെബ് ബ്രൗസ് ചെയ്യുന്നത് തുടരാനാകുമെന്ന് ഉറപ്പാക്കാൻ, ഈ ആപ്പുകൾ നീക്കം ചെയ്യാൻ അഡ്‌മിനിസ്ട്രേറ്ററോട് ആവശ്യപ്പെടുക.}}</translation>
+<translation id="599131315899248751">{NUM_APPLICATIONS,plural, =1{നിങ്ങൾക്ക് വെബ് ബ്രൗസ് ചെയ്യുന്നത് തുടരാനാകുമെന്ന് ഉറപ്പാക്കാൻ, ഈ ആപ്പ് നീക്കം ചെയ്യാൻ അഡ്‌മിനോട് ആവശ്യപ്പെടുക.}other{നിങ്ങൾക്ക് വെബ് ബ്രൗസ് ചെയ്യുന്നത് തുടരാനാകുമെന്ന് ഉറപ്പാക്കാൻ, ഈ ആപ്പുകൾ നീക്കം ചെയ്യാൻ അഡ്‌മിനോട് ആവശ്യപ്പെടുക.}}</translation>
 <translation id="5995884201513800557">നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് സംരക്ഷിക്കാൻ സുരക്ഷാ കീ സ്‌പർശിക്കുന്നത് തുടരുക.</translation>
 <translation id="5997337190805127100">സൈറ്റ് ആക്‌സസിനെക്കുറിച്ച് കൂടുതലറിയുക</translation>
 <translation id="6000758707621254961">'<ph name="SEARCH_TEXT" />' എന്നതിനായി <ph name="RESULT_COUNT" /> ഫലങ്ങള്‍</translation>
@@ -3540,6 +3540,7 @@
 <translation id="6233154960150021497">കീബോഡിന് പകരം ശബ്‌ദം ഉപയോഗിക്കുന്നത് ഡിഫോൾട്ടാക്കുക</translation>
 <translation id="6234474535228214774">ഇൻസ്‌റ്റാൾ ചെയ്യൽ പൂർത്തിയാക്കിയിട്ടില്ല</translation>
 <translation id="6237816943013845465">സ്‌ക്രീൻ റെസല്യൂഷൻ ക്രമീകരിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു</translation>
+<translation id="6238767809035845642">മറ്റൊരു ഉപകരണത്തിൽ നിന്ന് പങ്കിട്ട ടെക്‌സ്‌റ്റ്</translation>
 <translation id="6238923052227198598">ലോക്ക് സ്‌ക്രീനിൽ ഏറ്റവും പുതിയ കുറിപ്പ് സൂക്ഷിക്കുക</translation>
 <translation id="6239558157302047471">റീലോഡും ഫ്രെയിമും</translation>
 <translation id="6241530762627360640">നിങ്ങളുടെ സിസ്റ്റവുമായി ജോടിയാക്കിയ Bluetooth ഉപകരണങ്ങളെക്കുറിച്ചുള്ള വിവരങ്ങൾ ആക്‌സസ് ചെയ്ത് സമീപമുള്ള Bluetooth ഉപകരണങ്ങൾ കണ്ടെത്തുക.</translation>
@@ -3718,7 +3719,7 @@
 <translation id="6499143127267478107">പ്രോക്‌സി സ്‌ക്രിപ്റ്റിലെ ഹോസ്റ്റിനെ സ്‌പഷ്‌ടമാക്കുന്നു...</translation>
 <translation id="6499681088828539489">പങ്കിട്ട നെറ്റ്‌വർക്കുകൾക്ക് പ്രോക്‌സികൾ അനുവദിക്കാതിരിക്കുക</translation>
 <translation id="6503077044568424649">കൂടുതൽ‍ സന്ദര്‍ശിച്ചത്</translation>
-<translation id="6504611359718185067">ഒരു പ്രിന്റർ ചേർക്കാൻ ഇന്റർനെറ്റുമായി കണക്‌റ്റ് ചെയ്യുക</translation>
+<translation id="6504611359718185067">ഒരു പ്രിന്റർ ചേർക്കാൻ ഇന്റർനെറ്റുമായി കണക്‌റ്റുചെയ്യുക</translation>
 <translation id="6506374932220792071">SHA-256 ഉള്ള X9.62 ECDSA സിഗ്നേച്ചർ</translation>
 <translation id="6508248480704296122"><ph name="NAME_PH" /> എന്നതുമായി ബന്ധപ്പെട്ടത്</translation>
 <translation id="6508261954199872201">ആപ്പ്: <ph name="APP_NAME" /></translation>
@@ -3744,7 +3745,7 @@
 <translation id="6541638731489116978">നിങ്ങളുടെ ചലന സെൻസറുകൾ ആക്‌സസ് ചെയ്യുന്നതിൽ നിന്ന് ഈ സൈറ്റിനെ ബ്ലോക്ക് ചെയ്‌തിരിക്കുന്നു.</translation>
 <translation id="654233263479157500">നാവിഗേഷന്‍ പിശകുകള്‍ പരിഹരിക്കുന്നതിന് ഒരു വെബ് സേവനം ഉപയോഗിക്കുക</translation>
 <translation id="6545665334409411530">ആവർത്തന നിരക്ക്</translation>
-<translation id="6545834809683560467">തിരയലുകളും ഒരു വിലാസ ബാറിലോ അപ്ലിക്കേഷൻ ലോഞ്ചർ തിരയൽ ബോക്‌സിലോ ടൈപ്പ് ചെ‌യ്‌തിരിക്കുന്ന URL കളും പൂര്‍ത്തിയാക്കാൻ ഒരു പ്രവചന സേവനം ഉപയോഗിക്കുക</translation>
+<translation id="6545834809683560467">തിരയലുകളും ഒരു വിലാസ ബാറിലോ ആപ്പ് ലോഞ്ചർ തിരയൽ ബോക്‌സിലോ ടൈപ്പ് ചെ‌യ്‌തിരിക്കുന്ന URL -കളും പൂര്‍ത്തിയാക്കാൻ ഒരു പ്രവചന സേവനം ഉപയോഗിക്കുക</translation>
 <translation id="6545864417968258051">Bluetooth സ്‌കാനിംഗ്</translation>
 <translation id="6545867563032584178">Mac സിസ്‌റ്റം മുൻഗണനകളിൽ മൈക്രോഫോൺ ഓഫാക്കി</translation>
 <translation id="6547354035488017500">512 MB ഇടമെങ്കിലും സൃഷ്‌ടിച്ചില്ലെങ്കിൽ നിങ്ങളുടെ ഉപകരണം പ്രതികരിക്കില്ല. ഇടം സൃഷ്‌ടിക്കാൻ, ഉപകരണ സ്‌റ്റോറേജിൽ നിന്ന് ഫയലുകൾ ഇല്ലാതാക്കുക.</translation>
@@ -3766,7 +3767,6 @@
 <translation id="6577284282025554716">ഡൗൺലോഡ് റദ്ദാക്കി: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">നിങ്ങളുടെ Google ഉപയോക്തൃനാമവും പാസ്‌വേഡും ഉപയോഗിച്ച് സമന്വയിപ്പിച്ച പാസ്‌വേഡുകൾ എൻക്രിപ്‌റ്റ് ചെയ്യുക</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - ഡെസ്‌ക്‌ടോപ്പ് ഉള്ളടക്കം പങ്കിട്ടു</translation>
-<translation id="6580151766480067746">ARC പതിപ്പ്</translation>
 <translation id="6582080224869403177">സുരക്ഷ അപ്‌ഗ്രേഡ് ചെയ്യാനായി നിങ്ങളുടെ <ph name="DEVICE_TYPE" /> പുനഃക്രമീകരിക്കുക.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">പ്രാഥമിക മൗസ് ബട്ടൺ സ്വാപ്പ് ചെയ്യുക</translation>
@@ -3929,7 +3929,7 @@
 <translation id="682971198310367122">Google സ്വകാര്യതാ നയം</translation>
 <translation id="6831043979455480757">വിവർത്തനം ചെയ്യുക</translation>
 <translation id="683373380308365518">സ്‌മാർട്ടും സുരക്ഷിതവുമായൊരു ബ്രൗസറിലേക്ക് മാറുക</translation>
-<translation id="6835762382653651563">നിങ്ങളുടെ <ph name="DEVICE_TYPE" /> അപ്‌ഡേറ്റ് ചെയ്യാൻ ഇന്റർനെറ്റിൽ കണക്റ്റ് ചെയ്യുക.</translation>
+<translation id="6835762382653651563">നിങ്ങളുടെ <ph name="DEVICE_TYPE" /> അപ്‌ഡേറ്റ് ചെയ്യാൻ ഇന്റർനെറ്റിൽ കണക്റ്റുചെയ്യുക.</translation>
 <translation id="6839225236531462745">സര്‍ട്ടിഫിക്കറ്റ് ഇല്ലാതാക്കല്‍ പിശക്</translation>
 <translation id="6839916869147598086">സൈൻ ഇൻ മാറ്റി</translation>
 <translation id="6840155290835956714">അയയ്‌ക്കുന്നതിന് മുമ്പ് ചോദിക്കുക</translation>
@@ -4038,7 +4038,7 @@
 <translation id="7000206553895739324"><ph name="PRINTER_NAME" /> കണക്‌റ്റ് ചെയ്‌തെങ്കിലും കോൺഫിഗറേഷൻ ആവശ്യമുണ്ട്</translation>
 <translation id="7000347579424117903">കൺട്രോളോ ആൾട്ടോ തിരയലോ ഉൾപ്പെടുത്തുക</translation>
 <translation id="7001036685275644873">Linux ആപ്പുകളും ഫയലുകളും ബാക്കപ്പെടുക്കുന്നു</translation>
-<translation id="7002055706763150362">Chromebook-നുള്ള Smart Lock സജ്ജീകരിക്കുന്നതിന്, ഇത് നിങ്ങളാണെന്ന് Google-ന് തീർച്ചപ്പെടുത്തേണ്ടതുണ്ട്—ആരംഭിക്കാൻ പാസ്‌വേഡ് നൽകുക.</translation>
+<translation id="7002055706763150362">Chromebook-നുള്ള Smart Lock സജ്ജീകരിക്കുന്നതിന്, ഇത് നിങ്ങളാണെന്ന് Google-ന് തീർച്ചപ്പെടുത്തേണ്ടതുണ്ട്—ആരംഭിക്കാൻ പാസ്‌വേഡ് ടൈപ്പ് ചെയ്യുക.</translation>
 <translation id="7003339318920871147">വെബ് ഡാറ്റാബേസുകള്‍‌</translation>
 <translation id="7003723821785740825">നിങ്ങളുടെ ഉപകരണം അൺലോക്ക് ചെയ്യാൻ ഒരു വേഗതയേറിയ മാർഗ്ഗം സജ്ജമാക്കുക</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> എന്നതിൽ നിന്നുള്ള അജ്ഞാത ഉൽപ്പന്നം <ph name="PRODUCT_ID" /></translation>
@@ -4251,11 +4251,11 @@
 <translation id="729761647156315797">നിങ്ങളുടെ ഭാഷയും കീബോർഡും തിരഞ്ഞെടുക്കുക</translation>
 <translation id="7297726121602187087">ഇരുണ്ട പച്ച</translation>
 <translation id="7299337219131431707">അതിഥി ബ്രൗസിംഗ് പ്രവർത്തനക്ഷമമാക്കുക</translation>
-<translation id="730289542559375723">{NUM_APPLICATIONS,plural, =1{ശരിയായി പ്രവർത്തിക്കുന്നതിൽ നിന്ന് Chrome-നെ ഈ അപ്ലിക്കേഷൻ തടഞ്ഞേക്കാം.}other{ശരിയായി പ്രവർത്തിക്കുന്നതിൽ നിന്ന് Chrome-നെ ഈ അപ്ലിക്കേഷനുകൾ തടഞ്ഞേക്കാം.}}</translation>
+<translation id="730289542559375723">{NUM_APPLICATIONS,plural, =1{ശരിയായി പ്രവർത്തിക്കുന്നതിൽ നിന്ന് Chrome-നെ ഈ ആപ്പ് തടഞ്ഞേക്കാം.}other{ശരിയായി പ്രവർത്തിക്കുന്നതിൽ നിന്ന് Chrome-നെ ഈ ആപ്പുകൾ തടഞ്ഞേക്കാം.}}</translation>
 <translation id="7303281435234579599">ക്ഷമിക്കണം! ഡെമോ മോഡ് സജ്ജീകരിക്കുമ്പോൾ എന്തോ കുഴപ്പം സംഭവിച്ചു.</translation>
 <translation id="7303900363563182677">ക്ലിപ്പ്‌ബോർഡിലേക്ക് പകർത്തിയ ടെക്‌സ്‌റ്റും ചിത്രങ്ങളും കാണുന്നതിൽ നിന്ന് ഈ സൈറ്റിനെ ബ്ലോക്ക് ചെയ്തു</translation>
 <translation id="7305123176580523628">USB പ്രിൻ്റർ കണക്‌റ്റ് ചെയ്‌തു</translation>
-<translation id="730515362922783851">ഏതു ഉപകരണം ഉപയോഗിച്ചും പ്രാദേശിക നെറ്റ്‌വർക്കിലോ ഇന്റർനെറ്റിലോ ഡാറ്റ കൈമാറ്റം ചെയ്യുക</translation>
+<translation id="730515362922783851">ഏതു ഉപകരണം ഉപയോഗിച്ചും പ്രാദേശിക നെറ്റ്‌വർക്കിലോ ഇന്റർനെറ്റിലോ ഡാറ്റ എക്‌സ്‌ചേഞ്ച് ചെയ്യുക</translation>
 <translation id="7307129035224081534">താൽക്കാലികമായി നിർത്തി</translation>
 <translation id="7308002049209013926">പുതിയ ആപ്പുകളും ആക്റ്റിവിറ്റികളും വേഗത്തിൽ ലഭിക്കാൻ ലോഞ്ചർ ഉപയോഗിക്കുക. കീബോർഡ് ഉപയോഗിച്ച് ഇവിടെ ലഭ്യമാക്കാൻ, Alt + Shift + L അമർത്തുക.</translation>
 <translation id="7309257895202129721">&amp;നിയന്ത്രണങ്ങള്‍‌ കാണിക്കുക</translation>
@@ -4364,13 +4364,14 @@
 <translation id="7475671414023905704">നെറ്റ്‌സ്‌കേപ്പ് നഷ്‌ടമായ പാസ്‌വേഡ് URL</translation>
 <translation id="7476454130948140105">ബാറ്ററി ചാർജ്, സിസ്‌റ്റം അപ്‌ഡേറ്റ് ചെയ്യുന്നതിനാവശ്യമായതിലും വളരെ കുറവാണ് (<ph name="BATTERY_PERCENT" />%)</translation>
 <translation id="7477793887173910789">നിങ്ങളുടെ സംഗീതവും വീഡിയോകളും മറ്റും നിയന്ത്രിക്കുക</translation>
-<translation id="7478485216301680444">കിയോസ്‌ക് അപ്ലിക്കേഷൻ ഇൻസ്റ്റാളുചെയ്യാനായില്ല.</translation>
+<translation id="7478485216301680444">കിയോസ്‌ക് ആപ്പ് ഇൻസ്റ്റാൾ ചെയ്യാനായില്ല.</translation>
 <translation id="7481312909269577407">മുന്നോട്ട്</translation>
 <translation id="748138892655239008">സര്‍‌ട്ടിഫിക്കറ്റ് ബേസിക് നിയന്ത്രണങ്ങള്‍‌</translation>
 <translation id="7487067081878637334">സാങ്കേതികവിദ്യ</translation>
 <translation id="7487141338393529395">മെച്ചപ്പെട്ട അക്ഷരത്തെറ്റ് പരിശോധന ഓണാക്കുക</translation>
 <translation id="7487969577036436319">ഘടകങ്ങളൊന്നും ഇൻസ്റ്റാളുചെയ്‌തിട്ടില്ല</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;എല്ലാം തുറക്കുക}=1{&amp;ബുക്ക്‌മാർക്ക് തുറക്കുക}other{&amp;എല്ലാം (#) തുറക്കുക}}</translation>
+<translation id="7489761397368794366">നിങ്ങളുടെ ഉപകരണത്തിൽ നിന്ന് കോൾ ചെയ്യുക</translation>
 <translation id="749028671485790643">വ്യക്തി <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC വിലാസം</translation>
 <translation id="7493386493263658176">പാസ്‌വേഡുകൾ, ക്രെഡിറ്റ് കാർഡ് നമ്പറുകൾ എന്നിവ പോലുള്ള വ്യക്തിപരമായ വിവരങ്ങൾ ഉൾപ്പെടെ നിങ്ങൾ ടൈപ്പ് ചെയ്യുന്ന എല്ലാ ടെക്‌സ്‌റ്റും <ph name="EXTENSION_NAME" /> വിപുലീകരണം ശേഖരിച്ചേക്കാം. നിങ്ങൾക്ക് ഈ വിപുലീകരണം ഉപയോഗിക്കണോ?</translation>
@@ -4390,6 +4391,7 @@
 <translation id="7508054832109420082">പ്രിൻ്ററുകൾക്ക് ആക്‌സസ് നൽകുക</translation>
 <translation id="7510943789645525906">നിങ്ങൾ ഉപയോഗിക്കുന്ന പാസ്‌വേഡ്, ഡാറ്റാ ലംഘനത്തിന്റെ ഭാഗമായിട്ടുണ്ടോ എന്ന് മുന്നറിയിപ്പ് നൽകുന്നു</translation>
 <translation id="7513029293694390567">സംരക്ഷിച്ച ക്രെഡൻഷ്യലുകൾ ഉപയോഗിച്ച് വെബ്‌സൈറ്റുകളിലേക്ക് സ്വയം സൈൻ ഇൻ ചെയ്യുക. പ്രവർത്തനരഹിതമാണെങ്കിൽ, ഒരു വെബ്‌സൈറ്റിലേക്ക് സൈൻ ഇൻ ചെയ്യുന്നതിന് മുമ്പ് ഓരോ തവണയും നിങ്ങളോട് സ്ഥിരീകരിക്കാൻ ആവശ്യപ്പെടും.</translation>
+<translation id="7514239104543605883">നിങ്ങളുടെ ഉപകരണത്തിലേക്ക് പകർത്തുക</translation>
 <translation id="7514365320538308">ഡൗൺലോഡ് ചെയ്യുക</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">"Ok Google" എന്ന് പറയുക</translation>
@@ -4411,7 +4413,7 @@
 <translation id="7554791636758816595">പുതിയ ടാബ്</translation>
 <translation id="7556033326131260574">Smart Lock-ന് നിങ്ങളുടെ അക്കൗണ്ട് പരിശോധിച്ചുറപ്പിക്കാനായില്ല. പ്രവേശിക്കുന്നതിന് പാസ്‌വേഡ് നൽകുക.</translation>
 <translation id="7556242789364317684">നിർഭാഗ്യവശാൽ, <ph name="SHORT_PRODUCT_NAME" />-ന് നിങ്ങളുടെ ക്രമീകരണങ്ങൾ വീണ്ടെടുക്കാനായില്ല. പിശക് പരിഹരിക്കാൻ, പവർവാഷ് ഉപയോഗിച്ച് <ph name="SHORT_PRODUCT_NAME" /> നിങ്ങളുടെ ഉപകരണം റീസെറ്റ് ചെയ്യണം.</translation>
-<translation id="7559719679815339381">കാത്തിരിക്കുക...കിയോസ്‌ക് അപ്ലിക്കേഷൻ അപ്‌ഡേറ്റ് ചെയ്യുന്ന പ്രോസസിലാണ്. USB സ്‌റ്റിക്ക് നീക്കംചെയ്യരുത്.</translation>
+<translation id="7559719679815339381">കാത്തിരിക്കുക...കിയോസ്‌ക് ആപ്പ് അപ്‌ഡേറ്റ് ചെയ്യുന്ന പ്രോസസിലാണ്. USB സ്‌റ്റിക്ക് നീക്കംചെയ്യരുത്.</translation>
 <translation id="7561196759112975576">എല്ലായ്പ്പോഴും</translation>
 <translation id="756445078718366910">ബ്രൌസര്‍‌ വിന്‍‌ഡോ തുറക്കുക</translation>
 <translation id="7564847347806291057">പ്രക്രിയയുടെ അവസാനം</translation>
@@ -4568,7 +4570,7 @@
 <translation id="7786207843293321886">അതിഥി സെഷനിൽ നിന്നും പുറത്തുകടക്കുക</translation>
 <translation id="7786889348652477777">ആപ്പ് &amp;വീണ്ടും ലോഡ് ചെയ്യുക</translation>
 <translation id="7787308148023287649">മറ്റൊരു സ്‌ക്രീനിൽ പ്രദർശിപ്പിക്കുക</translation>
-<translation id="7788298548579301890">നിങ്ങളുടെ കമ്പ്യൂട്ടറിലെ മറ്റൊരു പ്രോഗ്രാം, Chrome-ന്റെ പ്രവർത്തനരീതിയെ മാറ്റിയേക്കാവുന്ന ഒരു ആപ്പ് ചേർത്തു.
+<translation id="7788298548579301890">നിങ്ങളുടെ കമ്പ്യൂട്ടറിലെ മറ്റൊരു പ്രോഗ്രാം, Chrome-ന്‍റെ പ്രവർത്തനരീതിയെ മാറ്റിയേക്കാവുന്ന ഒരു ആപ്പ് ചേർത്തു.
 
 
 <ph name="EXTENSION_NAME" /></translation>
@@ -4604,10 +4606,10 @@
     <ph name="BR" />
     നിങ്ങളുടെ ഉപകരണത്തിൽ ഇൻസ്‌റ്റാൾ ചെയ്യുന്നതിനും ഇഷ്‌ടാനുസൃത കോഡ് പരീക്ഷിക്കുന്നതിനും Chrome OS ഉപകരണത്തിൽ ഡീബഗ് ചെയ്യൽ ഫീച്ചറുകൾ പ്രവർത്തനക്ഷമമാക്കാനാവും. ഇനി പറയുന്നവ ചെയ്യാൻ ഇത് നിങ്ങളെ അനുവദിക്കും:<ph name="BR" />
     <ph name="BEGIN_LIST" />
-      <ph name="LIST_ITEM" />OS ഫയലുകൾ പരിഷ്‌ക്കരിക്കാനാവുന്നതിന് rootfs പരിശോധിച്ചുറപ്പിക്കൽ നീക്കം ചെയ്യുക
+      <ph name="LIST_ITEM" /> ഫയലുകൾ പരിഷ്‌ക്കരിക്കാനാവുന്നതിന് rootfs പരിശോധിച്ചുറപ്പിക്കൽ നീക്കം ചെയ്യുക
       <ph name="LIST_ITEM" />ഉപകരണം ആക്‌സസ് ചെയ്യുന്നതിന് <ph name="BEGIN_CODE" />'ക്രോസ് ഫ്ലാഷ്'<ph name="END_CODE" /> എന്നതുപോലുള്ള ഉപകരണങ്ങൾ ഉപയോഗിക്കാനാവുന്നതിന് അടിസ്ഥാന പരീക്ഷണ കീകൾ ഉപയോഗിച്ച് ഉപകരണത്തിലേക്കുള്ള SSH ആക്‌സസ് ചെയ്യൽ പ്രവർത്തനക്ഷമമാക്കുക
       <ph name="LIST_ITEM" />ഒരു USB ഡ്രൈവിൽ നിന്ന് OS ചിത്രം ഇൻസ്റ്റാൾ ചെയ്യാനാവുന്നതിന് USB-യിൽ നിന്ന് ബൂട്ട് ചെയ്യൽ പ്രവർത്തനക്ഷമമാക്കുക
-      <ph name="LIST_ITEM" />ഒരു ഉപകരണത്തിലേക്ക് സ്വമേധയാ SSH ചെയ്യാനാവുന്നതിന് ഇഷ്‌ടാനുസൃത മൂല്യത്തിലേക്ക് ഉപകരണത്തെയും സിസ്‌റ്റം റൂട്ട് ലോഗിൻ പാസ്‌വേഡിനെയും സജ്ജീകരിക്കുക
+      <ph name="LIST_ITEM" />ഒരു ഉപകരണത്തിലേക്ക് സ്വയമേവ SSH ചെയ്യാനാവുന്നതിന് ഇഷ്‌ടാനുസൃത മൂല്യത്തിലേക്ക് ഉപകരണത്തെയും സിസ്‌റ്റം റൂട്ട് ലോഗിൻ പാസ്‌വേഡിനെയും സജ്ജീകരിക്കുക
     <ph name="END_LIST" />
     <ph name="BR" />
     പ്രവർത്തനക്ഷമമാക്കിയാൽ, എന്റർപ്രൈസ് നിയന്ത്രിത ഉപകരണത്തിലെ വിവരം പവർവാഷ് ചെയ്യുകയോ മായ്‌ക്കുകയോ ചെയ്‌ത‌തിന് ശേഷവും കൂടുതൽ ഡീബഗ് ചെയ്യൽ ഫീച്ചറുകളും പ്രവർത്തനക്ഷമമായി ശേഷിക്കുന്നു. എല്ലാ ഡീബഗ് ചെയ്യൽ ഫീച്ചറുകളും പൂർണ്ണമായി പ്രവർത്തനരഹിതമാക്കുന്നതിന്, Chrome OS വീണ്ടെടുക്കൽ പ്രോസസ്സ് പൂർത്തിയാക്കുക (https://support.google.com/chromebook/answer/1080595).
@@ -4639,7 +4641,7 @@
 <translation id="7851457902707056880">സൈൻ ഇൻ ചെയ്യുന്നത് ഉടമയുടെ അക്കൗണ്ടിനുമാത്രമായി പരിമിതപ്പെടുത്തിയിരിക്കുന്നു. റീബൂട്ട് ചെയ്‌തതിനുശേഷം ഉടമയുടെ അക്കൗണ്ട് ഉപയോഗിച്ച് സൈൻ ഇൻ ചെയ്യുക. 30 സെക്കൻഡിനുള്ളിൽ മെഷീൻ സ്വയമേവ റീബൂട്ട് ചെയ്യും.</translation>
 <translation id="7851716364080026749">ക്യാമറ, മൈക്രോഫോൺ എന്നിവയുടെ ആക്‌സസ് എപ്പോഴും തടയുക</translation>
 <translation id="7851720427268294554">IPP പാർസർ</translation>
-<translation id="78526636422538552">കൂടുതൽ Google അക്കൗണ്ട് ചേർക്കുന്നത് പ്രവർത്തനരഹിതമാക്കി</translation>
+<translation id="78526636422538552">കൂടുതൽ Google അക്കൗണ്ടുകൾ ചേർക്കുന്നത് പ്രവർത്തനരഹിതമാക്കി</translation>
 <translation id="7853747251428735">കൂടുതൽ ഉപകരണങ്ങൾ</translation>
 <translation id="7857117644404132472">ഒഴിവാക്കൽ ചേർക്കുക</translation>
 <translation id="7857949311770343000">നിങ്ങൾ ഉദ്ദേശിച്ച പുതിയ ടാബ് പേജ് ഇതാണോ?</translation>
@@ -4765,11 +4767,11 @@
 <translation id="8017679124341497925">കുറുക്കുവഴി എഡിറ്റ് ചെയ്‌തു</translation>
 <translation id="8018313076035239964">വെബ്‌സൈറ്റുകൾക്ക് എന്തൊക്കെ വിവരങ്ങൾ ഉപയോഗിക്കാനാവുമെന്നും ഏതൊക്കെ ഉള്ളടക്കം നിങ്ങൾക്ക് ദൃശ്യമാക്കാനാവുമെന്നും നിയന്ത്രിക്കുക</translation>
 <translation id="8023801379949507775">ഇപ്പോള്‍‌ വിപുലീകരണങ്ങള്‍‌ അപ്ഡേറ്റ് ചെയ്യുക</translation>
-<translation id="8024483450737722621">നിങ്ങൾ Google Play-യിൽ നിന്ന് ഡൗൺലോഡുചെയ്‌ത ആപ്‌സുകളെ ഈ Chromebook-ൽ നിന്നും ഇല്ലാതാക്കും. 
+<translation id="8024483450737722621">നിങ്ങൾ Google Play-യിൽ നിന്ന് ഡൗൺലോഡ് ചെയ്‌ത ആപ്പുകളെ ഈ Chromebook-ൽ നിന്നും ഇല്ലാതാക്കും. 
       <ph name="LINE_BREAKS1" />
       നിങ്ങൾ വാങ്ങിയ സിനിമകൾ, ടിവി ഷോകൾ, സംഗീതം, പുസ്‌തകങ്ങൾ എന്നിവ പോലുള്ള ഉള്ളടക്കവും മറ്റ് ആപ്പ് മുഖേനയുള്ള വാങ്ങലുകളും ഇല്ലാതാക്കിയേക്കാം.
       <ph name="LINE_BREAKS2" />
-      ഇത് മറ്റ് ഉപകരണങ്ങളിലെ ആപ്‌സുകളെയോ ഉള്ളടക്കത്തെയോ ബാധിക്കില്ല.</translation>
+      ഇത് മറ്റ് ഉപകരണങ്ങളിലെ ആപ്പുകളെയോ ഉള്ളടക്കത്തെയോ ബാധിക്കില്ല.</translation>
 <translation id="8026334261755873520">ബ്രൌസിംഗ് ഡാറ്റ മായ്‌ക്കുക</translation>
 <translation id="8028060951694135607">Microsoft Key Recovery</translation>
 <translation id="8028803902702117856"><ph name="SIZE" /> ഡൗൺലോഡ് ചെയ്യുന്നു, <ph name="FILE_NAME" /></translation>
@@ -4784,7 +4786,7 @@
 <translation id="8042142357103597104">ടെക്‌സ്‌റ്റ് അതാര്യത</translation>
 <translation id="8044899503464538266">പതുക്കെ</translation>
 <translation id="8045253504249021590">Google ഡാഷ്‌ബോർഡ് വഴിയുള്ള സമന്വയിപ്പിക്കൽ നിർത്തി.</translation>
-<translation id="8045923671629973368">അപ്ലിക്കേഷൻ ഐഡി അല്ലെങ്കിൽ വെബ്സ്റ്റോർ URL നൽകുക</translation>
+<translation id="8045923671629973368">ആപ്പ് ഐഡി അല്ലെങ്കിൽ വെബ്സ്റ്റോർ URL നൽകുക</translation>
 <translation id="804786196054284061">അന്തിമ ഉപയോക്തൃ ലൈസൻസ് ഉടമ്പടി</translation>
 <translation id="8049705080247101012">"<ph name="EXTENSION_NAME" />" എന്നതിനെ Google ക്ഷുദ്രകരമെന്ന് ഫ്ലാഗ് ചെയ്‌തതിനാൽ ഇൻസ്റ്റലേഷൻ തടയപ്പെട്ടു</translation>
 <translation id="8050038245906040378">Microsoft Commercial Code Signing</translation>
@@ -4847,7 +4849,7 @@
 <translation id="8140778357236808512">നിലവിലുള്ള മേൽനോട്ടത്തിലുള്ള ഒരു ഉപയോക്താവിനെ ഇമ്പോർട്ട് ചെയ്യുക</translation>
 <translation id="8141584439523427891">ഇപ്പോൾ മറ്റൊരു ബ്രൗസറിൽ തുറക്കുന്നു</translation>
 <translation id="8141725884565838206">നിങ്ങളുടെ പാസ്‌വേഡുകൾ നിയന്ത്രിക്കുക</translation>
-<translation id="8143442547342702591">അസാധുവായ അപ്ലിക്കേഷൻ</translation>
+<translation id="8143442547342702591">ആപ്പ് അസാധുവാണ്</translation>
 <translation id="8146177459103116374">നിങ്ങൾ ഇതിനകം ഈ ഉപകരണത്തിൽ രജിസ്റ്റർ ചെയ്‌തെങ്കിൽ, <ph name="LINK2_START" />നിലവിലുള്ള ഉപയോക്താവായി സൈൻ ഇൻ ചെയ്യാൻ<ph name="LINK2_END" /> നിങ്ങൾക്ക് കഴിയും.</translation>
 <translation id="8146793085009540321">സൈൻ ഇൻ ചെയ്യാനായില്ല. നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്ററെ ബന്ധപ്പെടുകയോ വീണ്ടും ശ്രമിക്കുകയോ ചെയ്യുക.</translation>
 <translation id="8151638057146502721">കോൺഫിഗർ ചെയ്യുക</translation>
@@ -4881,7 +4883,7 @@
 <translation id="8195027750202970175">ഡിസ്‌കിലെ വലുപ്പം</translation>
 <translation id="8198323535106903877">നിങ്ങൾക്കായി ആ <ph name="NUMBER_OF_APPS" /> ആപ്പുകൾ ഞങ്ങൾ ഇൻസ്‌റ്റാൾ ചെയ്യും</translation>
 <translation id="8199300056570174101">നെറ്റ്‌വർക്കും (സേവനം) ഉപകരണ പ്രോപ്പർട്ടികളും</translation>
-<translation id="8200772114523450471">തുടരൂ</translation>
+<translation id="8200772114523450471">പുനരാരംഭിക്കുക</translation>
 <translation id="8202160505685531999">നിങ്ങളുടെ <ph name="DEVICE_TYPE" /> പ്രൊഫൈൽ അപ്‌ഡേറ്റ് ചെയ്യാൻ പാസ്‌വേഡ് വീണ്ടും നൽകുക.</translation>
 <translation id="8203732864715032075">നിങ്ങള്‍ക്ക് അറിയിപ്പുകള്‍ അയയ്‌ക്കുന്നു, സന്ദേശങ്ങള്‍ക്കായി ഈ കമ്പ്യൂട്ടറിനെ ഡിഫോള്‍‌ട്ടായി ഒാർമ്മിപ്പിക്കുകയും ചെയ്യുന്നു. <ph name="LINK_BEGIN" />കൂടുതലറിയുക<ph name="LINK_END" /></translation>
 <translation id="820568752112382238">ഏറ്റവും കൂടുതൽ സന്ദർശിച്ച സൈറ്റുകൾ</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">ഫയൽ കാസ്‌റ്റ് ചെയ്യുക</translation>
 <translation id="8274924778568117936">അപ്‌ഡേറ്റ് പൂർത്തിയാകുന്നതുവരെ നിങ്ങളുടെ <ph name="DEVICE_TYPE" /> ഓഫാക്കുകയോ അടയ്‌ക്കുകയോ ചെയ്യരുത്. ഇൻസ്‌റ്റലേഷൻ പൂർത്തിയായിക്കഴിഞ്ഞാൽ <ph name="DEVICE_TYPE" /> റീസ്‌റ്റാർട്ട് ആകുന്നതാണ്.</translation>
 <translation id="8275038454117074363">ഇറക്കുമതിചെയ്യുക</translation>
+<translation id="8275080796245127762">നിങ്ങളുടെ ഉപകരണത്തിൽ നിന്ന് കോൾ ചെയ്യുക</translation>
 <translation id="8276560076771292512">കാഷെ ശൂന്യമാക്കി വേഗത്തിൽ വീണ്ടും ലോഡുചെയ്യുക</translation>
 <translation id="8281886186245836920">ഉപേക്ഷിക്കുക</translation>
 <translation id="8282947398454257691">നിങ്ങളുടെ സവിശേഷമായ ഉപകരണ ഐഡന്റിഫയർ അറിയുക</translation>
@@ -5119,7 +5122,7 @@
 <translation id="8557930019681227453">മാനിഫെസ്റ്റ്</translation>
 <translation id="8561206103590473338">ആന</translation>
 <translation id="8561853412914299728"><ph name="TAB_TITLE" /> <ph name="EMOJI_PLAYING" /></translation>
-<translation id="8565650234829130278">അപ്ലിക്കേഷൻ ഡൗൺഗ്രേഡ് ചെയ്യാൻ ശ്രമിച്ചു.</translation>
+<translation id="8565650234829130278">ആപ്പ് ഡൗൺഗ്രേഡ് ചെയ്യാൻ ശ്രമിച്ചു.</translation>
 <translation id="8569682776816196752">ലക്ഷ്യസ്ഥാനങ്ങൾ ഒന്നും കണ്ടെത്തിയില്ല</translation>
 <translation id="8571213806525832805">കഴിഞ്ഞ 4 ആഴ്ച</translation>
 <translation id="8573403125070227391">ഈ പരസ്യം നിങ്ങളുടെ ഉപകരണത്തിനായി വളരെയധികം ഉറവിടങ്ങൾ ഉപയോഗിക്കുന്നതിനാൽ Chrome അത് നീക്കം ചെയ്‌തു.</translation>
@@ -5140,13 +5143,13 @@
 <translation id="8597845839771543242">പ്രോപ്പർട്ടി ഫോർമാറ്റ്:</translation>
 <translation id="8598453409908276158">അൺസാൻഡ്‌ബോക്‌സ് ചെയ്‌ത പ്ലഗിൻ ബ്ലോക്ക് ചെയ്‌തു</translation>
 <translation id="8601206103050338563">TLS WWW ക്ലയന്‍റ് പരിശോധിച്ചുറപ്പിക്കൽ</translation>
-<translation id="8602851771975208551">നിങ്ങളുടെ കമ്പ്യൂട്ടറിലെ മറ്റൊരു പ്രോഗ്രാം Chrome പ്രവർത്തിക്കുന്ന രീതി മാറ്റിയേക്കാവുന്ന ഒരു അപ്ലിക്കേഷൻ ചേർത്തു.</translation>
+<translation id="8602851771975208551">നിങ്ങളുടെ കമ്പ്യൂട്ടറിലെ മറ്റൊരു പ്രോഗ്രാം Chrome പ്രവർത്തിക്കുന്ന രീതി മാറ്റിയേക്കാവുന്ന ഒരു ആപ്പ് ചേർത്തു.</translation>
 <translation id="8605428685123651449">SQLite മെമ്മറി</translation>
 <translation id="8606726445206553943">നിങ്ങളുടെ MIDI ഉപകരണങ്ങൾ ഉപയോഗിക്കുക</translation>
 <translation id="8608618451198398104">ഒരു Kerberos ടിക്കറ്റ് ചേർക്കുക</translation>
 <translation id="8609465669617005112">മുകളിലേക്ക് നീക്കുക</translation>
 <translation id="8610103157987623234">തെറ്റായ ഫോർമാറ്റ്, വീണ്ടും ശ്രമിക്കുക</translation>
-<translation id="8615618338313291042">ആള്‍മാറാട്ട ആപ്പ്: <ph name="APP_NAME" /></translation>
+<translation id="8615618338313291042">അദൃശ്യ മോഡ് ആപ്പ്: <ph name="APP_NAME" /></translation>
 <translation id="8619803522055190423">ഡ്രോപ്പ് ഷാഡോ</translation>
 <translation id="8619892228487928601"><ph name="CERTIFICATE_NAME" />: <ph name="ERROR" /></translation>
 <translation id="8620436878122366504">നിങ്ങളുടെ രക്ഷിതാക്കൾ ഇതുവരെ അംഗീകാരം നൽകിയിട്ടില്ല</translation>
@@ -5202,7 +5205,7 @@
 <translation id="8676374126336081632">ഇൻപുട്ട് മായ്‌ക്കുക</translation>
 <translation id="8677212948402625567">എല്ലാം ചുരുക്കുക</translation>
 <translation id="8678648549315280022">ഡൗൺലോഡ് ക്രമീകരണങ്ങൾ നിയന്ത്രിക്കുക...</translation>
-<translation id="8678933587484842200">ഈ ആപ്പ് എങ്ങനെ ആരംഭിക്കാനാണ് നിങ്ങൾ ആഗ്രഹിക്കുന്നത്?</translation>
+<translation id="8678933587484842200">ഈ ആപ്പ് എങ്ങനെ സമാരംഭിക്കാനാണ് നിങ്ങൾ ആഗ്രഹിക്കുന്നത്?</translation>
 <translation id="8680251145628383637">നിങ്ങളുടെ എല്ലാ ഉപകരണങ്ങളിലും ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, പാസ്‌വേഡുകൾ, മറ്റ് ക്രമീകരണം എന്നിവ ലഭിക്കാൻ സൈൻ ഇൻ ചെയ്യുക. നിങ്ങളുടെ Google സേവനങ്ങളിലേക്ക് സ്വയമേവ നിങ്ങൾ സൈൻ ഇൻ ആകുന്നതുമാണ്.</translation>
 <translation id="8682730193597992579"><ph name="PRINTER_NAME" /> കണക്‌റ്റ് ചെയ്‌ത് തയ്യാറാണ്</translation>
 <translation id="8688579245973331962">നിങ്ങളുടെ പേര് കണ്ടില്ലേ?</translation>
@@ -5265,6 +5268,7 @@
 <translation id="8758418656925882523">പറഞ്ഞ് കൊടുക്കൽ പ്രവർത്തനക്ഷമമാക്കുക (ടൈപ്പ് ചെയ്യാൻ പറഞ്ഞ് കൊടുക്കുക)</translation>
 <translation id="8759408218731716181">ഒന്നിലധികം സൈൻ ഇൻ സജ്ജമാക്കാനാവില്ല</translation>
 <translation id="8759753423332885148">കൂടുതലറിയുക.</translation>
+<translation id="8761945298804995673">ഇത് നിലവിലുള്ള ഉപയോക്താവാണ്</translation>
 <translation id="8762886931014513155">നിങ്ങളുടെ <ph name="DEVICE_TYPE" />-ന് അപ്‌ഡേറ്റ് ആവശ്യമാണ്</translation>
 <translation id="8763927697961133303">USB ഉപകരണം</translation>
 <translation id="8767621466733104912">എല്ലാ ഉപയോക്താക്കൾക്കുമായി സ്വയമേവ Chrome അപ്‌ഡേറ്റ് ചെയ്യുക</translation>
@@ -5279,7 +5283,7 @@
 <translation id="8780443667474968681">ശബ്‌ദ തിരയൽ ഓഫാക്കിയിരിക്കുന്നു.</translation>
 <translation id="878069093594050299">ഇനിപ്പറയുന്ന ഉപയോഗങ്ങള്‍‌ക്കായി ഈ സര്‍‌ട്ടിഫിക്കറ്റ് പരിശോധിച്ചു:</translation>
 <translation id="8781980678064919987">ലിഡ് അടഞ്ഞിരിക്കുമ്പോൾ ഷട്ട് ഡൗൺ ചെയ്യുക</translation>
-<translation id="8782565991310229362">കിയോസ്‌ക് ആപ്പ് ലോഞ്ച് ചെയ്യൽ റദ്ദാക്കി.</translation>
+<translation id="8782565991310229362">കിയോസ്‌ക് ആപ്പ് സമാരംഭം റദ്ദാക്കി.</translation>
 <translation id="8783093612333542422">&lt;strong&gt;<ph name="SENDER" />&lt;/strong&gt; ,നിങ്ങളുമായി ഒരു പ്രിന്റർ &lt;strong&gt;<ph name="PRINTER_NAME" />&lt;/strong&gt; പങ്കിടാൻ താൽപ്പര്യപ്പെടുന്നു.</translation>
 <translation id="8784626084144195648">ബിൻ ചെയ്ത ശരാശരി</translation>
 <translation id="8785622406424941542">സ്‌റ്റൈലസ്</translation>
@@ -5304,7 +5308,7 @@
 <translation id="8813811964357448561">പേപ്പറുകളുടെ ഷീറ്റ്</translation>
 <translation id="8813969267212093033">ഈ ഭാഷയിലാണ് സിസ്‌റ്റം ടെക്‌സ്‌റ്റ് കാണിച്ചിരിക്കുന്നത്</translation>
 <translation id="8814190375133053267">Wi-Fi</translation>
-<translation id="8814687660896548945">കാക്കുക, ആർക്കൈവ് സ്കാൻ ചെയ്യുന്നു...</translation>
+<translation id="8814687660896548945">കാത്തിരിക്കുക, ആർക്കൈവ് സ്കാൻ ചെയ്യുന്നു...</translation>
 <translation id="881799181680267069">മറ്റുള്ളവ മറയ്‌ക്കുക</translation>
 <translation id="8818152010000655963">വാൾപേപ്പർ</translation>
 <translation id="8818958672113348984">നിങ്ങളുടെ ഫോൺ വഴി പരിശോധിച്ചുറപ്പിക്കുക</translation>
@@ -5346,13 +5350,14 @@
 <translation id="8871551568777368300">അഡ്‌മിനിസ്‌ട്രേറ്റർ പിൻ ചെയ്‌തിരിക്കുന്നു</translation>
 <translation id="8871696467337989339">നിങ്ങള്‍ ഒരു പിന്തുണയ്ക്കാത്ത കമാന്‍ഡ്-ലൈന്‍ ഫ്ലാഗ് ഉപയോഗിക്കുന്നു: <ph name="BAD_FLAG" />. സ്ഥിരതയേയും സുരക്ഷയേയും ബാധിക്കും.</translation>
 <translation id="8871974300055371298">ഉള്ളടക്ക ക്രമീകരണങ്ങൾ</translation>
-<translation id="8872155268274985541">അസാധുവായ കിയോസ്‌ക് ബാഹ്യ അപ്ഡേറ്റ് മാനിഫെസ്‌റ്റ് ഫയൽ കണ്ടെത്തി. കിയോസ്‌ക് അപ്ലിക്കേഷൻ അപ്‌ഡേറ്റ് ചെയ്യുന്നതിൽ പരാജയപ്പെട്ടു. USB സ്‌റ്റിക്ക് നീക്കംചെയ്യുക.</translation>
+<translation id="8872155268274985541">അസാധുവായ കിയോസ്‌ക് ബാഹ്യ അപ്ഡേറ്റ് മാനിഫെസ്‌റ്റ് ഫയൽ കണ്ടെത്തി. കിയോസ്‌ക് ആപ്പ് അപ്‌ഡേറ്റ് ചെയ്യുന്നതിൽ പരാജയപ്പെട്ടു. USB സ്‌റ്റിക്ക് നീക്കംചെയ്യുക.</translation>
 <translation id="8874184842967597500">കണക്റ്റുചെയ്‌തിട്ടില്ല</translation>
 <translation id="8876307312329369159">ഒരു ഡെമോ സെഷനിൽ ഈ ക്രമീകരണം മാറ്റാനാകില്ല.</translation>
 <translation id="8877448029301136595">[രക്ഷാകര്‍തൃ ഡയറക്റ്ററി]</translation>
 <translation id="8879284080359814990">&amp;ടാബായി കാണിക്കുക</translation>
 <translation id="8879921471468674457">സൈൻ ഇൻ വിവരം ഓർക്കുക</translation>
 <translation id="8881020143150461183">വീണ്ടും ശ്രമിക്കുക. സാങ്കേതിക പിന്തുണയ്‌ക്ക്, <ph name="CARRIER_NAME" /> എന്നതുമായി ബന്ധപ്പെടുക.</translation>
+<translation id="8883273463630735858">ടച്ച്‌പാഡ് ആക്‌സിലറേഷൻ പ്രവർത്തനക്ഷമമാക്കുക</translation>
 <translation id="8884570509232205463">നിങ്ങളുടെ ഉപകരണം ഇപ്പോൾ <ph name="UNLOCK_TIME" />-ന് ലോക്ക് ആകുന്നു.</translation>
 <translation id="8885197664446363138">Smart Lock ലഭ്യമല്ല</translation>
 <translation id="8888253246822647887">അപ്‌ഗ്രേഡ് ചെയ്യൽ പൂർത്തിയാകുമ്പോൾ ആപ്പ് തുറക്കും. അപ്‌ഗ്രേഡ് ചെയ്യുന്നതിന് കുറച്ചുസമയമെടുത്തേക്കാം.</translation>
@@ -5585,7 +5590,7 @@
 <translation id="936801553271523408">സിസ്റ്റം ഡയഗണോസ്റ്റിക് ഡാറ്റ</translation>
 <translation id="93766956588638423">വിപുലീകരണം റിപ്പയർ ചെയ്യുക</translation>
 <translation id="938339467127511841">Linux (ബീറ്റ) സംഭരണം</translation>
-<translation id="938470336146445890">ഒരു ഉപയോക്തൃ സർട്ടിഫിക്കറ്റ് ദയവായി ഇന്‍സ്റ്റാള്‍ ചെയ്യുക.</translation>
+<translation id="938470336146445890">ഒരു ഉപയോക്തൃ സര്‍ട്ടിഫിക്കറ്റ് ദയവായി ഇന്‍സ്റ്റാള്‍ ചെയ്യുക.</translation>
 <translation id="939252827960237676">സ്‌ക്രീൻഷോട്ട് സംരക്ഷിക്കുന്നതിൽ പരാജയപ്പെട്ടു</translation>
 <translation id="939519157834106403">SSID</translation>
 <translation id="939598580284253335">പാസ്ഫ്രെയ്സ് നല്‍കുക</translation>
@@ -5607,7 +5612,7 @@
 <translation id="967624055006145463">ഡാറ്റ സംഭരിച്ചു</translation>
 <translation id="968000525894980488">Google Play സേവനങ്ങൾ ഓണാക്കുക</translation>
 <translation id="968037381421390582">ഒട്ടിച്ച്, “<ph name="SEARCH_TERMS" />” എന്നതിനായി തിരയുക</translation>
-<translation id="968174221497644223">അപ്ലിക്കേഷന്‍ കാഷെ</translation>
+<translation id="968174221497644223">ആപ്പ് കാഷെ</translation>
 <translation id="969096075394517431">ഭാഷകൾ മാറ്റുക</translation>
 <translation id="970047733946999531">{NUM_TABS,plural, =1{ഒരു ടാബ്}other{# ടാബുകൾ}}</translation>
 <translation id="971774202801778802">URL ബുക്ക്‌മാർക്ക് ചെയ്യുക</translation>
diff --git a/chrome/app/resources/generated_resources_mr.xtb b/chrome/app/resources/generated_resources_mr.xtb
index 3788d60..944f1f84 100644
--- a/chrome/app/resources/generated_resources_mr.xtb
+++ b/chrome/app/resources/generated_resources_mr.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">आपल्या सर्व संगणकांवर तुमचे विस्तार प्राप्त करण्यासाठी, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">हे सिक्युरिटी कीच्या पिनसह, तिच्यावरील सर्व डेटा मिटवेल</translation>
 <translation id="1475502736924165259">आपल्याकडे फाईलवर प्रमाणपत्रे आहेत जी अन्य कोणत्याही श्रेणींसाठी योग्य नाहीत</translation>
+<translation id="1476088332184200792">तुमच्या डिव्हाइसवर कॉपी करा</translation>
 <translation id="1476607407192946488">&amp;भाषा सेटिंग्ज</translation>
 <translation id="1478340334823509079">तपशील: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">इंस्टॉल करणे सुरू केलेले नाही</translation>
@@ -950,7 +951,6 @@
 <translation id="2379281330731083556">सिस्टम संवाद वापरून प्रिंट करा… <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">पाठविण्यापूर्वी विचारा (शिफारस केलेले)</translation>
 <translation id="2384436799579181135">एक एरर आली आहे. कृपया तुमचा प्रिंटर तपासा आणि पुन्हा प्रयत्न करा.</translation>
-<translation id="2386926718981642523">कधीही "Ok Google" म्हणून तुमचे असिस्टंट अ‍ॅक्सेस करा</translation>
 <translation id="2387458720915042159">प्रॉक्सी कनेक्शन प्रकार</translation>
 <translation id="2391419135980381625">मानक फॉन्ट</translation>
 <translation id="2392369802118427583">सक्रिय करा</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">निम्न</translation>
 <translation id="2942560570858569904">वाट पाहत आहे…</translation>
 <translation id="2942581856830209953">हे पेज कस्टमाइझ करा</translation>
+<translation id="294308617863380348">तृतीय पक्षाचा कुकीच्या समावेशासह</translation>
 <translation id="2944060181911631861">वापर आणि निदान डेटा पाठवा. Google ला आपोआप निदान आणि डिव्हाइस आणि अ‍ॅप वापर डेटा पाठवून तुमचा Android अनुभव सुधारण्यात मदत करा. हे सिस्ट्म आणि अ‍ॅप स्थिरता आणि इतर सुधारणा करण्यात मदत करेल. काही एकत्रित केलेला डेटा Google अ‍ॅप्स आणि Android डेव्हलपर सारख्या भागीदारांना देखील मदत करेल. जर तुमची अतिरिक्त वेब आणि अ‍ॅप अ‍ॅक्टिव्हिटी सेटिंग सुरू केलेली असल्यास, हा डेटा तुमच्या Google खाते वर सेव्ह केला जाऊ शकतो. <ph name="BEGIN_LINK1" />अधिक जाणून घ्या<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">कनेक्शन जोडा</translation>
 <translation id="2948300991547862301"><ph name="PAGE_TITLE" /> वर जा</translation>
@@ -1354,7 +1355,6 @@
 <translation id="2961695502793809356">पुढे जाण्यासाठी क्लिक करा, इतिहास पहाण्यासाठी होल्ड करा</translation>
 <translation id="2963151496262057773">खालील प्लगिन असंवादी आहे: <ph name="PLUGIN_NAME" />तुम्ही हे थांबवू इच्छिता?</translation>
 <translation id="2966937470348689686">Android प्राधान्ये व्यवस्थापित करा</translation>
-<translation id="2972557485845626008">फर्मवेयर</translation>
 <translation id="2972581237482394796">&amp;पुन्हा करा</translation>
 <translation id="2973324205039581528">साइट म्यूट करा</translation>
 <translation id="2977480621796371840">गटामधून काढून टाका</translation>
@@ -1612,7 +1612,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">विभाजक</translation>
 <translation id="3387614642886316601">वर्धित केलेले स्पेल चेक वापरा</translation>
-<translation id="3393352139658145068">कोणीही “Ok Google” म्हटल्यावर असिस्टंटला अ‍ॅक्टिव्हेट करा. बॅटरी सेव्ह करण्यासाठी, तुमचे डिव्हाइस एखाद्या पॉवर स्रोताशी कनेक्ट केलेले असेल तेव्हाच “Ok Google” सुरू असेल.</translation>
 <translation id="3396800784455899911">"स्वीकारा आणि सुरू ठेवा" या बटणावर क्लिक करून तुम्ही या Google सेवांसाठी वर वर्णन केलेल्या प्रक्रियांना सहमती दर्शवता.</translation>
 <translation id="3399432415385675819">सूचना बंद केल्या जातील</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - हस्तक्षेप केला</translation>
@@ -1773,6 +1772,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> दर्शवा</translation>
 <translation id="3613422051106148727">&amp;नवीन टॅबमध्ये उघडा</translation>
 <translation id="3615073365085224194">तुमच्या बोटाने फिंगरप्रिंट सेन्सरला स्पर्श करा</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> स्कॅन केली जात आहे.</translation>
 <translation id="3616741288025931835">ब्राउझिंग डेटा &amp;साफ करा...</translation>
 <translation id="3617891479562106823">बॅकग्राउंड अनुपलब्ध आहेत. नंतर पुन्हा प्रयत्न करा.</translation>
 <translation id="3619115746895587757">कॅपिचिनो</translation>
@@ -1887,7 +1887,6 @@
 <translation id="3759933321830434300">वेब पृष्ठांचे भाग अवरोधित करा</translation>
 <translation id="3760460896538743390">&amp;पार्श्वभूमी पृष्ठाचे निरीक्षण करा</translation>
 <translation id="37613671848467444">&amp;गुप्त विंडोमध्ये उघडा</translation>
-<translation id="3764314093345384080">तपशीलवार बिल्ड माहिती</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{एका USB डिव्हाइससह संवाद प्रस्थापित करा}other{# USB डिव्हाइसेससह संवाद प्रस्थापित करा}}</translation>
 <translation id="3765246971671567135">ऑफलाइन डेमो मोड धोरण रीड करता आले नाही.</translation>
 <translation id="3768037234834996183">तुमची प्राधान्ये संकालित करत आहे...</translation>
@@ -2167,7 +2166,6 @@
 <translation id="4138267921960073861">साइन-इन स्क्रीनवर वापरकर्ता नावे आणि फोटो दर्शवा</translation>
 <translation id="4142052906269098341">तुमच्या फोनने <ph name="DEVICE_TYPE" /> अनलॉक करा. <ph name="LINK_BEGIN" />अधिक जाणून घ्या<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">आणखी चांगल्या दर्जाचे व्हिडिओ मिळवा आणि बॅटरी लाइफ वाचवा. व्हिडिओ फक्त तुमच्या Cast सुरू केलेल्या स्क्रीनवर प्ले होईल.</translation>
-<translation id="4145922204387553806">तुमच्या स्क्रीनवर काय आहे यासंबंधित माहिती असिस्टंटला दर्शवू द्या</translation>
 <translation id="4146026355784316281">नेहमी सिस्टम दर्शकासह उघडा</translation>
 <translation id="4146785383423576110">रीसेट करा आणि साफ करा</translation>
 <translation id="4147911968024186208">रीबूट करा. तुम्हाला ही एरर पुन्हा दिसल्यास कृपया तुमच्या साहाय्य प्रतिनिधीशी संपर्क साधा.</translation>
@@ -2254,6 +2252,7 @@
 <translation id="4297322094678649474">भाषा बदला</translation>
 <translation id="4301671483919369635">या पेजला फाइल संपादित करण्याची अनुमती आहे</translation>
 <translation id="4303079906735388947">तुमच्या सिक्युरिटी कीसाठी नवीन पिन सेट करा</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" /> वर कॉपी करा</translation>
 <translation id="4306119971288449206">अॅप्स "<ph name="CONTENT_TYPE" />" आशय प्रकारासह दिली जाणे आवश्यक आहे</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K लाइव्ह)</translation>
 <translation id="4310139701823742692">फाइलचा फॉरमॅट चुकीचा आहे. PPD फाइल तपासा आणि पुन्हा प्रयत्न करा.</translation>
@@ -2389,7 +2388,6 @@
 <translation id="4534661889221639075">पुन्हा प्रयत्न करा.</translation>
 <translation id="4535127706710932914">डीफॉल्ट प्रोफाइल</translation>
 <translation id="4535767533210902251">तुमच्या कीबोर्डवर सर्वात वर उजवीकडे फिंगरप्रिंट सेन्सर आहे. कोणत्याही बोटाने त्याला हळुवार स्पर्श करा.</translation>
-<translation id="4538417792467843292">शब्द हटवा </translation>
 <translation id="4538684596480161368">नेहमी सॅन्डबॉक्स नसलेल्या प्लगिन <ph name="HOST" /> वर अवरोधित करा</translation>
 <translation id="4538792345715658285">एंटरप्राइज धोरणाद्वारे इंस्टॉल केले.</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" /> आणि <ph name="WEBSITE_2" /> वर तुमचा डेटा वाचा</translation>
@@ -2933,6 +2931,7 @@
 <translation id="5367091008316207019">फाईल वाचत आहे..</translation>
 <translation id="5368720394188453070">तुमचा फोन लॉक केला आहे. प्रविष्‍ट करण्‍यासाठी तो अनलॉक करा.</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> मध्ये साइन इन करा</translation>
+<translation id="5369491905435686894">माउस अ‍ॅक्सिलरेशन सुरू करा</translation>
 <translation id="5370819323174483825">&amp;रीलोड करा</translation>
 <translation id="5372529912055771682">प्रदान केलेला नोंदणी प्रकार ऑपरेटिंग सिस्टमच्या या आवृत्तीमध्‍येला सपोर्ट नाही. कृपया तुम्ही नवीनतम आवृत्ती चालवत असल्याची खात्री करा आणि पुन्हा प्रयत्न करा.</translation>
 <translation id="5372579129492968947">एक्स्टेंशन अनपिन करा</translation>
@@ -3005,6 +3004,7 @@
 <translation id="5464632865477611176">यावेळी रन करा</translation>
 <translation id="5464660706533281090">ही सेटिंग लहान मूल वापरकर्ता बदलू शकत नाही.</translation>
 <translation id="5466374726908360271">पेस्ट करा आणि “<ph name="SEARCH_TERMS" />” शोधा</translation>
+<translation id="5468173180030470402">फाइल शेअर शोधत आहात का</translation>
 <translation id="5471768120198416576">हाय! मी तुमचा टेक्‍स्‍ट टू स्‍पीच व्हॉइस आहे.</translation>
 <translation id="5473333559083690127">नवीन पिन पुन्हा प्रविष्‍ट करा</translation>
 <translation id="5481941284378890518">जवळपासचे प्रिंटर जोडा</translation>
@@ -3541,6 +3541,7 @@
 <translation id="6233154960150021497">कीबोर्डऐवजी व्हॉइस वापरण्यासाठी डीफॉल्ट</translation>
 <translation id="6234474535228214774">इंस्टॉल करणे प्रलंबित आहे</translation>
 <translation id="6237816943013845465">तुम्हाला स्क्रीन रिझोल्युशन अॅडजस्ट करण्याची अनुमती देते</translation>
+<translation id="6238767809035845642">मजकूर इतर डिव्हाइसवरून शेअर केला आहे</translation>
 <translation id="6238923052227198598">लॉक स्क्रीनवर नवीनतम टीप ठेवा</translation>
 <translation id="6239558157302047471">रीलोड आणि फ्रेम करा</translation>
 <translation id="6241530762627360640">तुमच्या सिस्टमशी जोडलेल्या ब्लूटूथ डिव्हाइसविषयीची माहिती अॅक्सेस करा आणि जवळपासचे ब्लूटूथ डिव्हाइस शोधा.</translation>
@@ -3767,7 +3768,6 @@
 <translation id="6577284282025554716">डाउनलोड रद्द केले: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">तुमचे Google वापरकर्तानाव आणि पासवर्डसह सिंक केलेले पासवर्ड एंक्रिप्शन करा</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - डेस्कटॉप आशय शेअर केला</translation>
-<translation id="6580151766480067746">ARC आवृत्ती</translation>
 <translation id="6582080224869403177">तुमची सुरक्षितता अपग्रेड करण्यासाठी <ph name="DEVICE_TYPE" /> रीसेट करा.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">प्राथमिक माउस बटण स्वॅप करा</translation>
@@ -4372,6 +4372,7 @@
 <translation id="7487141338393529395">वर्धित केलेले स्पेल चेक सुरू करा</translation>
 <translation id="7487969577036436319">कोणतेही घटक इंस्टॉल केलेले नाहीत</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{आणि सर्व उघडा}=1{आणि बुकमार्क उघडा}other{आणि सर्व (#) उघडा}}</translation>
+<translation id="7489761397368794366">तुमच्या डिव्हाइसवरून कॉल करा</translation>
 <translation id="749028671485790643">व्यक्ती <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC पत्ता</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> एक्स्टेंशन पासवर्ड आणि क्रेडिट कार्ड नंबर यासारख्या वैयक्तिक डेटासह तुम्ही टाइप करता तो सर्व मजकूर गोळा करू शकतो.</translation>
@@ -4391,6 +4392,7 @@
 <translation id="7508054832109420082">प्रिंटरना ॲक्‍सेस द्या</translation>
 <translation id="7510943789645525906">तुम्ही वापरत असलेला पासवर्ड डेटा भंगचा भाग असल्यास तुम्हाला चेतावणी देते</translation>
 <translation id="7513029293694390567">स्टोअर क्रेडेंशियल वापरून वेबसाइटवर आपोआप साइन इन करा. अक्षम केले असल्यास, वेबसाइटवर साइन इन करण्यापूर्वी प्रत्येकवेळी तुम्हाला पुष्टीकरणासाठी विचारले जाईल.</translation>
+<translation id="7514239104543605883">तुमच्या डिव्हाइसवर कॉपी करा</translation>
 <translation id="7514365320538308">डाउनलोड करा</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">"Ok Google" म्हणा</translation>
@@ -4945,6 +4947,7 @@
 <translation id="8274332263553132018">फाइल कास्ट करा</translation>
 <translation id="8274924778568117936">अपडेट पूर्ण होईपर्यंत तुमचे <ph name="DEVICE_TYPE" /> बंद करू नका. इंस्‍टॉलेशन पूर्ण झाल्‍यानंतर तुमचे <ph name="DEVICE_TYPE" /> पुन्‍हा सुरू हाेईल .</translation>
 <translation id="8275038454117074363">इंपोर्ट</translation>
+<translation id="8275080796245127762">तुमच्या डिव्हाइसवरून कॉल करा</translation>
 <translation id="8276560076771292512">कॅशे आणि हार्ड रीलोड रिकामे करा</translation>
 <translation id="8281886186245836920">वगळा</translation>
 <translation id="8282947398454257691">तुमचा अनन्य डिव्हाइस अभिज्ञापक जाणून घ्या</translation>
@@ -5265,6 +5268,7 @@
 <translation id="8758418656925882523">डिक्टेशन सुरू करा (टाइप करण्यासाठी बोला)</translation>
 <translation id="8759408218731716181">एकाधिक साइन इन सेट करता आले नाही</translation>
 <translation id="8759753423332885148">अधिक जाणून घ्या.</translation>
+<translation id="8761945298804995673">हा वापरकर्ता आधीपासून अस्तित्वात आहे</translation>
 <translation id="8762886931014513155">तुमच्या <ph name="DEVICE_TYPE" /> ला अपडेट करण्याची आवश्यकता आहे</translation>
 <translation id="8763927697961133303">USB डिव्हाइस</translation>
 <translation id="8767621466733104912">सर्व वापरकर्त्यांसाठी Chrome आपोआप अपडेट करा</translation>
@@ -5354,6 +5358,7 @@
 <translation id="8879284080359814990">टॅब म्हणून &amp;दर्शवा</translation>
 <translation id="8879921471468674457">साइन इन माहिती लक्षात ठेवा</translation>
 <translation id="8881020143150461183">कृपया पुन्हा प्रयत्न करा. तांत्रिक सपोर्टसाठी, <ph name="CARRIER_NAME" /> शी संपर्क साधा.</translation>
+<translation id="8883273463630735858">टचपॅड अ‍ॅक्सिलरेशन सुरू करा</translation>
 <translation id="8884570509232205463">तुमचे डिव्हाइस आता <ph name="UNLOCK_TIME" /> वाजता लॉक होईल.</translation>
 <translation id="8885197664446363138">Smart Lock अनुपलब्ध आहे</translation>
 <translation id="8888253246822647887">अपग्रेड पूर्ण झाल्यावर तुमचे अ‍ॅप उघडेल. अपग्रेड करण्यास काही मिनिटे लागू शकतात.</translation>
diff --git a/chrome/app/resources/generated_resources_ms.xtb b/chrome/app/resources/generated_resources_ms.xtb
index 5f9adeb..cbcb4d03 100644
--- a/chrome/app/resources/generated_resources_ms.xtb
+++ b/chrome/app/resources/generated_resources_ms.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Untuk mendapatkan sambungan pada semua komputer anda, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Tindakan ini akan memadamkan semua data pada kunci keselamatan, termasuk PINnya</translation>
 <translation id="1475502736924165259">Anda mempunyai sijil pada fail yang tidak sepadan dengan mana-mana kategori lain</translation>
+<translation id="1476088332184200792">Salin ke Peranti Anda</translation>
 <translation id="1476607407192946488">&amp;Tetapan Bahasa</translation>
 <translation id="1478340334823509079">Butiran: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Pemasangan tidak didayakan</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Cetak menggunakan dialog sistem... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Tanya sebelum menghantar (disyorkan)</translation>
 <translation id="2384436799579181135">Ralat telah berlaku. Sila periksa pencetak anda dan cuba lagi.</translation>
-<translation id="2386926718981642523">Akses Assistant pada bila-bila masa anda menyebut "Ok Google"</translation>
 <translation id="2387458720915042159">Jenis sambungan proksi</translation>
 <translation id="2391419135980381625">Fon standard</translation>
 <translation id="2392369802118427583">Aktifkan</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Rendah</translation>
 <translation id="2942560570858569904">Menunggu...</translation>
 <translation id="2942581856830209953">Peribadikan halaman ini</translation>
+<translation id="294308617863380348">Termasuk kuki pihak ketiga</translation>
 <translation id="2944060181911631861">Hantar data penggunaan dan diagnostik. Bantu kami meningkatkan pengalaman Android anda dengan menghantar data diagnostik dan penggunaan peranti serta apl kepada Google secara automatik. Data ini akan membantu peningkatan kestabilan sistem dan apl serta pelbagai lagi. Sesetengah data agregat juga akan membantu apl dan rakan kongsi Google, seperti pembangun Android. Jika tetapan Aktiviti Web &amp; Apl tambahan anda dihidupkan, data ini mungkin disimpan ke akaun Google anda. <ph name="BEGIN_LINK1" />Ketahui Lebih Lanjut<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Tambah sambungan</translation>
 <translation id="2948300991547862301">Pergi ke <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Klik untuk ke hadapan, tahan untuk melihat sejarah</translation>
 <translation id="2963151496262057773">Pemalam berikut tidak responsif: <ph name="PLUGIN_NAME" />Adakah anda ingin menghentikannya?</translation>
 <translation id="2966937470348689686">Urus pilihan Android</translation>
-<translation id="2972557485845626008">Perisian tegar</translation>
 <translation id="2972581237482394796">&amp;Buat Semula</translation>
 <translation id="2973324205039581528">Redam Tapak</translation>
 <translation id="2977480621796371840">Alih keluar daripada kumpulan</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Pemisah</translation>
 <translation id="3387614642886316601">Gunakan semak ejaan yang dipertingkatkan</translation>
-<translation id="3393352139658145068">Aktifkan Assistant apabila sesiapa menyebut “Ok Google”. Untuk menjimatkan bateri, “Ok Google” hanya dihidupkan apabila peranti anda disambungkan kepada bekalan kuasa.</translation>
 <translation id="3396800784455899911">Dengan mengklik butang "Terima dan teruskan", anda bersetuju membenarkan pemprosesan yang dihuraikan di atas untuk perkhidmatan Google ini.</translation>
 <translation id="3399432415385675819">Pemberitahuan akan dilumpuhkan</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - berselang-seli</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Tunjukkan <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Buka dalam tab baharu</translation>
 <translation id="3615073365085224194">Sentuh penderia cap jari menggunakan jari anda</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> sedang diimbas.</translation>
 <translation id="3616741288025931835">&amp;Kosongkan Data Menyemak Imbas...</translation>
 <translation id="3617891479562106823">Latar belakang tidak tersedia. Cuba lagi nanti.</translation>
 <translation id="3619115746895587757">Kapucino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Sekat sebahagian halaman web</translation>
 <translation id="3760460896538743390">Halaman Periksa &amp;Latar Belakang</translation>
 <translation id="37613671848467444">Buka dalam Tetingkap &amp;Inkognito</translation>
-<translation id="3764314093345384080">Maklumat binaan terperinci</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Berkomunikasi dengan peranti USB}other{Berkomunikasi dengan # peranti USB}}</translation>
 <translation id="3765246971671567135">Tidak dapat membaca dasar mod tunjuk cara luar talian.</translation>
 <translation id="3768037234834996183">Menyegerakkan pilihan anda...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Paparkan nama pengguna dan foto pada skrin log masuk</translation>
 <translation id="4142052906269098341">Buka kunci <ph name="DEVICE_TYPE" /> anda dengan telefon anda. <ph name="LINK_BEGIN" />Ketahui lebih lanjut<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Dapatkan video berkualiti lebih baik dan jimatkan hayat bateri. Video akan dimainkan hanya pada skrin yang berdaya Cast.</translation>
-<translation id="4145922204387553806">Benarkan Assistant menunjukkan maklumat yang berkaitan dengan paparan skrin anda</translation>
 <translation id="4146026355784316281">Sentiasa Buka dengan Alat Lihat Sistem</translation>
 <translation id="4146785383423576110">Tetapkan semula dan padam bersih</translation>
 <translation id="4147911968024186208">Sila cuba semula. Jika ralat ini dipaparkan sekali lagi, sila hubungi wakil sokongan anda.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Tukar Bahasa</translation>
 <translation id="4301671483919369635">Halaman ini dibenarkan mengedit fail</translation>
 <translation id="4303079906735388947">Sediakan PIN baharu untuk kunci keselamatan anda</translation>
+<translation id="4305402730127028764">Salin ke <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Apl mesti disampaikan dengan jenis kandungan "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K langsung)</translation>
 <translation id="4310139701823742692">Format fail salah. Semak fail PPD dan cuba lagi.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Cuba lagi.</translation>
 <translation id="4535127706710932914">Profil Lalai</translation>
 <translation id="4535767533210902251">Penderia cap jari ialah kekunci sebelah kanan bahagian atas pada papan kekunci anda. Sentuh dengan lembut menggunakan mana-mana jari.</translation>
-<translation id="4538417792467843292">Padam perkataan</translation>
 <translation id="4538684596480161368">Sentiasa sekat pemalam tanpa kotak pasir pada <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Dipasang oleh dasar perusahaan.</translation>
 <translation id="4542520061254486227">Baca data anda di <ph name="WEBSITE_1" /> dan <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Membaca fail..</translation>
 <translation id="5368720394188453070">Telefon anda dikunci. Buka kuncinya untuk masuk.</translation>
 <translation id="5368779022775404937">Log masuk ke <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Dayakan pemecutan tetikus</translation>
 <translation id="5370819323174483825">&amp;Muat semula</translation>
 <translation id="5372529912055771682">Mod pendaftaran yang diberikan tidak disokong oleh versi sistem pengendalian ini. Sila pastikan anda menjalankan versi terbaharu dan cuba lagi.</translation>
 <translation id="5372579129492968947">Nyahsemat sambungan</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Jalankan pada masa ini</translation>
 <translation id="5464660706533281090">Tetapan ini tidak boleh ditukar oleh pengguna kanak-kanak.</translation>
 <translation id="5466374726908360271">Ta&amp;mpal dan cari “<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Mencari perkongsian fail</translation>
 <translation id="5471768120198416576">Hai! Saya ialah suara teks ke pertuturan anda.</translation>
 <translation id="5473333559083690127">Masukkan semula PIN baharu</translation>
 <translation id="5481941284378890518">Tambahkan Pencetak Berdekatan</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Gunakan pilihan lalai yang menggunakan suara dan bukannya papan kekunci</translation>
 <translation id="6234474535228214774">Pemasangan belum selesai</translation>
 <translation id="6237816943013845465">Membolehkan anda melaraskan peleraian skrin anda</translation>
+<translation id="6238767809035845642">Teks yang dikongsi daripada Peranti Lain</translation>
 <translation id="6238923052227198598">Simpan nota terkini pada skrin kunci</translation>
 <translation id="6239558157302047471">Muat semula &amp;bingkai</translation>
 <translation id="6241530762627360640">Akses maklumat mengenai peranti Bluetooth yang dipasangkan dengan sistem anda dan temui peranti Bluetooth berhampiran.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Muat turun dibatalkan: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Sulitkan kata laluan yang disegerakkan dengan nama pengguna dan kata laluan Google anda</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Kandungan desktop dikongsi</translation>
-<translation id="6580151766480067746">Versi ARC</translation>
 <translation id="6582080224869403177">Tetapkan semula <ph name="DEVICE_TYPE" /> anda untuk meningkatkan keselamatan anda.</translation>
 <translation id="6584878029876017575">Menandatangani Microsoft Sepanjang Hayat</translation>
 <translation id="6586451623538375658">Tukar butang tetikus utama</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Hidupkan Semak Ejaan yang Dipertingkatkan</translation>
 <translation id="7487969577036436319">Tiada komponen dipasang</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Buka semua}=1{&amp;Buka penanda halaman}other{&amp;Buka semua (#)}}</translation>
+<translation id="7489761397368794366">Panggilan daripada peranti anda</translation>
 <translation id="749028671485790643"><ph name="VALUE" /> orang</translation>
 <translation id="7490813197707563893">Alamat MAC</translation>
 <translation id="7493386493263658176">Sambungan <ph name="EXTENSION_NAME" /> boleh mengumpul semua teks yang anda taip, termasuk data peribadi seperti kata laluan dan nombor kad kredit. Adakah anda ingin menggunakan sambungan ini?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Berikan akses kepada pencetak</translation>
 <translation id="7510943789645525906">Memberi anda amaran jika kata laluan yang anda gunakan adalah sebahagian daripada pelanggaran data</translation>
 <translation id="7513029293694390567">Log masuk secara automatik ke tapak web menggunakan bukti kelayakan yang disimpan. Jika dilumpuhkan, anda akan diminta memberikan pengesahan setiap kali sebelum mengelog masuk ke tapak web.</translation>
+<translation id="7514239104543605883">Salin ke peranti anda</translation>
 <translation id="7514365320538308">Muat Turun</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Sebut "Ok Google".</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Hantar fail</translation>
 <translation id="8274924778568117936">Jangan matikan atau menutup <ph name="DEVICE_TYPE" /> anda sehingga kemas kini selesai. <ph name="DEVICE_TYPE" /> anda akan dimulakan semula selepas pemasangan selesai.</translation>
 <translation id="8275038454117074363">Import</translation>
+<translation id="8275080796245127762">Panggilan daripada Peranti Anda</translation>
 <translation id="8276560076771292512">Cache kosong dan Muat Semula Keras</translation>
 <translation id="8281886186245836920">Langkau</translation>
 <translation id="8282947398454257691">Ketahui pengecam peranti unik anda</translation>
@@ -5269,6 +5272,7 @@
 <translation id="8758418656925882523">Dayakan imlak (cakap untuk menaip)</translation>
 <translation id="8759408218731716181">Tidak dapat menyediakan berbilang log masuk</translation>
 <translation id="8759753423332885148">Ketahui lebih lanjut.</translation>
+<translation id="8761945298804995673">Pengguna ini sudah wujud</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> anda memerlukan kemas kini</translation>
 <translation id="8763927697961133303">Peranti USB</translation>
 <translation id="8767621466733104912">Kemas kini Chrome untuk semua pengguna secara automatik</translation>
@@ -5357,6 +5361,7 @@
 <translation id="8879284080359814990">&amp;Paparkan Sebagai Tab</translation>
 <translation id="8879921471468674457">Ingat maklumat log masuk</translation>
 <translation id="8881020143150461183">Sila cuba lagi. Hubungi <ph name="CARRIER_NAME" /> untuk mendapatkan sokongan teknikal.</translation>
+<translation id="8883273463630735858">Dayakan pemecutan pad sentuh</translation>
 <translation id="8884570509232205463">Peranti anda kini dikunci pada <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock tidak tersedia</translation>
 <translation id="8888253246822647887">Apl anda akan dibuka apabila peningkatan selesai. Peningkatan boleh mengambil masa beberapa minit.</translation>
diff --git a/chrome/app/resources/generated_resources_nl.xtb b/chrome/app/resources/generated_resources_nl.xtb
index b365d04..9c81bc66 100644
--- a/chrome/app/resources/generated_resources_nl.xtb
+++ b/chrome/app/resources/generated_resources_nl.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Als je je extensies wilt gebruiken op al je computers, moet je <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Hierdoor worden alle gegevens op de beveiligingssleutel, waaronder de pincode, gewist.</translation>
 <translation id="1475502736924165259">Je hebt certificaten die niet in een van de andere categorieën vallen</translation>
+<translation id="1476088332184200792">Kopiëren naar je apparaat</translation>
 <translation id="1476607407192946488">&amp;Taalinstellingen</translation>
 <translation id="1478340334823509079">Details: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Installatie is niet ingeschakeld</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Afdrukken via systeemdialoogvenster... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Vragen vóór verzenden (aanbevolen)</translation>
 <translation id="2384436799579181135">Er is een fout opgetreden. Controleer je printer en probeer het opnieuw.</translation>
-<translation id="2386926718981642523">Open je Assistent door 'Oké Google' te zeggen</translation>
 <translation id="2387458720915042159">Proxyverbindingstype</translation>
 <translation id="2391419135980381625">Standaard lettertype</translation>
 <translation id="2392369802118427583">Activeren</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Laag</translation>
 <translation id="2942560570858569904">Wachten...</translation>
 <translation id="2942581856830209953">Deze pagina aanpassen</translation>
+<translation id="294308617863380348">Inclusief cookies van derden</translation>
 <translation id="2944060181911631861">Verzend gebruiks- en diagnostische gegevens. Verbeter je Android-functionaliteit door automatisch diagnostische, apparaat- en app-gebruiksgegevens naar Google te verzenden. Deze gegevens kunnen worden gebruikt om de systeem- en app-stabiliteit te verbeteren en andere optimalisaties mogelijk te maken. Daarnaast zijn bepaalde verzamelde gegevens nuttig voor Google-apps en -partners, zoals Android-ontwikkelaars. Als je de instelling voor aanvullende Web- en app-activiteit hebt ingeschakeld, kunnen deze gegevens worden opgeslagen in je Google-account. <ph name="BEGIN_LINK1" />Meer informatie<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Verbinding toevoegen</translation>
 <translation id="2948300991547862301">Ga naar <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Klik om verder te gaan, houd ingedrukt om de geschiedenis weer te geven</translation>
 <translation id="2963151496262057773">De volgende plug-in reageert niet meer: <ph name="PLUGIN_NAME" />Wil je deze beëindigen?</translation>
 <translation id="2966937470348689686">Android-voorkeuren beheren</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Opnieuw</translation>
 <translation id="2973324205039581528">Geluid van site dempen</translation>
 <translation id="2977480621796371840">Uit groep verwijderen</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separator</translation>
 <translation id="3387614642886316601">Verbeterde spellingcontrole gebruiken</translation>
-<translation id="3393352139658145068">Activeer de Assistent wanneer iemand 'Oké Google' zegt. 'Oké Google' is alleen ingeschakeld wanneer je apparaat op een voedingsbron is aangesloten om de batterij te sparen.</translation>
 <translation id="3396800784455899911">Door op de knop 'Accepteren en doorgaan' te klikken, ga je akkoord met de bovengenoemde verwerking voor deze Google-services.</translation>
 <translation id="3399432415385675819">Meldingen worden uitgeschakeld</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - geïnterlinieerd</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> weergeven</translation>
 <translation id="3613422051106148727">&amp;Openen op nieuw tabblad</translation>
 <translation id="3615073365085224194">Raak de vingerafdruksensor aan met je vinger</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> wordt gescand.</translation>
 <translation id="3616741288025931835">&amp;Browsegegevens wissen</translation>
 <translation id="3617891479562106823">Achtergronden zijn niet beschikbaar. Probeer het later opnieuw.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Delen van webpagina's blokkeren</translation>
 <translation id="3760460896538743390">&amp;Achtergrondpagina controleren</translation>
 <translation id="37613671848467444">Openen in &amp;incognitovenster</translation>
-<translation id="3764314093345384080">Gedetailleerde build-gegevens</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Communiceren met een USB-apparaat}other{Communiceren met # USB-apparaten}}</translation>
 <translation id="3765246971671567135">Kan beleid voor offline demomodus niet lezen.</translation>
 <translation id="3768037234834996183">Je voorkeuren worden gesynchroniseerd…</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Gebruikersnamen en foto's weergeven in het inlogscherm</translation>
 <translation id="4142052906269098341">Ontgrendel je <ph name="DEVICE_TYPE" /> met je telefoon. <ph name="LINK_BEGIN" />Meer informatie<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Ontvang video van betere kwaliteit en spaar de batterij. De video wordt alleen afgespeeld op je scherm dat werkt met Cast.</translation>
-<translation id="4145922204387553806">Laat de Assistent je scherm lezen om gerelateerde informatie op te zoeken</translation>
 <translation id="4146026355784316281">Altijd openen met systeemviewer</translation>
 <translation id="4146785383423576110">Resetten en opruimen</translation>
 <translation id="4147911968024186208">Probeer het opnieuw. Als deze fout opnieuw wordt weergegeven, neem je contact op met een medewerker van de ondersteuning.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Talen wijzigen</translation>
 <translation id="4301671483919369635">Deze pagina heeft toestemming om bestanden te bewerken</translation>
 <translation id="4303079906735388947">Stel een nieuwe pincode in voor je beveiligingssleutel</translation>
+<translation id="4305402730127028764">Kopiëren naar <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Apps moeten worden weergegeven met inhoudstype '<ph name="CONTENT_TYPE" />'</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K (<ph name="NUM_KILOBYTES_LIVE" /> K live)</translation>
 <translation id="4310139701823742692">Bestand heeft een onjuiste indeling. Controleer het PPD-bestand en probeer het opnieuw.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Probeer het opnieuw.</translation>
 <translation id="4535127706710932914">Standaardprofiel</translation>
 <translation id="4535767533210902251">De vingerafdruksensor is de toets rechtsboven op je toetsenbord. Raak deze kort aan met een vinger.</translation>
-<translation id="4538417792467843292">Woord verwijderen</translation>
 <translation id="4538684596480161368">Plug-ins zonder sandbox op <ph name="HOST" /> altijd blokkeren</translation>
 <translation id="4538792345715658285">Geïnstalleerd door bedrijfsbeleid.</translation>
 <translation id="4542520061254486227">Je gegevens voor <ph name="WEBSITE_1" /> en <ph name="WEBSITE_2" /> lezen</translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Bestand lezen...</translation>
 <translation id="5368720394188453070">Je telefoon is vergrendeld. Ontgrendel deze om door te gaan.</translation>
 <translation id="5368779022775404937">Inloggen bij <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Muisversnelling inschakelen</translation>
 <translation id="5370819323174483825">&amp;Opnieuw laden</translation>
 <translation id="5372529912055771682">De geleverde inschrijvingsmodus wordt niet ondersteund door deze versie van het besturingssysteem. Zorg ervoor dat je de nieuwste versie gebruikt en probeer het opnieuw.</translation>
 <translation id="5372579129492968947">Extensie losmaken</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Eenmalig uitvoeren</translation>
 <translation id="5464660706533281090">Deze instelling kan niet worden gewijzigd door gebruikers met een kinderaccount.</translation>
 <translation id="5466374726908360271">Pl&amp;akken en zoeken naar '<ph name="SEARCH_TERMS" />'</translation>
+<translation id="5468173180030470402">Zoeken naar fileshares</translation>
 <translation id="5471768120198416576">Hallo. Ik ben je stem voor tekst-naar-spraak.</translation>
 <translation id="5473333559083690127">Pincode opnieuw opgeven</translation>
 <translation id="5481941284378890518">Printers in de buurt toevoegen</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Standaard spraak in plaats van toetsenbord gebruiken</translation>
 <translation id="6234474535228214774">Installatie in behandeling</translation>
 <translation id="6237816943013845465">Hiermee kun je de schermresolutie aanpassen</translation>
+<translation id="6238767809035845642">Tekst gedeeld vanaf ander apparaat</translation>
 <translation id="6238923052227198598">Laatste notitie op vergrendelingsscherm laten staan</translation>
 <translation id="6239558157302047471">&amp;Frame opnieuw laden</translation>
 <translation id="6241530762627360640">Toegang krijgen tot informatie over Bluetooth-apparaten die zijn gekoppeld met je systeem en Bluetooth-apparaten in de buurt detecteren.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Download geannuleerd: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Gesynchroniseerde wachtwoorden versleutelen met je Google-gebruikersnaam en -wachtwoord</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" />: content van bureaublad gedeeld</translation>
-<translation id="6580151766480067746">ARC-versie</translation>
 <translation id="6582080224869403177">Reset je <ph name="DEVICE_TYPE" /> om je beveiliging te upgraden.</translation>
 <translation id="6584878029876017575">Microsoft-ondertekening van levensduur</translation>
 <translation id="6586451623538375658">Primaire muisknop omwisselen</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Verbeterde spellingcontrole inschakelen</translation>
 <translation id="7487969577036436319">Er zijn geen componenten geïnstalleerd</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{Alles &amp;openen}=1{Bladwijzer &amp;openen}other{Alles (#) &amp;openen}}</translation>
+<translation id="7489761397368794366">Bellen vanaf je apparaat</translation>
 <translation id="749028671485790643">Persoon <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-adres</translation>
 <translation id="7493386493263658176">De extensie <ph name="EXTENSION_NAME" /> kan alle tekst verzamelen die je typt, waaronder persoonsgegevens zoals wachtwoorden en creditcardnummers. Wil je deze extensie gebruiken?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Toegang verlenen tot printers</translation>
 <translation id="7510943789645525906">Je krijgt een waarschuwing als je wachtwoord betrokken was bij een gegevenslek</translation>
 <translation id="7513029293694390567">Automatisch inloggen bij websites met de opgeslagen gegevens. Als de functie is uitgeschakeld, wordt elke keer om bevestiging gevraagd voordat je inlogt bij een website.</translation>
+<translation id="7514239104543605883">Kopiëren naar je apparaat</translation>
 <translation id="7514365320538308">Downloaden</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Zeg "Oké Google"</translation>
@@ -4947,6 +4949,7 @@
 <translation id="8274332263553132018">Bestand casten</translation>
 <translation id="8274924778568117936">Je moet je <ph name="DEVICE_TYPE" /> niet uitschakelen of sluiten totdat de update is voltooid. Je <ph name="DEVICE_TYPE" /> wordt opnieuw opgestart nadat de installatie is voltooid.</translation>
 <translation id="8275038454117074363">Importeren</translation>
+<translation id="8275080796245127762">Bellen vanaf je apparaat</translation>
 <translation id="8276560076771292512">Cache wissen en geforceerd opnieuw laden</translation>
 <translation id="8281886186245836920">Overslaan</translation>
 <translation id="8282947398454257691">Je unieke apparaat-ID weten</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Dicteren inschakelen (spreken om te typen)</translation>
 <translation id="8759408218731716181">Kan toegang tot meerdere accounts niet instellen</translation>
 <translation id="8759753423332885148">Meer informatie.</translation>
+<translation id="8761945298804995673">Deze gebruiker bestaat al</translation>
 <translation id="8762886931014513155">Je <ph name="DEVICE_TYPE" /> moet worden geüpdatet</translation>
 <translation id="8763927697961133303">USB-apparaat</translation>
 <translation id="8767621466733104912">Chrome automatisch updaten voor alle gebruikers</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">Weergeven al&amp;s tabblad</translation>
 <translation id="8879921471468674457">Inloggegevens onthouden</translation>
 <translation id="8881020143150461183">Probeer het opnieuw. Neem contact op met <ph name="CARRIER_NAME" /> voor technische support.</translation>
+<translation id="8883273463630735858">Touchpadversnelling inschakelen</translation>
 <translation id="8884570509232205463">Je apparaat wordt nu vergrendeld om <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock is niet beschikbaar</translation>
 <translation id="8888253246822647887">Je app wordt geopend wanneer de upgrade is voltooid. Upgrades kunnen enkele minuten duren.</translation>
diff --git a/chrome/app/resources/generated_resources_no.xtb b/chrome/app/resources/generated_resources_no.xtb
index 6a8aaa29..6ef5b4b 100644
--- a/chrome/app/resources/generated_resources_no.xtb
+++ b/chrome/app/resources/generated_resources_no.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">For å få utvidelsene dine på alle datamaskinene du bruker, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Dette fører til at alle dataene på sikkerhetsnøkkelen, inkludert PIN-koden, blir slettet</translation>
 <translation id="1475502736924165259">Du har en fil med sertifikater som ikke passer inn i noen av de andre kategoriene</translation>
+<translation id="1476088332184200792">Kopiér til enheten din</translation>
 <translation id="1476607407192946488">&amp;Språkinnstillinger</translation>
 <translation id="1478340334823509079">Detaljer: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Installasjon er ikke aktivert</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">Skriv ut med systemdialogen <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Spør før noe sendes (anbefales).</translation>
 <translation id="2384436799579181135">Det har oppstått en feil. Sjekk skriveren og prøv på nytt.</translation>
-<translation id="2386926718981642523">Du kan når som helst snakke til assistenten ved å si «Ok Google»</translation>
 <translation id="2387458720915042159">Tilkoblingstype for proxy-tjener</translation>
 <translation id="2391419135980381625">Standardskrift</translation>
 <translation id="2392369802118427583">Aktiver</translation>
@@ -1338,6 +1338,7 @@
 <translation id="2941112035454246133">Lav</translation>
 <translation id="2942560570858569904">Venter …</translation>
 <translation id="2942581856830209953">Tilpass denne siden</translation>
+<translation id="294308617863380348">Inkludert informasjonskapsler fra tredjeparter</translation>
 <translation id="2944060181911631861">Send bruks- og diagnostikkdata. Hjelp til med å gjøre Android-opplevelsen din bedre ved å sende diagnostikk-, enhets- og appbruksdata til Google automatisk. Dette bidrar til å gjøre systemet og appene bedre og mer stabile. Noen aggregerte data hjelper også Google-apper og -partnere, for eksempel Android-utviklere. Hvis du har slått på innstillingen for annen nett- og appaktivitet, kan disse dataene bli lagret i Google-kontoen din. <ph name="BEGIN_LINK1" />Finn ut mer<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Legg til forbindelse</translation>
 <translation id="2948300991547862301">Gå til <ph name="PAGE_TITLE" /></translation>
@@ -1352,7 +1353,6 @@
 <translation id="2961695502793809356">Klikk for å gå fremover – hold for å se logg</translation>
 <translation id="2963151496262057773">Følgende programtillegg svarer ikke: <ph name="PLUGIN_NAME" />Vil du stoppe det?</translation>
 <translation id="2966937470348689686">Administrer Android-innstillinger</translation>
-<translation id="2972557485845626008">Fastvare</translation>
 <translation id="2972581237482394796">Gjø&amp;r om</translation>
 <translation id="2973324205039581528">Kutt lyden for nettsted</translation>
 <translation id="2977480621796371840">Fjern fra gruppen</translation>
@@ -1610,7 +1610,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Skillelinje</translation>
 <translation id="3387614642886316601">Bruk forbedret stavekontroll</translation>
-<translation id="3393352139658145068">Aktivér assistenten når noen sier «Ok Google». For å spare batteri er «Ok Google» bare på når enheten er koblet til en ekstern strømkilde.</translation>
 <translation id="3396800784455899911">Ved å klikke på «Godta og fortsett»-knappen godtar du behandlingen som beskrives ovenfor, for disse Google-tjenestene.</translation>
 <translation id="3399432415385675819">Varsler slås av</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertz) – linjefletting</translation>
@@ -1771,6 +1770,7 @@
 <translation id="3613134908380545408">Vis <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Åpne i ny fane</translation>
 <translation id="3615073365085224194">Trykk på fingeravtrykkssensoren med fingeren</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> skannes.</translation>
 <translation id="3616741288025931835">&amp;Fjern nettlesingsdata</translation>
 <translation id="3617891479562106823">Bakgrunner er utilgjengelig. Prøv på nytt senere.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1885,7 +1885,6 @@
 <translation id="3759933321830434300">blokkere deler av nettsider</translation>
 <translation id="3760460896538743390">Inspeksjons- og bakgrunnsside</translation>
 <translation id="37613671848467444">Åpne i &amp;inkognitovindu</translation>
-<translation id="3764314093345384080">Detaljert delversjonsinformasjon</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{kommunisere med én USB-enhet}other{kommunisere med # USB-enheter}}</translation>
 <translation id="3765246971671567135">Kunne ikke lese regelen for demomodus uten nett.</translation>
 <translation id="3768037234834996183">Synkroniserer innstillingene dine ...</translation>
@@ -2164,7 +2163,6 @@
 <translation id="4138267921960073861">Vis brukernavn og bilder på påloggingsskjermen</translation>
 <translation id="4142052906269098341">Lås opp <ph name="DEVICE_TYPE" /> med telefonen. <ph name="LINK_BEGIN" />Finn ut mer<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Få video med bedre kvalitet og spar batteri. Videoen spilles kun av på den Cast-kompatible skjermen.</translation>
-<translation id="4145922204387553806">La assistenten vise deg informasjon knyttet til det som er på skjermen din</translation>
 <translation id="4146026355784316281">Åpne alltid med systemvisningsprogrammet</translation>
 <translation id="4146785383423576110">Tilbakestill og rydd opp</translation>
 <translation id="4147911968024186208">Prøv på nytt. Hvis du ser denne feilen igjen, kan du kontakte brukerstøtterepresentanten din.</translation>
@@ -2251,6 +2249,7 @@
 <translation id="4297322094678649474">Endre språk</translation>
 <translation id="4301671483919369635">Denne siden har lov til å redigere filer</translation>
 <translation id="4303079906735388947">Angi en ny PIN-kode for sikkerhetsnøkkelen din</translation>
+<translation id="4305402730127028764">Kopiér til <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Apper må leveres med innholdstypen «<ph name="CONTENT_TYPE" />»</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> kB (<ph name="NUM_KILOBYTES_LIVE" /> kB ubrukt)</translation>
 <translation id="4310139701823742692">Filen har feil format. Sjekk PPD-filen og prøv på nytt.</translation>
@@ -2386,7 +2385,6 @@
 <translation id="4534661889221639075">Prøv på nytt.</translation>
 <translation id="4535127706710932914">Standardprofil</translation>
 <translation id="4535767533210902251">Fingeravtrykkssensoren er knappen øverst til høyre på tastaturet. Trykk forsiktig på den med hvilken som helst finger.</translation>
-<translation id="4538417792467843292">Slett ord</translation>
 <translation id="4538684596480161368">Blokkér alltid programtillegg som ikke er prosessisolert, på <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Installert av bedriftsinnstillingen.</translation>
 <translation id="4542520061254486227">Les dataene dine på <ph name="WEBSITE_1" /> og <ph name="WEBSITE_2" /></translation>
@@ -2537,7 +2535,7 @@
 <translation id="4763830802490665879">Informasjonskapsler fra flere nettsteder blir slettet ved avslutning.</translation>
 <translation id="4765582662863429759">Tillater at Android Messages videresender tekstmeldinger fra telefonen din til Chromebook</translation>
 <translation id="4768332406694066911">Du har sertifikater som identifiserer deg, fra disse organisasjonene</translation>
-<translation id="4774824109040330448">Skann QR-koden med en kompatibel autentikator-app på telefonen.</translation>
+<translation id="4774824109040330448">Skann QR-koden med en kompatibel autentiseringsapp på telefonen.</translation>
 <translation id="4776146737004271126">Åpne Android-innstillingene</translation>
 <translation id="4776917500594043016">Passord for <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="4777825441726637019">Play Butikk</translation>
@@ -2930,6 +2928,7 @@
 <translation id="5367091008316207019">Leser filen …</translation>
 <translation id="5368720394188453070">Telefonen er låst. Lås den opp for å få tilgang.</translation>
 <translation id="5368779022775404937">Logg på <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Slå på museakselerasjon</translation>
 <translation id="5370819323174483825">&amp;Last inn på nytt</translation>
 <translation id="5372529912055771682">Denne versjonen av operativsystemet støtter ikke registreringsmodusen som ble angitt. Kontroller at du kjører den nyeste versjonen, og prøv på nytt.</translation>
 <translation id="5372579129492968947">Løsne utvidelsen</translation>
@@ -3002,6 +3001,7 @@
 <translation id="5464632865477611176">Kjør denne gangen</translation>
 <translation id="5464660706533281090">Denne innstillingen kan ikke endres av en barnebruker.</translation>
 <translation id="5466374726908360271">&amp;Lim inn og søk etter «<ph name="SEARCH_TERMS" />»</translation>
+<translation id="5468173180030470402">Ser etter delte nettverksressurser</translation>
 <translation id="5471768120198416576">Heisann! Jeg er tekst til tale-stemmen din.</translation>
 <translation id="5473333559083690127">Skriv inn den nye PIN-koden på nytt</translation>
 <translation id="5481941284378890518">Legg til skrivere i nærheten</translation>
@@ -3537,6 +3537,7 @@
 <translation id="6233154960150021497">Bruk stemme i stedet for tastatur som standard</translation>
 <translation id="6234474535228214774">Venter på installering</translation>
 <translation id="6237816943013845465">Lar deg justere skjermoppløsningen</translation>
+<translation id="6238767809035845642">Tekst er delt fra en annen enhet</translation>
 <translation id="6238923052227198598">Hold det siste notatet på låseskjermen</translation>
 <translation id="6239558157302047471">Last inn &amp;rammen på nytt</translation>
 <translation id="6241530762627360640">bruke informasjon om Bluetooth-enheter tilkoblet systemet ditt og oppdage Bluetooth-enheter i nærheten.</translation>
@@ -3763,7 +3764,6 @@
 <translation id="6577284282025554716">Nedlasting avbrutt: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Kryptér synkroniserte passord med Google-brukernavnet og -passordet ditt</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – skrivebordinnholdet er delt</translation>
-<translation id="6580151766480067746">ARC-versjon</translation>
 <translation id="6582080224869403177">Tilbakestill <ph name="DEVICE_TYPE" /> for å oppgradere sikkerheten din.</translation>
 <translation id="6584878029876017575">Microsoft-livstidssignering</translation>
 <translation id="6586451623538375658">Bytt primær museknapp</translation>
@@ -4368,6 +4368,7 @@
 <translation id="7487141338393529395">Slå på forbedret stavekontroll</translation>
 <translation id="7487969577036436319">Ingen komponenter er installert</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Åpne alle}=1{&amp;Åpne bokmerket}other{&amp;Åpne alle (#)}}</translation>
+<translation id="7489761397368794366">Ring fra enheten din</translation>
 <translation id="749028671485790643">Person <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-adresse</translation>
 <translation id="7493386493263658176">Det kan hende at utvidelsen <ph name="EXTENSION_NAME" /> registrerer all tekst du skriver inn, deriblant personlige data som passord og kredittkortnumre. Vil du bruke denne utvidelsen?</translation>
@@ -4387,6 +4388,7 @@
 <translation id="7508054832109420082">Gi tilgang til skrivere</translation>
 <translation id="7510943789645525906">Advarer deg hvis et passord du bruker, har vært en del av et databrudd</translation>
 <translation id="7513029293694390567">Bruk lagret legitimasjon til å logge på nettsteder automatisk. Hvis dette er slått av, blir du bedt om bekreftelse hver gang du logger på et nettsted.</translation>
+<translation id="7514239104543605883">Kopiér til enheten din</translation>
 <translation id="7514365320538308">Last ned</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Si «Ok Google»</translation>
@@ -4636,7 +4638,7 @@
 <translation id="7851457902707056880">Pålogging er begrenset og kan gjøres bare via eierkontoen. Start enheten på nytt og logg på med eierkontoen. Maskinen starter automatisk på nytt om 30 sekunder.</translation>
 <translation id="7851716364080026749">Blokkér alltid bruk av kameraet og mikrofonen</translation>
 <translation id="7851720427268294554">IPP-parser</translation>
-<translation id="78526636422538552">Muligheten for å legge til flere Google-kontoer er avslått</translation>
+<translation id="78526636422538552">Det er ikke mulig å legge til flere Google-kontoer</translation>
 <translation id="7853747251428735">Flere verktø&amp;y</translation>
 <translation id="7857117644404132472">Legg til unntak</translation>
 <translation id="7857949311770343000">Er dette den nye fanen du ventet på?</translation>
@@ -4943,6 +4945,7 @@
 <translation id="8274332263553132018">Cast en fil</translation>
 <translation id="8274924778568117936">Du må ikke slå av eller lukke <ph name="DEVICE_TYPE" />-enheten din før oppdateringen er ferdig. <ph name="DEVICE_TYPE" />-enheten starter på nytt når installasjonen er ferdig.</translation>
 <translation id="8275038454117074363">Importer</translation>
+<translation id="8275080796245127762">Ring fra enheten din</translation>
 <translation id="8276560076771292512">Tøm bufferen og kjør en hard nyinnlasting</translation>
 <translation id="8281886186245836920">Hopp over</translation>
 <translation id="8282947398454257691">få kjennskap til den unike enhetsidentifikatoren</translation>
@@ -5263,6 +5266,7 @@
 <translation id="8758418656925882523">Slå på diktering (snakk for å skrive)</translation>
 <translation id="8759408218731716181">Kan ikke konfigurere multipålogging</translation>
 <translation id="8759753423332885148">Finn ut mer</translation>
+<translation id="8761945298804995673">Denne brukeren finnes allerede</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> trenger en oppdatering</translation>
 <translation id="8763927697961133303">USB-enhet</translation>
 <translation id="8767621466733104912">Oppdater Chrome automatisk for alle brukere</translation>
@@ -5351,6 +5355,7 @@
 <translation id="8879284080359814990">Vi&amp;s som fane</translation>
 <translation id="8879921471468674457">Husk påloggingsinfo</translation>
 <translation id="8881020143150461183">Prøv på nytt. For teknisk brukerstøtte, kontakt <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Slå på akselerasjon av styreflate</translation>
 <translation id="8884570509232205463">Enheten blir nå låst klokken <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock er utilgjengelig</translation>
 <translation id="8888253246822647887">Appen åpnes når oppgraderingen er ferdig. Oppgraderinger kan ta noen minutter.</translation>
diff --git a/chrome/app/resources/generated_resources_pl.xtb b/chrome/app/resources/generated_resources_pl.xtb
index 6b3e5e9..b072378c 100644
--- a/chrome/app/resources/generated_resources_pl.xtb
+++ b/chrome/app/resources/generated_resources_pl.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Aby korzystać z rozszerzeń na wszystkich swoich komputerach, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Spowoduje to usunięcie z klucza bezpieczeństwa wszystkich danych, w tym kodu PIN</translation>
 <translation id="1475502736924165259">Masz zapisane certyfikaty, które nie pasują do żadnej z pozostałych kategorii</translation>
+<translation id="1476088332184200792">Skopiuj na swoje urządzenie</translation>
 <translation id="1476607407192946488">&amp;Ustawienia języka</translation>
 <translation id="1478340334823509079">Szczegóły: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Instalacja nie została włączona</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Drukuj w oknie systemowym <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Pytaj przed wysłaniem (zalecane)</translation>
 <translation id="2384436799579181135">Wystąpił błąd. Sprawdź drukarkę i spróbuj ponownie.</translation>
-<translation id="2386926718981642523">Uruchamiaj Asystenta w dowolnej chwili, mówiąc „OK Google”</translation>
 <translation id="2387458720915042159">Typ połączenia z serwerem proxy</translation>
 <translation id="2391419135980381625">Czcionka standardowa</translation>
 <translation id="2392369802118427583">Aktywuj</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Niski</translation>
 <translation id="2942560570858569904">Czekam…</translation>
 <translation id="2942581856830209953">Dostosuj tę stronę</translation>
+<translation id="294308617863380348">Uwzględnianie plików cookie innych firm</translation>
 <translation id="2944060181911631861">Wysyłaj dane diagnostyczne oraz informacje o użyciu. Pomóż ulepszyć działanie Androida, wysyłając automatycznie do Google dane diagnostyczne oraz informacje o używaniu urządzenia i aplikacji. Dzięki temu będziemy mogli poprawić stabilność systemu i aplikacji oraz wprowadzić inne ulepszenia. Niektóre dane zbiorcze pomogą nam też udoskonalić aplikacje Google lub zostaną wykorzystane przez naszych partnerów, na przykład deweloperów aplikacji na Androida. Jeśli włączysz ustawienie Dodatkowa aktywność w internecie i aplikacjach, te dane mogą być zapisywane na Twoim koncie Google. <ph name="BEGIN_LINK1" />Więcej informacji<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Dodaj połączenie</translation>
 <translation id="2948300991547862301">Wejdź na <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Kliknij, aby przejść dalej. Przytrzymaj, aby wyświetlić historię</translation>
 <translation id="2963151496262057773">Ta wtyczka nie odpowiada: <ph name="PLUGIN_NAME" />Chcesz ją zatrzymać?</translation>
 <translation id="2966937470348689686">Zarządzaj ustawieniami Androida</translation>
-<translation id="2972557485845626008">Oprogramowanie układowe</translation>
 <translation id="2972581237482394796">&amp;Ponów</translation>
 <translation id="2973324205039581528">Wycisz stronę</translation>
 <translation id="2977480621796371840">Usuń z grupy</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separator</translation>
 <translation id="3387614642886316601">Używaj ulepszonego sprawdzania pisowni</translation>
-<translation id="3393352139658145068">Aktywuj Asystenta, gdy dowolna osoba powie „OK Google”. Aby oszczędzać baterię, to polecenie głosowe będzie aktywne tylko wtedy, gdy urządzenie będzie podłączone do zasilania.</translation>
 <translation id="3396800784455899911">Klikając przycisk „Zaakceptuj i kontynuuj”, wyrażasz zgodę na opisane powyżej przetwarzanie danych w tych usługach Google.</translation>
 <translation id="3399432415385675819">Powiadomienia zostaną wyłączone</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hz) – z przeplotem</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Pokaż <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Otwórz w nowej karcie</translation>
 <translation id="3615073365085224194">Przyłóż palec do czytnika linii papilarnych</translation>
+<translation id="3615579745882581859">Skanuję plik <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;Wyczyść dane przeglądania...</translation>
 <translation id="3617891479562106823">Tła są niedostępne. Spróbuj ponownie później.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Blokowanie części stron internetowych</translation>
 <translation id="3760460896538743390">Sprawdź &amp;stronę tła</translation>
 <translation id="37613671848467444">Otwórz w oknie &amp;incognito</translation>
-<translation id="3764314093345384080">Szczegółowe informacje o kompilacji</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Komunikuje się z urządzeniem USB}few{Komunikuje się z # urządzeniami USB}many{Komunikuje się z # urządzeniami USB}other{Komunikuje się z # urządzenia USB}}</translation>
 <translation id="3765246971671567135">Nie udało się odczytać zasad trybu demonstracyjnego offline.</translation>
 <translation id="3768037234834996183">Synchronizuję ustawienia...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Pokaż nazwy użytkowników i zdjęcia na stronie logowania</translation>
 <translation id="4142052906269098341">Odblokowuj urządzenie <ph name="DEVICE_TYPE" /> telefonem. <ph name="LINK_BEGIN" />Więcej informacji<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Lepsza jakość filmów i dłuższy czas pracy na baterii. Filmy będą odtwarzane tylko na ekranie obsługującym Cast.</translation>
-<translation id="4145922204387553806">Pozwól Asystentowi wyświetlić więcej informacji związanych z tym, co masz na ekranie</translation>
 <translation id="4146026355784316281">Zawsze otwieraj w przeglądarce systemowej</translation>
 <translation id="4146785383423576110">Resetowanie komputera i czyszczenie danych</translation>
 <translation id="4147911968024186208">Spróbuj jeszcze raz. Jeśli ten błąd pojawi się ponownie, skontaktuj się z przedstawicielem pomocy.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Zmień języki</translation>
 <translation id="4301671483919369635">Ta strona ma zezwolenie na edytowanie plików</translation>
 <translation id="4303079906735388947">Ustaw nowy kod PIN klucza bezpieczeństwa</translation>
+<translation id="4305402730127028764">Skopiuj na: <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Aplikacje muszą być udostępniane z parametrem content-type „<ph name="CONTENT_TYPE" />”</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> KB (aktywne <ph name="NUM_KILOBYTES_LIVE" /> KB)</translation>
 <translation id="4310139701823742692">Plik ma niewłaściwy format. Sprawdź plik PPD i spróbuj ponownie.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Spróbuj ponownie.</translation>
 <translation id="4535127706710932914">Profil domyślny</translation>
 <translation id="4535767533210902251">Czytnik linii papilarnych to klawisz w prawym górnym rogu klawiatury. Dotknij go delikatnie dowolnym palcem.</translation>
-<translation id="4538417792467843292">Usuń słowo</translation>
 <translation id="4538684596480161368">Zawsze blokuj wtyczki poza piaskownicą na <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Zainstalowane na podstawie zasad przedsiębiorstwa.</translation>
 <translation id="4542520061254486227">Odczyt Twoich danych na stronie <ph name="WEBSITE_1" /> i <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Odczytuję plik..</translation>
 <translation id="5368720394188453070">Twój telefon jest zablokowany. Aby uzyskać do niego dostęp, odblokuj go.</translation>
 <translation id="5368779022775404937">Zaloguj się na <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Włącz przyspieszenie myszy</translation>
 <translation id="5370819323174483825">&amp;Odśwież</translation>
 <translation id="5372529912055771682">Ta wersja systemu operacyjnego nie obsługuje podanego trybu rejestrowania. Upewnij się, że używasz najnowszej wersji i spróbuj ponownie.</translation>
 <translation id="5372579129492968947">Odepnij rozszerzenie</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Uruchom tym razem</translation>
 <translation id="5464660706533281090">Dziecko nie może zmienić tego ustawienia.</translation>
 <translation id="5466374726908360271">&amp;Wklej i wyszukaj „<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Wyszukuję udziały plików</translation>
 <translation id="5471768120198416576">Witaj. Jestem Twoim głosem do czytania tekstu.</translation>
 <translation id="5473333559083690127">Ponownie wpisz nowy kod PIN</translation>
 <translation id="5481941284378890518">Dodaj drukarki znalezione w pobliżu</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Domyślnie używaj głosu zamiast klawiatury</translation>
 <translation id="6234474535228214774">Oczekiwanie na instalację</translation>
 <translation id="6237816943013845465">Pozwala zmienić rozdzielczość ekranu</translation>
+<translation id="6238767809035845642">Tekst udostępniany przez inne urządzenie</translation>
 <translation id="6238923052227198598">Wyświetlaj najnowszą notatkę na ekranie blokady</translation>
 <translation id="6239558157302047471">Załaduj ponownie &amp;ramkę</translation>
 <translation id="6241530762627360640">Dostęp do informacji o urządzeniach Bluetooth sparowanych z systemem oraz wykrywanie urządzeń Bluetooth w pobliżu</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Anulowano pobieranie: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Szyfruj synchronizowane hasła przy użyciu nazwy użytkownika i hasła Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – udostępnia zawartość pulpitu</translation>
-<translation id="6580151766480067746">Wersja ARC</translation>
 <translation id="6582080224869403177">Aby zwiększyć bezpieczeństwo, musisz zresetować urządzenie <ph name="DEVICE_TYPE" />.</translation>
 <translation id="6584878029876017575">Podpisywanie dożywotnie firmy Microsoft</translation>
 <translation id="6586451623538375658">Zamień główny przycisk myszy</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Włączanie ulepszonego sprawdzania pisowni</translation>
 <translation id="7487969577036436319">Nie zainstalowano żadnych komponentów</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Otwórz wszystkie}=1{&amp;Otwórz zakładkę}few{&amp;Otwórz wszystkie (#)}many{&amp;Otwórz wszystkie (#)}other{&amp;Otwórz wszystkie (#)}}</translation>
+<translation id="7489761397368794366">Zadzwoń ze swojego urządzenia</translation>
 <translation id="749028671485790643">Osoba <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Adres MAC</translation>
 <translation id="7493386493263658176">Rozszerzenie <ph name="EXTENSION_NAME" /> może rejestrować wszystko, co wpisujesz, w tym poufne informacje takie jak hasła i numery kart kredytowych. Czy chcesz używać tego rozszerzenia?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Przyznaj dostęp do drukarek</translation>
 <translation id="7510943789645525906">Ostrzeżemy Cię, jeśli Twoje hasło zostało ujawnione w wyniku naruszenia bezpieczeństwa danych</translation>
 <translation id="7513029293694390567">Automatycznie loguj się na stronach, używając zapisanych danych logowania. Jeśli ta funkcja jest wyłączona, przed każdym zalogowaniem się zobaczysz prośbę o potwierdzenie.</translation>
+<translation id="7514239104543605883">Skopiuj na swoje urządzenie</translation>
 <translation id="7514365320538308">Pobierz</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Powiedz „OK Google”</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Prześlij plik</translation>
 <translation id="8274924778568117936">Nie wyłączaj ani nie zamykaj urządzenia <ph name="DEVICE_TYPE" /> do momentu ukończenia aktualizacji. Po zakończeniu instalacji <ph name="DEVICE_TYPE" /> uruchomi się ponownie.</translation>
 <translation id="8275038454117074363">Importuj</translation>
+<translation id="8275080796245127762">Zadzwoń ze swojego urządzenia</translation>
 <translation id="8276560076771292512">Opróżnij pamięć podręczną i wymuś ponowne załadowanie</translation>
 <translation id="8281886186245836920">Pomiń</translation>
 <translation id="8282947398454257691">Odczytywanie unikalnego identyfikatora Twojego urządzenia</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Włącz dyktowanie (mów, by pisać)</translation>
 <translation id="8759408218731716181">Nie można skonfigurować wielokrotnego logowania</translation>
 <translation id="8759753423332885148">Więcej informacji.</translation>
+<translation id="8761945298804995673">Ten użytkownik już istnieje</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> wymaga aktualizacji</translation>
 <translation id="8763927697961133303">Urządzenie USB</translation>
 <translation id="8767621466733104912">Automatycznie aktualizuj Chrome u wszystkich użytkowników</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Pokaż jako kartę</translation>
 <translation id="8879921471468674457">Zapamiętaj dane logowania</translation>
 <translation id="8881020143150461183">Spróbuj ponownie. Aby uzyskać pomoc techniczną, skontaktuj się z <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Włącz przyspieszenie touchpada</translation>
 <translation id="8884570509232205463">Urządzenie jest blokowane o <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock jest niedostępny</translation>
 <translation id="8888253246822647887">Aplikacja otworzy się po zakończeniu uaktualnienia. Może to potrwać kilka minut.</translation>
diff --git a/chrome/app/resources/generated_resources_pt-BR.xtb b/chrome/app/resources/generated_resources_pt-BR.xtb
index b250068..5b7cea1 100644
--- a/chrome/app/resources/generated_resources_pt-BR.xtb
+++ b/chrome/app/resources/generated_resources_pt-BR.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Para ter suas extensões em todos os computadores, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Essa ação apaga todos os dados na chave de segurança, inclusive os PINs.</translation>
 <translation id="1475502736924165259">Você tem certificados no arquivo que não correspondem a nenhuma das outras categorias</translation>
+<translation id="1476088332184200792">Copiar para seu dispositivo</translation>
 <translation id="1476607407192946488">&amp;Configurações de idioma</translation>
 <translation id="1478340334823509079">Detalhes: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">A instalação não está ativada</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Imprimir utilizando caixa de diálogo de sistema... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Perguntar antes de enviar (recomendado)</translation>
 <translation id="2384436799579181135">Ocorreu um erro. Verifique sua impressora e tente novamente.</translation>
-<translation id="2386926718981642523">Acessar seu Assistente sempre que você disser "Ok Google"</translation>
 <translation id="2387458720915042159">Tipo de conexão proxy</translation>
 <translation id="2391419135980381625">Fonte padrão</translation>
 <translation id="2392369802118427583">Ativar</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Baixa</translation>
 <translation id="2942560570858569904">Aguardando...</translation>
 <translation id="2942581856830209953">Personalizar esta página</translation>
+<translation id="294308617863380348">Incluindo cookies de terceiros</translation>
 <translation id="2944060181911631861">Envie dados de uso e diagnóstico. Ajude a melhorar sua experiência com o Android enviando automaticamente ao Google dados de diagnóstico, de uso de apps e do dispositivo. Eles ajudarão a melhorar o sistema, a estabilidade de apps e muito mais. Alguns dados agregados também ajudarão os apps do Google e os nossos parceiros, como os desenvolvedores Android. Se a configuração "Atividade na Web e de apps adicional" estiver ativada, esses dados poderão ser salvos na sua Conta do Google. <ph name="BEGIN_LINK1" />Saiba mais<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Adicionar conexão</translation>
 <translation id="2948300991547862301">Ir para a página <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Clique para avançar, mantenha pressionado para ver o histórico</translation>
 <translation id="2963151496262057773">Este plug-in não responde: <ph name="PLUGIN_NAME" />. Quer interrompê-lo?</translation>
 <translation id="2966937470348689686">Gerenciar preferências do Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Refazer</translation>
 <translation id="2973324205039581528">Desativar som do site</translation>
 <translation id="2977480621796371840">Remover do grupo</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separador</translation>
 <translation id="3387614642886316601">Usar a verificação ortográfica aprimorada</translation>
-<translation id="3393352139658145068">Ativar o Assistente quando alguém disser “Ok Google”. Para economizar bateria, a hotword “Ok Google” só é ativada quando o dispositivo está conectado a uma fonte de energia.</translation>
 <translation id="3396800784455899911">Ao clicar no botão "Aceitar e concluir", você aceita o processo descrito acima para esses serviços do Google.</translation>
 <translation id="3399432415385675819">As notificações serão desativadas</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertz) - entrelaçado</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Mostrar <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Abrir em nova guia</translation>
 <translation id="3615073365085224194">Toque no sensor de impressão digital com seu dedo</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> está sendo verificado.</translation>
 <translation id="3616741288025931835">&amp;Limpar dados de navegação...</translation>
 <translation id="3617891479562106823">Os planos de fundo estão indisponíveis. Tente novamente mais tarde.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Bloquear partes das páginas da Web</translation>
 <translation id="3760460896538743390">Inspecionar página de &amp;fundo</translation>
 <translation id="37613671848467444">Abrir em &amp;janela anônima</translation>
-<translation id="3764314093345384080">Informações detalhadas da versão</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Comunicar-se com um dispositivo USB}one{Comunicar-se com # dispositivos USB}other{Comunicar-se com # dispositivos USB}}</translation>
 <translation id="3765246971671567135">Não foi possível ler a política do modo de demonstração off-line.</translation>
 <translation id="3768037234834996183">Sincronizando suas preferências...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Mostrar nomes de usuários e fotos na tela de login</translation>
 <translation id="4142052906269098341">Desbloqueie o <ph name="DEVICE_TYPE" /> com seu smartphone. <ph name="LINK_BEGIN" />Saiba mais<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Tenha uma melhor qualidade de vídeo e economize bateria. Os vídeos serão reproduzidos apenas na tela compatível com Cast.</translation>
-<translation id="4145922204387553806">Permitir que o Assistente mostre informações relacionadas ao que está na sua tela</translation>
 <translation id="4146026355784316281">Sempre abrir com visualizador do sistema</translation>
 <translation id="4146785383423576110">Redefinir e limpar</translation>
 <translation id="4147911968024186208">Tente novamente. Se o erro se repetir, entre em contato com seu representante de suporte.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Alterar idiomas</translation>
 <translation id="4301671483919369635">Esta página tem permissão para editar arquivos</translation>
 <translation id="4303079906735388947">Configure um novo PIN para sua chave de segurança</translation>
+<translation id="4305402730127028764">Copiar para <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Os apps precisam ser veiculados com o tipo de conteúdo "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K (<ph name="NUM_KILOBYTES_LIVE" /> K ativos)</translation>
 <translation id="4310139701823742692">O arquivo está no formato errado. Verifique o arquivo PPD e tente novamente.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Tente novamente.</translation>
 <translation id="4535127706710932914">Perfil padrão</translation>
 <translation id="4535767533210902251">O sensor de impressão digital fica no canto superior direito do teclado. Toque nele de leve com qualquer dedo.</translation>
-<translation id="4538417792467843292">Excluir palavra</translation>
 <translation id="4538684596480161368">Sempre bloquear plug-ins sem sandbox em <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Instalada pela política empresarial.</translation>
 <translation id="4542520061254486227">Leia seus dados em <ph name="WEBSITE_1" /> e <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Lendo arquivo...</translation>
 <translation id="5368720394188453070">Seu smartphone está bloqueado. Desbloqueie-o para entrar.</translation>
 <translation id="5368779022775404937">Fazer login em <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Ativar aceleração do mouse</translation>
 <translation id="5370819323174483825">&amp;Recarregar</translation>
 <translation id="5372529912055771682">O modo de inscrição fornecido não é compatível com esta versão do sistema operacional. Verifique se você está executando a versão mais recente e tente novamente.</translation>
 <translation id="5372579129492968947">Libere a extensão</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Executar esta vez</translation>
 <translation id="5464660706533281090">Essa configuração não pode ser alterada por um usuário menor de idade.</translation>
 <translation id="5466374726908360271">Colar e pesquisar “<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Procurando compartilhamento de arquivos</translation>
 <translation id="5471768120198416576">Olá! Eu sou sua voz para conversão de texto em voz.</translation>
 <translation id="5473333559083690127">Digite o novo PIN novamente</translation>
 <translation id="5481941284378890518">Adicionar impressoras próximas</translation>
@@ -3544,6 +3544,7 @@
 <translation id="6233154960150021497">Usar voz em vez de teclado por padrão</translation>
 <translation id="6234474535228214774">Instalação pendente</translation>
 <translation id="6237816943013845465">Permite ajustar a resolução da tela</translation>
+<translation id="6238767809035845642">Texto compartilhado de outro dispositivo</translation>
 <translation id="6238923052227198598">Manter a anotação mais recente na tela de bloqueio</translation>
 <translation id="6239558157302047471">Atualizar &amp;frame</translation>
 <translation id="6241530762627360640">Acessar informações sobre dispositivos Bluetooth pareados com seu sistema e descobrir dispositivos Bluetooth nas proximidades.</translation>
@@ -3770,7 +3771,6 @@
 <translation id="6577284282025554716">Download cancelado: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Criptografar senhas sincronizadas com seu nome de usuário e senha do Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Conteúdo da área de trabalho compartilhado</translation>
-<translation id="6580151766480067746">Versão de ARC</translation>
 <translation id="6582080224869403177">Redefina seu <ph name="DEVICE_TYPE" /> para aumentar a segurança.</translation>
 <translation id="6584878029876017575">Assinatura de tempo de vida da Microsoft</translation>
 <translation id="6586451623538375658">Trocar botão principal do mouse</translation>
@@ -4375,6 +4375,7 @@
 <translation id="7487141338393529395">Ativar a verificação ortográfica aprimorada</translation>
 <translation id="7487969577036436319">Nenhum componente instalado</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Abrir tudo}=1{&amp;Abrir favorito}one{&amp;Abrir tudo (#)}other{&amp;Abrir tudo (#)}}</translation>
+<translation id="7489761397368794366">Ligar do seu dispositivo</translation>
 <translation id="749028671485790643">Pessoa <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Endereço MAC</translation>
 <translation id="7493386493263658176">A extensão <ph name="EXTENSION_NAME" /> pode coletar todo o texto que você digita, incluindo dados pessoais, como senhas e números de cartão de crédito. Quer usar essa extensão?</translation>
@@ -4394,6 +4395,7 @@
 <translation id="7508054832109420082">Conceder acesso a impressoras</translation>
 <translation id="7510943789645525906">Avisa se uma senha que você usa estava em uma violação de dados</translation>
 <translation id="7513029293694390567">Faça login automaticamente nos sites que usam credenciais armazenadas. Quando o recurso estiver desativado, será necessário fornecer uma confirmação todas as vezes que fizer login em um site.</translation>
+<translation id="7514239104543605883">Copiar para o dispositivo</translation>
 <translation id="7514365320538308">Fazer o download</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Diga "Ok Google"</translation>
@@ -4950,6 +4952,7 @@
 <translation id="8274332263553132018">Transmitir arquivo</translation>
 <translation id="8274924778568117936">Não desligue ou feche seu <ph name="DEVICE_TYPE" /> até que a atualização termine. O <ph name="DEVICE_TYPE" /> será reiniciado depois que a instalação for concluída.</translation>
 <translation id="8275038454117074363">Importar</translation>
+<translation id="8275080796245127762">Ligar do seu dispositivo</translation>
 <translation id="8276560076771292512">Esvaziar cache e recarregamento forçado</translation>
 <translation id="8281886186245836920">Pular</translation>
 <translation id="8282947398454257691">Saber seu identificador de dispositivo exclusivo</translation>
@@ -5270,6 +5273,7 @@
 <translation id="8758418656925882523">Ativar ditado (fale para digitar)</translation>
 <translation id="8759408218731716181">Não é possível configurar o login múltiplo</translation>
 <translation id="8759753423332885148">Saiba mais.</translation>
+<translation id="8761945298804995673">Esse usuário já existe</translation>
 <translation id="8762886931014513155">O <ph name="DEVICE_TYPE" /> precisa de uma atualização</translation>
 <translation id="8763927697961133303">Dispositivo USB</translation>
 <translation id="8767621466733104912">Atualizar automaticamente o Chrome para todos os usuários</translation>
@@ -5358,6 +5362,7 @@
 <translation id="8879284080359814990">&amp;Mostrar como guia</translation>
 <translation id="8879921471468674457">Lembrar informações de login</translation>
 <translation id="8881020143150461183">Tente novamente. Se precisar de suporte técnico, fale com a <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Ativar aceleração de touchpad</translation>
 <translation id="8884570509232205463">Seu dispositivo será bloqueado neste horário: <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">O Smart Lock não está disponível</translation>
 <translation id="8888253246822647887">O app será aberto após a conclusão do upgrade. Os upgrades podem levar alguns minutos.</translation>
diff --git a/chrome/app/resources/generated_resources_pt-PT.xtb b/chrome/app/resources/generated_resources_pt-PT.xtb
index 0b6c3eb..c7181cf 100644
--- a/chrome/app/resources/generated_resources_pt-PT.xtb
+++ b/chrome/app/resources/generated_resources_pt-PT.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Para obter as suas extensões em todos os computadores, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Isto apaga todos os dados na chave de segurança, incluindo o respetivo PIN</translation>
 <translation id="1475502736924165259">Tem certificados em arquivo que não encaixam em nenhuma das restantes categorias</translation>
+<translation id="1476088332184200792">Copiar para o dispositivo</translation>
 <translation id="1476607407192946488">&amp;Definições de idioma</translation>
 <translation id="1478340334823509079">Detalhes: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">A instalação não está ativada.</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Imprimir utilizando a caixa de diálogo do sistema... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Perguntar antes de enviar (recomendado)</translation>
 <translation id="2384436799579181135">Ocorreu um erro. Verifique a impressora e tente novamente.</translation>
-<translation id="2386926718981642523">Aceda ao Assistente sempre que disser "Ok Google"</translation>
 <translation id="2387458720915042159">Tipo de ligação proxy</translation>
 <translation id="2391419135980381625">Tipo de letra padrão</translation>
 <translation id="2392369802118427583">Ativar</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">Baixa</translation>
 <translation id="2942560570858569904">A aguardar...</translation>
 <translation id="2942581856830209953">Personalizar esta página</translation>
+<translation id="294308617863380348">Incluindo cookies de terceiros</translation>
 <translation id="2944060181911631861">Envie dados de utilização e diagnóstico. Ajude a melhorar a experiência Android ao enviar automaticamente dados de diagnóstico, de utilização do dispositivo e das aplicações para a Google. Deste modo, ajudará a melhorar a estabilidade das aplicações e do sistema, entre outras melhorias. Alguns dados agregados também ajudarão as aplicações e os parceiros Google, como os programadores Android. Se a definição Atividade da Web e de aplicações adicional estiver ativada, estes dados podem ser guardados na sua Conta Google. <ph name="BEGIN_LINK1" />Saiba mais<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Adicionar ligação</translation>
 <translation id="2948300991547862301">Aceder a <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2963151496262057773">O seguinte plug-in está sem resposta: <ph name="PLUGIN_NAME" />
 Pretende pará-lo?</translation>
 <translation id="2966937470348689686">Gerir as preferências do Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Repetir</translation>
 <translation id="2973324205039581528">Desativar som do site</translation>
 <translation id="2977480621796371840">Remover do grupo</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separador</translation>
 <translation id="3387614642886316601">Utilizar a verificação ortográfica avançada</translation>
-<translation id="3393352139658145068">Ativa o Assistente quando alguém diz "Ok Google”. Para poupar bateria, a funcionalidade "Ok Google" só é ativada quando o dispositivo estiver ligado a uma fonte de alimentação.</translation>
 <translation id="3396800784455899911">Ao clicar no botão "Aceitar e continuar", está a aceitar o processamento descrito acima para estes serviços Google.</translation>
 <translation id="3399432415385675819">As notificações serão desativadas</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertz) – entrelaçado</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Mostrar <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Abrir num novo separador</translation>
 <translation id="3615073365085224194">Toque no sensor de impressões digitais com o dedo.</translation>
+<translation id="3615579745882581859">O ficheiro <ph name="FILE_NAME" /> está a ser analisado.</translation>
 <translation id="3616741288025931835">&amp;Limpar Dados de Navegação...</translation>
 <translation id="3617891479562106823">Os fundos não estão disponíveis. Tente novamente mais tarde.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Bloquear partes de páginas Web</translation>
 <translation id="3760460896538743390">Inspecionar Página de Fundo</translation>
 <translation id="37613671848467444">Abrir na Janela de &amp;Navegação Anónima</translation>
-<translation id="3764314093345384080">Informações de compilação detalhadas</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Comunicar com um dispositivo USB}other{Comunicar com # dispositivos USB}}</translation>
 <translation id="3765246971671567135">Não foi possível ler a política do modo de demonstração offline.</translation>
 <translation id="3768037234834996183">A sincronizar as preferências...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Mostrar nomes de utilizador e fotos no ecrã de início de sessão</translation>
 <translation id="4142052906269098341">Desbloqueie o dispositivo <ph name="DEVICE_TYPE" /> com o seu telemóvel. <ph name="LINK_BEGIN" />Saiba mais<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Obtenha uma melhor qualidade de vídeo e poupe autonomia da bateria. O vídeo é reproduzido apenas no seu ecrã compatível com o Cast.</translation>
-<translation id="4145922204387553806">Permitir que o Assistente mostre informações relacionadas com o que está a ser apresentado no ecrã</translation>
 <translation id="4146026355784316281">Abrir sempre com o visualizador do sistema</translation>
 <translation id="4146785383423576110">Repor e limpar</translation>
 <translation id="4147911968024186208">Tente novamente. Se vir novamente este erro, contacte o seu representante do apoio técnico.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Alterar idiomas</translation>
 <translation id="4301671483919369635">Esta página tem autorização para editar ficheiros</translation>
 <translation id="4303079906735388947">Configure um novo PIN para a sua chave de segurança.</translation>
+<translation id="4305402730127028764">Copiar para <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">As aplicações têm de ser publicadas com o tipo de conteúdo "<ph name="CONTENT_TYPE" />".</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K (<ph name="NUM_KILOBYTES_LIVE" /> K em directo)</translation>
 <translation id="4310139701823742692">O ficheiro tem o formato errado. Verifique o ficheiro PPD e tente novamente.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Tente novamente.</translation>
 <translation id="4535127706710932914">Perfil Predefinido</translation>
 <translation id="4535767533210902251">O sensor de impressões digitais é a tecla superior direita no seu teclado. Toque levemente no mesmo com qualquer dedo.</translation>
-<translation id="4538417792467843292">Eliminar palavra</translation>
 <translation id="4538684596480161368">Bloquear sempre plug-ins sem isolamento de processos em <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Instalada pela política da empresa.</translation>
 <translation id="4542520061254486227">Ler os seus dados em <ph name="WEBSITE_1" /> e <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">A ler ficheiro...</translation>
 <translation id="5368720394188453070">O seu telemóvel está bloqueado. Desbloqueie-o para introduzir.</translation>
 <translation id="5368779022775404937">Iniciar sessão em <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Ativar aceleração do rato</translation>
 <translation id="5370819323174483825">&amp;Recarregar</translation>
 <translation id="5372529912055771682">O modo de inscrição fornecido não é suportado por esta versão do sistema operativo. Certifique-se de que está a executar a versão mais recente e tente novamente.</translation>
 <translation id="5372579129492968947">Soltar extensão</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Executar desta vez</translation>
 <translation id="5464660706533281090">Esta definição não pode ser alterada por um utilizador secundário.</translation>
 <translation id="5466374726908360271">Co&amp;lar e pesquisar "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">À procura de partilhas de ficheiros…</translation>
 <translation id="5471768120198416576">Olá! Sou a sua voz para a síntese de voz.</translation>
 <translation id="5473333559083690127">Voltar a introduzir o PIN novo</translation>
 <translation id="5481941284378890518">Adicionar impressoras próximas</translation>
@@ -3543,6 +3543,7 @@
 <translation id="6233154960150021497">Predefinir para utilizar a voz em vez do teclado</translation>
 <translation id="6234474535228214774">Instalação pendente</translation>
 <translation id="6237816943013845465">Permite-lhe ajustar a resolução do ecrã</translation>
+<translation id="6238767809035845642">Texto partilhado de outro dispositivo</translation>
 <translation id="6238923052227198598">Manter a nota mais recente no ecrã de bloqueio</translation>
 <translation id="6239558157302047471">Atualizar &amp;frame</translation>
 <translation id="6241530762627360640">Aceder às informações acerca dos dispositivos Bluetooth sincronizados com o seu sistema e descobrir dispositivos Bluetooth nas proximidades.</translation>
@@ -3769,7 +3770,6 @@
 <translation id="6577284282025554716">Transferência cancelada: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Encriptar as palavras-passe sincronizadas com o seu nome de utilizador e palavra-passe Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – conteúdo do ambiente de trabalho partilhado.</translation>
-<translation id="6580151766480067746">Versão do ARC</translation>
 <translation id="6582080224869403177">Efetue a reposição do dispositivo <ph name="DEVICE_TYPE" /> para atualizar a sua segurança.</translation>
 <translation id="6584878029876017575">Assinatura vitalícia Microsoft</translation>
 <translation id="6586451623538375658">Trocar botão principal do rato</translation>
@@ -4374,6 +4374,7 @@
 <translation id="7487141338393529395">Ative a verificação ortográfica avançada</translation>
 <translation id="7487969577036436319">Não existem componentes instalados</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Abrir todos}=1{&amp;Abrir marcador}other{&amp;Abrir todos (#)}}</translation>
+<translation id="7489761397368794366">Ligar a partir do seu dispositivo</translation>
 <translation id="749028671485790643">Pessoa <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Endereço MAC</translation>
 <translation id="7493386493263658176">A extensão <ph name="EXTENSION_NAME" /> pode recolher todo o texto que escrever, incluindo dados pessoais como palavras-passe e números de cartões de crédito. Pretende utilizar esta extensão?</translation>
@@ -4393,6 +4394,7 @@
 <translation id="7508054832109420082">Dar acesso a impressoras</translation>
 <translation id="7510943789645525906">Avisa se uma palavra-passe que utiliza esteve envolvida numa violação de dados.</translation>
 <translation id="7513029293694390567">Inicie sessão automaticamente nos Sites com as credenciais armazenadas. Se esta funcionalidade estiver desativada, é-lhe pedida sempre uma confirmação antes de iniciar sessão num Website.</translation>
+<translation id="7514239104543605883">Copiar para o dispositivo</translation>
 <translation id="7514365320538308">Transferir</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Diga "Ok Google"</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Transmitir ficheiro</translation>
 <translation id="8274924778568117936">Não desligue ou feche o <ph name="DEVICE_TYPE" /> até a atualização terminar. O <ph name="DEVICE_TYPE" /> será reiniciado quando a instalação estiver concluída.</translation>
 <translation id="8275038454117074363">Importar</translation>
+<translation id="8275080796245127762">Ligar a partir do seu dispositivo</translation>
 <translation id="8276560076771292512">Esvaziar cache e recarregamento forçado</translation>
 <translation id="8281886186245836920">Ignorar</translation>
 <translation id="8282947398454257691">Saber o identificador único do seu dispositivo</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Ativar o ditado (falar para escrever)</translation>
 <translation id="8759408218731716181">Não é possível configurar o início de sessão integrado</translation>
 <translation id="8759753423332885148">Saiba mais.</translation>
+<translation id="8761945298804995673">Este utilizador já existe.</translation>
 <translation id="8762886931014513155">O seu <ph name="DEVICE_TYPE" /> precisa de ser atualizado</translation>
 <translation id="8763927697961133303">Dispositivo USB</translation>
 <translation id="8767621466733104912">Atualizar automaticamente o Chrome para todos os utilizadores</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">Mo&amp;strar Como Separador</translation>
 <translation id="8879921471468674457">Memorizar informações de início de sessão</translation>
 <translation id="8881020143150461183">Tente novamente. Para obter apoio técnico, contacte o operador <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Ativar aceleração do touchpad</translation>
 <translation id="8884570509232205463">Agora, o seu dispositivo será bloqueado à(s) <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock não disponível</translation>
 <translation id="8888253246822647887">A aplicação será aberta quando a atualização estiver concluída. As atualizações podem demorar alguns minutos.</translation>
diff --git a/chrome/app/resources/generated_resources_ro.xtb b/chrome/app/resources/generated_resources_ro.xtb
index 92d8bbb..6352771 100644
--- a/chrome/app/resources/generated_resources_ro.xtb
+++ b/chrome/app/resources/generated_resources_ro.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Pentru a accesa extensiile pe toate computerele tale, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Această acțiune va șterge toate datele de pe cheia de securitate, inclusiv codul său PIN</translation>
 <translation id="1475502736924165259">Ai stocate certificate care nu se încadrează în niciuna dintre celelalte categorii</translation>
+<translation id="1476088332184200792">Copiază pe dispozitiv</translation>
 <translation id="1476607407192946488">&amp;Setări de limbă</translation>
 <translation id="1478340334823509079">Detalii: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Instalarea nu este activată</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Printați utilizând caseta de dialog a sistemului... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Solicită permisiunea înainte de trimitere (recomandat)</translation>
 <translation id="2384436799579181135">A apărut o eroare. Verifică imprimanta și încearcă din nou.</translation>
-<translation id="2386926718981642523">Accesează Asistentul oricând rostești „Ok Google”</translation>
 <translation id="2387458720915042159">Tip de conexiune prin proxy</translation>
 <translation id="2391419135980381625">Font standard</translation>
 <translation id="2392369802118427583">Activează</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Redusă</translation>
 <translation id="2942560570858569904">Se așteaptă...</translation>
 <translation id="2942581856830209953">Personalizează această pagină</translation>
+<translation id="294308617863380348">Inclusiv cookie-urile terță parte</translation>
 <translation id="2944060181911631861">Trimite date de utilizare și diagnosticare. Contribuie la îmbunătățirea experienței Android trimițând automat la Google date privind diagnosticarea și utilizarea dispozitivelor și a aplicațiilor. Aceasta va ajuta la stabilitatea sistemului, a aplicației și altele. Unele date cumulate vor ajuta aplicațiile și partenerii Google, cum ar fi dezvoltatorii Android. Dacă setarea Activitatea suplimentară de pe web și din aplicații este activată, aceste date pot fi salvate în Contul tău Google. <ph name="BEGIN_LINK1" />Află mai multe<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Adăugați o conexiune</translation>
 <translation id="2948300991547862301">Accesați <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Dă clic pentru a naviga înainte, ține apăsat pentru a vedea istoricul</translation>
 <translation id="2963151496262057773">Următorul plugin este inactiv: <ph name="PLUGIN_NAME" />. Dorești să îl oprești?</translation>
 <translation id="2966937470348689686">Gestionează preferințele Android</translation>
-<translation id="2972557485845626008">Firmware</translation>
 <translation id="2972581237482394796">&amp;Repetă</translation>
 <translation id="2973324205039581528">Dezactivează sunetul pentru site</translation>
 <translation id="2977480621796371840">Elimină din grup</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Separator</translation>
 <translation id="3387614642886316601">Folosește verificarea îmbunătățită a ortografiei</translation>
-<translation id="3393352139658145068">Activează Asistentul când cineva spune „Ok Google”. Pentru a economisi bateria, „Ok Google” este activat doar când dispozitivul este conectat la o sursă de alimentare.</translation>
 <translation id="3396800784455899911">Dacă dai clic pe butonul „Acceptă și continuă” înseamnă că ești de acord cu procesarea descrisă mai sus pentru aceste servicii Google.</translation>
 <translation id="3399432415385675819">Notificările vor fi dezactivate</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> hertzi) – întrețesut</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Vezi <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Deschideți într-o filă nouă</translation>
 <translation id="3615073365085224194">Atinge senzorul de amprentă cu degetul</translation>
+<translation id="3615579745882581859">Fișierul <ph name="FILE_NAME" /> este scanat.</translation>
 <translation id="3616741288025931835">&amp;Șterge datele de navigare...</translation>
 <translation id="3617891479562106823">Fundalurile nu sunt disponibile. Încearcă din nou mai târziu.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Blochează părți din paginile web</translation>
 <translation id="3760460896538743390">Inspectați pagina de fun&amp;dal</translation>
 <translation id="37613671848467444">Deschideți într-o &amp;fereastră incognito</translation>
-<translation id="3764314093345384080">Informații detaliate privind versiunea</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Comunică cu un dispozitiv USB}few{Comunică cu # dispozitive USB}other{Comunică cu # de dispozitive USB}}</translation>
 <translation id="3765246971671567135">Nu s-a putut citi politica offline privind modul demo.</translation>
 <translation id="3768037234834996183">Se sincronizează preferințele...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Afișează numele de utilizatori și fotografiile pe ecranul de conectare</translation>
 <translation id="4142052906269098341">Deblochează <ph name="DEVICE_TYPE" /> cu telefonul. <ph name="LINK_BEGIN" />Află mai multe<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Obține videoclipuri de o calitate mai bună și mărește autonomia bateriei. Videoclipul va fi redat numai pe un ecran compatibil cu Cast.</translation>
-<translation id="4145922204387553806">Permite Asistentului să îți arate informații legate de ce este afișat pe ecran</translation>
 <translation id="4146026355784316281">Deschide întotdeauna cu Utilitarul de vizualizare al sistemului</translation>
 <translation id="4146785383423576110">Resetează și curăță</translation>
 <translation id="4147911968024186208">Reîncearcă. Dacă vezi această eroare din nou, contactează reprezentantul de asistență.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Schimbă limbile</translation>
 <translation id="4301671483919369635">Această pagină are permisiunea de a edita fișiere</translation>
 <translation id="4303079906735388947">Configurează un nou cod PIN pentru cheia de securitate</translation>
+<translation id="4305402730127028764">Copiază pe <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Aplicațiile trebuie să fie difuzate utilizând antetul content-type „<ph name="CONTENT_TYPE" />”</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> KB (<ph name="NUM_KILOBYTES_LIVE" /> KB live)</translation>
 <translation id="4310139701823742692">Fișierul are un format incorect. Verifică fișierul PPD și încearcă din nou.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Încearcă din nou.</translation>
 <translation id="4535127706710932914">Profil prestabilit</translation>
 <translation id="4535767533210902251">Senzorul de amprentă este tasta din dreapta sus de pe tastatură. Atinge-l ușor cu orice deget.</translation>
-<translation id="4538417792467843292">Șterge cuvântul</translation>
 <translation id="4538684596480161368">Blochează întotdeauna pluginurile scoase din mediul de testare pe <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Instalată pe baza politicii întreprinderii.</translation>
 <translation id="4542520061254486227">Citește datele de pe <ph name="WEBSITE_1" /> și de pe <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Se citește fișierul...</translation>
 <translation id="5368720394188453070">Telefonul este blocat. Pentru acces, deblochează-l.</translation>
 <translation id="5368779022775404937">Conectează-te la <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Activează accelerarea mouse-ului</translation>
 <translation id="5370819323174483825">&amp;Reîncarcă</translation>
 <translation id="5372529912055771682">Modul de înscriere furnizat nu este acceptat de această versiune a sistemului de operare. Asigurați-vă că rulați cea mai recentă versiune și încercați din nou.</translation>
 <translation id="5372579129492968947">Anulează fixarea extensiei</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Rula de această dată</translation>
 <translation id="5464660706533281090">Setarea nu poate fi modificată de un copil.</translation>
 <translation id="5466374726908360271">In&amp;serează și caută „<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Se caută dispozitive de stocare în rețea</translation>
 <translation id="5471768120198416576">Bună! Eu sunt vocea pentru redarea vocală a textului.</translation>
 <translation id="5473333559083690127">Reintrodu noul cod PIN</translation>
 <translation id="5481941284378890518">Adaugă imprimantele din apropiere</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Setarea prestabilită este de a folosi vocea în locul tastaturii</translation>
 <translation id="6234474535228214774">Instalare în așteptare</translation>
 <translation id="6237816943013845465">Cu ajutorul acestei setări, poți să ajustezi rezoluția ecranului</translation>
+<translation id="6238767809035845642">Text trimis de pe alt dispozitiv</translation>
 <translation id="6238923052227198598">Păstrează cea mai recentă notă pe ecranul de blocare</translation>
 <translation id="6239558157302047471">Reîncarcă &amp;cadrul</translation>
 <translation id="6241530762627360640">Accesează informațiile despre dispozitivele Bluetooth conectate cu sistemul dvs. și descoperă dispozitivele Bluetooth din apropiere.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Descărcare anulată: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Criptează parolele sincronizate folosind numele de utilizator și parola Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – Conținut de pe desktop la care s-a permis accesul</translation>
-<translation id="6580151766480067746">Versiunea ARC</translation>
 <translation id="6582080224869403177">Resetează <ph name="DEVICE_TYPE" /> pentru a îmbunătăți securitatea.</translation>
 <translation id="6584878029876017575">Semnare Microsoft pe durata de viață</translation>
 <translation id="6586451623538375658">Comutați butonul principal al mouse-ului</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Activează verificarea îmbunătățită a ortografiei</translation>
 <translation id="7487969577036436319">Nu există componente instalate</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Deschide-le pe toate}=1{&amp;Deschide marcajul}few{&amp;Deschide-le pe toate (#)}other{&amp;Deschide-le pe toate (#)}}</translation>
+<translation id="7489761397368794366">Apelează de pe dispozitivul tău</translation>
 <translation id="749028671485790643">Persoana <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Adresă MAC</translation>
 <translation id="7493386493263658176">Extensia <ph name="EXTENSION_NAME" /> poate să culeagă integral textul introdus, inclusiv datele cu caracter personal, cum ar fi parolele și numerele cardurilor de credit. Dorești să folosești această extensie?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Permite accesul imprimantelor</translation>
 <translation id="7510943789645525906">Te avertizează dacă o parolă pe care o folosești a făcut parte dintr-o încălcare a securității datelor</translation>
 <translation id="7513029293694390567">Te conectezi automat la site-uri folosind datele de conectare stocate. Dacă funcția este dezactivată, ți se va solicita confirmarea de fiecare dată înainte de a te conecta la un site.</translation>
+<translation id="7514239104543605883">Copiază pe dispozitiv</translation>
 <translation id="7514365320538308">Descarcă</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Rostește „Ok Google”</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Proiectează fișierul</translation>
 <translation id="8274924778568117936">Nu închide și nu opri dispozitivul <ph name="DEVICE_TYPE" /> înainte să se finalizeze actualizarea. Dispozitivul <ph name="DEVICE_TYPE" /> va reporni după ce se finalizează instalarea.</translation>
 <translation id="8275038454117074363">Importă</translation>
+<translation id="8275080796245127762">Apelează de pe dispozitivul tău</translation>
 <translation id="8276560076771292512">Goliți memoria cache și reîncărcați forțat</translation>
 <translation id="8281886186245836920">Omite</translation>
 <translation id="8282947398454257691">Află identificatorul unic de dispozitiv</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Activează introducerea textului prin dictare</translation>
 <translation id="8759408218731716181">Nu se poate configura conectarea multiplă</translation>
 <translation id="8759753423332885148">Află mai multe.</translation>
+<translation id="8761945298804995673">Acest utilizator există deja</translation>
 <translation id="8762886931014513155">Dispozitivul <ph name="DEVICE_TYPE" /> are nevoie de actualizare</translation>
 <translation id="8763927697961133303">Dispozitiv USB</translation>
 <translation id="8767621466733104912">Actualizează automat Chrome pentru toți utilizatorii</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Afișează ca filă</translation>
 <translation id="8879921471468674457">Reține informațiile de conectare</translation>
 <translation id="8881020143150461183">Încearcă din nou. Pentru asistență tehnică, ia legătura cu <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Activează accelerarea touchpadului</translation>
 <translation id="8884570509232205463">Dispozitivul se blochează acum la <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Funcția Smart Lock nu este disponibilă</translation>
 <translation id="8888253246822647887">Aplicația ta se va deschide când se încheie upgrade-ul. Upgrade-urile pot dura câteva minute.</translation>
diff --git a/chrome/app/resources/generated_resources_ru.xtb b/chrome/app/resources/generated_resources_ru.xtb
index eb56b8f..c78d0ed 100644
--- a/chrome/app/resources/generated_resources_ru.xtb
+++ b/chrome/app/resources/generated_resources_ru.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Чтобы получить доступ к расширениям на всех ваших устройствах, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">С электронного ключа будут удалены все данные, включая PIN-код</translation>
 <translation id="1475502736924165259">У вас имеются сертификаты, которые не попадают ни в одну из других категорий</translation>
+<translation id="1476088332184200792">Копировать на свое устройство</translation>
 <translation id="1476607407192946488">&amp;Язык</translation>
 <translation id="1478340334823509079">Подробные сведения: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Установка не разрешена</translation>
@@ -950,7 +951,6 @@
 <translation id="2379281330731083556">Печатать с помощью системного диалогового окна <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Спрашивать разрешение перед отправкой (рекомендуется)</translation>
 <translation id="2384436799579181135">Произошла ошибка. Проверьте принтер и повторите попытку.</translation>
-<translation id="2386926718981642523">Чтобы обратиться к Ассистенту, скажите "Окей, Google"</translation>
 <translation id="2387458720915042159">Тип подключения через прокси-сервер</translation>
 <translation id="2391419135980381625">Стандартный шрифт</translation>
 <translation id="2392369802118427583">Активировать</translation>
@@ -1339,6 +1339,7 @@
 <translation id="2941112035454246133">Низкий</translation>
 <translation id="2942560570858569904">Ожидание...</translation>
 <translation id="2942581856830209953">Персонализировать эту страницу</translation>
+<translation id="294308617863380348">Включая сторонние файлы cookie</translation>
 <translation id="2944060181911631861">Отправка данных о работе устройства. Помогите сделать Android ещё лучше – разрешите автоматически отправлять в Google диагностическую информацию, данные об использовании приложений и самого устройства. Эти данные нужны нам, чтобы в будущем повысить стабильность приложений и внести другие улучшения. Некоторые данные в обобщенном виде пригодятся партнерам Google, например разработчикам Android. Если запись дополнительной истории приложений и веб-поиска включена, эта информация может сохраняться в вашем аккаунте. <ph name="BEGIN_LINK1" />Подробнее…<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Добавить подключение</translation>
 <translation id="2948300991547862301">Перейти на страницу <ph name="PAGE_TITLE" /></translation>
@@ -1353,7 +1354,6 @@
 <translation id="2961695502793809356">Нажмите, чтобы перейти вперед. Удерживайте, чтобы просмотреть историю.</translation>
 <translation id="2963151496262057773">Плагин "<ph name="PLUGIN_NAME" />" перестал отвечать на запросы. Остановить его?</translation>
 <translation id="2966937470348689686">Управление настройками Android</translation>
-<translation id="2972557485845626008">Микропрограмма</translation>
 <translation id="2972581237482394796">&amp;Повторить</translation>
 <translation id="2973324205039581528">Отключить звук на сайте</translation>
 <translation id="2977480621796371840">Удалить из группы</translation>
@@ -1611,7 +1611,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Разделитель</translation>
 <translation id="3387614642886316601">Использовать расширенную проверку правописания</translation>
-<translation id="3393352139658145068">Запускать Ассистента, когда кто-то произносит фразу "Окей, Google". Для экономии заряда батареи эта функция будет активна, только когда устройство подключено к источнику питания.</translation>
 <translation id="3396800784455899911">Нажимая кнопку "Принять условия и продолжить", вы соглашаетесь с Условиями использования сервисов Google, описанными выше.</translation>
 <translation id="3399432415385675819">Уведомления будут отключены</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Гц) – чересстрочная развертка</translation>
@@ -1772,6 +1771,7 @@
 <translation id="3613134908380545408">Показать папку "<ph name="FOLDER_NAME" />"</translation>
 <translation id="3613422051106148727">&amp;Открыть в новой вкладке</translation>
 <translation id="3615073365085224194">Приложите палец к сканеру отпечатков пальцев.</translation>
+<translation id="3615579745882581859">Файл "<ph name="FILE_NAME" />" сканируется.</translation>
 <translation id="3616741288025931835">Очистить данные просмотров...</translation>
 <translation id="3617891479562106823">Фоновые изображения недоступны. Повторите попытку позже.</translation>
 <translation id="3619115746895587757">Капучино</translation>
@@ -1886,7 +1886,6 @@
 <translation id="3759933321830434300">Блокировка элементов веб-страниц</translation>
 <translation id="3760460896538743390">Исследовать &amp;фоновую страницу</translation>
 <translation id="37613671848467444">Открыть в режиме &amp;инкогнито</translation>
-<translation id="3764314093345384080">Подробная информация о сборке</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Доступно 1 USB-устройство}one{Доступно # USB-устройство}few{Доступно # USB-устройства}many{Доступно # USB-устройств}other{Доступно # USB-устройства}}</translation>
 <translation id="3765246971671567135">Не удалось прочитать политику работы офлайн в демонстрационном режиме.</translation>
 <translation id="3768037234834996183">Синхронизация настроек...</translation>
@@ -2167,7 +2166,6 @@
 <translation id="4138267921960073861">Показывать имена и фотографии пользователей на экране входа</translation>
 <translation id="4142052906269098341">Снимать блокировку <ph name="DEVICE_TYPE" /> с помощью телефона. <ph name="LINK_BEGIN" />Подробнее…<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">С помощью этой функции вы улучшите качество видео и продлите время работы от батареи. Видео будет воспроизводиться только на экранах с поддержкой Cast.</translation>
-<translation id="4145922204387553806">Разрешите Ассистенту показывать подсказки, связанные с изображением на экране.</translation>
 <translation id="4146026355784316281">Всегда открывать в программе просмотра по умолчанию</translation>
 <translation id="4146785383423576110">Сброс настроек и удаление вредоносного ПО</translation>
 <translation id="4147911968024186208">Повторите попытку. Если сообщение об ошибке появится снова, свяжитесь со службой поддержки.</translation>
@@ -2254,6 +2252,7 @@
 <translation id="4297322094678649474">Настройки перевода</translation>
 <translation id="4301671483919369635">У этой страницы есть доступ для изменения файлов</translation>
 <translation id="4303079906735388947">Установите новый PIN-код для электронного ключа.</translation>
+<translation id="4305402730127028764">Копировать на устройство "<ph name="DEVICE_NAME" />"</translation>
 <translation id="4306119971288449206">Приложения должны иметь тип контента "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> КБ (<ph name="NUM_KILOBYTES_LIVE" /> КБ активно)</translation>
 <translation id="4310139701823742692">Неверный формат файла PPD. Исправьте проблему и повторите попытку.</translation>
@@ -2389,7 +2388,6 @@
 <translation id="4534661889221639075">Повторите попытку.</translation>
 <translation id="4535127706710932914">Профиль по умолчанию</translation>
 <translation id="4535767533210902251">Сканер отпечатков пальцев – это клавиша в правом верхнем углу клавиатуры. Слегка коснитесь ее любым пальцем.</translation>
-<translation id="4538417792467843292">Удалить слово</translation>
 <translation id="4538684596480161368">Всегда блокировать плагины вне тестовой среды на сайте <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Установлено в соответствии с корпоративным правилом.</translation>
 <translation id="4542520061254486227">Просмотр данных на сайтах <ph name="WEBSITE_1" /> и <ph name="WEBSITE_2" /></translation>
@@ -2933,6 +2931,7 @@
 <translation id="5367091008316207019">Чтение файла…</translation>
 <translation id="5368720394188453070">Для входа разблокируйте телефон.</translation>
 <translation id="5368779022775404937">Вход в <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Включить ускорение мыши</translation>
 <translation id="5370819323174483825">Пере&amp;загрузить</translation>
 <translation id="5372529912055771682">Предоставленный режим регистрации не поддерживается этой версией операционной системы. Обновите версию ОС и повторите попытку.</translation>
 <translation id="5372579129492968947">Открепить расширение</translation>
@@ -3005,6 +3004,7 @@
 <translation id="5464632865477611176">Запустить один раз</translation>
 <translation id="5464660706533281090">Значение этого параметра может изменить только взрослый пользователь.</translation>
 <translation id="5466374726908360271">Вст&amp;авить и найти "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Поиск общих папок…</translation>
 <translation id="5471768120198416576">Здравствуйте! Я буду озвучивать для вас текст.</translation>
 <translation id="5473333559083690127">Повторно введите новый PIN-код</translation>
 <translation id="5481941284378890518">Добавить ближайшие принтеры</translation>
@@ -3540,6 +3540,7 @@
 <translation id="6233154960150021497">Использовать голос вместо клавиатуры по умолчанию</translation>
 <translation id="6234474535228214774">Ожидание установки…</translation>
 <translation id="6237816943013845465">Позволяет настроить разрешение экрана</translation>
+<translation id="6238767809035845642">Текст, полученный с другого устройства</translation>
 <translation id="6238923052227198598">Показывать последнюю заметку на заблокированном экране</translation>
 <translation id="6239558157302047471">Перезагрузить &amp;фрейм</translation>
 <translation id="6241530762627360640">Доступ к информации об устройствах Bluetooth, связанных с вашей системой, и обнаружение устройств Bluetooth рядом с вами.</translation>
@@ -3766,7 +3767,6 @@
 <translation id="6577284282025554716">Скачивание файла <ph name="FILE_NAME" /> отменено</translation>
 <translation id="6578664922716508575">Шифровать синхронизированные пароли с помощью имени пользователя Google и пароля</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" />: доступ к содержимому рабочего стола открыт</translation>
-<translation id="6580151766480067746">Версия ARC</translation>
 <translation id="6582080224869403177">Чтобы обновить систему безопасности, перезагрузите устройство <ph name="DEVICE_TYPE" />.</translation>
 <translation id="6584878029876017575">Бессрочная подписка Microsoft</translation>
 <translation id="6586451623538375658">Поменять местами кнопки мыши</translation>
@@ -4371,6 +4371,7 @@
 <translation id="7487141338393529395">Включите расширенную проверку правописания</translation>
 <translation id="7487969577036436319">Компоненты не установлены</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{О&amp;ткрыть все}=1{О&amp;ткрыть закладку}one{О&amp;ткрыть все (#)}few{О&amp;ткрыть все (#)}many{О&amp;ткрыть все (#)}other{О&amp;ткрыть все (#)}}</translation>
+<translation id="7489761397368794366">Позвонить со своего устройства</translation>
 <translation id="749028671485790643">Пользователь <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-адрес</translation>
 <translation id="7493386493263658176">Расширение "<ph name="EXTENSION_NAME" />" может сохранять любой текст, который вы вводите, в том числе пароли и данные банковских карт. Начать работу?</translation>
@@ -4390,6 +4391,7 @@
 <translation id="7508054832109420082">Предоставить доступ к принтерам</translation>
 <translation id="7510943789645525906">Предупреждать, если пароль скомпрометирован в результате утечки данных</translation>
 <translation id="7513029293694390567">Автоматически входить на сайты с помощью сохраненного имени пользователя и пароля. Когда функция отключена, эти данные нужно вводить при каждом входе.</translation>
+<translation id="7514239104543605883">Копировать на свое устройство</translation>
 <translation id="7514365320538308">Скачать</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Скажите "Окей, Google"</translation>
@@ -4945,6 +4947,7 @@
 <translation id="8274332263553132018">Файл для трансляции</translation>
 <translation id="8274924778568117936">Не выключайте и не закрывайте <ph name="DEVICE_TYPE" />, выполняется обновление. После завершения установки <ph name="DEVICE_TYPE" /> перезагрузится.</translation>
 <translation id="8275038454117074363">Импорт</translation>
+<translation id="8275080796245127762">Позвонить со своего устройства</translation>
 <translation id="8276560076771292512">Очистка кеша и жесткая перезагрузка</translation>
 <translation id="8281886186245836920">Пропустить</translation>
 <translation id="8282947398454257691">доступ к уникальному идентификатору устройства</translation>
@@ -5265,6 +5268,7 @@
 <translation id="8758418656925882523">Включить голосовой ввод (преобразование речи в текст)</translation>
 <translation id="8759408218731716181">Не удалось настроить множественный вход</translation>
 <translation id="8759753423332885148">Подробнее…</translation>
+<translation id="8761945298804995673">Этот пользователь уже существует.</translation>
 <translation id="8762886931014513155">Требуется обновить устройство <ph name="DEVICE_TYPE" /></translation>
 <translation id="8763927697961133303">USB-устройство</translation>
 <translation id="8767621466733104912">Обновить Chrome для всех пользователей</translation>
@@ -5353,6 +5357,7 @@
 <translation id="8879284080359814990">Показать как вкладку</translation>
 <translation id="8879921471468674457">Запомнить учетные данные</translation>
 <translation id="8881020143150461183">Повторите попытку. За технической поддержкой обратитесь к оператору "<ph name="CARRIER_NAME" />".</translation>
+<translation id="8883273463630735858">Включить ускорение сенсорной панели</translation>
 <translation id="8884570509232205463">Теперь устройство будет блокироваться в <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Функция Smart Lock недоступна</translation>
 <translation id="8888253246822647887">Приложение откроется, когда завершится обновление. Это может занять несколько минут.</translation>
diff --git a/chrome/app/resources/generated_resources_sk.xtb b/chrome/app/resources/generated_resources_sk.xtb
index 2031a4d..702b757 100644
--- a/chrome/app/resources/generated_resources_sk.xtb
+++ b/chrome/app/resources/generated_resources_sk.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Ak chcete získať záložky na všetkých počítačoch, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Vymažú sa všetky údaje v bezpečnostnom kľúči vrátane kódu PIN</translation>
 <translation id="1475502736924165259">V súbore máte certifikáty, ktoré sa nedajú zaradiť do žiadnej z iných kategórií:</translation>
+<translation id="1476088332184200792">Kopírovať do zariadenia</translation>
 <translation id="1476607407192946488">&amp;Nastavenia jazyka</translation>
 <translation id="1478340334823509079">Podrobnosti: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Inštalácia nie je povolená</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Tlačiť pomocou dialógového okna systému... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Spýtať sa pred odoslaním (odporúčané)</translation>
 <translation id="2384436799579181135">Vyskytla sa chyba. Skontrolujte tlačiareň a skúste to znova.</translation>
-<translation id="2386926718981642523">Aktivovať Asistenta pri každom vyslovení výrazu „Ok Google“</translation>
 <translation id="2387458720915042159">Typ pripojenia proxy</translation>
 <translation id="2391419135980381625">Štandardné písmo</translation>
 <translation id="2392369802118427583">Aktivovať</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">Nízka</translation>
 <translation id="2942560570858569904">Čaká sa...</translation>
 <translation id="2942581856830209953">Prispôsobiť túto stránku</translation>
+<translation id="294308617863380348">Vrátane súborov cookie tretích strán</translation>
 <translation id="2944060181911631861">Odosielať údaje o využití a diagnostiky. Pomôžte zlepšiť prostredie Androidu automatickým odosielaním diagnostík a údajov o používaní zariadenia a aplikácií do Googlu. Pomôžu zvýšiť stabilitu systému a aplikácií a poskytovať ďalšie vylepšenia. Niektoré súhrnné údaje tiež pomôžu aplikáciám Google a partnerom, ako napríklad vývojárom Androidu. Ak aktivujete dodatočnú aktivitu na internete a v aplikáciách, tieto údaje sa môžu uložiť vo vašom účte Google. <ph name="BEGIN_LINK1" />Ďalšie informácie<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Pridať pripojenie</translation>
 <translation id="2948300991547862301">Prejsť na stránku <ph name="PAGE_TITLE" /></translation>
@@ -1354,7 +1355,6 @@
 <translation id="2961695502793809356">Kliknutím prejdete dopredu. Pri dlhšom stlačení sa zobrazí história.</translation>
 <translation id="2963151496262057773">Nasledujúci doplnok prestal reagovať: <ph name="PLUGIN_NAME" />. Chcete ho zastaviť?</translation>
 <translation id="2966937470348689686">Spravovať predvoľby Androidu</translation>
-<translation id="2972557485845626008">Firmvér</translation>
 <translation id="2972581237482394796">&amp;Dopredu</translation>
 <translation id="2973324205039581528">Vypnúť zvuk webu</translation>
 <translation id="2977480621796371840">Odstrániť zo skupiny</translation>
@@ -1612,7 +1612,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Oddeľovač</translation>
 <translation id="3387614642886316601">Použiť rozšírenú kontrolu pravopisu</translation>
-<translation id="3393352139658145068">Asistent sa aktivuje, keď hocikto povie „Ok Google“. Rozpoznávanie kľúčového výrazu „Ok Google“ je zapnuté iba vtedy, keď je zariadenie pripojené k zdroju napájania, aby sa šetrila batéria.</translation>
 <translation id="3396800784455899911">Kliknutím na tlačidlo „Súhlasím, pokračovať“ vyjadrujete súhlas so spracovaním uvedeným vyššie v rámci týchto služieb Googlu.</translation>
 <translation id="3399432415385675819">Upozornenia budú zakázané</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> × <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hz) – prekladané</translation>
@@ -1773,6 +1772,7 @@
 <translation id="3613134908380545408">Zobraziť priečinok <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Otvoriť na novej karte</translation>
 <translation id="3615073365085224194">Dotknite sa senzora odtlačkov prstov</translation>
+<translation id="3615579745882581859">Súbor <ph name="FILE_NAME" /> sa kontroluje.</translation>
 <translation id="3616741288025931835">&amp;Vymazať dáta prehliadania…</translation>
 <translation id="3617891479562106823">Pozadia nie sú k dispozícii. Skúste to znova neskôr.</translation>
 <translation id="3619115746895587757">Kapučíno</translation>
@@ -1887,7 +1887,6 @@
 <translation id="3759933321830434300">Blokovať časti webových stránok</translation>
 <translation id="3760460896538743390">Skontrolovať &amp;stránku na pozadí</translation>
 <translation id="37613671848467444">Otvoriť v &amp;okne inkognito</translation>
-<translation id="3764314093345384080">Podrobné informácie o zostave</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Komunikujte so zariadením USB}few{Komunikujte s # zariadeniami USB}many{Komunikujte s # zariadením USB}other{Komunikujte s # zariadeniami USB}}</translation>
 <translation id="3765246971671567135">Pravidlo pre režim offline ukážky sa nepodarilo načítať.</translation>
 <translation id="3768037234834996183">Synchronizujú sa predvoľby...</translation>
@@ -2168,7 +2167,6 @@
 <translation id="4138267921960073861">Zobraziť používateľské mená a fotografie na prihlasovacej obrazovke</translation>
 <translation id="4142052906269098341">Odomykajte zariadenie <ph name="DEVICE_TYPE" /> svojím telefónom. <ph name="LINK_BEGIN" />Ďalšie informácie<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Získajte kvalitnejšie video a predĺžte výdrž batérie. Video sa bude prehrávať iba na obrazovke podporujúcej Cast.</translation>
-<translation id="4145922204387553806">Umožnite Asistentovi zobrazovať informácie týkajúce sa obsahu na obrazovke</translation>
 <translation id="4146026355784316281">Vždy otvárať pomocou systémového zobrazovača</translation>
 <translation id="4146785383423576110">Resetovať a vyčistiť</translation>
 <translation id="4147911968024186208">Skúste to znova. Ak sa vám znova zobrazí táto chyba, kontaktujte zástupcu podpory.</translation>
@@ -2255,6 +2253,7 @@
 <translation id="4297322094678649474">Zmeniť jazyky</translation>
 <translation id="4301671483919369635">Táto stránka má povolené upravovať súbory</translation>
 <translation id="4303079906735388947">Nastavte pre svoj bezpečnostný kľúč nový kód PIN</translation>
+<translation id="4305402730127028764">Kopírovať do zariadenia <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Aplikácie musia byť poskytované s typom obsahu „<ph name="CONTENT_TYPE" />“</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> kB (aktívne: <ph name="NUM_KILOBYTES_LIVE" /> kB)</translation>
 <translation id="4310139701823742692">Súbor má nesprávny formát. Skontrolujte súbor PPD a skúste to znova.</translation>
@@ -2390,7 +2389,6 @@
 <translation id="4534661889221639075">Skúste to znova.</translation>
 <translation id="4535127706710932914">Predvolený profil</translation>
 <translation id="4535767533210902251">Senzor odtlačkov prstov je pravý horný kláves na klávesnici. Zľahka sa ho dotknite ľubovoľným prstom.</translation>
-<translation id="4538417792467843292">Odstrániť slovo</translation>
 <translation id="4538684596480161368">Na stránkach <ph name="HOST" /> vždy blokovať doplnky, ktoré nie sú v karanténe</translation>
 <translation id="4538792345715658285">Nainštalované na základe podnikových pravidiel.</translation>
 <translation id="4542520061254486227">Čítať vaše údaje na weboch <ph name="WEBSITE_1" /> a <ph name="WEBSITE_2" /></translation>
@@ -2934,6 +2932,7 @@
 <translation id="5367091008316207019">Prebieha čítanie súboru..</translation>
 <translation id="5368720394188453070">Telefón je uzamknutý. Ak chcete pokračovať, odomknite ho.</translation>
 <translation id="5368779022775404937">Prihláste sa do domény <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Povoliť zrýchlenie myši</translation>
 <translation id="5370819323174483825">&amp;Obnoviť</translation>
 <translation id="5372529912055771682">Poskytnutý režim registrácie v tejto verzii operačného systému už nie je podporovaný. Uistite sa, že používate najnovšiu verziu a skúste to znova.</translation>
 <translation id="5372579129492968947">Odopnúť rozšírenie</translation>
@@ -3006,6 +3005,7 @@
 <translation id="5464632865477611176">Spustiť len tentoraz</translation>
 <translation id="5464660706533281090">Toto nastavenie nemôže zmeniť používateľ, ktorý je dieťa.</translation>
 <translation id="5466374726908360271">Prilepiť a &amp;vyhľadať „<ph name="SEARCH_TERMS" />“</translation>
+<translation id="5468173180030470402">Hľadajú sa zdieľané úložiská</translation>
 <translation id="5471768120198416576">Dobrý deň, som hlas prevodu textu na reč.</translation>
 <translation id="5473333559083690127">Opätovné zadanie nového kódu PIN</translation>
 <translation id="5481941284378890518">Pridať tlačiarne v okolí</translation>
@@ -3541,6 +3541,7 @@
 <translation id="6233154960150021497">Predvolene používať namiesto klávesnice hlas</translation>
 <translation id="6234474535228214774">Inštalácia čaká na spracovanie</translation>
 <translation id="6237816943013845465">Umožňuje nastaviť rozlíšenie obrazovky</translation>
+<translation id="6238767809035845642">Text zdieľaný z iného zariadenia</translation>
 <translation id="6238923052227198598">Zobrazovať poslednú poznámku na uzamknutej obrazovke</translation>
 <translation id="6239558157302047471">Znova načítať prvok &amp;frame</translation>
 <translation id="6241530762627360640">Prístup k informáciám o zariadeniach Bluetooth spárovaných s vaším systémom a objavovanie zariadení Bluetooth v blízkosti.</translation>
@@ -3767,7 +3768,6 @@
 <translation id="6577284282025554716">Sťahovanie bolo zrušené: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Šifrovať synchronizované heslá pomocou používateľského mena a hesla Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – bol zdieľaný obsah pracovnej plochy</translation>
-<translation id="6580151766480067746">Verzia ARC</translation>
 <translation id="6582080224869403177">Obnovte zariadenie <ph name="DEVICE_TYPE" /> a inovujte tak svoje zabezpečenie.</translation>
 <translation id="6584878029876017575">Podpisovanie s neobmedzenou platnosťou spoločnosti Microsoft</translation>
 <translation id="6586451623538375658">Zameniť primárne tlačidlo myši</translation>
@@ -4372,6 +4372,7 @@
 <translation id="7487141338393529395">Zapnutie rozšírenej kontroly pravopisu</translation>
 <translation id="7487969577036436319">Nie sú nainštalované žiadne komponenty</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Otvoriť všetky}=1{&amp;Otvoriť záložku}few{&amp;Otvoriť všetky (#)}many{&amp;Otvoriť všetky (#)}other{&amp;Otvoriť všetky (#)}}</translation>
+<translation id="7489761397368794366">Zavolať z vášho zariadenia</translation>
 <translation id="749028671485790643">Osoba <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Adresa MAC</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> môže zhromažďovať všetok text, ktorý zadáte, vrátane osobných údajov, ako sú heslá a čísla kreditných kariet. Chcete použiť toto rozšírenie?</translation>
@@ -4391,6 +4392,7 @@
 <translation id="7508054832109420082">Poskytnite prístup k tlačiarňam</translation>
 <translation id="7510943789645525906">Upozorní vás, ak heslo, ktoré používate, bolo súčasťou porušenia ochrany údajov</translation>
 <translation id="7513029293694390567">Prihlasovať sa na weboch automaticky pomocou uložených prihlasovacích údajov. Keď je táto funkcia vypnutá, zobrazí sa vám pred každým prihlásením žiadosť o potvrdenie.</translation>
+<translation id="7514239104543605883">Kopírovať do zariadenia</translation>
 <translation id="7514365320538308">Stiahnuť</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Povedzte „Ok Google“</translation>
@@ -4946,6 +4948,7 @@
 <translation id="8274332263553132018">Prenášať súbor</translation>
 <translation id="8274924778568117936">V priebehu aktualizácie zariadenie <ph name="DEVICE_TYPE" /> nevypínajte ani nezatvárajte. Po dokončení inštalácie sa <ph name="DEVICE_TYPE" /> reštartuje.</translation>
 <translation id="8275038454117074363">Importovať</translation>
+<translation id="8275080796245127762">Zavolať z vášho zariadenia</translation>
 <translation id="8276560076771292512">Vymazať vyrovnávaciu pamäť a vynútiť opätovné načítanie</translation>
 <translation id="8281886186245836920">Preskočiť</translation>
 <translation id="8282947398454257691">Zistiť jedinečný identifikátor vášho zariadenia</translation>
@@ -5266,6 +5269,7 @@
 <translation id="8758418656925882523">Povoliť diktovanie (písanie hlasom)</translation>
 <translation id="8759408218731716181">Nie je možné nastaviť viacnásobné prihlásenie</translation>
 <translation id="8759753423332885148">Prečítajte si viac informácií.</translation>
+<translation id="8761945298804995673">Tento používateľ už existuje</translation>
 <translation id="8762886931014513155">Zariadenie <ph name="DEVICE_TYPE" /> potrebuje aktualizáciu</translation>
 <translation id="8763927697961133303">Zariadenie USB</translation>
 <translation id="8767621466733104912">Automaticky aktualizovať Chrome pre všetkých používateľov</translation>
@@ -5354,6 +5358,7 @@
 <translation id="8879284080359814990">&amp;Zobraziť ako kartu</translation>
 <translation id="8879921471468674457">Zapamätať si prihlasovacie údaje</translation>
 <translation id="8881020143150461183">Skúste to znova. Ak potrebujete technickú podporu, kontaktujte operátora <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Povoliť zrýchlenie touchpadu</translation>
 <translation id="8884570509232205463">Zariadenie sa teraz uzamyká o <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Funkcia Smart Lock nie je k dispozícii</translation>
 <translation id="8888253246822647887">Aplikácia sa spustí po dokončení inovácie. Inovácia môže trvať niekoľko minút.</translation>
diff --git a/chrome/app/resources/generated_resources_sl.xtb b/chrome/app/resources/generated_resources_sl.xtb
index 3a22f69..f2c1a826 100644
--- a/chrome/app/resources/generated_resources_sl.xtb
+++ b/chrome/app/resources/generated_resources_sl.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Če želite dostopati do razširitev v vseh računalnikih, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">S tem bodo izbrisani vsi podatki na varnostnem ključu, vključno z njegovo kodo PIN</translation>
 <translation id="1475502736924165259">V dokumentu so potrdila, ki ne sodijo v nobeno od drugih kategorij</translation>
+<translation id="1476088332184200792">Kopiranje v vašo napravo</translation>
 <translation id="1476607407192946488">&amp;Jezikovne nastavitve</translation>
 <translation id="1478340334823509079">Podatki: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Namestitev ni omogočena</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Tiskanje v pogovornem oknu sistema ... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Vprašaj pred pošiljanjem (priporočljivo)</translation>
 <translation id="2384436799579181135">Prišlo je do napake. Preverite tiskalnik in poskusite znova.</translation>
-<translation id="2386926718981642523">Dostopajte do Pomočnika, kadar koli izgovorite »Ok Google«</translation>
 <translation id="2387458720915042159">Vrsta povezave strežnika proxy</translation>
 <translation id="2391419135980381625">Standardna pisava</translation>
 <translation id="2392369802118427583">Aktiviraj</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Nizka</translation>
 <translation id="2942560570858569904">Čakanje ...</translation>
 <translation id="2942581856830209953">Prilagajanje te strani</translation>
+<translation id="294308617863380348">Vključno s piškotki drugih spletnih mest</translation>
 <translation id="2944060181911631861">Pošiljanje podatkov o uporabi in diagnostičnih podatkov. Pomagajte izboljšati izkušnjo z Androidom s samodejnim pošiljanjem diagnostičnih podatkov ter podatkov o uporabi naprave in aplikacij Googlu. Te podatke uporabljamo za izboljšanje stabilnosti sistema in izvajanja aplikacij ter drugega. Nekateri združeni podatki bodo pomagali tudi Googlovim aplikacijam in partnerjem, na primer razvijalcem za Android. Če ste vklopili dodatno beleženje dejavnosti v spletu in aplikacijah, bodo ti podatki morda shranjeni v vašem računu za Google. <ph name="BEGIN_LINK1" />Več o tem<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Dodaj povezavo</translation>
 <translation id="2948300991547862301">Pojdi na <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Kliknite, če želite nadaljevati, za ogled zgodovine pa zadržite</translation>
 <translation id="2963151496262057773">Ta vtičnik se ne odziva: <ph name="PLUGIN_NAME" />. Ali ga želite ustaviti?</translation>
 <translation id="2966937470348689686">Upravljanje nastavitev Androida</translation>
-<translation id="2972557485845626008">Vdelana programska oprema</translation>
 <translation id="2972581237482394796">&amp;Uveljavi</translation>
 <translation id="2973324205039581528">Izklopi zvok spletnega mesta</translation>
 <translation id="2977480621796371840">Odstrani iz skupine</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Ločilo</translation>
 <translation id="3387614642886316601">Uporaba izboljšanega preverjanja črkovanja</translation>
-<translation id="3393352139658145068">Aktiviranje Pomočnika, ko kdor koli izgovori »Ok Google«. Zaradi varčevanja z energijo akumulatorja je sprožilna beseda »Ok Google« vklopljena samo, ko je naprava priklopljena v vir napajanja.</translation>
 <translation id="3396800784455899911">Če kliknete gumb »Sprejmi in nadaljuj«, se strinjate z obdelavo, ki je opisana zgoraj za te Googlove storitve.</translation>
 <translation id="3399432415385675819">Obvestila bodo onemogočena</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hz) – prepleteno</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Pokaži <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Odpri na novem zavihku</translation>
 <translation id="3615073365085224194">S prstom se dotaknite tipala prstnih odtisov</translation>
+<translation id="3615579745882581859">Poteka pregled datoteke <ph name="FILE_NAME" />.</translation>
 <translation id="3616741288025931835">&amp;Izbriši podatke brskanja ...</translation>
 <translation id="3617891479562106823">Ozadja niso na voljo. Poskusite znova pozneje.</translation>
 <translation id="3619115746895587757">Kapučino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Blokiraj dele spletnih strani</translation>
 <translation id="3760460896538743390">Preglej stran v ozadju</translation>
 <translation id="37613671848467444">Odpri v oknu &amp;brez beleženja zgodovine</translation>
-<translation id="3764314093345384080">Podrobnejše informacije o gradnji</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Komuniciranje z napravo USB}one{Komuniciranje z # napravo USB}two{Komuniciranje z # napravama USB}few{Komuniciranje z # napravami USB}other{Komuniciranje z # napravami USB}}</translation>
 <translation id="3765246971671567135">Pravilnika za predstavitveni način brez povezave ni bilo mogoče prebrati.</translation>
 <translation id="3768037234834996183">Sinhroniziranje nastavitev ...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Prikaži uporabniška imena in fotografije na prijavnem zaslonu</translation>
 <translation id="4142052906269098341">Odklepanje naprave <ph name="DEVICE_TYPE" /> s telefonom. <ph name="LINK_BEGIN" />Več o tem<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Boljša kakovost videoposnetkov in prihranek energije v akumulatorju. Videoposnetki se bodo predvajali samo na zaslonu, ki podpira Google Cast.</translation>
-<translation id="4145922204387553806">Naj vam Pomočnik pokaže informacije glede na vsebino zaslona</translation>
 <translation id="4146026355784316281">Vedno odpri s sistemskim pregledovalnikom</translation>
 <translation id="4146785383423576110">Ponastavitev in čiščenje</translation>
 <translation id="4147911968024186208">Poskusite znova. Če se ta napaka spet prikaže, se obrnite na zastopnika za podporo.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Spreminjanje jezikov</translation>
 <translation id="4301671483919369635">Ta stran ima dovoljenje za urejanje datotek</translation>
 <translation id="4303079906735388947">Nastavitev nove kode PIN za varnostni ključ</translation>
+<translation id="4305402730127028764">Kopiraj v napravo <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Aplikacije morajo biti opremljene z vrsto vsebine »<ph name="CONTENT_TYPE" />«</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> KB (<ph name="NUM_KILOBYTES_LIVE" /> KB dejavno)</translation>
 <translation id="4310139701823742692">Datoteka je v napačni obliki zapisa. Preverite datoteko PPD in poskusite znova.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Poskusite znova.</translation>
 <translation id="4535127706710932914">Privzeti profil</translation>
 <translation id="4535767533210902251">Tipalo prstnih odtisov je tipka v zgornjem desnem kotu tipkovnice. Rahlo se ga dotaknite s poljubnim prstom.</translation>
-<translation id="4538417792467843292">Izbriše besedo</translation>
 <translation id="4538684596480161368">Vedno blokiraj vtičnike, odstranjene iz peskovnika, na <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Nameščeno s pravilnikom podjetja.</translation>
 <translation id="4542520061254486227">Branje vaših podatkov na spletnih mestih <ph name="WEBSITE_1" /> in <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Branje datoteke ...</translation>
 <translation id="5368720394188453070">Telefon je zaklenjen. Za dostop ga odklenite.</translation>
 <translation id="5368779022775404937">Prijavite se v domeno <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Omogočanje pospeševanja miške</translation>
 <translation id="5370819323174483825">&amp;Znova naloži</translation>
 <translation id="5372529912055771682">Ta različica operacijskega sistema ne podpira navedenega načina včlanitve. Poskrbite, da imate nameščeno najnovejšo različico, in poskusite znova.</translation>
 <translation id="5372579129492968947">Odpenjanje razširitve</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Zaženi tokrat</translation>
 <translation id="5464660706533281090">Otroški uporabnik te nastavitve ne more spremeniti.</translation>
 <translation id="5466374726908360271">&amp;Prilepi in poišči »<ph name="SEARCH_TERMS" />«</translation>
+<translation id="5468173180030470402">Iskanje datotečnih sredstev v skupni rabi</translation>
 <translation id="5471768120198416576">Pozdravljeni! Jaz sem glas za pretvorbo besedila v govor.</translation>
 <translation id="5473333559083690127">Vnovični vnos nove kode PIN</translation>
 <translation id="5481941284378890518">Dodajanje tiskalnikov v bližini</translation>
@@ -3544,6 +3544,7 @@
 <translation id="6233154960150021497">Privzeta uporaba glasu namesto tipkovnice</translation>
 <translation id="6234474535228214774">Namestitev na čakanju</translation>
 <translation id="6237816943013845465">Omogoča prilagajanje ločljivosti zaslona</translation>
+<translation id="6238767809035845642">Besedilo, deljeno iz druge naprave</translation>
 <translation id="6238923052227198598">Najnovejši zapisek naj bo prikazan na zaklenjenem zaslonu</translation>
 <translation id="6239558157302047471">Znova naloži &amp;okvir</translation>
 <translation id="6241530762627360640">Dostop do podatkov o napravah Bluetooth, ki so seznanjene z vašim sistemom, in odkrivanje naprav Bluetooth v bližini.</translation>
@@ -3770,7 +3771,6 @@
 <translation id="6577284282025554716">Prenos preklican: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Šifriraj sinhronizirana gesla z uporabniškim imenom in geslom za Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – vsebina namizja v skupni rabi</translation>
-<translation id="6580151766480067746">Različica ARC</translation>
 <translation id="6582080224869403177">Ponastavite napravo <ph name="DEVICE_TYPE" />, da nadgradite varnost.</translation>
 <translation id="6584878029876017575">Microsoftovo doživljenjsko podpisovanje</translation>
 <translation id="6586451623538375658">Zamenjaj primarni gumb miške</translation>
@@ -4375,6 +4375,7 @@
 <translation id="7487141338393529395">Vklop izboljšanega preverjanja črkovanja</translation>
 <translation id="7487969577036436319">Ni nameščenih komponent</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Odpiranje vseh}=1{&amp;Odpiranje zaznamka}one{&amp;Odpiranje vseh (#)}two{&amp;Odpiranje vseh (#)}few{&amp;Odpiranje vseh (#)}other{&amp;Odpiranje vseh (#)}}</translation>
+<translation id="7489761397368794366">Klic iz vaše naprave</translation>
 <translation id="749028671485790643">Oseba <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Naslov MAC</translation>
 <translation id="7493386493263658176">Razširitev <ph name="EXTENSION_NAME" /> bo morda lahko beležila vse besedilo, ki ga vnesete, vključno z osebnimi podatki, kot so gesla in številke kreditnih kartic. Ali jo želite uporabiti?</translation>
@@ -4394,6 +4395,7 @@
 <translation id="7508054832109420082">Omogočanje dostopa do tiskalnikov</translation>
 <translation id="7510943789645525906">Opozori vas, če je bilo geslo, ki ga uporabljate, del podatkovne kršitve</translation>
 <translation id="7513029293694390567">Samodejna prijava v spletna mesta s shranjenimi poverilnicami. Ko je to onemogočeno, boste morali potrditi pred vsako prijavo v spletno mesto.</translation>
+<translation id="7514239104543605883">Kopiranje v vašo napravo</translation>
 <translation id="7514365320538308">Prenos</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Izgovorite »Ok Google«</translation>
@@ -4950,6 +4952,7 @@
 <translation id="8274332263553132018">Predvajanje datoteke</translation>
 <translation id="8274924778568117936">Ne izklopite ali zaprite naprave <ph name="DEVICE_TYPE" />, dokler se posodobitev ne konča. Naprava <ph name="DEVICE_TYPE" /> se bo po končani namestitvi znova zagnala.</translation>
 <translation id="8275038454117074363">Uvozi</translation>
+<translation id="8275080796245127762">Klic iz vaše naprave</translation>
 <translation id="8276560076771292512">Izbriši predpomnilnik in znova naloži brez predpomnilnika</translation>
 <translation id="8281886186245836920">Preskoči</translation>
 <translation id="8282947398454257691">podatke o edinstvenem identifikatorju naprave</translation>
@@ -5270,6 +5273,7 @@
 <translation id="8758418656925882523">Omogoči narek (tipkanje z govorom)</translation>
 <translation id="8759408218731716181">Prijave z več računi ni mogoče nastaviti</translation>
 <translation id="8759753423332885148">Več o tem</translation>
+<translation id="8761945298804995673">Ta uporabnik že obstaja</translation>
 <translation id="8762886931014513155">Naprava <ph name="DEVICE_TYPE" /> potrebuje posodobitev</translation>
 <translation id="8763927697961133303">Naprava USB</translation>
 <translation id="8767621466733104912">Samodejno posodobi Chrome za vse uporabnike</translation>
@@ -5358,6 +5362,7 @@
 <translation id="8879284080359814990">&amp;Pokaži kot zavihek</translation>
 <translation id="8879921471468674457">Shrani podatke za prijavo</translation>
 <translation id="8881020143150461183">Poskusite znova. Če potrebujete tehnično podporo, se obrnite na operaterja <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Omogočanje pospeševanja sledilne ploščice</translation>
 <translation id="8884570509232205463">Tvoja naprava se zdaj zaklene ob <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock ni na voljo</translation>
 <translation id="8888253246822647887">Aplikacija se bo odprla, ko bo nadgradnja dokončana. Nadgradnje lahko trajajo nekaj minut.</translation>
diff --git a/chrome/app/resources/generated_resources_sr.xtb b/chrome/app/resources/generated_resources_sr.xtb
index 2e65e02..5ef3905 100644
--- a/chrome/app/resources/generated_resources_sr.xtb
+++ b/chrome/app/resources/generated_resources_sr.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Да би вам додаци били доступни на свим рачунарима, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Тиме ћете обрисати све податке са безбедносног кључа, укључујући његов PIN</translation>
 <translation id="1475502736924165259">На датотеци има сертификата који се не уклапају ни у једну другу категорију</translation>
+<translation id="1476088332184200792">Копирајте на свој уређај</translation>
 <translation id="1476607407192946488">&amp;Подешавања језика</translation>
 <translation id="1478340334823509079">Детаљи: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Инсталација није омогућена</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">Штампај помоћу системског дијалога... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Питај пре слања (препоручује се)</translation>
 <translation id="2384436799579181135">Дошло је до грешке. Проверите штампач и пробајте поново.</translation>
-<translation id="2386926718981642523">Приступајте Помоћнику сваки пут када кажете „Ок Google“</translation>
 <translation id="2387458720915042159">Тип везе са проксијем</translation>
 <translation id="2391419135980381625">Стандардни фонт</translation>
 <translation id="2392369802118427583">Активирај</translation>
@@ -1338,6 +1338,7 @@
 <translation id="2941112035454246133">Низак</translation>
 <translation id="2942560570858569904">Чека се...</translation>
 <translation id="2942581856830209953">Прилагодите ову страницу</translation>
+<translation id="294308617863380348">Укључујући колачиће треће стране</translation>
 <translation id="2944060181911631861">Шаљите податке о коришћењу и дијагностичке податке. Помозите нам да вам пружимо бољи доживљај Android-а тако што ћете аутоматски слати податке о дијагностици, уређају и коришћењу апликација Google-у. То ће помоћи у одржавању стабилности система и апликације и другим подешавањима. Неки обједињени подаци ће такође помоћи Google апликацијама и партнерима, попут Android програмера. Ако укључите подешавање додатне активности на вебу и у апликацијама, ти подаци ће се можда чувати на Google налогу. <ph name="BEGIN_LINK1" />Сазнајте више<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Додај везу</translation>
 <translation id="2948300991547862301">Иди на <ph name="PAGE_TITLE" /></translation>
@@ -1352,7 +1353,6 @@
 <translation id="2961695502793809356">Кликните да бисте отишли напред, задржите да бисте видели историју</translation>
 <translation id="2963151496262057773">Следећа додатна компонента се не одазива: <ph name="PLUGIN_NAME" /> Желите ли да је зауставите?</translation>
 <translation id="2966937470348689686">Управљајте Android подешавањима</translation>
-<translation id="2972557485845626008">Фирмвер</translation>
 <translation id="2972581237482394796">&amp;Понови радњу</translation>
 <translation id="2973324205039581528">Искључи звук сајта</translation>
 <translation id="2977480621796371840">Уклони из групе</translation>
@@ -1610,7 +1610,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Разделник</translation>
 <translation id="3387614642886316601">Користите побољшану проверу правописа</translation>
-<translation id="3393352139658145068">Помоћник се активира када неко каже „Ок Google“. Да бисте уштедели батерију, функција „Ок Google“ је укључена само када је уређај повезан са извором напајања.</translation>
 <translation id="3396800784455899911">Ако кликнете на дугме „Прихвати и настави“, прихватате горенаведену обраду за ове Google услуге.</translation>
 <translation id="3399432415385675819">Обавештења ће бити онемогућена</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" />×<ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> херца) – преплетено</translation>
@@ -1771,6 +1770,7 @@
 <translation id="3613134908380545408">Прикажи <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Отвори на новој картици</translation>
 <translation id="3615073365085224194">Додирните прстом сензор за отисак прста</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> се скенира.</translation>
 <translation id="3616741288025931835">&amp;Обриши податке прегледања...</translation>
 <translation id="3617891479562106823">Позадине нису доступне. Пробајте поново касније.</translation>
 <translation id="3619115746895587757">Капучино</translation>
@@ -1885,7 +1885,6 @@
 <translation id="3759933321830434300">Блокирање делова веб-страница</translation>
 <translation id="3760460896538743390">Провери страницу &amp;позадине</translation>
 <translation id="37613671848467444">Отвори у &amp;прозору без архивирања</translation>
-<translation id="3764314093345384080">Детаљне информације о верзији</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Комуникација са USB уређајем}one{Комуникација са # USB уређајем}few{Комуникација са # USB уређаја}other{Комуникација са # USB уређаја}}</translation>
 <translation id="3765246971671567135">Читање офлајн смерница за режим демонстрације није успело.</translation>
 <translation id="3768037234834996183">Подешавања се синхронизују...</translation>
@@ -2166,7 +2165,6 @@
 <translation id="4138267921960073861">Приказуј корисничка имена и слике на екрану за пријављивање</translation>
 <translation id="4142052906269098341">Откључајте <ph name="DEVICE_TYPE" /> помоћу телефона. <ph name="LINK_BEGIN" />Сазнајте више<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Пронађите видео садржај бољег квалитета и продужите трајање батерије. Видео ће се пуштати само на екрану који подржава Cast.</translation>
-<translation id="4145922204387553806">Дозволите Помоћнику да вам приказује информације на основу онога што је на екрану</translation>
 <translation id="4146026355784316281">Увек отварај помоћу системског приказивача</translation>
 <translation id="4146785383423576110">Ресетовање и чишћење</translation>
 <translation id="4147911968024186208">Пробајте поново. Ако се ова грешка поново прикаже, контактирајте представника подршке.</translation>
@@ -2253,6 +2251,7 @@
 <translation id="4297322094678649474">Промените језике</translation>
 <translation id="4301671483919369635">Ова страница може да мења датотеке</translation>
 <translation id="4303079906735388947">Подесите нови PIN за безбедносни кључ</translation>
+<translation id="4305402730127028764">Копирај на: <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Апликације морају да се приказују са типом садржаја „<ph name="CONTENT_TYPE" />“</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> kB (<ph name="NUM_KILOBYTES_LIVE" /> kB уживо)</translation>
 <translation id="4310139701823742692">Формат датотеке је погрешан. Проверите PPD датотеку и пробајте поново.</translation>
@@ -2388,7 +2387,6 @@
 <translation id="4534661889221639075">Пробајте поново.</translation>
 <translation id="4535127706710932914">Подразумевани профил</translation>
 <translation id="4535767533210902251">Сензор за отисак прста је тастер у горњем десном углу тастатуре. Лагано га додирните прстом.</translation>
-<translation id="4538417792467843292">Брисање речи</translation>
 <translation id="4538684596480161368">Увек блокирај додатне компоненте које су изван заштићеног окружења на <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Инсталирано је према смерницама за предузеће.</translation>
 <translation id="4542520061254486227">Читање ваших података на <ph name="WEBSITE_1" /> и <ph name="WEBSITE_2" /></translation>
@@ -2932,6 +2930,7 @@
 <translation id="5367091008316207019">Читање датотеке..</translation>
 <translation id="5368720394188453070">Телефон је закључан. Откључајте га да бисте приступили.</translation>
 <translation id="5368779022775404937">Пријавите се на <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Омогући убрзавање миша</translation>
 <translation id="5370819323174483825">&amp;Учитај поново</translation>
 <translation id="5372529912055771682">Ова верзија оперативног система не подржава наведени режим пријављивања. Проверите да ли користите најновију верзију и покушајте поново.</translation>
 <translation id="5372579129492968947">Откачите додатак</translation>
@@ -3004,6 +3003,7 @@
 <translation id="5464632865477611176">Покрени овај пут</translation>
 <translation id="5464660706533281090">Дете не може да промени ово подешавање.</translation>
 <translation id="5466374726908360271">Налепи и претражи „<ph name="SEARCH_TERMS" />“</translation>
+<translation id="5468173180030470402">Траже се дељења датотека</translation>
 <translation id="5471768120198416576">Здраво! Ја сам глас за претварање текста у говор.</translation>
 <translation id="5473333559083690127">Поново унесите нови PIN</translation>
 <translation id="5481941284378890518">Додај оближње штампаче</translation>
@@ -3541,6 +3541,7 @@
 <translation id="6233154960150021497">Враћа подразумевану употребу гласа уместо тастатуре</translation>
 <translation id="6234474535228214774">Инсталирање је на чекању</translation>
 <translation id="6237816943013845465">Омогућавају вам да прилагодите резолуцију екрана</translation>
+<translation id="6238767809035845642">Текст који се дели са другог уређаја</translation>
 <translation id="6238923052227198598">Задржи најновију белешку на закључаном екрану</translation>
 <translation id="6239558157302047471">Поново учитај &amp;оквир</translation>
 <translation id="6241530762627360640">Приступање информацијама о Bluetooth уређајима упареним са вашим системом и откривање оближњих Bluetooth уређаја.</translation>
@@ -3767,7 +3768,6 @@
 <translation id="6577284282025554716">Преузимање је отказано: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Шифруј синхронизоване лозинке помоћу Google корисничког имена и лозинке</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – дели се садржај екрана</translation>
-<translation id="6580151766480067746">Верзија ARC.</translation>
 <translation id="6582080224869403177">Ресетујте уређај <ph name="DEVICE_TYPE" /> да бисте надоградили безбедносну функцију.</translation>
 <translation id="6584878029876017575">Microsoft доживотно потписивање</translation>
 <translation id="6586451623538375658">Замени примарни тастер миша</translation>
@@ -4372,6 +4372,7 @@
 <translation id="7487141338393529395">Укључите побољшану проверу правописа</translation>
 <translation id="7487969577036436319">Није инсталирана ниједна компонента</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Отвори све}=1{&amp;Отвори обележивач}one{&amp;Отвори све (#)}few{&amp;Отвори све (#)}other{&amp;Отвори све (#)}}</translation>
+<translation id="7489761397368794366">Позовите са свог уређаја</translation>
 <translation id="749028671485790643">Особа <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC адреса</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> ће прикупљати сав текст који унесете, укључујући личне податке, попут лозинки и бројева кредитних картица. Да ли желите да користите овај додатак?</translation>
@@ -4391,6 +4392,7 @@
 <translation id="7508054832109420082">Омогућите приступ штампачима</translation>
 <translation id="7510943789645525906">Упозорава вас ако је лозинка коју користите била део упада у податке</translation>
 <translation id="7513029293694390567">Аутоматски се пријављујте на веб-сајтове помоћу сачуваних акредитива. Када је ова функција онемогућена, тражићемо потврду пре сваког пријављивања на веб-сајт.</translation>
+<translation id="7514239104543605883">Копирајте на свој уређај</translation>
 <translation id="7514365320538308">Преузми</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Реците „Ок Google“</translation>
@@ -4947,6 +4949,7 @@
 <translation id="8274332263553132018">Пребаците датотеку</translation>
 <translation id="8274924778568117936">Не искључујте и не затварајте <ph name="DEVICE_TYPE" /> док се ажурирање не заврши. <ph name="DEVICE_TYPE" /> ће се поново покренути када се инсталација заврши.</translation>
 <translation id="8275038454117074363">Увези</translation>
+<translation id="8275080796245127762">Позовите са свог уређаја</translation>
 <translation id="8276560076771292512">Испразни кеш и поново учитај са сервера</translation>
 <translation id="8281886186245836920">Прескочи</translation>
 <translation id="8282947398454257691">зна јединствени идентификатор уређаја</translation>
@@ -5267,6 +5270,7 @@
 <translation id="8758418656925882523">Омогући диктирање (говорите за куцање)</translation>
 <translation id="8759408218731716181">Није могуће подесити вишеструко пријављивање</translation>
 <translation id="8759753423332885148">Сазнајте више.</translation>
+<translation id="8761945298804995673">Овај корисник већ постоји</translation>
 <translation id="8762886931014513155">Треба да ажурирате <ph name="DEVICE_TYPE" /></translation>
 <translation id="8763927697961133303">USB уређај</translation>
 <translation id="8767621466733104912">Аутоматски ажурирај Chrome за све кориснике</translation>
@@ -5355,6 +5359,7 @@
 <translation id="8879284080359814990">&amp;Прикажи као картицу</translation>
 <translation id="8879921471468674457">Запамти податке за пријављивање</translation>
 <translation id="8881020143150461183">Пробајте поново. За техничку подршку се обратите: <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Омогући убрзавање тачпеда</translation>
 <translation id="8884570509232205463">Уређај се сада закључава у <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock није доступно</translation>
 <translation id="8888253246822647887">Апликација ће се отворити када се надоградња заврши. Надоградње могу да трају неколико минута.</translation>
diff --git a/chrome/app/resources/generated_resources_sv.xtb b/chrome/app/resources/generated_resources_sv.xtb
index 0a3c9dac..fe721ab 100644
--- a/chrome/app/resources/generated_resources_sv.xtb
+++ b/chrome/app/resources/generated_resources_sv.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213"><ph name="SIGN_IN_LINK" /> om du vill få tillgång till samma tillägg på alla dina datorer.</translation>
 <translation id="1470967055429794975">All data på säkerhetsnyckeln raderas, inklusive pinkoden</translation>
 <translation id="1475502736924165259">Du har certifikat i din dator som inte passar i några av de andra kategorierna</translation>
+<translation id="1476088332184200792">Kopiera till din enhet</translation>
 <translation id="1476607407192946488">&amp;Språkinställningar</translation>
 <translation id="1478340334823509079">Detaljer: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Installationen är inte aktiverad</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Skriv ut via systemets dialogruta ... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Fråga innan något skickas (rekommenderas)</translation>
 <translation id="2384436799579181135">Ett fel uppstod. Kontrollera skrivaren och försök igen.</translation>
-<translation id="2386926718981642523">Starta assistenten när du säger ”Ok Google”</translation>
 <translation id="2387458720915042159">Proxyanslutningstyp</translation>
 <translation id="2391419135980381625">Standardteckensnitt</translation>
 <translation id="2392369802118427583">Aktivera</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Låg</translation>
 <translation id="2942560570858569904">Väntar …</translation>
 <translation id="2942581856830209953">Anpassa den här sidan</translation>
+<translation id="294308617863380348">Inklusive cookies från tredje part</translation>
 <translation id="2944060181911631861">Skicka diagnostik- och användningsdata. Hjälp till att göra Android bättre genom att skicka diagnostikdata, enhetsdata och data om appanvändning till Google automatiskt. Denna data används till att förbättra systemets och apparnas stabilitet med mera. Viss samlad data används även till att förbättra appar från Google och partner, till exempel Android-utvecklare. Om ytterligare webb- och appaktivitet har aktiverats kan denna data sparas i Google-kontot. <ph name="BEGIN_LINK1" />Läs mer<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Lägg till anslutning</translation>
 <translation id="2948300991547862301">Öppna <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Klicka för att fortsätta, håll ned för att se historik</translation>
 <translation id="2963151496262057773">Följande pluginprogram svarar inte: <ph name="PLUGIN_NAME" />. Vill du stoppa det?</translation>
 <translation id="2966937470348689686">Hantera Android-inställningar</translation>
-<translation id="2972557485845626008">Fast programvara</translation>
 <translation id="2972581237482394796">&amp;Upprepa</translation>
 <translation id="2973324205039581528">Stäng av webbplatsens ljud</translation>
 <translation id="2977480621796371840">Ta bort från gruppen</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" /> %</translation>
 <translation id="338583716107319301">Avgränsare</translation>
 <translation id="3387614642886316601">Använd förbättrad stavningskontroll</translation>
-<translation id="3393352139658145068">Aktivera assistenten när någon säger ”Ok Google”. För att spara batteri är ”Ok Google” bara aktiverat när enheten är ansluten till en extern strömkälla.</translation>
 <translation id="3396800784455899911">När du klickar på Godkänn och fortsätt samtycker du till att dessa tjänster från Google får bearbeta data enligt beskrivningen ovan.</translation>
 <translation id="3399432415385675819">Aviseringar inaktiveras</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) – flätade</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Visa <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Öppna i ny flik</translation>
 <translation id="3615073365085224194">Tryck på fingeravtryckssensorn med fingret.</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> genomsöks.</translation>
 <translation id="3616741288025931835">&amp;Rensa webbinformation...</translation>
 <translation id="3617891479562106823">Inga bakgrunder är tillgängliga. Försök igen senare.</translation>
 <translation id="3619115746895587757">Cappuccino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Blockera delar av webbsidor</translation>
 <translation id="3760460896538743390">Kontrollera &amp;bakgrundssida</translation>
 <translation id="37613671848467444">Öppna i &amp;inkognitofönster</translation>
-<translation id="3764314093345384080">Detaljerad versionsinformation</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Kommunicera med en USB-enhet}other{Kommunicera med # USB-enheter}}</translation>
 <translation id="3765246971671567135">Det gick inte att läsa in offlinepolicyn för demoläge.</translation>
 <translation id="3768037234834996183">Inställningarna synkroniseras ...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Visa användarnamn och foton på inloggningssidan</translation>
 <translation id="4142052906269098341">Lås upp <ph name="DEVICE_TYPE" /> med telefonen. <ph name="LINK_BEGIN" />Läs mer<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Få bättre videokvalitet och spara på batteriet. Videor spelas bara upp på den Cast-kompatibla skärmen.</translation>
-<translation id="4145922204387553806">Tillåt att assistenten ger information utifrån vad som visas på skärmen</translation>
 <translation id="4146026355784316281">Öppna alltid med systemets visningsprogram</translation>
 <translation id="4146785383423576110">Återställ och rensa</translation>
 <translation id="4147911968024186208">Försök igen. Kontakta supporten om det här felet återkommer.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Ändra språk</translation>
 <translation id="4301671483919369635">Sidan har redigeringsbehörighet till filer</translation>
 <translation id="4303079906735388947">Ange en ny pinkod för säkerhetsnyckeln</translation>
+<translation id="4305402730127028764">Kopiera till <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Apparna måste visas med content-type <ph name="CONTENT_TYPE" /></translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K (<ph name="NUM_KILOBYTES_LIVE" /> K aktiva)</translation>
 <translation id="4310139701823742692">Filen har fel format. Kontrollera PPD-filen och försök igen.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Försök igen.</translation>
 <translation id="4535127706710932914">Standardprofil</translation>
 <translation id="4535767533210902251">Fingeravtryckssensorn är tangenten högst upp till höger på tangentbordet. Tryck lätt på den med valfritt finger.</translation>
-<translation id="4538417792467843292">Ta bort ord</translation>
 <translation id="4538684596480161368">Blockera alltid plugin-program som inte är i sandlådeläge på <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Installerad på grund av företagets principer.</translation>
 <translation id="4542520061254486227">Läsa din data på <ph name="WEBSITE_1" /> och <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Läser fil ...</translation>
 <translation id="5368720394188453070">Din mobil är låst. Lås upp den.</translation>
 <translation id="5368779022775404937">Logga in på <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Aktivera musacceleration</translation>
 <translation id="5370819323174483825">&amp;Läs in igen</translation>
 <translation id="5372529912055771682">Det angivna registreringsläget stöds inte av den här versionen av operativsystemet. Kontrollera att du har den senaste versionen och försök igen.</translation>
 <translation id="5372579129492968947">Lossa tillägg</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Kör den här gången</translation>
 <translation id="5464660706533281090">Inställningen kan inte ändras av barn.</translation>
 <translation id="5466374726908360271">Kli&amp;stra in och sök efter <ph name="SEARCH_TERMS" /></translation>
+<translation id="5468173180030470402">Söker efter filresurser</translation>
 <translation id="5471768120198416576">Hejsan! Nu används min röst för text till tal.</translation>
 <translation id="5473333559083690127">Ange ny pinkod igen</translation>
 <translation id="5481941284378890518">Lägg till skrivare i närheten</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">Använd rösten i stället för tangentbordet som standard</translation>
 <translation id="6234474535228214774">Väntar på att installeras</translation>
 <translation id="6237816943013845465">Ger möjlighet att ändra skärmupplösningen</translation>
+<translation id="6238767809035845642">Text delad från annan enhet</translation>
 <translation id="6238923052227198598">Behåll den senaste anteckningen på låsskärmen</translation>
 <translation id="6239558157302047471">Läs in &amp;ram igen</translation>
 <translation id="6241530762627360640">Få åtkomst till information om Bluetooth-enheter som är kopplade till ditt system och upptäck Bluetooth-enheter i närheten.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Nedladdningen avbröts: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Kryptera synkroniserade lösenord med ditt användarnamn och lösenord på Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – skrivbordet delas</translation>
-<translation id="6580151766480067746">ARC-version</translation>
 <translation id="6582080224869403177">Du måste återställa <ph name="DEVICE_TYPE" /> för att uppgradera säkerheten.</translation>
 <translation id="6584878029876017575">Microsofts Livstids signering</translation>
 <translation id="6586451623538375658">Byt primär musknapp</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Aktivera förbättrad stavningskontroll</translation>
 <translation id="7487969577036436319">Det finns inga installerade komponenter</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Öppna alla}=1{&amp;Öppna bokmärke}other{&amp;Öppna alla (#)}}</translation>
+<translation id="7489761397368794366">Ring från din enhet</translation>
 <translation id="749028671485790643">Person <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-adress</translation>
 <translation id="7493386493263658176">Tillägget <ph name="EXTENSION_NAME" /> kan samla in all text du skriver, inklusive personlig information som lösenord och kreditkortsnummer. Vill du fortsätta att använda tillägget?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Ge åtkomst till skrivare</translation>
 <translation id="7510943789645525906">Varnar om ett lösenord du använder har identifierats i samband med ett dataintrång</translation>
 <translation id="7513029293694390567">Logga in automatiskt på webbplatser med hjälp av lagrade inloggningsuppgifter. När funktionen är inaktiverad måste du bekräfta inloggningen varje gång du besöker en webbplats.</translation>
+<translation id="7514239104543605883">Kopiera till din enhet</translation>
 <translation id="7514365320538308">Ladda ned</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Säg ”Ok Google”</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Casta fil</translation>
 <translation id="8274924778568117936">Stäng inte av eller stäng <ph name="DEVICE_TYPE" /> förrän uppdateringen har slutförts. <ph name="DEVICE_TYPE" /> startas om när installationen är slutförd.</translation>
 <translation id="8275038454117074363">Importera</translation>
+<translation id="8275080796245127762">Ring från din enhet</translation>
 <translation id="8276560076771292512">Töm cacheminne och gör hård inläsning</translation>
 <translation id="8281886186245836920">Hoppa över</translation>
 <translation id="8282947398454257691">Veta din unika enhetsidentifierare</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Aktivera diktering (skriv genom att tala)</translation>
 <translation id="8759408218731716181">Det går inte att starta multiinloggning</translation>
 <translation id="8759753423332885148">Läs mer.</translation>
+<translation id="8761945298804995673">Användaren finns redan</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> behöver uppdateras</translation>
 <translation id="8763927697961133303">USB-enhet</translation>
 <translation id="8767621466733104912">Uppdatera Chrome automatiskt för alla användare</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Visa som flik</translation>
 <translation id="8879921471468674457">Kom ihåg inloggningsuppgifter</translation>
 <translation id="8881020143150461183">Försök igen. Kontakta <ph name="CARRIER_NAME" /> om du behöver teknisk support.</translation>
+<translation id="8883273463630735858">Aktivera styrplatteacceleration</translation>
 <translation id="8884570509232205463">Nu låses enheten klockan <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock är inte tillgängligt</translation>
 <translation id="8888253246822647887">Appen öppnas när uppgraderingen är klar. Uppgraderingen kan ta några minuter.</translation>
diff --git a/chrome/app/resources/generated_resources_sw.xtb b/chrome/app/resources/generated_resources_sw.xtb
index 7bce39c..2d1814d 100644
--- a/chrome/app/resources/generated_resources_sw.xtb
+++ b/chrome/app/resources/generated_resources_sw.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Ili upate viendelezi vyako kwenye kompyuta zako zote, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Hatua hii itafuta data yote kwenye ufunguo wa usalama ikiwa ni pamoja na PIN.</translation>
 <translation id="1475502736924165259">Una vyeti kwenye faili ambavyo havilangani na aina nyingine yoyote</translation>
+<translation id="1476088332184200792">Nakili kwenye Kifaa Chako</translation>
 <translation id="1476607407192946488">Mipangilio ya Lugha</translation>
 <translation id="1478340334823509079">Maelezo: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Hujawasha kipengele cha kusakinisha</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">Chapisha kwa kutumia kidadisi cha mfumo... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Uliza kabla ya kutuma (imependekezwa)</translation>
 <translation id="2384436799579181135">Hitilafu imetokea. Tafadhali angalia printa yako kisha ujaribu tena.</translation>
-<translation id="2386926718981642523">Fikia programu ya Mratibu wakati wowote unaposema "Ok Google"</translation>
 <translation id="2387458720915042159">Aina ya muunganisho wa seva mbadala</translation>
 <translation id="2391419135980381625">Fonti wastani</translation>
 <translation id="2392369802118427583">Amilisha</translation>
@@ -1338,6 +1338,7 @@
 <translation id="2941112035454246133">Chini</translation>
 <translation id="2942560570858569904">Inasubiri...</translation>
 <translation id="2942581856830209953">Badilisha ukurasa huu</translation>
+<translation id="294308617863380348">Ikijumuisha vidakuzi vya watu au kampuni zingine</translation>
 <translation id="2944060181911631861">Tuma data ya matumizi na uchunguzi. Tusaidie kuboresha jinsi unavyotumia Android kwa kutuma kiotomatiki data ya uchunguzi na matumizi ya kifaa na programu kwa Google. Maelezo haya yatatusaidia kuboresha uthabiti wa programu na mfumo na maboresho mengine. Baadhi ya maelezo yaliyojumlishwa pia yatasaidia programu za Google na washirika kama vile wasanidi programu za Android. Ikiwa umewasha mipangilio ya historia ya Shughuli za ziada kwenye Wavuti na Programu, huenda data hii itahifadhiwa kwenye akaunti yako ya Google. <ph name="BEGIN_LINK1" />Pata maelezo zaidi<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Ongeza muunganisho</translation>
 <translation id="2948300991547862301">Nenda kwenye <ph name="PAGE_TITLE" /></translation>
@@ -1352,7 +1353,6 @@
 <translation id="2961695502793809356">Bofya kuenda mbele, shikilia kuona historia</translation>
 <translation id="2963151496262057773">Programu jalizi inayofuata imekwama: <ph name="PLUGIN_NAME" />Ungependa kuisimamisha?</translation>
 <translation id="2966937470348689686">Dhibiti mapendeleo ya Android</translation>
-<translation id="2972557485845626008">Programu dhibiti</translation>
 <translation id="2972581237482394796">&amp;Rudia</translation>
 <translation id="2973324205039581528">Zima Sauti ya Tovuti</translation>
 <translation id="2977480621796371840">Ondoa kwenye kikundi</translation>
@@ -1610,7 +1610,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Kitenganishi</translation>
 <translation id="3387614642886316601">Tumia kikagua maendelezo kilichoboreshwa</translation>
-<translation id="3393352139658145068">Washa programu ya Mratibu mtu yeyote anaposema “Ok Google”. Ili kuokoa chaji ya betri “Ok Google” inawaka tu wakati kifaa chako kimeunganishwa kwenye chanzo cha umeme.</translation>
 <translation id="3396800784455899911">Kwa kubofya kitufe cha "Kubali na uendelee", unakubali uchakataji uliobainishwa hapo juu katika huduma hizi za Google.</translation>
 <translation id="3399432415385675819">Arifa zitazimwa</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (Hertz <ph name="REFRESH_RATE" />) - imejumuishwa pamoja</translation>
@@ -1771,6 +1770,7 @@
 <translation id="3613134908380545408">Onyesha <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;Fungua katika kichupo kipya</translation>
 <translation id="3615073365085224194">Gusa kitambua alama ya kidole ukitumia kidole chako</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> inachanganuliwa.</translation>
 <translation id="3616741288025931835">&amp;Futa Data ya Kuvinjari</translation>
 <translation id="3617891479562106823">Mandhari hayapatikani. Jaribu tena baadaye.</translation>
 <translation id="3619115746895587757">Kapuchino</translation>
@@ -1885,7 +1885,6 @@
 <translation id="3759933321830434300">Zuia sehemu za kurasa za mtandao</translation>
 <translation id="3760460896538743390">Kagua Ukurasa wa Mandharinyuma</translation>
 <translation id="37613671848467444">Fungua katika &amp;Dirisha Chini kwa chini</translation>
-<translation id="3764314093345384080">Maelezo ya kina ya muundo</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Wasiliana na kifaa cha USB}other{Wasiliana na vifaa # vya USB}}</translation>
 <translation id="3765246971671567135">Imeshindwa kusoma sera ya hali ya onyesho la nje ya mtandao.</translation>
 <translation id="3768037234834996183">Inasawazisha mapendeleo yako...</translation>
@@ -2164,7 +2163,6 @@
 <translation id="4138267921960073861">Onyesha majina ya watumiaji na picha kwenye skrini ya kuingia</translation>
 <translation id="4142052906269098341">Fungua <ph name="DEVICE_TYPE" /> yako ukitumia simu yako. <ph name="LINK_BEGIN" />Pata maelezo zaidi<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Pata video bora na uokoe muda wa matumizi ya betri. Video itacheza tu kwenye skrini inayoweza kutumia Google Cast.</translation>
-<translation id="4145922204387553806">Ruhusu programu ya Mratibu ikuonyeshe maelezo yanayohusiana na kilicho kwenye skrini yako</translation>
 <translation id="4146026355784316281">Fungua Ukitumia Kitazamaji Cha Mfumo Wakati Wowote</translation>
 <translation id="4146785383423576110">Weka mipangilio upya na ufute programu hatari</translation>
 <translation id="4147911968024186208">Tafadhali jaribu tena. Ukiona hitilafu hii tena, tafadhali wasiliana na mwakilishi wako wa kutoa usaidizi.</translation>
@@ -2251,6 +2249,7 @@
 <translation id="4297322094678649474">Badilisha Lugha</translation>
 <translation id="4301671483919369635">Ukurasa huu unaruhusiwa kubadilisha faili</translation>
 <translation id="4303079906735388947">Weka PIN mpya ya ufunguo wako wa usalama</translation>
+<translation id="4305402730127028764">Nakili kwenye <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Ni lazima programu zikabidhiwe aina ya maudhui "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K live)</translation>
 <translation id="4310139701823742692">Muundo wa faili si sahihi. Angalia faili na PPD kisha ujaribu tena.</translation>
@@ -2386,7 +2385,6 @@
 <translation id="4534661889221639075">Jaribu tena.</translation>
 <translation id="4535127706710932914">Wasifu Chaguomsingi</translation>
 <translation id="4535767533210902251">Kitambua alama ya kidole kiko kwenye kitufe cha upande wa kulia juu katika kibodi yako. Kiguse taratibu ukitumia kidole chako.</translation>
-<translation id="4538417792467843292">Futa neno</translation>
 <translation id="4538684596480161368">Zuia programu jalizi zisizo kwenye sanbox kwenye <ph name="HOST" /> wakati wowote</translation>
 <translation id="4538792345715658285">Imesanidiwa na sera ya biashara.</translation>
 <translation id="4542520061254486227">Soma data yako kwenye <ph name="WEBSITE_1" /> na <ph name="WEBSITE_2" /></translation>
@@ -2930,6 +2928,7 @@
 <translation id="5367091008316207019">Inasoma faili..</translation>
 <translation id="5368720394188453070">Simu yako imefungwa. Ifungue ili kuingia.</translation>
 <translation id="5368779022775404937">Ingia katika <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Washa kipengele cha kuongeza kasi ya kipanya</translation>
 <translation id="5370819323174483825">Pakia upya</translation>
 <translation id="5372529912055771682">Modi ya usajili iliyosambazwa haihimiliwi na toleo hili la mfumo wa uendeshaji. Tafadhali hakikisha unaendesha toleo jipya na ujaribu tena.</translation>
 <translation id="5372579129492968947">Bandua kiendelezi</translation>
@@ -3002,6 +3001,7 @@
 <translation id="5464632865477611176">Endesha wakati huu</translation>
 <translation id="5464660706533281090">Mipangilio hii haiwezi kubadilishwa na mtoto.</translation>
 <translation id="5466374726908360271">Ba&amp;ndika na utafute “<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">Inatafuta faili za kushiriki</translation>
 <translation id="5471768120198416576">Hujambo! Mimi ni sauti yako inayobadilisha maandishi kwenda usemi.</translation>
 <translation id="5473333559083690127">Weka tena PIN mpya</translation>
 <translation id="5481941284378890518">Ongeza Printa za Uhamishaji wa Karibu</translation>
@@ -3536,6 +3536,7 @@
 <translation id="6233154960150021497">Weka chaguomsingi iwe sauti badala ya kibodi</translation>
 <translation id="6234474535228214774">Inasubiri kusakinisha</translation>
 <translation id="6237816943013845465">Hukuruhusu kurekebisha ubora wa skrini yako</translation>
+<translation id="6238767809035845642">Maandishi yaliyoshirikiwa kutoka Kifaa Kingine</translation>
 <translation id="6238923052227198598">Kiweke kidokezo cha hivi punde kwenye skrini iliyofungwa</translation>
 <translation id="6239558157302047471">Pakia fremu upya</translation>
 <translation id="6241530762627360640">Fikia maelezo kuhusu vifaa vya Bluetooth vilivyooanishwa na mfumo wako na ugundue vifaa vya karibu vya Bluetooth.</translation>
@@ -3762,7 +3763,6 @@
 <translation id="6577284282025554716">Imeghairi kupakua: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Simba kwa njia fiche manenosiri yaliyosawazishwa kwa jina la mtumiaji na nenosiri lako la Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Imeshiriki maudhui yaliyo kwenye eneo kazi</translation>
-<translation id="6580151766480067746">Toleo la ARC</translation>
 <translation id="6582080224869403177">Badilisha mipangilio ya <ph name="DEVICE_TYPE" /> yako ili usasishe usalama wako.</translation>
 <translation id="6584878029876017575">Uwekaji Sahihi wa Maisha kutoka Microsoft</translation>
 <translation id="6586451623538375658">Badilisha kitufe msingi cha kipanya</translation>
@@ -4367,6 +4367,7 @@
 <translation id="7487141338393529395">Washa Kikagua Maendelezo Kilichoboreshwa</translation>
 <translation id="7487969577036436319">Hakuna vipengele vilivyosakinishwa</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Fungua zote}=1{&amp;Fungua alamisho}other{&amp;Fungua zote (#)}}</translation>
+<translation id="7489761397368794366">Piga simu kwa kutumia kifaa chako</translation>
 <translation id="749028671485790643">Mtu <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">Anwani ya MAC</translation>
 <translation id="7493386493263658176">Huenda kiendelezi cha <ph name="EXTENSION_NAME" /> kikahifadhi maandishi yote unayocharaza, ikiwemo data ya kibinafsi kama vile manenosiri na nambari za kadi za mikopo. Je, ungependa kutumia kiendelezi hiki?</translation>
@@ -4386,6 +4387,7 @@
 <translation id="7508054832109420082">Ipe idhini ya kufikia printa</translation>
 <translation id="7510943789645525906">Hukuonya ikiwa nenosiri unalotumia liliathiriwa na tukio la ufichuzi haramu wa data</translation>
 <translation id="7513029293694390567">Ingia katika tovuti kiotomatiki ukitumia kitambulisho kilichohifadhiwa. Kipengele kikizimwa, utaombwa kuthibitisha kila wakati kabla ya kuingia katika tovuti.</translation>
+<translation id="7514239104543605883">Nakili kwenye kifaa chako</translation>
 <translation id="7514365320538308">Pakua</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Sema "Ok Google"</translation>
@@ -4944,6 +4946,7 @@
 <translation id="8274332263553132018">Tuma faili</translation>
 <translation id="8274924778568117936">Usizime wala kufunga kifaa chako cha <ph name="DEVICE_TYPE" /> hadi sasisho likamilike. Kifaa chako cha <ph name="DEVICE_TYPE" /> kitazimika na kuwaka baada ya sasisho kukamilika.</translation>
 <translation id="8275038454117074363">Leta</translation>
+<translation id="8275080796245127762">Piga simu kwa kutumia Kifaa Chako</translation>
 <translation id="8276560076771292512">Futa Akiba na Uanzishe Kivinjari Upya</translation>
 <translation id="8281886186245836920">Ruka</translation>
 <translation id="8282947398454257691">Jua kitambulisho chako cha kipekee cha kifaa</translation>
@@ -5264,6 +5267,7 @@
 <translation id="8758418656925882523">Washa kipengele cha kuandika kwa kutamka (tamka ili uandike)</translation>
 <translation id="8759408218731716181">Haiwezi kusanida uwezo wa kuingia katika akaunti nyingi kwa wakati mmoja</translation>
 <translation id="8759753423332885148">Pata maelezo zaidi.</translation>
+<translation id="8761945298804995673">Mtumiaji huyu tayari yupo</translation>
 <translation id="8762886931014513155">Unahitaji kusasisha <ph name="DEVICE_TYPE" /> yako</translation>
 <translation id="8763927697961133303">Kifaa cha USB</translation>
 <translation id="8767621466733104912">Sasisha Chrome kwa watumiaji wote kiotomatiki</translation>
@@ -5352,6 +5356,7 @@
 <translation id="8879284080359814990">Onye&amp;sha kama Kichupo</translation>
 <translation id="8879921471468674457">Kumbuka maelezo ya kuingia katika akaunti</translation>
 <translation id="8881020143150461183">Tafadhali jaribu tena. Kwa usaidizi wa kiufundi, wasiliana na <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Washa kipengele cha kuongeza kasi ya padi ya kugusa</translation>
 <translation id="8884570509232205463">Kifaa chako sasa kitajifunga <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Smart Lock haipatikani</translation>
 <translation id="8888253246822647887">Programu yako itafunguka baada ya kukamilisha kuweka toleo jipya. Matoleo mapya yanaweza kuchukua dakika kadhaa kuwekwa.</translation>
diff --git a/chrome/app/resources/generated_resources_ta.xtb b/chrome/app/resources/generated_resources_ta.xtb
index 584cf4e..83c66440 100644
--- a/chrome/app/resources/generated_resources_ta.xtb
+++ b/chrome/app/resources/generated_resources_ta.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">உங்கள் நீட்டிப்புகளை உங்கள் கணினிகள் அனைத்திலும் பெற, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">பாதுகாப்பு விசையில் சேமிக்கப்பட்டுள்ள பின் உட்பட அனைத்துத் தரவையும் இது அழிக்கும்</translation>
 <translation id="1475502736924165259">பிற வகைகள் எவற்றிலும் பொருந்தாத சான்றிதழ்கள் கோப்பில் உள்ளன</translation>
+<translation id="1476088332184200792">உங்கள் சாதனத்திற்கு நகலெடுங்கள்</translation>
 <translation id="1476607407192946488">&amp;மொழி அமைப்புகள்</translation>
 <translation id="1478340334823509079">விவரங்கள்: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">நிறுவுதல் இயக்கப்படவில்லை</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">கம்ப்யூட்டர் உரையாடலைப் பயன்படுத்தி அச்சிடுக…<ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">அனுப்பும் முன் கேள் (பரிந்துரைக்கப்படுகிறது)</translation>
 <translation id="2384436799579181135">பிழை ஏற்பட்டது. உங்கள் பிரிண்டரைச் சரிபார்த்து, மீண்டும் முயலவும்.</translation>
-<translation id="2386926718981642523">"Ok Google" என்று சொல்லி எந்த நேரத்திலும் அசிஸ்டண்ட்டை அணுகலாம்</translation>
 <translation id="2387458720915042159">ப்ராக்ஸி இணைப்பு வகை</translation>
 <translation id="2391419135980381625">நிலையான எழுத்துரு</translation>
 <translation id="2392369802118427583">செயல்படுத்து</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">குறைவு</translation>
 <translation id="2942560570858569904">காத்திருக்கிறது...</translation>
 <translation id="2942581856830209953">இந்தப் பக்கத்தைத் தனிப்பயனாக்குக</translation>
+<translation id="294308617863380348">மூன்றாம் தரப்பினரின் குக்கீகளும் இதில் அடங்கும்</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="2948300991547862301"><ph name="PAGE_TITLE" /> க்குச் செல்</translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">அடுத்த பக்கத்திற்கு செல்ல கிளிக் செய்க, வரலாற்றைக் காண அழுத்திக்கொண்டே இருங்கள்</translation>
 <translation id="2963151496262057773">பின்வரும் செருகுநிரல் பதிலளிக்கவில்லை: <ph name="PLUGIN_NAME" />நிறுத்தவா?</translation>
 <translation id="2966937470348689686">Android விருப்பத்தேர்வுகளை நிர்வகி</translation>
-<translation id="2972557485845626008">நிலைபொருள்</translation>
 <translation id="2972581237482394796">&amp;மீண்டும் செய்</translation>
 <translation id="2973324205039581528">தளத்தில் ஒலி இயக்கு</translation>
 <translation id="2977480621796371840">குழுவிலிருந்து அகற்று</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">பிரிப்பான்</translation>
 <translation id="3387614642886316601">'மேம்பட்ட எழுத்துப் பிழை சரிபார்க்கும்' அம்சத்தைப் பயன்படுத்து</translation>
-<translation id="3393352139658145068">எவரேனும் “Ok Google” என்று சொல்லும்போது அசிஸ்டண்ட் செயல்படத் தொடங்கும். பேட்டரியைச் சேமிக்க, சாதனம் சார்ஜ் செய்யப்படும்போது மட்டும் “Ok Google” வசதி இயக்கப்பட்டிருக்கும்.</translation>
 <translation id="3396800784455899911">"ஏற்றுக்கொண்டு, தொடர்க" பட்டனைக் கிளிக் செய்வதன் மூலம், இந்த Google சேவைகளுக்காக மேலே விவரிக்கப்பட்டுள்ள செயலாக்க நடைமுறைகளை ஏற்கிறீர்கள்.</translation>
 <translation id="3399432415385675819">அறிவிப்புகள் முடக்கப்படும்</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> ஹெர்ட்ஸ்) - பிணைக்கப்பட்டுள்ளது</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> ஐக் காட்டு</translation>
 <translation id="3613422051106148727">புதிய தாவலில் &amp;திற</translation>
 <translation id="3615073365085224194">விரலால் கைரேகை சென்சாரைத் தொடவும்</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> ஸ்கேன் செய்யப்பட்டது.</translation>
 <translation id="3616741288025931835">உலாவிய தரவை &amp;சுத்தமாக்கு...</translation>
 <translation id="3617891479562106823">பின்னணிகள் கிடைக்கவில்லை. பின்னர் மீண்டும் முயலவும்.</translation>
 <translation id="3619115746895587757">காப்பச்சினோ</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">இணைய பக்கங்களின் பகுதியைத் தடுக்கலாம்</translation>
 <translation id="3760460896538743390">&amp;பின்புலப் பக்கத்தை ஆய்வுசெய்</translation>
 <translation id="37613671848467444">&amp;மறைநிலை சாளரத்தில் திற</translation>
-<translation id="3764314093345384080">விரிவான பதிப்புத் தகவல்</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{USB சாதனத்துடன் தொடர்புகொள்ளும்}other{# USB சாதனங்களுடன் தொடர்புகொள்ளும்}}</translation>
 <translation id="3765246971671567135">ஆஃப்லைன் டெமோ பயன்முறைக் கொள்கையைப் படிக்க முடியவில்லை.</translation>
 <translation id="3768037234834996183">விருப்பத்தேர்வுகளை ஒத்திசைக்கிறது...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">உள்நுழைவு திரையில், பயனர் பெயர்கள் மற்றும் புகைப்படங்களைக் காண்பி</translation>
 <translation id="4142052906269098341">உங்கள் மொபைலின் மூலம் <ph name="DEVICE_TYPE" /> சாதனத்தைத் திறக்கலாம். <ph name="LINK_BEGIN" />மேலும் அறிக<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">மேலும் தரமான வீடியோக்களைப் பெறலாம், பேட்டரி நிலையை நீட்டிக்கலாம். Cast வசதியுள்ள திரையில் மட்டுமே வீடியோக்கள் இயக்கப்படும்.</translation>
-<translation id="4145922204387553806">உங்கள் திரையிலுள்ள உள்ளடக்கத்துடன் தொடர்புடைய தகவலைக் காட்ட அசிஸ்டண்ட்டை அனுமதிக்கும்</translation>
 <translation id="4146026355784316281">எப்போதும் சிஸ்டம் வியூவரைக் கொண்டு திற</translation>
 <translation id="4146785383423576110">இயல்பு அமைப்புகளுக்கு மீட்டமைத்து, தீங்கிழைக்கும் மென்பொருளை அகற்று</translation>
 <translation id="4147911968024186208">மீண்டும் முயலவும். இந்தப் பிழை மீண்டும் ஏற்பட்டால், உங்கள் உதவி மையப் பிரதிநிதியைத் தொடர்பு கொள்ளவும்.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">மொழிகளை மாற்று</translation>
 <translation id="4301671483919369635">கோப்புகளைத் திருத்த இந்தப் பக்கத்திற்கு அனுமதி உள்ளது</translation>
 <translation id="4303079906735388947">உங்கள் பாதுகாப்பு விசைக்கு புதிய பின்னை அமைக்கவும்</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" />க்கு நகலெடு</translation>
 <translation id="4306119971288449206">ஆப்ஸ் "<ph name="CONTENT_TYPE" />" எனும் உள்ளடக்க வகையுடனேயே வழங்கப்பட வேண்டும்</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K பயன்பாட்டில்)</translation>
 <translation id="4310139701823742692">கோப்பு தவறான வடிவமைப்பில் உள்ளது. PPD கோப்பைச் சரிபார்த்து, மீண்டும் முயலவும்.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">மீண்டும் முயலவும்.</translation>
 <translation id="4535127706710932914">இயல்புநிலை சுயவிவரம்</translation>
 <translation id="4535767533210902251">உங்கள் கீபோர்டின் மேலே வலது ஓரத்தில் கைரேகை சென்சார் உள்ளது. அதை ஏதேனும் ஒரு விரலால் மெதுவாகத் தொடவும்.</translation>
-<translation id="4538417792467843292">சொல்லை நீக்கு</translation>
 <translation id="4538684596480161368">எப்போதும் <ph name="HOST" /> இல் சாண்ட்பாக்ஸ் செய்யப்படாத செருகுநிரல்களைத் தடு</translation>
 <translation id="4538792345715658285">நிறுவன கொள்கையால் நிறுவப்பட்டது.</translation>
 <translation id="4542520061254486227">உங்கள் தரவை <ph name="WEBSITE_1" /> மற்றும் <ph name="WEBSITE_2" /> இல் படிக்கவும்</translation>
@@ -2542,7 +2540,7 @@
 <translation id="4763830802490665879">பல்வேறு தளங்களின் குக்கீகளும் வெளியேறும்போது அழிக்கப்படும்.</translation>
 <translation id="4765582662863429759">உங்கள் மொபைலில் இருந்து Chromebookகுக்கு மெசேஜ்களை ரிலே செய்ய Android மெசேஜஸை அனுமதிக்கும்</translation>
 <translation id="4768332406694066911">உங்களை அடையாளங்காணும் இந்த நிறுவனங்களின் சான்றிதழ்கள் உள்ளன</translation>
-<translation id="4774824109040330448">உங்கள் மொபைலிலுள்ள இணக்கத்தன்மையுடைய அடையாளங்காணும் ஆப்ஸ் மூலம் QR குறியீட்டை ஸ்கேன் செய்யும்.</translation>
+<translation id="4774824109040330448">உங்கள் மொபைலிலுள்ள இணக்கமான அடையாளங்காணும் ஆப்ஸ் மூலம் QR குறியீட்டை ஸ்கேன் செய்யும்.</translation>
 <translation id="4776146737004271126">Android அமைப்புகளைத் திற</translation>
 <translation id="4776917500594043016"><ph name="USER_EMAIL_ADDRESS" /> க்கான கடவுச்சொல்</translation>
 <translation id="4777825441726637019">Play ஸ்டோர்</translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">கோப்பைப் படிக்கிறது.</translation>
 <translation id="5368720394188453070">ஃபோன் பூட்டப்பட்டது. நுழைய, திறக்கவும்.</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> இல் உள்நுழையவும்</translation>
+<translation id="5369491905435686894">மவுஸ் துரிதப்படுத்தலை இயக்கு</translation>
 <translation id="5370819323174483825">&amp;மீண்டும் ஏற்று</translation>
 <translation id="5372529912055771682">வழங்கப்பட்ட பதிவுசெய்த பயன்முறை ஆப்ரேட்டிங் சிஸ்டத்தின் இந்தப் பதிப்பால் ஆதரிக்கப்படவில்லை. நீங்கள் புதிய பதிப்பை இயக்குவதை உறுதி செய்து, மீண்டும் முயலவும்.</translation>
 <translation id="5372579129492968947">நீட்டிப்பைப் பரித்தெடுக்கும்</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">இப்போது இயக்கு</translation>
 <translation id="5464660706533281090">சிறுவர்களால் இந்த அமைப்பை மாற்ற முடியாது.</translation>
 <translation id="5466374726908360271">“<ph name="SEARCH_TERMS" />” வினவலை ஒட்டி, தேடு</translation>
+<translation id="5468173180030470402">கோப்புப் பகிர்வுகளைத் தேடுகிறது</translation>
 <translation id="5471768120198416576">வணக்கம்! நான் தான் உங்கள் உரையைப் பேசும் குரல்</translation>
 <translation id="5473333559083690127">புதிய பின்னை மீண்டும் உள்ளிடவும்</translation>
 <translation id="5481941284378890518">அருகிலுள்ள பிரிண்டர்களைச் சேர்</translation>
@@ -3543,6 +3543,7 @@
 <translation id="6233154960150021497">கீபோர்டுக்குப் பதிலாகக் குரலை இயல்பாகப் பயன்படுத்து</translation>
 <translation id="6234474535228214774">நிறுவுவது நிலுவையில் உள்ளது</translation>
 <translation id="6237816943013845465">திரையின் தெளிவுத்திறனைச் சரிசெய்ய அனுமதிக்கும்</translation>
+<translation id="6238767809035845642">மற்றொரு சாதனத்திலிருந்து உரை பகிரப்பட்டுள்ளது</translation>
 <translation id="6238923052227198598">சமீபத்திய குறிப்பைப் லாக் ஸ்கிரீனில் வைத்திரு</translation>
 <translation id="6239558157302047471">&amp;ஃபிரேமை மீண்டும் ஏற்று</translation>
 <translation id="6241530762627360640">உங்கள் கம்ப்யூட்டருடன் இணைக்கப்பட்ட புளூடூத் சாதனங்கள் பற்றிய தகவலை அணுகுதலும் அருகிலுள்ள புளூடூத் சாதனங்களைக் கண்டறிதலும்.</translation>
@@ -3769,7 +3770,6 @@
 <translation id="6577284282025554716">பதிவிறக்கம் ரத்துசெய்யப்பட்டது: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">ஒத்திசைக்கப்பட்ட கடவுச்சொற்களை எனது Google பயனர்பெயர் மற்றும் கடவுச்சொல் மூலம் என்கிரிப்ட் செய்</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - டெஸ்க்டாப் உள்ளடக்கம் பகிரப்படுகிறது</translation>
-<translation id="6580151766480067746">ARC பதிப்பு</translation>
 <translation id="6582080224869403177">உங்கள் <ph name="DEVICE_TYPE" /> இன் பாதுகாப்பை மேம்படுத்த, அதை மீட்டமைக்கவும்.</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">முதன்மை சுட்டிப் பொத்தானை மாற்று</translation>
@@ -3780,7 +3780,7 @@
 <translation id="6596325263575161958">என்க்ரிப்ஷன் விருப்பங்கள்</translation>
 <translation id="6596816719288285829">IP முகவரி</translation>
 <translation id="6597017209724497268">மாதிரிகள்</translation>
-<translation id="6597148444736186483">இந்தச் சாதனத்தின் முதன்மைக் கணக்கிலிருந்து வெளியேற உங்கள் திரையிலுள்ள நேரத்தை கிளிக் செய்யவும். இப்போது தோன்றும் மெனுவிலுள்ள "வெளியேறு" என்பதை கிளிக் செய்யவும்.</translation>
+<translation id="6597148444736186483">இந்தச் சாதனத்தின் முதன்மைக் கணக்கிலிருந்து வெளியேற உங்கள் திரையிலுள்ள நேரத்தை கிளிக் செய்யவும். தோன்றுகிற மெனுவிலுள்ள "வெளியேறு" என்பதை கிளிக் செய்யவும்.</translation>
 <translation id="659934686219830168">இந்தப் பக்கத்திலிருந்து நீங்கள் வெளியேறியதும், ஒத்திசைவு தொடங்கும்</translation>
 <translation id="6602956230557165253">வழிசெலுத்த இடது மற்றும் வலது அம்புக்குறி விசைகளைப் பயன்படுத்தவும்.</translation>
 <translation id="6605847144724004692">இதுவரை எந்தப் பயனராலும் மதிப்பிடப்படவில்லை.</translation>
@@ -4374,6 +4374,7 @@
 <translation id="7487141338393529395">'மேம்பட்ட எழுத்துப் பிழை சரிபார்க்கும்' அம்சத்தை இயக்கு</translation>
 <translation id="7487969577036436319">கூறுகள் எதுவும் நிறுவப்படவில்லை</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;எல்லாம் திற}=1{&amp;புத்தகக்குறியைத் திற}other{&amp;எல்லாவற்றையும் (#) திற}}</translation>
+<translation id="7489761397368794366">உங்கள் சாதனத்திலிருந்து அழையுங்கள்</translation>
 <translation id="749028671485790643">நபர் <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC முகவரி</translation>
 <translation id="7493386493263658176">கடவுச்சொற்கள், கிரெடிட் கார்டு எண்கள் போன்ற தனிப்பட்ட தரவு உட்பட, நீங்கள் உள்ளிடும் எல்லா உரையையும் <ph name="EXTENSION_NAME" /> நீட்டிப்பு சேகரிக்கக்கூடும். இந்த நீட்டிப்பைப் பயன்படுத்த விரும்புகிறீர்களா?</translation>
@@ -4393,6 +4394,7 @@
 <translation id="7508054832109420082">பிரிண்டர்களுக்கான அணுகலை வழங்கு</translation>
 <translation id="7510943789645525906">நீங்கள் பயன்படுத்தும் கடவுச்சொல் தரவு மீறலின் ஒரு பகுதி எனில் உங்களை எச்சரிக்கும்</translation>
 <translation id="7513029293694390567">சேமித்த அனுமதிச் சான்றுகளைப் பயன்படுத்தி இணையதளங்களில் தானாகவே உள்நுழையும். இதை முடக்கினால், இணையதளத்தில் உள்நுழையும் ஒவ்வொரு முறையும் உறுதிப்படுத்த வேண்டும்.</translation>
+<translation id="7514239104543605883">உங்கள் சாதனத்திற்கு நகலெடுங்கள்</translation>
 <translation id="7514365320538308">பதிவிறக்கு</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">"Ok Google" என்று கூறவும்</translation>
@@ -4949,6 +4951,7 @@
 <translation id="8274332263553132018">கோப்பை அலைபரப்பு</translation>
 <translation id="8274924778568117936">புதுப்பிப்பு முடியும் வரை <ph name="DEVICE_TYPE" /> சாதனத்தை முடக்கவோ அல்லது மூடவோ வேண்டாம். நிறுவியதும், <ph name="DEVICE_TYPE" /> மீண்டும் தொடங்கும்.</translation>
 <translation id="8275038454117074363">இறக்குமதி செய்</translation>
+<translation id="8275080796245127762">உங்கள் சாதனத்திலிருந்து அழையுங்கள்</translation>
 <translation id="8276560076771292512">தற்காலிகச் சேமிப்பை வெறுமையாக்கி, ஹார்ட் ரெஃப்ரெஷ் செய்</translation>
 <translation id="8281886186245836920">தவிர்</translation>
 <translation id="8282947398454257691">உங்கள் தனிப்பட்ட சாதன அடையாளங்காட்டியை அறியும்</translation>
@@ -5269,6 +5272,7 @@
 <translation id="8758418656925882523">சொல்வதை எழுதும் அம்சத்தை இயக்கு (பேச்சு மூலம் உள்ளிடும் வசதி)</translation>
 <translation id="8759408218731716181">பல உள்நுழைவை அமைக்க முடியாது</translation>
 <translation id="8759753423332885148">மேலும் அறிக.</translation>
+<translation id="8761945298804995673">இந்தப் பயனர் ஏற்கனவே உள்ளார்</translation>
 <translation id="8762886931014513155">உங்கள் <ph name="DEVICE_TYPE" />ஐப் புதுப்பிக்க வேண்டும்</translation>
 <translation id="8763927697961133303">USB சாதனம்</translation>
 <translation id="8767621466733104912">எல்லாப் பயனர்களுக்கும் தானாகவே Chromeஐப் புதுப்பி</translation>
@@ -5357,6 +5361,7 @@
 <translation id="8879284080359814990">தாவலாகக் &amp;காண்பி</translation>
 <translation id="8879921471468674457">உள்நுழைவுத் தகவல்களை நினைவில்கொள்</translation>
 <translation id="8881020143150461183">மீண்டும் முயலவும். தொழில்நுட்ப உதவிக்கு <ph name="CARRIER_NAME" />ஐத் தொடர்பு கொள்ளவும்.</translation>
+<translation id="8883273463630735858">டச்பேட் துரிதப்படுத்தலை இயக்கு</translation>
 <translation id="8884570509232205463">சாதனம் இனி <ph name="UNLOCK_TIME" />க்குப் பூட்டப்படும்.</translation>
 <translation id="8885197664446363138">Smart Lock இல்லை</translation>
 <translation id="8888253246822647887">மேம்படுத்தப்பட்டதும் உங்கள் ஆப்ஸ் திறக்கும். மேம்படுத்துவதற்குச் சில நிமிடங்கள் ஆகலாம்.</translation>
diff --git a/chrome/app/resources/generated_resources_te.xtb b/chrome/app/resources/generated_resources_te.xtb
index 691db06..e1d1581 100644
--- a/chrome/app/resources/generated_resources_te.xtb
+++ b/chrome/app/resources/generated_resources_te.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">మీ అన్ని కంప్యూటర్‌ల్లో మీ పొడిగింపులను పొందడానికి, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">ఇది సెక్యూరిటీ కీలోని మొత్తం డేటాను, అలాగే దాని పిన్‌ను తొలగిస్తుంది</translation>
 <translation id="1475502736924165259">మీకు ఫైల్‌లో మరే ఇతర వర్గంలోనూ సరిపోని ప్రమాణపత్రాలు ఉన్నాయి</translation>
+<translation id="1476088332184200792">మీ పరికరానికి కాపీ చేయండి</translation>
 <translation id="1476607407192946488">&amp;భాష సెట్టింగ్‌లు</translation>
 <translation id="1478340334823509079">వివరాలు: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">ఇన్‌స్టాలేషన్ ప్రారంభించబడలేదు</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">సిస్టమ్ డైలాగ్‌ ఉపయోగించి ముద్రించు ...<ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">పంపడానికి ముందు అడుగుతుంది (సిఫార్సు చేయబడింది)</translation>
 <translation id="2384436799579181135">ఎర్రర్ ఏర్పడింది. దయచేసి మీ ప్రింటర్‌ను తనిఖీ చేసి మళ్లీ ప్రయత్నించండి.</translation>
-<translation id="2386926718981642523">మీరు "Ok Google" అని చెప్పి ఎప్పుడైనా మీ అసిస్టెంట్‌ని యాక్సెస్ చేయండి</translation>
 <translation id="2387458720915042159">ప్రాక్సీ కనెక్షన్ రకం</translation>
 <translation id="2391419135980381625">ప్రామాణిక ఫాంట్</translation>
 <translation id="2392369802118427583">సక్రియం చెయ్యి</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">తక్కువ</translation>
 <translation id="2942560570858569904">వేచి ఉంది...</translation>
 <translation id="2942581856830209953">ఈ పేజీని అనుకూలీకరించండి</translation>
+<translation id="294308617863380348">మూడవ-పక్షం కుక్కీలతో సహా</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="2948300991547862301"><ph name="PAGE_TITLE" />కు వెళ్లండి</translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">ముందుకు వెళ్ళడానికి క్లిక్ చెయ్యండి. చరిత్రను చూడటానికి నొక్కి ఉంచండి</translation>
 <translation id="2963151496262057773">కింది ప్లగ్ఇన్‌ ప్రతిస్పందించడం లేదు: <ph name="PLUGIN_NAME" />మీరు దీనిని ఆపివేయాలనుకుంటున్నారా?</translation>
 <translation id="2966937470348689686">Android ప్రాధాన్యతలను నిర్వహించండి</translation>
-<translation id="2972557485845626008">ఫర్మ్‌వేర్</translation>
 <translation id="2972581237482394796">&amp;పునరావృతం</translation>
 <translation id="2973324205039581528">సైట్‌ను మ్యూట్ చేయండి</translation>
 <translation id="2977480621796371840">గుంపు నుండి తీసివేయి</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">విభాగిని</translation>
 <translation id="3387614642886316601">మెరుగైన స్పెల్ చెక్‌ను ఉపయోగించు</translation>
-<translation id="3393352139658145068">ఎవరైనా “Ok Google” చెప్పినప్పుడు అసిస్టెంట్‌ యాక్టివేట్ అయ్యేలా సెట్ చేయండి. బ్యాటరీని సేవ్ చేయడానికి, మీ పరికరాన్ని పవర్ సోర్స్‌కు కనెక్ట్ చేసినప్పుడు మాత్రమే “Ok Google” ఆన్‌లో ఉంచబడుతుంది.</translation>
 <translation id="3396800784455899911">"నేను అంగీకరిస్తున్నాను" బటన్‌ని క్లిక్ చేయడం ద్వారా, ఈ Google సేవల కోసం ఎగువ పేర్కొన్న వాటిని ప్రాసెస్ చేయడానికి మీరు అంగీకరిస్తున్నారు.</translation>
 <translation id="3399432415385675819">నోటిఫికేషన్‌లు నిలిపివేయబడతాయి</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> హెర్జ్) - అంతర్గత అల్లిక చేయబడింది</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" />ని చూపు</translation>
 <translation id="3613422051106148727">&amp;కొత్త‌ ట్యాబ్‌లో తెరువు</translation>
 <translation id="3615073365085224194">వేలిముద్ర సెన్సార్‌ను మీ వేలితో తాకండి</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> స్కాన్ అవుతోంది.</translation>
 <translation id="3616741288025931835">బ్రౌజింగ్ డేటాను &amp;క్లియర్ చేయి...</translation>
 <translation id="3617891479562106823">నేపథ్యాలు అందుబాటులో లేవు. తర్వాత మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="3619115746895587757">కాపుచినో</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">వెబ్ పేజీల్లో భాగాలను బ్లాక్ చేయండి</translation>
 <translation id="3760460896538743390">&amp;నేపథ్య పేజీని పర్యవేక్షించండి</translation>
 <translation id="37613671848467444">&amp;ఒక అజ్ఞాత విండోలో తెరువు</translation>
-<translation id="3764314093345384080">వివరణాత్మక బిల్డ్ సమాచారం</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{USB పరికరంతో కమ్యూనికేట్ చేయండి}other{# USB పరికరాలతో కమ్యూనికేట్ చేయండి}}</translation>
 <translation id="3765246971671567135">ఆఫ్‌లైన్ డెమో మోడ్ విధానాన్ని చదవడం సాధ్యపడలేదు.</translation>
 <translation id="3768037234834996183">మీ ప్రాధాన్యతలను సమకాలీకరిస్తోంది...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">సైన్-ఇన్ స్క్రీన్‌లో వినియోగదారు పేర్లను మరియు ఫోటోలను చూపించు</translation>
 <translation id="4142052906269098341">మీ ఫోన్‌తో <ph name="DEVICE_TYPE" />ను అన్‌లాక్ చేయండి. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">మెరుగైన నాణ్యత గల వీడియోను పొందండి మరియు బ్యాటరీ జీవితకాలాన్ని పెంపొందించండి. వీడియో మీ ప్రసార అనుకూల స్క్రీన్‌లో మాత్రమే ప్లే అవుతుంది.</translation>
-<translation id="4145922204387553806">మీ స్క్రీన్‌పై ఉన్నవాటికి సంబంధించిన సమాచారాన్ని మీకు చూపడానికి అసిస్టెంట్‌ని అనుమతిస్తుంది</translation>
 <translation id="4146026355784316281">ఎల్లప్పుడూ సిస్టమ్ వ్యూయర్‌తో తెరువు</translation>
 <translation id="4146785383423576110">రీసెట్ చేసి హానికరమైన వాటిని తీసివేయండి</translation>
 <translation id="4147911968024186208">దయచేసి మళ్లీ ప్రయత్నించండి. మీకు ఈ ఎర్రర్ మళ్లీ కనిపిస్తే, దయచేసి మీ మద్దతు ప్రతినిధిని సంప్రదించండి.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">భాషలను మార్చు</translation>
 <translation id="4301671483919369635">ఈ పేజీకి, ఫైల్‌లను సవరించే అనుమతి ఉంది</translation>
 <translation id="4303079906735388947">మీ సెక్యూరిటీ కీ కోసం కొత్త పిన్‌ని సెటప్ చేయండి</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" />కి కాపీ చేయి</translation>
 <translation id="4306119971288449206">యాప్‌లు తప్పనిసరిగా "<ph name="CONTENT_TYPE" />" కంటెంట్-రకంతో అందించబడాలి</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K ప్రత్యక్షంగా)</translation>
 <translation id="4310139701823742692">ఫైల్ తప్పు ఫార్మాట్‌లో ఉంది. PPD ఫైల్‌ని తనిఖీ చేసి, మళ్లీ ప్రయత్నించండి.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="4535127706710932914">డిఫాల్ట్ ప్రొఫైల్</translation>
 <translation id="4535767533210902251">మీ కీబోర్డ్‌లో పైన కుడివైపు గల కీపై వేలిముద్ర సెన్సార్ ఉంది. ఏదైనా వేలితో దానిపై మెల్లగా తాకండి.</translation>
-<translation id="4538417792467843292">పదాన్ని తొలగించు</translation>
 <translation id="4538684596480161368"><ph name="HOST" />లో ఎల్లప్పుడూ శాండ్‌బాక్స్ చేయని ప్లగిన్‌లను బ్లాక్ చేయి</translation>
 <translation id="4538792345715658285">వ్యాపార విధానం ద్వారా ఇన్‌స్టాల్ చేయబడింది.</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" /> మరియు <ph name="WEBSITE_2" />లోని మీ డేటాను చదవండి</translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">ఫైల్‌ను చదువుతోంది..</translation>
 <translation id="5368720394188453070">మీ ఫోన్ లాక్ చేయబడింది. దానిని తెరవడానికి, అన్‌లాక్ చేయండి.</translation>
 <translation id="5368779022775404937"><ph name="REALM" />కు సైన్ ఇన్ చేయండి</translation>
+<translation id="5369491905435686894">మౌస్ యాక్సిలిరేషన్‌ను ప్రారంభించండి</translation>
 <translation id="5370819323174483825">&amp;మళ్లీ లోడ్ చేయి</translation>
 <translation id="5372529912055771682">సరఫరా చేయబడిన నమోదు మోడ్‌ను, ఆపరేటింగ్ సిస్టమ్ యొక్క ఈ వెర్షన్ మద్దతివ్వదు. మీరు తాజా వెర్షన్‌ను అమలు చేస్తున్నారని దయచేసి నిర్ధారించుకుని, మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="5372579129492968947">ఎక్స్‌టెన్ష‌న్‌‍‌ పిన్‌ను తీసివేయండి</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">ఈ సమయాన్ని అమలు చేయి</translation>
 <translation id="5464660706533281090">ఈ సెట్టింగ్‌ను చిన్నారి వినియోగదారు మార్చలేరు.</translation>
 <translation id="5466374726908360271">అతికించి “<ph name="SEARCH_TERMS" />” కోసం వెతకండి</translation>
+<translation id="5468173180030470402">ఫైల్ షేర్‌ల కోసం చూస్తోంది</translation>
 <translation id="5471768120198416576">హలో! నేను మీ వచనం నుండి ప్రసంగం వాయిస్‌ని.</translation>
 <translation id="5473333559083690127">కొత్త PINని మళ్లీ నమోదు చేయండి</translation>
 <translation id="5481941284378890518">సమీప ప్రింటర్‌లను జోడించు</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">కీబోర్డ్ బదులుగా వాయిస్‌ను డిఫాల్ట్‌గా ఉపయోగించండి</translation>
 <translation id="6234474535228214774">ఇన్‌స్టాల్ పెండింగ్‌లో ఉంది</translation>
 <translation id="6237816943013845465">మీ స్క్రీన్ రిజల్యూషన్‌ను సర్దుబాటు చేయడానికి మిమ్మల్ని అనుమతిస్తుంది</translation>
+<translation id="6238767809035845642">ఇతర పరికరం నుండి షేర్ చేయబడిన వచనం</translation>
 <translation id="6238923052227198598">లాక్ స్క్రీన్‌పై తాజా గమనికను ఉంచండి</translation>
 <translation id="6239558157302047471">&amp;ఫ్రేమ్‌ను మళ్లీ లోడ్ చేయి</translation>
 <translation id="6241530762627360640">మీ సిస్టమ్‌తో జత చేయబడిన బ్లూటూత్ పరికరాలకు సంబంధించిన సమాచారాన్ని యాక్సెస్‌ చేయడానికి, సమీపంలోని బ్లూటూత్ పరికరాలను కనుగొనడానికి అనుమతి.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">డౌన్‌లోడ్ రద్దు చేయబడింది: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">మీ Google వినియోగదారు పేరు మరియు పాస్‌వర్డ్‌తో సింక్ చేసిన‌ పాస్‌వర్డ్‌లను ఎన్‌క్రిప్ట్ చేయండి</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - డెస్క్‌టాప్‌ కంటెంట్‌ షేర్ చేయబడింది</translation>
-<translation id="6580151766480067746">ARC వెర్షన్</translation>
 <translation id="6582080224869403177">మీ భద్రతను అప్‌గ్రేడ్ చేయడానికి మీ <ph name="DEVICE_TYPE" />ని రీసెట్ చేయండి</translation>
 <translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
 <translation id="6586451623538375658">ప్రాథమిక మౌస్ బటన్‌ను మార్చు</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">మెరుగైన స్పెల్ చెక్‌ను ఆన్ చేయండి</translation>
 <translation id="7487969577036436319">భాగాలు ఇన్‌స్టాల్ చేయబడలేదు</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;అన్నింటినీ తెరువండి}=1{&amp;బుక్‌మార్క్‌ని తెరవండి}other{&amp;అన్నింటినీ (#) తెరవండి}}</translation>
+<translation id="7489761397368794366">మీ పరికరం నుండి కాల్ చేయండి</translation>
 <translation id="749028671485790643">వ్యక్తి <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC చిరునామా</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> ఎక్స్‌టెన్ష‌న్‌, మీరు టైప్ చేసే పాస్‌వర్డ్‌లు, క్రెడిట్ కార్డ్‌ నంబర్‌ల వంటి వ్యక్తిగత డేటాతో సహా మొత్తం వచనాన్ని సేకరించవచ్చు. మీరు ఈ ఎక్స్‌టెన్ష‌న్‌ను ఉపయోగించాలనుకుంటున్నారా?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">ప్రింటర్‌లకు యాక్సెస్ ఇవ్వండి</translation>
 <translation id="7510943789645525906">మీరు ఉపయోగించిన పాస్‌వర్డ్ డేటా ఉల్లంఘనలో ఒక భాగం అయితే మిమ్మల్ని హెచ్చరిస్తుంది</translation>
 <translation id="7513029293694390567">నిల్వ చేసిన ఆధారాలను ఉపయోగించి ఆటోమేటిక్‌గా వెబ్‌సైట్‌లకు సైన్ ఇన్ చేస్తుంది. దీన్ని నిలిపివేస్తే, మీరు వెబ్‌సైట్‌కు సైన్ ఇన్ చేసే ప్రతిసారి నిర్ధారణ కోసం మిమ్మల్ని అడుగుతుంది.</translation>
+<translation id="7514239104543605883">మీ పరికరానికి కాపీ చేయండి</translation>
 <translation id="7514365320538308">డౌన్‌లోడ్ చేయి</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">"Ok Google" చెప్పండి</translation>
@@ -4944,6 +4946,7 @@
 <translation id="8274332263553132018">ఫైల్‌ను ప్రసారం చేయండి</translation>
 <translation id="8274924778568117936">అప్‌డేట్ పూర్తయ్యే వరకు మీ <ph name="DEVICE_TYPE" />ని ఆఫ్ చేయవద్దు లేదా మూసివేయవద్దు. ఇన‌స్ట‌లేష‌న్‌ పూర్తయిన తర్వాత మీ <ph name="DEVICE_TYPE" /> పునఃప్రారంభమవుతుంది.</translation>
 <translation id="8275038454117074363">దిగుమతి చెయ్యి</translation>
+<translation id="8275080796245127762">మీ పరికరం నుండి కాల్ చేయండి</translation>
 <translation id="8276560076771292512">కాష్‌ను ఖాళీ చేసి, నిర్బంధంగా మళ్లీ లోడ్ చేయి</translation>
 <translation id="8281886186245836920">దాటవేయి</translation>
 <translation id="8282947398454257691">మీ ప్రత్యేక పరికర ఐడెంటిఫైయర్‌ను తెలుసుకోవడానికి అనుమతి</translation>
@@ -5264,6 +5267,7 @@
 <translation id="8758418656925882523">డిక్టేషన్‌ను ప్రారంభించండి (టైప్ చేయడానికి మాట్లాడండి)</translation>
 <translation id="8759408218731716181">బహుళ సైన్-ఇన్‌ను సెటప్ చేయలేరు</translation>
 <translation id="8759753423332885148">మరింత తెలుసుకోండి.</translation>
+<translation id="8761945298804995673">ఈ వినియోగదారు ఇప్పటికే ఉన్నారు.</translation>
 <translation id="8762886931014513155">మీ <ph name="DEVICE_TYPE" />ని అప్‌డేట్ చేయాలి</translation>
 <translation id="8763927697961133303">USB పరికరం</translation>
 <translation id="8767621466733104912">అందరు వినియోగదారుల కోసం Chromeను ఆటోమేటిక్‌గా అప్‌డేట్ చేయి</translation>
@@ -5352,6 +5356,7 @@
 <translation id="8879284080359814990">&amp;ట్యాబ్ లాగా చూపండి</translation>
 <translation id="8879921471468674457">సైన్-ఇన్ సమాచారం గుర్తుంచుకో</translation>
 <translation id="8881020143150461183">దయచేసి మళ్లీ ప్రయత్నించండి. సాంకేతిక మద్దతు పొందడానికి, <ph name="CARRIER_NAME" />ను సంప్రదించండి.</translation>
+<translation id="8883273463630735858">టచ్‌ప్యాడ్ యాక్సిలిరేషన్‌ను ప్రారంభించండి</translation>
 <translation id="8884570509232205463">మీ పరికరం ఇప్పుడు <ph name="UNLOCK_TIME" />కు లాక్ చేయబడుతుంది.</translation>
 <translation id="8885197664446363138">Smart Lock అందుబాటులో లేదు</translation>
 <translation id="8888253246822647887">అప్‌గ్రేడ్ చేయడం పూర్తయినప్పుడు మీ యాప్ తెరవబడుతుంది. అప్‌గ్రేడ్‌లు పూర్తవడానికి కొద్ది నిమిషాలు పట్టవచ్చు.</translation>
diff --git a/chrome/app/resources/generated_resources_th.xtb b/chrome/app/resources/generated_resources_th.xtb
index ca2aeb3..96a58559 100644
--- a/chrome/app/resources/generated_resources_th.xtb
+++ b/chrome/app/resources/generated_resources_th.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">หากต้องการรับส่วนขยายในคอมพิวเตอร์ทุกเครื่องของคุณ ให้<ph name="SIGN_IN_LINK" /></translation>
 <translation id="1470967055429794975">การดำเนินการนี้จะลบข้อมูลทั้งหมดในคีย์ความปลอดภัย รวมถึง PIN ของคีย์ด้วย</translation>
 <translation id="1475502736924165259">คุณมีใบรับรองของไฟล์ที่ไม่เข้ากับหมวดหมู่อื่นๆ</translation>
+<translation id="1476088332184200792">คัดลอกไปยังอุปกรณ์ของคุณ</translation>
 <translation id="1476607407192946488">&amp;การตั้งค่าภาษา</translation>
 <translation id="1478340334823509079">รายละเอียด: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">ไม่ได้เปิดใช้การติดตั้ง</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">พิมพ์โดยใช้ช่องโต้ตอบของระบบ... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">ถามก่อนที่จะส่ง (แนะนำ)</translation>
 <translation id="2384436799579181135">เกิดข้อผิดพลาด โปรดตรวจสอบเครื่องพิมพ์และลองอีกครั้ง</translation>
-<translation id="2386926718981642523">เข้าถึง Assistant ได้ทุกเมื่อเพียงพูดว่า "Ok Google"</translation>
 <translation id="2387458720915042159">ประเภทการเชื่อมต่อพร็อกซี</translation>
 <translation id="2391419135980381625">แบบอักษรมาตรฐาน</translation>
 <translation id="2392369802118427583">เปิดใช้งาน</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">ต่ำ</translation>
 <translation id="2942560570858569904">กำลังรอ...</translation>
 <translation id="2942581856830209953">ปรับแต่งหน้านี้</translation>
+<translation id="294308617863380348">รวมถึงคุกกี้ของบุคคลที่สาม</translation>
 <translation id="2944060181911631861">ส่งข้อมูลการใช้งานและการวินิจฉัย ช่วยปรับปรุงประสบการณ์การใช้งาน Android ของคุณให้ดีขึ้นด้วยการส่งข้อมูลการวินิจฉัย อุปกรณ์ และการใช้งานแอปไปยัง Google โดยอัตโนมัติ ซึ่งจะช่วยปรับปรุงความเสถียรของแอปและระบบ และอื่นๆ ข้อมูลที่รวบรวมมาบางส่วนจะมีประโยชน์ต่อแอปและพาร์ทเนอร์ของ Google ด้วย เช่น นักพัฒนาซอฟต์แวร์ Android หากเปิดการตั้งค่ากิจกรรมเพิ่มเติมบนเว็บและแอปไว้ ระบบอาจบันทึกข้อมูลนี้ไว้ในบัญชี Google ของคุณ <ph name="BEGIN_LINK1" />ดูข้อมูลเพิ่มเติม<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">เพิ่มการเชื่อมต่อ</translation>
 <translation id="2948300991547862301">ไปที่ <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">คลิกเพื่อไปข้างหน้า กดค้างเพื่อดูประวัติการเข้าชม</translation>
 <translation id="2963151496262057773">ปลั๊กอินต่อไปนี้ไม่ตอบสนอง: <ph name="PLUGIN_NAME" />คุณต้องการหยุดปลั๊กอินดังกล่าวไหม</translation>
 <translation id="2966937470348689686">จัดการค่ากำหนด Android</translation>
-<translation id="2972557485845626008">เฟิร์มแวร์</translation>
 <translation id="2972581237482394796">&amp;ทำซ้ำ</translation>
 <translation id="2973324205039581528">ปิดเสียงเว็บไซต์</translation>
 <translation id="2977480621796371840">นำออกจากกลุ่ม</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">ตัวแยก</translation>
 <translation id="3387614642886316601">ใช้ฟีเจอร์ตรวจตัวสะกดที่ได้รับการปรับปรุง</translation>
-<translation id="3393352139658145068">เปิดใช้งาน Assistant เมื่อมีคนพูดว่า “Ok Google” วลี “Ok Google” นี้จะใช้ได้เฉพาะเมื่ออุปกรณ์เชื่อมต่อกับแหล่งจ่ายไฟเพื่อเป็นการประหยัดแบตเตอรี่</translation>
 <translation id="3396800784455899911">การคลิกปุ่ม "ยอมรับและดำเนินการต่อ" แสดงว่าคุณยอมรับการดำเนินการของบริการต่างๆ ของ Google ตามที่ชี้แจ้งไว้ด้านบน</translation>
 <translation id="3399432415385675819">ระบบจะปิดใช้การแจ้งเตือน</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> เฮิรตซ์) - อินเตอร์เลซ</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">แสดง <ph name="FOLDER_NAME" /></translation>
 <translation id="3613422051106148727">&amp;เปิดในแท็บใหม่่</translation>
 <translation id="3615073365085224194">ใช้นิ้วแตะเซ็นเซอร์ลายนิ้วมือ</translation>
+<translation id="3615579745882581859">กำลังสแกน <ph name="FILE_NAME" /></translation>
 <translation id="3616741288025931835">&amp;ล้างข้อมูลการท่องเว็บ...</translation>
 <translation id="3617891479562106823">พื้นหลังไม่พร้อมใช้งาน โปรดลองอีกครั้งภายหลัง</translation>
 <translation id="3619115746895587757">คาปูชิโน</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">บล็อกส่วนต่างๆ ของหน้าเว็บ</translation>
 <translation id="3760460896538743390">ตรวจสอบ&amp;หน้าพื้นหลัง</translation>
 <translation id="37613671848467444">เปิดใน&amp;หน้าต่างที่ไม่ระบุตัวตน</translation>
-<translation id="3764314093345384080">ข้อมูลบิวด์โดยละเอียด</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{สื่อสารกับอุปกรณ์ USB 1 เครื่อง}other{สื่อสารกับอุปกรณ์ USB # เครื่อง}}</translation>
 <translation id="3765246971671567135">อ่านนโยบายโหมดสาธิตออฟไลน์ไม่ได้</translation>
 <translation id="3768037234834996183">กำลังซิงค์ค่ากำหนดของคุณ...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">แสดงชื่อผู้ใช้และภาพถ่ายบนหน้าจอลงชื่อเข้าใช้</translation>
 <translation id="4142052906269098341">ปลดล็อก <ph name="DEVICE_TYPE" /> ด้วยโทรศัพท์ <ph name="LINK_BEGIN" />ดูข้อมูลเพิ่มเติม<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">ดูวิดีโอคุณภาพดีขึ้นและยืดอายุการใช้งานแบตเตอรี่ วิดีโอจะเล่นเฉพาะในหน้าจอที่พร้อมใช้งาน Cast</translation>
-<translation id="4145922204387553806">ให้ Assistant แสดงข้อมูลเกี่ยวกับสิ่งที่อยู่ในหน้าจอ</translation>
 <translation id="4146026355784316281">เปิดด้วยโปรแกรมดูของระบบทุกครั้ง</translation>
 <translation id="4146785383423576110">รีเซ็ตและล้างข้อมูล</translation>
 <translation id="4147911968024186208">โปรดลองอีกครั้ง หากพบข้อผิดพลาดนี้อีก ให้ติดต่อตัวแทนฝ่ายสนับสนุน</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">เปลี่ยนภาษา</translation>
 <translation id="4301671483919369635">หน้านี้ได้รับอนุญาตให้แก้ไขไฟล์</translation>
 <translation id="4303079906735388947">ตั้งค่า PIN ใหม่สำหรับคีย์ความปลอดภัย</translation>
+<translation id="4305402730127028764">คัดลอกไปยัง <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">แอปต้องได้รับบริการจากประเภทเนื้อหา "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (แสดงอยู่ <ph name="NUM_KILOBYTES_LIVE" />K)</translation>
 <translation id="4310139701823742692">รูปแบบไฟล์ไม่ถูกต้อง ตรวจสอบไฟล์ PPD แล้วลองอีกครั้ง</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">ลองอีกครั้ง</translation>
 <translation id="4535127706710932914">โปรไฟล์เริ่มต้น</translation>
 <translation id="4535767533210902251">เซ็นเซอร์ลายนิ้วมืออยู่ในแป้นด้านขวาบนของแป้นพิมพ์ โปรดแตะเบาๆ ด้วยนิ้วใดก็ได้</translation>
-<translation id="4538417792467843292">ลบคำ</translation>
 <translation id="4538684596480161368">บล็อกปลั๊กอินที่อยู่นอกแซนด์บ็อกซ์ใน <ph name="HOST" /> เสมอ</translation>
 <translation id="4538792345715658285">ติดตั้งโดยนโยบายขององค์กร</translation>
 <translation id="4542520061254486227">อ่านข้อมูลใน <ph name="WEBSITE_1" /> และ <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">กำลังอ่านไฟล์..</translation>
 <translation id="5368720394188453070">โทรศัพท์ล็อกอยู่ โปรดปลดล็อกเพื่อเข้าใช้งาน</translation>
 <translation id="5368779022775404937">ลงชื่อเข้าใช้ <ph name="REALM" /></translation>
+<translation id="5369491905435686894">เปิดใช้การเร่งความเร็วเมาส์</translation>
 <translation id="5370819323174483825">&amp;โหลดซ้ำ</translation>
 <translation id="5372529912055771682">รุ่นของระบบปฏิบัติการนี้ไม่สนับสนุนโหมดการลงทะเบียนที่กำหนด โปรดตรวจสอบให้แน่ใจว่าคุณกำลังใช้งานรุ่นใหม่ล่าสุดและลองอีกครั้ง</translation>
 <translation id="5372579129492968947">เลิกตรึงส่วนขยาย</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">เรียกใช้ตอนนี้</translation>
 <translation id="5464660706533281090">ผู้ใช้ที่เป็นเด็กจะเปลี่ยนแปลงการตั้งค่านี้ไม่ได้</translation>
 <translation id="5466374726908360271">ว&amp;างและค้นหา “<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">กำลังมองหาพื้นที่แชร์ไฟล์</translation>
 <translation id="5471768120198416576">สวัสดี นี่เป็นเสียงของระบบอ่านออกเสียงข้อความ</translation>
 <translation id="5473333559083690127">ป้อน PIN ใหม่อีกครั้ง</translation>
 <translation id="5481941284378890518">เพิ่มเครื่องพิมพ์ที่อยู่ใกล้เคียง</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">มีค่าเริ่มต้นเป็นการใช้เสียงแทนแป้นพิมพ์</translation>
 <translation id="6234474535228214774">กำลังรอการติดตั้ง</translation>
 <translation id="6237816943013845465">ให้คุณปรับเปลี่ยนความละเอียดของหน้าจอ</translation>
+<translation id="6238767809035845642">ข้อความแชร์มาจากอุปกรณ์อื่น</translation>
 <translation id="6238923052227198598">เก็บโน้ตล่าสุดไว้ในหน้าจอล็อก</translation>
 <translation id="6239558157302047471">โหลดเ&amp;ฟรมซ้ำ</translation>
 <translation id="6241530762627360640">เข้าถึงข้อมูลเกี่ยวกับอุปกรณ์บลูทูธที่จับคู่กับระบบของคุณ และสำรวจอุปกรณ์บลูทูธใกล้เคียง</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">ยกเลิกการดาวน์โหลดแล้ว: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">เข้ารหัสลับรหัสผ่านที่ซิงค์ด้วยชื่อผู้ใช้และรหัสผ่าน Google ของคุณ</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - แชร์เนื้อหาบนเดสก์ท็อปอยู่</translation>
-<translation id="6580151766480067746">เวอร์ชัน ARC</translation>
 <translation id="6582080224869403177">รีเซ็ต <ph name="DEVICE_TYPE" /> เพื่ออัปเกรดความปลอดภัย</translation>
 <translation id="6584878029876017575">การรับรองตลอดชีพของ Microsoft</translation>
 <translation id="6586451623538375658">สลับปุ่มเมาส์หลัก</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">เปิดฟีเจอร์ตรวจตัวสะกดที่ได้รับการปรับปรุง</translation>
 <translation id="7487969577036436319">ไม่มีคอมโพเนนต์ที่ได้รับการติดตั้ง</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;เปิดทั้งหมด}=1{&amp;เปิดบุ๊กมาร์ก}other{&amp;เปิดทั้งหมด (#)}}</translation>
+<translation id="7489761397368794366">โทรจากอุปกรณ์ของคุณ</translation>
 <translation id="749028671485790643">คนที่ <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">ที่อยู่ MAC</translation>
 <translation id="7493386493263658176">ส่วนขยาย <ph name="EXTENSION_NAME" /> อาจรวบรวมข้อความทั้งหมดที่คุณพิมพ์ ซึ่งรวมถึงข้อมูลส่วนตัว เช่น รหัสผ่านและหมายเลขบัตรเครดิต คุณต้องการใช้ส่วนขยายนี้ไหม</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">ให้สิทธิ์เข้าถึงเครื่องพิมพ์</translation>
 <translation id="7510943789645525906">เตือนคุณในกรณีที่รหัสผ่านที่ใช้รวมอยู่ในการละเมิดข้อมูล</translation>
 <translation id="7513029293694390567">ลงชื่อเข้าใช้เว็บไซต์โดยอัตโนมัติโดยใช้ข้อมูลเข้าสู่ระบบที่เก็บไว้ เมื่อฟีเจอร์นี้ปิดอยู่ ระบบจะขอให้คุณยืนยันทุกครั้งก่อนลงชื่อเข้าใช้เว็บไซต์</translation>
+<translation id="7514239104543605883">คัดลอกไปยังอุปกรณ์ของคุณ</translation>
 <translation id="7514365320538308">ดาวน์โหลด</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">พูดว่า "Ok Google"</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">แคสต์ไฟล์</translation>
 <translation id="8274924778568117936">อย่าปิดเครื่องหรือปิดฝา <ph name="DEVICE_TYPE" /> จนกว่าการอัปเดตจะเสร็จสิ้น <ph name="DEVICE_TYPE" /> จะรีสตาร์ทหลังติดตั้งเสร็จแล้ว</translation>
 <translation id="8275038454117074363">การนำเข้า</translation>
+<translation id="8275080796245127762">โทรจากอุปกรณ์ของคุณ</translation>
 <translation id="8276560076771292512">ล้างแคชและโหลดซ้ำแบบดึงข้อมูลใหม่ทั้งหมด</translation>
 <translation id="8281886186245836920">ข้าม</translation>
 <translation id="8282947398454257691">ทราบตัวระบุอุปกรณ์ที่ไม่ซ้ำกัน</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">เปิดใช้การพิมพ์ตามคำบอก (พูดเพื่อพิมพ์)</translation>
 <translation id="8759408218731716181">ไม่สามารถตั้งค่าการลงชื่อเข้าสู่ระบบพร้อมกันหลายบัญชีได้</translation>
 <translation id="8759753423332885148">ดูข้อมูลเพิ่มเติม</translation>
+<translation id="8761945298804995673">มีผู้ใช้รายนี้แล้ว</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> ต้องการการอัปเดต</translation>
 <translation id="8763927697961133303">อุปกรณ์ USB</translation>
 <translation id="8767621466733104912">อัปเดต Chrome สำหรับผู้ใช้ทุกคนโดยอัตโนมัติ</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">แ&amp;สดงเป็นแถบ</translation>
 <translation id="8879921471468674457">จำข้อมูลการลงชื่อเข้าใช้</translation>
 <translation id="8881020143150461183">โปรดลองอีกครั้ง หรือติดต่อ <ph name="CARRIER_NAME" /> เพื่อรับการสนับสนุนด้านเทคนิค</translation>
+<translation id="8883273463630735858">เปิดใช้การเร่งความเร็วทัชแพด</translation>
 <translation id="8884570509232205463">ตอนนี้อุปกรณ์จะล็อกที่เวลา <ph name="UNLOCK_TIME" /></translation>
 <translation id="8885197664446363138">Smart Lock ไม่พร้อมใช้งาน</translation>
 <translation id="8888253246822647887">แอปจะเปิดเมื่อการอัปเกรดเสร็จสมบูรณ์ ซึ่งอาจใช้เวลาสักครู่</translation>
diff --git a/chrome/app/resources/generated_resources_tr.xtb b/chrome/app/resources/generated_resources_tr.xtb
index 5d430e71..a3235b1 100644
--- a/chrome/app/resources/generated_resources_tr.xtb
+++ b/chrome/app/resources/generated_resources_tr.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Uzantılarınızı tüm bilgisayarlarınızda kullanmak için <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Bu işlem, PIN'i de dahil olmak üzere güvenlik anahtarındaki tüm verileri silecek.</translation>
 <translation id="1475502736924165259">Dosyanızda diğer kategorilerin hiçbirine uymayan sertifikalar var</translation>
+<translation id="1476088332184200792">Cihazıma Kopyala</translation>
 <translation id="1476607407192946488">&amp;Dil Ayarları</translation>
 <translation id="1478340334823509079">Ayrıntılar: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Yükleme etkin değil</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Sistem iletişim kutusunu kullanarak yazdır... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Göndermeden önce sor (önerilir)</translation>
 <translation id="2384436799579181135">Bir hata oluştu. Lütfen yazıcınızı kontrol edin ve tekrar deneyin.</translation>
-<translation id="2386926718981642523">"Ok Google" diyerek istediğiniz zaman Asistanınıza erişin</translation>
 <translation id="2387458720915042159">Proxy bağlantısı türü</translation>
 <translation id="2391419135980381625">Standart yazı tipi</translation>
 <translation id="2392369802118427583">Etkinleştir</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Düşük</translation>
 <translation id="2942560570858569904">Bekliyor...</translation>
 <translation id="2942581856830209953">Bu sayfayı özelleştir</translation>
+<translation id="294308617863380348">Üçüncü taraf çerezler dahil</translation>
 <translation id="2944060181911631861">Kullanım ve teşhis verilerini gönder. Teşhis, cihaz ve uygulama kullanımı verilerini otomatik olarak Google'a göndererek Android deneyiminizin iyileştirilmesine yardımcı olun. Bu veriler, sistem ve uygulama kararlılığı ile diğer özellikleri iyileştirmeye yardımcı olur. Bazı birleştirilmiş veriler, Google uygulamalarına ve iş ortaklarına da (ör. Android geliştiricileri) yardımcı olur. Ek Web ve Uygulama Etkinliği açıksa bu veriler Google hesabınıza kaydedilebilir. <ph name="BEGIN_LINK1" />Daha Fazla Bilgi<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Bağlantı ekle</translation>
 <translation id="2948300991547862301">Şuraya git: <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">İlerlemek için tıkla, geçmişi görmek için tıklayıp tut</translation>
 <translation id="2963151496262057773">Aşağıdaki eklenti yanıt vermiyor: <ph name="PLUGIN_NAME" />Durdurmak ister misiniz?</translation>
 <translation id="2966937470348689686">Android tercihlerini yönet</translation>
-<translation id="2972557485845626008">Donanım yazılımı</translation>
 <translation id="2972581237482394796">&amp;Yinele</translation>
 <translation id="2973324205039581528">Sitenin Sesini Kapat</translation>
 <translation id="2977480621796371840">Gruptan kaldır</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224">%<ph name="DISPLAY_ZOOM" /></translation>
 <translation id="338583716107319301">Ayırıcı</translation>
 <translation id="3387614642886316601">Gelişmiş yazım denetimini kullan</translation>
-<translation id="3393352139658145068">Birisi "Ok Google" dediğinde Asistan'ı etkinleştir. Pilden tasarruf etmek için, "Ok Google" özelliği yalnızca cihazınız güç kaynağına bağlıyken etkin olur.</translation>
 <translation id="3396800784455899911">"Kabul et ve devam et" düğmesini tıklayarak bu Google hizmetleri ile ilgili yukarıda açıklanan işlemleri kabul etmiş olursunuz.</translation>
 <translation id="3399432415385675819">Bildirimler devre dışı bırakılacak</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - birbirine geçmiş</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408"><ph name="FOLDER_NAME" /> Klasörünü Göster</translation>
 <translation id="3613422051106148727">Yeni sekmede &amp;aç</translation>
 <translation id="3615073365085224194">Parmağınızla parmak izi sensörüne dokunun</translation>
+<translation id="3615579745882581859"><ph name="FILE_NAME" /> taranıyor.</translation>
 <translation id="3616741288025931835">Tarama Verilerini &amp;Temizle...</translation>
 <translation id="3617891479562106823">Arka planlar kullanılamıyor. Daha sonra tekrar deneyin.</translation>
 <translation id="3619115746895587757">Kapuçino</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Web sayfalarının parçalarını engelleme</translation>
 <translation id="3760460896538743390">&amp;Arka Plan Sayfasını İncele</translation>
 <translation id="37613671848467444">&amp;Gizli Pencerede Aç</translation>
-<translation id="3764314093345384080">Ayrıntılı derleme bilgileri</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Bir USB cihazla iletişim kurma}other{# USB cihazla iletişim kurma}}</translation>
 <translation id="3765246971671567135">Çevrimdışı demo modu politikası okunamadı.</translation>
 <translation id="3768037234834996183">Tercihleriniz senkronize ediliyor...</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Oturum açma ekranında kullanıcı adlarını ve fotoğrafları göster</translation>
 <translation id="4142052906269098341"><ph name="DEVICE_TYPE" /> cihazınızın kilidini telefonunuzla açın. <ph name="LINK_BEGIN" />Daha fazla bilgi<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Daha iyi video kalitesi elde edin ve pil ömründen tasarruf edin. Video yalnızca Cast uyumlu ekranınızda oynatılır.</translation>
-<translation id="4145922204387553806">Asistanın ekranınızda bulunan içerikle ilgili bilgileri göstermesine izin verin</translation>
 <translation id="4146026355784316281">Her Zaman Sistem Görüntüleyici ile Aç</translation>
 <translation id="4146785383423576110">Sıfırla ve temizle</translation>
 <translation id="4147911968024186208">Lütfen yeniden deneyin. Bu hatayı tekrar görürseniz lütfen destek temsilcinizle iletişime geçin.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Dilleri Değiştir</translation>
 <translation id="4301671483919369635">Bu sayfanın dosyaları düzenlemesine izin verilir</translation>
 <translation id="4303079906735388947">Güvenlik anahtarınız için yeni bir PIN oluşturun</translation>
+<translation id="4305402730127028764"><ph name="DEVICE_NAME" /> cihazına kopyala</translation>
 <translation id="4306119971288449206">Uygulamalar "<ph name="CONTENT_TYPE" />" içerik türüyle yayınlanmalıdır</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" />K (<ph name="NUM_KILOBYTES_LIVE" />K aktif)</translation>
 <translation id="4310139701823742692">Dosya yanlış biçimde. PPD dosyasını kontrol edip tekrar deneyin.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Tekrar deneyin.</translation>
 <translation id="4535127706710932914">Varsayılan Profil</translation>
 <translation id="4535767533210902251">Parmak izi sensörü, klavyenizdeki sağ üst tuştur. Herhangi bir parmağınızla bu tuşa hafifçe dokunun.</translation>
-<translation id="4538417792467843292">Kelime sil</translation>
 <translation id="4538684596480161368"><ph name="HOST" /> üzerinde koruma alanında olmayan eklentileri her zaman engelle</translation>
 <translation id="4538792345715658285">Kurumsal politika tarafından yüklenmiş.</translation>
 <translation id="4542520061254486227"><ph name="WEBSITE_1" /> ve <ph name="WEBSITE_2" /> sitelerindeki verilerinizi okuma</translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Dosya okunuyor..</translation>
 <translation id="5368720394188453070">Telefonunuz kilitli. Giriş yapmak için kilidini açın.</translation>
 <translation id="5368779022775404937"><ph name="REALM" /> alan adında oturum açın</translation>
+<translation id="5369491905435686894">Fare hızlandırmasını etkinleştir</translation>
 <translation id="5370819323174483825">&amp;Yeniden Yükle</translation>
 <translation id="5372529912055771682">Sağlanan kayıt modu işletim sisteminin bu sürümü tarafından desteklenmiyor. Lütfen en yeni sürümü kullandığınızdan emin olun ve tekrar deneyin.</translation>
 <translation id="5372579129492968947">Uzantının sabitlemesini kaldır</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Bu seferlik çalıştır</translation>
 <translation id="5464660706533281090">Bu ayar, çocuk kullanıcılar tarafından değiştirilemez.</translation>
 <translation id="5466374726908360271">Ya&amp;pıştır ve “<ph name="SEARCH_TERMS" />” sorgusunu ara</translation>
+<translation id="5468173180030470402">Dosya paylaşımı aranıyor</translation>
 <translation id="5471768120198416576">Merhaba! Ben sizin metin okuma sesinizim.</translation>
 <translation id="5473333559083690127">Yeni PIN'i tekrar girin</translation>
 <translation id="5481941284378890518">Yakınlardaki Yazıcıları Ekle</translation>
@@ -3543,6 +3543,7 @@
 <translation id="6233154960150021497">Varsayılan olarak klavye yerine sesi kullan</translation>
 <translation id="6234474535228214774">Yükleme bekleniyor</translation>
 <translation id="6237816943013845465">Ekran çözünürlüğünü ayarlamanıza olanak tanır</translation>
+<translation id="6238767809035845642">Metin Diğer Cihazdan paylaşıldı</translation>
 <translation id="6238923052227198598">En son notu kilit ekranında tut</translation>
 <translation id="6239558157302047471">Ç&amp;erçeveyi yeniden yükle</translation>
 <translation id="6241530762627360640">Sisteminizle eşlenen Bluetooth cihazlarıyla ilgili bilgilere erişme ve yakındaki Bluetooth cihazlarını keşfetme.</translation>
@@ -3769,7 +3770,6 @@
 <translation id="6577284282025554716">İndirme işlemi iptal edildi: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Senkronize edilen şifreleri Google kullanıcı adınız ve şifrenizle şifreleyin</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Masaüstü içeriği paylaşıldı</translation>
-<translation id="6580151766480067746">ARC Sürümü</translation>
 <translation id="6582080224869403177">Güvenliğinizi yeni sürüme geçirmek için <ph name="DEVICE_TYPE" /> cihazınızı sıfırlayın.</translation>
 <translation id="6584878029876017575">Microsoft Ömür Boyu İmzalama</translation>
 <translation id="6586451623538375658">Birincil fare düğmesini değiştir</translation>
@@ -4374,6 +4374,7 @@
 <translation id="7487141338393529395">Gelişmiş Yazım Denetimini Etkinleştirin</translation>
 <translation id="7487969577036436319">Yüklü hiç bileşen yok</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{Tümünü &amp;aç}=1{Yer işaretini &amp;aç}other{Tümünü (#) &amp;aç}}</translation>
+<translation id="7489761397368794366">Cihazımdan ara</translation>
 <translation id="749028671485790643">Kişi <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC adresi</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> uzantısı; şifreler ve kredi kartı numaraları gibi kişisel veriler de dahil olmak üzere yazdığınız tüm metinleri toplayabilir. Bu uzantıyı kullanmak istiyor musunuz?</translation>
@@ -4393,6 +4394,7 @@
 <translation id="7508054832109420082">Yazıcılara erişim izni verme</translation>
 <translation id="7510943789645525906">Kullandığınız şifre bir veri ihlaline dahilse sizi uyarır</translation>
 <translation id="7513029293694390567">Depolanmış kimlik bilgileriyle web sitelerinde otomatik olarak oturum açın. Bu özellik devre dışı bırakılırsa, bir web sitesinde oturum açmadan önce her defasında işlemi onaylamanız istenir.</translation>
+<translation id="7514239104543605883">Cihazıma kopyala</translation>
 <translation id="7514365320538308">İndir</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">"Ok Google" deyin</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Dosya yayınlayın</translation>
 <translation id="8274924778568117936">Güncelleme bitene kadar <ph name="DEVICE_TYPE" /> cihazınızı kapatmayın. Yükleme işlemi tamamlandıktan sonra <ph name="DEVICE_TYPE" /> cihazınız yeniden başlatılacaktır.</translation>
 <translation id="8275038454117074363">İçe aktar</translation>
+<translation id="8275080796245127762">Cihazımdan Ara</translation>
 <translation id="8276560076771292512">Önbelleği Boşalt ve Tam Yeniden Yükle</translation>
 <translation id="8281886186245836920">Atla</translation>
 <translation id="8282947398454257691">Benzersiz cihaz tanımlayıcınızı bilme</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Dikte özelliğini (konuşarak yazma) etkinleştir</translation>
 <translation id="8759408218731716181">Çoklu oturum açma kurulamıyor</translation>
 <translation id="8759753423332885148">Daha fazla bilgi edinin.</translation>
+<translation id="8761945298804995673">Bu kullanıcı zaten var</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> cihazınızın güncellenmesi gerekiyor</translation>
 <translation id="8763927697961133303">USB cihaz</translation>
 <translation id="8767621466733104912">Tüm kullanıcılar için Chrome'u otomatik olarak güncelle</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Sekme Olarak Göster</translation>
 <translation id="8879921471468674457">Oturum açma bilgilerini hatırla.</translation>
 <translation id="8881020143150461183">Lütfen tekrar deneyin. Teknik destek için <ph name="CARRIER_NAME" /> ile iletişime geçin.</translation>
+<translation id="8883273463630735858">Dokunmatik alan hızlandırmayı etkinleştir</translation>
 <translation id="8884570509232205463">Cihazınız saat <ph name="UNLOCK_TIME" /> olduğunda artık kilitlenecek.</translation>
 <translation id="8885197664446363138">Smart Lock kullanılamıyor</translation>
 <translation id="8888253246822647887">Uygulamanız, yeni sürüme geçme işlemi tamamlandığında açılır. Yeni sürüme geçme işlemi birkaç dakika sürebilir.</translation>
diff --git a/chrome/app/resources/generated_resources_uk.xtb b/chrome/app/resources/generated_resources_uk.xtb
index 2e4d29833..56a06bc7 100644
--- a/chrome/app/resources/generated_resources_uk.xtb
+++ b/chrome/app/resources/generated_resources_uk.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">Щоб користуватися розширеннями на всіх своїх комп’ютерах, <ph name="SIGN_IN_LINK" />.</translation>
 <translation id="1470967055429794975">Усі дані на ключі безпеки, зокрема PIN-код, буде видалено</translation>
 <translation id="1475502736924165259">У вас є сертифікати, які не відповідають іншим категоріям</translation>
+<translation id="1476088332184200792">Скопіювати на пристрій</translation>
 <translation id="1476607407192946488">&amp;Налаштування мови</translation>
 <translation id="1478340334823509079">Деталі: <ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">Встановлення не підтримується</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">Друкувати за допомогою діалогового вікна системи... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Запитувати, перш ніж надсилати (рекомендується)</translation>
 <translation id="2384436799579181135">Сталася помилка. Перевірте принтер і повторіть спробу.</translation>
-<translation id="2386926718981642523">Відкривайте Асистент командою "Ok Google"</translation>
 <translation id="2387458720915042159">Тип з’єднання з проксі-сервером</translation>
 <translation id="2391419135980381625">Стандартний шрифт</translation>
 <translation id="2392369802118427583">Активувати</translation>
@@ -1341,6 +1341,7 @@
 <translation id="2941112035454246133">Низький</translation>
 <translation id="2942560570858569904">Очікується…</translation>
 <translation id="2942581856830209953">Налаштувати цю сторінку</translation>
+<translation id="294308617863380348">Включено файли cookie третіх сторін</translation>
 <translation id="2944060181911631861">Надсилати дані про використання й діагностику. Допоможіть покращити роботу Android, автоматично надсилаючи в Google дані про діагностику та використання пристрою і додатків. Ця інформація допоможе покращити стабільність системи, додатків тощо. Деякі зведені дані також корисні для додатків і партнерів Google, як-от розробників Android. Якщо ввімкнено додаткову Історію додатків і веб-пошуку, ці дані зберігаються в обліковому записі Google. <ph name="BEGIN_LINK1" />Докладніше<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">Додати з’єднання</translation>
 <translation id="2948300991547862301">Перейти в <ph name="PAGE_TITLE" /></translation>
@@ -1355,7 +1356,6 @@
 <translation id="2961695502793809356">Натисніть, щоб перейти далі; утримуйте, щоб переглянути історію</translation>
 <translation id="2963151496262057773">Плагін <ph name="PLUGIN_NAME" /> не відповідає. Зупинити?</translation>
 <translation id="2966937470348689686">Змінити налаштування Android</translation>
-<translation id="2972557485845626008">Мікропрограма</translation>
 <translation id="2972581237482394796">&amp;Повторити</translation>
 <translation id="2973324205039581528">Вимкнути звук на сайті</translation>
 <translation id="2977480621796371840">Вилучити з групи</translation>
@@ -1613,7 +1613,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Розділювач</translation>
 <translation id="3387614642886316601">Використовувати покращену перевірку орфографії</translation>
-<translation id="3393352139658145068">Активувати Асистент, коли хтось скаже "Ok Google". Щоб заощадити заряд акумулятора, команда працюватиме, лише коли пристрій буде підключено до джерела живлення.</translation>
 <translation id="3396800784455899911">Натиснувши кнопку "Прийняти та продовжити", ви дозволяєте цим сервісам Google обробляти ваші дані, як описано вище.</translation>
 <translation id="3399432415385675819">Сповіщення будуть вимкнені</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> герц) – з накладанням</translation>
@@ -1774,6 +1773,7 @@
 <translation id="3613134908380545408">Показати "<ph name="FOLDER_NAME" />"</translation>
 <translation id="3613422051106148727">&amp;Відкрити в новій вкладці</translation>
 <translation id="3615073365085224194">Торкніться пальцем сканера відбитків</translation>
+<translation id="3615579745882581859">Сканується файл "<ph name="FILE_NAME" />".</translation>
 <translation id="3616741288025931835">&amp;Очистити дані веб-перегляду...</translation>
 <translation id="3617891479562106823">Фони недоступні. Повторіть спробу пізніше.</translation>
 <translation id="3619115746895587757">Капучино</translation>
@@ -1888,7 +1888,6 @@
 <translation id="3759933321830434300">Блокувати частини веб-сторінок</translation>
 <translation id="3760460896538743390">Перевірити &amp;фонову сторінку</translation>
 <translation id="37613671848467444">Відкрити в &amp;анонімному вікні</translation>
-<translation id="3764314093345384080">Докладна інформація про складання</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Обмінюватися даними з пристроєм USB}one{Обмінюватися даними з # пристроєм USB}few{Обмінюватися даними з # пристроями USB}many{Обмінюватися даними з # пристроями USB}other{Обмінюватися даними з # пристрою USB}}</translation>
 <translation id="3765246971671567135">Не вдалося прочитати політику демо-режиму офлайн.</translation>
 <translation id="3768037234834996183">Синхронізація налаштувань…</translation>
@@ -1938,7 +1937,7 @@
 <translation id="3820172043799983114">Недійсний PIN-код.</translation>
 <translation id="3820749202859700794">Еліптична крива SECG secp521r1 (також відома як NIST P-521)</translation>
 <translation id="3822559385185038546">Ваш адміністратор застосував цей проксі-сервер</translation>
-<translation id="3826440694796503677">Адміністратор вимкнув додавання інших облікових записів Google</translation>
+<translation id="3826440694796503677">Адміністратор заборонив додавати інші облікові записи Google</translation>
 <translation id="3827306204503227641">Дозволяти плагіни з неізольованим програмним середовищем</translation>
 <translation id="3827774300009121996">&amp;На весь екран</translation>
 <translation id="3828029223314399057">Пошук закладок</translation>
@@ -2169,7 +2168,6 @@
 <translation id="4138267921960073861">Показувати імена користувачів і фото на екрані входу</translation>
 <translation id="4142052906269098341">Розблоковуйте <ph name="DEVICE_TYPE" /> за допомогою телефона. <ph name="LINK_BEGIN" />Докладніше<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Покращуйте якість відео й заощаджуйте час роботи акумулятора. Відео відтворюватиметься лише на екрані з підтримкою Google Cast.</translation>
-<translation id="4145922204387553806">Дозвольте Асистенту показувати інформацію на основі вмісту на екрані</translation>
 <translation id="4146026355784316281">Завжди відкривати за допомогою системного переглядача</translation>
 <translation id="4146785383423576110">Скинути налаштування й очистити</translation>
 <translation id="4147911968024186208">Повторіть спробу. Якщо повідомлення про помилку з’явиться знову, зв’яжіться з представником служби підтримки.</translation>
@@ -2256,6 +2254,7 @@
 <translation id="4297322094678649474">Змінити мови</translation>
 <translation id="4301671483919369635">Ця сторінка може змінювати файли</translation>
 <translation id="4303079906735388947">Налаштуйте новий PIN-код для ключа безпеки</translation>
+<translation id="4305402730127028764">Копіювати на пристрій <ph name="DEVICE_NAME" /></translation>
 <translation id="4306119971288449206">Додатки мають наповнюватися вмістом типу "<ph name="CONTENT_TYPE" />"</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> КБ (<ph name="NUM_KILOBYTES_LIVE" /> КБ у реальному часі)</translation>
 <translation id="4310139701823742692">Неправильний формат файлу. Перевірте файл PPD та повторіть спробу.</translation>
@@ -2391,7 +2390,6 @@
 <translation id="4534661889221639075">Повторіть спробу.</translation>
 <translation id="4535127706710932914">Профіль за умовчанням</translation>
 <translation id="4535767533210902251">Сканер відбитків пальців – це верхня клавіша праворуч на клавіатурі. Легко торкніться її будь-яким пальцем.</translation>
-<translation id="4538417792467843292">Видалити слово</translation>
 <translation id="4538684596480161368">Завжди блокувати плагіни з неізольованим програмним середовищем на сайті <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Установлено політикою підприємства.</translation>
 <translation id="4542520061254486227">Переглядати ваші дані на веб-сайтах <ph name="WEBSITE_1" /> і <ph name="WEBSITE_2" /></translation>
@@ -2935,6 +2933,7 @@
 <translation id="5367091008316207019">Читання файлу...</translation>
 <translation id="5368720394188453070">Ваш телефон заблоковано. Щоб увійти, розблокуйте його.</translation>
 <translation id="5368779022775404937">Увійти на сторінці <ph name="REALM" /></translation>
+<translation id="5369491905435686894">Увімкнути прискорення миші</translation>
 <translation id="5370819323174483825">&amp;Оновити</translation>
 <translation id="5372529912055771682">Наданий режим реєстрації не підтримується цією версією операційної системи. Переконайтеся, що ви використовуєте останню версію, і повторіть спробу.</translation>
 <translation id="5372579129492968947">Відкріпити розширення</translation>
@@ -3007,6 +3006,7 @@
 <translation id="5464632865477611176">Запустити цього разу</translation>
 <translation id="5464660706533281090">Дитина не може змінювати це налаштування.</translation>
 <translation id="5466374726908360271">Вставити й шукати "<ph name="SEARCH_TERMS" />"</translation>
+<translation id="5468173180030470402">Пошук файлообмінників</translation>
 <translation id="5471768120198416576">Вітаю! Я – голос для синтезу мовлення.</translation>
 <translation id="5473333559083690127">Ще раз введіть новий PIN-код</translation>
 <translation id="5481941284378890518">Додати принтери поруч</translation>
@@ -3542,6 +3542,7 @@
 <translation id="6233154960150021497">За умовчанням використовувати голосові команди замість клавіатури</translation>
 <translation id="6234474535228214774">Очікується встановлення</translation>
 <translation id="6237816943013845465">Дає змогу налаштувати роздільну здатність екрана</translation>
+<translation id="6238767809035845642">Текст, яким поділилися з іншого пристрою</translation>
 <translation id="6238923052227198598">Показувати останню нотатку на заблокованому екрані</translation>
 <translation id="6239558157302047471">Перезавантажити фрейм</translation>
 <translation id="6241530762627360640">Переглядати інформацію про пристрої Bluetooth, підключені до вашої системи, і знаходити пристрої Bluetooth поблизу.</translation>
@@ -3768,7 +3769,6 @@
 <translation id="6577284282025554716">Завантаження файлу "<ph name="FILE_NAME" />" скасовано</translation>
 <translation id="6578664922716508575">Шифрувати синхронізовані паролі з іменем користувача та паролем Google</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> – надано доступ до вмісту на робочому столі</translation>
-<translation id="6580151766480067746">Версія ARC</translation>
 <translation id="6582080224869403177">Щоб оновити систему безпеки, скиньте налаштування пристрою <ph name="DEVICE_TYPE" />.</translation>
 <translation id="6584878029876017575">Безстроковий підпис Microsoft</translation>
 <translation id="6586451623538375658">Змінити основну кнопку миші</translation>
@@ -4373,6 +4373,7 @@
 <translation id="7487141338393529395">Увімкнути покращену перевірку орфографії</translation>
 <translation id="7487969577036436319">Немає встановлених компонентів</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{&amp;Відкрити всі}=1{&amp;Відкрити закладку}one{&amp;Відкрити всі (#)}few{&amp;Відкрити всі (#)}many{&amp;Відкрити всі (#)}other{&amp;Відкрити всі (#)}}</translation>
+<translation id="7489761397368794366">Зателефонувати з пристрою</translation>
 <translation id="749028671485790643">Особа <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC-адреса</translation>
 <translation id="7493386493263658176">Розширення <ph name="EXTENSION_NAME" /> може запам’ятовувати весь текст, який ви вводите, зокрема паролі та номери кредитних карток. Використовувати це розширення?</translation>
@@ -4392,6 +4393,7 @@
 <translation id="7508054832109420082">Надати доступ до принтерів</translation>
 <translation id="7510943789645525906">Попереджає вас, якщо пароль розкрито внаслідок порушення безпеки даних</translation>
 <translation id="7513029293694390567">Автоматично входити в облікові записи на веб-сайтах за допомогою збережених облікових даних. Якщо цю функцію вимкнено, потрібно підтверджувати облікові дані під час кожного входу на веб-сайтах.</translation>
+<translation id="7514239104543605883">Скопіювати на пристрій</translation>
 <translation id="7514365320538308">Завантажити</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">Скажіть "Ok Google"</translation>
@@ -4641,7 +4643,7 @@
 <translation id="7851457902707056880">Вхід дозволено лише для облікового запису власника. Перезавантажте комп’ютер та увійдіть, використовуючи дані облікового запису власника. Автоматичне перезавантаження відбудеться за 30 секунд.</translation>
 <translation id="7851716364080026749">Завжди блокувати доступ до камери та мікрофона</translation>
 <translation id="7851720427268294554">Синтаксичний аналізатор IPP</translation>
-<translation id="78526636422538552">Додавання інших облікових записів вимкнено</translation>
+<translation id="78526636422538552">Не можна додавати інші облікові записи Google</translation>
 <translation id="7853747251428735">Інші інструменти</translation>
 <translation id="7857117644404132472">Додати виняток</translation>
 <translation id="7857949311770343000">Це сторінка нової вкладки, яку ви очікували?</translation>
@@ -4948,6 +4950,7 @@
 <translation id="8274332263553132018">Транслювати файл</translation>
 <translation id="8274924778568117936">Не вимикайте та не закривайте пристрій <ph name="DEVICE_TYPE" />, поки не завершиться оновлення. Коли встановляться оновлення, пристрій <ph name="DEVICE_TYPE" /> перезавантажиться.</translation>
 <translation id="8275038454117074363">Імпорт</translation>
+<translation id="8275080796245127762">Зателефонувати з пристрою</translation>
 <translation id="8276560076771292512">Очищення кеш-пам’яті й жорстке перезавантаження</translation>
 <translation id="8281886186245836920">Пропустити</translation>
 <translation id="8282947398454257691">Бачити ваш унікальний ідентифікатор пристрою</translation>
@@ -5268,6 +5271,7 @@
 <translation id="8758418656925882523">Увімкнути диктування (голосовий набір тексту)</translation>
 <translation id="8759408218731716181">Не вдається налаштувати паралельний вхід</translation>
 <translation id="8759753423332885148">Докладніше.</translation>
+<translation id="8761945298804995673">Такий користувач уже існує</translation>
 <translation id="8762886931014513155"><ph name="DEVICE_TYPE" /> потребує оновлення</translation>
 <translation id="8763927697961133303">Пристрій USB</translation>
 <translation id="8767621466733104912">Автоматично оновлювати Chrome для всіх користувачів</translation>
@@ -5356,6 +5360,7 @@
 <translation id="8879284080359814990">&amp;Показати як вкладку</translation>
 <translation id="8879921471468674457">Запам'ятати дані для входу</translation>
 <translation id="8881020143150461183">Повторіть спробу. Щоб отримати технічну підтримку, зв'яжіться з <ph name="CARRIER_NAME" />.</translation>
+<translation id="8883273463630735858">Увімкнути прискорення сенсорної панелі</translation>
 <translation id="8884570509232205463">Тепер пристрій блокується о <ph name="UNLOCK_TIME" />.</translation>
 <translation id="8885197664446363138">Функція Smart Lock недоступна</translation>
 <translation id="8888253246822647887">Додаток відкриється, коли завершиться оновлення. Воно може тривати кілька хвилин.</translation>
diff --git a/chrome/app/resources/generated_resources_vi.xtb b/chrome/app/resources/generated_resources_vi.xtb
index 85bd6f7..22e0799a 100644
--- a/chrome/app/resources/generated_resources_vi.xtb
+++ b/chrome/app/resources/generated_resources_vi.xtb
@@ -951,7 +951,6 @@
 <translation id="2379281330731083556">In bằng hộp thoại hệ thống... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">Hỏi trước khi gửi (được đề xuất)</translation>
 <translation id="2384436799579181135">Đã xảy ra lỗi. Vui lòng kiểm tra máy in của bạn và thử lại.</translation>
-<translation id="2386926718981642523">Nói "Ok Google" bất cứ lúc nào bạn muốn sử dụng Trợ lý</translation>
 <translation id="2387458720915042159">Loại kết nối proxy</translation>
 <translation id="2391419135980381625">Phông chữ tiêu chuẩn</translation>
 <translation id="2392369802118427583">Kích hoạt</translation>
@@ -1355,7 +1354,6 @@
 <translation id="2961695502793809356">Nhấp vào để tiến, giữ để xem lịch sử</translation>
 <translation id="2963151496262057773">Plugin sau không hồi đáp: <ph name="PLUGIN_NAME" />Bạn có muốn dừng lại không?</translation>
 <translation id="2966937470348689686">Quản lý tùy chọn Android</translation>
-<translation id="2972557485845626008">Chương trình cơ sở</translation>
 <translation id="2972581237482394796">&amp;Làm lại</translation>
 <translation id="2973324205039581528">Tắt tiếng trang web</translation>
 <translation id="2977480621796371840">Xóa khỏi nhóm</translation>
@@ -1613,7 +1611,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">Dấu phân tách</translation>
 <translation id="3387614642886316601">Sử dụng tính năng kiểm tra lỗi chính tả nâng cao</translation>
-<translation id="3393352139658145068">Kích hoạt Trợ lý khi có người nói “Ok Google”. Để tiết kiệm pin, “Ok Google” chỉ bật khi thiết bị của bạn được kết nối với nguồn điện.</translation>
 <translation id="3396800784455899911">Bằng cách nhấp vào nút "Đồng ý và tiếp tục", bạn đồng ý với quy trình xử lý mô tả ở trên cho các dịch vụ này của Google.</translation>
 <translation id="3399432415385675819">Thông báo sẽ bị tắt</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Hertz) - đan xen</translation>
@@ -1888,7 +1885,6 @@
 <translation id="3759933321830434300">Chặn các phần của trang web</translation>
 <translation id="3760460896538743390">Kiểm tra trang &amp;nền</translation>
 <translation id="37613671848467444">Mở trong &amp;Cửa sổ ẩn danh</translation>
-<translation id="3764314093345384080">Thông tin bản dựng chi tiết</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{Kết nối với một thiết bị USB}other{Kết nối với # thiết bị USB}}</translation>
 <translation id="3765246971671567135">Không thể đọc chính sách về chế độ minh họa ngoại tuyến.</translation>
 <translation id="3768037234834996183">Đang đồng bộ hóa tùy chọn của bạn...</translation>
@@ -2169,7 +2165,6 @@
 <translation id="4138267921960073861">Hiển thị tên người dùng và ảnh trên màn hình đăng nhập</translation>
 <translation id="4142052906269098341">Mở khóa <ph name="DEVICE_TYPE" /> bằng điện thoại của bạn. <ph name="LINK_BEGIN" />Tìm hiểu thêm<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">Trải nhiệm chất lượng video tốt hơn và tiết kiệm pin. Video sẽ chỉ phát trên màn hình có hỗ trợ tính năng Truyền.</translation>
-<translation id="4145922204387553806">Cho phép Trợ lý hiển thị thông tin liên quan đến nội dung trên màn hình của bạn</translation>
 <translation id="4146026355784316281">Luôn mở bằng trình xem hệ thống</translation>
 <translation id="4146785383423576110">Đặt lại và dọn dẹp</translation>
 <translation id="4147911968024186208">Vui lòng thử lại. Nếu bạn vẫn thấy lỗi này, vui lòng liên hệ với người đại diện hỗ trợ của bạn.</translation>
@@ -2391,7 +2386,6 @@
 <translation id="4534661889221639075">Hãy thử lại.</translation>
 <translation id="4535127706710932914">Hồ sơ mặc định</translation>
 <translation id="4535767533210902251">Cảm biến vân tay là phím trên cùng bên phải của bàn phím. Hãy chạm nhẹ ngón tay bất kỳ vào đó.</translation>
-<translation id="4538417792467843292">Xóa từ</translation>
 <translation id="4538684596480161368">Luôn chặn các plugin không có hộp cát trên <ph name="HOST" /></translation>
 <translation id="4538792345715658285">Được cài đặt theo chính sách doanh nghiệp.</translation>
 <translation id="4542520061254486227">Đọc dữ liệu của bạn trên <ph name="WEBSITE_1" /> và <ph name="WEBSITE_2" /></translation>
@@ -3768,7 +3762,6 @@
 <translation id="6577284282025554716">Đã hủy tải xuống: <ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">Mã hóa mật khẩu đã đồng bộ hóa với tên người dùng và mật khẩu Google của bạn</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - Đã chia sẻ nội dung trên màn hình</translation>
-<translation id="6580151766480067746">Phiên bản ARC</translation>
 <translation id="6582080224869403177">Đặt lại <ph name="DEVICE_TYPE" /> của bạn để nâng cấp bảo mật.</translation>
 <translation id="6584878029876017575">Ký Trọn đời của Microsoft</translation>
 <translation id="6586451623538375658">Hoán đổi nút chuột chính</translation>
diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/resources/generated_resources_zh-CN.xtb
index 293a295..1298caad 100644
--- a/chrome/app/resources/generated_resources_zh-CN.xtb
+++ b/chrome/app/resources/generated_resources_zh-CN.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">要将您的扩展程序同步到您所有的设备上,请<ph name="SIGN_IN_LINK" />。</translation>
 <translation id="1470967055429794975">这会清空该安全密钥上的所有数据,包括它的 PIN 码</translation>
 <translation id="1475502736924165259">您有一些证书不属于前面的任何类别</translation>
+<translation id="1476088332184200792">复制到您的设备</translation>
 <translation id="1476607407192946488">语言设置(&amp;L)</translation>
 <translation id="1478340334823509079">详细信息:<ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">未启用安装功能</translation>
@@ -948,7 +949,6 @@
 <translation id="2379281330731083556">使用系统对话框进行打印...<ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">发送前先询问(推荐)</translation>
 <translation id="2384436799579181135">出错了。请检查您的打印机,然后重试。</translation>
-<translation id="2386926718981642523">随时访问您的 Google 助理,只需说“Ok Google”即可</translation>
 <translation id="2387458720915042159">代理连接类型</translation>
 <translation id="2391419135980381625">标准字体</translation>
 <translation id="2392369802118427583">激活</translation>
@@ -1337,6 +1337,7 @@
 <translation id="2941112035454246133">低</translation>
 <translation id="2942560570858569904">正在等待…</translation>
 <translation id="2942581856830209953">自定义此页</translation>
+<translation id="294308617863380348">包括第三方 Cookie</translation>
 <translation id="2944060181911631861">发送使用情况数据和诊断数据。通过自动向 Google 发送诊断数据、设备数据和应用使用情况数据,帮助改善您的 Android 使用体验。这些数据会被用来帮助提高系统和应用的稳定性以及实现其他方面的改进。部分汇总数据也会对 Google 应用和合作伙伴(例如 Android 开发者)有所帮助。如果您已开启“其他网络与应用活动记录”设置,这些数据可能会被保存到您的 Google 帐号中。<ph name="BEGIN_LINK1" />了解详情<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">添加连接</translation>
 <translation id="2948300991547862301">转到“<ph name="PAGE_TITLE" />”</translation>
@@ -1351,7 +1352,6 @@
 <translation id="2961695502793809356">点击可前进,按住可查看历史记录</translation>
 <translation id="2963151496262057773">以下插件没有响应:<ph name="PLUGIN_NAME" />。是否要停止使用该插件?</translation>
 <translation id="2966937470348689686">管理 Android 偏好设置</translation>
-<translation id="2972557485845626008">固件</translation>
 <translation id="2972581237482394796">重做(&amp;R)</translation>
 <translation id="2973324205039581528">将单个网站静音</translation>
 <translation id="2977480621796371840">从组中移除</translation>
@@ -1609,7 +1609,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">分隔符</translation>
 <translation id="3387614642886316601">使用增强的“拼写检查”功能</translation>
-<translation id="3393352139658145068">只要有人说“Ok Google”,就能启动 Google 助理。为了省电,“Ok Google”仅在您的设备连接至电源时可用。</translation>
 <translation id="3396800784455899911">点击“接受并继续”按钮,即表示您同意上述针对这些 Google 服务的处理方式。</translation>
 <translation id="3399432415385675819">通知将被停用</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" />(<ph name="REFRESH_RATE" /> 赫兹) - 交错</translation>
@@ -1770,6 +1769,7 @@
 <translation id="3613134908380545408">显示“<ph name="FOLDER_NAME" />”</translation>
 <translation id="3613422051106148727">在新标签页中打开(&amp;O)</translation>
 <translation id="3615073365085224194">用手指轻触指纹传感器</translation>
+<translation id="3615579745882581859">正在扫描“<ph name="FILE_NAME" />”。</translation>
 <translation id="3616741288025931835">清除浏览数据(&amp;C)...</translation>
 <translation id="3617891479562106823">背景不可用。请稍后重试。</translation>
 <translation id="3619115746895587757">卡布奇诺</translation>
@@ -1884,7 +1884,6 @@
 <translation id="3759933321830434300">屏蔽部分网页</translation>
 <translation id="3760460896538743390">检查背景页(&amp;B)</translation>
 <translation id="37613671848467444">在隐身窗口中打开(&amp;I)</translation>
-<translation id="3764314093345384080">详细版本信息</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{可与 1 部 USB 设备通信}other{可与 # 部 USB 设备通信}}</translation>
 <translation id="3765246971671567135">无法读取离线演示模式政策。</translation>
 <translation id="3768037234834996183">正在同步您的偏好设置…</translation>
@@ -2164,7 +2163,6 @@
 <translation id="4138267921960073861">在登录屏幕上显示用户名和照片</translation>
 <translation id="4142052906269098341">使用手机解锁 <ph name="DEVICE_TYPE" />。<ph name="LINK_BEGIN" />了解详情<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">获取更优质的视频并减少耗电量。视频仅会在支持 Cast 的屏幕上播放。</translation>
-<translation id="4145922204387553806">让 Google 助理为您显示与您屏幕上的内容相关的信息</translation>
 <translation id="4146026355784316281">始终使用系统查看器打开</translation>
 <translation id="4146785383423576110">重置并清理</translation>
 <translation id="4147911968024186208">请重试。如果系统仍提示此错误,请与您的支持代表联系。</translation>
@@ -2251,6 +2249,7 @@
 <translation id="4297322094678649474">更改语言</translation>
 <translation id="4301671483919369635">此页面可修改文件</translation>
 <translation id="4303079906735388947">为您的安全密钥设置一个新 PIN 码</translation>
+<translation id="4305402730127028764">复制到“<ph name="DEVICE_NAME" />”</translation>
 <translation id="4306119971288449206">应用必须以“<ph name="CONTENT_TYPE" />”这种内容类型提供</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K(实际大小为 <ph name="NUM_KILOBYTES_LIVE" /> K)</translation>
 <translation id="4310139701823742692">文件格式有误。请检查 PPD 文件,然后重试。</translation>
@@ -2386,7 +2385,6 @@
 <translation id="4534661889221639075">请重试。</translation>
 <translation id="4535127706710932914">默认个人资料</translation>
 <translation id="4535767533210902251">指纹传感器就是键盘右上方的按键。请用任一手指轻触该按键。</translation>
-<translation id="4538417792467843292">删除字词</translation>
 <translation id="4538684596480161368">一律禁止在 <ph name="HOST" /> 上使用未经过沙盒屏蔽的插件</translation>
 <translation id="4538792345715658285">按企业政策安装。</translation>
 <translation id="4542520061254486227">读取您在 <ph name="WEBSITE_1" /> 和 <ph name="WEBSITE_2" /> 上的数据</translation>
@@ -2930,6 +2928,7 @@
 <translation id="5367091008316207019">正在读取文件...</translation>
 <translation id="5368720394188453070">配对手机已锁定,需将其解锁才能进入。</translation>
 <translation id="5368779022775404937">登录 <ph name="REALM" /></translation>
+<translation id="5369491905435686894">启用鼠标加速</translation>
 <translation id="5370819323174483825">重新加载(&amp;R)</translation>
 <translation id="5372529912055771682">此版本的操作系统不支持所提供的注册模式。请确保您运行的是最新版本,然后重试。</translation>
 <translation id="5372579129492968947">取消固定扩展程序</translation>
@@ -3002,6 +3001,7 @@
 <translation id="5464632865477611176">运行一次</translation>
 <translation id="5464660706533281090">未成年用户无法更改此设置。</translation>
 <translation id="5466374726908360271">粘贴并搜索“<ph name="SEARCH_TERMS" />”</translation>
+<translation id="5468173180030470402">正在查找文件共享</translation>
 <translation id="5471768120198416576">您好!这是文字转语音的语音。</translation>
 <translation id="5473333559083690127">请重新输入新的 PIN 码</translation>
 <translation id="5481941284378890518">添加附近的打印机</translation>
@@ -3537,6 +3537,7 @@
 <translation id="6233154960150021497">默认为使用语音(而非键盘)</translation>
 <translation id="6234474535228214774">正等待安装</translation>
 <translation id="6237816943013845465">可让您调整屏幕分辨率</translation>
+<translation id="6238767809035845642">从其他设备分享的文字</translation>
 <translation id="6238923052227198598">始终将最新记事显示在锁定屏幕上</translation>
 <translation id="6239558157302047471">重新加载框架(&amp;F)</translation>
 <translation id="6241530762627360640">获取与您的系统配对的蓝牙设备的相关信息,以及发现附近的蓝牙设备。</translation>
@@ -3763,7 +3764,6 @@
 <translation id="6577284282025554716">已取消下载“<ph name="FILE_NAME" />”</translation>
 <translation id="6578664922716508575">使用您的 Google 用户名和密码加密已同步的密码</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - 已分享桌面内容</translation>
-<translation id="6580151766480067746">ARC 版本</translation>
 <translation id="6582080224869403177">请重置您的 <ph name="DEVICE_TYPE" />,以进行安全性升级。</translation>
 <translation id="6584878029876017575">Microsoft 生存时间签名</translation>
 <translation id="6586451623538375658">切换鼠标主按钮</translation>
@@ -4368,6 +4368,7 @@
 <translation id="7487141338393529395">开启增强的“拼写检查”功能</translation>
 <translation id="7487969577036436319">没有安装任何组件</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{全部打开(&amp;O)}=1{打开 1 个书签(&amp;O)}other{打开全部(# 个)书签(&amp;O)}}</translation>
+<translation id="7489761397368794366">通过您的设备拨打电话</translation>
 <translation id="749028671485790643">用户<ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC 地址</translation>
 <translation id="7493386493263658176">扩展程序“<ph name="EXTENSION_NAME" />”可能会收集您输入的所有内容(包括密码和信用卡号等个人数据)。要使用此扩展程序吗?</translation>
@@ -4387,6 +4388,7 @@
 <translation id="7508054832109420082">授予对打印机的使用期限</translation>
 <translation id="7510943789645525906">如有密码遭遇数据泄露就会向您发出警告</translation>
 <translation id="7513029293694390567">使用存储的凭据自动登录网站。停用该功能后,系统会在您每次登录网站时要求您进行确认。</translation>
+<translation id="7514239104543605883">复制到您的设备</translation>
 <translation id="7514365320538308">下载</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">说“Ok Google”</translation>
@@ -4942,6 +4944,7 @@
 <translation id="8274332263553132018">投射文件</translation>
 <translation id="8274924778568117936">在完成更新之前,请勿关闭您的 <ph name="DEVICE_TYPE" />。您的 <ph name="DEVICE_TYPE" /> 将会于安装完毕后重启。</translation>
 <translation id="8275038454117074363">导入</translation>
+<translation id="8275080796245127762">通过您的设备拨打电话</translation>
 <translation id="8276560076771292512">清空缓存并硬性重新加载</translation>
 <translation id="8281886186245836920">跳过</translation>
 <translation id="8282947398454257691">获取您的唯一设备标识符</translation>
@@ -5262,6 +5265,7 @@
 <translation id="8758418656925882523">启用语音输入(说话即可输入)</translation>
 <translation id="8759408218731716181">无法设置多帐号登录</translation>
 <translation id="8759753423332885148">了解详情。</translation>
+<translation id="8761945298804995673">该用户已存在</translation>
 <translation id="8762886931014513155">您的 <ph name="DEVICE_TYPE" /> 需要更新</translation>
 <translation id="8763927697961133303">USB 设备</translation>
 <translation id="8767621466733104912">自动为所有用户更新 Chrome</translation>
@@ -5350,6 +5354,7 @@
 <translation id="8879284080359814990">显示为标签页(&amp;S)</translation>
 <translation id="8879921471468674457">记住登录信息</translation>
 <translation id="8881020143150461183">请重试。如需技术支持,请联系<ph name="CARRIER_NAME" />。</translation>
+<translation id="8883273463630735858">启用触控板加速</translation>
 <translation id="8884570509232205463">现在,您的设备会在<ph name="UNLOCK_TIME" /> 锁定。</translation>
 <translation id="8885197664446363138">无法开启 Smart Lock</translation>
 <translation id="8888253246822647887">待完成升级后,您的应用即会打开。升级过程可能会持续几分钟。</translation>
diff --git a/chrome/app/resources/generated_resources_zh-TW.xtb b/chrome/app/resources/generated_resources_zh-TW.xtb
index 4055d5c..77938a2 100644
--- a/chrome/app/resources/generated_resources_zh-TW.xtb
+++ b/chrome/app/resources/generated_resources_zh-TW.xtb
@@ -319,6 +319,7 @@
 <translation id="1470811252759861213">如要在所有電腦上使用您的擴充功能,請<ph name="SIGN_IN_LINK" />。</translation>
 <translation id="1470967055429794975">這項操作將清除這個安全金鑰上的所有資料,包括 PIN 碼</translation>
 <translation id="1475502736924165259">您儲存的這些憑證不屬於任何其他類別</translation>
+<translation id="1476088332184200792">複製到你的裝置</translation>
 <translation id="1476607407192946488">語言設定(&amp;L)</translation>
 <translation id="1478340334823509079">詳細資料:<ph name="FILE_NAME" /></translation>
 <translation id="1478607704480248626">未啟用安裝功能</translation>
@@ -951,7 +952,6 @@
 <translation id="2379281330731083556">使用系統對話方塊進行列印... <ph name="SHORTCUT_KEY" /></translation>
 <translation id="2381756643783702095">傳送前詢問我 (建議)</translation>
 <translation id="2384436799579181135">發生錯誤。請檢查你的印表機,然後再試一次。</translation>
-<translation id="2386926718981642523">只要說出「Ok Google」,就能隨時存取 Google 助理</translation>
 <translation id="2387458720915042159">Proxy 連線類型</translation>
 <translation id="2391419135980381625">標準字型</translation>
 <translation id="2392369802118427583">啟用</translation>
@@ -1340,6 +1340,7 @@
 <translation id="2941112035454246133">低</translation>
 <translation id="2942560570858569904">等待中…</translation>
 <translation id="2942581856830209953">自訂這個頁面</translation>
+<translation id="294308617863380348">包括第三方 Cookie</translation>
 <translation id="2944060181911631861">傳送使用狀況與診斷資料。讓系統自動將診斷資料以及裝置和應用程式的使用狀況資料傳送給 Google,協助改善你的 Android 使用體驗。這些資料將有助於系統和應用程式提高穩定性及做出其他改善。部分匯總資料還能夠為 Google 應用程式和合作夥伴 (例如 Android 開發人員) 提供幫助。如果你的「其他網路和應用程式活動」設定為開啟,系統可能會將這些資料儲存到你的 Google 帳戶。<ph name="BEGIN_LINK1" />瞭解詳情<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">新增連線</translation>
 <translation id="2948300991547862301">前往<ph name="PAGE_TITLE" /></translation>
@@ -1354,7 +1355,6 @@
 <translation id="2961695502793809356">按一下到下一頁,按住可查看記錄</translation>
 <translation id="2963151496262057773">下列外掛程式無回應:<ph name="PLUGIN_NAME" /> 您要停止執行嗎?</translation>
 <translation id="2966937470348689686">管理 Android 偏好設定</translation>
-<translation id="2972557485845626008">韌體</translation>
 <translation id="2972581237482394796">重做(&amp;R)</translation>
 <translation id="2973324205039581528">關閉網站音訊</translation>
 <translation id="2977480621796371840">從群組中移除</translation>
@@ -1612,7 +1612,6 @@
 <translation id="3385092118218578224"><ph name="DISPLAY_ZOOM" />%</translation>
 <translation id="338583716107319301">分隔線</translation>
 <translation id="3387614642886316601">使用進階拼字檢查功能</translation>
-<translation id="3393352139658145068">只要有人說出「Ok Google」即啟動 Google 助理。為了節省電力,系統只有在裝置連接到電源時才會啟動「Ok Google」。</translation>
 <translation id="3396800784455899911">點選 [接受並繼續] 按鈕即表示您同意上述的 Google 服務處理程序。</translation>
 <translation id="3399432415385675819">通知功能會遭到停用</translation>
 <translation id="3400390787768057815"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> 赫茲) - 交錯顯示</translation>
@@ -1773,6 +1772,7 @@
 <translation id="3613134908380545408">顯示「<ph name="FOLDER_NAME" />」</translation>
 <translation id="3613422051106148727">在新分頁中開啟(&amp;O)</translation>
 <translation id="3615073365085224194">請以手指輕觸指紋感應器</translation>
+<translation id="3615579745882581859">正在掃描「<ph name="FILE_NAME" />」。</translation>
 <translation id="3616741288025931835">清除瀏覽資料(&amp;C)...</translation>
 <translation id="3617891479562106823">目前無法存取背景,請稍後再試。</translation>
 <translation id="3619115746895587757">卡布奇諾</translation>
@@ -1887,7 +1887,6 @@
 <translation id="3759933321830434300">封鎖網頁部分內容</translation>
 <translation id="3760460896538743390">檢查背景頁面(&amp;B)</translation>
 <translation id="37613671848467444">在無痕式視窗中開啟(&amp;I)</translation>
-<translation id="3764314093345384080">詳細版本資訊</translation>
 <translation id="3764583730281406327">{NUM_DEVICES,plural, =1{與 1 個 USB 裝置通訊}other{與 # 個 USB 裝置通訊}}</translation>
 <translation id="3765246971671567135">無法讀取離線示範模式的政策。</translation>
 <translation id="3768037234834996183">正在處理您的偏好設定...</translation>
@@ -2167,7 +2166,6 @@
 <translation id="4138267921960073861">在登入畫面中顯示使用者名稱和相片</translation>
 <translation id="4142052906269098341">用你的手機解鎖 <ph name="DEVICE_TYPE" />。<ph name="LINK_BEGIN" />瞭解詳情<ph name="LINK_END" /></translation>
 <translation id="4144218403971135344">取得畫質更高的影片,並降低耗電量。只能透過支援 Cast 的螢幕播放影片。</translation>
-<translation id="4145922204387553806">允許 Google 助理根據畫面上的內容顯示相關資訊</translation>
 <translation id="4146026355784316281">一律使用系統檢視器開啟</translation>
 <translation id="4146785383423576110">重設與清理</translation>
 <translation id="4147911968024186208">請再試一次。如果這個錯誤再次發生,請與你的產品支援代表聯絡。</translation>
@@ -2254,6 +2252,7 @@
 <translation id="4297322094678649474">變更語言</translation>
 <translation id="4301671483919369635">這個頁面具有檔案編輯權限</translation>
 <translation id="4303079906735388947">為安全金鑰設定新的 PIN 碼</translation>
+<translation id="4305402730127028764">複製到「<ph name="DEVICE_NAME" />」</translation>
 <translation id="4306119971288449206">應用程式的內容類型應設為「<ph name="CONTENT_TYPE" />」</translation>
 <translation id="4309420042698375243"><ph name="NUM_KILOBYTES" /> K (<ph name="NUM_KILOBYTES_LIVE" /> K 作用中)</translation>
 <translation id="4310139701823742692">檔案格式錯誤。請檢查 PPD 檔案,然後再試一次。</translation>
@@ -2389,7 +2388,6 @@
 <translation id="4534661889221639075">請再試一次。</translation>
 <translation id="4535127706710932914">預設設定檔</translation>
 <translation id="4535767533210902251">指紋感應器位於鍵盤右上方,請用任何一隻手指輕觸指紋感應器。</translation>
-<translation id="4538417792467843292">刪除文字</translation>
 <translation id="4538684596480161368">一律禁止在 <ph name="HOST" /> 執行無沙箱防護的外掛程式</translation>
 <translation id="4538792345715658285">由公司政策安裝</translation>
 <translation id="4542520061254486227">讀取你在 <ph name="WEBSITE_1" /> 和 <ph name="WEBSITE_2" /> 上產生的資料</translation>
@@ -2933,6 +2931,7 @@
 <translation id="5367091008316207019">正在讀取檔案...</translation>
 <translation id="5368720394188453070">你的手機已鎖定,必須解鎖才能繼續操作。</translation>
 <translation id="5368779022775404937">登入 <ph name="REALM" /></translation>
+<translation id="5369491905435686894">啟用滑鼠加速</translation>
 <translation id="5370819323174483825">重新載入(&amp;R)</translation>
 <translation id="5372529912055771682">這個版本的作業系統不支援提供註冊模式。請確認你使用的是最新版本,然後再試一次。</translation>
 <translation id="5372579129492968947">取消固定擴充功能</translation>
@@ -3005,6 +3004,7 @@
 <translation id="5464632865477611176">執行 (僅限這次)</translation>
 <translation id="5464660706533281090">兒童使用者無法變更這項設定。</translation>
 <translation id="5466374726908360271">貼上「<ph name="SEARCH_TERMS" />」並執行搜尋 (&amp;S)</translation>
+<translation id="5468173180030470402">正在尋找檔案共用區</translation>
 <translation id="5471768120198416576">你好!這是文字轉語音的語音。</translation>
 <translation id="5473333559083690127">再次輸入新的 PIN 碼</translation>
 <translation id="5481941284378890518">新增附近的印表機</translation>
@@ -3540,6 +3540,7 @@
 <translation id="6233154960150021497">預設使用語音,而不使用鍵盤</translation>
 <translation id="6234474535228214774">等待安裝中</translation>
 <translation id="6237816943013845465">讓你調整螢幕解析度</translation>
+<translation id="6238767809035845642">從其他裝置分享的文字</translation>
 <translation id="6238923052227198598">在鎖定畫面上顯示最新記事</translation>
 <translation id="6239558157302047471">重新載入頁框(&amp;F)</translation>
 <translation id="6241530762627360640">存取與系統配對的藍牙裝置資訊並搜尋附近的藍牙裝置。</translation>
@@ -3766,7 +3767,6 @@
 <translation id="6577284282025554716">已取消下載:<ph name="FILE_NAME" /></translation>
 <translation id="6578664922716508575">使用你的 Google 使用者名稱與密碼將經過同步處理的密碼加密</translation>
 <translation id="6579705087617859690"><ph name="WINDOW_TITLE" /> - 已分享桌面內容</translation>
-<translation id="6580151766480067746">ARC 版本</translation>
 <translation id="6582080224869403177">請重設 <ph name="DEVICE_TYPE" />,以便進行安全性更新。</translation>
 <translation id="6584878029876017575">Microsoft 永久簽署</translation>
 <translation id="6586451623538375658">調換滑鼠主按鈕</translation>
@@ -4371,6 +4371,7 @@
 <translation id="7487141338393529395">開啟進階拼字檢查功能</translation>
 <translation id="7487969577036436319">未安裝任何元件</translation>
 <translation id="7489355918927585587">{COUNT,plural, =0{開啟所有書籤(&amp;O)}=1{開啟書籤(&amp;O)}other{開啟全部 # 個書籤(&amp;O)}}</translation>
+<translation id="7489761397368794366">用你的裝置撥打電話</translation>
 <translation id="749028671485790643">人員 <ph name="VALUE" /></translation>
 <translation id="7490813197707563893">MAC 位址</translation>
 <translation id="7493386493263658176"><ph name="EXTENSION_NAME" /> 擴充功能可能會收集您輸入的所有文字,包括密碼和信用卡號碼等個人資料。您要使用這個擴充功能嗎?</translation>
@@ -4390,6 +4391,7 @@
 <translation id="7508054832109420082">授予印表機存取權</translation>
 <translation id="7510943789645525906">在發生線上資料侵害事件時向你發出警告</translation>
 <translation id="7513029293694390567">使用已儲存的憑證自動登入網站。如果停用這項功能,每當你登入網站時,都必須向系統確認你的登入憑證。</translation>
+<translation id="7514239104543605883">複製到你的裝置</translation>
 <translation id="7514365320538308">下載</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7522255036471229694">說出「Ok Google」</translation>
@@ -4945,6 +4947,7 @@
 <translation id="8274332263553132018">投放檔案</translation>
 <translation id="8274924778568117936">完成更新前,請勿將 <ph name="DEVICE_TYPE" /> 關機。<ph name="DEVICE_TYPE" /> 會在安裝完成後重新啟動。</translation>
 <translation id="8275038454117074363">匯入</translation>
+<translation id="8275080796245127762">用你的裝置撥打電話</translation>
 <translation id="8276560076771292512">清除快取並強制重新載入</translation>
 <translation id="8281886186245836920">略過</translation>
 <translation id="8282947398454257691">存取您的專屬裝置識別碼</translation>
@@ -5265,6 +5268,7 @@
 <translation id="8758418656925882523">啟用語音輸入 (說話即可輸入)</translation>
 <translation id="8759408218731716181">無法設定多重登入</translation>
 <translation id="8759753423332885148">瞭解詳情</translation>
+<translation id="8761945298804995673">這名使用者已經存在。</translation>
 <translation id="8762886931014513155">你的 <ph name="DEVICE_TYPE" /> 需要更新</translation>
 <translation id="8763927697961133303">USB 裝置</translation>
 <translation id="8767621466733104912">自動為所有使用者更新 Chrome</translation>
@@ -5353,6 +5357,7 @@
 <translation id="8879284080359814990">以分頁顯示(&amp;S)</translation>
 <translation id="8879921471468674457">記住登入資訊</translation>
 <translation id="8881020143150461183">請再試一次。如需技術支援,請聯絡「<ph name="CARRIER_NAME" />」。</translation>
+<translation id="8883273463630735858">啟用觸控板加速</translation>
 <translation id="8884570509232205463">你的裝置會在 <ph name="UNLOCK_TIME" /> 遭到鎖定。</translation>
 <translation id="8885197664446363138">無法使用 Smart Lock</translation>
 <translation id="8888253246822647887">升級完成後,你的應用程式即會啟動。升級作業可能需要幾分鐘才能完成。</translation>
diff --git a/chrome/app/resources/google_chrome_strings_am.xtb b/chrome/app/resources/google_chrome_strings_am.xtb
index 1190c20..9a62610 100644
--- a/chrome/app/resources/google_chrome_strings_am.xtb
+++ b/chrome/app/resources/google_chrome_strings_am.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS ውሂብዎን ሊያመሳስል አልቻለም። እባክዎ የማመሳሰያ ይለፍ ሐረግዎን ያዘምኑት።</translation>
 <translation id="1302523850133262269">እባክዎ Chrome የቅርብ ጊዜዎቹን ዝማኔዎች እስኪጭን ድረስ ይጠብቁ።</translation>
 <translation id="137466361146087520">Google Chrome ቅድመ-ይሁነታ</translation>
-<translation id="1393853151966637042">ስለ Chrome አጠቃቀም ላይ እገዛን ያግኙ</translation>
 <translation id="1399397803214730675">ይህ ኮምፒውተር አስቀድሞ ይበልጥ የቅርብ ጊዜ የሆነ የGoogle Chrome ስሪት አለው። ሶፍትዌሩ የማይሰራ ከሆነ እባክዎ Google Chromeን ያራግፉና እንደገና ይሞክሩ።</translation>
 <translation id="1434626383986940139">የChrome Canary መተግበሪያዎች</translation>
-<translation id="1469002951682717133">Chrome የመተግበሪያ አስጀማሪ</translation>
 <translation id="1553358976309200471">Chromeን አዘምን</translation>
 <translation id="1587223624401073077">Google Chrome ካሜራዎን እየተጠቀመ ነው።</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> አደገኛ ነው፣ ስለዚህ Chrome አግዶታል።</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome ይህን የይለፍ ቃል በእርስዎ የGoogle መለያ ውስጥ ያስቀምጠዋል። ማስታወስ አይኖርብዎትም።</translation>
 <translation id="174539241580958092">በመለያ ሲገባ በነበረ ስህተት ምክንያት Google Chrome ውሂብዎን ማመሳሰል አልቻለም።</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome ስርዓተ ክወናን መጠቀም ላይ እገዛን ያግኙ</translation>
-<translation id="1795405610103747296">Chromeን በእርስዎ ስልክ ላይ ይጫኑት። አንድ ኤስኤምኤስ ወደ ስልክዎ እንልካለን። <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">ይህንን በማጥፋት፣ እንደ Gmail ወደ መሰሉ የGoogle ጣቢያዎች ወደ Chrome በመለያ ሳይገቡ መግባት ይችላሉ</translation>
 <translation id="1860536484129686729">Chrome ለዚህ ጣቢያ የእርስዎን ካሜራ ለመድረስ ፈቃድ ያስፈልገዋል</translation>
 <translation id="1873233029667955273">Google Chrome ነባሪ አሳሽዎ አይደለም</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">ለ Chrome OS ዝርዝሮች፣ እባክዎ <ph name="LINK_BEGIN" />
       ስለ Chrome OS<ph name="LINK_END" /> ን ይመልከቱ</translation>
 <translation id="2151406531797534936">እባክዎ Chrome ን አሁን ዳግም ያስጀምሩ</translation>
-<translation id="216054706567564023">Chromeን በእርስዎ ስልክ ላይ ይጫኑት። አንድ ኤስኤምኤስ ወደ የእርስዎ የመልሶ ማግኛ ስልክ ቁጥር እንልካለን።</translation>
 <translation id="2246246234298806438">አብሮት የተሰራው የፒ ዲ ኤፍ መመልከቻ ሲጎድል Google Chrome የህትመት ቅድመ-እይታውን ሊያሳይ አይችልም።</translation>
-<translation id="2252923619938421629">የአሁኖቹ ቅንብሮችን ሪፖርት በማድረግ Google Chrome የተሻለ እንዲሆን ያግዙ</translation>
-<translation id="2286950485307333924">አሁን በመለያ ወደ Chrome ገብተዋል</translation>
 <translation id="2290014774651636340">የGoogle ኤ ፒ አይ ቁልፎች ይጎድላሉ። አንዳንድ የGoogle Chrome ተግባራት ይሰናከላሉ።</translation>
 <translation id="2290095356545025170">እርግጠኛ ነዎት Google Chromeን ማራገፍ ይፈልጋሉ?</translation>
 <translation id="2309047409763057870">ይሄ ሁለተኛ የGoogle Chrome ጭነት ነው፣ እና ነባሪ አሳሽዎ ማድረግ አይቻልም።</translation>
-<translation id="2346876346033403680">የሆነ ሰው ከዚህ ቀደም በዚህ ኮምፒውተር ላይ እንደ <ph name="ACCOUNT_EMAIL_LAST" /> ሆኖ ወደ Chrome ገብቶ ነበር። ያ መለያዎ ካልሆነ መረጃዎን ለይተው ለማስቀመጥ አዲስ የChromium ተጠቃሚ ይፍጠሩ።
-
-ዝም ብሎ መግባት እንደ ዕልባቶች፣ ታሪክ እና ሌሎች ቅንብሮች ያሉ የChrome መረጃዎችን ከ<ph name="ACCOUNT_EMAIL_NEW" /> ጋር ያዋህዳቸዋል።</translation>
 <translation id="2348335408836342058">Chrome ለዚህ ጣቢያ የእርስዎን ካሜራ እና ማይክሮፎን ለመድረስ ፈቃድ ያስፈልገዋል</translation>
 <translation id="2429317896000329049">ማመሳሰል ለጎራዎ ስለማይገኝ Google Chrome ውሂብዎን ማመሳሰል አልቻለም።</translation>
 <translation id="2467438592969358367">Google Chrome የእርስዎን የይለፍ ቃላት ወደ ውጭ መላክ ይፈልጋል። ይህንን ለመፍቀድ የWindows የይለፍ ቃልዎን ይተይቡ።</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">ወደ Chrome ገብተዋል!</translation>
 <translation id="2888126860611144412">ስለChrome</translation>
 <translation id="3037838751736561277">Google Chrome በጀርባ ሁኔታ ላይ ነው።</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" />ን ግንኙነት ማቋረጥ ታሪክዎን፣ ቅንበሮችዎን እና ሌሎች በዚህ መሳሪያ ላይ የተቀመጡትን ሌሎች የChrome ውሂብ ያጸዳል። በGoogle መለያዎ ላይ ያለው ውሂብ የማይጸዳ ሲሆን በ<ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" /> ላይ መተዳደር ይችላል።</translation>
 <translation id="3065168410429928842">የChrome ትር</translation>
 <translation id="3080151273017101988">Google Chrome ሲዘጋ የጀርባ መተግበሪያዎችን ማሂዱን ይቀጥሉ</translation>
 <translation id="3089968997497233615">አዲስና ደህንነቱ ይበልጥ የተጠበቀ የGoogle Chrome ስሪት ይገኛል።</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">Chromeን በመላ መሣሪያዎችዎ ላይ ያስምሩ እና ግላዊነት ያላብሱ</translation>
 <translation id="3622797965165704966">አሁን Chromeን ከGoogle መለያዎ ጋር እና በተጋሩ ኮምፒውተሮች ላይ መጠቀም ይበልጥ ቀላል ነው።</translation>
 <translation id="3637702109597584617">የGoogle Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />አገልግሎት ውል<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">ይህ ገጽ በጣም ብዙ ማህደረ ትውስታን ይጠቀማል፣ ስለዚህ Chrome ባለበት አቁሞታል።</translation>
 <translation id="3718181793972440140">ይሄ 1 ንጥል ከዚህ መሣሪያዎ ይሰርዘዋል። ውሂብዎን በኋላ ላይ ሰርስረው ለማውጣት እንደ <ph name="USER_EMAIL" /> ሆነው ወደ Chrome ይግቡ።</translation>
 <translation id="3735758079232443276">ይህ «<ph name="EXTENSION_NAME" />» ቅጥያ Chromeን ሲጀምሩት የሚታየውን ገጽ ቀይሮታል።</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{በአንድ ቀን ውስጥ Chromeን ዳግም አስጀምር}one{በ# ቀኖች ውስጥ Chromeን ዳግም አስጀምር}other{በ# ቀኖች ውስጥ Chromeን ዳግም አስጀምር}}</translation>
 <translation id="424864128008805179">ከChrome ተዘግቶ ይወጣ?</translation>
 <translation id="4251615635259297716">የChrome ውሂብዎ ከዚህ መለያ ጋር ይገናኝ?</translation>
-<translation id="4251625577313994583">በእርስዎ iPhone ላይ Chromeን ያግኙት</translation>
 <translation id="4293420128516039005">Chromeን በመላ መሣሪያዎችዎ ላይ ለማሳመር እና ግላዊነት ለማላበስ</translation>
 <translation id="4328355335528187361">Google Chrome ገንቢ (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome ስርዓተ ክወና</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">ይህ በ Google ፍለጋ ውስጥ ጥቅም ላይ ጋር ተመሳሳይ የፊደል አራሚ ይጠቀማል። በአሳሽ ውስጥ የሚተይቡት ጽሑፍ ወደ Google ይላካል። ይህን ባህሪ ሁልጊዜ በቅንብሮች ውስጥ መለወጥ ይችላሉ።</translation>
 <translation id="4891791193823137474">Google Chrome በጀርባ ውስጥ ይሂድ</translation>
 <translation id="4895437082222824641">አገናኝ በአዲስ የChrome &amp;ትር ውስጥ ክፈት</translation>
-<translation id="4921569541910214635">ኮምፒውተር ይጋራሉ? አሁን Chromeን ልክ እንደሚፈልጉት አድርገው ማዋቀር ይችላሉ።</translation>
 <translation id="4953650215774548573">Google Chromeን እንደ ነባሪ አሳሽዎ አድርገው ያቀናብሩ</translation>
 <translation id="495931528404527476">በChrome ውስጥ</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">እንደገና ጀምር</translation>
 <translation id="5940385492829620908">የእርስዎ ድር፣ ዕልባቶች እና ሌሎች የChrome ነገሮች እዚህ ይኖራሉ።</translation>
 <translation id="5941830788786076944">Google Chromeን መነሻ ማሰሻ አድርግ</translation>
-<translation id="6014844626092547096">አሁን ወደ Chrome ገብተዋል! ማመሳሰል በአስተዳዳሪዎ ተሰናክሏል።</translation>
-<translation id="6040143037577758943">ዝጋ</translation>
 <translation id="6070348360322141662">ለተጨማሪ ደህንነት ሲባል Google Chrome ውሂብዎን ያመሰጥረዋል</translation>
 <translation id="6113794647360055231">Chrome አሁን ይበልጥ ተሻሽሏል</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">Chrome ስርዓተ ክወና በተጨማሪ <ph name="BEGIN_LINK_CROS_OSS" />ክፍት ምንጭ ሶፍትዌር<ph name="END_LINK_CROS_OSS" /> እውን ሊሆን ችሏል።</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome ግንባታ</translation>
 <translation id="6566149418543181476">Google Chromeን በማዘመን ላይ (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">የChrome ነገሮችዎን ለማመሳሰል <ph name="PROFILE_EMAIL" />ን እየተጠቀሙ ነው። የማመሳሰል ምርጫዎን ለማዘመን ወይም Chromeን ያለGoogle መለያ ለመጠቀም <ph name="SETTINGS_LINK" />ን ይጎብኙ።</translation>
-<translation id="6600954340915313787">ወደ Chrome ተቀድቷል</translation>
 <translation id="6676384891291319759">በይነመረብን ተዳረስ</translation>
 <translation id="6679975945624592337">Google Chrome ጀርባ ውስጥ ይሂድ</translation>
 <translation id="6750954913813541382">የሥርዓተ ሆሄ ህጸሶችን ለማስተካከል እርስዎን የሚተይቡትን ጽሑፍ Chrome ወደ Google በአሳሽ ውስጥ ይልካል</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Google Chrome ተዘምኗል፣ ግን ቢያንስ ለ30 ቀኖች አልተጠቀሙበትም።</translation>
 <translation id="7098166902387133879">Google Chrome የእርስዎን ማይክሮፎን እየተጠቀመ ነው።</translation>
 <translation id="7106741999175697885">ተግባር መሪ - Google Chrome</translation>
-<translation id="7164397146364144019">የደህንነት ሊሆኑ የሚችሉ ክስተቶችን በራስ-ሰር ለGoogle ሪፖርት በማድረግ Chrome ይበልጥ ደህንነቱ የተጠበቀ እና ለመጠቀም ቀላል እንዲሆን ማድረግ ይችላሉ።</translation>
 <translation id="7242029209006116544">በሚተዳደር መለያ እየገቡ ነው፣ እና አስተዳዳሪው በእርስዎ Google Chrome መገለጫ ላይ ቁጥጥር እየሰጡት ነው። እንደየእርስዎ  መተግበሪያዎች፣ ዕልባቶች፣ ታሪክ፣ የይለፍ ቃላት እና ሌሎች ቅንብሮች ያሉ የእርስዎ Chrome ውሂብ እስከ መጨረሻው ከ<ph name="USER_NAME" /> ጋር የተያያዙ ይሆናሉ። ይህን ውሂብ በGoogle የመለያዎች Dashboard አማካኝነት ሊሰርዙት ይችላሉ፣ ነገር ግን ይህን ውሂብ ከሌላ መለያ ጋር ሊያጎዳኙት አይችሉም። ነባሩ የእርስዎ Chrome ውሂብ ለይተው ለማስቀመጥም አዲስ መገለጫ እንደ አማራጭ መፍጠር ይችላሉ። <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">ይህ ቋንቋ የGoogle Chrome ዩአይን ለማሳየት ስራ ላይ ይውላል</translation>
 <translation id="7296210096911315575">ጠቃሚ የአጠቃቀም እና የደህንነት መረጃ</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">እንደ <ph name="USER_EMAIL_ADDRESS" /> ሆነው ወደ Chrome ገብተዋል። እባክዎ እንደገና ለመግባት ተመሳሳዩን መለያ ይጠቀሙ።</translation>
 <translation id="7408085963519505752">የChrome OS ውል</translation>
 <translation id="7419046106786626209">ማመሳሰል ለጎራዎ ስለማይገኝ Chrome OS ውሂብዎን ማመሳሰል አልቻለም።</translation>
-<translation id="7459554271817304652">ግላዊነት የተላበሰው የአሳሽ ባህሪዎችዎ ድር ላይ ለማስቀመጥና ከዚያ Google Chrome ካለው ማንኛውም ኮምፒውተር ለመድረስ አመሳስልን ያዋቅሩ።</translation>
 <translation id="7486227612705979895">Chrome የእርስዎን Drive በአድራሻ አሞሌ ውስጥ ጥቆማ ሐሳቦችን ይደርሳል</translation>
 <translation id="7531671357096394523">ሁሉንም የChrome ቅጂዎች ያቋርጡ።</translation>
 <translation id="7535429826459677826">Google Chrome ገንቢ</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">Windows XP እና Windows Vista ከእንግዲህ ስለማይደገፉ ይህ ኮምፒውተር ከአሁን በኋላ የGoogle Chrome ዝማኔዎችን አይቀበልም።</translation>
 <translation id="8008534537613507642">Chromeን ዳግም ጫነው</translation>
 <translation id="8013993649590906847">አንድ ምስል ጠቃሚ መግለጫ ከሌለው Chrome ለእርስዎ አንድ ለማቅረብ ይሞክራል። ዝርዝር መግለጫዎችን ለመፍጠር፣ ምስሎች ወደ Google ይላካሉ።</translation>
-<translation id="8032142183999901390">መለያዎን ከChrome ካስወገዱ በኋላ፣ ክፍት ትሮችዎ እንዲሰሩ መልሰው መጫን ሊኖርብዎ ይችላል።</translation>
 <translation id="8129812357326543296">ስለ &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Chromeን በእርስዎ ስልክ ላይ ይጫኑ። አንድ ኤስኤምኤስ ወደ የእርስዎ ስልክ እንልካለን።</translation>
-<translation id="825412236959742607">ይህ ገጽ በጣም ብዙ ማህደረ ትውስታን ይጠቀማል፣ ስለዚህ Chrome አንዳንድ ይዘትን አስወግዷል።</translation>
 <translation id="8255190535488645436">Google Chrome ካሜራዎን እና ማይክሮፎንዎን እየተጠቀመ ነው።</translation>
 <translation id="8286862437124483331">Google Chrome የይለፍ ቃሎችን ለማሳየት እየሞከረ ነው። ይህንን ለመፍቀድ የእርስዎን Windows የይለፍ ቃል ይተይቡ።</translation>
 <translation id="8290100596633877290">ኧረ ገዳይ! Google Chrome ተሰናክሏል። አሁን እንደገና ይጀመር?</translation>
 <translation id="8342675569599923794">ይህ ፋይል አደገኛ ስለሆነ Chrome አግዶታል።</translation>
 <translation id="8370517070665726704">የቅጂ መብት <ph name="YEAR" /> Google LLC. ሁሉም መብቶች በህግ የተጠበቁ ናቸው።</translation>
 <translation id="840084489713044809">Google Chrome የእርስዎን የይለፍ ቃላት ወደ ውጭ መላክ ይፈልጋል።</translation>
-<translation id="8406086379114794905">Chrome የተሻለ እንዲሆን ያግዙ</translation>
 <translation id="8455999171311319804">ከተፈለገ፦ የምርመራ እና የአጠቃቀም ውሂብ ወደ Google በራስ-ሰር በመላክ Chrome OS የተሻለ እንዲሆን ያግዙ።</translation>
-<translation id="8478823064122749032">Chromeን በእርስዎ ስልክ ላይ ይጫኑት። አንድ ኤስኤምኤስ ወደዚህ የእርስዎ የመልሶ ማግኛ ስልክ ቁጥር እንልካለን፦ <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">ለGoogle Chrome ልዩ የደህንነት ዝማኔ አሁን ተጭኗል። አሁን እንደገና ያስጀምሩ እና የእርስዎን ትሮች እንደነበሩ እንመልሳቸዋለን።</translation>
 <translation id="8521348052903287641">የmDNS ትራፊክን ለመፍቀድ የGoogle Chrome ገንቢ የውስጥ ደንብ።</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">የChrome መተግበሪያ አስጀማሪ Canary</translation>
 <translation id="8556340503434111824">አዲስ የGoogle Chrome ስሪት አለ፣ እና ከመቼውም በበለጠ ፈጣን ነው።</translation>
-<translation id="8568392309447938879">መተግበሪያዎችን ለመጠቀም ወደ Chrome በመለያ መግባት አለብዎት። ይህ Chrome መተግበሪያዎችዎን፣ ዕልባቶችዎን፣ ታሪክዎን፣ የይለፍ ቃላትዎን እና ሌሎች ቅንብሮችዎን በተለያዩ መሣሪያዎች ላይ እንዲያመሳስል ያስችለዋል።</translation>
 <translation id="8606668294522778825">Google Chrome የአሰሳ ተሞክሮዎን ለማሻሻል የድር አገልግሎቶችን ሊጠቀም ይችላል። እነዚህን አገልግሎቶች በአማራጭነት ሊያሰናክሏቸው ይችላሉ። <ph name="BEGIN_LINK" />ተጨማሪ ለመረዳት<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome መልስ አይሰጥም። አሁን ዳግም ይጀምር?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome በ1 ደቂቃ ውስጥ ዳግም ይጀመራል}one{Chrome በ# ደቂቃዎች ውስጥ ዳግም ይጀመራል}other{Chrome በ# ደቂቃዎች ውስጥ ዳግም ይጀመራል}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ar.xtb b/chrome/app/resources/google_chrome_strings_ar.xtb
index 36c4f01e..d6460d6f 100644
--- a/chrome/app/resources/google_chrome_strings_ar.xtb
+++ b/chrome/app/resources/google_chrome_strings_ar.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">‏تعذر على نظام التشغيل Chrome مزامنة البيانات. يُرجى تحديث عبارة مرور المزامنة.</translation>
 <translation id="1302523850133262269">‏يُرجى الانتظار لحين تثبيت Chrome لآخر تحديثات النظام.</translation>
 <translation id="137466361146087520">‏الإصدار التجريبي من Google Chrome</translation>
-<translation id="1393853151966637042">‏الحصول على مساعدة بشأن استخدام Chrome</translation>
 <translation id="1399397803214730675">‏يحتوي جهاز الكمبيوتر هذا على نسخة أحدث من Google Chrome. إذا كان برنامج Google Chrome لا يعمل، فالرجاء إزالة Google Chrome وإعادة المحاولة.</translation>
 <translation id="1434626383986940139">‏تطبيقات Chrome Canary</translation>
-<translation id="1469002951682717133">‏مشغل تطبيقات Chrome</translation>
 <translation id="1553358976309200471">‏تحديث Chrome‏</translation>
 <translation id="1587223624401073077">‏يستخدم Google Chrome الكاميرا.</translation>
 <translation id="1587325591171447154">‏ملف <ph name="FILE_NAME" /> ضار، لذلك فقد حظره Chrome.</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">‏سيحفظ Chrome كلمة المرور هذه في حسابك على Google ولن تحتاج إلى تذكُّرها.</translation>
 <translation id="174539241580958092">‏تعذر على Google Chrome مزامنة البيانات نظرًا لوجود خطأ في تسجيل الدخول.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">‏الحصول على مساعدة بشأن استخدام نظام التشغيل Chrome</translation>
-<translation id="1795405610103747296">‏بادِر بتثبيت Chrome على هاتفك. سنرسل رسالة قصيرة SMS إلى هاتفك: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">‏من خلال إيقاف هذا الإعداد، يمكنك تسجيل الدخول إلى "مواقع Google" مثل Gmail بدون الحاجة إلى تسجيل الدخول إلى Chrome</translation>
 <translation id="1860536484129686729">‏يحتاج Chrome إلى إذن للوصول إلى الكاميرا من أجل موقع الويب هذا.</translation>
 <translation id="1873233029667955273">‏Google Chrome ليس متصفحك التلقائي.</translation>
@@ -54,16 +50,10 @@
 <translation id="2128103434102193461">‏للاطّلاع على تفاصيل نظام التشغيل Chrome، يُرجى الانتقال إلى <ph name="LINK_BEGIN" />
       لمحة عن نظام التشغيل Chrome<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">‏يُرجى إعادة تشغيل Chrome الآن</translation>
-<translation id="216054706567564023">‏بادِر بتثبيت Chrome على هاتفك. سنرسل رسالة قصيرة SMS إلى رقم هاتف استرداد حسابك.</translation>
 <translation id="2246246234298806438">‏لا يمكن لـ Google Chrome عرض معاينة الطباعة عندما يكون عارض PDF المضمّن مفقودًا.</translation>
-<translation id="2252923619938421629">‏يمكنك المساعدة في تحسين Google Chrome بالإبلاغ عن الإعدادات الحالية</translation>
-<translation id="2286950485307333924">‏تم تسجيل دخولك الآن إلى Chrome</translation>
 <translation id="2290014774651636340">‏مفاتيح واجهة برمجة تطبيقات Google مفقودة. وسيترتب على ذلك توقف بعض وظائف Google Chrome عن العمل.</translation>
 <translation id="2290095356545025170">‏هل تريد فعلًا إزالة Google Chrome؟</translation>
 <translation id="2309047409763057870">‏هذا تثبيت ثانوي من Google Chrome، ولا يمكن جعله متصفحك التلقائي.</translation>
-<translation id="2346876346033403680">‏سجّل شخص ما الدخول من قبل إلى Chrome على هذا الكمبيوتر باعتباره <ph name="ACCOUNT_EMAIL_LAST" />. فإذا لم يكن هذا هو حسابك، فأنشئ حساب مستخدم Chrome جديدًا للإبقاء على معلوماتك بشكل منفصل.
-
-سيؤدي تسجيل الدخول على أيّ حال إلى دمج معلومات Chrome مثل الإشارات المرجعية والسجل والإعدادات الأخرى مع <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">‏يحتاج Chrome إلى إذن للوصول إلى الكاميرا والميكروفون من أجل موقع الويب هذا.</translation>
 <translation id="2429317896000329049">‏تعذر على Google Chrome مزامنة البيانات نظرًا لأن المزامنة غير متاحة في نطاقك.</translation>
 <translation id="2467438592969358367">‏يرغب Google Chrome في تصدير كلمات مرورك، لذا يُرجى كتابة كلمة مرور Windows للسماح بذلك.</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">‏تم تسجيل دخولك إلى Chrome!</translation>
 <translation id="2888126860611144412">‏لمحة عن Chrome</translation>
 <translation id="3037838751736561277">‏Google Chrome في وضع الخلفية.</translation>
-<translation id="3047079729301751317">‏سيؤدي قطع اتصال <ph name="USERNAME" /> إلى مسح السجّل والإشارات المرجعية والإعدادات وبيانات Chrome الأخرى المخزنة على هذا الجهاز. لن يتم مسح البيانات المخزنة في حساب Google ويمكن إدارتها على <ph name="GOOGLE_DASHBOARD_LINK" />لوحة تحكم Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">‏علامة تبويب Chrome</translation>
 <translation id="3080151273017101988">‏استمرار تشغيل تطبيقات الخلفية عند إغلاق Google Chrome</translation>
 <translation id="3089968997497233615">‏يتوفر إصدار جديد وأكثر أمانًا لمتصفح Google Chrome.</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">‏يمكنك مزامنة Chrome وتخصيصه على جميع أجهزتك.</translation>
 <translation id="3622797965165704966">‏الآن أصبح استخدام Chrome مع حسابك في Google وفي أجهزة الكمبيوتر المشتركة أكثر سهولة.</translation>
 <translation id="3637702109597584617">‏<ph name="TERMS_OF_SERVICE_LINK" />بنود خدمة<ph name="END_TERMS_OF_SERVICE_LINK" /> نظام التشغيل Google Chrome</translation>
-<translation id="3716182511346448902">‏تستهلك هذه الصفحة مساحة كبيرة من الذاكرة، لذلك أوقفها Chrome مؤقتًا.</translation>
 <translation id="3718181793972440140">‏سيعمل هذا على حذف عنصر واحد من هذا الجهاز. لاسترداد بياناتك لاحقًا، سجّل الدخول إلى Chrome كـ <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">‏غيّرت الإضافة "<ph name="EXTENSION_NAME" />" الصفحة التي تظهر عند بدء Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{‏يجب إعادة تشغيل Chrome في غضون يوم واحد}zero{‏يجب إعادة تشغيل Chrome في غضون # يوم}two{‏يجب إعادة تشغيل Chrome في غضون يومين}few{‏يجب إعادة تشغيل Chrome في غضون # أيام}many{‏يجب إعادة تشغيل Chrome في غضون # يومًا}other{‏يجب إعادة تشغيل Chrome في غضون # يوم}}</translation>
 <translation id="424864128008805179">‏هل تريد تسجيل الخروج من Chrome؟</translation>
 <translation id="4251615635259297716">‏هل ترغب في ربط بياناتك في Chrome بهذا الحساب؟</translation>
-<translation id="4251625577313994583">‏الحصول على Chrome على جهاز iPhone</translation>
 <translation id="4293420128516039005">‏يمكنك تسجيل الدخول لمزامنة Chrome وتخصيصه على جميع أجهزتك.</translation>
 <translation id="4328355335528187361">‏إصدار مطوّري البرامج من Google Chrome ‏(mDNS-In)</translation>
 <translation id="4331809312908958774">‏نظام تشغيل Chrome</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">‏يستخدم ذلك المدقق الإملائي نفسه الذي يتم استخدامه في "بحث Google". ويتم إرسال النص الذي تكتبه في المتصفّح إلى Google. يمكنك دائمًا تغيير هذا السلوك في الإعدادات.</translation>
 <translation id="4891791193823137474">‏دع Google Chrome يعمل في الخلفية</translation>
 <translation id="4895437082222824641">‏فتح الرابط في علامة تبويب جديدة في Chrome</translation>
-<translation id="4921569541910214635">‏هل تشارك جهاز كمبيوتر؟ يمكنك الآن إعداد Chrome بالطريقة التي تعجبك تمامًا.</translation>
 <translation id="4953650215774548573">‏تعيين Google Chrome المتصفح التلقائي</translation>
 <translation id="495931528404527476">‏في Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -176,8 +162,6 @@
 <translation id="5895138241574237353">إعادة التشغيل</translation>
 <translation id="5940385492829620908">‏الويب والإشارات المرجعية وغيرها من عناصر Chrome توجد هنا.</translation>
 <translation id="5941830788786076944">‏جعل Google Chrome المتصفّح التلقائي</translation>
-<translation id="6014844626092547096">‏لقد سجلت الدخول الآن إلى Chrome! أوقف المشرف المزامنة.</translation>
-<translation id="6040143037577758943">إغلاق</translation>
 <translation id="6070348360322141662">‏لمزيد من الأمان، سيشفِّر Google Chrome بياناتك</translation>
 <translation id="6113794647360055231">‏Chrome أصبح أفضل</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -190,8 +174,6 @@
 <translation id="6368958679917195344">‏أصبح نظام التشغيل Chrome متاحًا من خلال <ph name="BEGIN_LINK_CROS_OSS" />برنامج مفتوح المصدر<ph name="END_LINK_CROS_OSS" /> إضافي.</translation>
 <translation id="6515495397637126556">‏<ph name="PAGE_TITLE" /> - إصدار قناة مطوري البرامج من Google Chrome</translation>
 <translation id="6566149418543181476">‏جارٍ تحديث Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">‏أنت تستخدم <ph name="PROFILE_EMAIL" /> لمزامنة عناصرك في Chrome. لتحديث تفضيل المزامنة أو استخدام Chrome بدون حساب Google، يمكنك الانتقال إلى <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">‏تم النسخ إلى Chrome</translation>
 <translation id="6676384891291319759">الدخول إلى الإنترنت</translation>
 <translation id="6679975945624592337">‏السماح بتشغيل Google Chrome في الخلفية</translation>
 <translation id="6750954913813541382">‏لإصلاح الأخطاء الإملائية، يرسِل Chrome النص الذي تكتبه في المتصفّح إلى Google.</translation>
@@ -205,7 +187,6 @@
 <translation id="6989339256997917931">‏تم تحديث متصفح Google Chrome، ولكنك لم تستخدمه منذ أكثر من 30 يومًا.</translation>
 <translation id="7098166902387133879">‏يستخدم Google Chrome الميكروفون.</translation>
 <translation id="7106741999175697885">‏مدير المهام - Google Chrome</translation>
-<translation id="7164397146364144019">‏يمكنك المساعدة في جعل Chrome أكثر أمانًا وأسهل استخدامًا بإبلاغ Google تلقائيًا بتفاصيل أي مخاطر أمنية محتملة.</translation>
 <translation id="7242029209006116544">‏إنك تسجل الدخول باستخدام حساب مُدار وتمنح المشرف إمكانية التحكم في ملفك الشخصي في Google Chrome. وسيتم ربط بيانات Chrome التابعة لك، مثل التطبيقات والإشارات المرجعية والسجلّ وكلمات المرور والإعدادات الأخرى بالمستخدم <ph name="USER_NAME" />. وستتمكن من حذف هذه البيانات عبر لوحة تحكم حسابات Google، ولكنك لن تتمكن من إقران هذه البيانات بحساب آخر. ويُمكنك اختيار إنشاء ملف شخصي جديد للإبقاء على بياناتك الحالية في Chrome بشكل مستقل. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">‏يتم استخدام هذه اللغة لعرض واجهة مستخدم Google Chrome</translation>
 <translation id="7296210096911315575">معلومات مهمّة حول الأمان والاستخدام</translation>
@@ -214,7 +195,6 @@
 <translation id="7398801000654795464">‏تم تسجيل دخولك إلى Chrome باعتبارك <ph name="USER_EMAIL_ADDRESS" />. يُرجى استخدام الحساب نفسه لتسجيل الدخول مرة أخرى.</translation>
 <translation id="7408085963519505752">‏بنود نظام التشغيل Chrome</translation>
 <translation id="7419046106786626209">‏تعذر على نظام التشغيل Chrome مزامنة البيانات نظرًا لأن المزامنة غير متاحة في نطاقك.</translation>
-<translation id="7459554271817304652">‏يمكنك إعداد المزامنة لحفظ ميزات المتصفح المخصصة على الويب والدخول إليها من Google Chrome على أي كمبيوتر.</translation>
 <translation id="7486227612705979895">‏سيصل Chrome إلى Drive لإنشاء الاقتراحات في شريط العناوين.</translation>
 <translation id="7531671357096394523">‏الخروج من جميع نُسخ Chrome</translation>
 <translation id="7535429826459677826">‏إصدار مطوري البرامج من Google Chrome</translation>
@@ -238,25 +218,18 @@
 <translation id="7962410387636238736">‏لن يستلم جهاز الكمبيوتر هذا تحديثات Google Chrome لأن Windows XP وWindows Vista أصبحا غير مدعومين.</translation>
 <translation id="8008534537613507642">‏إعادة تثبيت Chrome</translation>
 <translation id="8013993649590906847">‏في حال لم تتضمن صورة ما وصفًا مفيدًا، سيحاول Chrome توفير وصف لك. لإنشاء الأوصاف، سيتم إرسال الصور إلى Google.</translation>
-<translation id="8032142183999901390">‏بعد إزالة حسابك من Chrome، قد تحتاج إلى إعادة تحميل علامات التبويب المفتوحة لتفعيلها.</translation>
 <translation id="8129812357326543296">‏&amp;حول Google Chrome</translation>
-<translation id="8179874765710681175">‏بادِر بتثبيت Chrome على هاتفك. سنرسل رسالة قصيرة إلى هاتفك.</translation>
-<translation id="825412236959742607">‏تستهلك هذه الصفحة مساحة كبيرة من الذاكرة، لذلك أزال Chrome بعض محتواها.</translation>
 <translation id="8255190535488645436">‏يستخدم Google Chrome الكاميرا والميكروفون.</translation>
 <translation id="8286862437124483331">‏يحاول Google Chrome عرض كلمات المرور. اكتب كلمة مرور Windows للسماح بذلك.</translation>
 <translation id="8290100596633877290">‏للأسف! تعطل Google Chrome. هل تريد إعادة التشغيل الآن؟</translation>
 <translation id="8342675569599923794">‏هذا الملف ضار، لذلك فقد حظره Chrome.</translation>
 <translation id="8370517070665726704">‏حقوق الطبع والنشر لعام <ph name="YEAR" /> لشركة Google LLC. جميع الحقوق محفوظة.</translation>
 <translation id="840084489713044809">‏يرغب Google Chrome في تصدير كلمات المرور.</translation>
-<translation id="8406086379114794905">‏ساهم في تحسين Chrome</translation>
 <translation id="8455999171311319804">‏اختياري: يمكنك المساعدة في تحسين نظام التشغيل Chrome عن طريق إرسال بيانات التشخيص والاستخدام إلى Google تلقائيًا.</translation>
-<translation id="8478823064122749032">‏بادِر بتثبيت Chrome على هاتفك. سنرسل رسالة قصيرة SMS إلى رقم هاتف استرداد حسابك: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">‏تم للتو تطبيق تحديث أمان خاص لمتصفِّح Google Chrome. ويمكنك الآن إعادة التشغيل وستتم استعادة علامات التبويب.</translation>
 <translation id="8521348052903287641">‏قاعدة الوارد إلى إصدار مطوري البرامج من Google Chrome للسماح بحركة مرور mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">‏مشغل تطبيقات Chrome في Canary</translation>
 <translation id="8556340503434111824">‏يتوفر إصدار جديد من Google Chrome، وهو أسرع بكثير من ذي قبل.</translation>
-<translation id="8568392309447938879">‏يلزمك تسجيل الدخول إلى Chrome لتتمكن من استخدام التطبيقات. سيتيح هذا للمتصفح Chrome مزامنة تطبيقاتك والإشارات المرجعية والسجل وكلمات المرور وغير ذلك من الإعدادات على جميع الأجهزة.</translation>
 <translation id="8606668294522778825">‏قد يستخدم Google Chrome خدمات الويب لتحسين تجربة التصفح. ويمكنك بشكل اختياري إيقاف هذه الخدمات. <ph name="BEGIN_LINK" />مزيد من المعلومات<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">‏لا يستجيب Google Chrome. هل تريد إعادة التشغيل الآن؟</translation>
 <translation id="8625237574518804553">{0,plural, =1{‏ستتم إعادة تشغيل Chrome في غضون دقيقة واحدة}zero{‏ستتم إعادة تشغيل Chrome في غضون # دقيقة}two{‏ستتم إعادة تشغيل Chrome في غضون دقيقتين}few{‏ستتم إعادة تشغيل Chrome في غضون # دقائق}many{‏ستتم إعادة تشغيل Chrome في غضون # دقيقةً}other{‏ستتم إعادة تشغيل Chrome في غضون # دقيقة}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_bg.xtb b/chrome/app/resources/google_chrome_strings_bg.xtb
index 60cbc1a0..040991f 100644
--- a/chrome/app/resources/google_chrome_strings_bg.xtb
+++ b/chrome/app/resources/google_chrome_strings_bg.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS не можа да синхронизира данните ви. Моля, актуализирайте пропуска си за синхронизиране.</translation>
 <translation id="1302523850133262269">Моля, изчакайте, докато Chrome инсталира най-новите системни актуализации.</translation>
 <translation id="137466361146087520">Google Chrome бета</translation>
-<translation id="1393853151966637042">Получаване на помощ за използването на Chrome</translation>
 <translation id="1399397803214730675">На този компютър вече има по-нова версия на Google Chrome. Ако софтуерът не работи, моля, деинсталирайте Google Chrome и опитайте отново.</translation>
 <translation id="1434626383986940139">Приложения в ранната версия на Chrome</translation>
-<translation id="1469002951682717133">Стартов панел с приложения за Chrome</translation>
 <translation id="1553358976309200471">Актуализиране на Chrome</translation>
 <translation id="1587223624401073077">Google Chrome използва камерата ви.</translation>
 <translation id="1587325591171447154">Chrome блокира „<ph name="FILE_NAME" />“, тъй като файлът е опасен.</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">Chrome ще запази тази парола в профила ви в Google. Няма да се налага да я помните.</translation>
 <translation id="174539241580958092">Google Chrome не можа да синхронизира данните ви поради грешка при влизането.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Получаване на помощ за използването на Chrome OS</translation>
-<translation id="1795405610103747296">Инсталирайте Chrome на телефона си. Ще ви изпратим SMS на него: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">С изключването на тази функция можете да влизате в сайтовете на Google, като например Gmail, без да влизате в Chrome</translation>
 <translation id="1860536484129686729">Chrome се нуждае от разрешение за достъп до камерата ви за този сайт</translation>
 <translation id="1873233029667955273">Google Chrome не е браузърът ви по подразбиране</translation>
@@ -53,16 +49,10 @@
 <translation id="2128103434102193461">За подробности относно Chrome OS, моля, вижте
 <ph name="LINK_BEGIN" />Всичко за Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Моля, рестартирайте Chrome сега</translation>
-<translation id="216054706567564023">Инсталирайте Chrome на телефона си. Ще изпратим SMS на телефонния номер за възстановяване на профила ви.</translation>
 <translation id="2246246234298806438">Google Chrome не може да покаже визуализацията за печат, когато вграденият визуализатор на PDF файлове липсва.</translation>
-<translation id="2252923619938421629">Помогнете за подобряването на Google Chrome, като подадете сигнал за текущите настройки</translation>
-<translation id="2286950485307333924">Вече влязохте в Chrome</translation>
 <translation id="2290014774651636340">Ключовете на приложния програмен интерфейс (API) на Google липсват. Някои функции на Google Chrome ще бъдат деактивирани.</translation>
 <translation id="2290095356545025170">Наистина ли искате да деинсталирате Google Chrome?</translation>
 <translation id="2309047409763057870">Тази инсталация на Google Chrome е алтернативна и не може да се зададе като браузър по подразбиране.</translation>
-<translation id="2346876346033403680">По-рано някой влезе в Chrome на този компютър като <ph name="ACCOUNT_EMAIL_LAST" />. Ако това не е профилът ви, създайте нов потребител в браузъра, за да се съхранява отделно информацията ви.
-
-В случай че влезете въпреки това, данните в Chrome като отметки, история и други настройки ще се обединят с/ъс <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome се нуждае от разрешение за достъп до камерата и микрофона ви за този сайт</translation>
 <translation id="2429317896000329049">Google Chrome не можа да синхронизира данните ви, защото синхронизирането не е налице за домейна ви.</translation>
 <translation id="2467438592969358367">Google Chrome иска да експортира паролите ви. За да разрешите това, въведете паролата си за Windows.</translation>
@@ -84,7 +74,6 @@
 <translation id="2871893339301912279">Влязохте в Chrome!</translation>
 <translation id="2888126860611144412">Всичко за Chrome</translation>
 <translation id="3037838751736561277">Google Chrome работи на заден план.</translation>
-<translation id="3047079729301751317">Прекратяването на връзката с/ъс <ph name="USERNAME" /> ще изчисти историята, отметките, настройките и другите данни в Chrome, съхранени на това устройство. Данните в профила ви в Google няма да бъдат изчистени и могат да се управляват в <ph name="GOOGLE_DASHBOARD_LINK" />Google Табло за управление<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Раздел в Chrome</translation>
 <translation id="3080151273017101988">Изпълняване на приложения на заден план при затворен браузър Google Chrome</translation>
 <translation id="3089968997497233615">Налице е нова, по-сигурна версия на Google Chrome.</translation>
@@ -105,7 +94,6 @@
 <translation id="3582972582564653026">Синхронизирайте и персонализирайте Chrome на всичките си устройства</translation>
 <translation id="3622797965165704966">Вече е по-лесно да използвате Chrome с профила си в Google и на споделени компютри.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Общи условия<ph name="END_TERMS_OF_SERVICE_LINK" /> на Google Chrome OS</translation>
-<translation id="3716182511346448902">Тази страница използва твърде много памет, така че Chrome я постави на пауза.</translation>
 <translation id="3718181793972440140">1 елемент ще се изтрие от това устройство. За да извлечете данните си по-късно, влезте в Chrome като <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Разширението „<ph name="EXTENSION_NAME" />“ промени страницата, която се показва при стартиране на Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -121,7 +109,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Повторно стартиране на Chrome до 1 ден}other{Повторно стартиране на Chrome до # дни}}</translation>
 <translation id="424864128008805179">Искате ли да излезете от Chrome?</translation>
 <translation id="4251615635259297716">Да се свържат ли данните ви в Chrome с този профил?</translation>
-<translation id="4251625577313994583">Изтеглете Chrome за своя iPhone</translation>
 <translation id="4293420128516039005">Влезте в профила си, за да синхронизирате и персонализирате Chrome на всичките си устройства</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -143,7 +130,6 @@
 <translation id="479167709087336770">Използва се същата услуга за проверка на правописа като в Google Търсене. Текстът, който въвеждате в браузъра, се изпраща до Google. Винаги можете да промените това поведение от настройките.</translation>
 <translation id="4891791193823137474">Google Chrome да се изпълнява на заден план</translation>
 <translation id="4895437082222824641">Отваряне на връзката в нов &amp;раздел на Chrome</translation>
-<translation id="4921569541910214635">Споделяте компютър? Вече можете да настроите Chrome точно по свой вкус.</translation>
 <translation id="4953650215774548573">Задаване на Google Chrome като браузър по подразбиране</translation>
 <translation id="495931528404527476">В Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Рестартиране</translation>
 <translation id="5940385492829620908">Тук ще намерите посещаваните от вас места в мрежата, отметките и другите си неща в Chrome.</translation>
 <translation id="5941830788786076944">Искам Google Chrome да бъде браузърът по подразбиране</translation>
-<translation id="6014844626092547096">Вече влязохте в Chrome! Синхронизирането е деактивирано от администратора ви.</translation>
-<translation id="6040143037577758943">Затваряне</translation>
 <translation id="6070348360322141662">За повишаване на сигурността Google Chrome ще шифрова данните ви</translation>
 <translation id="6113794647360055231">Chrome се подобри</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">Chrome OS е възможна благодарение на допълнителен <ph name="BEGIN_LINK_CROS_OSS" />софтуер с отворен код<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome се актуализира (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Използвате <ph name="PROFILE_EMAIL" /> за синхронизиране на нещата си в Chrome. За да актуализирате съответното предпочитание или да ползвате браузъра без профил в Google, посетете <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Копирано в Chrome</translation>
 <translation id="6676384891291319759">Достъп до интернет</translation>
 <translation id="6679975945624592337">Разрешаване на Google Chrome да се изпълнява на заден план</translation>
 <translation id="6750954913813541382">С цел поправка на правописни грешки Chrome изпраща до Google текста, който въвеждате в браузъра</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome е актуализиран, но не сте го използвали от поне 30 дни.</translation>
 <translation id="7098166902387133879">Google Chrome използва микрофона ви.</translation>
 <translation id="7106741999175697885">Диспечер на задачите - Google Chrome</translation>
-<translation id="7164397146364144019">Можете да ни помогнете да направим Chrome по-надежден и по-лесен за използване, като автоматично ни съобщавате подробности за инциденти, свързани със сигурността.</translation>
 <translation id="7242029209006116544">Влизате с управляван профил и давате на администратора му контрол над потребителския си профил в Google Chrome. Данните ви в браузъра, като например приложения, отметки, история, пароли и други настройки, ще се свържат за постоянно с/ъс <ph name="USER_NAME" />. Ще можете да ги изтриете чрез таблото за управление на Google Профили, но не и да ги свържете с друг профил. По избор можете да създадете нов потребителски профил, за да отделите съществуващите си данни в Chrome. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Този език служи за показване на ПИ на Google Chrome</translation>
 <translation id="7296210096911315575">Важна информация за използването и безопасността</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Бяхте влезли в Chrome като <ph name="USER_EMAIL_ADDRESS" />. Моля, използвайте същия профил, за да влезете отново.</translation>
 <translation id="7408085963519505752">Общи условия на Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS не можа да синхронизира данните ви, защото тази функция не е налице за домейна ви.</translation>
-<translation id="7459554271817304652">Настройте синхронизирането, за да запазите онлайн персонализираните функции на браузъра си и да осъществявате достъп до тях от Google Chrome на всеки компютър.</translation>
 <translation id="7486227612705979895">Chrome ще осъществява достъп до хранилището ви в Диск, за да извежда предложения в адресната лента</translation>
 <translation id="7531671357096394523">Затваряне на всички копия на Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">От сега нататък този компютър няма да получава актуализации на Google Chrome, тъй като Windows XP и Windows Vista вече не се поддържат</translation>
 <translation id="8008534537613507642">Повторно инсталиране на Chrome</translation>
 <translation id="8013993649590906847">Ако няма полезно описание за дадено изображение, Chrome ще се опита да предостави такова. За да бъдат създадени описания, съответните изображения се изпращат до Google.</translation>
-<translation id="8032142183999901390">За да влезе в сила премахването на профила ви от Chrome, може да се наложи да презаредите отворените си раздели.</translation>
 <translation id="8129812357326543296">Всичко за &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Инсталирайте Chrome на телефона си. Ще ви изпратим SMS на него.</translation>
-<translation id="825412236959742607">Тази страница използва твърде много памет, така че Chrome премахна част от съдържанието.</translation>
 <translation id="8255190535488645436">Google Chrome използва камерата и микрофона ви.</translation>
 <translation id="8286862437124483331">Google Chrome опитва да покаже паролите. За да разрешите това, въведете паролата си за Windows.</translation>
 <translation id="8290100596633877290">О, не! Google Chrome претърпя срив. Да се стартира ли отново сега?</translation>
 <translation id="8342675569599923794">Chrome блокира този файл, тъй като е опасен.</translation>
 <translation id="8370517070665726704">Авторски права <ph name="YEAR" /> г. Google LLC. Всички права запазени.</translation>
 <translation id="840084489713044809">Google Chrome иска да експортира паролите ви.</translation>
-<translation id="8406086379114794905">Помогнете за подобряването на Chrome</translation>
 <translation id="8455999171311319804">По избор: Помогнете за подобряването на Chrome OS, като автоматично изпращате до Google данни за диагностиката и употребата.</translation>
-<translation id="8478823064122749032">Инсталирайте Chrome на телефона си. Ще изпратим SMS на телефонния номер за възстановяване на профила ви: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Току-що бе приложена специална актуализация за сигурност за Google Chrome. Рестартирайте сега – ще възстановим разделите ви.</translation>
 <translation id="8521348052903287641">Правило за Google Chrome Dev за допускане на входящия трафик за mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Стартов панел за приложения в ранната версия на Chrome</translation>
 <translation id="8556340503434111824">Налице е нова версия на Google Chrome, която е по-бърза от всякога.</translation>
-<translation id="8568392309447938879">Трябва да сте влезли в Chrome, за да използвате приложения. Това разрешава на браузъра да синхронизира на устройствата вашите приложения, отметки, история, пароли и други настройки.</translation>
 <translation id="8606668294522778825">Google Chrome може да използва уеб услуги, за да подобри сърфирането ви. Ако искате, можете да ги деактивирате. <ph name="BEGIN_LINK" />Научете повече<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome блокира. Да се стартира ли отново сега?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome ще се стартира отново след 1 минута}other{Chrome ще се стартира отново след # минути}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_bn.xtb b/chrome/app/resources/google_chrome_strings_bn.xtb
index 7f8c1aea..17e65c3 100644
--- a/chrome/app/resources/google_chrome_strings_bn.xtb
+++ b/chrome/app/resources/google_chrome_strings_bn.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS আপনার ডেটা সিঙ্ক করতে পারেনি৷ দয়া করে আপনার সিঙ্ক পাসফ্রেজ আপডেট করুন৷</translation>
 <translation id="1302523850133262269">Chrome যখন সাম্প্রতিক সিস্টেম আপডেটগুলিকে ইনস্টল করে তখন দয়া করে অপেক্ষা করুন৷</translation>
 <translation id="137466361146087520">Google Chrome বিটা</translation>
-<translation id="1393853151966637042">Chrome ব্যবহার করে সাহায্য নিন</translation>
 <translation id="1399397803214730675">এই কম্পিউটারটিতে ইতিমধ্যে Google Chrome-এর অতি সাম্প্রতিক ভার্সন রয়েছে৷ যদি সফ্টওয়্যারটি কাজ না করে তবে দয়া করে Google Chrome আনইনস্টল করুন এবং এটি আবার ডাউনলোড করুন৷</translation>
 <translation id="1434626383986940139">Chrome Canary অ্যাপ্লিকেশানগুলি</translation>
-<translation id="1469002951682717133">Chrome অ্যাপ লঞ্চার</translation>
 <translation id="1553358976309200471">Chrome আপডেট করুন</translation>
 <translation id="1587223624401073077">Google Chrome আপনার ক্যামেরা ব্যবহার করছে৷</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> বিপজ্জনক, তাই Chrome এটিকে অবরুদ্ধ করেছে।</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">Google অ্যাকাউন্টে এই পাসওয়ার্ডটি Chrome সেভ করবে। আপনার এটি মনে রাখার দরকার নেই।</translation>
 <translation id="174539241580958092">সাইন ইনে ত্রুটির কারণে Google Chrome আপনার ডেটা সিঙ্ক করতে পারেনি৷</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS ব্যবহার করে সাহায্য নিন</translation>
-<translation id="1795405610103747296">আপনার ফোনে Chrome ইনস্টল করুন। আমরা আপনার ফোনে <ph name="PHONE_NUMBER" /> একটি এসএমএস পাঠাব</translation>
 <translation id="1812689907177901597">এটি বন্ধ করার মানে হল, আপনি Chrome-এ সাইন-ইন না করে Gmail এর মতো Google সাইটগুলিতে সাইন-ইন করতে পারেন</translation>
 <translation id="1860536484129686729">এই সাইটটির জন্য Chrome কে আপনার ক্যামেরায় অ্যাক্সেস দিতে হবে</translation>
 <translation id="1873233029667955273">Google Chrome আপনার ডিফল্ট ব্রাউজার নয়</translation>
@@ -54,16 +50,10 @@
 <translation id="2128103434102193461">Chrome OS-এর বিবরণ পেতে <ph name="LINK_BEGIN" />
       Chrome OS সম্পর্কে<ph name="LINK_END" /> পৃষ্ঠা দেখুন</translation>
 <translation id="2151406531797534936">এখনই Chrome রিস্টার্ট করুন</translation>
-<translation id="216054706567564023">আপনার ফোনে Chrome ইনস্টল করুন। আমরা আপনার অ্যাকাউন্ট ফিরিয়ে আনার ফোন নম্বরে একটি এসএমএস পাঠাব।</translation>
 <translation id="2246246234298806438">বিলট-ইন PDF viewer অনুপস্থিত থাকার সময়ে Google Chrome প্রিন্ট প্রিভিউ দেখাতে পারে না৷</translation>
-<translation id="2252923619938421629">বর্তমান সেটিংস রিপোর্ট করে Google Chrome আরও ভালো করে তুলতে সাহায্য করুন</translation>
-<translation id="2286950485307333924">আপনি এখন Chrome এ প্রবেশ করেছেন</translation>
 <translation id="2290014774651636340">Google এপিআই কীগুলি অনুপস্থিত৷ Google Chrome-এর কিছু বৈশিষ্ট্য নিষ্ক্রিয় হয়ে যাবে৷</translation>
 <translation id="2290095356545025170">আপনি কি Google Chrome আনইনস্টল করার ব্যাপারে নিষ্চিত ?</translation>
 <translation id="2309047409763057870">এটা Google Chrome-এর সেকেন্ডারি ইনস্টলেশন এবং একে আপনার ডিফল্ট ব্রাউজার করা যাবে না।</translation>
-<translation id="2346876346033403680">আগে কোনো একজন এই কম্পিউটারে <ph name="ACCOUNT_EMAIL_LAST" /> হিসেবে Chrome-এ সাইন-ইন করেছিল৷ যদি সেটি আপনার অ্যাকাউন্ট না হয় তাহলে, আপনার তথ্য আলাদা করে রাখতে একটি নতুন Chrome ব্যবহারকারী তৈরি করুন৷
-
-যেকোনো উপায়ে সাইন-ইন করা হলে তা বুকমার্কগুলি, ইতিহাস এবং অন্যান্য সেটিংসের মত Chrome তথ্যকে <ph name="ACCOUNT_EMAIL_NEW" />-এ মার্জ করবে৷</translation>
 <translation id="2348335408836342058">এই সাইটটির জন্য Chrome কে আপনার ক্যামেরা এবং মাইক্রোফোনে অ্যাক্সেস দিতে হবে</translation>
 <translation id="2429317896000329049">আপনার ডোমেনে সিঙ্ক উপলভ্য না থাকার কারণে Google Chrome সিঙ্ক করতে পারেনি৷</translation>
 <translation id="2467438592969358367">Google Chrome আপনার পাসওয়ার্ড এক্সপোর্ট করতে চাইছে। অনুমতি দিতে Windows এর পাসওয়ার্ড টাইপ করুন।</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">আপনি Chrome এ প্রবেশ করেছেন৷</translation>
 <translation id="2888126860611144412">Chrome সম্বন্ধে</translation>
 <translation id="3037838751736561277">Google Chrome পটভূমি মোডে রয়েছে।</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> ডিসকানেক্ট করলে তা আপনার ইতিহাস, বুকমার্ক, সেটিংস এবং এই ডিভাইসে সঞ্চিত অন্যান্য Chrome ডেটা মুছে দেবে। আপনার Google অ্যাকাউন্টে সঞ্চিত ডেটা সাফ করা হবে না এবং <ph name="GOOGLE_DASHBOARD_LINK" />Google ড্যাশবোর্ড <ph name="END_GOOGLE_DASHBOARD_LINK" />-এ তা পরিচালনা করা যেতে পারে।</translation>
 <translation id="3065168410429928842">Chrome ট্যাব</translation>
 <translation id="3080151273017101988">Google Chrome বন্ধ হলে পশ্চাদপট অ্যাপ্লিকেশানের চলা অবিরত রাখুন</translation>
 <translation id="3089968997497233615">Google Chrome-এর একটি নতুন, তুলনামূলক নিরাপদ ভার্সন উপলব্ধ৷</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">আপনার সব ডিভাইস জুড়ে Chrome সিঙ্ক করুন এবং নিজের মতো সাজিয়ে নিন</translation>
 <translation id="3622797965165704966">এখন আপনার Google অ্যাকাউন্ট ও শেয়ার করা কম্পিউটারগুলিতে Chrome ব্যবহার করা আরো সহজ৷</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />পরিষেবার শর্তাবলী<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">এই পৃষ্ঠাটি খুব বেশি মেমরি ব্যবহার করছে তাই Chrome এটি বিরত রেখেছে।</translation>
 <translation id="3718181793972440140">এটি এই ডিভাইস থেকে ১টি আইটেম মুছে দেবে। আপনার ডেটা পরে পুনরুদ্ধার করার জন্য, Chrome-এ <ph name="USER_EMAIL" /> হিসেবে সাইন-ইন করুন।</translation>
 <translation id="3735758079232443276">আপনি Chrome চালু করলে কোন পৃষ্ঠাটি দেখানো হবে তা "<ph name="EXTENSION_NAME" />" এক্সটেনশনটি পরিবর্তন করেছে।</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Chrome এক দিনের মধ্যে আবার লঞ্চ করুন}one{Chrome # দিনের মধ্যে আবার লঞ্চ করুন}other{Chrome # দিনের মধ্যে আবার লঞ্চ করুন}}</translation>
 <translation id="424864128008805179">Chrome থেকে সাইন-আউট করবেন?</translation>
 <translation id="4251615635259297716">এই অ্যাকাউন্টে আপনার Chrome ডেটা লিঙ্ক করবেন?</translation>
-<translation id="4251625577313994583">আপনার iPhone এ Chrome ইনস্টল করুন</translation>
 <translation id="4293420128516039005">আপনার সব ডিভাইস জুড়ে Chrome সিঙ্ক করতে এবং নিজের মতো সাজিয়ে নিতে সাইন-ইন করুন</translation>
 <translation id="4328355335528187361">Google Chrome ডেভেলপার (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">এটি Google সার্চ-এ যে বানান পরীক্ষা করার টুল ব্যবহার করা হয় সেটিই ব্যবহার করে। আপনি ব্রাউজারে যে টেক্সট লেখেন, সেটি Google-এ পাঠানো হয়। সেটিংস থেকে আপনি এটি পরিবর্তন করতে পারেন।</translation>
 <translation id="4891791193823137474">Google Chrome-কে ব্যাকগ্রাউন্ডে চলতে দিন</translation>
 <translation id="4895437082222824641">নতুন Chrome ট্যাবে লিঙ্ক খুলুন</translation>
-<translation id="4921569541910214635">একটি কম্পিউটার শেয়ার করবেন? এখন আপনি আপনার পছন্দমতো উপায়ে Chrome কে সেট-আপ করতে পারেন৷</translation>
 <translation id="4953650215774548573">আপনার ডিফল্ট ব্রাউজার হিসাবে Google Chrome-কে সেট করুন</translation>
 <translation id="495931528404527476">Chrome-এ</translation>
 <translation id="4990567037958725628">Google Chrome  ক্যানারি</translation>
@@ -176,8 +162,6 @@
 <translation id="5895138241574237353">পুনর্সূচনা</translation>
 <translation id="5940385492829620908">আপনার ওয়েব, বুকমার্ক এবং Chrome-এর অন্যান্য জিনিস এখানে রয়েছে৷</translation>
 <translation id="5941830788786076944">Google Chrome-কে ডিফল্ট ব্রাউজার করুন</translation>
-<translation id="6014844626092547096">আপনি এখন Chrome এ প্রবেশ করেছেন! আপনার প্রশাসক দ্বারা সিঙ্ক অক্ষম করা আছে৷</translation>
-<translation id="6040143037577758943">বন্ধ</translation>
 <translation id="6070348360322141662">অতিরিক্ত নিরাপত্তার জন্য, Google Chrome আপনার ডেটা এনক্রিপ্ট করবে</translation>
 <translation id="6113794647360055231">Chrome আরও ভাল হয়ে উঠেছে</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -190,8 +174,6 @@
 <translation id="6368958679917195344">Chrome OS সম্ভবত অতিরিক্ত <ph name="BEGIN_LINK_CROS_OSS" />ওপেন সোর্স সফ্টওয়্যার<ph name="END_LINK_CROS_OSS" /> দিয়ে তৈরি৷</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome আপডেট হচ্ছে (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">আপনার Chrome জিনিসপত্র সমন্বয় করার জন্য আপনি <ph name="PROFILE_EMAIL" /> ব্যবহার করছেন৷ আপনার সিঙ্ক পছন্দগুলি আপডেট করতে বা Google অ্যাকাউন্ট ছাড়া Chrome ব্যবহার করতে <ph name="SETTINGS_LINK" />-এ যান৷</translation>
-<translation id="6600954340915313787">Chrome-এ প্রতিলিপি করা হয়েছে</translation>
 <translation id="6676384891291319759">ইন্টারনেটটি অ্যাক্সেস করুন</translation>
 <translation id="6679975945624592337">Google Chrome-কে ব্যাকগ্রাউন্ডে চলতে দিন</translation>
 <translation id="6750954913813541382">বানান ভুল ঠিক করতে, আপনি ব্রাউজারে যে টেক্সট লেখেন Chrome সেটি Google-এ পাঠায়</translation>
@@ -205,7 +187,6 @@
 <translation id="6989339256997917931">Google Chrome আপডেট হয়েছে তবে আপনি এটি কমপক্ষে 30 দিন যাবত ব্যবহার করেন নি৷</translation>
 <translation id="7098166902387133879">Google Chrome আপনার মাইক্রোফোন ব্যবহার করছে৷</translation>
 <translation id="7106741999175697885">কার্য পরিচালক - Google Chrome</translation>
-<translation id="7164397146364144019">আপনি Google-এ নিরাপত্তার সম্ভাব্য লঙ্ঘনের ঘটনাগুলি অটোমেটিক রিপোর্ট করার মাধ্যমে Chrome-কে নিরাপদ ও সহজে ব্যবহারযোগ্য করতে তুলতে সাহায্য করতে পারেন।</translation>
 <translation id="7242029209006116544">আপনি একটি পরিচালিত অ্যাকাউন্টের মাধ্যমে সাইন-ইন করছেন এবং এর অ্যাডমিনিস্ট্রেটরকে আপনার Google Chrome প্রোফাইলের উপরে নিয়ন্ত্রণ দিচ্ছেন৷ আপনার Chrome ডেটা, যেমন অ্যাপ, বুকমার্ক, ইতিহাস, পাসওয়ার্ড এবং অন্যান্য সেটিংস <ph name="USER_NAME" /> এতে স্থায়ীভাবে সম্পৃক্ত হবে৷ আপনি Google অ্যাকাউন্টের ড্যাশবোর্ডের মাধ্যমে এই ডেটাগুলি মুছতে পারবেন, কিন্তু অন্য অ্যাকাউন্টের সাথে এই ডেটা সংশ্লিষ্ট করতে পারবেন না৷ বিকল্প হিসেবে আপনি আপনার বিদ্যমান Chrome ডেটা আলাদা রাখার জন্য একটি নতুন প্রোফাইল তৈরি করতে পারেন৷ <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Google Chrome UI-এ দেখানোর জন্য এই ভাষা ব্যবহার করা হয়</translation>
 <translation id="7296210096911315575">ব্যবহার ও নিরাপত্তা সম্পর্কে গুরুত্বপূর্ণ তথ্য</translation>
@@ -214,7 +195,6 @@
 <translation id="7398801000654795464">আপনি <ph name="USER_EMAIL_ADDRESS" /> হিসাবে Chrome-এ প্রবেশ করেছেন৷ আবার সাইন-ইন করতে একই অ্যাকাউন্ট ব্যবহার করুন৷</translation>
 <translation id="7408085963519505752">Chrome OS শর্তাবলী</translation>
 <translation id="7419046106786626209">আপনার ডোমেনে সিঙ্ক উপলভ্য না থাকার কারণে Chrome OS আপনার ডেটা সিঙ্ক করতে পারেনি৷</translation>
-<translation id="7459554271817304652">ওয়েবে আপনার নিজের মতো করে ব্রাউজার ফিচার সেভ করতে এবং যেকোন কম্পিউটারে Google Chrome থেকে সাইন-ইন সিঙ্ক সেট-আপ করুন৷</translation>
 <translation id="7486227612705979895">অ্যাড্রেস বারে সাজেশন দেওয়ার জন্য Chrome আপনার ড্রাইভ অ্যাক্সেস করবে</translation>
 <translation id="7531671357096394523">Chrome-এর সবকটি কপি বন্ধ করুন।</translation>
 <translation id="7535429826459677826">Google Chrome ডেভেলপার</translation>
@@ -238,25 +218,18 @@
 <translation id="7962410387636238736">Windows XP ও Windows Vista আর সমর্থিত না হওয়ার জন্য এই কম্পিউটারে আর Google Chrome আপডেট পাবে না</translation>
 <translation id="8008534537613507642">Chrome আবার ইন্সটল করুন</translation>
 <translation id="8013993649590906847">যদি ছবিতে প্রয়োজনীয় বিবরণ দেওয়া না থাকে, তাহলে Chrome আপনাকে একটি বিবরণ দেওয়ার চেষ্টা করবে। বিবরণ তৈরির জন্য, Google-এ ছবি পাঠানো হয়।</translation>
-<translation id="8032142183999901390">Chrome থেকে আপনার অ্যাকাউন্ট সরানোর পরে, কার্যকর করতে আপনাকে খোলা ট্যাবগুলিকে রিলোড করার প্রয়োজন হতে পারে।</translation>
 <translation id="8129812357326543296">&amp;Google Chrome সম্বন্ধে</translation>
-<translation id="8179874765710681175">আপনার ফোনে Chrome ইনস্টল করুন। আমরা আপনার ফোনে একটি এসএমএস পাঠাব।</translation>
-<translation id="825412236959742607">এই পৃষ্ঠাটি খুব বেশি মেমরি ব্যবহার করছে তাই Chrome কিছু কন্টেন্ট সরিয়ে দিয়েছে।</translation>
 <translation id="8255190535488645436">Google Chrome আপনার ক্যামেরা এবং মাইক্রোফোন ব্যবহার করছে৷</translation>
 <translation id="8286862437124483331">Google Chrome পাসওয়ার্ডগুলি দেখানোর চেষ্টা করছে। এটির অনুমতি দিতে আপনার Windows পাসওয়ার্ড টাইপ করুন।</translation>
 <translation id="8290100596633877290">হোয়া! Google Chrome ক্র্যাশ হয়েছে৷ এখনই পুনঃলঞ্চ করবেন?</translation>
 <translation id="8342675569599923794">এই ফাইলটি বিপজ্জনক, তাই Chrome এটিকে অবরুদ্ধ করেছে।</translation>
 <translation id="8370517070665726704">কপিরাইট <ph name="YEAR" /> Google LLC সব স্বত্ব সংরক্ষিত আছে।</translation>
 <translation id="840084489713044809">Google Chrome আপনার পাসওয়ার্ড এক্সপোর্ট করতে চাইছে।</translation>
-<translation id="8406086379114794905">Chrome আরও ভালো করে তুলতে সাহায্য করুন</translation>
 <translation id="8455999171311319804">ঐচ্ছিক: ডায়াগনস্টিক ও ব্যবহারের ডেটা অটোমেটিক Google-এ পাঠিয়ে Chrome OS-কে আরও ভাল করে তুলতে সাহায্য করুন।</translation>
-<translation id="8478823064122749032">আপনার ফোনে Chrome ইনস্টল করুন। আমরা আপনার অ্যাকাউন্ট ফিরিয়ে আনার ফোন নম্বরে <ph name="PHONE_NUMBER" /> একটি এসএমএস পাঠাব</translation>
 <translation id="8498858610309223613">Google Chrome-এর জন্য একটি বিশেষ নিরাপত্তা আপডেট এইমাত্র প্রয়োগ করা হয়েছে। এখনই রিস্টার্ট করুন এবং আপনার ট্যাব আমরা রিস্টোর করব।</translation>
 <translation id="8521348052903287641">mDNS ট্রাফিকের অনুমতি দিতে Google Chrome ডেভেলপারের জন্য ইনবাউন্ড নিয়ম।</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome অ্যাপ লঞ্চার Canary</translation>
 <translation id="8556340503434111824">Google Chrome-এর একটি নতুন ভার্সন উপলভ্য এবং এটি আগের তুলনায় দ্রুততর৷</translation>
-<translation id="8568392309447938879">অ্যাপগুলি ব্যবহার করতে আপনাকে Chrome-এ সাইন-ইন করতে হবে৷ এটি Chrome কে আপনার অ্যাপ, বুকমার্ক, ইতিহাস, পাসওয়ার্ডগুলি এবং ডিভাইস জুড়ে অন্যান্য সেটিংস সিঙ্ক করার অনুমতি দেয়৷</translation>
 <translation id="8606668294522778825">Google Chrome আপনার ব্রাউজিংয়ের অভিজ্ঞতাকে উন্নত করতে ওয়েব পরিষেবাগুলি ব্যবহার করতে পারে৷ আপনি আপনার ইচ্ছা অনুযায়ী এই পরিষেবাগুলিকে বন্ধ করতে পারেন৷ <ph name="BEGIN_LINK" />আরও জানুন<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome প্রতিক্রিয়া করছে না৷ এখনই পুনঃলঞ্চ করবেন?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome ১ মিনিটের মধ্যে আবার লঞ্চ হবে}one{Chrome # মিনিটের মধ্যে আবার লঞ্চ হবে}other{Chrome # মিনিটের মধ্যে আবার লঞ্চ হবে}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ca.xtb b/chrome/app/resources/google_chrome_strings_ca.xtb
index bbb246b..9b6d283 100644
--- a/chrome/app/resources/google_chrome_strings_ca.xtb
+++ b/chrome/app/resources/google_chrome_strings_ca.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS no ha pogut sincronitzar les vostres dades. Actualitzeu la contrasenya de sincronització.</translation>
 <translation id="1302523850133262269">Espereu mentre Chrome instal·la les actualitzacions més recents del sistema.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Obtén ajuda per fer servir Chrome</translation>
 <translation id="1399397803214730675">Aquest equip ja disposa d'una versió més recent de Google Chrome. Si el programari no funciona, desinstal·leu Google Chrome i torneu-ho a provar.</translation>
 <translation id="1434626383986940139">Aplicacions de Chrome Canary</translation>
-<translation id="1469002951682717133">Menú d'aplicacions de Chrome</translation>
 <translation id="1553358976309200471">Actualitza Chrome</translation>
 <translation id="1587223624401073077">Google Chrome està utilitzant la càmera.</translation>
 <translation id="1587325591171447154">Chrome ha bloquejat <ph name="FILE_NAME" /> perquè és perillós.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome desarà aquesta contrasenya al Compte de Google. No caldrà que la recordis.</translation>
 <translation id="174539241580958092">Google Chrome no ha pogut sincronitzar les dades a causa d'un error en iniciar la sessió.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Obtén ajuda per a l'ús de Chrome OS</translation>
-<translation id="1795405610103747296">Instal·la Chrome al telèfon. T'enviarem un SMS al telèfon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">En desactivar aquesta opció, pots iniciar la sessió en llocs web de Google, com ara Gmail, sense iniciar la sessió a Chrome</translation>
 <translation id="1860536484129686729">Per visitar aquest lloc web, Chrome necessita permís per accedir a la càmera</translation>
 <translation id="1873233029667955273">Google Chrome no és el navegador predeterminat</translation>
@@ -50,16 +46,10 @@
 <translation id="2123055963409958220">Informa de la <ph name="BEGIN_LINK" />configuració actual<ph name="END_LINK" /> per ajudar-nos a millorar Chrome</translation>
 <translation id="2128103434102193461">Per obtenir informació sobre Chrome OS, consulta <ph name="LINK_BEGIN" />Sobre Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Reinicia Chrome ara</translation>
-<translation id="216054706567564023">Instal·la Chrome al telèfon. T'enviarem un SMS al número de telèfon de recuperació del compte.</translation>
 <translation id="2246246234298806438">Google Chrome no pot mostrar la previsualització d'impressió perquè falta el lector de PDF incorporat.</translation>
-<translation id="2252923619938421629">Informa de la configuració actual per ajudar-nos a millorar Google Chrome</translation>
-<translation id="2286950485307333924">Heu iniciat la sessió a Chrome</translation>
 <translation id="2290014774651636340">Falten les claus de l'API de Google. Es desactivaran algunes de les funcionalitats de Google Chrome.</translation>
 <translation id="2290095356545025170">Confirmeu que voleu desinstal·lar Google Chrome?</translation>
 <translation id="2309047409763057870">Aquesta és una instal·lació secundària de Google Chrome i no pot definir-se com a navegador predeterminat.</translation>
-<translation id="2346876346033403680">Algú ha iniciat anteriorment la sessió a Chrome en aquest ordinador com a <ph name="ACCOUNT_EMAIL_LAST" />. Si no és el vostre compte, creeu un usuari de Chrome per mantenir la informació separada.
-
-En iniciar la sessió, sigui amb l'usuari que sigui, es combinarà amb <ph name="ACCOUNT_EMAIL_NEW" /> la informació de Chrome com ara adreces d'interès, historial i altres configuracions.</translation>
 <translation id="2348335408836342058">Per visitar aquest lloc web, Chrome necessita permís per accedir a la càmera i al micròfon</translation>
 <translation id="2429317896000329049">Google Chrome no ha pogut sincronitzar les dades perquè la sincronització no està disponible per al vostre domini.</translation>
 <translation id="2467438592969358367">Google Chrome vol exportar les teves contrasenyes. Escriu la contrasenya de Windows per permetre-ho.</translation>
@@ -81,7 +71,6 @@
 <translation id="2871893339301912279">Teniu la sessió iniciada a Chrome.</translation>
 <translation id="2888126860611144412">Sobre Chrome</translation>
 <translation id="3037838751736561277">Google Chrome està en mode de segon pla.</translation>
-<translation id="3047079729301751317">Si desconnecteu <ph name="USERNAME" /> s'esborraran l'historial, les adreces d'interès, la configuració i totes les dades de Chrome que hi hagi desades en aquest dispositiu. Les dades emmagatzemades al compte de Google no s'esborraran, i es poden gestionar des del <ph name="GOOGLE_DASHBOARD_LINK" />Tauler de Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Pestanya de Chrome</translation>
 <translation id="3080151273017101988">Continua executant aplicacions de segon pla en tancar Google Chrome</translation>
 <translation id="3089968997497233615">Hi ha disponible una nova versió més segura de Google Chrome.</translation>
@@ -102,7 +91,6 @@
 <translation id="3582972582564653026">Sincronitza i personalitza Chrome en tots els teus dispositius</translation>
 <translation id="3622797965165704966">Ara resulta més fàcil utilitzar Chrome amb el vostre compte de Google i en ordinadors compartits.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Condicions del servei<ph name="END_TERMS_OF_SERVICE_LINK" /> de Google Chrome OS</translation>
-<translation id="3716182511346448902">Com que aquesta pàgina fa servir massa memòria, Chrome l'ha posat en pausa.</translation>
 <translation id="3718181793972440140">Amb aquesta acció, se suprimirà 1 element d'aquest dispositiu. Per recuperar les teves dades més endavant, inicia la sessió a Chrome com a <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">L'extensió <ph name="EXTENSION_NAME" /> ha canviat la pàgina que es mostra quan inicieu Chrome.</translation>
 <translation id="3780814664026482060">Chrome: <ph name="PAGE_TITLE" /></translation>
@@ -118,7 +106,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Reinicia Chrome en 1 dia}other{Reinicia Chrome en # dies}}</translation>
 <translation id="424864128008805179">Vols tancar la sessió de Chrome?</translation>
 <translation id="4251615635259297716">Voleu enllaçar les vostres dades de Chrome amb aquest compte?</translation>
-<translation id="4251625577313994583">baixa Chrome al dispositiu iPhone</translation>
 <translation id="4293420128516039005">Inicia la sessió per sincronitzar i personalitzar Chrome en tots els teus dispositius</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -140,7 +127,6 @@
 <translation id="479167709087336770">Fa servir el mateix corrector ortogràfic que s'utilitza a la Cerca de Google. El text que escrius al navegador s'envia a Google. Pots canviar aquest comportament sempre que vulguis a la configuració.</translation>
 <translation id="4891791193823137474">Permet que Google Chrome s'executi en procés de fons</translation>
 <translation id="4895437082222824641">Obre l'enllaç en una pes&amp;tanya nova a Chrome</translation>
-<translation id="4921569541910214635">Si compartiu un ordinador, ara podeu configurar Chrome com vulgueu.</translation>
 <translation id="4953650215774548573">Defineix Google Chrome com a navegador predeterminat</translation>
 <translation id="495931528404527476">A Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -169,8 +155,6 @@
 <translation id="5895138241574237353">Reinicia</translation>
 <translation id="5940385492829620908">El vostre web, les adreces d'interès i altres coses de Chrome resideixen aquí.</translation>
 <translation id="5941830788786076944">Estableix Google Chrome com el navegador predeterminat</translation>
-<translation id="6014844626092547096">Heu iniciat la sessió a Chrome. El vostre administrador ha desactivat la sincronització.</translation>
-<translation id="6040143037577758943">Tanca</translation>
 <translation id="6070348360322141662">Per a més seguretat, Google Chrome encriptarà les teves dades</translation>
 <translation id="6113794647360055231">Chrome és millor que mai</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -183,8 +167,6 @@
 <translation id="6368958679917195344">Chrome OS és possible gràcies a <ph name="BEGIN_LINK_CROS_OSS" />programari addicional de codi obert<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">S'està actualitzant Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Utilitzeu <ph name="PROFILE_EMAIL" /> per sincronitzar el contingut de Chrome. Per modificar la preferència de sincronització o per utilitzar Chrome sense cap compte de Google, dirigiu-vos a <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Copiada de Chrome</translation>
 <translation id="6676384891291319759">Accedeix a Internet</translation>
 <translation id="6679975945624592337">Permet que Google Chrome s'executi en segon pla</translation>
 <translation id="6750954913813541382">Per corregir els errors d'ortografia, Chrome envia a Google el text que escrius al navegador</translation>
@@ -198,7 +180,6 @@
 <translation id="6989339256997917931">Google Chrome està actualitzat, però no l'heu utilitzat durant un mínim de 30 dies.</translation>
 <translation id="7098166902387133879">Google Chrome està utilitzant el micròfon.</translation>
 <translation id="7106741999175697885">Gestor de tasques - Google Chrome</translation>
-<translation id="7164397146364144019">Si voleu col·laborar perquè Chrome sigui més segur i fàcil d'utilitzar, informeu automàticament Google dels detalls sobre possibles incidències de seguretat.</translation>
 <translation id="7242029209006116544">Esteu a punt d'iniciar la sessió amb un compte gestionat i d'atorgar el control del vostre perfil de Google Chrome a l'administrador corresponent. Les vostres dades de Chrome, com ara aplicacions, adreces d'interès, historial, contrasenyes i altres configuracions, s'enllaçaran permanentment amb <ph name="USER_NAME" />. Podreu suprimir aquestes dades mitjançant el Tauler de Comptes de Google, però no les podreu associar amb un altre compte. De manera opcional, podeu crear un perfil nou per mantenir les vostres dades de Chrome a part. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">És l'idioma en què es mostra la IU de Google Chrome</translation>
 <translation id="7296210096911315575">Informació important d'ús i de seguretat</translation>
@@ -207,7 +188,6 @@
 <translation id="7398801000654795464">Teníeu la sessió iniciada a Chrome com a <ph name="USER_EMAIL_ADDRESS" />. Utilitzeu el mateix compte per tornar-hi a iniciar la sessió.</translation>
 <translation id="7408085963519505752">Condicions de Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS no ha pogut sincronitzar les vostres dades perquè la sincronització no està disponible per al vostre domini.</translation>
-<translation id="7459554271817304652">Configureu la sincronització per desar al web les funcions personalitzades del navegador i per accedir-hi des de qualsevol ordinador mitjançant Google Chrome.</translation>
 <translation id="7486227612705979895">Chrome accedirà a Drive per fer suggeriments a la barra d'adreces</translation>
 <translation id="7531671357096394523">Tanca totes les còpies de Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -231,25 +211,18 @@
 <translation id="7962410387636238736">Aquest ordinador ja no rebrà més actualitzacions de Google Chrome perquè Windows XP i Windows Vista ja no són compatibles</translation>
 <translation id="8008534537613507642">Torna a instal·lar Chrome</translation>
 <translation id="8013993649590906847">Si una imatge no té una descripció útil, Chrome provarà d'oferir-te'n una. Per crear les descripcions, les imatges s'envien a Google.</translation>
-<translation id="8032142183999901390">Després de suprimir el vostre compte de Chrome, pot ser que hàgiu de tornar a carregar les pestanyes obertes.</translation>
 <translation id="8129812357326543296">Quant a &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Instal·la Chrome al telèfon. T'enviarem un SMS al telèfon.</translation>
-<translation id="825412236959742607">Com que aquesta pàgina fa servir massa memòria, Chrome n'ha suprimit contingut.</translation>
 <translation id="8255190535488645436">Google Chrome està utilitzant la càmera i el micròfon.</translation>
 <translation id="8286862437124483331">Google Chrome està provant de mostrar contrasenyes. Escriviu la vostra contrasenya de Windows per permetre-ho.</translation>
 <translation id="8290100596633877290">Google Chrome s'ha bloquejat. Voleu tornar-lo a iniciar?</translation>
 <translation id="8342675569599923794">Chrome ha bloquejat aquest fitxer perquè és perillós.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Tots els drets reservats.</translation>
 <translation id="840084489713044809">Google Chrome vol exportar les teves contrasenyes.</translation>
-<translation id="8406086379114794905">Ajudeu a millorar Chrome</translation>
 <translation id="8455999171311319804">Opcional: ajuda'ns a millorar Chrome OS enviant automàticament dades de diagnòstic i d'ús a Google.</translation>
-<translation id="8478823064122749032">Instal·la Chrome al telèfon. T'enviarem un SMS al número de telèfon de recuperació del compte: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">S'acaba d'aplicar una actualització de seguretat especial per a Google Chrome. Reinicia el navegador i restaurarem les pestanyes.</translation>
 <translation id="8521348052903287641">Regla d'entrada de Google Chrome Dev per permetre el trànsit d'mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Menú d'aplicacions de Chrome per a Canary</translation>
 <translation id="8556340503434111824">Hi ha disponible una nova versió de Google Chrome, i és més ràpida que mai.</translation>
-<translation id="8568392309447938879">Heu de tenir la sessió iniciada a Chrome per utilitzar les aplicacions. Això permet que Chrome sincronitzi les aplicacions, les adreces d'interès, l'historial, les contrasenyes i altres configuracions a tots els dispositius.</translation>
 <translation id="8606668294522778825">Google Chrome pot utilitzar serveis web per millorar la vostra experiència de  navegació, però podeu desactivar-los si voleu. <ph name="BEGIN_LINK" />Més informació<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome no respon. Voleu tornar-lo a iniciar ara?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome es reiniciarà d'aquí a 1 minut}other{Chrome es reiniciarà d'aquí a # minuts}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_cs.xtb b/chrome/app/resources/google_chrome_strings_cs.xtb
index be5a131..45fb9727 100644
--- a/chrome/app/resources/google_chrome_strings_cs.xtb
+++ b/chrome/app/resources/google_chrome_strings_cs.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS vaše data nemohl synchronizovat. Aktualizujte prosím heslovou frázi pro synchronizaci.</translation>
 <translation id="1302523850133262269">Počkejte prosím, než Chrome nainstaluje nejnovější aktualizace systému.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Pomoc s používáním Chromu</translation>
 <translation id="1399397803214730675">V tomto počítači je již nainstalována novější verze prohlížeče Google Chrome. Jestliže software nefunguje, odinstalujte prosím prohlížeč Google Chrome a zkuste to znovu.</translation>
 <translation id="1434626383986940139">Aplikace Chrome Canary</translation>
-<translation id="1469002951682717133">Spouštěč aplikací Chrome</translation>
 <translation id="1553358976309200471">Aktualizovat Chrome</translation>
 <translation id="1587223624401073077">Google Chrome používá vaši kameru.</translation>
 <translation id="1587325591171447154">Soubor <ph name="FILE_NAME" /> je nebezpečný, proto jej Chrome zablokoval.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome heslo uloží do vašeho účtu Google. Nebudete si ho muset pamatovat.</translation>
 <translation id="174539241580958092">Google Chrome vaše data nemohl synchronizovat z důvodu chyby při přihlášení.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Pomoc s používáním systému Chrome OS</translation>
-<translation id="1795405610103747296">Nainstalujte si Chrome do telefonu. Zašleme vám SMS na telefon <ph name="PHONE_NUMBER" />.</translation>
 <translation id="1812689907177901597">Pokud tuto možnost vypnete, budete se moci přihlásit k většině webů Google, jako je Gmail, aniž byste se přihlásili do Chromu</translation>
 <translation id="1860536484129686729">Chrome pro tento web potřebuje oprávnění k přístupu k fotoaparátu</translation>
 <translation id="1873233029667955273">Google Chrome není vaším výchozím prohlížečem</translation>
@@ -54,16 +50,10 @@
 <translation id="2123055963409958220">Pomozte s vylepšováním prohlížeče Chrome tím, že nahlásíte <ph name="BEGIN_LINK" />aktuální nastavení<ph name="END_LINK" /></translation>
 <translation id="2128103434102193461">Podrobnosti o systému Chrome OS najdete na stránce <ph name="LINK_BEGIN" />O operačním systému Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Restartujte Chrome</translation>
-<translation id="216054706567564023">Nainstalujte si Chrome do telefonu. Zašleme vám SMS na telefonní číslo pro obnovení účtu.</translation>
 <translation id="2246246234298806438">Pokud chybí integrovaný program k zobrazení souborů PDF, nemůže Google Chrome zobrazit náhled tisku.</translation>
-<translation id="2252923619938421629">Pomoci s vylepšováním prohlížeče Google Chrome prostřednictvím nahlášení aktuálního nastavení</translation>
-<translation id="2286950485307333924">Nyní jste do Chromu přihlášeni</translation>
 <translation id="2290014774651636340">Chybí klíče rozhraní Google API. Některé funkce Google Chrome nebudou k dispozici.</translation>
 <translation id="2290095356545025170">Opravdu chcete odinstalovat Google Chrome?</translation>
 <translation id="2309047409763057870">Toto je druhá instalace prohlížeče Google Chrome. Tuto instalaci nelze nastavit jako výchozí prohlížeč.</translation>
-<translation id="2346876346033403680">Prohlížeč Chrome v tomto počítači je již přihlášen k účtu <ph name="ACCOUNT_EMAIL_LAST" />. Pokud se nejedná o váš účet, vytvořte nového uživatele prohlížeče Chrome, aby vaše data zůstala oddělená.
-
-Pokud se přesto přihlásíte, budou data prohlížeče Chrome (například záložky, historie a další nastavení) sloučena s účtem <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome pro tento web potřebuje oprávnění k přístupu k fotoaparátu a mikrofonu</translation>
 <translation id="2429317896000329049">Google Chrome nemohl synchronizovat vaše data, protože Synchronizace ve vaší doméně není k dispozici.</translation>
 <translation id="2467438592969358367">Google Chrome chce exportovat vaše hesla. Tato akce vyžaduje zadání hesla systému Windows.</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">Nyní jste přihlášeni do Chromu.</translation>
 <translation id="2888126860611144412">O aplikaci Chrome</translation>
 <translation id="3037838751736561277">Google Chrome je v režimu na pozadí.</translation>
-<translation id="3047079729301751317">Odpojení uživatele <ph name="USERNAME" /> smaže také historii, záložky, nastavení a další data Chromu uložená v tomto zařízení. Data uložená ve vašem účtu Google nebudou vymazána a lze je spravovat na <ph name="GOOGLE_DASHBOARD_LINK" />Hlavním panelu Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Karta prohlížeče Chrome</translation>
 <translation id="3080151273017101988">Po ukončení prohlížeče Google Chrome nechat aplikace na pozadí spuštěné</translation>
 <translation id="3089968997497233615">K dispozici je nová, bezpečnější verze prohlížeče Google Chrome.</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">Synchronizujte a upravte si Chrome na různých zařízeních</translation>
 <translation id="3622797965165704966">Používání Chromu se spravovaným účtem Google a sdílenými počítači je teď snazší.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Smluvní podmínky<ph name="END_TERMS_OF_SERVICE_LINK" /> systému Google Chrome OS</translation>
-<translation id="3716182511346448902">Tato stránka využívá příliš mnoho paměti, proto ji Chrome pozastavil.</translation>
 <translation id="3718181793972440140">Ze zařízení bude smazána 1 položka. Budete-li chtít své údaje později načíst, přihlaste se do Chromu jako <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Rozšíření <ph name="EXTENSION_NAME" /> změnilo stránku, která se zobrazí při spuštění prohlížeče Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Do jednoho dne Chrome restartujte}few{Do # dní Chrome restartujte}many{Do # dne Chrome restartujte}other{Do # dní Chrome restartujte}}</translation>
 <translation id="424864128008805179">Odhlásit se z Chromu?</translation>
 <translation id="4251615635259297716">Chcete propojit údaje prohlížeče Chrome s tímto účtem?</translation>
-<translation id="4251625577313994583">stáhněte si Chrome do iPhonu</translation>
 <translation id="4293420128516039005">Po přihlášení si budete moci Chrome synchronizovat a upravit na různých zařízeních</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">Tato funkce využívá stejnou službu kontroly pravopisu, jaká se používá ve vyhledávání Google. Text, který v prohlížeči zadáte, se odešle do Googlu. Toto chování můžete kdykoliv změnit v nastavení.</translation>
 <translation id="4891791193823137474">Nechat aplikaci Google Chrome spuštěnou na pozadí</translation>
 <translation id="4895437082222824641">Otevřít odkaz na nové kar&amp;tě Chrome</translation>
-<translation id="4921569541910214635">Sdílíte počítač s dalšími uživateli? Nyní si Chrome můžete nastavit podle svých představ.</translation>
 <translation id="4953650215774548573">Nastavit Google Chrome jako výchozí prohlížeč</translation>
 <translation id="495931528404527476">V Chromu</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -177,8 +163,6 @@
 <translation id="5895138241574237353">Restartovat</translation>
 <translation id="5940385492829620908">Zde jsou k dispozici vaše weby, záložky a další obsah Chromu.</translation>
 <translation id="5941830788786076944">Nastavit Google Chrome jako výchozí prohlížeč</translation>
-<translation id="6014844626092547096">Nyní jste v Chromu přihlášeni. Synchronizace je ale deaktivována správcem.</translation>
-<translation id="6040143037577758943">Zavřít</translation>
 <translation id="6070348360322141662">V zájmu lepšího zabezpečení bude Google Chrome vaše data šifrovat</translation>
 <translation id="6113794647360055231">Chrome je opět o něco lepší</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -191,8 +175,6 @@
 <translation id="6368958679917195344">Chrome OS by nemohl existovat bez dalšího <ph name="BEGIN_LINK_CROS_OSS" />softwaru s otevřeným zdrojovým kódem<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Aktualizace prohlížeče Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Synchronizujete obsah a nastavení Chrome s účtem <ph name="PROFILE_EMAIL" />. Chcete-li možnosti synchronizace upravit nebo Chrome používat bez účtu Google, navštivte <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Zkopírováno do Chromu</translation>
 <translation id="6676384891291319759">Přístup k internetu</translation>
 <translation id="6679975945624592337">Nechat Google Chrome běžet na pozadí</translation>
 <translation id="6750954913813541382">Text zadaný v prohlížeči odesílá Chrome kvůli opravě pravopisných chyb do Googlu</translation>
@@ -206,7 +188,6 @@
 <translation id="6989339256997917931">Prohlížeč Google Chrome byl aktualizován, ale minimálně po 30 dnů jste jej nepoužili.</translation>
 <translation id="7098166902387133879">Google Chrome používá váš mikrofon.</translation>
 <translation id="7106741999175697885">Správce úloh - Google Chrome</translation>
-<translation id="7164397146364144019">Automatickým hlášením podrobností o možných bezpečnostních incidentech do Googlu můžete pomoci zrychlit prohlížeč Chrome a usnadnit jeho používání.</translation>
 <translation id="7242029209006116544">Přihlašujete se pomocí spravovaného účtu a poskytujete jeho správci kontrolu nad vaším profilem Google Chrome. Vaše údaje prohlížeče Chrome, například aplikace, záložky, historie, hesla a jiná nastavení, budou trvale přidružena k účtu <ph name="USER_NAME" />. Tyto údaje budete moci smazat pomocí Hlavního panelu v Účtech Google, ale nebudete je moci přidružit k jinému účtu. Pokud chcete uchovat existující údaje Chrome odděleně, můžete vytvořit nový profil. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">V tomto jazyce se zobrazuje uživatelské rozhraní prohlížeče Google Chrome</translation>
 <translation id="7296210096911315575">Důležité informace o použití a bezpečnosti</translation>
@@ -215,7 +196,6 @@
 <translation id="7398801000654795464">K prohlížeči Chrome jste byli přihlášeni pomocí účtu <ph name="USER_EMAIL_ADDRESS" />. Přihlaste se prosím znovu pomocí stejného účtu.</translation>
 <translation id="7408085963519505752">Smluvní podmínky systému Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS nemohl synchronizovat vaše data, protože Synchronizace ve vaší doméně není k dispozici.</translation>
-<translation id="7459554271817304652">Chcete-li uložit personalizované funkce prohlížeče na web a získat k nim přístup z prohlížeče Google Chrome v libovolném prohlížeči, nastavte synchronizaci.</translation>
 <translation id="7486227612705979895">Chrome bude za účelem zobrazování návrhů v adresním řádku číst váš obsah na Disku</translation>
 <translation id="7531671357096394523">Ukončete všechny kopie Chromu</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -239,25 +219,18 @@
 <translation id="7962410387636238736">Google Chrome se v tomto počítači již nebude aktualizovat, protože systémy Windows XP a Windows Vista již nejsou podporovány.</translation>
 <translation id="8008534537613507642">Přeinstalovat Chrome</translation>
 <translation id="8013993649590906847">Pokud obrázek nemá užitečný popis, Chrome se vám jej pokusí poskytnout. Za účelem vytváření popisů jsou obrázky odesílány do Googlu.</translation>
-<translation id="8032142183999901390">Odebrání účtu z Chromu se může projevit až po opětovném načtení otevřených karet.</translation>
 <translation id="8129812357326543296">O aplikaci &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Nainstalujte si Chrome do telefonu. Zašleme vám na telefon SMS.</translation>
-<translation id="825412236959742607">Tato stránka využívá příliš mnoho paměti, Chrome proto odstranil část obsahu.</translation>
 <translation id="8255190535488645436">Google Chrome používá vaši kameru a mikrofon.</translation>
 <translation id="8286862437124483331">Aplikace Google Chrome se pokouší zobrazit hesla. Tato akce vyžaduje zadání hesla systému Windows.</translation>
 <translation id="8290100596633877290">Ouha! Prohlížeč Google Chrome spadl. Restartovat?</translation>
 <translation id="8342675569599923794">Tento soubor je nebezpečný, proto jej Chrome zablokoval.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Všechna práva vyhrazena.</translation>
 <translation id="840084489713044809">Google Chrome chce exportovat vaše hesla.</translation>
-<translation id="8406086379114794905">Pomozte nám Chrome zlepšit</translation>
 <translation id="8455999171311319804">Volitelné: Pomozte zlepšit operační systém Chrome OS tím, že budete společnosti Google automaticky zasílat diagnostické údaje a údaje o využití.</translation>
-<translation id="8478823064122749032">Nainstalujte si Chrome do telefonu. Zašleme vám SMS na toto telefonní číslo pro obnovení účtu: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8498858610309223613">Právě byla nainstalována mimořádná bezpečnostní aktualizace prohlížeče Google Chrome. Restartujte jej, vaše karty budou obnoveny.</translation>
 <translation id="8521348052903287641">Pravidlo příchozího provozu pro aplikaci Google Chrome Dev, které povolí provoz mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Spouštěč aplikací Chrome Canary</translation>
 <translation id="8556340503434111824">Je k dispozici nová verze prohlížeče Google Chrome, ještě rychlejší než ty předchozí.</translation>
-<translation id="8568392309447938879">Chcete-li používat aplikace, musíte být do Chromu přihlášeni. To Chromu umožňuje synchronizovat vaše aplikace, záložky, historii, hesla a další nastavení mezi zařízeními.</translation>
 <translation id="8606668294522778825">Prohlížeč Google Chrome vám může usnadnit prohlížení pomocí webových služeb. Tyto služby můžete případně zakázat. <ph name="BEGIN_LINK" />Další informace<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome neodpovídá. Restartovat?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome se za 1 minutu restartuje}few{Chrome se za # minut restartuje}many{Chrome se za # minuty restartuje}other{Chrome se za # minut restartuje}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_da.xtb b/chrome/app/resources/google_chrome_strings_da.xtb
index 20d097b..a534bb4 100644
--- a/chrome/app/resources/google_chrome_strings_da.xtb
+++ b/chrome/app/resources/google_chrome_strings_da.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS kunne ikke synkronisere dine data. Opdater din adgangssætning til synkronisering.</translation>
 <translation id="1302523850133262269">Vent, mens Chrome installerer de nyeste systemopdateringer.</translation>
 <translation id="137466361146087520">Google Chrome beta</translation>
-<translation id="1393853151966637042">Få hjælp til at bruge Chrome</translation>
 <translation id="1399397803214730675">Denne computer har allerede en nyere version af Google Chrome. Hvis programmet ikke virker, skal du afinstallere Google Chrome og prøve igen.</translation>
 <translation id="1434626383986940139">Chrome Canary-apps</translation>
-<translation id="1469002951682717133">Chrome-applisten</translation>
 <translation id="1553358976309200471">Opdater Chrome</translation>
 <translation id="1587223624401073077">Google Chrome bruger dit kamera.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> er skadelig, så Chrome har blokeret den.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome gemmer denne adgangskode på din Google-konto. Du behøver ikke at huske den.</translation>
 <translation id="174539241580958092">Google Chrome kunne ikke synkronisere dine data på grund af en loginfejl.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Få hjælp til at bruge Chrome OS</translation>
-<translation id="1795405610103747296">Installer Chrome på din telefon. Vi sender en sms til din telefon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Når du deaktiverer denne indstilling, kan du logge ind på Google-websites som f.eks. Gmail uden at logge ind i Chrome</translation>
 <translation id="1860536484129686729">Chrome skal have tilladelse til at bruge dit kamera på dette website</translation>
 <translation id="1873233029667955273">Google Chrome er ikke din standardbrowser</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Få flere oplysninger om Chrome OS i <ph name="LINK_BEGIN" />
       Om Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Genstart Chrome nu</translation>
-<translation id="216054706567564023">Installer Chrome på din telefon. Vi sender en sms til telefonnummeret til gendannelse for din konto.</translation>
 <translation id="2246246234298806438">Google Chrome kan ikke vise udskrifter, når den indbyggede PDF-fremviser mangler.</translation>
-<translation id="2252923619938421629">Vær med til at gøre Google Chrome bedre ved at rapportere de aktuelle indstillinger</translation>
-<translation id="2286950485307333924">Du er nu logget ind i Chrome</translation>
 <translation id="2290014774651636340">Google API-nøgler mangler. Nogle funktioner i Google Chrome deaktiveres.</translation>
 <translation id="2290095356545025170">Er du sikker på, at du vil afinstallere Google Chrome?</translation>
 <translation id="2309047409763057870">Dette er en sekundær installation af Google Chrome, og den kan ikke gøres til din standardbrowser.</translation>
-<translation id="2346876346033403680">Nogen har tidligere logget ind på Chrome som <ph name="ACCOUNT_EMAIL_LAST" /> på denne computer. Hvis det ikke er din konto, skal du oprette en ny Chrome-bruger for at holde oplysningerne adskilt.
-
-Hvis du logger ind alligevel, flettes Chrome-oplysninger, som f.eks. bogmærker, historik and andre indstillinger, med <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome skal have tilladelse til at bruge dit kamera og din mikrofon på dette website</translation>
 <translation id="2429317896000329049">Google Chrome kunne ikke synkronisere dine data, fordi synkronisering ikke er tilgængelig for dit domæne.</translation>
 <translation id="2467438592969358367">Google Chrome anmoder om at eksportere dine adgangskoder. Angiv din Windows-adgangskode for at tillade dette.</translation>
@@ -83,11 +73,10 @@
 <translation id="2871893339301912279">Du er logget ind på Chrome.</translation>
 <translation id="2888126860611144412">Om Chrome</translation>
 <translation id="3037838751736561277">Google Chrome kører i baggrunden.</translation>
-<translation id="3047079729301751317">Hvis du afbryder forbindelsen for <ph name="USERNAME" />, slettes din historik, dine bogmærker, dine indstillinger og andre Chrome-data, der er gemt på denne enhed. Data, der er gemt på din Google-konto, slettes ikke og kan administreres i <ph name="GOOGLE_DASHBOARD_LINK" />Google Betjeningspanel<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Fanen Chrome</translation>
 <translation id="3080151273017101988">Fortsæt med at køre baggrundsapps, når Google Chrome er lukket</translation>
 <translation id="3089968997497233615">Der findes en ny, sikker version af Google Chrome.</translation>
-<translation id="3138848678222082288">Fremtidige version af Chrome installeres automatisk. Når denne download er gennemført, genstartes Chrome, og så er du godt på vej.</translation>
+<translation id="3138848678222082288">Fremtidige versioner af Chrome installeres automatisk. Når denne download er gennemført, genstartes Chrome, og så er du godt på vej.</translation>
 <translation id="3149510190863420837">Chrome-apps</translation>
 <translation id="3282568296779691940">Log ind i Chrome</translation>
 <translation id="3340978935015468852">indstillinger</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Synkroniser og tilpas Chrome på alle dine enheder</translation>
 <translation id="3622797965165704966">Nu er det blevet nemmere at bruge Chrome med din Google-konto og på delte computere.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />Servicevilkår<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Denne side anvender for meget hukommelse, så Chrome har sat den på pause.</translation>
 <translation id="3718181793972440140">Denne handling sletter ét element på denne enhed. Hvis du senere vil hente dine data igen, skal du logge ind på Chrome som <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Udvidelsen "<ph name="EXTENSION_NAME" />" har ændret din startside i Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Genstart Chrome inden for én dag}one{Genstart Chrome inden for # dag}other{Genstart Chrome inden for # dage}}</translation>
 <translation id="424864128008805179">Vil du logge ud af Chrome?</translation>
 <translation id="4251615635259297716">Vil du linke dine Chrome-data til denne konto?</translation>
-<translation id="4251625577313994583">få Chrome på din iPhone</translation>
 <translation id="4293420128516039005">Log ind for at synkronisere og tilpasse Chrome på alle dine enheder</translation>
 <translation id="4328355335528187361">Udviklerversionen af Google Chrome (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Dette anvender den samme stavekontrol, som anvendes i Google Søgning. Tekst, som du angiver i browseren, sendes til Google. Du kan altid ændre denne adfærd i indstillingerne.</translation>
 <translation id="4891791193823137474">Lad Google Chrome køre i baggrunden</translation>
 <translation id="4895437082222824641">Åbn linket i en ny Chrome-&amp;fane</translation>
-<translation id="4921569541910214635">Deler du computer med andre? Nu kan du konfigurere Chrome, præcist som du vil.</translation>
 <translation id="4953650215774548573">Angiv Google Chrome som din standardbrowser</translation>
 <translation id="495931528404527476">I Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Genstart</translation>
 <translation id="5940385492829620908">Dit webindhold, dine bogmærker og andre Chrome-ting kan findes her.</translation>
 <translation id="5941830788786076944">Gør Google Chrome til din standardbrowser</translation>
-<translation id="6014844626092547096">Du er nu logget ind i Chrome. Synkronisering er deaktiveret af din administrator.</translation>
-<translation id="6040143037577758943">Luk</translation>
 <translation id="6070348360322141662">Som et ekstra sikkerhedsniveau krypterer Google Chrome dine data</translation>
 <translation id="6113794647360055231">Chrome er blevet bedre</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> – Google Chrome</translation>
@@ -186,22 +170,19 @@
 <translation id="6368958679917195344">Chrome OS er lavet ved hjælp af <ph name="BEGIN_LINK_CROS_OSS" />open source-software<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome for udviklere</translation>
 <translation id="6566149418543181476">Opdaterer Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Du bruger <ph name="PROFILE_EMAIL" /> til at synkronisere dine Chrome-ting med. Gå til <ph name="SETTINGS_LINK" />, hvis du vil opdatere dine synkroniseringspræference, eller hvis du vil bruge Chrome uden en Google-konto.</translation>
-<translation id="6600954340915313787">Kopieret til Chrome</translation>
 <translation id="6676384891291319759">Få adgang til internettet</translation>
 <translation id="6679975945624592337">Lad Google Chrome køre i baggrunden</translation>
 <translation id="6750954913813541382">Chrome sender den tekst, du angiver i browseren, til Google for at rette stavefejl</translation>
 <translation id="677276454032249905">Vil du afslutte Chrome alligevel?</translation>
 <translation id="683440813066116847">Indgående regel for Google Chrome Canary om at tillade mDNS-trafik.</translation>
 <translation id="6885412569789873916">Apps i Chrome beta</translation>
-<translation id="6906909733186691861">Fremtidige version af Chrome installeres automatisk.</translation>
+<translation id="6906909733186691861">Fremtidige versioner af Chrome installeres automatisk.</translation>
 <translation id="6943584222992551122">Brugerens browserdata slettes fra denne enhed. Log ind på Chrome som <ph name="USER_EMAIL" /> for at gendanne dataene.</translation>
 <translation id="6967962315388095737">Indgående regel for Google Chrome beta om at tillade mDNS-trafik.</translation>
 <translation id="6982337800632491844"><ph name="DOMAIN" /> kræver, at du læser og accepterer følgende servicevilkår, inden du bruger denne enhed. Disse vilkår udvider, ændrer eller begrænser på ingen måde vilkårene for Google Chrome OS.</translation>
 <translation id="6989339256997917931">Google Chrome er blevet opdateret, men du har ikke brugt den i 30 dage.</translation>
 <translation id="7098166902387133879">Google Chrome bruger din mikrofon.</translation>
 <translation id="7106741999175697885">Jobliste – Google Chrome</translation>
-<translation id="7164397146364144019">Du kan hjælpe med at gøre Chrome sikrere og nemmere at bruge ved automatisk at rapportere oplysninger om mulige sikkerhedsproblemer til Google.</translation>
 <translation id="7242029209006116544">Du er ved at logge ind med en mangerstyret konto og give dens administrator kontrol over din profil i Google Chrome. Dine Chrome-data, f.eks. dine apps, bogmærker, historikdata, adgangskoder og andre indstillinger, knyttes permanent til <ph name="USER_NAME" />. Du kan slette disse data via betjeningspanelet for Google Konti, men du kan ikke knytte disse data til en anden konto. Du kan eventuelt oprette en ny profil for at holde dine eksisterende Chrome-data adskilt. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Dette sprog bruges til at vise Google Chrome-brugerfladen</translation>
 <translation id="7296210096911315575">Vigtige oplysninger om brug og sikkerhed</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Du loggede ind i Chrome som <ph name="USER_EMAIL_ADDRESS" />. Brug den samme konto til at logge ind igen.</translation>
 <translation id="7408085963519505752">Vilkår for Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS kunne ikke synkronisere dine data, fordi synkronisering ikke er tilgængelig for dit domæne.</translation>
-<translation id="7459554271817304652">Konfigurer synkroniseringen til at gemme dine personlige browserfunktioner på nettet, og få adgang til dem i Google Chrome på en hvilken som helst computer.</translation>
 <translation id="7486227612705979895">Chrome har adgang til Drev, så der kan vises forslag i adresselinjen</translation>
 <translation id="7531671357096394523">Luk alle kopier af Chrome.</translation>
 <translation id="7535429826459677826">Udviklerversionen af Chrome</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Denne computer modtager ikke længere Google Chrome-opdateringer, da Windows XP og Windows Vista ikke længere understøttes.</translation>
 <translation id="8008534537613507642">Geninstaller Chrome</translation>
 <translation id="8013993649590906847">Hvis et billede ikke har en brugbar beskrivelse, forsøger Chrome at angive en for dig. Billederne sendes til Google, så der kan oprettes beskrivelser.</translation>
-<translation id="8032142183999901390">Når du har fjernet din konto fra Chrome, skal du muligvis indlæse dine åbne faner, før ændringen træder i kraft.</translation>
 <translation id="8129812357326543296">Om &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Installer Chrome på din telefon. Vi sender en sms til din telefon.</translation>
-<translation id="825412236959742607">Denne side anvender for meget hukommelse, så Chrome har fjernet noget indhold.</translation>
 <translation id="8255190535488645436">Google Chrome bruger dit kamera og din mikrofon.</translation>
 <translation id="8286862437124483331">Google Chrome forsøger at vise adgangskoder. Angiv din Windows-adgangskode for at tillade dette.</translation>
 <translation id="8290100596633877290">Hovsa! Google Chrome er gået ned. Vil du genstarte nu?</translation>
 <translation id="8342675569599923794">Denne fil er farlig, så Chrome har blokeret den.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Alle rettigheder forbeholdes.</translation>
 <translation id="840084489713044809">Google Chrome anmoder om at eksportere dine adgangskoder.</translation>
-<translation id="8406086379114794905">Hjælp med at forbedre Chrome</translation>
 <translation id="8455999171311319804">Valgfrit: Vær med til at gøre Chrome OS bedre ved automatisk at sende diagnostik og brugsdata til Google.</translation>
-<translation id="8478823064122749032">Installer Chrome på din telefon. Vi sender en sms til dit telefonnummer til gendannelse: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">En særlig sikkerhedsopdatering til Google Chrome blev netop anvendt. Genstart nu, hvorefter vi gendanner dine faner.</translation>
 <translation id="8521348052903287641">Indgående regel for udviklerversionen af Chrome om at tillade mDNS-trafik.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome-applikationslisten for Canary</translation>
 <translation id="8556340503434111824">Der findes en ny version af Google Chrome, som er hurtigere end nogensinde før.</translation>
-<translation id="8568392309447938879">Du skal være logget ind på Chrome for at bruge apps. Dette gør det muligt for Chrome at synkronisere din historik, dine apps, bogmærker, adgangskoder og andre indstillinger på alle enheder.</translation>
 <translation id="8606668294522778825">Google Chrome bruger muligvis webtjenester for at forbedre din browseroplevelse. Du kan vælge at deaktivere disse tjenester. <ph name="BEGIN_LINK" />Få flere oplysninger<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome svarer ikke. Vil du genstarte nu?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome genstarter om 1 minut}one{Chrome genstarter om # minut}other{Chrome genstarter om # minutter}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_de.xtb b/chrome/app/resources/google_chrome_strings_de.xtb
index 32a4563..a075da0 100644
--- a/chrome/app/resources/google_chrome_strings_de.xtb
+++ b/chrome/app/resources/google_chrome_strings_de.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS konnte Ihre Daten nicht synchronisieren. Bitte aktualisieren Sie Ihre Passphrase für die Synchronisierung.</translation>
 <translation id="1302523850133262269">Bitte warten Sie, bis die aktuellen Systemupdates von Chrome installiert wurden.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Hilfe für Chrome aufrufen</translation>
 <translation id="1399397803214730675">Auf diesem Computer befindet sich bereits eine neuere Version von Google Chrome. Falls die Software nicht funktioniert, deinstallieren Sie Google Chrome und versuchen Sie es erneut.</translation>
 <translation id="1434626383986940139">Chrome Canary-Apps</translation>
-<translation id="1469002951682717133">Chrome App Launcher</translation>
 <translation id="1553358976309200471">Chrome aktualisieren</translation>
 <translation id="1587223624401073077">Google Chrome verwendet Ihre Kamera.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> ist schädlich und wurde daher von Chrome blockiert.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome speichert dieses Passwort in Ihrem Google-Konto. Sie müssen es sich also nicht merken.</translation>
 <translation id="174539241580958092">Google Chrome konnte Ihre Daten aufgrund eines Fehlers bei der Anmeldung nicht synchronisieren.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Hilfe für Chrome OS aufrufen</translation>
-<translation id="1795405610103747296">Installieren Sie Chrome auf Ihrem Smartphone. Wir senden Ihnen eine SMS an: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Wenn Sie diese Einstellung deaktivieren, können Sie sich auf Websites von Google wie beispielsweise Gmail anmelden, ohne sich auch in Chrome anmelden zu müssen</translation>
 <translation id="1860536484129686729">Chrome benötigt für diese Website die Berechtigung, auf Ihre Kamera zuzugreifen</translation>
 <translation id="1873233029667955273">Google Chrome ist nicht als Ihr Standardbrowser festgelegt</translation>
@@ -51,16 +47,10 @@
 <translation id="2128103434102193461">Details zu Chrome OS finden Sie unter <ph name="LINK_BEGIN" />
       Über Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Starten Sie Chrome jetzt neu</translation>
-<translation id="216054706567564023">Installieren Sie Chrome auf Ihrem Smartphone. Wir senden Ihnen eine SMS an die Telefonnummer zur Kontowiederherstellung.</translation>
 <translation id="2246246234298806438">Google Chrome kann ohne den integrierten PDF-Viewer keine Druckvorschau anzeigen.</translation>
-<translation id="2252923619938421629">Tragen Sie zur Verbesserung von Google Chrome bei, indem Sie die aktuellen Einstellungen melden.</translation>
-<translation id="2286950485307333924">Sie sind jetzt in Chrome angemeldet.</translation>
 <translation id="2290014774651636340">Google API-Schlüssel fehlen. Einige Funktionen von Google Chrome sind deaktiviert.</translation>
 <translation id="2290095356545025170">Möchten Sie Google Chrome wirklich deinstallieren?</translation>
 <translation id="2309047409763057870">Dies ist eine Zweitinstallation, daher kann Google Chrome nicht als Standardbrowser festgelegt werden.</translation>
-<translation id="2346876346033403680">Auf diesem Computer war zuvor ein Nutzer mit dem Konto <ph name="ACCOUNT_EMAIL_LAST" /> in Chrome angemeldet. Falls dies nicht Ihr Konto ist, erstellen Sie einen neuen Chrome-Nutzer, um Ihre Daten getrennt zu verwenden.
-
-Sollten Sie sich trotzdem anmelden, werden die Chrome-Daten wie Lesezeichen, Verlauf und andere Einstellungen in <ph name="ACCOUNT_EMAIL_NEW" /> zusammengeführt.</translation>
 <translation id="2348335408836342058">Chrome benötigt für diese Website die Berechtigung, auf Ihre Kamera und Ihr Mikrofon zuzugreifen</translation>
 <translation id="2429317896000329049">Google Chrome konnte Ihre Daten nicht synchronisieren, da die Synchronisierung für Ihre Domain nicht zur Verfügung steht.</translation>
 <translation id="2467438592969358367">Google Chrome möchte Ihre Passwörter exportieren. Wenn Sie dies zulassen möchten, geben Sie Ihr Windows-Passwort ein.</translation>
@@ -82,7 +72,6 @@
 <translation id="2871893339301912279">Sie sind in Chrome angemeldet.</translation>
 <translation id="2888126860611144412">Über Google Chrome</translation>
 <translation id="3037838751736561277">Google Chrome wird im Hintergrundmodus ausgeführt.</translation>
-<translation id="3047079729301751317">Wenn Sie die Verbindung zu <ph name="USERNAME" /> trennen, werden Ihr Verlauf sowie Ihre Lesezeichen, Einstellungen und sonstigen auf diesem Gerät gespeicherten Chrome-Daten gelöscht. In Ihrem Google-Konto gespeicherte Daten bleiben erhalten und können über das <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" /> verwaltet werden.</translation>
 <translation id="3065168410429928842">Chrome-Tab</translation>
 <translation id="3080151273017101988">Apps im Hintergrund ausführen, wenn Google Chrome geschlossen ist</translation>
 <translation id="3089968997497233615">Es gibt eine neue, sicherere Version von Google Chrome.</translation>
@@ -103,7 +92,6 @@
 <translation id="3582972582564653026">Chrome wird auf allen Ihren Geräten synchronisiert und personalisiert</translation>
 <translation id="3622797965165704966">Sie können Chrome jetzt noch einfacher mit Ihrem Google-Konto und auf gemeinsam genutzten Computern verwenden.</translation>
 <translation id="3637702109597584617">Google Chrome OS – <ph name="TERMS_OF_SERVICE_LINK" />Nutzungsbedingungen<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Diese Seite benötigt zu viel Arbeitsspeicher und wurde daher von Chrome angehalten.</translation>
 <translation id="3718181793972440140">Dadurch wird 1 Element von diesem Gerät gelöscht. Wenn Sie Ihre Daten später abrufen möchten, melden Sie sich als <ph name="USER_EMAIL" /> in Chrome an.</translation>
 <translation id="3735758079232443276">Die beim Start von Chrome angezeigte Seite wurde durch die Erweiterung <ph name="EXTENSION_NAME" /> geändert.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -119,7 +107,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Chrome innerhalb eines Tages neu starten}other{Chrome innerhalb von # Tagen neu starten}}</translation>
 <translation id="424864128008805179">Von Chrome abmelden?</translation>
 <translation id="4251615635259297716">Ihre Chrome-Daten mit diesem Konto verknüpfen?</translation>
-<translation id="4251625577313994583">Chrome auf das iPhone herunterladen</translation>
 <translation id="4293420128516039005">Wenn Sie sich anmelden, wird Chrome auf allen Ihren Geräten synchronisiert und personalisiert</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -141,7 +128,6 @@
 <translation id="479167709087336770">Es wird dieselbe Rechtschreibprüfung wie in der Google-Suche verwendet. Der in den Browser eingegebene Text wird an Google gesendet. Sie können dies jederzeit in den Einstellungen ändern.</translation>
 <translation id="4891791193823137474">Google Chrome im Hintergrund ausführen</translation>
 <translation id="4895437082222824641">Link in neuem Chrome-Tab öffnen</translation>
-<translation id="4921569541910214635">Sie nutzen einen Computer gemeinsam mit anderen? Jetzt können Sie Chrome nach Ihren Wünschen einrichten.</translation>
 <translation id="4953650215774548573">Google Chrome als Standardbrowser festlegen</translation>
 <translation id="495931528404527476">In Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -170,8 +156,6 @@
 <translation id="5895138241574237353">Neu starten</translation>
 <translation id="5940385492829620908">Hier können Sie im Web surfen und Ihre Lesezeichen und andere Chrome-Inhalte speichern.</translation>
 <translation id="5941830788786076944">Google Chrome als Standardbrowser festlegen</translation>
-<translation id="6014844626092547096">Sie sind nun in Chrome angemeldet. Die Synchronisierung wurde von Ihrem Administrator deaktiviert.</translation>
-<translation id="6040143037577758943">Schließen</translation>
 <translation id="6070348360322141662">Google Chrome verschlüsselt Ihre Daten zur Erhöhung der Sicherheit</translation>
 <translation id="6113794647360055231">Chrome ist jetzt noch besser</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -184,8 +168,6 @@
 <translation id="6368958679917195344">Chrome OS wird durch zusätzliche <ph name="BEGIN_LINK_CROS_OSS" />Open-Source-Software<ph name="END_LINK_CROS_OSS" /> möglich gemacht.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome wird aktualisiert (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Ihre E-Mail-Adresse <ph name="PROFILE_EMAIL" /> wird zurzeit für die Synchronisierung Ihrer Chrome-Inhalte verwendet. Wenn Sie Ihre Synchronisierungseinstellungen ändern oder Chrome ohne Google-Konto verwenden möchten, rufen Sie <ph name="SETTINGS_LINK" /> auf.</translation>
-<translation id="6600954340915313787">In Chrome kopiert</translation>
 <translation id="6676384891291319759">Internetzugriff</translation>
 <translation id="6679975945624592337">Google Chrome im Hintergrund ausführen</translation>
 <translation id="6750954913813541382">Zur Behebung von Tippfehlern sendet Chrome im Browser eingegebenen Text an Google</translation>
@@ -199,7 +181,6 @@
 <translation id="6989339256997917931">Google Chrome wurde aktualisiert, Sie haben den Browser jedoch mindestens 30 Tage nicht verwendet.</translation>
 <translation id="7098166902387133879">Google Chrome verwendet Ihr Mikrofon.</translation>
 <translation id="7106741999175697885">Taskmanager - Google Chrome</translation>
-<translation id="7164397146364144019">Helfen Sie mit, Chrome sicherer und nutzerfreundlicher zu machen, indem Sie Details zu möglichen sicherheitsrelevanten Zwischenfällen automatisch an Google senden.</translation>
 <translation id="7242029209006116544">Sie melden sich mit einem verwalteten Konto an und ermöglichen dessen Administrator Zugriff auf Ihr Google Chrome-Profil. Ihre Chrome-Daten, wie Apps, Lesezeichen, Verlauf, Passwörter und andere Einstellungen, werden dauerhaft mit <ph name="USER_NAME" /> verknüpft. Sie können diese Daten über das Google Konten-Dashboard löschen, aber nicht mit einem anderen Konto verknüpfen. Wenn Sie Ihre bestehenden Chrome-Daten getrennt verwenden möchten, können Sie ein neues Profil erstellen. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Diese Sprache wird für die Google Chrome-UI verwendet</translation>
 <translation id="7296210096911315575">Wichtige Informationen zu Verwendung und Sicherheit</translation>
@@ -208,7 +189,6 @@
 <translation id="7398801000654795464">Sie waren in Chrome als <ph name="USER_EMAIL_ADDRESS" /> angemeldet. Melden Sie sich bitte wieder mit demselben Konto an.</translation>
 <translation id="7408085963519505752">Chrome OS-Nutzungsbedingungen</translation>
 <translation id="7419046106786626209">Chrome OS konnte Ihre Daten nicht synchronisieren, da die Synchronisierung für Ihre Domain nicht verfügbar ist.</translation>
-<translation id="7459554271817304652">Richten Sie die Synchronisierung ein, um Ihre personalisierten Browserfunktionen online zu speichern und über Google Chrome auf jedem Computer darauf zuzugreifen.</translation>
 <translation id="7486227612705979895">Chrome greift auf Google Drive zu, um in der Adressleiste Vorschläge zu machen</translation>
 <translation id="7531671357096394523">Alle Instanzen von Chrome schließen.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -232,25 +212,18 @@
 <translation id="7962410387636238736">Dieser Computer erhält keine Google Chrome-Updates mehr, da Windows XP und Windows Vista nicht mehr unterstützt werden</translation>
 <translation id="8008534537613507642">Chrome erneut installieren</translation>
 <translation id="8013993649590906847">Wenn ein Bild keine brauchbare Beschreibung hat, versucht Chrome, eine für Sie zu finden. Damit entsprechende Beschreibungen erstellt werden können, werden die Bilder an Google gesendet.</translation>
-<translation id="8032142183999901390">Nachdem Sie Ihr Konto aus Chrome entfernt haben, müssen Sie Ihre geöffneten Tabs möglicherweise neu laden, damit die Änderung wirksam wird.</translation>
 <translation id="8129812357326543296">Über &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Installieren Sie Chrome auf Ihrem Smartphone. Wir senden Ihnen eine SMS.</translation>
-<translation id="825412236959742607">Diese Seite benötigt zu viel Arbeitsspeicher. Darum hat Chrome einige Inhalte entfernt.</translation>
 <translation id="8255190535488645436">Google Chrome verwendet Ihre Kamera und Ihr Mikrofon.</translation>
 <translation id="8286862437124483331">Google Chrome möchte Passwörter anzeigen. Geben Sie Ihr Windows-Passwort ein, um dies zuzulassen.</translation>
 <translation id="8290100596633877290">Google Chrome ist abgestürzt. Jetzt neu starten?</translation>
 <translation id="8342675569599923794">Diese Datei ist schädlich und wurde von Chrome blockiert.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC Alle Rechte vorbehalten.</translation>
 <translation id="840084489713044809">Google Chrome möchte Ihre Passwörter exportieren.</translation>
-<translation id="8406086379114794905">Zur Verbesserung von Chrome beitragen</translation>
 <translation id="8455999171311319804">Optional: Diagnose- und Nutzungsdaten zur Verbesserung von Chrome OS automatisch an Google senden.</translation>
-<translation id="8478823064122749032">Installieren Sie Chrome auf Ihrem Smartphone. Wir senden Ihnen eine SMS an die Telefonnummer zur Kontowiederherstellung: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Da soeben ein kritisches Sicherheitsupdate für Google Chrome installiert wurde, sollten Sie jetzt einen Neustart durchführen. Ihre Tabs werden dann automatisch wiederhergestellt.</translation>
 <translation id="8521348052903287641">Eingangsregel für die Zulassung von mDNS-Verkehr in Google Chrome Dev.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome App Launcher für Canary</translation>
 <translation id="8556340503434111824">Es gibt eine neue Version von Google Chrome, die schneller ist, als anderen zuvor.</translation>
-<translation id="8568392309447938879">Sie können Apps verwenden, wenn Sie in Chrome angemeldet sind. Chrome kann dann Ihre Apps, Lesezeichen, Passwörter, Ihren Verlauf und andere Einstellungen auf Ihren Geräten synchronisieren.</translation>
 <translation id="8606668294522778825">Google Chrome verwendet möglicherweise Webdienste zur Unterstützung Ihrer Onlinesuche. Sie haben die Möglichkeit, diese Dienste zu deaktivieren. <ph name="BEGIN_LINK" />Weitere Informationen<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome reagiert nicht. Jetzt neu starten?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome wird in einer Minute neu gestartet}other{Chrome wird in # Minuten neu gestartet}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_el.xtb b/chrome/app/resources/google_chrome_strings_el.xtb
index 71d93f79..90f2eb5 100644
--- a/chrome/app/resources/google_chrome_strings_el.xtb
+++ b/chrome/app/resources/google_chrome_strings_el.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Το Chrome OS δεν μπόρεσε να συγχρονίσει τα δεδομένα σας. Ενημερώστε τη φράση πρόσβασης συγχρονισμού.</translation>
 <translation id="1302523850133262269">Περιμένετε μέχρι να γίνει εγκατάσταση των πιο πρόσφατων ενημερώσεων συστήματος από το Chrome.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Λήψη βοήθειας σχετικά με τη χρήση του Chrome</translation>
 <translation id="1399397803214730675">Αυτός ο υπολογιστής διαθέτει ήδη μια πιο πρόσφατη έκδοση του Google Chrome. Αν το λογισμικό δεν λειτουργεί, απεγκαταστήστε το Google Chrome και δοκιμάστε ξανά.</translation>
 <translation id="1434626383986940139">Εφαρμογές Chrome Canary</translation>
-<translation id="1469002951682717133">Λειτουργία εκκίνησης εφαρμογών Chrome</translation>
 <translation id="1553358976309200471">Ενημερώστε το Chrome</translation>
 <translation id="1587223624401073077">Το Google Chrome χρησιμοποιεί την κάμερά σας.</translation>
 <translation id="1587325591171447154">Το αρχείο <ph name="FILE_NAME" /> είναι επικίνδυνο, επομένως έχει αποκλειστεί από το Chrome.</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">Το Chrome θα αποθηκεύσει αυτόν τον κωδικό πρόσβασης στον Λογαριασμό σας Google. Δεν χρειάζεται να τον απομνημονεύσετε.</translation>
 <translation id="174539241580958092">Το Google Chrome δεν κατάφερε να συγχρονίσει τα δεδομένα σας λόγω σφάλματος κατά τη σύνδεση.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Λήψη βοήθειας σχετικά με τη χρήση του Chrome OS</translation>
-<translation id="1795405610103747296">Εγκαταστήστε το Chrome στο τηλέφωνό σας. Θα στείλουμε ένα SMS στο τηλέφωνό σας: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Με την απενεργοποίηση αυτής της λειτουργίας, μπορείτε να συνδεθείτε σε ιστοτόπους Google, όπως το Gmail, χωρίς να συνδεθείτε στο Chrome</translation>
 <translation id="1860536484129686729">Το Chrome χρειάζεται άδεια, για να αποκτήσει πρόσβαση στην κάμερα για αυτόν τον ιστότοπο</translation>
 <translation id="1873233029667955273">Το Google Chrome δεν είναι το προεπιλεγμένο πρόγραμμα περιήγησης</translation>
@@ -54,16 +50,10 @@
 <translation id="2128103434102193461">Για λεπτομέρειες σχετικά με το Chrome OS, ανατρέξτε στην ενότητα <ph name="LINK_BEGIN" />
       Σχετικά με το Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Επανεκκινήστε το Chrome τώρα</translation>
-<translation id="216054706567564023">Εγκαταστήστε το Chrome στο τηλέφωνό σας. Θα στείλουμε ένα SMS στον αριθμό τηλεφώνου ανάκτησης του λογαριασμού σας.</translation>
 <translation id="2246246234298806438">Το Google Chrome δεν είναι δυνατό να εμφανίσει την προεπισκόπηση εκτύπωσης όταν λείπει το ενσωματωμένο πρόγραμμα προβολής PDF.</translation>
-<translation id="2252923619938421629">Συμβάλετε στη βελτίωση του Google Chrome αναφέροντας τις τρέχουσες ρυθμίσεις</translation>
-<translation id="2286950485307333924">Έχετε συνδεθεί στο Chrome</translation>
 <translation id="2290014774651636340">Λείπουν κλειδιά του Google API. Ορισμένες λειτουργίες του Google Chrome θα απενεργοποιηθούν.</translation>
 <translation id="2290095356545025170">Είστε βέβαιοι ότι θέλετε να απεγκαταστήσετε του Google Chrome;</translation>
 <translation id="2309047409763057870">Αυτή είναι μια δευτερεύουσα εγκατάσταση του Google Chrome και δεν μπορεί να γίνει το προεπιλεγμένο πρόγραμμα περιήγησης.</translation>
-<translation id="2346876346033403680">Κάποιο άτομο συνδέθηκε προηγουμένως στο Chrome σε αυτόν τον υπολογιστή ως <ph name="ACCOUNT_EMAIL_LAST" />. Αν αυτός δεν είναι ο λογαριασμός σας, δημιουργήστε ένα νέο χρήστη του Chrome, για να παραμείνουν οι πληροφορίες σας ξεχωριστά
-
-Με τη σύνδεση, θα συγχωνευτούν στο Chrome πληροφορίες όπως οι σελιδοδείκτες, το ιστορικό και άλλες ρυθμίσεις στο <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Το Chrome χρειάζεται άδεια, για να αποκτήσει πρόσβαση στην κάμερα και στο μικρόφωνο για αυτόν τον ιστότοπο</translation>
 <translation id="2429317896000329049">Το Google Chrome δεν κατάφερε να συγχρονίσει τα δεδομένα σας επειδή ο συγχρονισμός δεν είναι διαθέσιμος για τον τομέα σας.</translation>
 <translation id="2467438592969358367">Το Google Chrome θέλει να εξαγάγει τους κωδικούς πρόσβασής σας. Για να το επιτρέψετε αυτό, πληκτρολογήστε τον κωδικό πρόσβασης για τα Windows.</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">Έχετε συνδεθεί στο Chrome!</translation>
 <translation id="2888126860611144412">Σχετικά με το Chrome</translation>
 <translation id="3037838751736561277">Το Google Chrome εκτελείται στο παρασκήνιο.</translation>
-<translation id="3047079729301751317">Με την αποσύνδεση του λογαριασμού <ph name="USERNAME" />, θα διαγραφεί το ιστορικό, οι  σελιδοδείκτες, οι ρυθμίσιες σας και άλλα δεδομένα Chrome που έχουν αποθηκευτεί σε αυτήν τη συσκευή. Τα δεδομένα που έχουν αποθηκευτεί στον Λογαριασμό σας Google δεν θα διαγραφούν και μπορείτε να τα διαχειριστείτε μέσω του <ph name="GOOGLE_DASHBOARD_LINK" />Πίνακα ελέγχου Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Καρτέλα Chrome</translation>
 <translation id="3080151273017101988">Να συνεχίζεται η εκτέλεση εφαρμογών παρασκηνίου όταν το Google Chrome είναι κλειστό</translation>
 <translation id="3089968997497233615">Υπάρχει μια νέα, ασφαλέστερη έκδοση του Google Chrome.</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">Συγχρονίστε και εξατομικεύστε το Chrome στις συσκευές σας</translation>
 <translation id="3622797965165704966">Τώρα μπορείτε να χρησιμοποιείτε πιο εύκολα το Chrome με το Λογαριασμό σας Google και σε κοινόχρηστους υπολογιστές.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Όροι Παροχής Υπηρεσιών<ph name="END_TERMS_OF_SERVICE_LINK" /> του Google Chrome OS</translation>
-<translation id="3716182511346448902">Αυτή η σελίδα χρησιμοποιεί πάρα πολλή μνήμη. Για αυτόν τον λόγο, το Chrome την έθεσε σε παύση.</translation>
 <translation id="3718181793972440140">Με αυτήν την ενέργεια θα διαγραφεί 1 στοιχείο από αυτήν τη συσκευή. Για να ανακτήσετε τα δεδομένα σας αργότερα, συνδεθείτε στο Chrome ως <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Η επέκταση <ph name="EXTENSION_NAME" /> άλλαξε τη σελίδα που εμφανίζεται κατά την εκκίνηση του Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Επανεκκίνηση του Chrome σε μία ημέρα}other{Επανεκκίνηση του Chrome σε # ημέρες}}</translation>
 <translation id="424864128008805179">Αποσύνδεση από το Chrome;</translation>
 <translation id="4251615635259297716">Να συνδεθούν τα δεδομένα σας στο Chrome με αυτόν το λογαριασμό;</translation>
-<translation id="4251625577313994583">λήψη Chrome στο iPhone</translation>
 <translation id="4293420128516039005">Συνδεθείτε, για να συγχρονίσετε και να εξατομικεύσετε το Chrome στις συσκευές σας</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">Αυτό χρησιμοποιεί τον ίδιο ορθογραφικό έλεγχο που χρησιμοποιείται στην Αναζήτηση Google. Το κείμενο που πληκτρολογείτε στο πρόγραμμα περιήγησης αποστέλλεται στην Google. Μπορείτε ανά πάσα στιγμή να αλλάξετε αυτήν τη συμπεριφορά στις ρυθμίσεις.</translation>
 <translation id="4891791193823137474">Να επιτρέπεται στο Google Chrome να εκτελείται στο παρασκήνιο</translation>
 <translation id="4895437082222824641">Άνοιγμα συνδέσμου σε νέα καρτέ&amp;λα Chrome</translation>
-<translation id="4921569541910214635">Μοιράζεστε έναν υπολογιστή; Τώρα μπορείτε να ρυθμίσετε το Chrome όπως ακριβώς σας αρέσει.</translation>
 <translation id="4953650215774548573">Ορίστε το Google Chrome ως προεπιλεγμένο πρόγραμμα περιήγησης</translation>
 <translation id="495931528404527476">Στο Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -176,8 +162,6 @@
 <translation id="5895138241574237353">Επανεκκίνηση</translation>
 <translation id="5940385492829620908">Εδώ μπορείτε να βρείτε τις ιστοσελίδες, τους σελιδοδείκτες σας και άλλα δεδομένα του Chrome.</translation>
 <translation id="5941830788786076944">Ορισμός Google Chrome ως προεπιλεγμένο πρόγραμμα περιήγησης</translation>
-<translation id="6014844626092547096">Έχετε πλέον συνδεθεί στο Chrome! Ο συγχρονισμός έχει απενεργοποιηθεί από το διαχειριστή σας.</translation>
-<translation id="6040143037577758943">Κλείσιμο</translation>
 <translation id="6070348360322141662">Για επιπλέον ασφάλεια, το Google Chrome θα κρυπτογραφήσει τα δεδομένα σας</translation>
 <translation id="6113794647360055231">Το Chrome έγινε ακόμα καλύτερο</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -190,8 +174,6 @@
 <translation id="6368958679917195344">Το Chrome OS έγινε πραγματικότητα χάρη στην ύπαρξη πρόσθετων <ph name="BEGIN_LINK_CROS_OSS" />λογισμικών ανοικτού κώδικα<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Ενημέρωση του Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Χρησιμοποιείτε το προφίλ <ph name="PROFILE_EMAIL" /> για το συγχρονισμό του περιεχομένου σας στο Chrome. Για να ενημερώσετε τις προτιμήσεις συγχρονισμού ή για να χρησιμοποιήστε το Chrome χωρίς Λογαριασμό Google, μεταβείτε στην περιοχή <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Αντιγράφηκε στο Chrome</translation>
 <translation id="6676384891291319759">Πρόσβαση στο Διαδίκτυο</translation>
 <translation id="6679975945624592337">Να επιτρέπεται στο Google Chrome να εκτελείται στο παρασκήνιο</translation>
 <translation id="6750954913813541382">Για τη διόρθωση ορθογραφικών λαθών, το Chrome στέλνει στην Google το κείμενο που πληκτρολογείτε στο πρόγραμμα περιήγησης</translation>
@@ -205,7 +187,6 @@
 <translation id="6989339256997917931">Το Google Chrome έχει ενημερωθεί, αλλά δεν το έχετε χρησιμοποιήσει για 30 ημέρες τουλάχιστον.</translation>
 <translation id="7098166902387133879">Το Google Chrome χρησιμοποιεί το μικρόφωνό σας.</translation>
 <translation id="7106741999175697885">Διαχείριση Εργασιών - Google Chrome</translation>
-<translation id="7164397146364144019">Μπορείτε να βοηθήσετε να κάνουμε το Chromium πιο ασφαλές και εύχρηστο αναφέροντας αυτόματα στην Google λεπτομέρειες σχετικά με πιθανά περιστατικά ασφάλειας.</translation>
 <translation id="7242029209006116544">Είστε συνδεδεμένοι με έναν διαχειριζόμενο λογαριασμό και παραχωρείτε στο διαχειριστή του τον έλεγχο του προφίλ σας στο Google Chrome. Τα δεδομένα σας στο Chrome, όπως οι εφαρμογές, οι σελιδοδείκτες, το ιστορικό, οι κωδικοί πρόσβασης και άλλες ρυθμίσεις θα συνδεθούν μόνιμα με το όνομα χρήστη <ph name="USER_NAME" />. Θα έχετε τη δυνατότητα να διαγράψετε αυτά τα δεδομένα μέσω του Πίνακα ελέγχου των Λογαριασμών Google, αλλά δεν θα μπορείτε να τα συσχετίσετε με άλλο λογαριασμό. Αν θέλετε, μπορείτε να δημιουργήσετε ένα νέο προφίλ στο οποίο θα διατηρηθούν ξεχωριστά τα υπάρχοντα δεδομένα του Chrome. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Αυτή η γλώσσα χρησιμοποιείται για την προβολή της διεπαφής Google Chrome</translation>
 <translation id="7296210096911315575">Σημαντικές πληροφορίες χρήσης και ασφάλειας</translation>
@@ -214,7 +195,6 @@
 <translation id="7398801000654795464">Συνδεθήκατε στο Chrome ως <ph name="USER_EMAIL_ADDRESS" />. Χρησιμοποιήστε τον ίδιο λογαριασμό για να συνδεθείτε ξανά.</translation>
 <translation id="7408085963519505752">Όροι Chrome OS</translation>
 <translation id="7419046106786626209">Το Chrome OS δεν μπόρεσε να συγχρονίσει τα δεδομένα σας, επειδή ο συγχρονισμός δεν είναι διαθέσιμος για τον τομέα σας.</translation>
-<translation id="7459554271817304652">Ρυθμίστε τον συγχρονισμό για την αποθήκευση όλων των εξατομικευμένων λειτουργιών του προγράμματος περιήγησής σας στον ιστό και μεταβείτε σε αυτές από το Google Chrome μέσω οποιουδήποτε υπολογιστή.</translation>
 <translation id="7486227612705979895">Το Chrome θα αποκτήσει πρόσβαση στο Drive, για να κάνει προτάσεις στη γραμμή διευθύνσεων</translation>
 <translation id="7531671357096394523">Κλείστε όλα τα αντίγραφα του Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -238,25 +218,18 @@
 <translation id="7962410387636238736">Αυτός ο υπολογιστής δεν θα λαμβάνει πια ενημερώσεις Google Chrome, επειδή δεν υποστηρίζονται πλέον τα Windows XP και Windows Vista</translation>
 <translation id="8008534537613507642">Επανεγκατάσταση του Chrome</translation>
 <translation id="8013993649590906847">Εάν μια εικόνα δεν έχει κάποια χρήσιμη περιγραφή, το Chrome θα προσπαθήσει να σας προσφέρει μια περιγραφή. Για τη δημιουργία περιγραφών, αποστέλλονται εικόνες στην Google.</translation>
-<translation id="8032142183999901390">Μετά την κατάργηση του λογαριασμού σας στο Chrome, μπορεί να χρειαστεί να επαναφορτώσετε τις ανοικτές καρτέλες σας προκειμένου να εφαρμοστούν οι επιλογές σας.</translation>
 <translation id="8129812357326543296">Σχετικά με &amp;το Google Chrome</translation>
-<translation id="8179874765710681175">Εγκαταστήστε το Chrome στο τηλέφωνό σας. Θα στείλουμε ένα SMS στο τηλέφωνό σας.</translation>
-<translation id="825412236959742607">Αυτή η σελίδα χρησιμοποιεί πάρα πολλή μνήμη. Για αυτόν τον λόγο, το Chrome κατάργησε κάποιο περιεχόμενο.</translation>
 <translation id="8255190535488645436">Το Google Chrome χρησιμοποιεί την κάμερα και το μικρόφωνό σας.</translation>
 <translation id="8286862437124483331">Το Google Chrome προσπαθεί να εμφανίσει τους κωδικούς πρόσβασης. Πληκτρολογήστε τον κωδικό πρόσβασής σας Windows για να το επιτρέψετε αυτό.</translation>
 <translation id="8290100596633877290">Πω πω! Το Google Chrome παρουσίασε σφάλμα. Επανεκκίνηση τώρα;</translation>
 <translation id="8342675569599923794">Αυτό το αρχείο είναι επικίνδυνο και έχει αποκλειστεί από το Chrome.</translation>
 <translation id="8370517070665726704">Πνευματικά δικαιώματα <ph name="YEAR" /> Google LLC. Με την επιφύλαξη παντός δικαιώματος.</translation>
 <translation id="840084489713044809">Το Google Chrome θέλει να εξαγάγει τους κωδικούς πρόσβασής σας.</translation>
-<translation id="8406086379114794905">Βοηθήστε μας να κάνουμε καλύτερο το Chrome</translation>
 <translation id="8455999171311319804">Προαιρετικό: Συμβάλετε στη βελτίωση του Chrome OS στέλνοντας αυτόματα στην Google διαγνωστικά και δεδομένα χρήσης.</translation>
-<translation id="8478823064122749032">Εγκαταστήστε το Chrome στο τηλέφωνό σας. Θα στείλουμε ένα SMS στον αριθμό τηλεφώνου ανάκτησης του λογαριασμού σας: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8498858610309223613">Μόλις εφαρμόστηκε μια ειδική ενημέρωση ασφαλείας για το Google Chrome. Επανεκκινήστε τώρα και θα γίνει επαναφορά των καρτελών σας.</translation>
 <translation id="8521348052903287641">Εισερχόμενος κανόνας για το Google Chrome Dev για να επιτρέπεται η κυκλοφορία του mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Λειτουργία εκκίνησης εφαρμογών Chrome Canary</translation>
 <translation id="8556340503434111824">Υπάρχει μια νέα έκδοση του Google Chrome και είναι ταχύτερη από ποτέ.</translation>
-<translation id="8568392309447938879">Θα πρέπει να έχετε συνδεθεί στο Chrome για να χρησιμοποιείτε εφαρμογές. Αυτό δίνει τη δυνατότητα στο Chrome να συγχρονίσει τις εφαρμογές, τους σελιδοδείκτες, το ιστορικό, τους κωδικούς πρόσβασης και άλλες ρυθμίσεις στις συσκευές σας.</translation>
 <translation id="8606668294522778825">Το Google Chrome ενδέχεται να χρησιμοποιεί υπηρεσίες ιστού για να βελτιώσει την εμπειρία περιήγησής σας. Μπορείτε, εάν θέλετε, να απενεργοποιήσετε αυτές τις υπηρεσίες. <ph name="BEGIN_LINK" />Μάθετε περισσότερα<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Το Google Chrome δεν αποκρίνεται. Επανεκκίνηση τώρα;</translation>
 <translation id="8625237574518804553">{0,plural, =1{Η επανεκκίνηση του Chrome θα γίνει σε 1 λεπτό}other{Η επανεκκίνηση του Chrome θα γίνει σε # λεπτά}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_en-GB.xtb b/chrome/app/resources/google_chrome_strings_en-GB.xtb
index 4684567..64f0ee5 100644
--- a/chrome/app/resources/google_chrome_strings_en-GB.xtb
+++ b/chrome/app/resources/google_chrome_strings_en-GB.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS could not sync your data. Please update your Sync passphrase.</translation>
 <translation id="1302523850133262269">Please wait while Chrome installs the latest system updates.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Get help with using Chrome</translation>
 <translation id="1399397803214730675">This computer already has a more recent version of Google Chrome. If the software is not working, please uninstall Google Chrome and try again.</translation>
 <translation id="1434626383986940139">Chrome Canary Apps</translation>
-<translation id="1469002951682717133">Chrome App Launcher</translation>
 <translation id="1553358976309200471">Update Chrome</translation>
 <translation id="1587223624401073077">Google Chrome is using your camera.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> is dangerous, so Chrome has blocked it.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome will save this password in your Google Account. You won’t have to remember it.</translation>
 <translation id="174539241580958092">Google Chrome could not sync your data due to an error signing in.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Get help with using Chrome OS</translation>
-<translation id="1795405610103747296">Install Chrome on your phone. We’ll send an SMS to your phone: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">By turning this off, you can sign in to Google sites such as Gmail, without signing in to Chrome</translation>
 <translation id="1860536484129686729">Chrome needs permission to access your camera for this site</translation>
 <translation id="1873233029667955273">Google Chrome isn't your default browser</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">For Chrome OS details, please see <ph name="LINK_BEGIN" />
       About Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Please restart Chrome now</translation>
-<translation id="216054706567564023">Install Chrome on your phone. We’ll send an SMS to your account recovery phone number.</translation>
 <translation id="2246246234298806438">Google Chrome cannot show the print preview when the built-in PDF viewer is missing.</translation>
-<translation id="2252923619938421629">Help make Google Chrome better by reporting the current settings</translation>
-<translation id="2286950485307333924">You're now signed in to Chrome</translation>
 <translation id="2290014774651636340">Google API keys are missing. Some functionality of Google Chrome will be disabled.</translation>
 <translation id="2290095356545025170">Are you sure you want to uninstall Google Chrome?</translation>
 <translation id="2309047409763057870">This is a secondary installation of Google Chrome, and cannot be made your default browser.</translation>
-<translation id="2346876346033403680">Someone previously signed in to Chrome on this computer as <ph name="ACCOUNT_EMAIL_LAST" />. If that isn't your account, create a new Chrome user to keep your information separate.
-
-Signing in anyway will merge Chrome information like bookmarks, history and other settings to <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome needs permission to access your camera and microphone for this site</translation>
 <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>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">You're signed in to Chrome!</translation>
 <translation id="2888126860611144412">About Chrome</translation>
 <translation id="3037838751736561277">Google Chrome is in background mode.</translation>
-<translation id="3047079729301751317">Disconnecting <ph name="USERNAME" /> will clear your history, bookmarks, settings and other Chrome data stored on this device. Data stored in your Google Account will not be cleared and can be managed on <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chrome Tab</translation>
 <translation id="3080151273017101988">Continue running background apps when Google Chrome is closed</translation>
 <translation id="3089968997497233615">There's a new, safer version of Google Chrome available.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">Sync and personalise Chrome across your devices</translation>
 <translation id="3622797965165704966">Now it's easier to use Chrome with your Google Account and on shared computers.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />Terms of Service<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">This page uses too much memory, so Chrome paused it.</translation>
 <translation id="3718181793972440140">This will delete 1 item from this device. To retrieve your data later, sign in to Chrome as <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">The extension "<ph name="EXTENSION_NAME" />" has changed the page that is shown when you start Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Relaunch Chrome within a day}other{Relaunch Chrome within # days}}</translation>
 <translation id="424864128008805179">Sign out of Chrome?</translation>
 <translation id="4251615635259297716">Link my Chrome data to this account</translation>
-<translation id="4251625577313994583">get Chrome on your iPhone</translation>
 <translation id="4293420128516039005">Sign in to sync and personalise Chrome across your devices</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">This uses the same spell checker that's used in Google search. Text that you type in the browser is sent to Google. You can always change this behaviour in settings.</translation>
 <translation id="4891791193823137474">Let Google Chrome run in the background</translation>
 <translation id="4895437082222824641">Open link in new Chrome &amp;tab</translation>
-<translation id="4921569541910214635">Share a computer? Now you can set up Chrome just the way you like it.</translation>
 <translation id="4953650215774548573">Set Google Chrome as your default browser</translation>
 <translation id="495931528404527476">In Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">Restart</translation>
 <translation id="5940385492829620908">Your web, bookmarks and other Chrome stuff live here.</translation>
 <translation id="5941830788786076944">Make Google Chrome the default browser</translation>
-<translation id="6014844626092547096">You're now signed in to Chrome! Sync is disabled by your administrator.</translation>
-<translation id="6040143037577758943">Close</translation>
 <translation id="6070348360322141662">For added security, Google Chrome will encrypt your data</translation>
 <translation id="6113794647360055231">Chrome just got better</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">Chrome OS is made possible by additional <ph name="BEGIN_LINK_CROS_OSS" />open-source software<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Updating Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">You're using <ph name="PROFILE_EMAIL" /> to sync your Chrome stuff. To update your sync preference or to use Chrome without a Google Account, visit <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Copied to Chrome</translation>
 <translation id="6676384891291319759">Access the Internet</translation>
 <translation id="6679975945624592337">Let Google Chrome Run in the Background</translation>
 <translation id="6750954913813541382">To fix spelling errors, Chrome sends the text that you type in the browser to Google</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Google Chrome has been updated, but you haven't used it for at least 30 days.</translation>
 <translation id="7098166902387133879">Google Chrome is using your microphone.</translation>
 <translation id="7106741999175697885">Task Manager - Google Chrome</translation>
-<translation id="7164397146364144019">You can help make Chrome safer and easier to use by automatically reporting details of possible security incidents to Google.</translation>
 <translation id="7242029209006116544">You are signing in with a managed account and giving its administrator control over your Google Chrome profile. Your Chrome data, such as your apps, bookmarks, history, passwords and other settings will become permanently tied to <ph name="USER_NAME" />. You will be able to delete this data via the Google Accounts Dashboard, but you will not be able to associate this data with another account. You can optionally create a new profile to keep your existing Chrome data separate. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">This language is used to display the Google Chrome UI</translation>
 <translation id="7296210096911315575">Important use and safety information</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">You were signed in to Chrome as <ph name="USER_EMAIL_ADDRESS" />. Please use the same account to sign in again.</translation>
 <translation id="7408085963519505752">Chrome OS terms</translation>
 <translation id="7419046106786626209">Chrome OS could not sync your data because Sync is not available for your domain.</translation>
-<translation id="7459554271817304652">Set up Sync to save your personalised browser features to the web and access them from Google Chrome on any computer.</translation>
 <translation id="7486227612705979895">Chrome will access your Drive to make suggestions in the address bar</translation>
 <translation id="7531671357096394523">Quit all copies of Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">This computer will no longer receive Google Chrome updates because Windows XP and Windows Vista are no longer supported</translation>
 <translation id="8008534537613507642">Reinstall Chrome</translation>
 <translation id="8013993649590906847">If an image doesn’t have a useful description, Chrome will try to provide one for you. To create descriptions, images are sent to Google.</translation>
-<translation id="8032142183999901390">After removing your account from Chrome, you may need to reload your open tabs to take effect.</translation>
 <translation id="8129812357326543296">About &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Install Chrome on your phone. We’ll send an SMS to your phone.</translation>
-<translation id="825412236959742607">This page uses too much memory, so Chrome removed some content.</translation>
 <translation id="8255190535488645436">Google Chrome is using your camera and microphone.</translation>
 <translation id="8286862437124483331">Google Chrome is trying to show passwords. Type your Windows password to allow this.</translation>
 <translation id="8290100596633877290">Whoa! Google Chrome has crashed. Relaunch now?</translation>
 <translation id="8342675569599923794">This file is dangerous, so Chrome has blocked it.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. All rights reserved.</translation>
 <translation id="840084489713044809">Google Chrome wants to export your passwords.</translation>
-<translation id="8406086379114794905">Help make Chrome better</translation>
 <translation id="8455999171311319804">Optional: Help make Chrome OS better by automatically sending diagnostic and usage data to Google.</translation>
-<translation id="8478823064122749032">Install Chrome on your phone. We’ll send an SMS to your account recovery phone number: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">A special security update for Google Chrome was just applied. Restart now and we'll restore your tabs.</translation>
 <translation id="8521348052903287641">Inbound rule for Google Chrome Dev to allow mDNS traffic.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome App Launcher Canary</translation>
 <translation id="8556340503434111824">There's a new version of Google Chrome available and it's faster than ever.</translation>
-<translation id="8568392309447938879">You need to be signed in to Chrome to use apps. This allows Chrome to sync your apps, bookmarks, history, passwords and other settings across devices.</translation>
 <translation id="8606668294522778825">Google Chrome may use web services to improve your browsing experience. You may optionally disable these services. <ph name="BEGIN_LINK" />Learn more<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome is unresponsive. Relaunch now?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome will relaunch in 1 minute}other{Chrome will relaunch in # minutes}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_es-419.xtb b/chrome/app/resources/google_chrome_strings_es-419.xtb
index d02b72d..72c3dda 100644
--- a/chrome/app/resources/google_chrome_strings_es-419.xtb
+++ b/chrome/app/resources/google_chrome_strings_es-419.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">El Sistema operativo Chrome no pudo sincronizar los datos. Actualiza la frase de contraseña de sincronización.</translation>
 <translation id="1302523850133262269">Espera mientras Chrome instala las últimas actualizaciones del sistema.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Obtener ayuda para utilizar Chrome</translation>
 <translation id="1399397803214730675">Este equipo ya cuenta con una versión más reciente de Google Chrome. Si el software no funciona, desinstala Google Chrome y descárgalo nuevamente.</translation>
 <translation id="1434626383986940139">Aplicaciones de Chrome Canary</translation>
-<translation id="1469002951682717133">Selector de aplicaciones de Google Chrome</translation>
 <translation id="1553358976309200471">Actualizar Chrome</translation>
 <translation id="1587223624401073077">Google Chrome está usando tu cámara.</translation>
 <translation id="1587325591171447154">Chrome bloqueó <ph name="FILE_NAME" /> porque es un archivo peligroso.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome guardará esta contraseña en tu cuenta de Google, por lo que no tendrás que recordarla.</translation>
 <translation id="174539241580958092">Google Chrome no pudo sincronizar los datos porque se produjo un error de acceso.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Obtener ayuda para utilizar Chrome OS</translation>
-<translation id="1795405610103747296">Instala Chrome en el teléfono. Te enviaremos un SMS a ese dispositivo: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Si desactivas esta preferencia, podrás acceder a sitios de Google (como Gmail) sin tener que acceder a Chrome</translation>
 <translation id="1860536484129686729">Chrome necesita permiso para acceder a tu cámara para este sitio</translation>
 <translation id="1873233029667955273">Google Chrome no es tu navegador predeterminado</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Puedes visitar <ph name="LINK_BEGIN" />Acerca del Sistema operativo Chrome<ph name="LINK_END" />
       para obtener información sobre este SO</translation>
 <translation id="2151406531797534936">Reinicia Chrome ahora</translation>
-<translation id="216054706567564023">Instala Chrome en el teléfono. Te enviaremos un SMS al número de teléfono de recuperación de la cuenta.</translation>
 <translation id="2246246234298806438">Google Chrome no puede mostrar la vista previa de impresión si falta el visor de PDF incorporado.</translation>
-<translation id="2252923619938421629">Informa tu configuración actual para ayudarnos a mejorar Google Chrome.</translation>
-<translation id="2286950485307333924">Accediste a Chrome</translation>
 <translation id="2290014774651636340">Faltan las claves de la API de Google. Se inhabilitarán algunas funciones de Google Chrome.</translation>
 <translation id="2290095356545025170">¿Estás seguro de que deseas desinstalar Google Chrome?</translation>
 <translation id="2309047409763057870">Como esta es una instalación secundaria de Google Chrome, no puede establecerse como tu navegador predeterminado.</translation>
-<translation id="2346876346033403680">Alguien accedió anteriormente a Google Chrome en esta computadora como <ph name="ACCOUNT_EMAIL_LAST" />. Si esta no es tu cuenta, crea un nuevo usuario de Google Chrome para mantener tu información por separado.
-
-Si accedes de todos modos, se fusionará la información de Google Chrome, como los favoritos, el historial y otros parámetros de configuración en <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome necesita permiso para acceder a tu cámara y micrófono para este sitio</translation>
 <translation id="2429317896000329049">Google Chrome no pudo sincronizar los datos porque la sincronización no está disponible para el dominio.</translation>
 <translation id="2467438592969358367">Google Chrome desea exportar tus contraseñas. Para permitirlo, ingresa tu contraseña de Windows.</translation>
@@ -83,11 +73,10 @@
 <translation id="2871893339301912279">Accediste a Google Chrome.</translation>
 <translation id="2888126860611144412">Acerca de Chrome</translation>
 <translation id="3037838751736561277">Google Chrome está en modo de segundo plano</translation>
-<translation id="3047079729301751317">Si desconectas <ph name="USERNAME" />, se borrarán el historial, los favoritos, la configuración y otros datos de Chrome almacenados en este dispositivo. Los datos almacenados en la cuenta de Google no se borrarán y se pueden administrar en el <ph name="GOOGLE_DASHBOARD_LINK" />Panel de control de Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Pestaña de Chrome</translation>
 <translation id="3080151273017101988">Seguir ejecutando aplicaciones en segundo plano al cerrar Google Chrome</translation>
 <translation id="3089968997497233615">Hay disponible una versión de Google Chrome más nueva y más segura.</translation>
-<translation id="3138848678222082288">Se instalarán automáticamente las próximas versiones de Chrome. Cuando se complete esta descarga, se reiniciará Chrome y listo.</translation>
+<translation id="3138848678222082288">Se instalarán automáticamente las próximas versiones de Chrome. Cuando se complete esta descarga, se reiniciará Chrome y estará listo.</translation>
 <translation id="3149510190863420837">Aplicaciones de Chrome</translation>
 <translation id="3282568296779691940">Acceder a Chrome</translation>
 <translation id="3340978935015468852">configuración</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Sincroniza y personaliza Chrome en todos tus dispositivos</translation>
 <translation id="3622797965165704966">Ahora es más sencillo utilizar Chrome con la cuenta de Google y en computadoras compartidas.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Condiciones del servicio<ph name="END_TERMS_OF_SERVICE_LINK" /> del Sistema operativo Google Chrome</translation>
-<translation id="3716182511346448902">Chrome pausó esta página porque usa demasiada memoria.</translation>
 <translation id="3718181793972440140">Esta acción borrará 1 elemento de este dispositivo. Si más adelante deseas recuperar los datos, accede a tu cuenta en Chrome como <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">La extensión "<ph name="EXTENSION_NAME" />" cambió la página que se muestra al iniciar Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Reinicia Chrome en el transcurso de 1 día}other{Reinicia Chrome en el transcurso de # días}}</translation>
 <translation id="424864128008805179">¿Quieres salir de Chrome?</translation>
 <translation id="4251615635259297716">¿Quieres vincular tus datos de Google Chrome con esta cuenta?</translation>
-<translation id="4251625577313994583">obtener Chrome para tu iPhone</translation>
 <translation id="4293420128516039005">Accede para sincronizar y personalizar Chrome en todos tus dispositivos</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Se usará el mismo corrector ortográfico que se emplea en la Búsqueda de Google. El texto que escribes en el navegador se envía a Google. Puedes modificar este comportamiento en la configuración en cualquier momento.</translation>
 <translation id="4891791193823137474">Permitir que Google Chrome se ejecute en segundo plano</translation>
 <translation id="4895437082222824641">Abrir vínculo en una pes&amp;taña nueva de Chrome</translation>
-<translation id="4921569541910214635">¿Compartes una computadora? Ahora puedes configurar Chrome como a ti te gusta.</translation>
 <translation id="4953650215774548573">Establecer Google Chrome como navegador predeterminado</translation>
 <translation id="495931528404527476">En Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canario</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Reiniciar</translation>
 <translation id="5940385492829620908">Aquí puedes encontrar tus páginas web, favoritos y otros contenidos de Chrome.</translation>
 <translation id="5941830788786076944">Haga de Google Chrome su navegador predeterminado</translation>
-<translation id="6014844626092547096">Accediste a Chrome. El administrador inhabilitó la sincronización.</translation>
-<translation id="6040143037577758943">Cerrar</translation>
 <translation id="6070348360322141662">Para mejorar la seguridad, Google Chrome encriptará los datos</translation>
 <translation id="6113794647360055231">Chrome mejorado</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">Chrome OS es posible gracias al <ph name="BEGIN_LINK_CROS_OSS" />software de código abierto<ph name="END_LINK_CROS_OSS" /> adicional.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" />: Versión para desarrolladores de Google Chrome</translation>
 <translation id="6566149418543181476">Actualizando Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Estás utilizando <ph name="PROFILE_EMAIL" /> para sincronizar los datos de Chrome. Si quieres actualizar las preferencias de sincronización o utilizar Chrome sin una cuenta de Google, accede a <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Se copió en Chrome.</translation>
 <translation id="6676384891291319759">Acceder a Internet</translation>
 <translation id="6679975945624592337">Permitir que Google Chrome se ejecute en segundo plano</translation>
 <translation id="6750954913813541382">Para corregir los errores ortográficos, Chrome envía a Google lo que escribes en el navegador</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome fue actualizado, pero no lo has utilizado en los últimos 30 días.</translation>
 <translation id="7098166902387133879">Google Chrome está usando tu micrófono.</translation>
 <translation id="7106741999175697885">Administrador de tareas - Google Chrome</translation>
-<translation id="7164397146364144019">Puedes ayudar a que Chrome sea más seguro y fácil de usar si informas automáticamente detalles de posibles incidentes de seguridad en Google.</translation>
 <translation id="7242029209006116544">Estás por acceder con una cuenta administrada, lo que significa que proporcionarás al administrador el control sobre tu perfil de Google Chrome. Tus datos de Google Chrome, como las aplicaciones, los favoritos, el historial, las contraseñas y otros parámetros de configuración quedarán vinculados a <ph name="USER_NAME" /> de forma permanente. Podrás eliminar estos datos a través del Panel de control de Cuentas de Google, pero no podrás asociarlos a otra cuenta. También puedes crear un perfil para mantener separados tus datos de Chrome. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Este idioma se usa para mostrar la IU de Google Chrome</translation>
 <translation id="7296210096911315575">Información importante sobre el uso y la seguridad</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Accediste a Google Chrome con <ph name="USER_EMAIL_ADDRESS" />. Usa la misma cuenta para volver a acceder.</translation>
 <translation id="7408085963519505752">Condiciones del Sistema operativo Chrome</translation>
 <translation id="7419046106786626209">El Sistema operativo Chrome no pudo sincronizar los datos porque la sincronización no está disponible para el dominio.</translation>
-<translation id="7459554271817304652">Configura la sincronización para guardar las funciones personalizadas de tu navegador en la Web y acceder a ellas desde Google Chrome en cualquier equipo.</translation>
 <translation id="7486227612705979895">Chrome accederá a tus datos de Drive para hacer sugerencias en la barra de direcciones</translation>
 <translation id="7531671357096394523">Sal de todas las copias de Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Esta computadora dejará de recibir actualizaciones de Google Chrome porque Windows XP y Windows Vista ya no son compatibles</translation>
 <translation id="8008534537613507642">Reinstalar Chrome</translation>
 <translation id="8013993649590906847">Si una imagen no tiene una descripción útil, Chrome intentará proporcionarte una. Para crear descripciones, se envían las imágenes a Google.</translation>
-<translation id="8032142183999901390">Luego de eliminar la cuenta de Chrome, es posible que debas volver a cargar las pestañas abiertas para que se aplique el cambio.</translation>
 <translation id="8129812357326543296">Acerca de &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Instala Chrome en el teléfono. Te enviaremos un SMS a ese dispositivo.</translation>
-<translation id="825412236959742607">Chrome quitó parte del contenido de esta página porque usa demasiada memoria.</translation>
 <translation id="8255190535488645436">Google Chrome está usando tu cámara y tu micrófono.</translation>
 <translation id="8286862437124483331">Google Chrome está intentando mostrar contraseñas. Para permitirlo, ingresa tu contraseña de Windows.</translation>
 <translation id="8290100596633877290">¡Vaya! Se ha producido un bloqueo en Google Chrome. ¿Quieres reiniciar el navegador ahora?</translation>
 <translation id="8342675569599923794">Chrome bloqueó este archivo porque es peligroso.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Todos los derechos reservados.</translation>
 <translation id="840084489713044809">Google Chrome desea exportar tus contraseñas.</translation>
-<translation id="8406086379114794905">Ayudar a mejorar Chrome</translation>
 <translation id="8455999171311319804">Opcional: Para ayudarnos a mejorar el sistema operativo Chrome, envía datos de uso y diagnóstico a Google.</translation>
-<translation id="8478823064122749032">Instala Chrome en el teléfono. Te enviaremos un SMS al número de teléfono de recuperación de la cuenta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Se acaba de instalar una actualización de seguridad especial para Google Chrome. Reinicia el navegador ahora (se restablecerán tus pestañas).</translation>
 <translation id="8521348052903287641">Regla de entrada para que Google Chrome Dev permita el tráfico mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Selector de aplicaciones de Google Chrome Canary</translation>
 <translation id="8556340503434111824">Hay una nueva versión de Google Chrome disponible, y es más rápida que nunca.</translation>
-<translation id="8568392309447938879">Para usar las aplicaciones, tienes que acceder a Chrome. De este modo, Chrome puede sincronizar las aplicaciones, los favoritos, el historial, las contraseñas y otros parámetros de configuración en los dispositivos.</translation>
 <translation id="8606668294522778825">Es posible que Google Chrome utilice servicios web para mejorar tu experiencia de navegación (tienes la opción de inhabilitar estos servicios). <ph name="BEGIN_LINK" />Más información<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome no responde. ¿Quieres reiniciarlo ahora?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Se reiniciará Chrome en 1 minuto}other{Se reiniciará Chrome en # minutos}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_es.xtb b/chrome/app/resources/google_chrome_strings_es.xtb
index af5caa994..6233a97 100644
--- a/chrome/app/resources/google_chrome_strings_es.xtb
+++ b/chrome/app/resources/google_chrome_strings_es.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS no ha podido sincronizar tus datos. Actualiza tu frase de contraseña de sincronización.</translation>
 <translation id="1302523850133262269">Espera mientras Chrome instala las últimas actualizaciones del sistema.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Obtener ayuda de Chrome</translation>
 <translation id="1399397803214730675">Este ordenador tiene instalada una versión más reciente de Google Chrome. Si el software no funciona, desinstala Google Chrome y vuelve a intentarlo.</translation>
 <translation id="1434626383986940139">Aplicaciones de Chrome Canary</translation>
-<translation id="1469002951682717133">Menú de aplicaciones de Chrome</translation>
 <translation id="1553358976309200471">Actualizar Chrome</translation>
 <translation id="1587223624401073077">Google Chrome está utilizando la cámara.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> es peligroso, por lo que Chrome lo ha bloqueado.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome guardará esta contraseña en tu cuenta de Google para que no tengas que recordarla.</translation>
 <translation id="174539241580958092">Google Chrome no ha podido sincronizar los datos debido a un error de inicio de sesión.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Obtener ayuda de Chrome OS</translation>
-<translation id="1795405610103747296">Instala Chrome en tu teléfono. Te enviaremos un SMS al siguiente número: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Si esta opción está desactivada, puedes iniciar sesión en sitios de Google, como Gmail, sin hacerlo en Chrome</translation>
 <translation id="1860536484129686729">Chrome necesita permiso para acceder a la cámara en este sitio web</translation>
 <translation id="1873233029667955273">Google Chrome no es tu navegador predeterminado</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">Para obtener más información sobre Chrome OS, consulta <ph name="LINK_BEGIN" />
       Información de Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Reinicia Chrome ahora</translation>
-<translation id="216054706567564023">Instala Chrome en tu teléfono. Te enviaremos un SMS al número de recuperación de la cuenta.</translation>
 <translation id="2246246234298806438">Google Chrome no puede mostrar la vista previa de impresión si falta el visor de PDFs integrado.</translation>
-<translation id="2252923619938421629">Ayuda a mejorar Google Chrome notificando la configuración actual</translation>
-<translation id="2286950485307333924">Has iniciado sesión en Chrome</translation>
 <translation id="2290014774651636340">Faltan las claves de la API de Google. Se inhabilitarán algunas funciones de Google Chrome.</translation>
 <translation id="2290095356545025170">¿Seguro que quieres desinstalar Google Chrome?</translation>
 <translation id="2309047409763057870">Esta instalación de Google Chrome es secundaria, por lo que no se puede establecer como navegador predeterminado.</translation>
-<translation id="2346876346033403680">Anteriormente, alguien inició sesión como <ph name="ACCOUNT_EMAIL_LAST" /> en Chrome en este ordenador. Si esta no es tu cuenta, crea un nuevo usuario de Chrome para mantener tu información por separado.
-
-Si decides iniciar sesión de todas formas, se fusionará la información de Chrome, como marcadores, historial y otras opciones, con la de <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome necesita permiso para acceder a la cámara y al micrófono en este sitio web</translation>
 <translation id="2429317896000329049">Google Chrome no ha podido sincronizar los datos porque la función de sincronización no está disponible para tu dominio.</translation>
 <translation id="2467438592969358367">Google Chrome quiere exportar tus contraseñas. Escribe tu contraseña de Windows para permitirlo.</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">Has iniciado sesión en Chrome</translation>
 <translation id="2888126860611144412">Información de Chrome</translation>
 <translation id="3037838751736561277">Google Chrome está en modo de segundo plano.</translation>
-<translation id="3047079729301751317">Si desvinculas a <ph name="USERNAME" />, se borrarán tu historial, tus marcadores, tu configuración y otros datos de Chrome almacenados en este dispositivo. No obstante, no se borrarán los datos almacenados en tu cuenta de Google y se podrán administrar en el <ph name="GOOGLE_DASHBOARD_LINK" />Panel de control de Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Pestaña de Chrome</translation>
 <translation id="3080151273017101988">Seguir ejecutando aplicaciones en segundo plano al cerrar Google Chrome</translation>
 <translation id="3089968997497233615">Hay una nueva versión más segura de Google Chrome disponible.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">Sincroniza y personaliza Chrome en todos tus dispositivos</translation>
 <translation id="3622797965165704966">Ahora es más fácil utilizar Chrome con tu cuenta de Google y en ordenadores compartidos.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Condiciones de Servicio<ph name="END_TERMS_OF_SERVICE_LINK" /> de Google Chrome OS</translation>
-<translation id="3716182511346448902">Esta página utiliza demasiada memoria y Chrome la ha pausado.</translation>
 <translation id="3718181793972440140">Se eliminará un elemento de este dispositivo. Para recuperar tus datos en otro momento, inicia sesión en Chrome como <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">La extensión <ph name="EXTENSION_NAME" /> ha cambiado la página que se muestra al iniciar Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Reiniciar Chrome en el transcurso de 1 día}other{Reiniciar Chrome en el transcurso de # días}}</translation>
 <translation id="424864128008805179">¿Quieres cerrar sesión en Chrome?</translation>
 <translation id="4251615635259297716">¿Quieres vincular tus datos de Chrome a esta cuenta?</translation>
-<translation id="4251625577313994583">descarga Chrome en tu iPhone</translation>
 <translation id="4293420128516039005">Inicia sesión para sincronizar y personalizar Chrome en todos tus dispositivos</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">SO de Chrome</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">Utiliza el mismo corrector ortográfico que se usa en la Búsqueda de Google. El texto que escribas en el navegador se enviará a Google. Puedes cambiar esta opción en cualquier momento desde los ajustes.</translation>
 <translation id="4891791193823137474">Permitir que Google Chrome se ejecute en segundo plano</translation>
 <translation id="4895437082222824641">Abrir enlace en una pes&amp;taña nueva de Chrome</translation>
-<translation id="4921569541910214635">Si compartes un ordenador, ahora puedes configurar Chrome como quieras.</translation>
 <translation id="4953650215774548573">Establecer Google Chrome como navegador predeterminado</translation>
 <translation id="495931528404527476">En Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">Reiniciar</translation>
 <translation id="5940385492829620908">Aquí puedes encontrar tus páginas web, tus marcadores y otros contenidos de Chrome.</translation>
 <translation id="5941830788786076944">Establecer Google Chrome como navegador predeterminado</translation>
-<translation id="6014844626092547096">Has iniciado sesión en Chrome. El administrador ha inhabilitado la sincronización.</translation>
-<translation id="6040143037577758943">Cerrar</translation>
 <translation id="6070348360322141662">Para mayor seguridad, Google Chrome cifrará tus datos</translation>
 <translation id="6113794647360055231">Chrome mejor que nunca</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">Chrome OS está creado con <ph name="BEGIN_LINK_CROS_OSS" />software libre<ph name="END_LINK_CROS_OSS" /> adicional.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> ‑ Google Chrome Dev</translation>
 <translation id="6566149418543181476">Actualizando Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Estás utilizando <ph name="PROFILE_EMAIL" /> para sincronizar tu contenido de Chrome. Para actualizar tus preferencias de sincronización o utilizar Chrome sin una cuenta de Google, accede a <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Copiada a Chrome</translation>
 <translation id="6676384891291319759">Accede a Internet.</translation>
 <translation id="6679975945624592337">Permitir que Google Chrome se ejecute en segundo plano</translation>
 <translation id="6750954913813541382">Chrome envía a Google el texto que escribes en el navegador para corregir los errores ortográficos</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Google Chrome se ha actualizado, pero llevas al menos 30 días sin utilizarlo.</translation>
 <translation id="7098166902387133879">Google Chrome está utilizando el micrófono.</translation>
 <translation id="7106741999175697885">Administrador de tareas de Google Chrome</translation>
-<translation id="7164397146364144019">Puedes ayudar a que Chrome sea más seguro y más fácil de utilizar enviando a Google automáticamente información sobre posibles incidentes de seguridad.</translation>
 <translation id="7242029209006116544">Vas a iniciar sesión con una cuenta gestionada, lo que significa que proporcionarás a su administrador control sobre tu perfil de Google Chrome. Tus datos de Chrome como, por ejemplo, tus aplicaciones, tus marcadores, tu historial, tus contraseñas y otras opciones se vincularán de forma permanente a la cuenta <ph name="USER_NAME" />. Podrás eliminar estos datos a través del Panel de control de cuentas de Google, pero no podrás asociar estos datos a otra cuenta. De forma opcional, puedes crear un nuevo perfil para mantener separados tus datos de Chrome. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">La UI de Google Chrome se muestra en este idioma</translation>
 <translation id="7296210096911315575">Información importante sobre el uso y la seguridad</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">Habías iniciado sesión en Chrome como <ph name="USER_EMAIL_ADDRESS" />. Utiliza la misma cuenta para volver a iniciar sesión.</translation>
 <translation id="7408085963519505752">Condiciones de Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS no ha podido sincronizar los datos porque la función de sincronización no está disponible para tu dominio.</translation>
-<translation id="7459554271817304652">Configura la sincronización para guardar las funciones personalizadas de tu navegador en la Web y acceder a ellas desde Google Chrome en cualquier ordenador.</translation>
 <translation id="7486227612705979895">Chrome accederá a tu Drive para mostrarte sugerencias en la barra de direcciones</translation>
 <translation id="7531671357096394523">Cierra todas las instancias de Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">Este ordenador dejará de recibir actualizaciones de Google Chrome porque ya no es compatible con Windows XP ni Windows Vista.</translation>
 <translation id="8008534537613507642">Reinstalar Chrome</translation>
 <translation id="8013993649590906847">Si una imagen no tiene ninguna descripción útil, Chrome intentará proporcionártela. Para crear las descripciones, las imágenes se envían a Google.</translation>
-<translation id="8032142183999901390">Después de eliminar tu cuenta de Chrome, es posible que tengas que volver a cargar las pestañas abiertas para que el cambio se aplique.</translation>
 <translation id="8129812357326543296">Información de &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Instala Chrome en tu teléfono. Te enviaremos un SMS a tu teléfono.</translation>
-<translation id="825412236959742607">Esta página utiliza demasiada memoria, por lo que Chrome ha eliminado parte del contenido.</translation>
 <translation id="8255190535488645436">Google Chrome está utilizando la cámara y el micrófono.</translation>
 <translation id="8286862437124483331">Google Chrome está intentando mostrar contraseñas. Para permitirlo, escribe tu contraseña de Windows.</translation>
 <translation id="8290100596633877290">¡Vaya! Se ha producido un fallo en Google Chrome. ¿Quieres reiniciar el navegador ahora?</translation>
 <translation id="8342675569599923794">Este archivo es peligroso, por lo que Chrome lo ha bloqueado.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Todos los derechos reservados.</translation>
 <translation id="840084489713044809">Google Chrome quiere exportar tus contraseñas.</translation>
-<translation id="8406086379114794905">Ayuda a mejorar Chrome</translation>
 <translation id="8455999171311319804">Opcional: Envía datos de uso y diagnóstico automáticamente a Google para ayudarnos a mejorar Chrome OS.</translation>
-<translation id="8478823064122749032">Instala Chrome en tu teléfono. Te enviaremos un SMS al número de recuperación de la cuenta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Se acaba de instalar una actualización de seguridad especial para Google Chrome. Reinicia ahora y restauraremos las pestañas.</translation>
 <translation id="8521348052903287641">Regla entrante para que Google Chrome Dev permita tráfico mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Barra de aplicaciones de Google Chrome Canary</translation>
 <translation id="8556340503434111824">Hay una nueva versión de Google Chrome disponible que funciona a una velocidad sin precedentes.</translation>
-<translation id="8568392309447938879">Para usar las aplicaciones, debes iniciar sesión en Chrome. De ese modo, Chrome podrá sincronizar tus aplicaciones, tus marcadores, tu historial, tus contraseñas y otras opciones en distintos dispositivos.</translation>
 <translation id="8606668294522778825">Google Chrome puede utilizar servicios web para mejorar tu experiencia de navegación. Puedes habilitar o inhabilitar estos servicios. <ph name="BEGIN_LINK" />Más información<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome no responde. ¿Quieres reiniciarlo ahora?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome se reiniciará dentro de 1 minuto}other{Chrome se reiniciará dentro de # minutos}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_et.xtb b/chrome/app/resources/google_chrome_strings_et.xtb
index 5fa6bae..99d10ca 100644
--- a/chrome/app/resources/google_chrome_strings_et.xtb
+++ b/chrome/app/resources/google_chrome_strings_et.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS ei saanud teie andmeid sünkroonida. Värskendage oma sünkroonimisparooli.</translation>
 <translation id="1302523850133262269">Oodake, kuni Chrome installib uusimad süsteemivärskendused.</translation>
 <translation id="137466361146087520">Google Chrome'i beetaversioon</translation>
-<translation id="1393853151966637042">Hankige abi Chrome'i kasutamise kohta</translation>
 <translation id="1399397803214730675">Selles arvutis on juba Google Chrome'i uuem versioon. Kui tarkvara ei tööta, desinstallige Google Chrome ja proovige uuesti.</translation>
 <translation id="1434626383986940139">Chrome Canary rakendused</translation>
-<translation id="1469002951682717133">Chrome'i rakenduste käiviti</translation>
 <translation id="1553358976309200471">Värskenda Chrome'i</translation>
 <translation id="1587223624401073077">Google Chrome kasutab teie kaamerat.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> on ohtlik, mistõttu Chrome blokeeris selle.</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">Chrome salvestab selle parooli teie Google'i kontole. Te ei pea seda meeles pidama.</translation>
 <translation id="174539241580958092">Google Chrome ei saanud sisselogimisvea tõttu teie andmeid sünkroonida.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Hankige abi Chrome OS-i kasutamise kohta</translation>
-<translation id="1795405610103747296">Installige Chrome oma telefoni. Saadame SMS-i teie telefoni: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Kui selle välja lülitate, saate Google'i saitidele (nt Gmaili) sisse logida ilma Chrome'i sisse logimata</translation>
 <translation id="1860536484129686729">Chrome vajab selle saidi puhul luba, et teie kaamerale juurde pääseda</translation>
 <translation id="1873233029667955273">Google Chrome ei ole vaikebrauser</translation>
@@ -54,16 +50,10 @@
 <translation id="2128103434102193461">Chrome OS-i üksikasjade nägemiseks avage leht <ph name="LINK_BEGIN" />
       Teave Chrome OS-i kohta<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Käivitage Chrome kohe uuesti</translation>
-<translation id="216054706567564023">Installige Chrome oma telefoni. Saadame SMS-i teie konto taastamise telefoninumbrile.</translation>
 <translation id="2246246234298806438">Google Chrome ei saa kuvada printimise eelvaadet, kui sisseehitatud PDF-vaatur puudub.</translation>
-<translation id="2252923619938421629">Aidake muuta Google Chrome paremaks, teavitades meid praegustest seadetest</translation>
-<translation id="2286950485307333924">Olete nüüd Chrome'i sisse logitud</translation>
 <translation id="2290014774651636340">Google API võtmed on puudu. Google Chrome'i teatud funktsioonid keelatakse.</translation>
 <translation id="2290095356545025170">Olete kindel, et soovite Google Chrome'i desinstallida?</translation>
 <translation id="2309047409763057870">See on Google Chrome'i sekundaarne install ja seda ei saa määrata vaikebrauseriks.</translation>
-<translation id="2346876346033403680">Keegi on varem selles arvutis Chrome'i sisse loginud kasutajana <ph name="ACCOUNT_EMAIL_LAST" />. Kui see pole teie konto, looge uus Chrome'i kasutaja, et oma teave eraldi hoida.
-
-Kui logite siiski sisse, liidetakse Chrome'i teave, nagu järjehoidjad, ajalugu ja muud seaded, kontoga <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome vajab selle saidi puhul luba, et teie kaamerale ja mikrofonile juurde pääseda</translation>
 <translation id="2429317896000329049">Google Chrome ei saa teie andmeid sünkroonida, sest sünkroonimine pole teie domeenil saadaval.</translation>
 <translation id="2467438592969358367">Google Chrome soovib teie paroole eksportida. Selle lubamiseks sisestage oma Windowsi parool.</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">Olete Chrome'i sisse logitud.</translation>
 <translation id="2888126860611144412">Teave Chrome'i kohta</translation>
 <translation id="3037838751736561277">Google Chrome on taustarežiimis.</translation>
-<translation id="3047079729301751317">Kui katkestate ühenduse kasutajaga <ph name="USERNAME" />, siis kustutatakse sellesse seadmesse salvestatud ajalugu, järjehoidjad, seaded ja muud Chrome'i andmed. Google'i kontole salvestatud andmeid ei kustutata ja neid saab hallata <ph name="GOOGLE_DASHBOARD_LINK" />Google'i juhtpaneelil<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chrome'i vaheleht</translation>
 <translation id="3080151273017101988">Jätka taustal olevate rakenduste tööd, kui Google Chrome on suletud</translation>
 <translation id="3089968997497233615">Saadaval on uus ja turvalisem Google Chrome'i versioon.</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">Sünkroonige ja isikupärastage Chrome kõigis oma seadmetes</translation>
 <translation id="3622797965165704966">Nüüd on Chrome'i lihtsam kasutada Google'i kontoga ja jagatud arvutites.</translation>
 <translation id="3637702109597584617">Google Chrome OS-i <ph name="TERMS_OF_SERVICE_LINK" />teenusetingimused<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Chrome peatas selle lehe, kuna see kasutab liiga palju mälu.</translation>
 <translation id="3718181793972440140">See kustutab seadmest ühe üksuse. Hiljem oma andmete toomiseks logige Chrome'i sisse kasutajana <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Laiendus „<ph name="EXTENSION_NAME" />” muutis seda, milline leht kuvatakse Chrome'i käivitamisel.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Käivitage Chrome uuesti päeva jooksul}other{Käivitage Chrome uuesti # päeva jooksul}}</translation>
 <translation id="424864128008805179">Kas logida Chrome'ist välja?</translation>
 <translation id="4251615635259297716">Kas soovite linkida Chrome'i andmed selle kontoga?</translation>
-<translation id="4251625577313994583">hankige oma iPhone'ile Chrome</translation>
 <translation id="4293420128516039005">Logige sisse, et Chrome kõigis oma seadmetes sünkroonida ja isikupärastada</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">See kasutab sama õigekirjakontrolli, mida kasutatakse Google'i otsingus. Brauseris sisestatav tekst saadetakse Google'ile. Seda käitumist saab seadetes alati muuta.</translation>
 <translation id="4891791193823137474">Luba Google Chrome'i töötamine taustal</translation>
 <translation id="4895437082222824641">Ava link Chrome'i uuel &amp;vahelehel</translation>
-<translation id="4921569541910214635">Kas jagage arvutit? Saate nüüd seadistada Chrome'i just nii, nagu teile meeldib.</translation>
 <translation id="4953650215774548573">Määra Google Chrome vaikebrauseriks</translation>
 <translation id="495931528404527476">Chrome'is</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -176,8 +162,6 @@
 <translation id="5895138241574237353">Taaskäivitamine</translation>
 <translation id="5940385492829620908">Siin asuvad teie veeb, järjehoidjad ja muu Chrome'i kraam.</translation>
 <translation id="5941830788786076944">Tee Google Chrome vaikebrauseriks</translation>
-<translation id="6014844626092547096">Olete nüüd Chrome'i sisse logitud. Administraator on sünkroonimise keelanud.</translation>
-<translation id="6040143037577758943">Sulge</translation>
 <translation id="6070348360322141662">Turvalisuse suurendamiseks krüpteerib Google Chrome teie andmed</translation>
 <translation id="6113794647360055231">Chrome muutus just paremaks</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -190,8 +174,6 @@
 <translation id="6368958679917195344">Chrome OS on võimalik tänu <ph name="BEGIN_LINK_CROS_OSS" />avatud lähtekoodiga lisatarkvarale<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome'i värskendamine (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Kasutate Chrome'i kraami sünkroonimiseks kontot <ph name="PROFILE_EMAIL" />. Sünkroonimiseelistuste värskendamiseks või Chrome'i kasutamiseks ilma Google`i kontota avage <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Chrome'i kopeeritud</translation>
 <translation id="6676384891291319759">Pääs Internetti</translation>
 <translation id="6679975945624592337">Luba Google Chrome'il taustal töötada</translation>
 <translation id="6750954913813541382">Õigekirjavigade parandamiseks saadab Chrome brauseris sisestatava teksti Google'ile</translation>
@@ -205,7 +187,6 @@
 <translation id="6989339256997917931">Google Chrome'i on värskendatud, aga te pole seda kasutanud vähemalt 30 päeva.</translation>
 <translation id="7098166902387133879">Google Chrome kasutab teie mikrofoni.</translation>
 <translation id="7106741999175697885">Tegumihaldur - Google Chrome</translation>
-<translation id="7164397146364144019">Saate aidata muuta Chrome'i turvalisemaks ja lihtsamalt kasutatavaks, kui teavitate Google'it automaatselt võimalike turvaintsidentide üksikasjadest.</translation>
 <translation id="7242029209006116544">Logite sisse hallatud kontoga ja annate selle administraatorile üle oma Google Chrome'i profiili juhtimise. Teie Chrome'i andmed, näiteks rakendused, järjehoidjad, ajalugu, paroolid ja muud seaded seotakse jäädavalt kasutajaga <ph name="USER_NAME" />. Saate need andmed Google'i kontode juhtpaneeli kaudu kustutada, kuid te ei saa neid seostada teise kontoga. Võite olemasolevate Chrome'i andmete eraldi hoidmiseks luua aga uue profiili. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Seda keelt kasutatakse Google Chrome’i UI kuvamiseks</translation>
 <translation id="7296210096911315575">Tähtis kasutus- ja ohutusteave</translation>
@@ -214,7 +195,6 @@
 <translation id="7398801000654795464">Olite Chrome'i sisse logitud kasutajana <ph name="USER_EMAIL_ADDRESS" />. Kasutage uuesti sisselogimiseks sama kontot.</translation>
 <translation id="7408085963519505752">Chrome OS-i tingimused</translation>
 <translation id="7419046106786626209">Google OS ei saanud teie andmeid sünkroonida, sest sünkroonimine pole teie domeenil saadaval.</translation>
-<translation id="7459554271817304652">Seadistage sünkroonimine, et salvestada brauseri isikupärastatud funktsioonid veebi, misjuhul pääsete Google Chrome'i kaudu igast arvutist nende juurde.</translation>
 <translation id="7486227612705979895">Chrome pääseb teie Drive'ile juurde, et aadressiribal soovitusi anda</translation>
 <translation id="7531671357096394523">Sulgege kõik Chrome'i eksemplarid.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -238,25 +218,18 @@
 <translation id="7962410387636238736">See arvuti ei saa enam Google Chrome'i värskendusi, kuna Windows XP-d ja Windows Vistat enam ei toetata</translation>
 <translation id="8008534537613507642">Installi Chrome uuesti</translation>
 <translation id="8013993649590906847">Kui pildil puudub kasulik kirjeldus, üritab Chrome selle ise luua. Kirjelduste loomiseks saadetakse pildid Google'ile.</translation>
-<translation id="8032142183999901390">Pärast konto eemaldamist Chrome'ist tuleb avatud vahekaardid võib-olla uuesti laadida, et need toimiksid.</translation>
 <translation id="8129812357326543296">Teave &amp;Google Chrome'i kohta</translation>
-<translation id="8179874765710681175">Installige Chrome oma telefoni. Saadame teie telefoni SMS-i.</translation>
-<translation id="825412236959742607">Chrome eemaldas osa sisust, kuna leht kasutab liiga palju mälu.</translation>
 <translation id="8255190535488645436">Google Chrome kasutab kaamerat ja mikrofoni.</translation>
 <translation id="8286862437124483331">Google Chrome proovib kuvada paroole. Selle lubamiseks sisestage Windowsi parool.</translation>
 <translation id="8290100596633877290">Tohoh! Google Chrome jooksis kokku. Kas soovite kohe taaskäivitada?</translation>
 <translation id="8342675569599923794">Chrome blokeeris faili, kuna see on ohtlik.</translation>
 <translation id="8370517070665726704">Autoriõigus <ph name="YEAR" /> Google LLC. Kõik õigused on kaitstud.</translation>
 <translation id="840084489713044809">Google Chrome soovib teie paroole eksportida.</translation>
-<translation id="8406086379114794905">Aidake Chrome'i täiustada</translation>
 <translation id="8455999171311319804">Valikuline: aitate Chrome OS-i täiustada, kui lubate diagnostika- ja kasutusandmete automaatse saatmise Google'ile.</translation>
-<translation id="8478823064122749032">Installige Chrome oma telefoni. Saadame SMS-i teie konto taastamise telefoninumbrile: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Äsja rakendati Google Chrome'i spetsiaalne turvavärskendus. Taaskäivitage brauser, misjärel taastame teie vahelehed.</translation>
 <translation id="8521348052903287641">Sissetuleku reegel Google Chrome Devile mDNS-liikluse lubamiseks.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome'i rakenduste käiviti Canary</translation>
 <translation id="8556340503434111824">Saadaval on uus Google Chrome'i versioon ja see on senistest kiireim.</translation>
-<translation id="8568392309447938879">Rakenduste kasutamiseks peate olema Chrome'i sisse logitud. See võimaldab Chrome'il sünkroonida teie rakendusi, järjehoidjaid, ajalugu, paroole ja muid seadeid erinevates seadmetes.</translation>
 <translation id="8606668294522778825">Google Chrome võib kasutada veebiteenuseid sirvimiskogemuse parandamiseks. Võite need teenused valikuliselt keelata. <ph name="BEGIN_LINK" />Lisateave<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome ei reageeri. Kas soovite kohe taaskäivitada?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome käivitatakse uuesti 1 minuti pärast}other{Chrome käivitatakse uuesti # minuti pärast}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_fa.xtb b/chrome/app/resources/google_chrome_strings_fa.xtb
index 3681b42..05b15c5 100644
--- a/chrome/app/resources/google_chrome_strings_fa.xtb
+++ b/chrome/app/resources/google_chrome_strings_fa.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">‏سیستم‌عامل Chrome قادر به همگام‌سازی داده‌های شما نبود. لطفاً رمز عبارتی همگام‌سازی خود را به‌روز کنید.</translation>
 <translation id="1302523850133262269">‏لطفاً صبر کنید تا Chrome جدیدترین به‌روزرسانی‌های سیستم را نصب کند.</translation>
 <translation id="137466361146087520">‏Google Chrome نسخه بتا</translation>
-<translation id="1393853151966637042">‏دریافت راهنمایی برای استفاده از Chrome</translation>
 <translation id="1399397803214730675">‏این رایانه از قبل دارای نسخه جدیدتر Google Chrome است. اگر نرم‌افزار کار نمی‌کند، لطفاً Google Chrome را حذف نصب کرده و دوباره امتحان کنید.</translation>
 <translation id="1434626383986940139">‏برنامه‌های Chrome Canary</translation>
-<translation id="1469002951682717133">‏را‌ه‌انداز برنامه Chrome</translation>
 <translation id="1553358976309200471">‏به‌روزرسانی Chrome</translation>
 <translation id="1587223624401073077">‏Google Chrome درحال استفاده از دوربین شما است.</translation>
 <translation id="1587325591171447154">‏<ph name="FILE_NAME" /> خطرناک است، بنابراین Chrome آن را مسدود کرده ست.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">‏Chrome این گذرواژه را در حساب Google شما ذخیره می‌کند. لازم نیست آن را به خاطر بسپارید.</translation>
 <translation id="174539241580958092">‏به دلیل وجود خطا در ورود به سیستم، Google Chrome قادر به همگام‌سازی داده‌های شما نبود.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">‏دریافت راهنمایی برای استفاده از سیستم عامل Chrome </translation>
-<translation id="1795405610103747296">‏Chrome را در تلفنتان نصب کنید. پیامکی به تلفنتان ارسال خواهیم کرد: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">‏با خاموش کردن این گزینه، می‌توانید بدون ورود به سیستم Chrome به سیستم سایت‌های Google مانند Gmail وارد شوید</translation>
 <translation id="1860536484129686729">‏Chrome برای این سایت به مجوز دسترسی به دوربین نیاز دارد</translation>
 <translation id="1873233029667955273">‏Google Chrome مرورگر پیش‌فرض شما نیست</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">‏برای اطلاع از جزئیات سیستم عامل Chrome، لطفاً <ph name="LINK_BEGIN" />
       درباره سیستم عامل Chrome<ph name="LINK_END" /> را ببینید</translation>
 <translation id="2151406531797534936">‏لطفاً اکنون Chrome را بازراه‌اندازی کنید</translation>
-<translation id="216054706567564023">‏Chrome را در تلفنتان نصب کنید. پیامکی به شماره تلفن بازیابی حساب شما ارسال خواهیم کرد.</translation>
 <translation id="2246246234298806438">‏زمانی که نمایش دهنده داخلی PDF وجود نداشته باشد، Google Chrome نمی‌تواند پیش‌نمایش چاپ را نشان دهد.</translation>
-<translation id="2252923619938421629">‏با گزارش تنظیمات کنونی، به بهتر شدن Google Chrome کمک کنید.</translation>
-<translation id="2286950485307333924">‏اکنون در سیستم Chrome هستید</translation>
 <translation id="2290014774651636340">‏کلیدهای Google API وجود ندارد. برخی از عملکردهای Google Chrome از کار خواهد افتاد.</translation>
 <translation id="2290095356545025170">‏آیا می‌خواهید Google Chrome را غیر فعال کنید؟</translation>
 <translation id="2309047409763057870">‏این نصب ثانویه Google Chrome است و نمی‌تواند مرورگر پیش‌فرضتان شود.</translation>
-<translation id="2346876346033403680">‏شخصی قبلاً بعنوان <ph name="ACCOUNT_EMAIL_LAST" /> وارد Chrome در این رایانه شده است. اگر این حساب شما نیست، کاربر جدید Chrome را ایجاد کنید تا اطلاعات خود را جدا نگهدارید.
-
-ورود به سیستم به هر حال اطلاعات Chrome مانند نشانک‌ها، سابقه، و سایر تنظیمات را در <ph name="ACCOUNT_EMAIL_NEW" /> ادغام می‌کند.</translation>
 <translation id="2348335408836342058">‏Chrome برای این سایت به مجوز دسترسی به دوربین و میکروفون نیاز دارد</translation>
 <translation id="2429317896000329049">‏Google Chrome قادر به همگام‌سازی داده‌های شما نبود زیرا همگام‌سازی برای دامنه شما قابل دسترسی نیست.</translation>
 <translation id="2467438592969358367">‏Google Chrome می‌خواهد گذرواژه‌های شما را صادر کند. برای اجازه به این کار، گذرواژه Windows خود را تایپ کنید.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">‏شما در حال حاضر وارد سیستم Chrome شده‌اید!</translation>
 <translation id="2888126860611144412">‏درباره Chrome</translation>
 <translation id="3037838751736561277">‏Google Chrome در حالت پس‌زمینه است.</translation>
-<translation id="3047079729301751317">‏با قطع اتصال <ph name="USERNAME" />، سابقه، نشانک‌ها، تنظیمات و سایر داده‌های Chrome شما که در این دستگاه ذخیره شده‌اند، پاک می‌شود. داده‌های ذخیره شده در حساب Google شما پاک نمی‌شوند و در <ph name="GOOGLE_DASHBOARD_LINK" />داشبورد Google<ph name="END_GOOGLE_DASHBOARD_LINK" /> قابل مدیریت هستند.</translation>
 <translation id="3065168410429928842">‏برگه Chrome</translation>
 <translation id="3080151273017101988">‏ادامه اجرای برنامه‌ها در پس‌زمینه هنگامیکه Google Chrome بسته می‌شود</translation>
 <translation id="3089968997497233615">‏نسخه جدید و امن تری از Google Chrome موجود است.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">‏Chrome را در همه دستگاه‌هایتان همگام‌سازی و شخصی‌سازی کنید</translation>
 <translation id="3622797965165704966">‏اکنون استفاده از Chrome با حساب Google شما و در رایانه‌های مشترک آسان‌تر شده است.</translation>
 <translation id="3637702109597584617">‏<ph name="TERMS_OF_SERVICE_LINK" />شرایط و ضوابط<ph name="END_TERMS_OF_SERVICE_LINK" /> سیستم‌عامل Google Chrome</translation>
-<translation id="3716182511346448902">‏این صفحه از حافظه بسیار زیادی استفاده می‌کند، بنابراین Chrome موقتاً آن را متوقف کرد.</translation>
 <translation id="3718181793972440140">‏این کار یک مورد را از این دستگاه حذف می‌کند. برای بازیابی داده‌هایتان در فرصتی دیگر، با <ph name="USER_EMAIL" /> وارد سیستم Chrome شوید.</translation>
 <translation id="3735758079232443276">‏افزونه «<ph name="EXTENSION_NAME" />»، صفحه‌ای را تغییر داده است که هنگام راه‌اندازی Chrome نشان داده می‌شود.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{‏Chrome را ظرف یک روز راه‌اندازی مجدد کنید}one{‏Chrome را ظرف # روز راه‌اندازی مجدد کنید}other{‏Chrome را ظرف # روز راه‌اندازی مجدد کنید}}</translation>
 <translation id="424864128008805179">‏از سیستم Chrome خارج می شوید؟</translation>
 <translation id="4251615635259297716">‏داده‌های Chrome شما به این حساب مرتبط شوند؟</translation>
-<translation id="4251625577313994583">‏نصب Chrome در iPhone</translation>
 <translation id="4293420128516039005">‏برای همگام‌سازی و شخصی‌سازی Chrome در همه دستگاه‌هایتان، به سیستم وارد شوید</translation>
 <translation id="4328355335528187361">‏Google Chrome نسخه Dev‏، (mDNS-In)</translation>
 <translation id="4331809312908958774">‏سیستم عامل Chrome</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">‏از همان غلط‌گیر املایی استفاده می‌کند که در جستجوی Google استفاده می‌شود. نوشتاری که در مرورگر تایپ کرده‌اید برای Google ارسال می‌شود. هروقت بخواهید می‌توانید این رفتار را در تنظیمات تغییر دهید.</translation>
 <translation id="4891791193823137474">‏اجازه به Google Chrome برای اجرا در پس‌زمینه</translation>
 <translation id="4895437082222824641">‏باز کردن پیوند در &amp;برگه جدید Chrome</translation>
-<translation id="4921569541910214635">‏از رایانه به‌طور مشترک استفاده می‌کنید؟ اکنون می‌توانید Chrome را هر طور که دوست دارید، تنظیم کنید.</translation>
 <translation id="4953650215774548573">‏تنظیم Google Chrome به عنوان مرورگر پیش‌فرضتان</translation>
 <translation id="495931528404527476">‏در Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">راه‌اندازی مجدد</translation>
 <translation id="5940385492829620908">‏وب، نشانک‌ها و موارد دیگر Chrome شما در اینجا هستند.</translation>
 <translation id="5941830788786076944">‏Google Chrome مرورگر پیش‌فرض شود</translation>
-<translation id="6014844626092547096">‏اکنون وارد Chrome شدید! سرپرست سیستم شما همگام‌سازی را از کار انداخته است.</translation>
-<translation id="6040143037577758943">بستن</translation>
 <translation id="6070348360322141662">‏برای امنیت بیشتر، Google Chrome داده‌های شما را رمزگذاری می‌کند</translation>
 <translation id="6113794647360055231">‏Chrome اکنون بهتر شده است</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">‏Chrome OS با یک <ph name="BEGIN_LINK_CROS_OSS" />نرم‌افزار منبع آزاد<ph name="END_LINK_CROS_OSS" /> دیگر امکان‌پذیر است.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">‏درحال به‌روزرسانی Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">‏شما از <ph name="PROFILE_EMAIL" /> برای همگام‌سازی موارد Chrome خودتان استفاده می‌کنید. برای به‌روزرسانی تنظیمات ترجیحی همگام‌سازی‌تان یا استفاده از Chrome بدون حساب Google، به <ph name="SETTINGS_LINK" /> مراجعه کنید.</translation>
-<translation id="6600954340915313787">‏کپی در Chrome</translation>
 <translation id="6676384891291319759">دسترسی به اینترنت</translation>
 <translation id="6679975945624592337">‏اجازه به Google Chrome برای اجرا در پس‌زمینه</translation>
 <translation id="6750954913813541382">‏Chrome برای رفع غلط‌های املایی، نوشتاری را که در مرورگر تایپ می‌کنید به Google ارسال می‌کند</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">‏Google Chrome به روز شده است اما حداقل ۳۰ روز از آن استفاده نکرده‌اید.</translation>
 <translation id="7098166902387133879">‏Google Chrome درحال استفاده از میکروفون شما است.</translation>
 <translation id="7106741999175697885">‏مدیر فعالیت‌ها - Google Chrome</translation>
-<translation id="7164397146364144019">‏می‌توانید با گزارش خودکار جزئیات حوادث امنیتی احتمالی به Google به ایمن‌تر شدن Chrome و استفاده آسان‌تر از آن کمک کنید.</translation>
 <translation id="7242029209006116544">‏شما با حساب مدیریت‌شده وارد سیستم می‌شوید و به سرپرست آن اجازه کنترل بر نمایه Google Chrome خود را می‌دهید. داده‌های Chrome شما شامل برنامه‌ها، نشانک‌ها، سابقه، گذرواژه‌ها و سایر تنظیمات برای همیشه به <ph name="USER_NAME" /> مرتبط خواهد شد. می‌توانید این داده‌ها را از طریق داشبورد حساب‌های Google حذف کنید اما نمی‌توانید این داده‌ها را به حساب دیگری مرتبط سازید. در صورت تمایل برای ذخیره داده‌های Chrome موجود به صورت جداگانه می‌توانید نمایه جدیدی ایجاد کنید. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">‏از این زبان برای نمایش رابط کاربری Google Chrome استفاده می‌شود</translation>
 <translation id="7296210096911315575">اطلاعات مهم درباره استفاده و ایمنی</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">‏شما بعنوان <ph name="USER_EMAIL_ADDRESS" /> وارد سیستم Chrome شدید. لطفاً برای ورود به سیستم مجدد از همان حساب استفاده کنید.</translation>
 <translation id="7408085963519505752">‏شرایط Chrome OS</translation>
 <translation id="7419046106786626209">‏سیستم‌عامل Chrome قادر به همگام‌سازی داده‌هایتان نبود زیرا همگام‌سازی برای دامنه شما قابل دسترسی نیست.</translation>
-<translation id="7459554271817304652">‏برای ذخیره ویژگی‌های مرورگر سفارشی شده خود در وب و دسترسی به آن‌ها از Google Chrome از هر رایانه دیگری، همگام‌سازی را راه‌اندازی کنید.</translation>
 <translation id="7486227612705979895">‏Chrome برای ارائه پیشنهاد در نوار نشانی، به Drive شما دسترسی خواهد داشت</translation>
 <translation id="7531671357096394523">‏از همه نسخه‌های Chrome خارج شوید.</translation>
 <translation id="7535429826459677826">‏Google Chrome نسخه Dev</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">‏این رایانه دیگر به‌روزرسانی‌های Google Chrome را دریافت نمی‌کند زیرا Windows XP و Windows Vista دیگر پشتیبانی نمی‌شوند</translation>
 <translation id="8008534537613507642">‏نصب مجدد Chrome</translation>
 <translation id="8013993649590906847">‏اگر تصویری توضیح مفیدی نداشته باشد، Chrome توضیحی برای شما ارائه خواهد کرد. برای ایجاد توضیحات، تصاویر به Google ارسال می‌شود.</translation>
-<translation id="8032142183999901390">‏پس از حذف حسابتان از Chrome، ممکن است لازم باشد برای اعمال تغییرات، برگه‌های بازتان را تازه‌سازی کنید.</translation>
 <translation id="8129812357326543296">‏درباره &amp;Google Chrome</translation>
-<translation id="8179874765710681175">‏Chrome را روی تلفنتان نصب کنید. پیامکی به تلفن شما خواهیم فرستاد.</translation>
-<translation id="825412236959742607">‏این صفحه حافظه خیلی زیادی استفاده می‌کند، به‌همین‌دلیل Chrome برخی از محتوا را پاک کرد.</translation>
 <translation id="8255190535488645436">‏Google Chrome درحال استفاده از دوربین و میکروفون شما است.</translation>
 <translation id="8286862437124483331">‏Google Chrome در حال تلاش برای نشان دادن گذرواژه‌هاست. برای اجازه به این کار، گذرواژه Windows خود را تایپ کنید.</translation>
 <translation id="8290100596633877290">‏اوه! Google Chrome با اشکال مواجه شده است. دوباره راه‌اندازی شود؟</translation>
 <translation id="8342675569599923794">‏این فایل خطرناک است، بنابراین Chrome آن را مسدود کرده است.</translation>
 <translation id="8370517070665726704">‏حق نسخه‌برداری <ph name="YEAR" /> Google LLC.‎ کلیه حقوق محفوظ است.</translation>
 <translation id="840084489713044809">‏Google Chrome می‌خواهد گذرواژه‌های شما را صادر کند.</translation>
-<translation id="8406086379114794905">‏به بهبود Chrome کمک کنید</translation>
 <translation id="8455999171311319804">‏اختیاری: با ارسال خودکار داده‌های تشخیصی و میزان استفاده به Google، به بهبود سیستم عامل Chrome کمک کنید.</translation>
-<translation id="8478823064122749032">‏Chrome را در تلفنتان نصب کنید. پیامکی به شماره تلفن بازیابی حساب شما ارسال خواهیم کرد: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">‏لحظاتی پیش به‌روزرسانی امنیتی ویژه‌ای برای Google Chrome اعمال شد. هم‌اکنون بازراه‌اندازی کنید و ما برگه‌هایتان را بازیابی خواهیم کرد.</translation>
 <translation id="8521348052903287641">‏قانون ترافیک ورودی Google Chrome نسخه Dev برای امکان دادن به ترافیک mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome App Launcher Canary</translation>
 <translation id="8556340503434111824">‏نسخه جدیدی از Google Chrome وجود دارد که سریعتر از همیشه است.</translation>
-<translation id="8568392309447938879">‏برای استفاده از برنامه‌ها باید به سیستم Chrome وارد شوید. این کار به Chrome امکان می‌دهد برنامه‌ها، نشانک‌ها، سابقه، گذرواژه‌ها و دیگر تنظیماتتان را در بین دستگاه‌ها همگام‌سازی کند.</translation>
 <translation id="8606668294522778825">‏ممکن است Google Chrome برای بهبود تجربه مرور شما از سرویس‌های وب استفاده کند. می‌توانید به صورت اختیاری این سرویس‌ها را غیرفعال کنید. <ph name="BEGIN_LINK" />بیشتر بدانید<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">‏Google Chrome پاسخ نمی‌دهد. مجدداً راه‌اندازی شود؟</translation>
 <translation id="8625237574518804553">{0,plural, =1{‏Chrome ‏۱ دقیقه دیگر راه‌اندازی مجدد می‌شود}one{‏Chrome ‏# دقیقه دیگر راه‌اندازی مجدد می‌شود}other{‏Chrome ‏# دقیقه دیگر راه‌اندازی مجدد می‌شود}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_fi.xtb b/chrome/app/resources/google_chrome_strings_fi.xtb
index f7a75bf..f25c454 100644
--- a/chrome/app/resources/google_chrome_strings_fi.xtb
+++ b/chrome/app/resources/google_chrome_strings_fi.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome-käyttöjärjestelmä ei voinut synkronoida tietoja. Päivitä synkronoinnin tunnuslause.</translation>
 <translation id="1302523850133262269">Odota hetki, Chrome asentaa uusimpia järjestelmäpäivityksiä.</translation>
 <translation id="137466361146087520">Google Chromen betaversio</translation>
-<translation id="1393853151966637042">Apua Chromen käytössä</translation>
 <translation id="1399397803214730675">Tietokoneessa on jo Google Chromen uudempi versio. Jos sovellus ei toimi, poista Google Chrome ja yritä uudelleen.</translation>
 <translation id="1434626383986940139">Chrome Canary -sovellukset</translation>
-<translation id="1469002951682717133">Chromen sovellusten käynnistysohjelma</translation>
 <translation id="1553358976309200471">Päivitä Chrome</translation>
 <translation id="1587223624401073077">Google Chrome käyttää kameraasi.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> on vaarallinen, joten Chrome on estänyt sen.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome tallentaa tämän salasanan Google-tilillesi. Sinun ei tarvitse muistaa sitä.</translation>
 <translation id="174539241580958092">Google Chrome ei voinut synkronoida tietoja kirjautumisvirheen vuoksi.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Apua Chrome-käyttöjärjestelmän käytössä</translation>
-<translation id="1795405610103747296">Asenna Chrome puhelimellesi. Lähetämme tekstiviestin puhelimeesi: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="1812689907177901597">Poistamalla tämän käytöstä voit kirjautua Google-sivustoille, esim. Gmailiin, kirjautumatta Chromeen.</translation>
 <translation id="1860536484129686729">Chrome tarvitsee oikeuden käyttää kameraasi tällä sivustolla.</translation>
 <translation id="1873233029667955273">Google Chrome ei ole oletusselain.</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Tutustu Chrome-käyttöjärjestelmään lukemalla <ph name="LINK_BEGIN" />
       Tietoja Chrome-käyttöjärjestelmästä<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Käynnistä Chrome uudelleen nyt</translation>
-<translation id="216054706567564023">Asenna Chrome puhelimellesi. Lähetämme tekstiviestin palauttamisen puhelinnumeroosi.</translation>
 <translation id="2246246234298806438">Google Chrome ei voi näyttää tulostusesikatselua, koska PDF-katseluohjelma puuttuu.</translation>
-<translation id="2252923619938421629">Auta parantamaan Google Chromea ilmoittamalla nykyiset asetukset.</translation>
-<translation id="2286950485307333924">Olet nyt kirjautuneena Chromeen</translation>
 <translation id="2290014774651636340">Googlen sovellusliittymän avaimet puuttuvat. Jotkin Google Chromen toiminnoista poistetaan käytöstä.</translation>
 <translation id="2290095356545025170">Haluatko varmasti poistaa Google Chromen?</translation>
 <translation id="2309047409763057870">Tämä on Google Chromen toissijainen asennus, eikä sitä voi asettaa oletusselaimeksi.</translation>
-<translation id="2346876346033403680">Joku on jo kirjautunut tällä tietokoneella Chromeen käyttäjätilillä <ph name="ACCOUNT_EMAIL_LAST" />. Jos se ei ole sinun käyttäjätilisi, luo uusi Chrome-käyttäjä, jos haluat pitää tiedot erillään.
-
-Jos kirjaudut silti sisään, Chrome-tiedot, kuten kirjanmerkit, historia ja asetukset, yhdistetään tiliin <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome tarvitsee oikeuden käyttää kameraasi ja mikrofoniasi tällä sivustolla.</translation>
 <translation id="2429317896000329049">Google Chrome ei voinut synkronoida tietoja, koska synkronointi ei ole käytettävissä verkkotunnuksessasi.</translation>
 <translation id="2467438592969358367">Google Chrome yrittää viedä salasanojasi tiedostoon. Salli tämä kirjoittamalla Windows-salasanasi.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">Olet kirjautunut Chromeen!</translation>
 <translation id="2888126860611144412">Tietoja Chromesta</translation>
 <translation id="3037838751736561277">Google Chrome on käynnissä taustalla.</translation>
-<translation id="3047079729301751317">Jos irrotat tilin <ph name="USERNAME" />, historiasi, kirjanmerkkisi ja muut laitteelle tallennetut Chrome-tiedot poistetaan. Google-tiliisi tallennetut tiedot säilyvät ennallaan ja voit hallinnoida niitä <ph name="GOOGLE_DASHBOARD_LINK" />Google Hallintapaneelin kautta<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chrome-välilehti</translation>
 <translation id="3080151273017101988">Jätä taustaohjelmat käyntiin, kun Google Chrome suljetaan</translation>
 <translation id="3089968997497233615">Google Chromesta on saatavillaa uusi, turvallisempi versio.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Voit synkronoida Chromen ja tehdä siitä yksilöllisemmän kaikilla laitteilla.</translation>
 <translation id="3622797965165704966">Nyt voit helpommin käyttää Chromea Google-tililläsi ja jaetuilla tietokoneilla.</translation>
 <translation id="3637702109597584617">Google Chrome ‑käyttöjärjestelmän <ph name="TERMS_OF_SERVICE_LINK" />käyttöehdot<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Tämä sivu käyttää liikaa muistia, joten Chrome keskeytti sen.</translation>
 <translation id="3718181793972440140">Yksi kohde poistetaan pysyvästi  tältä laitteelta. Jos haluat palauttaa tiedot myöhemmin, kirjaudu Chromeen käyttäjänä <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Laajennus <ph name="EXTENSION_NAME" /> on vaihtanut Chromen aloitussivun.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Käynnistä Chrome uudelleen vuorokauden kuluessa}other{Käynnistä Chrome uudelleen # vuorokauden kuluessa}}</translation>
 <translation id="424864128008805179">Kirjaudutaanko ulos Chromesta?</translation>
 <translation id="4251615635259297716">Linkitetäänkö Chrome-tiedot tähän tiliin?</translation>
-<translation id="4251625577313994583">lataa Chrome iPhoneen</translation>
 <translation id="4293420128516039005">Kirjaudu sisään, niin voit synkronoida Chromen ja tehdä siitä yksilöllisemmän kaikilla laitteilla.</translation>
 <translation id="4328355335528187361">Google Chromen kehittäjäversio (saapuva mDNS)</translation>
 <translation id="4331809312908958774">Chrome-käyttöjärjestelmä</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Tämä käyttää samaa oikeinkirjoituksen tarkistusta kuin Google Haku. Selaimeen kirjoittamasi teksti lähetetään Googlelle. Voit muuttaa tätä milloin tahansa asetuksista.</translation>
 <translation id="4891791193823137474">Jätä Google Chrome käyntiin taustalle</translation>
 <translation id="4895437082222824641">Avaa linkki uudella Chromen välilehdellä</translation>
-<translation id="4921569541910214635">Jaatko tietokoneen jonkun kanssa? Nyt voit määrittää Chromen juuri sellaiseksi kuin haluat.</translation>
 <translation id="4953650215774548573">Aseta Google Chrome oletusselaimeksi</translation>
 <translation id="495931528404527476">Chromessa</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Käynnistä uudelleen</translation>
 <translation id="5940385492829620908">Tämä on verkkosi, kirjanmerkkiesi ja muun Chrome-sisältösi koti.</translation>
 <translation id="5941830788786076944">Tee Google Chromesta oletusselain</translation>
-<translation id="6014844626092547096">Olet nyt kirjautunut sisään Chromeen! Järjestelmänvalvoja on poistanut synkronoinnin käytöstä.</translation>
-<translation id="6040143037577758943">Sulje</translation>
 <translation id="6070348360322141662">Google Chrome lisää suojausta salaamalla tietosi.</translation>
 <translation id="6113794647360055231">Chrome on nyt entistä parempi</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">Chrome-käyttöjärjestelmää tukee toinen <ph name="BEGIN_LINK_CROS_OSS" />avoimen lähdekoodin ohjelmisto<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Päivitetään Google Chromea (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Synkronoit Chromen tietosi osoitteella <ph name="PROFILE_EMAIL" />. Voit vaihtaa synkronoinnin asetuksia tai siirtyä käyttämään Chromea ilman Google-tiliä käymällä <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Kopioitiin Chromeen.</translation>
 <translation id="6676384891291319759">Käytä internetiä</translation>
 <translation id="6679975945624592337">Jätä Google Chrome käyntiin taustalle</translation>
 <translation id="6750954913813541382">Chrome lähettää selaimeen kirjoittamasi tekstin Googlelle kirjoitusvirheiden korjaamiseksi</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome on päivitetty, mutta et ole käyttänyt sitä ainakaan 30 päivään.</translation>
 <translation id="7098166902387133879">Google Chrome käyttää mikrofoniasi.</translation>
 <translation id="7106741999175697885">Tehtävänhallinta - Google Chrome</translation>
-<translation id="7164397146364144019">Voit auttaa meitä parantamaan Chromen turvallisuutta ja tekemään selaimesta helppokäyttöisemmän ilmoittamalla mahdollisista turvallisuusongelmista Googlelle automaattisesti.</translation>
 <translation id="7242029209006116544">Olet kirjautumassa sisään hallinnoidulla tilillä ja antamassa tilin järjestelmänvalvojalle oikeuden hallita Google Chrome -profiiliasi. Chrome-tietosi, kuten sovelluksesi, kirjanmerkkisi, historiasi, salasanasi ja muut asetuksesi, yhdistetään pysyvästi käyttäjätiliin <ph name="USER_NAME" />. Voit poistaa nämä tiedot Google-tilien Hallintapaneelissa, mutta et voi liittää tietoja toiseen tiliin. Voit myös halutessasi luoda uuden profiilin, jos haluat pitää aiemmat Chrome-tietosi erillään. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Google Chrome ‑käyttöliittymä näytetään tällä kielellä</translation>
 <translation id="7296210096911315575">Tärkeää käyttö- ja turvallisuustietoa</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Chromeen kirjautunut käyttäjä: <ph name="USER_EMAIL_ADDRESS" />. Kirjaudu uudelleen sisään samalla tilillä.</translation>
 <translation id="7408085963519505752">Chrome-käyttöjärjestelmän käyttöehdot</translation>
 <translation id="7419046106786626209">Chrome-käyttöjärjestelmä ei voinut synkronoida tietoja, koska synkronointi ei ole käytettävissä verkkotunnuksessasi.</translation>
-<translation id="7459554271817304652">Määrittämällä synkronoinnin voit tallentaa selaimesi tiedot verkkoon ja käyttää niitä minkä tahansa tietokoneen Google Chromella.</translation>
 <translation id="7486227612705979895">Chrome käyttää Drivea antaakseen ehdotuksia osoitepalkissa</translation>
 <translation id="7531671357096394523">Lopeta kaikki Chrome-kopiot</translation>
 <translation id="7535429826459677826">Google Chromen kehittäjäversio</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Tämän tietokoneen Google Chromea ei enää päivitetä, koska Windows XP:tä ja Windows Vistaa ei enää tueta.</translation>
 <translation id="8008534537613507642">Asenna Chrome uudelleen</translation>
 <translation id="8013993649590906847">Jos kuvalla ei ole hyödyllistä kuvausta, Chrome yrittää luoda sellaisen. Kuvat lähetetään Googlelle kuvausten luomista varten.</translation>
-<translation id="8032142183999901390">Kun olet poistanut tilisi Chromesta, sinun on ehkä avattava avoinna olleet välilehdet uudelleen, jotta muutos tulee voimaan.</translation>
 <translation id="8129812357326543296">Tietoja &amp;Google Chromesta</translation>
-<translation id="8179874765710681175">Asenna Chrome puhelimeesi. Lähetämme tekstiviestin puhelimeen.</translation>
-<translation id="825412236959742607">Tämä sivu käyttää liikaa muistia, joten Chrome poisti osan sisällöstä.</translation>
 <translation id="8255190535488645436">Google Chrome käyttää kameraasi ja mikrofoniasi.</translation>
 <translation id="8286862437124483331">Google Chrome yrittää näyttää salasanoja. Salli tämä kirjoittamalla Windows-salasanasi.</translation>
 <translation id="8290100596633877290">Hups! Google Chrome kaatui. Käynnistetäänkö uudelleen?</translation>
 <translation id="8342675569599923794">Tämä tiedosto on vaarallinen, joten Chrome on estänyt sen.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Kaikki oikeudet pidätetään.</translation>
 <translation id="840084489713044809">Google Chrome yrittää viedä salasanojasi tiedostoon.</translation>
-<translation id="8406086379114794905">Auta parantamaan Chromea</translation>
 <translation id="8455999171311319804">Valinnainen: Lähetä automaattisesti diagnostiikka- ja käyttötietoja Googlelle Chrome-käyttöjärjestelmän kehittämiseksi.</translation>
-<translation id="8478823064122749032">Asenna Chrome puhelimellesi. Lähetämme tekstiviestin palauttamisen puhelinnumeroosi: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8498858610309223613">Google Chromen tärkeä tietoturvapäivitys on asennettu. Käynnistä selain uudelleen – palautamme avoimet välilehdet.</translation>
 <translation id="8521348052903287641">Google Chromen kehittäjäversion saapuvien yhteyksien sääntö, joka sallii mDNS-liikenteen.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome Canary -sovellusten käynnistysohjelma</translation>
 <translation id="8556340503434111824">Chromesta on saatavissa uusi versio, joka on entistäkin nopeampi.</translation>
-<translation id="8568392309447938879">Sinun täytyy kirjautua Chromeen käyttääksesi sovelluksia. Kirjauduttuasi Chrome voi synkronoida sovelluksesi, kirjanmerkkisi, historiasi, salasanasi ja muut asetuksesi eri laitteille.</translation>
 <translation id="8606668294522778825">Google Chrome voi käyttää verkkopalveluita selauskokemuksesi parantamiseen. Voit halutessasi poistaa nämä palvelut käytöstä. <ph name="BEGIN_LINK" />Lisätietoja<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome ei vastaa. Käynnistetäänkö uudelleen?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome käynnistetään uudelleen 1 minuutin kuluttua}other{Chrome käynnistetään uudelleen # minuutin kuluttua.}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_fil.xtb b/chrome/app/resources/google_chrome_strings_fil.xtb
index daf0d25..ec94127 100644
--- a/chrome/app/resources/google_chrome_strings_fil.xtb
+++ b/chrome/app/resources/google_chrome_strings_fil.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Hindi ma-sync ng Chrome OS ang iyong data. Paki-update ang iyong Passphrase sa pag-sync.</translation>
 <translation id="1302523850133262269">Mangyaring maghintay habang ini-install ng Chrome ang mga pinakabagong update sa system.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Humingi ng tulong sa paggamit ng Chrome</translation>
 <translation id="1399397803214730675">Mayroon nang mas bagong bersyon ng Google Chrome ang computer na ito. Kung hindi gumagana ang software, mangyaring i-uninstall ang Google Chrome at subukang muli.</translation>
 <translation id="1434626383986940139">Chrome Canary Apps</translation>
-<translation id="1469002951682717133">App Launcher ng Chrome</translation>
 <translation id="1553358976309200471">I-update ang Chrome</translation>
 <translation id="1587223624401073077">Ginagamit ng Google Chrome ang iyong camera.</translation>
 <translation id="1587325591171447154">Mapanganib ang <ph name="FILE_NAME" />, kaya na-block ito ng Chrome.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Ise-save ng Chrome ang password na ito sa iyong Google Account. Hindi mo na ito kailangang tandaan.</translation>
 <translation id="174539241580958092">Hindi mai-sync ng Google Chrome ang iyong data dahil sa isang error sa pagsa-sign in.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Kumuha ng tulong sa paggamit ng Chrome OS</translation>
-<translation id="1795405610103747296">I-install ang Chrome sa iyong telepono. Magpapadala kami ng SMS sa telepono mo: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Kapag na-off ito, maaari kang mag-sign in sa mga site ng Google tulad ng Gmail nang hindi nagsa-sign in sa Chrome</translation>
 <translation id="1860536484129686729">Kailangan ng Chrome ng pahintulot na i-access ang iyong camera para sa site na ito</translation>
 <translation id="1873233029667955273">Hindi Google Chrome ang iyong default na browser</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">Para sa mga detalye ng Chrome OS, pakitingnan ang <ph name="LINK_BEGIN" />
       Tungkol sa Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Paki-restart ang Chrome ngayon</translation>
-<translation id="216054706567564023">I-install ang Chrome sa telepono mo. Magpapadala kami ng SMS sa iyong numero ng telepono para sa pag-recover ng account.</translation>
 <translation id="2246246234298806438">Hindi maipapakita ng Google Chrome ang preview sa pag-print kapag nawawala ang built-in na PDF viewer.</translation>
-<translation id="2252923619938421629">Tumulong na mapahusay ang Google Chrome sa pamamagitan ng pag-uulat ng mga kasalukuyang setting</translation>
-<translation id="2286950485307333924">Naka-sign in ka ngayon sa Chrome</translation>
 <translation id="2290014774651636340">Nawawala ang mga Google API key. Madi-disable ang ilang pagpapagana ng Google Chrome.</translation>
 <translation id="2290095356545025170">Sigurado ka bang nais mong i-uninstall ang Google Chrome?</translation>
 <translation id="2309047409763057870">Pangalawang pag-install ito ng Google Chrome at hindi ito maaaring gawing iyong default na browser.</translation>
-<translation id="2346876346033403680">May nag-sign in dati sa Chrome sa computer na ito bilang <ph name="ACCOUNT_EMAIL_LAST" />. Kung hindi iyon ang iyong account, lumikha ng bagong user ng Chrome upang ihiwalay ang iyong impormasyon.
-
-Kapag nag-sign in ka pa rin, isasama sa <ph name="ACCOUNT_EMAIL_NEW" /> ang impormasyon sa Chrome gaya ng mga bookmark, kasaysayan, at iba pang mga setting.</translation>
 <translation id="2348335408836342058">Kailangan ng Chrome ng pahintulot na i-access ang iyong camera at mikropono para sa site na ito</translation>
 <translation id="2429317896000329049">Hindi mai-sync ng Google Chrome ang iyong data dahil hindi available ang Pag-sync para sa iyong domain.</translation>
 <translation id="2467438592969358367">Gustong i-export ng Google Chrome ang iyong mga password. I-type ang password mo sa Windows para payagan ito.</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">Naka-sign in ka sa Chrome!</translation>
 <translation id="2888126860611144412">Tungkol sa Chrome</translation>
 <translation id="3037838751736561277">Nasa background mode ang Google Chrome.</translation>
-<translation id="3047079729301751317">Iki-clear ng pagdiskonekta kay <ph name="USERNAME" /> ang iyong history, mga bookmark, setting at iba pang data ng Chrome na naka-imbak sa device na ito. Hindi iki-clear ang data na naka-imbak sa iyong Google Account at maaaring pamahalaan sa <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Tab ng Chrome</translation>
 <translation id="3080151273017101988">Magpatuloy sa pagpapatakbo ng mga app sa background kapag nakasara ang Google Chrome</translation>
 <translation id="3089968997497233615">May available na bago, mas ligtas na bersyon ng Google Chrome.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">I-sync at i-personalize ang Chrome sa lahat ng iyong device</translation>
 <translation id="3622797965165704966">Ngayon, mas madali nang gamitin ang Chrome sa iyong Google Account at sa mga nakabahaging computer.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Mga Tuntunin ng Serbisyo<ph name="END_TERMS_OF_SERVICE_LINK" /> ng Google Chrome OS</translation>
-<translation id="3716182511346448902">Masyadong malaki ang ginagamit na memory ng page na ito kaya na-pause ito ng Chrome.</translation>
 <translation id="3718181793972440140">Magde-delete ito ng 1 item sa device na ito. Upang makuha ang iyong data sa ibang pagkakataon, mag-sign in sa Chrome bilang <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Binago ng extension na "<ph name="EXTENSION_NAME" />" ang ipinapakitang page kapag sinimulan mo ang Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Muling ilunsad ang Chrome sa loob ng isang araw}one{Muling ilunsad ang Chrome sa loob ng # araw}other{Muling ilunsad ang Chrome sa loob ng # na araw}}</translation>
 <translation id="424864128008805179">Mag-sign out sa Chrome?</translation>
 <translation id="4251615635259297716">I-link ang iyong data sa Chrome sa account na ito</translation>
-<translation id="4251625577313994583">kunin ang Chrome sa iyong iPhone</translation>
 <translation id="4293420128516039005">Mag-sign in para i-sync at i-personalize ang Chrome sa lahat ng iyong device</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">Ginagamit nito ang parehong spellchecker na ginagamit sa paghahanap sa Google. Ipinapadala sa Google ang text na tina-type mo sa browser. Puwede mong baguhin ang gawing ito sa mga setting sa lahat ng oras.</translation>
 <translation id="4891791193823137474">Hayaan ang Google Chrome na tumakbo sa background</translation>
 <translation id="4895437082222824641">Buksan ang link sa bagong &amp;tab ng Chrome</translation>
-<translation id="4921569541910214635">Magbabahagi ng computer? Ngayon, maaari mong i-set up ang Chrome sa paraang gusto mo.</translation>
 <translation id="4953650215774548573">Itakda ang Google Chrome bilang iyong default na browser</translation>
 <translation id="495931528404527476">Sa Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">I-restart</translation>
 <translation id="5940385492829620908">Makikita dito ang iyong web, mga bookmark at iba pang mga bagay-bagay sa Chrome.</translation>
 <translation id="5941830788786076944">Gawin ang Google Chrome na default browser</translation>
-<translation id="6014844626092547096">Naka-sign in ka na ngayon sa Chrome! Na-disable ng iyong administrator ang pag-sync.</translation>
-<translation id="6040143037577758943">Isara</translation>
 <translation id="6070348360322141662">Para sa karagdagang seguridad, ie-encrypt ng Google Chrome ang iyong data</translation>
 <translation id="6113794647360055231">Mas mahusay na ang Chrome</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">Ginagawang posible ang Chrome OS ng karagdagang <ph name="BEGIN_LINK_CROS_OSS" />open source na software<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Ina-update ang Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Ginagamit mo ang <ph name="PROFILE_EMAIL" /> upang i-sync ang iyong bagay sa Chrome. Upang ma-update ang iyong kagustuhan sa pag-sync o upang magamit ang Chrome nang walang Google account, bisitahin ang <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Kinopya sa Chrome</translation>
 <translation id="6676384891291319759">I-access ang Internet</translation>
 <translation id="6679975945624592337">Hayaang Tumakbo sa Background ang Google Chrome</translation>
 <translation id="6750954913813541382">Para ayusin ang mga error sa pagbabaybay, ipinapadala ng Chrome sa Google ang text na na-type mo sa browser</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Na-update na ang Google Chrome, ngunit hindi mo pa ito ginamit sa huling 30 araw.</translation>
 <translation id="7098166902387133879">Ginagamit ng Google Chrome ang iyong mikropono.</translation>
 <translation id="7106741999175697885">Task Manager - Google Chrome</translation>
-<translation id="7164397146364144019">Makakatulong ka na gawing mas ligtas at mas madaling gamitin ang Chrome sa pamamagitan ng awtomatikong pag-uulat ng mga detalye ng mga posibleng isyu sa seguridad sa Google.</translation>
 <translation id="7242029209006116544">Nagsa-sign in ka gamit ang isang pinamamahalaang account at nagbibigay sa administrator nito ng kontrol sa iyong profile sa Google Chrome. Permanenteng mauugnay ang iyong data sa Chrome, gaya ng iyong apps, mga bookmark, kasaysayan, password, at iba pang setting sa <ph name="USER_NAME" />. Matatanggal mo ang data na ito sa Google Accounts Dashboard, ngunit hindi mo maiuugnay ang data na ito sa isa pang account. Maaari ka ring gumawa ng bagong profile upang ihiwalay ang iyong umiiral na data sa Chrome. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Ginagamit ang wikang ito para ipakita ang Google Chrome UI</translation>
 <translation id="7296210096911315575">Mahalagang impormasyon sa paggamit at kaligtasan</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">Naka-sign in ka sa Chrome bilang <ph name="USER_EMAIL_ADDRESS" />. Pakigamit ang parehong account upang mag-sign in muli.</translation>
 <translation id="7408085963519505752">Mga tuntunin ng Chrome OS</translation>
 <translation id="7419046106786626209">Hindi ma-sync ng Chrome OS ang iyong data dahil hindi available ang Pag-sync para sa iyong domain.</translation>
-<translation id="7459554271817304652">I-set up ang Pag-sync upang i-save ang iyong personalized na mga tampok sa browser sa web at i-access ang mga iyon mula sa Google Chrome sa anumang computer.</translation>
 <translation id="7486227612705979895">Ia-access ng Chrome ang iyong Drive para makapagmungkahi sa address bar</translation>
 <translation id="7531671357096394523">Ihinto ang lahat ng kopya ng Chrome</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">Hindi na makakatanggap ang computer na ito ng mga update sa Google Chrome dahil hindi na sinusuportahan ang Windows XP at Windows Vista</translation>
 <translation id="8008534537613507642">Muling i-install ang Chrome</translation>
 <translation id="8013993649590906847">Kung hindi sapat ang deskripsyon ng isang larawan, susubukan ng Chrome na ayusin ito para sa iyo. Para gumawa ng mga deskripsyon, ipinapadala ang mga larawan sa Google.</translation>
-<translation id="8032142183999901390">Pagkatapos alisin ang iyong account sa Chrome, maaaring kailangan mong i-reload ang mga nakabukas mong tab upang magkabisa.</translation>
 <translation id="8129812357326543296">Tungkol sa &amp;Google Chrome</translation>
-<translation id="8179874765710681175">I-install ang Chrome sa iyong telepono. Magpapadala kami ng SMS sa telepono mo.</translation>
-<translation id="825412236959742607">Masyadong malaki ang ginagamit na memory ng page na ito kaya inalis ng Chrome ang ilang content.</translation>
 <translation id="8255190535488645436">Ginagamit ng Google Chrome ang iyong camera at mikropono.</translation>
 <translation id="8286862437124483331">Sinusubukan ng Google Chrome na ipakita ang mga password. I-type ang iyong password sa Windows upang payagan ito.</translation>
 <translation id="8290100596633877290">Whoa! Nag-crash ang Google Chrome. Ilunsad muli ngayon?</translation>
 <translation id="8342675569599923794">Mapanganib ang file na ito, kaya na-block ito ng Chrome.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Nakalaan ang lahat ng karapatan.</translation>
 <translation id="840084489713044809">Gustong i-export ng Google Chrome ang iyong mga password.</translation>
-<translation id="8406086379114794905">Tulungang pahusayin ang Chrome</translation>
 <translation id="8455999171311319804">Opsyonal: Tulungang mas pahusayin ang Chrome OS sa pamamagitan ng awtomatikong pagpapadala ng data ng diagnostic at paggamit sa Google.</translation>
-<translation id="8478823064122749032">I-install ang Chrome sa telepono mo. Magpapadala kami ng SMS sa iyong numero ng telepono para sa pag-recover ng account: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Naglapat ng espesyal na update sa seguridad para sa Google Chrome. Mag-restart na at ire-restore namin ang iyong mga tab.</translation>
 <translation id="8521348052903287641">Inbound na panuntunan para sa Google Chrome Dev upang payagan ang trapiko ng mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Canary ng App Launcher ng Chrome</translation>
 <translation id="8556340503434111824">May available na bagong bersyon ng Google Chrome, at mas mabilis ito kaysa sa dati.</translation>
-<translation id="8568392309447938879">Kailangang naka-sign in ka sa Chrome upang makagamit ng mga app. Nagbibigay-daan ito sa Chrome na i-sync ang iyong mga app, bookmark, kasaysayan, password at iba pang mga setting sa mga device.</translation>
 <translation id="8606668294522778825">Maaaring gumamit ang Google Chrome ng mga serbisyo sa web upang mapabuti ang iyong karanasan sa pagba-browse. Opsyonal mong madi-disable ang mga serbisyong ito. <ph name="BEGIN_LINK" />Matuto pa<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Hindi gumagana ang Google Chrome. Ilunsad muli ngayon?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Muling ilulunsad ang Chrome sa loob ng 1 minuto}one{Muling ilulunsad ang Chrome sa loob ng # minuto}other{Muling ilulunsad ang Chrome sa loob ng # na minuto}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_fr.xtb b/chrome/app/resources/google_chrome_strings_fr.xtb
index 04b64a3..8d75c53 100644
--- a/chrome/app/resources/google_chrome_strings_fr.xtb
+++ b/chrome/app/resources/google_chrome_strings_fr.xtb
@@ -16,10 +16,8 @@
 <translation id="123620459398936149">Impossible de synchroniser vos données dans Chrome OS. Veuillez mettre à jour votre phrase secrète de synchronisation.</translation>
 <translation id="1302523850133262269">Veuillez patienter pendant que Chrome installe les dernières mises à jour du système.</translation>
 <translation id="137466361146087520">Version bêta de Google Chrome</translation>
-<translation id="1393853151966637042">Obtenir de l'aide sur l'utilisation de Google Chrome</translation>
 <translation id="1399397803214730675">Une version plus récente de Google Chrome est déjà installée sur cet ordinateur. Si celle-ci ne fonctionne pas, désinstallez Google Chrome, puis réessayez.</translation>
 <translation id="1434626383986940139">Applications Chrome Canary</translation>
-<translation id="1469002951682717133">Lanceur d'applications Google Chrome</translation>
 <translation id="1553358976309200471">Mettre à jour Chrome</translation>
 <translation id="1587223624401073077">Votre webcam est en cours d'utilisation dans Google Chrome.</translation>
 <translation id="1587325591171447154">Chrome a bloqué <ph name="FILE_NAME" />, car ce fichier est dangereux.</translation>
@@ -37,8 +35,6 @@
 <translation id="1734234790201236882">Chrome va enregistrer ce mot de passe dans votre compte Google. Vous n'avez pas besoin de le retenir.</translation>
 <translation id="174539241580958092">Impossible de synchroniser vos données dans Google Chrome, car une erreur s'est produite lors de la connexion.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Obtenir de l'aide sur l'utilisation de Chrome OS</translation>
-<translation id="1795405610103747296">Installez Chrome sur votre téléphone. Vous recevrez un SMS au numéro suivant : <ph name="PHONE_NUMBER" />.</translation>
 <translation id="1812689907177901597">Désactiver cette option vous permet de vous connecter à des sites Google tels que Gmail sans vous connecter à Chrome</translation>
 <translation id="1860536484129686729">Chrome a besoin de votre autorisation pour accéder à votre appareil photo pour ce site</translation>
 <translation id="1873233029667955273">Google Chrome n'est pas votre navigateur par défaut</translation>
@@ -53,16 +49,10 @@
 <translation id="2123055963409958220">Aidez-nous à améliorer Chrome en nous signalant vos <ph name="BEGIN_LINK" />paramètres actuels<ph name="END_LINK" /></translation>
 <translation id="2128103434102193461">Pour en savoir plus sur Chrome OS, consultez la section <ph name="LINK_BEGIN" />À propos de Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Veuillez redémarrer Chrome maintenant</translation>
-<translation id="216054706567564023">Installez Chrome sur votre téléphone. Vous recevrez un SMS au numéro que vous avez indiqué pour la récupération de compte.</translation>
 <translation id="2246246234298806438">Impossible d'afficher l'aperçu d'impression dans Google Chrome, car la visionneuse de documents PDF intégrée est absente.</translation>
-<translation id="2252923619938421629">Aidez-nous à améliorer Google Chrome en nous signalant vos paramètres.</translation>
-<translation id="2286950485307333924">Vous êtes connecté à Chrome</translation>
 <translation id="2290014774651636340">Les clés API Google sont manquantes. Certaines fonctionnalités de Google Chrome vont être désactivées.</translation>
 <translation id="2290095356545025170">Voulez-vous vraiment désinstaller Google Chrome ?</translation>
 <translation id="2309047409763057870">Ceci est une installation secondaire de Google Chrome. Vous ne pouvez pas le définir comme navigateur par défaut.</translation>
-<translation id="2346876346033403680">Un utilisateur s'est récemment connecté à Google Chrome sur cet ordinateur en tant que <ph name="ACCOUNT_EMAIL_LAST" />. S'il ne s'agit pas de votre compte, veuillez créer un utilisateur Google Chrome pour séparer vos informations.
-
-Si vous vous connectez quand même, toutes les informations Chrome, comme les favoris, l'historique et les autres paramètres, seront fusionnées avec <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome a besoin de votre autorisation pour accéder à votre appareil photo et à votre micro pour ce site</translation>
 <translation id="2429317896000329049">Impossible de synchroniser vos données dans Google Chrome, car la synchronisation n'est pas disponible pour votre domaine.</translation>
 <translation id="2467438592969358367">Google Chrome veut exporter vos mots de passe. Pour autoriser cette action, saisissez votre mot de passe Windows.</translation>
@@ -84,7 +74,6 @@
 <translation id="2871893339301912279">Vous êtes connecté à Google Chrome.</translation>
 <translation id="2888126860611144412">À propos de Chrome</translation>
 <translation id="3037838751736561277">Google Chrome est exécuté en mode arrière-plan.</translation>
-<translation id="3047079729301751317">La déconnexion de <ph name="USERNAME" /> a pour effet d'effacer votre historique, vos favoris, vos paramètres et les autres données Chrome stockées sur cet appareil. Les données stockées dans votre compte Google ne sont pas effacées ; vous pouvez les gérer dans <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Onglet Chrome</translation>
 <translation id="3080151273017101988">Poursuivre l'exécution d'applications en arrière-plan après la fermeture de Google Chrome</translation>
 <translation id="3089968997497233615">Une nouvelle version de Google Chrome encore plus sûre est disponible.</translation>
@@ -105,7 +94,6 @@
 <translation id="3582972582564653026">Synchroniser et personnaliser Chrome sur vos appareils</translation>
 <translation id="3622797965165704966">Il est désormais plus facile d'utiliser Chrome avec votre compte Google et sur des ordinateurs partagés.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Conditions d'utilisation<ph name="END_TERMS_OF_SERVICE_LINK" /> de Google Chrome OS</translation>
-<translation id="3716182511346448902">Cette page utilise trop de mémoire, Chrome a donc interrompu son chargement.</translation>
 <translation id="3718181793972440140">Cette action aura pour effet de supprimer 1 élément de cet appareil. Pour récupérer vos données ultérieurement, connectez-vous à Chrome en tant que <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">L'extension <ph name="EXTENSION_NAME" /> a modifié la page qui s'affiche lorsque vous démarrez Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -121,7 +109,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Relancer Chrome d'ici un jour}one{Relancer Chrome d'ici # jour}other{Relancer Chrome d'ici # jours}}</translation>
 <translation id="424864128008805179">Se déconnecter de Chrome ?</translation>
 <translation id="4251615635259297716">Associer vos données Chrome à ce compte ?</translation>
-<translation id="4251625577313994583">télécharger Chrome sur votre iPhone</translation>
 <translation id="4293420128516039005">Se connecter pour synchroniser et personnaliser Chrome sur vos appareils</translation>
 <translation id="4328355335528187361">Google Chrome pour les développeurs (mDNS-In)</translation>
 <translation id="4331809312908958774">Système d’exploitation Google Chrome</translation>
@@ -143,7 +130,6 @@
 <translation id="479167709087336770">Le correcteur orthographique utilisé est le même que celui employé dans la recherche Google. Le texte que vous saisissez dans le navigateur est envoyé à Google. Vous pouvez toujours modifier ce comportement dans les paramètres.</translation>
 <translation id="4891791193823137474">Laisser Google Chrome s'exécuter en arrière-plan</translation>
 <translation id="4895437082222824641">Ouvrir le lien dans un nouvel ongle&amp;t Chrome</translation>
-<translation id="4921569541910214635">Vous partagez un ordinateur ? Vous pouvez désormais configurer Chrome selon vos besoins.</translation>
 <translation id="4953650215774548573">Définir Google Chrome en tant que navigateur par défaut</translation>
 <translation id="495931528404527476">Dans Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -176,8 +162,6 @@
 <translation id="5895138241574237353">Redémarrer</translation>
 <translation id="5940385492829620908">Votre contenu Web, vos favoris et toutes vos données Chrome sont conservés ici.</translation>
 <translation id="5941830788786076944">Définir Google Chrome comme navigateur par défaut</translation>
-<translation id="6014844626092547096">Vous êtes maintenant connecté à Chrome. La synchronisation a été désactivée par votre administrateur.</translation>
-<translation id="6040143037577758943">Fermer</translation>
 <translation id="6070348360322141662">Pour plus de sécurité, vos données seront chiffrées dans Google Chrome</translation>
 <translation id="6113794647360055231">Chrome s'est amélioré</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -190,8 +174,6 @@
 <translation id="6368958679917195344">Google Chrome OS fonctionne grâce à d'autres <ph name="BEGIN_LINK_CROS_OSS" />logiciels Open Source<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome pour les développeurs</translation>
 <translation id="6566149418543181476">Mise à jour de Google Chrome (<ph name="PROGRESS_PERCENT" />)…</translation>
-<translation id="6598387184982954187">Vous utilisez le compte <ph name="PROFILE_EMAIL" /> pour synchroniser votre contenu dans Chrome. Pour mettre à jour vos préférences de synchronisation ou pour utiliser Chrome sans compte Google, accédez à la page <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Copiée dans Chrome</translation>
 <translation id="6676384891291319759">Accéder à Internet</translation>
 <translation id="6679975945624592337">Laisser Google Chrome s'exécuter en arrière-plan</translation>
 <translation id="6750954913813541382">Pour corriger les fautes d'orthographe, Chrome envoie à Google le texte que vous saisissez dans le navigateur</translation>
@@ -205,7 +187,6 @@
 <translation id="6989339256997917931">Google Chrome a été mis à jour, mais vous ne l'avez pas utilisé depuis plus de 30 jours.</translation>
 <translation id="7098166902387133879">Votre micro est en cours d'utilisation dans Google Chrome.</translation>
 <translation id="7106741999175697885">Gestionnaire de tâches - Google Chrome</translation>
-<translation id="7164397146364144019">Vous pouvez nous aider à rendre Chrome plus sûr et plus facile à utiliser en nous signalant automatiquement les incidents de sécurité potentiels.</translation>
 <translation id="7242029209006116544">Vous vous connectez avec un compte géré et donnez le contrôle de votre profil Google Chrome à son administrateur. Vos données Chrome, telles que les applications, les favoris, l'historique, les mots de passe et les autres paramètres, vont être définitivement associées à <ph name="USER_NAME" />. Vous pouvez supprimer ces données via le tableau de bord des comptes Google, mais vous ne pouvez pas les associer à un autre compte. Vous pouvez éventuellement créer un nouveau profil pour maintenir vos données Chrome séparées. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Cette langue est utilisée pour l'UI de Google Chrome</translation>
 <translation id="7296210096911315575">Informations importantes concernant l'utilisation et la sécurité</translation>
@@ -214,7 +195,6 @@
 <translation id="7398801000654795464">Vous étiez connecté à Google Chrome en tant que <ph name="USER_EMAIL_ADDRESS" />. Veuillez utiliser le même compte pour vous reconnecter.</translation>
 <translation id="7408085963519505752">Conditions d'utilisation de Chrome OS</translation>
 <translation id="7419046106786626209">Impossible de synchroniser vos données dans Chrome OS, car la synchronisation n'est pas disponible pour votre domaine.</translation>
-<translation id="7459554271817304652">Configurez la synchronisation pour enregistrer sur le Web les fonctionnalités personnalisées de votre navigateur et y accéder à partir de Google Chrome sur n'importe quel ordinateur.</translation>
 <translation id="7486227612705979895">Chromium va accéder à votre Drive pour proposer des suggestions dans la barre d'adresse</translation>
 <translation id="7531671357096394523">Fermez toutes les copies de Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome pour les développeurs</translation>
@@ -238,25 +218,18 @@
 <translation id="7962410387636238736">Cet ordinateur ne recevra plus les mises à jour de Google Chrome, car la compatibilité n'est plus assurée sur Windows XP et Windows Vista</translation>
 <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 nous permettre de créer des descriptions, les images sont envoyées à Google.</translation>
-<translation id="8032142183999901390">Une fois votre compte Chrome supprimé, vous devrez peut-être charger de nouveau les onglets ouverts pour que les modifications prennent effet.</translation>
 <translation id="8129812357326543296">À propos de &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Installez Chrome sur votre téléphone. Vous y recevrez un SMS.</translation>
-<translation id="825412236959742607">Cette page utilise trop de mémoire, Chrome a donc supprimé du contenu.</translation>
 <translation id="8255190535488645436">Votre webcam et votre micro sont en cours d'utilisation dans Google Chrome.</translation>
 <translation id="8286862437124483331">Google Chrome tente d'afficher les mots de passe. Pour autoriser cette action, saisissez votre mot de passe Windows.</translation>
 <translation id="8290100596633877290">Google Chrome est bloqué. Voulez-vous le relancer maintenant ?</translation>
 <translation id="8342675569599923794">Chrome a bloqué ce fichier, car ce dernier est dangereux.</translation>
 <translation id="8370517070665726704">© <ph name="YEAR" /> Google LLC. Tous droits réservés.</translation>
 <translation id="840084489713044809">Google Chrome veut exporter vos mots de passe.</translation>
-<translation id="8406086379114794905">Aidez-nous à améliorer Chrome</translation>
 <translation id="8455999171311319804">Facultatif : contribuez à améliorer Google Chrome OS en envoyant automatiquement des données de diagnostic et d'utilisation à Google.</translation>
-<translation id="8478823064122749032">Installez Chrome sur votre téléphone. Vous recevrez un SMS au numéro que vous avez indiqué pour la récupération de compte (<ph name="PHONE_NUMBER" />).</translation>
 <translation id="8498858610309223613">Une mise à jour spéciale de sécurité pour Google Chrome vient d'être installée. Veuillez redémarrer le navigateur. Vos onglets seront restaurés.</translation>
 <translation id="8521348052903287641">Règle de trafic entrant pour Google Chrome pour les développeurs autorisant le trafic mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Lanceur d'applications Chrome – Canary</translation>
 <translation id="8556340503434111824">Une nouvelle version de Google Chrome encore plus rapide est disponible.</translation>
-<translation id="8568392309447938879">Vous devez être connecté à Chrome pour utiliser les applications. Cela permet de synchroniser vos applications, vos favoris, votre historique, vos mots de passe et d'autres paramètres dans Chrome sur tous vos appareils.</translation>
 <translation id="8606668294522778825">Google Chrome peut utiliser des services Web pour améliorer votre confort de navigation. Vous pouvez choisir de désactiver ces services. <ph name="BEGIN_LINK" />En savoir plus<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome ne répond pas. Voulez-vous le relancer maintenant ?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome va être relancé dans 1 minute}one{Chrome va être relancé dans # minute}other{Chrome va être relancé dans # minutes}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_gu.xtb b/chrome/app/resources/google_chrome_strings_gu.xtb
index 1f9dd23..a07be98f 100644
--- a/chrome/app/resources/google_chrome_strings_gu.xtb
+++ b/chrome/app/resources/google_chrome_strings_gu.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS તમારા ડેટાને સિંક કરી શક્યું નથી. કૃપા કરીને તમારા સિંક પાસફ્રેઝને અપડેટ કરો.</translation>
 <translation id="1302523850133262269">કૃપા કરીને Chrome નવીનતમ સિસ્ટમ અપડેટ્સ ઇન્સ્ટોલ કરે ત્યાં સુધી રાહ જુઓ.</translation>
 <translation id="137466361146087520">Google Chrome બીટા</translation>
-<translation id="1393853151966637042">Chrome નો ઉપયોગ કરવા સહાય મેળવો</translation>
 <translation id="1399397803214730675">આ કમ્પ્યુટર પર પહેલેથી જ Google Chromeનું વધુ તાજેતરનું વર્ઝન છે. જો સૉફ્ટવેર કામ ન કરતું હોય, તો કૃપા કરીને Google Chromeને અનઇન્સ્ટૉલ કરો અને ફરી પ્રયાસ કરો.</translation>
 <translation id="1434626383986940139">Chrome કેનેરી ઍપ્લિકેશનો</translation>
-<translation id="1469002951682717133">Chrome ઍપ્લિકેશન લૉંચર</translation>
 <translation id="1553358976309200471">Chrome અપડેટ કરો</translation>
 <translation id="1587223624401073077">Google Chrome તમારા કેમેરાનો ઉપયોગ કરી રહ્યું છે.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> જોખમી છે, તેથી Chrome એ તેને અવરોધિત કરેલ છે.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome આ પાસવર્ડ તમારા Google એકાઉન્ટમાં સાચવશે. તમારે તેને યાદ રાખવો જરૂરી નથી.</translation>
 <translation id="174539241580958092">સાઇન ઇનમાં ભૂલ આવવાને કારણે Google Chrome તમારા ડેટાને સમન્વયિત કરી શક્યું નથી.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OSનો ઉપયોગ કરવા સહાય મેળવો</translation>
-<translation id="1795405610103747296">તમારા ફોન પર Chrome ઇન્સ્ટૉલ કરો. અમે તમારા ફોન પર એક SMS મોકલીશું: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">આને બંધ કરવાથી, તમે Chromeમાં સાઇન ઇન કર્યા સિવાય Gmail જેવી Googleની સાઇટમાં સાઇન ઇન કરી શકશો</translation>
 <translation id="1860536484129686729">Chromeને આ સાઇટ માટે તમારા કૅમેરાના ઍક્સેસની પરવાનગીની જરૂર પડે છે</translation>
 <translation id="1873233029667955273">Google Chrome તમારું ડિફૉલ્ટ બ્રાઉઝર નથી</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">Chrome OSની વિગતો માટે, કૃપા કરીને <ph name="LINK_BEGIN" />
       Chrome OS વિશે<ph name="LINK_END" /> જુઓ</translation>
 <translation id="2151406531797534936">કૃપા કરીને હવે Chrome ફરી શરૂ કરો</translation>
-<translation id="216054706567564023">તમારા ફોન પર Chrome ઇન્સ્ટૉલ કરો. અમે તમારા એકાઉન્ટને પાછું મેળવવા ફોન નંબર પર એક SMS મોકલીશું.</translation>
 <translation id="2246246234298806438">જ્યારે બિલ્ટ-ઇન PDF વ્યૂઅર ગૂમ હોય ત્યારે Google Chrome પ્રિન્ટ પ્રીવ્યૂ બતાવી શકતું નથી.</translation>
-<translation id="2252923619938421629">વર્તમાન સેટિંગ્સની જાણ કરીને Google Chrome ને વધુ સારું બનાવવામાં સહાય કરો</translation>
-<translation id="2286950485307333924">તમે હમણાં Chrome માં સાઇન ઇન કર્યું છે</translation>
 <translation id="2290014774651636340">Google API કીઝ ખૂટે છે. Google Chrome ની કેટલીક કાર્યક્ષમતા અક્ષમ થશે.</translation>
 <translation id="2290095356545025170">શું તમને ખાતરી છે કે તમારે Google Chromeને અનઇન્સ્ટૉલ કરવું છે?</translation>
 <translation id="2309047409763057870">આ Google Chrome નું દ્વિતીય ઇન્સ્ટૉલેશન છે અને આને તમારું ડિફૉલ્ટ બ્રાઉઝર બનાવી શકાતું નથી.</translation>
-<translation id="2346876346033403680">કોઈએ પહેલાં Chromeમાં આ કમ્પ્યુટર પર <ph name="ACCOUNT_EMAIL_LAST" /> તરીકે સાઇન ઇન કર્યું છે. જો એ તમારું એકાઉન્ટ નથી, તો તમારી માહિતીને અલગ રાખવા માટે નવો Chrome વપરાશકર્તા બનાવો.
-
-કોઈ પણ રીતે સાઇન ઇન કરવું બુકમાર્ક, ઇતિહાસ, અને બીજા સેટિંગ જેમ કે Chrome માહિતીને <ph name="ACCOUNT_EMAIL_NEW" />માં મર્જ કરશે.</translation>
 <translation id="2348335408836342058">Chromeને આ સાઇટ માટે તમારા કૅમેરા અને માઇક્રોફોનના ઍક્સેસની પરવાનગીની જરૂર પડે છે</translation>
 <translation id="2429317896000329049">Google Chrome તમારા ડેટાને સમન્વયિત કરી શક્યું નથી કારણ કે તમારા ડોમેન માટે સમન્વયન ઉપલબ્ધ નથી.</translation>
 <translation id="2467438592969358367">Google Chrome તમારા પાસવર્ડની નિકાસ કરવા માગે છે. આને મંજૂરી આપવા માટે તમારો Windows પાસવર્ડ ટાઇપ કરો.</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">તમે હમણાં Chrome માં સાઇન ઇન છો!</translation>
 <translation id="2888126860611144412">Chrome વિશે</translation>
 <translation id="3037838751736561277">Google Chrome પૃષ્ઠભૂમિ મોડમાં છે.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" />ને ડિસ્કનેક્ટ કરવાથી આ ડિવાઇસ પર તમે સ્ટોર કરેલાં ઇતિહાસ, બુકમાર્ક, સેટિંગ અને બીજો Chrome ડેટા કાઢી નંખાશે. તમારા Google એકાઉન્ટમાં સ્ટોર કરેલો ડેટા કાઢી નંખાશે નહિ અને એ <ph name="GOOGLE_DASHBOARD_LINK" />Google ડૅશબોર્ડ<ph name="END_GOOGLE_DASHBOARD_LINK" /> પર મેનેજ કરી શકાય છે.</translation>
 <translation id="3065168410429928842">Chrome ટૅબ</translation>
 <translation id="3080151273017101988">જ્યારે Google Chrome બંધ થાય ત્યારે પૃષ્ઠભૂમિમાં  ઍપ્લિકેશનો ચલાવવાનું ચાલુ રાખો </translation>
 <translation id="3089968997497233615">Google Chromeનું નવું, સુરક્ષિત વર્ઝન ઉપલબ્ધ છે.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">તમારા બધા ડિવાઇસ પર Chromeને સિંક કરો અને મનગમતું બનાવો</translation>
 <translation id="3622797965165704966">હવે તમારા Google એકાઉન્ટ સાથે અને શેર કરેલા કમ્પ્યુટર પર Chromeનો ઉપયોગ કરવો વધુ સરળ છે.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />સેવાની શરતો<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">આ પેજ ઘણી વધુ મેમરીનો ઉપયોગ કરે છે, તેથી Chromeએ તેને થોભાવ્યું છે.</translation>
 <translation id="3718181793972440140">આ, 1 આઇટમને આ ડિવાઇસમાંથી ડિલીટ કરશે. પછીથી તમારો ડેટા ફરીથી મેળવવા માટે, Chromeમાં <ph name="USER_EMAIL" /> તરીકે સાઇન ઇન કરો.</translation>
 <translation id="3735758079232443276">જ્યારે તમે Chrome શરૂ કરો છો ત્યારે જે પૃષ્ઠ દર્શાવવામાં આવે છે તે <ph name="EXTENSION_NAME" /> એક્સટેન્શને બદલ્યું છે.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{એક દિવસની અંદર Chromeને ફરીથી લૉન્ચ કરો}one{# દિવસની અંદર Chromeને ફરીથી લૉન્ચ કરો}other{# દિવસની અંદર Chromeને ફરીથી લૉન્ચ કરો}}</translation>
 <translation id="424864128008805179">Chromeમાંથી સાઇન આઉટ કરીએ?</translation>
 <translation id="4251615635259297716">તમારા Chrome ડેટાને આ એકાઉન્ટ સાથે લિંક કરીએ?</translation>
-<translation id="4251625577313994583">તમારા iPhone પર Chrome મેળવો</translation>
 <translation id="4293420128516039005">તમારા બધા ડિવાઇસ પર Chromeને સિંક અને વ્યક્તિગત કરવા માટે સાઇન ઇન કરો</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">આ પણ Google શોધમાં જે જોડણી તપાસનારનો ઉપયોગ થાય છે તેનો જ ઉપયોગ કરે છે. તમે બ્રાઉઝરમાં ટાઇપ કરો છો તે ટેક્સ્ટ Googleને મોકલવામાં આવે છે. તમે સેટિંગમાં આ વર્તણૂકને હંમેશાં બદલી શકો છો.</translation>
 <translation id="4891791193823137474">Google Chrome ને પૃષ્ટભૂમિમાં ચાલવા દો</translation>
 <translation id="4895437082222824641">નવા Chrome &amp;ટૅબમાં લિંક ખોલો</translation>
-<translation id="4921569541910214635">કમ્પ્યુટર શેર કરીએ? હવે તમે તમને ગમે તે રીતે Chromeને સેટ કરી શકો છો.</translation>
 <translation id="4953650215774548573">Google Chrome ને તમારા ડિફોલ્ટ બ્રાઉઝર તરીકે સેટ કરો</translation>
 <translation id="495931528404527476">Chrome માં</translation>
 <translation id="4990567037958725628">Google Chrome કૅનેરી</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">પુનઃપ્રારંભ કરો</translation>
 <translation id="5940385492829620908">તમારું વેબ, બુકમાર્ક્સ અને અન્ય Chrome સામગ્રી અહીં હોય છે.</translation>
 <translation id="5941830788786076944">Google Chrome ને ડિફૉલ્ટ બ્રાઉઝર બનાવો</translation>
-<translation id="6014844626092547096">તમે હવે Chrome માં સાઇન ઇન છો! સમન્વયન તમારા વ્યવસ્થાપક દ્વારા અક્ષમ કરેલું છે.</translation>
-<translation id="6040143037577758943">બંધ કરો</translation>
 <translation id="6070348360322141662">વધારાની સુરક્ષા માટે, Google Chrome, તમારા ડેટાને એન્ક્રિપ્ટ કરશે</translation>
 <translation id="6113794647360055231">Chrome હવે પહેલાંથી બહેતર બન્યું છે</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">Chrome OS વધારાના <ph name="BEGIN_LINK_CROS_OSS" />ખુલ્લા સ્ત્રોત સૉફ્ટવેર<ph name="END_LINK_CROS_OSS" /> દ્વારા શક્ય બને છે.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome અપડેટ થઈ રહ્યું છે (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">તમે તમારી Chrome સામગ્રીને સિંક કરવા માટે <ph name="PROFILE_EMAIL" />નો ઉપયોગ કરી રહ્યાં છો. તમારા સિંકની પસંદગીને અપડેટ કરવા માટે અથવા Chromeને Google એકાઉન્ટ વગર ઉપયોગ કરવા માટે, <ph name="SETTINGS_LINK" />ની મુલાકાત લો.</translation>
-<translation id="6600954340915313787">Chrome માં કોપી કરાયું</translation>
 <translation id="6676384891291319759">ઇંટરનેટ ઍક્સેસ કરો</translation>
 <translation id="6679975945624592337">Google Chromeને બૅકગ્રાઉન્ડમાં ચાલવા દો</translation>
 <translation id="6750954913813541382">જોડણીની ભૂલો સુધારવા માટે, તમે બ્રાઉઝરમાં ટાઇપ કરો છો તે ટેક્સ્ટ Chrome દ્વારા Googleને મોકલવામાં આવે છે</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Google Chrome અપડેટ કરવામાં આવ્યું હતું, પણ તમે તેનો 30 દિવસ સુધી ઉપયોગ કર્યો નથી.</translation>
 <translation id="7098166902387133879">Google Chrome તમારા માઇક્રોફોનનો ઉપયોગ કરી રહ્યું છે.</translation>
 <translation id="7106741999175697885">કાર્ય વ્યવસ્થાપક - Google Chrome</translation>
-<translation id="7164397146364144019">તમે Google ને સંભવિત સુરક્ષા ઘટનાઓની વિગતોની જાણ આપમેળે કરીને Chrome ને વધુ સલામત અને ઉપયોગમાં વધુ સરળ બનાવવામાં સહાય કરી શકો છો.</translation>
 <translation id="7242029209006116544">તમે મેનેજ કરેલા એકાઉન્ટ સાથે સાઇન ઇન કરી રહ્યાં છો અને તમારી Google Chrome પ્રોફાઇલ પર એડમિનને એનું નિયંત્રણ આપી રહ્યાં છો. તમારો Chrome ડેટા, જેમ કે તમારી ઍપ, બુકમાર્ક, ઇતિહાસ, પાસવર્ડ અને બીજા સેટિંગ, કાયમ માટે <ph name="USER_NAME" /> પર બંધાયેલ રહેશે. તમે Google એકાઉન્ટ ડૅશબોર્ડ દ્વારા આ ડેટાને કાઢી શકશો, પરંતુ તમે આ ડેટાને બીજા એકાઉન્ટ સાથે સાંકળી શકશો નહિ. તમારા અસ્તિત્વમાં છે તે Chrome ડેટાને અલગ રાખવા માટે, તમે વૈકલ્પિક રૂપે એક નવી પ્રોફાઇલ બનાવી શકો છો. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">આ ભાષાનો ઉપયોગ Google Chrome UI પ્રદર્શિત કરવા માટે થાય છે</translation>
 <translation id="7296210096911315575">મહત્વપૂર્ણ ઉપયોગ અને સુરક્ષા માહિતી</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">તમે Chromeમાં <ph name="USER_EMAIL_ADDRESS" /> તરીકે સાઇન ઇન કર્યું હતું. ફરીથી સાઇન ઇન કરવા માટે કૃપા કરીને એ જ એકાઉન્ટનો ઉપયોગ કરો.</translation>
 <translation id="7408085963519505752">Chrome OS શરતો</translation>
 <translation id="7419046106786626209">Chrome OS તમારા ડેટાને સિંક કરી શક્યું નથી કારણ કે તમારા ડોમેન માટે સિંક ઉપલબ્ધ નથી.</translation>
-<translation id="7459554271817304652">તમારી વેબ પરની વ્યક્તિગત કરેલી બ્રાઉઝર સુવિધાઓને સાચવવા અને તેમને કોઈ પણ કમ્પ્યુટર પર Google Chromeમાંથી ઍક્સેસ કરવા માટે સિંક સેટ કરો.</translation>
 <translation id="7486227612705979895">ઍડ્રેસ બારમાં સૂચનો કરવા માટે, Chrome તમારી ડ્રાઇવને ઍક્સેસ કરશે</translation>
 <translation id="7531671357096394523">Chromeની બધી કૉપિ બંધ કરો.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">આ કમ્પ્યુટર હવેથી Google Chrome અપડેટ મેળવી શકશે નહીં કારણકે Windows XP અને Windows Vista હવે સમર્થિત રહ્યાં નથી</translation>
 <translation id="8008534537613507642">Chrome ફરીથી ઇન્સ્ટોલ કરો</translation>
 <translation id="8013993649590906847">જો છબીમાં ઉપયોગી વર્ણન ન હોય, તો Chrome તમને વર્ણન પૂરું પાડવાનો પ્રયાસ કરશે. વર્ણન બનાવવા માટે, Googleને છબીઓ મોકલવામાં આવે છે.</translation>
-<translation id="8032142183999901390">તમારા એકાઉન્ટને Chromeમાંથી દૂર કર્યાં પછી, અમલમાં લાવવા માટે તમારે તમારા ખુલ્લા ટૅબને ફરીથી લોડ કરવાની જરૂર પડી શકે.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome વિશે</translation>
-<translation id="8179874765710681175">તમારા ફોન પર Chrome ઇન્સ્ટૉલ કરો. અમે તમારા ફોન પર એક SMS મોકલીશું.</translation>
-<translation id="825412236959742607">આ પેજ મેમરીનો બહુ ઉપયોગ કરે છે, તેથી Chromeએ કેટલુંક કન્ટેન્ટ કાઢી નાખ્યું છે.</translation>
 <translation id="8255190535488645436">Google Chrome તમારા કેમેરા અને માઇક્રોફોનનો ઉપયોગ કરી રહ્યું છે.</translation>
 <translation id="8286862437124483331">Google Chrome પાસવર્ડ્સ બતાવવાનો પ્રયાસ કરી રહ્યું છે. આની મંજૂરી આપવા માટે તમારો Windows પાસવર્ડ લખો.</translation>
 <translation id="8290100596633877290">ઓહ! Google Chrome ક્રેશ થઈ ગયું. હમણાં ફરીથી લોંચ કરીએ?</translation>
 <translation id="8342675569599923794">આ ફાઇલ જોખમી છે, તેથી Chrome એ તેને અવરોધિત કરેલ છે.</translation>
 <translation id="8370517070665726704">કૉપિરાઇટ <ph name="YEAR" /> Google LLC. સર્વાધિકાર સુરક્ષિત.</translation>
 <translation id="840084489713044809">Google Chrome તમારા પાસવર્ડની નિકાસ કરવા માગે છે.</translation>
-<translation id="8406086379114794905">Chrome ને બહેતર બનાવવામાં સહાય કરો</translation>
 <translation id="8455999171311319804">વૈકલ્પિક: Googleને નિદાન અને વપરાશ ડેટા ઑટોમૅટિક રીતે મોકલીને Chrome OSને વધુ સારી બનાવવામાં સહાય કરો.</translation>
-<translation id="8478823064122749032">તમારા ફોન પર Chrome ઇન્સ્ટૉલ કરો. અમે તમારા એકાઉન્ટને પાછું મેળવવા ફોન નંબર પર એક SMS મોકલીશું: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome માટેનું વિશેષ સુરક્ષા અપડેટ હમણાં જ લાગુ કરવામાં આવ્યું. ફરી શરૂ કરો અને અમે તમારાં ટૅબની પુનઃસ્થાપના કરીશું.</translation>
 <translation id="8521348052903287641">mDNS ટ્રાફિકને મંજૂરી આપવા માટે Google Chrome Dev માટે ઇનબાઉન્ડ નિયમ.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome ઍપ્લિકેશન લૉંચર કેનેરી</translation>
 <translation id="8556340503434111824">Google Chromeનું એક નવું વર્ઝન ઉપલબ્ધ છે અને તે પહેલાં કરતાંએ વધુ ઝડપી છે.</translation>
-<translation id="8568392309447938879">તમારે ઍપ્લિકેશનોનો ઉપયોગ કરવા માટે Chrome માં સાઇન ઇન કરવાની જરૂર છે. આ Chrome ને તમારી ઍપ્લિકેશનો, બુકમાર્ક્સ, ઇતિહાસ, પાસવર્ડ્સ અને સમગ્ર ઉપકરણની અન્ય સેટિંગ્સને સમન્વયિત કરવાની મંજૂરી આપે છે.</translation>
 <translation id="8606668294522778825">તમારા બ્રાઉઝ કરવાના અનુભવને વધુ સારો બનાવવા માટે Google Chrome વેબ સેવાઓનો ઉપયોગ કરી શકે. તમે વૈકલ્પિક રીતે આ સેવાઓને બંધ કરી શકો છો. <ph name="BEGIN_LINK" />વધુ જાણો<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome પ્રતિસાદ આપતું નથી. હવે ફરીથી લોંચ કરીએ?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome 1 મિનિટમાં ફરીથી લૉન્ચ થશે}one{Chrome # મિનિટમાં ફરીથી લૉન્ચ થશે}other{Chrome # મિનિટમાં ફરીથી લૉન્ચ થશે}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_hi.xtb b/chrome/app/resources/google_chrome_strings_hi.xtb
index f130f9c..e06bac2 100644
--- a/chrome/app/resources/google_chrome_strings_hi.xtb
+++ b/chrome/app/resources/google_chrome_strings_hi.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS आपका डेटा सिंक नहीं कर सका. कृपया अपना सिंक 'पासफ़्रेज़' अपडेट करें.</translation>
 <translation id="1302523850133262269">कृपया Chrome के द्वारा नवीनतम सिस्टम अपडेट इंस्टॉल करने के दौरान प्रतीक्षा करें.</translation>
 <translation id="137466361146087520">Google Chrome बीटा</translation>
-<translation id="1393853151966637042">Chrome का उपयोग करने के बारे में सहायता पाएं</translation>
 <translation id="1399397803214730675">इस कंप्यूटर में Google Chrome का ज़्यादा नवीन वर्शन पहले से मौजूद है. अगर सॉफ्टवेयर काम नहीं कर रहा है, तो कृपया Google Chrome अनइंस्‍टॉल करें और फिर से प्रयास करें.</translation>
 <translation id="1434626383986940139">Chrome Canary ऐप्स </translation>
-<translation id="1469002951682717133">Chrome ऐप्लिकेशन लॉन्चर</translation>
 <translation id="1553358976309200471">Chrome अपडेट करें</translation>
 <translation id="1587223624401073077">Google Chrome आपके कैमरे का उपयोग कर रहा है.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> खरतरनाक है, इसलिए Chrome ने उसे अवरोधित कर दिया है.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome इस पासवर्ड को आपके Google खाते में सेव कर लेगा. आपको इसे याद रखने की ज़रूरत नहीं है.</translation>
 <translation id="174539241580958092">प्रवेश करने में गड़बड़ी के कारण Google Chrome आपका डेटा समन्‍वयित नहीं कर सका.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS का उपयोग करने के बारे में सहायता पाएं</translation>
-<translation id="1795405610103747296">अपने फ़ोन पर Chrome इंस्टॉल करें. हम आपके फ़ोन पर एक मैसेज (एसएमएस) भेजेंगे: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">इसे बंद करके, आप Chrome में साइन इन किए बिना Gmail जैसी Google साइटों में साइन इन कर सकते हैं</translation>
 <translation id="1860536484129686729">Chrome को इस साइट के लिए आपका कैमरा एक्सेस करने की अनुमति चाहिए</translation>
 <translation id="1873233029667955273">Google Chrome आपका डिफ़ॉल्ट ब्राउज़र नहीं है</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Chrome OS की जानकारी के लिए, कृपया <ph name="LINK_BEGIN" />
       Chrome OS के बारे में<ph name="LINK_END" /> देखें</translation>
 <translation id="2151406531797534936">कृपया Chrome को अभी रीस्टार्ट करें</translation>
-<translation id="216054706567564023">अपने फ़ोन पर Chrome इंस्टॉल करें. हम आपके उस फ़ोन नंबर पर एक मैसेज (एसएमएस) भेजेंगे, जिसे आपने अपना खाता वापस पाने के लिए सेट किया है.</translation>
 <translation id="2246246234298806438">अगर Google Chrome के साथ ही आने वाला PDF व्यूअर मौजूद नहीं होगा तो, Google Chrome प्रिंट करने से पहले की झलक नहीं दिखा पाएगा.</translation>
-<translation id="2252923619938421629">वर्तमान सेटिंग की रिपोर्ट करके Google Chrome को बेहतर बनाने में सहायता करें</translation>
-<translation id="2286950485307333924">अब आपने Chrome में प्रवेश कर लिया है</translation>
 <translation id="2290014774651636340">Google API (एपीआई) कुंजियां मौजूद नहीं हैं. Google Chrome के कुछ फ़ंक्शन बंद कर दिए जाएंगे.</translation>
 <translation id="2290095356545025170">क्या आप वाकई Google Chrome को विस्थापित करना चाहते हैं?</translation>
 <translation id="2309047409763057870">यह Google Chrome का द्वितीयक इंस्टॉलेशन है और इसे आपका डिफ़ॉल्ट ब्राउज़र नहीं बनाया जा सकता.</translation>
-<translation id="2346876346033403680">इस कंप्यूटर पर किसी अन्य व्यक्ति ने <ph name="ACCOUNT_EMAIL_LAST" /> के रूप में Chrome में साइन इन किया था. अगर वह आपका खाता नहीं है तो, अपनी जानकारी अलग रखने के लिए आप एक नया 'Chrome उपयोगकर्ता' बना सकते हैं.
-
-किसी भी तरह साइन इन करने से बुकमार्क, इतिहास, और अन्य सेटिंग जैसी 'Chrome जानकारी' <ph name="ACCOUNT_EMAIL_NEW" /> में मर्ज हो जाएगी.</translation>
 <translation id="2348335408836342058">Chrome को इस साइट के लिए आपका कैमरा और माइक्रोफ़ोन एक्सेस करने की अनुमति चाहिए</translation>
 <translation id="2429317896000329049">Google Chrome आपका डेटा समन्‍वयित नहीं कर सका क्‍योंकि समन्‍वयन आपके डोमेन के लिए उपलब्‍ध नहीं है.</translation>
 <translation id="2467438592969358367">Google Chrome आपके पासवर्ड निर्यात करना चाहता है. इसकी मंज़ूरी देने के लिए अपना Windows पासवर्ड लिखें.</translation>
@@ -83,10 +73,10 @@
 <translation id="2871893339301912279">आप Chrome में प्रवेश हैं.</translation>
 <translation id="2888126860611144412">Chrome के बारे में</translation>
 <translation id="3037838751736561277">Google Chrome पृष्ठभूमि मोड में है.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> को डिसकनेक्ट करने से आपका इतिहास, बुकमार्क, सेटिंग, और इस डिवाइस पर संग्रहित अन्य Chrome डेटा साफ़ हो जाएगा. आपके Google खाते में संग्रहित डेटा साफ़ नहीं होगा और उसे <ph name="GOOGLE_DASHBOARD_LINK" />Google डैशबोर्ड<ph name="END_GOOGLE_DASHBOARD_LINK" /> पर प्रबंधित किया जा सकता है.</translation>
 <translation id="3065168410429928842">Chrome टैब</translation>
 <translation id="3080151273017101988">Google Chrome के बंद होने पर पृष्ठभूमि ऐप्स  चलाना जारी रखें</translation>
 <translation id="3089968997497233615">Google Chrome का एक नया, सुरक्षित वर्शन उपलब्‍ध है.</translation>
+<translation id="3138848678222082288">आने वाले समय में Chrome के वर्शन अपने आप इंस्टॉल हो जाएंगे. डाउनलोड पूरा होने के बाद Chrome रिस्टार्ट होगा और आप उसका इस्तेमाल कर पाएंगे.</translation>
 <translation id="3149510190863420837">Chrome ऐप्स</translation>
 <translation id="3282568296779691940">Chrome में साइन इन करें</translation>
 <translation id="3340978935015468852">सेटिंग</translation>
@@ -103,7 +93,6 @@
 <translation id="3582972582564653026">Chrome को अपने सभी डिवाइस पर सिंक करें और मनमुताबिक बनाएं</translation>
 <translation id="3622797965165704966">अब अपने Google खाते के साथ और शेयर किए गए कंप्यूटर पर Chrome का उपयोग करना आसान हो गया है.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />सेवा की शर्तें<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">यह पेज बहुत ज़्यादा मेमोरी का इस्तेमाल करता है, इसलिए Chrome ने इसे रोक दिया है.</translation>
 <translation id="3718181793972440140">ऐसा करने से इस डिवाइस से 1 आइटम मिट जाएगा. बाद में अपना डेटा पाने के लिए, Chrome में <ph name="USER_EMAIL" /> के रूप में साइन इन करें.</translation>
 <translation id="3735758079232443276">एक्सटेंशन "<ph name="EXTENSION_NAME" />" ने यह बदल दिया है कि जब आप Chrome प्रारंभ करते हैं तब कौन सा पृष्‍ठ दिखाया जाए.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -119,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{एक दिन के अंदर Chrome को फिर से लॉन्च करें}one{# दिनों के अंदर Chrome को फिर से लॉन्च करें}other{# दिनों के अंदर Chrome को फिर से लॉन्च करें}}</translation>
 <translation id="424864128008805179">Chrome से साइन आउट करें?</translation>
 <translation id="4251615635259297716">आपके Chrome डेटा को इस खाते से लिंक करें?</translation>
-<translation id="4251625577313994583">अपने iPhone पर Chrome पाएं</translation>
 <translation id="4293420128516039005">Chrome को अपने सभी डिवाइस पर सिंक करने और मनमुताबिक बनाने के लिए साइन इन करें</translation>
 <translation id="4328355335528187361">Google Chrome डेवलपर (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -141,7 +129,6 @@
 <translation id="479167709087336770">इसमें स्पेलिंग जाँचने वाली उसी सुविधा का इस्तेमाल होता है जिसका इस्तेमाल 'Google सर्च' में किया जाता है. आप ब्राउज़र में जो भी लेख लिखते हैं उसे Google को भेजा जाता है. आप 'सेटिंग' में जाकर इसे कभी भी बदल सकते हैं.</translation>
 <translation id="4891791193823137474">Google Chrome को पृष्ठभूमि में चलने दें</translation>
 <translation id="4895437082222824641">नए Chrome &amp;टैब में लिंक खोलें</translation>
-<translation id="4921569541910214635">कंप्यूटर शेयर करते हैं? अब आप Chrome जैसा चाहें वैसा सेट कर सकते हैं.</translation>
 <translation id="4953650215774548573">Google Chrome को अपने डिफ़ॉल्ट ब्राउज़र के रूप में सेट करना</translation>
 <translation id="495931528404527476">Chrome में</translation>
 <translation id="4990567037958725628">Google Chrome कैनरी</translation>
@@ -175,8 +162,6 @@
 <translation id="5895138241574237353">फिर से प्रारंभ करें</translation>
 <translation id="5940385492829620908">आपके वेब, बुकमार्क और अन्य Chrome सामग्री यहां मौजूद रहती है.</translation>
 <translation id="5941830788786076944">Google Chrome को सामान्य ब्राउज़र बनाएं</translation>
-<translation id="6014844626092547096">अब आपने Chrome में प्रवेश कर लिया हैं! सिंक को आपके व्यवस्थापक द्वारा अक्षम किया गया है.</translation>
-<translation id="6040143037577758943">बंद करें</translation>
 <translation id="6070348360322141662">ज़्यादा सुरक्षा के लिए, Google Chrome आपका डेटा सुरक्षित करेगा</translation>
 <translation id="6113794647360055231">Chrome पहले से बेहतर हो गया है</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -189,21 +174,19 @@
 <translation id="6368958679917195344">Chrome OS को अतिरिक्त <ph name="BEGIN_LINK_CROS_OSS" />ओपन सोर्स सॉफ़्टवेयर<ph name="END_LINK_CROS_OSS" /> द्वारा संभव बनाया गया है.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome डेवलपर</translation>
 <translation id="6566149418543181476">Google Chrome अपडेट हो रहा है (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">आप अपनी Chrome सामग्री को सिंक करने के लिए <ph name="PROFILE_EMAIL" /> का इस्तेमाल कर रहे हैं. सिंक करने की अपनी प्राथमिकता को अपडेट करने या 'Google खाते' के बिना Chrome का इस्तेमाल करने के लिए, <ph name="SETTINGS_LINK" /> पर जाएं.</translation>
-<translation id="6600954340915313787">Chrome पर कॉपी किया गया</translation>
 <translation id="6676384891291319759">इंटरनेट एक्सेस करें</translation>
 <translation id="6679975945624592337">Google Chrome को बैकग्राउंड में चलने दें</translation>
 <translation id="6750954913813541382">वर्तनी की गलती को ठीक करने के लिए, आप ब्राउज़र में जो कुछ भी लिखते हैं, Chrome उसे Google को भेज देता है</translation>
 <translation id="677276454032249905">फिर भी Chrome से बाहर निकलें?</translation>
 <translation id="683440813066116847">mDNS ट्रैफ़िक की अनुमति देने के लिए Google Chrome Canary के लिए इनबाउंड नियम.</translation>
 <translation id="6885412569789873916">Chrome बीटा ऐप्लिकेशन</translation>
+<translation id="6906909733186691861">आने वाले समय में Chrome के वर्शन अपने आप इंस्टॉल हो जाएंगे.</translation>
 <translation id="6943584222992551122">इस व्यक्ति का ब्राउज़िंग डेटा इस डिवाइस से मिटा दिया जाएगा. डेटा वापस पाने के लिए, Chrome में <ph name="USER_EMAIL" /> के रूप में साइन इन करें.</translation>
 <translation id="6967962315388095737">mDNS ट्रैफ़िक की अनुमति देने के लिए Google Chrome बीटा का इनबाउंड नियम.</translation>
 <translation id="6982337800632491844"><ph name="DOMAIN" /> चाहता है कि इस डिवाइस का उपयोग करने से पहले आप इन सेवा की शर्तों को पढ़ लें और उन्हें स्वीकार करें. ये शर्तें Chrome OS शर्तों का विस्तार, उनमें बदलाव या उन्हें सीमित नहीं करतीं.</translation>
 <translation id="6989339256997917931">Google Chrome को अपडेट कर दिया गया  है, लेकिन आपने इसका कम से कम 30 दिन से उपयोग नहीं किया है.</translation>
 <translation id="7098166902387133879">Google Chrome आपके माइक्रोफ़ोन का उपयोग कर रहा है.</translation>
 <translation id="7106741999175697885">काम का प्रबंधक - Google Chrome</translation>
-<translation id="7164397146364144019">आप Google को संभावित सुरक्षा घटनाओं के विवरणों की अपने आप रिपोर्ट करके Chrome को ज़्यादा सुरक्षित और आसान बनाने में सहायता कर सकते हैं.</translation>
 <translation id="7242029209006116544">आप प्रबंधित खाते से साइन इन कर रहे हैं और उसके एडमिन को अपनी Google Chrome प्रोफ़ाइल पर नियंत्रण दे रहे हैं. आपका Chrome डेटा, जैसे आपके ऐप्लिकेशन, बुकमार्क, इतिहास, पासवर्ड, और दूसरे सेटिंग <ph name="USER_NAME" /> से स्थायी रूप से जुड़ जाएंगे. आप Google खाता डैशबोर्ड से इस डेटा को मिटा सकेंगे, लेकिन आप किसी दूसरे खाते से इस डेटा को जोड़ नहीं सकेंगे. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">इस भाषा का इस्तेमाल Google Chrome यूज़र इंटरफ़ेस (यूआई) दिखाने के लिए किया जाता है</translation>
 <translation id="7296210096911315575">इस्तेमाल और सुरक्षा से जुड़ी ज़रूरी जानकारी</translation>
@@ -212,7 +195,6 @@
 <translation id="7398801000654795464">आपने Chrome में <ph name="USER_EMAIL_ADDRESS" /> के रूप में साइन इन किया था. फिर से साइन इन करने के लिए कृपया उसी खाते का इस्तेमाल करें.</translation>
 <translation id="7408085963519505752">Chrome OS शर्तें</translation>
 <translation id="7419046106786626209">Chrome OS आपका डेटा समन्वयित नहीं कर सका क्योंकि आपके डोमेन के लिए समन्वयन उपलब्ध नहीं है.</translation>
-<translation id="7459554271817304652">वेब पर अपनी व्यक्तिगत ब्राउज़र सुविधाएं सेव करने के लिए सिंक सेट करें और किसी भी कंप्‍यूटर पर Google Chrome से एक्सेस करें.</translation>
 <translation id="7486227612705979895">पता बार में सुझाव देने के लिए Chrome आपका 'डिस्क' ऐक्सेस करेगा</translation>
 <translation id="7531671357096394523">Chrome की सभी कॉपी से बाहर निकलें.</translation>
 <translation id="7535429826459677826">Google Chrome डेवलपर</translation>
@@ -236,25 +218,18 @@
 <translation id="7962410387636238736">इस कंप्‍यूटर को अब Google Chrome के अपडेट नहीं मिलेंगे क्‍योंकि Windows XP और Windows Vista अब काम नहीं करते हैं</translation>
 <translation id="8008534537613507642">Chrome फिर से इंस्टॉल करें</translation>
 <translation id="8013993649590906847">अगर किसी इमेज के बारे में मददगार जानकारी मौजूद नहीं है, तो Chrome उसके बारे में जानकारी देने की कोशिश करेगा. जानकारी तैयार करने के लिए, इमेज Google को भेजी जाती हैं.</translation>
-<translation id="8032142183999901390">Chrome से अपना खाता निकालने के बाद, आपको अपने खुले टैब फिर से लोड करने की ज़रुरत हो सकती है, ताकि वे प्रभावी हो सकें.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome के बारे में</translation>
-<translation id="8179874765710681175">अपने फ़ोन पर Chrome इंस्टॉल करें. हम आपके फ़ोन पर एक मैसेज (एसएमएस) भेजेंगे.</translation>
-<translation id="825412236959742607">यह पेज बहुत ज़्यादा मेमोरी का इस्तेमाल करता है, इसलिए Chrome ने कुछ सामग्री हटा दी है.</translation>
 <translation id="8255190535488645436">Google Chrome आपके कैमरे और माइक्रोफ़ोन का उपयोग कर रहा है.</translation>
 <translation id="8286862437124483331">Google Chrome पासवर्ड दिखाने का प्रयास कर रहा है. इसकी अनुमति देने के लिए अपना Windows पासवर्ड लिखें.</translation>
 <translation id="8290100596633877290">रुकिए! Google Chrome क्रैश हो गया है. अभी फिर से लॉन्च करें?</translation>
 <translation id="8342675569599923794">यह फ़ाइल खतरनाक है, इसलिए Chrome ने इसे रोक दिया है.</translation>
 <translation id="8370517070665726704">कॉपीराइट <ph name="YEAR" /> Google LLC. सर्वाधिकार सुरक्षित.</translation>
 <translation id="840084489713044809">Google Chrome आपके पासवर्ड निर्यात करना चाहता है.</translation>
-<translation id="8406086379114794905">Chrome को बेहतर बनाने में सहायता करें</translation>
 <translation id="8455999171311319804">वैकल्पिक: Google को गड़बड़ी और उपयोग का डेटा अपने आप भेजकर Chrome OS को बेहतर बनाने में सहायता करें.</translation>
-<translation id="8478823064122749032">अपने फ़ोन पर Chrome इंस्टॉल करें. हम आपके उस फ़ोन नंबर पर एक मैसेज (एसएमएस) भेजेंगे, जिसे आपने अपना खाता वापस पाने के लिए सेट किया है: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome के लिए एक खास सुरक्षा अपडेट अभी-अभी लागू किया गया था. अभी रीस्टार्ट करें और हम आपके टैब बहाल कर देंगे.</translation>
 <translation id="8521348052903287641">mDNS ट्रैफ़िक की अनुमति देने के लिए Google Chrome का इनबाउंड नियम.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome ऐप लॉन्चर Canary</translation>
 <translation id="8556340503434111824">Google Chrome का एक नया वर्शन उपलब्‍ध है, और यह अब तक का सबसे तेज़ है.</translation>
-<translation id="8568392309447938879">ऐप्स का उपयोग करने के लिए आपको Chrome में प्रवेश किए हुए रहना होगा. इससे Chrome को सभी डिवाइस में मौजूद आपके ऐप्स, बुकमार्क, इतिहास, पासवर्ड और अन्य सेटिंग समन्वयित करने की अनुमति मिल जाती है.</translation>
 <translation id="8606668294522778825">आपके ब्राउज़िंग अनुभव को बेहतर बनाने के लिए Google Chrome, वेब सेवाओं का इस्तेमाल कर सकता है. आप चाहें तो इन सेवाओं को बंद करने का विकल्प चुन सकते हैं. <ph name="BEGIN_LINK" />ज़्यादा जानें<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome निष्‍क्रिय है. अभी फिर से लॉन्च करें?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome 1 मिनट में फिर से लॉन्च होगा}one{Chrome # मिनट में फिर से लॉन्च होगा}other{Chrome # मिनट में फिर से लॉन्च होगा}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_hr.xtb b/chrome/app/resources/google_chrome_strings_hr.xtb
index c1564d39..64ab7c8a 100644
--- a/chrome/app/resources/google_chrome_strings_hr.xtb
+++ b/chrome/app/resources/google_chrome_strings_hr.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">OS Chrome nije mogao sinkronizirati vaše podatke. Ažurirajte zaporku za sinkronizaciju.</translation>
 <translation id="1302523850133262269">Pričekajte da Chrome instalira najnovija ažuriranja sustava.</translation>
 <translation id="137466361146087520">Beta verzija preglednika Chrome</translation>
-<translation id="1393853151966637042">Pomoć za upotrebu Chromea</translation>
 <translation id="1399397803214730675">Na ovom računalu već postoji novija verzija programa Google Chrome. Ako softver ne radi, deinstalirajte Google Chrome i pokušajte ponovo.</translation>
 <translation id="1434626383986940139">Aplikacije kanala Chrome Canary</translation>
-<translation id="1469002951682717133">Pokretač aplikacija sustava Chrome</translation>
 <translation id="1553358976309200471">Ažuriraj Chrome</translation>
 <translation id="1587223624401073077">Google Chrome upotrebljava vašu kameru.</translation>
 <translation id="1587325591171447154">Datoteka <ph name="FILE_NAME" /> opasna je, pa ju je Chrome blokirao.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome će spremiti tu zaporku na vaš Google račun. Ne morate je pamtiti.</translation>
 <translation id="174539241580958092">Google Chrome nije mogao sinkronizirati vaše podatke zbog pogreške prilikom prijave.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Pomoć za upotrebu OS-a Chrome</translation>
-<translation id="1795405610103747296">Instalirajte Chrome na telefon. Poslat ćemo vam SMS na vaš telefonski broj: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Ako isključite tu opciju, možete se prijaviti na Googleove web-lokacije kao što je Gmail bez prijavljivanja u Chrome</translation>
 <translation id="1860536484129686729">Chrome treba dopuštenje za pristup kameri za ovu web-lokaciju</translation>
 <translation id="1873233029667955273">Google Chrome nije vaš zadani preglednik</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Pojedinosti o OS-u Chrome potražite u dijelu <ph name="LINK_BEGIN" />
       O OS-u Chrome<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Sada ponovo pokrenite Chrome</translation>
-<translation id="216054706567564023">Instalirajte Chrome na telefon. Poslat ćemo vam SMS na telefonski broj za oporavak računa.</translation>
 <translation id="2246246234298806438">Google Chrome ne može prikazati pregled ispisa ako nema ugrađeni preglednik PDF-a.</translation>
-<translation id="2252923619938421629">Pomognite poboljšati Google Chrome tako što ćete prijaviti trenutačne postavke</translation>
-<translation id="2286950485307333924">Prijavljeni ste u Chrome</translation>
 <translation id="2290014774651636340">Nedostaju ključevi Google API-ja. Neke funkcije Google Chromea bit će onemogućene.</translation>
 <translation id="2290095356545025170">Jeste li sigurni da želite deinstalirati Google Chrome?</translation>
 <translation id="2309047409763057870">Ovo je sekundarna instalacija Google Chromea, pa on ne može biti vaš zadani preglednik.</translation>
-<translation id="2346876346033403680">Netko se prethodno prijavio na Chrome na ovom računalu kao <ph name="ACCOUNT_EMAIL_LAST" />. Ako to nije vaš račun, izradite novog korisnika sustava Chrome kako bi vaši podaci bili odvojeni.
-
-Ako se ipak prijavite, podaci sustava Chrome kao što su oznake, povijest i ostale postavke spojit će se s korisnikom <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome treba dopuštenje za pristup kameri i mikrofonu za ovu web-lokaciju</translation>
 <translation id="2429317896000329049">Google Chrome nije mogao sinkronizirati vaše podatke jer sinkronizacija nije dostupna za vašu domenu.</translation>
 <translation id="2467438592969358367">Google Chrome želi izvesti vaše zaporke. Upišite svoju zaporku za Windows da biste to dopustili.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">Prijavljeni ste na Chrome!</translation>
 <translation id="2888126860611144412">O Chromeu</translation>
 <translation id="3037838751736561277">Google Chrome radi u pozadini.</translation>
-<translation id="3047079729301751317">Prekidanjem veze s računom <ph name="USERNAME" /> izbrisat ćete svoju povijest, oznake, postavke i ostale Chromeove podatke pohranjene na ovom uređaju. Podaci pohranjeni na vašem Google računu neće se izbrisati. Tim podacima možete upravljati na <ph name="GOOGLE_DASHBOARD_LINK" />Google nadzornoj ploči<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chromeova kartica</translation>
 <translation id="3080151273017101988">Nastavi prikazivati ​​pozadinske aplikacije po zatvaranju preglednika Google Chrome</translation>
 <translation id="3089968997497233615">Dostupna je nova, sigurnija verzija preglednika Google Chrome.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Uključite sinkronizaciju Chromea kako bi vam bio prilagođen na svim vašim uređajima</translation>
 <translation id="3622797965165704966">Upotreba Chromea s vašim Google računom te na dijeljenim računalima sada je još jednostavnija.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Uvjeti pružanja usluge<ph name="END_TERMS_OF_SERVICE_LINK" /> OS-a Google Chrome</translation>
-<translation id="3716182511346448902">Ova stranica upotrebljava previše memorije, pa ju je Chrome pauzirao.</translation>
 <translation id="3718181793972440140">Time će se izbrisati jedna stavka s uređaja. Da biste kasnije dohvatili svoje podatke, prijavite se na Chrome kao <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Proširenje "<ph name="EXTENSION_NAME" />" promijenilo je stranicu koja se prikazuje prilikom pokretanja Chromea.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Ponovo pokrenite Chrome u roku od jednog dana}one{Ponovo pokrenite Chrome u roku od # dana}few{Ponovo pokrenite Chrome u roku od # dana}other{Ponovo pokrenite Chrome u roku od # dana}}</translation>
 <translation id="424864128008805179">Želite li se odjaviti s Chromea?</translation>
 <translation id="4251615635259297716">Želite li povezati svoje podatke sustava Chrome s tim računom?</translation>
-<translation id="4251625577313994583">preuzmite Chrome na iPhone</translation>
 <translation id="4293420128516039005">Prijavite se da biste sinkronizirali i prilagodili Chrome na svim svojim uređajima</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">OS Chrome</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Upotrebljava istu provjeru pravopisa koja se upotrebljava na Google pretraživanju. Tekst koji unesete u preglednik šalje se Googleu. To ponašanje možete promijeniti u postavkama kad god želite.</translation>
 <translation id="4891791193823137474">Neka Google Chrome radi u pozadini</translation>
 <translation id="4895437082222824641">Otvori vezu na novoj &amp;kartici Chromea</translation>
-<translation id="4921569541910214635">Dijelite računalo? Sada možete prilagoditi Chrome baš kako želite.</translation>
 <translation id="4953650215774548573">Postavite Google Chrome kao svoj zadani preglednik</translation>
 <translation id="495931528404527476">U Chromeu</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Ponovno pokreni</translation>
 <translation id="5940385492829620908">Ovdje se nalaze vaš web, oznake i ostali sadržaji u Chromeu.</translation>
 <translation id="5941830788786076944">Neka Google Chrome bude zadani preglednik.</translation>
-<translation id="6014844626092547096">Sada ste prijavljeni na Chrome! Administrator je onemogućio sinkronizaciju.</translation>
-<translation id="6040143037577758943">Zatvori</translation>
 <translation id="6070348360322141662">Radi dodatne sigurnosti Google Chrome kriptirat će vaše podatke</translation>
 <translation id="6113794647360055231">Chrome je upravo postao bolji</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">OS Chrome omogućen je dodatnim <ph name="BEGIN_LINK_CROS_OSS" />softverom otvorenog koda<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Ažuriranje Google Chromea (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Upotrebljavate profil <ph name="PROFILE_EMAIL" /> za sinkronizaciju sadržaja u Chromeu. Da biste ažurirali svoje postavke sinkroniziranja ili upotrebljavali Chrome bez Google računa, posjetite <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Kopirano u Chrome</translation>
 <translation id="6676384891291319759">Pristup Internetu</translation>
 <translation id="6679975945624592337">Neka Google Chrome radi u pozadini</translation>
 <translation id="6750954913813541382">Chrome šalje Googleu tekst koji utipkate u preglednik radi ispravljanja pravopisnih pogrešaka</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome ažuriran je, ali vi ga niste upotrebljavali barem 30 dana.</translation>
 <translation id="7098166902387133879">Google Chrome upotrebljava vaš mikrofon.</translation>
 <translation id="7106741999175697885">Upravitelj zadacima - Google Chrome:</translation>
-<translation id="7164397146364144019">Možete pomoći da Chrome bude sigurniji i jednostavniji za upotrebu tako što ćete omogućiti da se Googleu automatski prijavljuju pojedinosti o mogućim sigurnosnim incidentima.</translation>
 <translation id="7242029209006116544">Prijavljujete se upravljanim računom i dajete administratoru kontrolu nad svojim profilom u sustavu Google Chrome. Vaši podaci u sustavu Chrome, primjerice, aplikacije, oznake, povijest, zaporke i ostale postavke, trajno će se povezati s korisnikom <ph name="USER_NAME" />. Moći ćete izbrisati te podatke putem Nadzorne ploče Google računa, ali ih nećete moći povezati s nekim drugim računom. Ako želite, možete izraditi novi profil kako biste zadržali postojeće podatke u sustavu Chrome zasebno. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Taj se jezik koristi za prikaz korisničkog sučelja Google Chromea</translation>
 <translation id="7296210096911315575">Važne informacije o upotrebi i sigurnosti</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Bili ste prijavljeni na Chrome kao <ph name="USER_EMAIL_ADDRESS" />. Prijavite se ponovo istim računom.</translation>
 <translation id="7408085963519505752">Uvjeti za OS Chrome</translation>
 <translation id="7419046106786626209">OS Chrome nije mogao sinkronizirati vaše podatke jer sinkronizacija nije dostupna za vašu domenu.</translation>
-<translation id="7459554271817304652">Postavite sinkronizaciju da biste spremili svoje prilagođene značajke preglednika na web i pristupali im s preglednika Google Chrome na bilo kojem računalu.</translation>
 <translation id="7486227612705979895">Chrome će pristupati vašem Disku radi prikazivanja prijedloga u adresnoj traci</translation>
 <translation id="7531671357096394523">Zatvori sve primjerke Chromea.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Ovo računalo više neće primati ažuriranja za Google Chrome jer sustavi Windows XP i Windows Vista više nisu podržani</translation>
 <translation id="8008534537613507642">Ponovo instaliraj Chrome</translation>
 <translation id="8013993649590906847">Ako slika nema koristan opis, Chrome će ga pokušati pružiti. Da bi se izradili opisi, slike se šalju Googleu.</translation>
-<translation id="8032142183999901390">Nakon uklanjanja računa s Chromea možda ćete morati ponovo učitati otvorene kartice kako bi nastupile promjene.</translation>
 <translation id="8129812357326543296">O programu Google Chrome</translation>
-<translation id="8179874765710681175">Instalirajte Chrome na telefon. Poslat ćemo vam SMS na telefon.</translation>
-<translation id="825412236959742607">Ova stranica upotrebljava previše memorije, pa je Chrome uklonio dio sadržaja.</translation>
 <translation id="8255190535488645436">Google Chrome upotrebljava vašu kameru i mikrofon.</translation>
 <translation id="8286862437124483331">Google Chrome pokušava prikazati zaporke. Upišite svoju zaporku za Windows da biste to dopustili.</translation>
 <translation id="8290100596633877290">Opa! Google Chrome je pao. Ponovo pokrenuti sada?</translation>
 <translation id="8342675569599923794">Datoteka je opasna i Chrome ju je blokirao.</translation>
 <translation id="8370517070665726704">Autorska prava <ph name="YEAR" />. Google LLC. Sva prava pridržana.</translation>
 <translation id="840084489713044809">Google Chrome želi izvesti vaše zaporke.</translation>
-<translation id="8406086379114794905">Pomozite nam da poboljšamo Chrome</translation>
 <translation id="8455999171311319804">Dodatno: automatskim slanjem podataka o upotrebi i dijagnostici Googleu pomognite nam da poboljšamo OS Chrome.</translation>
-<translation id="8478823064122749032">Instalirajte Chrome na telefon. Poslat ćemo vam SMS na telefonski broj za oporavak računa: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Upravo je primijenjeno posebno sigurnosno ažuriranje za Google Chrome. Ponovo pokrenite sustav i vratit ćemo vaše kartice.</translation>
 <translation id="8521348052903287641">Ulazno pravilo kako bi Google Chrome Dev dopustio mDNS promet.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Pokretač aplikacija za Chromeov kanal Canary</translation>
 <translation id="8556340503434111824">Dostupna je nova verzija preglednika Google Chrome, brža no ikad.</translation>
-<translation id="8568392309447938879">Morate se prijaviti na Chrome da biste upotrebljavali aplikacije. To omogućuje Chromeu sinkronizaciju vaših aplikacija, oznaka, povijesti, zaporki i ostalih postavki na različitim uređajima.</translation>
 <translation id="8606668294522778825">Google Chrome može upotrebljavati web-usluge za poboljšanje pregledavanja. Ako želite, možete onemogućiti te usluge. <ph name="BEGIN_LINK" />Saznajte više<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome ne reagira. Ponovo pokrenuti sada?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome će se ponovo pokrenuti za jednu minutu}one{Chrome će se ponovo pokrenuti za # min}few{Chrome će se ponovo pokrenuti za # min}other{Chrome će se ponovo pokrenuti za # min}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_hu.xtb b/chrome/app/resources/google_chrome_strings_hu.xtb
index 65b886f..6fa9251 100644
--- a/chrome/app/resources/google_chrome_strings_hu.xtb
+++ b/chrome/app/resources/google_chrome_strings_hu.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">A Chrome OS nem tudta szinkronizálni az adatokat. Kérjük, frissítse szinkronizálási összetett jelszavát.</translation>
 <translation id="1302523850133262269">Kérjük, várjon, amíg a Chrome telepíti a legutóbbi rendszerfrissítéseket.</translation>
 <translation id="137466361146087520">Google Chrome Béta</translation>
-<translation id="1393853151966637042">A Chrome használatával kapcsolatos súgó</translation>
 <translation id="1399397803214730675">A számítógépen már megtalálható a Google Chrome újabb verziója. Ha a szoftver nem működik, kérjük, távolítsa el a Google Chrome-ot, majd próbálkozzon újra.</translation>
 <translation id="1434626383986940139">Chrome Canary-alkalmazások</translation>
-<translation id="1469002951682717133">Chrome Alkalmazásindító</translation>
 <translation id="1553358976309200471">A Chrome böngésző frissítése</translation>
 <translation id="1587223624401073077">A Google Chrome használja a kamerát.</translation>
 <translation id="1587325591171447154">A(z) <ph name="FILE_NAME" /> veszélyes, ezért a Chrome letiltotta.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">A Chrome ezt a jelszót Google-fiókjába menti. Nem kell megjegyeznie.</translation>
 <translation id="174539241580958092">A Google Chrome egy bejelentkezési hiba miatt nem tudta szinkronizálni az adatokat.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">A Chrome OS használatával kapcsolatos súgó</translation>
-<translation id="1795405610103747296">Telepítse a Chrome-ot telefonjára. SMS-t küldünk majd a következő telefonszámra: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">A beállítás kikapcsolásával anélkül jelentkezhet be a Google-webhelyekre (pl. Gmail), hogy a Chrome-ba is bejelentkezne</translation>
 <translation id="1860536484129686729">A Chrome-nak engedélyre van szüksége ahhoz, hogy hozzáférjen a kamerához ennél a webhelynél</translation>
 <translation id="1873233029667955273">Nem a Google Chrome az alapértelmezett böngésző</translation>
@@ -50,16 +46,10 @@
 <translation id="2123055963409958220">Segítsen a Chrome fejlesztésében a <ph name="BEGIN_LINK" />jelenlegi beállítások<ph name="END_LINK" /> elküldésével</translation>
 <translation id="2128103434102193461">A Chrome OS rendszerről bővebben <ph name="LINK_BEGIN" />A Chrome OS névjegye<ph name="LINK_END" /> oldalon tájékozódhat</translation>
 <translation id="2151406531797534936">Indítsa újra most a Chrome-ot</translation>
-<translation id="216054706567564023">Telepítse a Chrome-ot telefonjára. SMS-t küldünk majd a fiók-helyreállítási telefonszámára.</translation>
 <translation id="2246246234298806438">A Google Chrome nem tudja megjeleníteni a nyomtatási előnézetet, ha nincs beépített PDF-megjelenítő.</translation>
-<translation id="2252923619938421629">Segítsen a Google Chrome fejlesztésében a jelenlegi beállítások elküldésével</translation>
-<translation id="2286950485307333924">Most már bejelentkezett a Chrome-ba</translation>
 <translation id="2290014774651636340">Hiányoznak Google API-kulcsok. A Google Chrome egyes funkciói kikapcsolnak.</translation>
 <translation id="2290095356545025170">Biztos benne, hogy eltávolítja a Google Chrome-ot?</translation>
 <translation id="2309047409763057870">Ez a Google Chrome második telepítése, amelyet nem állíthat be az alapértelmezett böngészővé.</translation>
-<translation id="2346876346033403680">Valaki korábban <ph name="ACCOUNT_EMAIL_LAST" /> néven bejelentkezett a Chrome-ba erről a számítógépről. Ha ez nem az Ön fiókja, hozzon létre egy új Chrome-felhasználót, hogy elkülönítse adatait.
-
-Ha mindenképp bejelentkezik, akkor egyesíti a(z) <ph name="ACCOUNT_EMAIL_NEW" /> fiókkal az olyan Chrome-adatokat, mint a könyvjelzők, az előzmények és más beállítások.</translation>
 <translation id="2348335408836342058">A Chrome-nak engedélyre van szüksége ahhoz, hogy hozzáférjen a kamerához és a mikrofonhoz ennél a webhelynél</translation>
 <translation id="2429317896000329049">A Google Chrome nem tudta szinkronizálni az adatait, mert a szinkronizálás nem érhető el az Ön domainjénél.</translation>
 <translation id="2467438592969358367">A Google Chrome exportálni szeretné a jelszavakat. Ennek engedélyezéséhez írja be Windows-jelszavát.</translation>
@@ -81,7 +71,6 @@
 <translation id="2871893339301912279">Bejelentkezett a Chrome-ba.</translation>
 <translation id="2888126860611144412">A Chrome névjegye</translation>
 <translation id="3037838751736561277">A Google Chrome háttérmódban van.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> összekapcsolásának megszüntetésével törli az eszközön tárolt előzményeket, könyvjelzőket, beállításokat és egyéb Chrome-adatokat. A Google-fiókban tárolt adatokat a rendszer nem törli, és azokat Ön a <ph name="GOOGLE_DASHBOARD_LINK" />Google Irányítópulton<ph name="END_GOOGLE_DASHBOARD_LINK" /> kezelheti.</translation>
 <translation id="3065168410429928842">Chrome-lap</translation>
 <translation id="3080151273017101988">A háttéralkalmazások továbbfuttatása, ha a Google Chrome-ot bezárják</translation>
 <translation id="3089968997497233615">Elérhető a Google Chrome új, biztonságosabb verziója.</translation>
@@ -102,7 +91,6 @@
 <translation id="3582972582564653026">Szinkronizálhatja és személyre szabhatja a Chrome-ot minden eszközén</translation>
 <translation id="3622797965165704966">Google-fiókjával most még egyszerűbben használhatja a Chrome-ot közösen használt számítógépeken.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />Általános Szerződési Feltételek<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Ez az oldal túl sok memóriát használ, ezért a Chrome szünetelteti.</translation>
 <translation id="3718181793972440140">Ezzel egyetlen elemet töröl az eszközről. Az adatok későbbi lekéréséhez jelentkezzen be a Chrome-ba a következő e-mail-címmel: <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">A(z) <ph name="EXTENSION_NAME" /> bővítmény módosította, hogy melyik oldal jelenjen meg a Chrome indításakor.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -118,7 +106,6 @@
 <translation id="4191857738314598978">{0,plural, =1{A Chrome-ot 1 napon belül újra kell indítani}other{A Chrome-ot # napon belül újra kell indítani}}</translation>
 <translation id="424864128008805179">Kijelentkezés a Chrome-ból</translation>
 <translation id="4251615635259297716">Társítja Chrome-adatait ezzel a fiókkal?</translation>
-<translation id="4251625577313994583">Chrome beszerzése iPhone eszközre</translation>
 <translation id="4293420128516039005">Jelentkezzen be, hogy szinkronizálhassa és személyre szabhassa a Chrome-ot minden eszközén</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome operációs rendszer</translation>
@@ -140,7 +127,6 @@
 <translation id="479167709087336770">A szolgáltatás ugyanazt a helyesírás-ellenőrzést használja, mint a Google Keresés. A begépelt szöveget a böngésző elküldi a Google-nak. A beállítások között ezt bármikor módosíthatja.</translation>
 <translation id="4891791193823137474">A Google Chrome futhat a háttérben</translation>
 <translation id="4895437082222824641">Link megnyi&amp;tása új Chrome-lapon</translation>
-<translation id="4921569541910214635">Közösen használ valakivel egy számítógépet? Mostantól úgy állíthatja be a Chrome-ot, ahogy Ön szeretné.</translation>
 <translation id="4953650215774548573">A Google Chrome beállítása alapértelmezett böngészőként</translation>
 <translation id="495931528404527476">A Chrome-ban</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -169,8 +155,6 @@
 <translation id="5895138241574237353">Újraindítás</translation>
 <translation id="5940385492829620908">Az Ön könyvjelzői, valamint az internetezéssel és a Chrome-mal kapcsolatos egyéb dolgai vannak itt.</translation>
 <translation id="5941830788786076944">A Google Chrome beállítása alapértelmezett böngészőként</translation>
-<translation id="6014844626092547096">Bejelentkezett a Chrome-ba! A szinkronizálást a rendszergazdája letiltotta.</translation>
-<translation id="6040143037577758943">Bezárás</translation>
 <translation id="6070348360322141662">A nagyobb biztonság érdekében a Google Chrome titkosítja az Ön adatait</translation>
 <translation id="6113794647360055231">A Chrome még jobb lett</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -183,8 +167,6 @@
 <translation id="6368958679917195344">A Chrome OS-hez egyéb <ph name="BEGIN_LINK_CROS_OSS" />nyílt forráskódú szoftver<ph name="END_LINK_CROS_OSS" /> is hozzájárult.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">A Google Chrome frissítése (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Chrome-os dolgainak szinkronizálásához a(z) <ph name="PROFILE_EMAIL" /> fiókot használja. Szinkronizálási beállításainak frissítéséhez, illetve a Chrome Google-fiók nélküli használatához keresse fel a <ph name="SETTINGS_LINK" /> linket.</translation>
-<translation id="6600954340915313787">A Chrome-ba másolva</translation>
 <translation id="6676384891291319759">Internetelérés</translation>
 <translation id="6679975945624592337">A Google Chrome futhat a háttérben</translation>
 <translation id="6750954913813541382">A nyelvtani hibák javítása érdekében a Chrome elküldi a böngészőben begépelt összes szöveget a Google-nak</translation>
@@ -198,7 +180,6 @@
 <translation id="6989339256997917931">A Google Chrome frissítése megtörtént, de nem használta a böngészőt legalább 30 napja.</translation>
 <translation id="7098166902387133879">A Google Chrome használja a mikrofont.</translation>
 <translation id="7106741999175697885">Feladatkezelő - Google Chrome</translation>
-<translation id="7164397146364144019">Az esetleges biztonsági események adatainak automatikus jelentésével segítséget nyújthat a Google-nak a Chrome használatának biztonságosabbá és egyszerűbbé tételéhez.</translation>
 <translation id="7242029209006116544">Kezelt fiókkal jelentkezik be, és annak adminisztrátora számára hozzáférést biztosít Google Chrome-profiljához. Chrome-adatait – például alkalmazásait, könyvjelzőit, előzményeit, jelszavait és más beállításait – a rendszer véglegesen társítja a(z) <ph name="USER_NAME" /> fiókhoz. Ezen adatokat a Google-fiók Irányítópultján törölheti, de más fiókhoz nem társíthatja őket. Létrehozhat egy új profilt is meglévő Chrome-adatainak külön tárolásához. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">A Google Chrome kezelőfelülete ezen a nyelven jelenik meg.</translation>
 <translation id="7296210096911315575">Fontos használati és biztonsági információk</translation>
@@ -207,7 +188,6 @@
 <translation id="7398801000654795464"><ph name="USER_EMAIL_ADDRESS" /> néven volt bejelentkezve a Chrome-ba. Kérjük, ugyanazzal a fiókkal jelentkezzen be újra.</translation>
 <translation id="7408085963519505752">Chrome OS – Szerződési Feltételek</translation>
 <translation id="7419046106786626209">A Chrome OS nem tudta szinkronizálni az adatait, mert a szinkronizálás nem érhető el az Ön domainjénél.</translation>
-<translation id="7459554271817304652">A szinkronizálás beállításával személyre szabott beállításait az interneten tárolhatja, így azok bármelyik számítógépen elérhetők a Google Chrome böngészőből.</translation>
 <translation id="7486227612705979895">A Chrome hozzáfér Drive-jához, hogy javaslatokat nyújthasson a címsávon.</translation>
 <translation id="7531671357096394523">A Chrome összes példányát be kell zárnia.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -231,25 +211,18 @@
 <translation id="7962410387636238736">Ez a számítógép a továbbiakban már nem kapja meg a Google Chrome frissítéseit, mert már nem támogatjuk a Windows XP és Windows Vista rendszereket.</translation>
 <translation id="8008534537613507642">A Chrome újratelepítése</translation>
 <translation id="8013993649590906847">Ha valamelyik kép nem rendelkezik hasznos leírással, akkor a Chrome igyekszik leírást adni róla. A Google automatikusan megkapja a leírások létrehozásához szükséges képeket.</translation>
-<translation id="8032142183999901390">Fiókjának eltávolítása után a Chrome-ból előfordulhat, hogy újra kell töltenie a megnyitott lapokat ahhoz, hogy a változások életbe lépjenek.</translation>
 <translation id="8129812357326543296">A &amp;Google Chrome névjegye</translation>
-<translation id="8179874765710681175">Telepítse a Chrome-ot telefonjára. SMS-t küldünk majd a telefonra.</translation>
-<translation id="825412236959742607">Ez az oldal túl sok memóriát használ, ezért a Chrome eltávolított egyes tartalmakat.</translation>
 <translation id="8255190535488645436">A Google Chrome használja a kamerát és a mikrofont.</translation>
 <translation id="8286862437124483331">A Google Chrome megkísérli megjeleníteni a jelszavakat. Ennek engedélyezéséhez írja be Windows-jelszavát.</translation>
 <translation id="8290100596633877290">Hmm. A Google Chrome összeomlott. Újraindítja most?</translation>
 <translation id="8342675569599923794">Ez a fájl veszélyes, ezért a Chrome letiltotta.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Minden jog fenntartva.</translation>
 <translation id="840084489713044809">A Google Chrome exportálni szeretné a jelszavakat.</translation>
-<translation id="8406086379114794905">Segítsen a Chrome tökéletesítésében</translation>
 <translation id="8455999171311319804">Nem kötelező: Segítse a Chrome OS fejlesztését azzal, hogy automatikusan elküldi a diagnosztikai és használati adatokat a Google-nak.</translation>
-<translation id="8478823064122749032">Telepítse a Chrome-ot telefonjára. SMS-t küldünk majd a fiók-helyreállítási telefonszámára: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">A rendszer egy speciális biztonsági frissítést alkalmazott a Google Chrome-on. Indítsa újra a számítógépet, a lapokat majd mi visszaállítjuk.</translation>
 <translation id="8521348052903287641">Bejövő szabály a Google Chrome Devhez az mDNS forgalom engedélyezése céljából.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome Alkalmazásindító Canary</translation>
 <translation id="8556340503434111824">Elérhető a Google Chrome új verziója, amely gyorsabb, mint ezelőtt bármikor.</translation>
-<translation id="8568392309447938879">Be kell jelentkeznie a Chrome-ba az alkalmazások használatához. Ez lehetővé teszi a Chrome számára, hogy szinkronizálja alkalmazásait, könyvjelzőit, előzményeit, jelszavait és egyéb beállításait a különböző eszközök között.</translation>
 <translation id="8606668294522778825">Előfordulhat, hogy a Google Chrome internetes szolgáltatásokat használ böngészési élménye javítására. Lehetősége van e szolgáltatások letiltására. <ph name="BEGIN_LINK" />További információ<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">A Google Chrome nem válaszol. Újraindítja most?</translation>
 <translation id="8625237574518804553">{0,plural, =1{A Chrome 1 percen belül újraindul}other{A Chrome # percen belül újraindul}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_id.xtb b/chrome/app/resources/google_chrome_strings_id.xtb
index b51c63a85..655b4a14 100644
--- a/chrome/app/resources/google_chrome_strings_id.xtb
+++ b/chrome/app/resources/google_chrome_strings_id.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS tidak dapat menyinkronkan data Anda. Perbarui frasa sandi Sinkronisasi Anda.</translation>
 <translation id="1302523850133262269">Harap tunggu selagi Chrome memasang pembaruan sistem terkini.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Dapatkan bantuan tentang penggunaan Chrome</translation>
 <translation id="1399397803214730675">Komputer ini telah memiliki versi Google Chrome yang lebih anyar. Jika software tidak bekerja, uninstal Google Chrome dan coba lagi.</translation>
 <translation id="1434626383986940139">Aplikasi Chrome Canary</translation>
-<translation id="1469002951682717133">Peluncur Aplikasi Chrome</translation>
 <translation id="1553358976309200471">Perbarui browser Chrome</translation>
 <translation id="1587223624401073077">Google Chrome menggunakan kamera Anda.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> berbahaya, sehingga Chrome memblokirnya.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome akan menyimpan sandi ini di Akun Google. Anda tidak perlu mengingatnya.</translation>
 <translation id="174539241580958092">Google Chrome tidak dapat menyinkronkan data Anda karena kesalahan saat masuk.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Dapatkan bantuan tentang penggunaan Chrome OS</translation>
-<translation id="1795405610103747296">Instal Chrome di ponsel. Kami akan mengirimkan SMS ke ponsel Anda: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Dengan menonaktifkan ini, Anda dapat login ke situs Google seperti Gmail tanpa harus login ke Chrome</translation>
 <translation id="1860536484129686729">Chrome memerlukan izin akses ke kamera untuk situs ini</translation>
 <translation id="1873233029667955273">Google Chrome bukan browser default</translation>
@@ -51,16 +47,10 @@
 <translation id="2123055963409958220">Bantu Chrome jadi lebih baik dengan melaporkan <ph name="BEGIN_LINK" />setelan saat ini<ph name="END_LINK" /></translation>
 <translation id="2128103434102193461">Untuk detail Chrome OS, lihat <ph name="LINK_BEGIN" />Tentang Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Mulai ulang Chrome sekarang</translation>
-<translation id="216054706567564023">Instal Chrome di ponsel. Kami akan mengirimkan SMS ke nomor telepon pemulihan akun Anda.</translation>
 <translation id="2246246234298806438">Google Chrome tidak dapat menampilkan pratinjau cetak jika penampil PDF default hilang.</translation>
-<translation id="2252923619938421629">Bantu menjadikan Google Chrome lebih baik dengan melaporkan setelan saat ini</translation>
-<translation id="2286950485307333924">Anda sudah masuk ke Chrome</translation>
 <translation id="2290014774651636340">Kunci API Google tidak ada. Beberapa fungsi Google Chrome tidak akan berfungsi.</translation>
 <translation id="2290095356545025170">Apakah Anda yakin ingin mencopot penginstalan Google Chrome?</translation>
 <translation id="2309047409763057870">Ini adalah pemasangan Google Chrome sekunder, dan tidak dapat digunakan sebagai browser default.</translation>
-<translation id="2346876346033403680">Sebelumnya ada seseorang yang masuk ke Chrome di komputer ini sebagai <ph name="ACCOUNT_EMAIL_LAST" />. Jika itu bukan akun Anda, buatlah pengguna Chrome baru untuk menjaga informasi Anda tetap terpisah.
-
-Tetap masuk akan menggabungkan informasi Chrome seperti bookmark, histori, dan setelan lain ke <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome memerlukan izin akses ke kamera dan mikrofon untuk situs ini</translation>
 <translation id="2429317896000329049">Google Chrome tidak dapat menyinkronkan data Anda karena Sinkronisasi tidak tersedia untuk domain Anda.</translation>
 <translation id="2467438592969358367">Google Chrome ingin mengekspor sandi. Ketik sandi Windows Anda untuk mengizinkannya.</translation>
@@ -82,7 +72,6 @@
 <translation id="2871893339301912279">Anda sudah masuk ke Chrome!</translation>
 <translation id="2888126860611144412">Tentang Chrome</translation>
 <translation id="3037838751736561277">Google Chrome berjalan di mode latar belakang.</translation>
-<translation id="3047079729301751317">Memutuskan sambungan <ph name="USERNAME" /> akan menghapus histori, bookmark, setelan, dan data Chrome Anda lainnya yang tersimpan di perangkat. Data tersimpan di Akun Google tidak akan dihapus dan dapat dikelola di <ph name="GOOGLE_DASHBOARD_LINK" />Google Dasbor<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Tab Chrome</translation>
 <translation id="3080151273017101988">Terus jalankan apl latar belakang saat Google Chrome ditutup</translation>
 <translation id="3089968997497233615">Tersedia versi Google Chrome yang baru dan lebih aman.</translation>
@@ -103,7 +92,6 @@
 <translation id="3582972582564653026">Menyinkronkan dan mempersonalisasi Chrome di perangkat Anda</translation>
 <translation id="3622797965165704966">Kini, menggunakan Chrome dengan Akun Google Anda dan di komputer bersama jadi lebih mudah.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Persyaratan Layanan<ph name="END_TERMS_OF_SERVICE_LINK" /> Google Chrome OS</translation>
-<translation id="3716182511346448902">Halaman ini menggunakan terlalu banyak memori, sehingga Chrome menjedanya.</translation>
 <translation id="3718181793972440140">Tindakan ini akan menghapus 1 item dari perangkat ini. Untuk mengambil data nanti, login ke Chrome sebagai <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Ekstensi "<ph name="EXTENSION_NAME" />" telah mengubah apa yang ditampilkan oleh halaman saat Anda memulai Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -119,7 +107,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Luncurkan ulang Chrome dalam satu hari}other{Luncurkan ulang Chrome dalam # hari}}</translation>
 <translation id="424864128008805179">Logout dari Chrome?</translation>
 <translation id="4251615635259297716">Tautkan data Chrome Anda ke akun ini?</translation>
-<translation id="4251625577313994583">dapatkan Chrome di iPhone</translation>
 <translation id="4293420128516039005">Login untuk menyinkronkan dan mempersonalisasi Chrome di perangkat Anda</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -141,7 +128,6 @@
 <translation id="479167709087336770">Tindakan ini akan menggunakan pemeriksa ejaan yang sama dengan yang digunakan di penelusuran Google. Teks yang Anda ketikkan di browser dikirim ke Google. Anda dapat mengubah perilaku ini di setelan.</translation>
 <translation id="4891791193823137474">Jalankan Google Chrome di latar belakang</translation>
 <translation id="4895437082222824641">Buka link di &amp;tab Chrome baru</translation>
-<translation id="4921569541910214635">Membagikan komputer? Kini Anda dapat menyiapkan Chrome seperti yang Anda inginkan.</translation>
 <translation id="4953650215774548573">Setel Google Chrome sebagai browser default Anda</translation>
 <translation id="495931528404527476">Di Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -171,8 +157,6 @@
 <translation id="5895138241574237353">Mulai Ulang</translation>
 <translation id="5940385492829620908">Web, bookmark, dan file Chrome Anda lainnya tersedia di sini.</translation>
 <translation id="5941830788786076944">Jadikan Google Chrome sebagai browser default</translation>
-<translation id="6014844626092547096">Sekarang Anda telah masuk ke Chrome! Sinkronisasi dinonaktifkan oleh administrator Anda.</translation>
-<translation id="6040143037577758943">Tutup</translation>
 <translation id="6070348360322141662">Untuk keamanan tambahan, Google Chrome akan mengenkripsi data Anda</translation>
 <translation id="6113794647360055231">Chrome menjadi lebih baik</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -185,8 +169,6 @@
 <translation id="6368958679917195344">Chrome OS terwujud karena <ph name="BEGIN_LINK_CROS_OSS" />software sumber terbuka<ph name="END_LINK_CROS_OSS" /> tambahan.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Memperbarui Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Anda menggunakan <ph name="PROFILE_EMAIL" /> untuk menyinkronkan barang-barang Chrome. Untuk memperbarui preferensi sinkronisasi atau untuk menggunakan Chrome tanpa akun Google, kunjungi <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Disalin ke Chrome</translation>
 <translation id="6676384891291319759">Akses Internet</translation>
 <translation id="6679975945624592337">Jalankan Google Chrome di Background</translation>
 <translation id="6750954913813541382">Untuk memperbaiki kesalahan ejaan, Chrome mengirim teks yang Anda ketikkan di browser ke Google</translation>
@@ -200,7 +182,6 @@
 <translation id="6989339256997917931">Google Chrome telah diperbarui, tetapi Anda belum menggunakannya selama setidaknya 30 hari.</translation>
 <translation id="7098166902387133879">Google Chrome menggunakan mikrofon Anda.</translation>
 <translation id="7106741999175697885">Pengelola Tugas - Google Chrome</translation>
-<translation id="7164397146364144019">Anda dapat membantu membuat Chrome lebih aman dan lebih mudah digunakan dengan melaporkan detail secara otomatis tentang kemungkinan insiden keamanan ke Google.</translation>
 <translation id="7242029209006116544">Anda masuk dengan akun yang dikelola dan memberikan administratornya kontrol atas profil Google Chrome Anda. Data Chrome Anda, seperti aplikasi, bookmark, histori, sandi, dan setelan lain selamanya akan dikaitkan ke <ph name="USER_NAME" />. Anda dapat menghapus data ini melalui Dasbor Akun Google, namun Anda tidak akan dapat mengaitkan data ini dengan akun yang lain. Anda dapat membuat profil baru secara opsional untuk menjaga agar data Chrome Anda tetap terpisah. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Bahasa ini digunakan untuk menampilkan UI Google Chrome</translation>
 <translation id="7296210096911315575">Penggunaan penting dan informasi keamanan</translation>
@@ -209,7 +190,6 @@
 <translation id="7398801000654795464">Anda telah masuk ke Chrome sebagai <ph name="USER_EMAIL_ADDRESS" />. Gunakan akun yang sama untuk masuk kembali.</translation>
 <translation id="7408085963519505752">Persyaratan Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS tidak dapat menyinkronkan data Anda karena Sinkronisasi tidak tersedia untuk domain Anda.</translation>
-<translation id="7459554271817304652">Siapkan Sinkronisasi untuk menyimpan fitur browser hasil personalisasi Anda ke web dan mengaksesnya dari Google Chrome di komputer mana pun.</translation>
 <translation id="7486227612705979895">Chrome akan mengakses Drive Anda untuk membuat saran di kolom URL</translation>
 <translation id="7531671357096394523">Tutup semua salinan Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -233,25 +213,18 @@
 <translation id="7962410387636238736">Komputer ini tidak akan menerima update Google Chrome lagi karena Windows XP dan Windows Vista sudah tidak didukung</translation>
 <translation id="8008534537613507642">Instal Ulang Chrome</translation>
 <translation id="8013993649590906847">Jika gambar tidak memiliki deskripsi yang berguna, Chrome akan mencoba memberikan deskripsi untuk Anda. Untuk membuat deskripsi, gambar akan dikirim ke Google.</translation>
-<translation id="8032142183999901390">Setelah membuang akun dari Chrome, Anda mungkin perlu memuat ulang tab terbuka untuk menerapkannya.</translation>
 <translation id="8129812357326543296">Tentang &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Instal Chrome di ponsel. Kami akan mengirimkan SMS ke ponsel Anda.</translation>
-<translation id="825412236959742607">Halaman ini menggunakan terlalu banyak memori, sehingga Chrome menghapus sebagian konten.</translation>
 <translation id="8255190535488645436">Google Chrome menggunakan kamera dan mikrofon Anda.</translation>
 <translation id="8286862437124483331">Google Chrome mencoba menampilkan sandi. Ketik sandi Windows Anda untuk mengizinkannya.</translation>
 <translation id="8290100596633877290">Aduh! Google Chrome ngadat. Luncurkan ulang sekarang?</translation>
 <translation id="8342675569599923794">File ini berbahaya, jadi Chrome telah memblokirnya.</translation>
 <translation id="8370517070665726704">Hak cipta <ph name="YEAR" /> Google LLC. Semua hak dilindungi undang-undang.</translation>
 <translation id="840084489713044809">Google Chrome ingin mengekspor sandi.</translation>
-<translation id="8406086379114794905">Bantu kami membuat Chrome jadi lebih baik</translation>
 <translation id="8455999171311319804">Opsional: Bantu Chrome OS menjadi lebih baik dengan mengirimkan data diagnostik dan penggunaan secara otomatis ke Google.</translation>
-<translation id="8478823064122749032">Instal Chrome di ponsel. Kami akan mengirimkan SMS ke nomor telepon pemulihan akun Anda: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Update keamanan khusus untuk Google Chrome baru saja diterapkan. Mulai ulang Google Chrome sekarang dan kami akan memulihkan tab Anda.</translation>
 <translation id="8521348052903287641">Inbound rule untuk Google Chrome Dev guna mengizinkan traffic mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Peluncur Aplikasi Chrome Canary</translation>
 <translation id="8556340503434111824">Tersedia versi Google Chrome yang baru, dan versi ini lebih cepat dari sebelumnya.</translation>
-<translation id="8568392309447938879">Anda perlu masuk ke Chrome untuk menggunakan aplikasi. Ini memungkinkan Chrome menyinkronkan aplikasi, bookmark, histori, sandi, dan setelan Anda yang lain di seluruh perangkat.</translation>
 <translation id="8606668294522778825">Google Chrome dapat menggunakan layanan web untuk meningkatkan pengalaman penjelajahan Anda. Anda dapat memilih untuk menonaktifkan layanan ini. <ph name="BEGIN_LINK" />Pelajari lebih lanjut<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome tidak merespons. Luncurkan ulang sekarang?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome akan diluncurkan ulang dalam 1 menit}other{Chrome akan diluncurkan ulang dalam # menit}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_it.xtb b/chrome/app/resources/google_chrome_strings_it.xtb
index 30f4ab81..e1dff95 100644
--- a/chrome/app/resources/google_chrome_strings_it.xtb
+++ b/chrome/app/resources/google_chrome_strings_it.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Impossibile sincronizzare i tuoi dati in Chrome OS. Aggiorna la passphrase di sincronizzazione.</translation>
 <translation id="1302523850133262269">Attendi mentre Chrome installa gli aggiornamenti di sistema più recenti.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Ricevi assistenza per l'utilizzo di Chrome</translation>
 <translation id="1399397803214730675">Su questo computer è già installata una versione più recente di Google Chrome. Se il software non funziona, disinstalla Google Chrome e riprova.</translation>
 <translation id="1434626383986940139">Applicazioni Chrome Canary</translation>
-<translation id="1469002951682717133">Avvio applicazioni di Chrome</translation>
 <translation id="1553358976309200471">Aggiorna Chrome</translation>
 <translation id="1587223624401073077">Google Chrome sta utilizzando la videocamera.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> è pericoloso, pertanto è stato bloccato da Chrome.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome salverà la password nel tuo Account Google affinché tu non debba memorizzarla.</translation>
 <translation id="174539241580958092">Impossibile sincronizzare i dati in Google Chrome a causa di un errore durante l'accesso.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Ricevi assistenza per l'utilizzo di Chrome OS</translation>
-<translation id="1795405610103747296">Installa Chrome sul telefono. Invieremo un SMS al tuo numero di telefono: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Se disattivi questa funzione, puoi accedere ai siti Google quali Gmail senza accedere a Chrome</translation>
 <translation id="1860536484129686729">Per questo sito Chrome ha bisogno dell'autorizzazione ad accedere alla fotocamera</translation>
 <translation id="1873233029667955273">Google Chrome non è il browser predefinito</translation>
@@ -50,16 +46,10 @@
 <translation id="2123055963409958220">Contribuisci a migliorare Chrome indicando le <ph name="BEGIN_LINK" />impostazioni attuali<ph name="END_LINK" /></translation>
 <translation id="2128103434102193461">Per informazioni dettagliate su Chrome OS, visita la pagina <ph name="LINK_BEGIN" />Informazioni su Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Riavvia subito Chrome</translation>
-<translation id="216054706567564023">Installa Chrome sul telefono. Invieremo un SMS al tuo numero di telefono per il recupero dell'account.</translation>
 <translation id="2246246234298806438">Impossibile visualizzare l'anteprima di stampa in Google Chrome senza il visualizzatore PDF integrato.</translation>
-<translation id="2252923619938421629">Contribuisci a migliorare Google Chrome indicando le impostazioni attuali</translation>
-<translation id="2286950485307333924">Hai eseguito l'accesso a Chrome</translation>
 <translation id="2290014774651636340">Mancano le chiavi dell'API di Google. Alcune funzionalità di Google Chrome verranno disattivate.</translation>
 <translation id="2290095356545025170">Sei sicuro di voler disinstallare Google Chrome?</translation>
 <translation id="2309047409763057870">Questa è un'installazione secondaria, di conseguenza Google Chrome non può essere impostato come browser predefinito.</translation>
-<translation id="2346876346033403680">Qualcuno ha già eseguito l'accesso a Chrome su questo computer come <ph name="ACCOUNT_EMAIL_LAST" />. Se non si tratta del tuo account, crea un nuovo utente Chrome per tenere separate le tue informazioni.
-
-Se esegui comunque l'accesso, le informazioni di Chrome come Preferiti, cronologia e altre impostazioni verranno unite a quelle di <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Per questo sito Chrome ha bisogno dell'autorizzazione ad accedere alla fotocamera e al microfono</translation>
 <translation id="2429317896000329049">Impossibile sincronizzare i dati in Google Chrome perché la sincronizzazione non è disponibile per il tuo dominio.</translation>
 <translation id="2467438592969358367">Google Chrome vuole esportare le password. Per consentire l'esportazione, digita la tua password Windows.</translation>
@@ -81,7 +71,6 @@
 <translation id="2871893339301912279">Hai eseguito l'accesso a Chrome.</translation>
 <translation id="2888126860611144412">Informazioni su Chrome</translation>
 <translation id="3037838751736561277">Google Chrome è in modalità background.</translation>
-<translation id="3047079729301751317">Se ti disconnetti da <ph name="USERNAME" /> verranno cancellati la cronologia, i Preferiti, le impostazioni e gli altri dati di Chrome memorizzati sul dispositivo. I dati memorizzati nel tuo Account Google non verranno cancellati e potrai gestirli su <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Scheda Chrome</translation>
 <translation id="3080151273017101988">Continua a eseguire applicazioni in background dopo la chiusura di Google Chrome</translation>
 <translation id="3089968997497233615">È disponibile una nuova versione più sicura di Google Chrome.</translation>
@@ -102,7 +91,6 @@
 <translation id="3582972582564653026">Sincronizza e personalizza Chrome sui tuoi dispositivi</translation>
 <translation id="3622797965165704966">Ora è più facile utilizzare Chrome con il tuo Account Google e sui computer condivisi.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Termini di servizio<ph name="END_TERMS_OF_SERVICE_LINK" /> di Google Chrome OS</translation>
-<translation id="3716182511346448902">Questa pagina è stata messa in pausa da Chromium perché utilizza troppa memoria.</translation>
 <translation id="3718181793972440140">Verrà eliminato 1 elemento da questo dispositivo. Per recuperare i dati in un secondo momento, accedi a Chrome come <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">L'estensione "<ph name="EXTENSION_NAME" />" ha cambiato la pagina mostrata all'avvio di Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -118,7 +106,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Riavvia Chrome entro un giorno}other{Riavvia Chrome entro # giorni}}</translation>
 <translation id="424864128008805179">Uscire da Chrome?</translation>
 <translation id="4251615635259297716">Collegare i tuoi dati Chrome a questo account?</translation>
-<translation id="4251625577313994583">Scarica Chrome sull'iPhone</translation>
 <translation id="4293420128516039005">Accedi per sincronizzare e personalizzare Chrome sui tuoi dispositivi</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -140,7 +127,6 @@
 <translation id="479167709087336770">Viene usato lo stesso controllo ortografico utilizzato nella Ricerca Google. Il testo che digiti nel browser viene inviato a Google. Puoi modificare questo comportamento in qualsiasi momento nelle impostazioni.</translation>
 <translation id="4891791193823137474">Lascia Google Chrome in esecuzione in background</translation>
 <translation id="4895437082222824641">Apri link in una nuova &amp;scheda di Chrome</translation>
-<translation id="4921569541910214635">Condividi un computer con altre persone? Ora puoi configurare Chrome come preferisci.</translation>
 <translation id="4953650215774548573">Imposta Google Chrome come browser predefinito</translation>
 <translation id="495931528404527476">In Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -169,8 +155,6 @@
 <translation id="5895138241574237353">Riavvia</translation>
 <translation id="5940385492829620908">Il tuoi siti web, i tuoi segnalibri e gli altri contenuti Chrome sempre disponibili e aggiornati qui.</translation>
 <translation id="5941830788786076944">Imposta Google Chrome come browser predefinito</translation>
-<translation id="6014844626092547096">Hai eseguito l'accesso a Chrome. La sincronizzazione è stata disattivata dall'amministratore.</translation>
-<translation id="6040143037577758943">Chiudi</translation>
 <translation id="6070348360322141662">Per maggiore sicurezza, Google Chrome cripterà i tuoi dati</translation>
 <translation id="6113794647360055231">Da oggi Chrome è ancora meglio</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -183,8 +167,6 @@
 <translation id="6368958679917195344">Chrome OS è reso possibile da <ph name="BEGIN_LINK_CROS_OSS" />software open source<ph name="END_LINK_CROS_OSS" /> aggiuntivi.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome per gli sviluppatori</translation>
 <translation id="6566149418543181476">Aggiornamento di Google Chrome in corso (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Stai utilizzando <ph name="PROFILE_EMAIL" /> per sincronizzare i tuoi contenuti di Chrome. Per aggiornare la tua preferenza di sincronizzazione o per utilizzare Chrome senza un Account Google, accedi alla pagina <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Copiata in Chrome</translation>
 <translation id="6676384891291319759">Accesso a Internet</translation>
 <translation id="6679975945624592337">Lascia Google Chrome in esecuzione in background</translation>
 <translation id="6750954913813541382">Per correggere gli errori ortografici, Chrome invia a Google il testo che digiti nel browser</translation>
@@ -198,7 +180,6 @@
 <translation id="6989339256997917931">Google Chrome è stato aggiornato ma non lo utilizzi da almeno 30 giorni.</translation>
 <translation id="7098166902387133879">Google Chrome sta utilizzando il microfono.</translation>
 <translation id="7106741999175697885">Task Manager - Google Chrome</translation>
-<translation id="7164397146364144019">Puoi contribuire a rendere Chrome più sicuro e più facile da utilizzare segnalando automaticamente a Google i dettagli dei possibili problemi di sicurezza.</translation>
 <translation id="7242029209006116544">Stai per accedere con un account gestito e per dare al relativo amministratore il controllo del tuo profilo Google Chrome. I tuoi dati di Chrome, come app, Preferiti, cronologia, password e altre impostazioni, verranno collegati definitivamente a <ph name="USER_NAME" />. Potrai eliminare questi dati tramite la Dashboard di Google Account, ma non potrai associare questi dati a un altro account. Se preferisci puoi creare un nuovo profilo per mantenere separati i dati di Chrome esistenti. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Questa lingua viene utilizzata per mostrare l'UI di Google Chrome</translation>
 <translation id="7296210096911315575">Informazioni importanti sull'utilizzo e sulla sicurezza</translation>
@@ -207,7 +188,6 @@
 <translation id="7398801000654795464">Hai eseguito l'accesso a Chrome come <ph name="USER_EMAIL_ADDRESS" />. Utilizza lo stesso account per eseguire di nuovo l'accesso.</translation>
 <translation id="7408085963519505752">Termini di Chrome OS</translation>
 <translation id="7419046106786626209">Impossibile sincronizzare i dati in Chrome OS perché la sincronizzazione non è disponibile per il tuo dominio.</translation>
-<translation id="7459554271817304652">Configura la sincronizzazione per salvare le funzioni personalizzate del browser sul Web e accedervi da Google Chrome su qualsiasi computer.</translation>
 <translation id="7486227612705979895">Chrome accederà al tuo Drive per inserire suggerimenti nella barra degli indirizzi</translation>
 <translation id="7531671357096394523">Esci da tutte le copie di Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -231,25 +211,18 @@
 <translation id="7962410387636238736">Questo computer non riceverà più gli aggiornamenti di Google Chrome perché Windows XP e Windows Vista non sono più supportati.</translation>
 <translation id="8008534537613507642">Reinstalla Chrome</translation>
 <translation id="8013993649590906847">Se un'immagine è senza descrizione utile, Chrome proverà a fornirne una. Per la creazione delle descrizioni, le immagini vengono inviate a Google.</translation>
-<translation id="8032142183999901390">Dopo avere rimosso il tuo account da Chrome, potresti dover ricaricare le schede aperte perché le modifiche vengano applicate.</translation>
 <translation id="8129812357326543296">Informazioni su &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Installa Chrome sul telefono. Invieremo un SMS al tuo telefono.</translation>
-<translation id="825412236959742607">Questa pagina utilizza troppa memoria, pertanto Chrome ha rimosso alcuni contenuti.</translation>
 <translation id="8255190535488645436">Google Chrome sta utilizzando videocamera e microfono.</translation>
 <translation id="8286862437124483331">Google Chrome sta cercando di visualizzare le password. Per consentire la visualizzazione, digita la tua password Windows.</translation>
 <translation id="8290100596633877290">Spiacenti, si è verificato un arresto anomalo di Google Chrome. Riavviarlo ora?</translation>
 <translation id="8342675569599923794">Questo file è pericoloso, pertanto è stato bloccato da Chrome.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC Tutti i diritti riservati.</translation>
 <translation id="840084489713044809">Google Chrome vuole esportare le password.</translation>
-<translation id="8406086379114794905">Contribuisci a migliorare Chrome</translation>
 <translation id="8455999171311319804">Facoltativo. Aiutaci a migliorare Chrome OS inviando automaticamente a Google dati di diagnostica e utilizzo.</translation>
-<translation id="8478823064122749032">Installa Chrome sul telefono. Invieremo un SMS al tuo numero di telefono per il recupero dell'account: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">È stato appena applicato un aggiornamento di sicurezza speciale per Google Chrome. Riavvia ora e le schede verranno ripristinate.</translation>
 <translation id="8521348052903287641">Regola inbound per consentire il traffico mDNS in Google Chrome Dev.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Avvio applicazioni di Chrome Canary</translation>
 <translation id="8556340503434111824">È disponibile una nuova versione di Google Chrome con una velocità senza precedenti.</translation>
-<translation id="8568392309447938879">Per poter utilizzare le app, devi eseguire l'accesso su Chrome. Chrome potrà così sincronizzare app, Preferiti, cronologia, password e altre impostazioni tra dispositivi.</translation>
 <translation id="8606668294522778825">Google Chrome potrebbe utilizzare servizi web per migliorare la tua esperienza di navigazione. Se preferisci, puoi disattivare questi servizi. <ph name="BEGIN_LINK" />Ulteriori informazioni<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome non risponde. Riavviarlo ora?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome verrà riavviato tra 1 minuto}other{Chrome verrà riavviato tra # minuti}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_iw.xtb b/chrome/app/resources/google_chrome_strings_iw.xtb
index ac266af..d3b11ed 100644
--- a/chrome/app/resources/google_chrome_strings_iw.xtb
+++ b/chrome/app/resources/google_chrome_strings_iw.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">‏מערכת ההפעלה של Chrome לא הצליחה לסנכרן את הנתונים שלך. עדכן את משפט הסיסמה שלך לסנכרון.</translation>
 <translation id="1302523850133262269">‏המתן בזמן ש-Chrome מתקין את עדכוני המערכת האחרונים.</translation>
 <translation id="137466361146087520">‏גרסת הביטא של Google Chrome</translation>
-<translation id="1393853151966637042">‏קבלת עזרה לשימוש ב-Chrome</translation>
 <translation id="1399397803214730675">‏במחשב זה מותקנת כבר גירסה עדכנית יותר של Google Chrome. אם התוכנה אינה פועלת, הסר את ההתקנה של Google Chrome ונסה שוב.</translation>
 <translation id="1434626383986940139">‏אפליקציות Chrome – קאנארי</translation>
-<translation id="1469002951682717133">‏מרכז האפליקציות של Chrome</translation>
 <translation id="1553358976309200471">‏כדאי לעדכן את Chrome</translation>
 <translation id="1587223624401073077">‏Google Chrome משתמש במצלמה שלך.</translation>
 <translation id="1587325591171447154">‏<ph name="FILE_NAME" /> מסוכן, ולכן Chrome חסם אותו.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">‏הסיסמה הזאת תישמר על ידי Chrome בחשבון Google. אין צורך לזכור אותה.</translation>
 <translation id="174539241580958092">‏Google Chrome לא הצליח לסנכרן את הנתונים שלך בשל שגיאת כניסה.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">‏עזרה לשימוש ב-Chrome OS</translation>
-<translation id="1795405610103747296">‏יש להתקין את Chrome בטלפון שלך, ולאחר מכן נשלח הודעת SMS למספר: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">‏כיבוי הגדרה זו יאפשר לך להיכנס לאתרי Google, כמו Gmail, בלי להיכנס אל Chrome</translation>
 <translation id="1860536484129686729">‏Chrome זקוק להרשאת גישה למצלמה בשביל האתר הזה</translation>
 <translation id="1873233029667955273">‏Google Chrome‏ אינו דפדפן ברירת המחדל שלך</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">‏כדי לקבל פרטים לגבי Chrome OS, אפשר לעיין בדף <ph name="LINK_BEGIN" />
       מידע על Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">‏יש להפעיל מחדש את Chrome עכשיו</translation>
-<translation id="216054706567564023">‏יש להתקין את Chrome בטלפון שלך, ולאחר מכן נשלח הודעת SMS למספר שמוגדר לשחזור החשבון.</translation>
 <translation id="2246246234298806438">‏Google Chrome אינו יכול להצג תצוגה מקדימה של ההדפסה כאשר מציג ה-‏PDF המובנה חסר.</translation>
-<translation id="2252923619938421629">‏עזור לשפר את Google Chrome על ידי דיווח על ההגדרות הנוכחיות</translation>
-<translation id="2286950485307333924">‏אתה מחובר כעת ל-Chrome</translation>
 <translation id="2290014774651636340">‏המפתחות של Google API חסרים. פונקציונליות מסוימת של Google Chrome תהיה מושבתת.</translation>
 <translation id="2290095356545025170">‏האם אתה בטוח שאתה רוצה להסיר את Google Chrome?</translation>
 <translation id="2309047409763057870">‏זוהי התקנה משנית של Google Chrome, ולא ניתן להפוך אותו לדפדפן ברירת המחדל שלך.</translation>
-<translation id="2346876346033403680">‏מישהו נכנס בעבר ל-Chrome מהמחשב הזה כ-<ph name="ACCOUNT_EMAIL_LAST" />. אם זה לא החשבון שלך, צור משתמש חדש ל-Chrome כדי לשמור על ההפרדה של המידע שלך.
-
-אם תמשיך ותיכנס, המידע ב-Chrome, כמו סימניות, היסטוריה והגדרות אחרות, ימוזג עם <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">‏Chrome זקוק להרשאת גישה אל המצלמה והמיקרופון בשביל האתר הזה</translation>
 <translation id="2429317896000329049">‏Google Chrome לא הצליח לסנכרן את הנתונים שלך מפני שהסנכרון אינו זמין עבור הדומיין שלך.</translation>
 <translation id="2467438592969358367">‏Google Chrome רוצה לייצא את הסיסמאות שלך. יש להקליד את הסיסמה שלך ל-Windows כדי לאפשר זאת.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">‏נכנסת ל-Chrome!</translation>
 <translation id="2888126860611144412">‏מידע כללי על Chrome</translation>
 <translation id="3037838751736561277">‏Google Chrome נמצא במצב רקע.</translation>
-<translation id="3047079729301751317">‏ניתוק <ph name="USERNAME" /> ינקה את ההיסטוריה, הסימניות, ההגדרות ונתוני Chrome אחרים המאוחסנים במכשיר הזה. נתונים המאוחסנים בחשבון Google לא ינוקו, וניתן לנהל אותם <ph name="GOOGLE_DASHBOARD_LINK" />במרכז השליטה של Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">‏כרטיסייה של Chrome</translation>
 <translation id="3080151273017101988">‏המשך הפעלת אפליקציות ברקע כאשר Google Chrome סגור</translation>
 <translation id="3089968997497233615">‏גרסה חדשה ובטוחה יותר של Google Chrome זמינה כעת</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">‏סינכרון והתאמה אישית של Chrome בכל המכשירים שברשותך</translation>
 <translation id="3622797965165704966">‏קל יותר כעת להשתמש ב-Chrome באמצעות חשבון Google שלך ובמחשבים משותפים.</translation>
 <translation id="3637702109597584617">‏<ph name="TERMS_OF_SERVICE_LINK" />תנאים והגבלות<ph name="END_TERMS_OF_SERVICE_LINK" /> של Google Chrome OS</translation>
-<translation id="3716182511346448902">‏הדף הזה מנצל יותר מדי זיכרון, כך שהוא הושהה על-ידי Chrome.</translation>
 <translation id="3718181793972440140">‏פעולה זו תמחק פריט אחד מהמכשיר. כדי לשחזר את הנתונים מאוחר יותר, היכנס אל Chrome עם <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">‏התוסף "<ph name="EXTENSION_NAME" />" שינה את הדף שמוצג כש-Chrome מופעל.</translation>
 <translation id="3780814664026482060">‏Chrome - ‏<ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{‏צריך להפעיל מחדש את Chrome תוך יום אחד}two{‏צריך להפעיל מחדש את Chrome תוך # ימים}many{‏צריך להפעיל מחדש את Chrome תוך # ימים}other{‏צריך להפעיל מחדש את Chrome תוך # ימים}}</translation>
 <translation id="424864128008805179">‏האם לצאת מ-Chrome?</translation>
 <translation id="4251615635259297716">‏האם לקשר את הנתונים שלך ב-Chrome לחשבון זה?</translation>
-<translation id="4251625577313994583">‏להורדת Chrome ל-iPhone</translation>
 <translation id="4293420128516039005">‏כניסה לחשבון תסנכרן ותתאים אישית את Chrome בכל המכשירים שברשותך</translation>
 <translation id="4328355335528187361">‏גרסת הפיתוח של Google Chrome ‏(mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">‏נעשה כאן שימוש בבדיקת האיות של חיפוש Google. הטקסט המוקלד בדפדפן נשלח אל Google. אפשר לשנות את ההתנהגות הזו בכל שלב דרך ההגדרות.</translation>
 <translation id="4891791193823137474">‏אפשר ל-Google Chrome לפעול ברקע</translation>
 <translation id="4895437082222824641">‏פתח את הקישור ב&amp;כרטיסיית Chrome חדשה</translation>
-<translation id="4921569541910214635">‏משתף את המחשב? עכשיו תוכל להגדיר את Chrome בדיוק כמו שאתה אוהב.</translation>
 <translation id="4953650215774548573">‏הגדר את Google Chrome כדפדפן ברירת המחדל</translation>
 <translation id="495931528404527476">‏ב-Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">הפעל מחדש</translation>
 <translation id="5940385492829620908">‏היסטוריית האתרים, הסימניות ופריטים נוספים מ-Chrome נמצאים כאן.</translation>
 <translation id="5941830788786076944">‏הפוך את Google Chrome לדפדפן ברירת המחדל</translation>
-<translation id="6014844626092547096">‏אתה מחובר כעת ל-Chrome‏! הסנכרון הושבת על ידי מנהל המערכת שלך.</translation>
-<translation id="6040143037577758943">סגור</translation>
 <translation id="6070348360322141662">‏לשיפור האבטחה, Google Chrome יצפין את הנתונים</translation>
 <translation id="6113794647360055231">‏Chrome השתפר</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">‏השימוש במערכת ההפעלה של Chrome מתאפשר באמצעות <ph name="BEGIN_LINK_CROS_OSS" />תוכנת קוד פתוח<ph name="END_LINK_CROS_OSS" /> נוספת.</translation>
 <translation id="6515495397637126556">‏<ph name="PAGE_TITLE" /> - Google Chrome בגירסת פיתוח</translation>
 <translation id="6566149418543181476">‏מעדכן את Google Chrome‏ (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">‏אתה משתמש ב-<ph name="PROFILE_EMAIL" /> כדי לסנכרן את הפריטים שלך ב-Chrome. עבור אל '<ph name="SETTINGS_LINK" />' כדי לעדכן את העדפות הסנכרון או להשתמש ב-Chrome ללא חשבון Google.</translation>
-<translation id="6600954340915313787">‏הועתק אל Chrome</translation>
 <translation id="6676384891291319759">גישה אל האינטרנט</translation>
 <translation id="6679975945624592337">‏Google Chrome יכול לפעול ברקע</translation>
 <translation id="6750954913813541382">‏כדי לתקן שגיאות כתיב, הטקסט שהוקלד על ידך בדפדפן נשלח אל Google על ידי Chrome</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">‏Google Chrome עודכן, אך לא השתמשת בו לפחות 30 ימים.</translation>
 <translation id="7098166902387133879">‏Google Chrome משתמש במיקרופון שלך.</translation>
 <translation id="7106741999175697885">‏מנהל המשימות - Google Chrome</translation>
-<translation id="7164397146364144019">‏אתה יכול לעזור לשפר את הבטיחות של Chrome ולהקל את השימוש בו על ידי דיווח אוטומטי על פרטים של בעיות אבטחה אפשריות ל-Google.</translation>
 <translation id="7242029209006116544">‏בחרת להיכנס לחשבון מנוהל, ויינתן למנהל המערכת שלו שליטה על הפרופיל שלך ב-Google Chrome. הנתונים שלך ב-Chrome, כגון אפליקציות, סימניות, היסטוריה, סיסמאות והגדרות אחרות ייקשרו באופן קבוע ל-<ph name="USER_NAME" />. ניתן למחוק את הנתונים האלה באמצעות מרכז השליטה של חשבונות Google, אבל לא ניתן יהיה לשייך את הנתונים האלה לחשבון אחר. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">‏זו השפה שבה מוצג ממשק המשתמש של Google Chrome</translation>
 <translation id="7296210096911315575">מידע חשוב על בטיחות ועל אופן השימוש</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">‏היית מחובר ל-Chrome כ-<ph name="USER_EMAIL_ADDRESS" />. השתמש באותו חשבון כדי להיכנס שוב.</translation>
 <translation id="7408085963519505752">‏תנאים עבור מערכת ההפעלה של Chrome</translation>
 <translation id="7419046106786626209">‏מערכת ההפעלה של Chrome לא הצליחה לסנכרן את הנתונים שלך מפני שהסנכרון אינו זמין עבור הדומיין שלך.</translation>
-<translation id="7459554271817304652">‏הגדר סנכרון כדי לשמור את תכונות הדפדפן המותאמות אישית שלך באינטרנט ולגשת אליהן מ-Google Chrome בכל מחשב.</translation>
 <translation id="7486227612705979895">‏Chrome ייגש ל-Drive שלך כדי להציג הצעות בשורת כתובת האתר</translation>
 <translation id="7531671357096394523">‏יש לסגור את כל העותקים של Chrome.</translation>
 <translation id="7535429826459677826">‏גרסת הפיתוח של Google Chrome</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">‏המחשב הזה כבר לא יקבל עדכונים ל-Google Chrome, מאחר שכבר אין תמיכה במערכות Windows XP ו-Windows Vista</translation>
 <translation id="8008534537613507642">‏התקן מחדש את Chrome</translation>
 <translation id="8013993649590906847">‏אם אין לתמונה תיאור מועיל, Chrome ינסה לספק לך תיאור. כדי ליצור תיאורים, התמונות נשלחות אל Google.</translation>
-<translation id="8032142183999901390">‏לאחר הסרת החשבון שלך מ-Chrome, ייתכן שתידרש לטעון מחדש את הכרטיסיות הפתוחות שלך כדי שההסרה תיושם בפועל.</translation>
 <translation id="8129812357326543296">‏מידע על Google Chrome&amp;</translation>
-<translation id="8179874765710681175">‏יש להתקין את Chrome בטלפון שלך, לאחר מכן אליו הודעת SMS.</translation>
-<translation id="825412236959742607">‏הדף הזה משתמש בנפח זיכרון גדול מידי, לכן מערכת Chrome הסירה חלק מהתוכן.</translation>
 <translation id="8255190535488645436">‏Google Chrome משתמש במצלמה ובמיקרופון שלך.</translation>
 <translation id="8286862437124483331">‏Google Chrome מנסה להציג סיסמאות. הקלד את הסיסמה שלך ל-Windows כדי לאפשר זאת.</translation>
 <translation id="8290100596633877290">‏אופס! Google Chrome קרס. להפעיל מחדש עכשיו?</translation>
 <translation id="8342675569599923794">‏Chrome‏ חסם את הקובץ הזה כי הוא מסוכן.</translation>
 <translation id="8370517070665726704">‏Copyright <ph name="YEAR" /> Google LLC.‎ כל הזכויות שמורות.</translation>
 <translation id="840084489713044809">‏Google Chrome רוצה לייצא את הסיסמאות שלך.</translation>
-<translation id="8406086379114794905">‏כך משפרים את Chrome</translation>
 <translation id="8455999171311319804">‏אופציונלי: שלח אל Google נתוני אבחון ושימוש באופן אוטומטי ועזור לשפר את מערכת ההפעלה של Chrome.</translation>
-<translation id="8478823064122749032">‏יש להתקין את Chrome בטלפון שלך, ולאחר מכן נשלח הודעת SMS למספר שמוגדר לשחזור החשבון: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">‏בוצע עדכון אבטחה מיוחד של Google Chrome. עכשיו עליך להפעיל מחדש את Chrome ואנחנו נשחזר את הכרטיסיות.</translation>
 <translation id="8521348052903287641">‏כלל נכנס לגרסת הפיתוח של Google Chrome כדי לאפשר תנועת mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">‏מרכז האפליקציות של Chrome – קאנארי</translation>
 <translation id="8556340503434111824">‏גרסה חדשה של Google Chrome זמינה, והיא מהירה יותר מאי פעם.</translation>
-<translation id="8568392309447938879">‏צריך להיות מחוברים ל-Chrome כדי להשתמש באפליקציות. כך Chrome יכול לסנכרן את האפליקציות, הסימניות, ההיסטוריה, הסיסמאות והגדרות נוספות בין מכשירים שונים.</translation>
 <translation id="8606668294522778825">‏Google Chrome עשוי להשתמש בשירותי אינטרנט לשיפור חוויית הגלישה שלך. ניתן להשבית את השירותים האלה. <ph name="BEGIN_LINK" />למידע נוסף<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">‏Google Chrome אינו מגיב. להפעיל מחדש עכשיו?</translation>
 <translation id="8625237574518804553">{0,plural, =1{‏Chrome יופעל מחדש בעוד דקה}two{‏Chrome יופעל מחדש בעוד # דקות}many{‏Chrome יופעל מחדש בעוד # דקות}other{‏Chrome יופעל מחדש בעוד # דקות}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ja.xtb b/chrome/app/resources/google_chrome_strings_ja.xtb
index 18253a605..1913cf6 100644
--- a/chrome/app/resources/google_chrome_strings_ja.xtb
+++ b/chrome/app/resources/google_chrome_strings_ja.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS はデータを同期できませんでした。同期パスフレーズを更新してください。</translation>
 <translation id="1302523850133262269">Chrome は最新のシステム アップデートをインストールしています。しばらくお待ちください。</translation>
 <translation id="137466361146087520">Google Chrome ベータ版</translation>
-<translation id="1393853151966637042">Chrome の使用に関するアドバイス</translation>
 <translation id="1399397803214730675">新しいバージョンの Google Chrome が既にインストールされています。ソフトウェアが動作しない場合は、Google Chrome をアンインストールしてからもう一度お試しください。</translation>
 <translation id="1434626383986940139">Chrome Canary アプリ</translation>
-<translation id="1469002951682717133">Chrome アプリ ランチャー</translation>
 <translation id="1553358976309200471">Chrome を更新</translation>
 <translation id="1587223624401073077">Google Chrome がカメラを使用しています。</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> は危険なファイルであるため、Chrome でブロックしました。</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">このパスワードは Google アカウントに保存されるため、覚えておく必要はありません。</translation>
 <translation id="174539241580958092">ログイン時にエラーが発生したため、Google Chrome はデータを同期できませんでした。</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS の使用に関するアドバイス</translation>
-<translation id="1795405610103747296">Chrome をスマートフォンにインストールしませんか。お客様の電話番号(<ph name="PHONE_NUMBER" />)に、Google より SMS をお送りします。</translation>
 <translation id="1812689907177901597">この設定を無効にすると、Chrome にログインすることなく Gmail などの Google サイトにログインできます</translation>
 <translation id="1860536484129686729">このサイトを利用するには、Chrome でカメラの使用を許可する必要があります</translation>
 <translation id="1873233029667955273">Google Chrome はデフォルトのブラウザとして設定されていません</translation>
@@ -51,16 +47,10 @@
 <translation id="2123055963409958220"><ph name="BEGIN_LINK" />現在の設定<ph name="END_LINK" />を送信して Chrome の品質向上にご協力ください</translation>
 <translation id="2128103434102193461">Chrome OS の詳細については、<ph name="LINK_BEGIN" />Chrome OS について<ph name="LINK_END" />をご覧ください</translation>
 <translation id="2151406531797534936">Chrome を今すぐ再起動してください</translation>
-<translation id="216054706567564023">Chrome をスマートフォンにインストールしませんか。お客様のアカウント再設定用の電話番号に、Google より SMS をお送りします。</translation>
 <translation id="2246246234298806438">Google Chrome では、組み込みの PDF ビューアがない場合、印刷プレビューを表示できません。</translation>
-<translation id="2252923619938421629">現在の設定を送信して Google Chrome の機能向上に役立てる</translation>
-<translation id="2286950485307333924">Chrome にログイン済み</translation>
 <translation id="2290014774651636340">Google API キーが欠落しています。Google Chrome の一部の機能は無効になります。</translation>
 <translation id="2290095356545025170">Google Chrome をアンインストールしてもよろしいですか?</translation>
 <translation id="2309047409763057870">この Google Chrome はセカンダリ インストールのため、既定のブラウザには設定できません。</translation>
-<translation id="2346876346033403680">別のユーザーが前回このパソコンから <ph name="ACCOUNT_EMAIL_LAST" /> として Chrome にログインしました。このメール アドレスがご自分のアカウントでない場合は、新しい Chrome ユーザーを作成して情報を個別に保持してください。
-
-このままログインすると、ブックマーク、履歴、その他の設定などの Chrome データが <ph name="ACCOUNT_EMAIL_NEW" /> と統合されます。</translation>
 <translation id="2348335408836342058">このサイトを利用するには、Chrome でカメラとマイクの使用を許可する必要があります</translation>
 <translation id="2429317896000329049">お使いのドメインでは同期を利用できないため、Google Chrome はデータを同期できませんでした。</translation>
 <translation id="2467438592969358367">Google Chrome からパスワードをエクスポートするための許可を求められています。許可するには Windows のパスワードを入力してください。</translation>
@@ -82,7 +72,6 @@
 <translation id="2871893339301912279">Chrome にログインしました</translation>
 <translation id="2888126860611144412">Chrome について</translation>
 <translation id="3037838751736561277">Google Chrome はバックグラウンド モードです。</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> の接続を解除すると、履歴、ブックマーク、設定、このデバイスに保存されたその他の Chrome データが消去されます。ただし、Google アカウントに保存されたデータは消去されず、引き続き <ph name="GOOGLE_DASHBOARD_LINK" />Google ダッシュボード<ph name="END_GOOGLE_DASHBOARD_LINK" />で管理できます。</translation>
 <translation id="3065168410429928842">Chrome タブ</translation>
 <translation id="3080151273017101988">Google Chrome を閉じた際にバックグラウンド アプリの処理を続行する</translation>
 <translation id="3089968997497233615">Google クロームブラウザがより速く、さらに便利に。いますぐトライ!</translation>
@@ -103,7 +92,6 @@
 <translation id="3582972582564653026">同期してカスタマイズした Chrome をどのデバイスでも使用できます</translation>
 <translation id="3622797965165704966">共有パソコンの Chrome で Google アカウントが簡単に使用できるようになりました。</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />利用規約<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">このページは大量のメモリを使用しているため、Chrome により一時停止されました。</translation>
 <translation id="3718181793972440140">このデバイスから 1 件の項目を削除します。後でデータを取得するには、<ph name="USER_EMAIL" /> として Chrome にログインしてください。</translation>
 <translation id="3735758079232443276">拡張機能「<ph name="EXTENSION_NAME" />」により、Chrome の起動時に表示されるページが変更されました。</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -119,7 +107,6 @@
 <translation id="4191857738314598978">{0,plural, =1{1 日以内に Chrome を再起動してください}other{# 日以内に Chrome を再起動してください}}</translation>
 <translation id="424864128008805179">Chrome からログアウトしますか?</translation>
 <translation id="4251615635259297716">Chrome データをこのアカウントにリンクしますか?</translation>
-<translation id="4251625577313994583">iPhone に Chrome をインストール</translation>
 <translation id="4293420128516039005">ログインすると、同期してカスタマイズした Chrome をどのデバイスでも使用できます</translation>
 <translation id="4328355335528187361">Google Chrome Dev(mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -141,7 +128,6 @@
 <translation id="479167709087336770">Google 検索と同じスペルチェックが使用されます。ブラウザに入力したテキストは Google に送信されます。この動作はいつでも設定で変更できます。</translation>
 <translation id="4891791193823137474">Google Chrome のバックグラウンドでの実行を許可する</translation>
 <translation id="4895437082222824641">新しい Chrome タブでリンクを開く(&amp;T)</translation>
-<translation id="4921569541910214635">共有パソコンにするなど、Chrome をお好みの方法で設定できるようになりました。</translation>
 <translation id="4953650215774548573">Google Chrome を既定のブラウザとして設定する</translation>
 <translation id="495931528404527476">Chrome 専用</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -171,8 +157,6 @@
 <translation id="5895138241574237353">再起動</translation>
 <translation id="5940385492829620908">ウェブ、ブックマーク、その他の Chrome データを好みに設定できます。</translation>
 <translation id="5941830788786076944">Google Chrome を既定のブラウザにする</translation>
-<translation id="6014844626092547096">Chrome にログインしています。同期は管理者によって無効にされています。</translation>
-<translation id="6040143037577758943">閉じる</translation>
 <translation id="6070348360322141662">セキュリティ強化のため、データは Google Chrome で暗号化されます</translation>
 <translation id="6113794647360055231">進化する Chrome</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -185,8 +169,6 @@
 <translation id="6368958679917195344">Chrome OS は、さらに追加の<ph name="BEGIN_LINK_CROS_OSS" />オープンソース ソフトウェア<ph name="END_LINK_CROS_OSS" />によって実現しました。</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome を更新しています(<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Chrome データの同期に <ph name="PROFILE_EMAIL" /> を使用しています。同期設定を更新する、または Google アカウントなしで Chrome を使用するには、<ph name="SETTINGS_LINK" /> にアクセスしてください。</translation>
-<translation id="6600954340915313787">Chrome にコピー済み</translation>
 <translation id="6676384891291319759">インターネットにアクセス</translation>
 <translation id="6679975945624592337">Google Chrome をバックグラウンドで実行する</translation>
 <translation id="6750954913813541382">スペルミスを修正するために、ブラウザに入力したテキストが Chrome から Google に送信されます</translation>
@@ -200,7 +182,6 @@
 <translation id="6989339256997917931">Google Chrome が更新されましたが、30 日間以上使用されていません。</translation>
 <translation id="7098166902387133879">Google Chrome がマイクを使用しています。</translation>
 <translation id="7106741999175697885">タスク マネージャ - Google Chrome</translation>
-<translation id="7164397146364144019">セキュリティに関する事象についての詳細を Google に自動送信して、Chrome の安全性と利便性の向上にご協力ください。</translation>
 <translation id="7242029209006116544">現在、管理対象アカウントでログインしており、あなたの Google Chrome プロフィールを管理者が制御できる状態になっています。あなたの Chrome データ(アプリ、ブックマーク、履歴、パスワードなどの設定)は永続的に <ph name="USER_NAME" /> に関連付けられます。このデータは Google アカウントのダッシュボードを介して削除できますが、このデータを別のアカウントに関連付けることはできなくなります。新しいプロフィールを作成して、既存の Chrome データを別に保管することができます。<ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">この言語が Google Chrome UI の表示に使用されます</translation>
 <translation id="7296210096911315575">使用と安全に関する重要事項</translation>
@@ -209,7 +190,6 @@
 <translation id="7398801000654795464">Chrome に <ph name="USER_EMAIL_ADDRESS" /> としてログインしていました。再度ログインするには同じアカウントを使用してください。</translation>
 <translation id="7408085963519505752">Chrome OS 利用規約</translation>
 <translation id="7419046106786626209">お使いのドメインでは同期を利用できないため、Chrome OS はデータを同期できませんでした。</translation>
-<translation id="7459554271817304652">同期を設定すると、パーソナライズされたブラウザ機能をウェブ上に保存して、どのパソコンの Google Chrome からでも使用できるようになります。</translation>
 <translation id="7486227612705979895">Chrome からお客様のドライブにアクセスして、アドレスバーに候補を表示します</translation>
 <translation id="7531671357096394523">Chrome のすべてのコピーを終了します。</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -233,25 +213,18 @@
 <translation id="7962410387636238736">Windows XP と Windows Vista はサポートされなくなったため、このパソコンでは今後 Google Chrome のアップデートは受信されません</translation>
 <translation id="8008534537613507642">Chrome を再インストール</translation>
 <translation id="8013993649590906847">画像に有効な説明が設定されていない場合に、Chrome で説明を自動的に生成できるよう Google に画像が送信されます。</translation>
-<translation id="8032142183999901390">Chrome からアカウントを削除したら、場合によっては開いているタブを再読み込みして変更を反映させる必要があります。</translation>
 <translation id="8129812357326543296">Google Chrome について(&amp;G)</translation>
-<translation id="8179874765710681175">Chrome をスマートフォンにインストールしませんか。Google よりスマートフォンに SMS をお送りします。</translation>
-<translation id="825412236959742607">このページは大量のメモリを使用しているため、Chrome により一部のコンテンツが削除されました。</translation>
 <translation id="8255190535488645436">Google Chrome がカメラとマイクを使用しています。</translation>
 <translation id="8286862437124483331">Google Chrome でパスワードを表示しようとしています。続行するには、Windows のパスワードを入力してください。</translation>
 <translation id="8290100596633877290">エラー: Google Chrome で問題が発生しました。今すぐ再起動しますか?</translation>
 <translation id="8342675569599923794">このファイルは危険なファイルであるため、Chrome でブロックしました。</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. All rights reserved.</translation>
 <translation id="840084489713044809">Google Chrome からパスワードをエクスポートするための許可を求められています。</translation>
-<translation id="8406086379114794905">Chrome の品質向上にご協力ください</translation>
 <translation id="8455999171311319804">オプション: 診断と使用状況のデータを Google に自動送信して Chrome OS の機能向上に役立てる。</translation>
-<translation id="8478823064122749032">Chrome をスマートフォンにインストールしませんか。お客様のアカウント再設定用の電話番号(<ph name="PHONE_NUMBER" />)に、Google より SMS をお送りします。</translation>
 <translation id="8498858610309223613">Google Chrome の特別なセキュリティ アップデートが適用されました。今すぐ再起動してください。タブは復元されます。</translation>
 <translation id="8521348052903287641">mDNS トラフィックを許可する Google Chrome Dev のインバウンド ルールです。</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome アプリ ランチャー(Canary 向け)</translation>
 <translation id="8556340503434111824">Google クロームブラウザがバージョンアップ!是非お試しください。</translation>
-<translation id="8568392309447938879">アプリを使用するには Chrome にログインする必要があります。ログインすると、Chrome ではアプリ、ブックマーク、履歴、パスワードなどの設定をデバイス間で同期できるようになります。</translation>
 <translation id="8606668294522778825">Google Chromeは、より快適なブラウジングを提供する目的でウェブサービスを使用することがあります。これらのサービスは無効にすることもできます。<ph name="BEGIN_LINK" />詳細<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome が応答しません。今すぐ再起動しますか?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome は 1 分後に再起動されます}other{Chrome は # 分後に再起動されます}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_kn.xtb b/chrome/app/resources/google_chrome_strings_kn.xtb
index ace4ef97..71593aa9 100644
--- a/chrome/app/resources/google_chrome_strings_kn.xtb
+++ b/chrome/app/resources/google_chrome_strings_kn.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">ನಿಮ್ಮ ಡೇಟಾವನ್ನು Chrome OS ಗೆ ಸಿಂಕ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ. ನಿಮ್ಮ ಸಿಂಕ್ ಪಾಸ್‌ಫ್ರೇಸ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಿ.</translation>
 <translation id="1302523850133262269">ಇತ್ತೀಚಿನ ಸಿಸ್ಟಂ ನವೀಕರಣಗಳನ್ನು Chrome ಸ್ಥಾಪಿಸುವಾಗ ದಯವಿಟ್ಟು ಕಾಯಿರಿ.</translation>
 <translation id="137466361146087520">Google Chrome ಬೀಟಾ</translation>
-<translation id="1393853151966637042">Chrome ಅನ್ನು ಬಳಸಿಕೊಳ್ಳುವುದರೊಂದಿಗೆ ಸಹಾಯವನ್ನು ಪಡೆಯಿರಿ</translation>
 <translation id="1399397803214730675">ಈ ಕಂಪ್ಯೂಟರ್ ಈಗಾಗಲೇ ತೀರಾ ಇತ್ತೀಚಿನ Google Chrome ಆವೃತ್ತಿಯನ್ನು ಹೊಂದಿದೆ. ಸಾಫ್ಟ್‌ವೇರ್ ಕಾರ್ಯ ನಿರ್ವಹಿಸದೆ ಇದ್ದರೆ, ದಯವಿಟ್ಟು Google Chrome ಅನ್ನು ಅನ್‌ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ ಹಾಗೂ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ.</translation>
 <translation id="1434626383986940139">Chrome ಕ್ಯಾನರಿ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು</translation>
-<translation id="1469002951682717133">Chrome ಅಪ್ಲಿಕೇಶನ್ ಲಾಂಚರ್</translation>
 <translation id="1553358976309200471">Chrome ಅಪ್‌ಡೇಟ್‌ ಮಾಡಿ</translation>
 <translation id="1587223624401073077">Google Chrome ನಿಮ್ಮ ಕ್ಯಾಮರಾ ಬಳಸುತ್ತಿದೆ.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> ಅಪಾಯಕಾರಿಯಾಗಿದೆ, ಹಾಗಾಗಿ Chrome ಅದನ್ನು ನಿರ್ಬಂಧಿಸಿದೆ.</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">Chrome, ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ಈ ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು ಉಳಿಸುತ್ತದೆ. ನೀವು ಅದನ್ನು ನೆನಪಿಡುವ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ.</translation>
 <translation id="174539241580958092">ಸೈನ್ ಇನ್ ಮಾಡುವಲ್ಲಿ ದೋಷವಿರುವ ಕಾರಣ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಸಿಂಕ್ ಮಾಡಲು Google Chrome ಗೆ ಸಾಧ್ಯವಾಗಲಿಲ್ಲ.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS ಅನ್ನು ಬಳಸಿಕೊಳ್ಳುವುದರೊಂದಿಗೆ ಸಹಾಯವನ್ನು ಪಡೆಯಿರಿ</translation>
-<translation id="1795405610103747296">ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ Chrome ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ. ನಿಮ್ಮ ಫೋನ್‌‌ಗೆ ನಾವು ಎಸ್ಎಂಎಸ್ ಕಳುಹಿಸುತ್ತೇವೆ: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">ಇದನ್ನು ಆಫ್ ಮಾಡುವ ಮೂಲಕ, ನೀವು Chrome ಗೆ ಸೈನ್ ಇನ್ ಮಾಡದೆಯೇ Gmail ನಂತಹ Google ಸೈಟ್‌ಗಳಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡಬಹುದು</translation>
 <translation id="1860536484129686729">ಈ ಸೈಟ್‌ಗಾಗಿ ನಿಮ್ಮ ಕ್ಯಾಮರಾವನ್ನು ಪ್ರವೇಶಿಸಲು Chrome ಗೆ ಅನುಮತಿಯ ಅಗತ್ಯವಿದೆ</translation>
 <translation id="1873233029667955273">Google Chrome ನಿಮ್ಮ ಡಿಫಾಲ್ಟ್ ಬ್ರೌಸರ್ ಅಲ್ಲ</translation>
@@ -52,16 +48,10 @@
 <translation id="2123055963409958220"><ph name="BEGIN_LINK" />ಪ್ರಸ್ತುತ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು<ph name="END_LINK" /> ವರದಿ ಮಾಡುವುದರ ಮೂಲಕ Chrome ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಸಹಾಯ ಮಾಡಿ</translation>
 <translation id="2128103434102193461">Chrome OS ವಿವರಗಳಿಗಾಗಿ, <ph name="LINK_BEGIN" />Chrome OS ಬಗ್ಗೆ<ph name="LINK_END" /> ನೋಡಿ</translation>
 <translation id="2151406531797534936">ಇದೀಗ Chrome ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಿ</translation>
-<translation id="216054706567564023">ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ Chrome ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ. ನಿಮ್ಮ ಖಾತೆ ಮರುಪ್ರಾಪ್ತಿ ಫೋನ್ ಸಂಖ್ಯೆ‌ಗೆ ನಾವು ಎಸ್ಎಂಎಸ್ ಕಳುಹಿಸುತ್ತೇವೆ.</translation>
 <translation id="2246246234298806438">ಬಿಲ್ಟ್ ಇನ್ PDF ವೀಕ್ಷಣೆಯು ಕಾಣೆಯಾಗಿರುವಾಗ Google Chrome ಮುದ್ರಣ ಪೂರ್ವವೀಕ್ಷಣೆಯನ್ನು ತೋರಿಸುವುದಿಲ್ಲ.</translation>
-<translation id="2252923619938421629">ಪ್ರಸ್ತುತ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ವರದಿ ಮಾಡುವುದರ ಮೂಲಕ Google Chrome ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಸಹಾಯಮಾಡಿ</translation>
-<translation id="2286950485307333924">ನೀವು ಇದೀಗ Chrome ಗೆ ಸೈನ್‌ ಇನ್‌ ಆಗಿರುವಿರಿ</translation>
 <translation id="2290014774651636340">Google API ಕೀಗಳು ಕಾಣೆಯಾಗಿವೆ. Google Chrome ನ ಕೆಲವು ಕಾರ್ಯವನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ.</translation>
 <translation id="2290095356545025170">ನೀವು ಖಚಿತವಾಗಿ Google Chrome ಅನ್ನು ಅನ್‌ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲು ಬಯಸುತ್ತೀರಾ?</translation>
 <translation id="2309047409763057870">ಇದು Google Chrome ನ ದ್ವಿತೀಯ ಸ್ಥಾಪನೆಯಾಗಿದೆ ಮತ್ತು ಅದನ್ನು ನಿಮ್ಮ ಡಿಫಾಲ್ಟ್ ಬ್ರೌಸರ್ ಆಗಿ ಮಾಡಲಾಗುವುದಿಲ್ಲ.</translation>
-<translation id="2346876346033403680">ಈ ಕಂಪ್ಯೂಟರ್‌ನಲ್ಲಿ Chrome ಗೆ ಯಾರೋ ಈ ಹಿಂದೆಯೇ <ph name="ACCOUNT_EMAIL_LAST" /> ಹೆಸರಿನಲ್ಲಿ  ಸೈನ್ ಇನ್ ಮಾಡಿದ್ದಾರೆ. ಅದು ನಿಮ್ಮ ಖಾತೆಯಲ್ಲವಾದರೆ ನಿಮ್ಮ ಮಾಹಿತಿಯನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಇರಿಸಿಕೊಳ್ಳಲು ಹೊಸ Chrome ಬಳಕೆದಾರರನ್ನು ರಚಿಸಿ.
-
-ಸೈನ್‌ ಇನ್ ಮಾಡುವುದು ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ, ಹಾಗೂ ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳಂತಹ Chrome ಮಾಹಿತಿಯನ್ನು <ph name="ACCOUNT_EMAIL_NEW" /> ಗೆ ಹೇಗಿದ್ದರೂ ವಿಲೀನಗೊಳಿಸುತ್ತದೆ.</translation>
 <translation id="2348335408836342058">ಈ ಸೈಟ್‌ಗಾಗಿ ನಿಮ್ಮ ಕ್ಯಾಮರಾ ಮತ್ತು ಮೈಕ್ರೊಫೋನ್‌ಗೆ ಪ್ರವೇಶಿಸಲು Chrome ಗೆ ಅನುಮತಿಯ ಅಗತ್ಯವಿದೆ</translation>
 <translation id="2429317896000329049">ನಿಮ್ಮ ಡೊಮೇನ್‌ನಲ್ಲಿ ಸಿಂಕ್‌ ಮಾಡುವ ಸೌಲಭ್ಯವಿಲ್ಲದ ಕಾರಣ Google Chrome ಗೆ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಸಿಂಕ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ.</translation>
 <translation id="2467438592969358367">Google Chrome ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ರಫ್ತು ಮಾಡಲು ಬಯಸುತ್ತದೆ. ಇದನ್ನು ಅನುಮತಿಸಲು ನಿಮ್ಮ Windows ಪಾಸ್‌ವರ್ಡ್‌ ಟೈಪ್ ಮಾಡಿ.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">ನೀವೀಗ Chrome ಗೆ ಸೈನ್ ಇನ್ ಆಗಿರುವಿರಿ!</translation>
 <translation id="2888126860611144412">Chrome ಕುರಿತು</translation>
 <translation id="3037838751736561277">Google Chrome ಹಿನ್ನೆಲೆ ಮೋಡ್‌ನಲ್ಲಿದೆ.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> ಅವರ ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸುವುದರಿಂದ ನಿಮ್ಮ ಇತಿಹಾಸ, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಸೆಟ್ಟಿಂಗ್‌ಗಳು ಮತ್ತು ಈ ಸಾಧನದಲ್ಲಿ ಸಂಗ್ರಹವಾಗಿರುವ ಇತರ Chrome ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸಲಾಗುತ್ತದೆ. ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ಸಂಗ್ರಹವಾಗಿರುವ ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸಲಾಗುತ್ತದೆ ಮತ್ತು <ph name="GOOGLE_DASHBOARD_LINK" />Google ಡ್ಯಾಶ್‌ಬೋರ್ಡ್‌ನಲ್ಲಿ<ph name="END_GOOGLE_DASHBOARD_LINK" /> ನಿರ್ವಹಿಸಬಹುದಾಗಿದೆ.</translation>
 <translation id="3065168410429928842">Chrome ಟ್ಯಾಬ್</translation>
 <translation id="3080151273017101988">Google Chrome ಮುಚ್ಚಿದಾಗ ರನ್‌ ಆಗುತ್ತಿರುವ ಹಿನ್ನೆಲೆ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಮುಂದುವರಿಸು</translation>
 <translation id="3089968997497233615">ಹೊಸದಾದ, ಸುರಕ್ಷಿತವಾದ Google Chrome ನ ಆವೃತ್ತಿ ಲಭ್ಯವಿದೆ.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">ನಿಮ್ಮ ಎಲ್ಲಾ ಸಾಧನಗಳಲ್ಲಿ Chrome ಅನ್ನು ಸಿಂಕ್ ಮಾಡಿ ಮತ್ತು ವೈಯಕ್ತೀಕರಿಸಿ</translation>
 <translation id="3622797965165704966">ನಿಮ್ಮ Google ಖಾತೆಯ ಮೂಲಕ ಮತ್ತು ಹಂಚಿದ ಕಂಪ್ಯೂಟರ್‌ಗಳಲ್ಲಿ Chrome ಬಳಕೆ ಈಗ ತುಂಬಾ ಸುಲಭವಾಗಿದೆ.</translation>
 <translation id="3637702109597584617">Google Chrome OS ನ <ph name="TERMS_OF_SERVICE_LINK" />ಸೇವಾ ನಿಯಮಗಳು<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">ಈ ಪುಟವು ಅತಿ ಹೆಚ್ಚು ಮೆಮೊರಿಯನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತದೆ, ಆದ್ದರಿಂದ Chrome ಇದನ್ನು ವಿರಾಮಗೊಳಿಸಿದೆ.</translation>
 <translation id="3718181793972440140">ಈ ಸಾಧನದಿಂದ 1 ಐಟಂ ಅನ್ನು ಇದು ಅಳಿಸುತ್ತದೆ. ನಂತರ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಮರುಪಡೆಯಲು, <ph name="USER_EMAIL" /> ನಂತೆ Chrome ಗೆ ಸೈನ್‌ ಇನ್ ಮಾಡಿ.</translation>
 <translation id="3735758079232443276">ನೀವು Chrome ಪ್ರಾರಂಭಿಸಿದಾಗ ತೋರಿಸಬೇಕಾದ ಪುಟವನ್ನು "<ph name="EXTENSION_NAME" />" ವಿಸ್ತರಣೆಯು ಬದಲಾಯಿಸಿದೆ.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{ಒಂದು ದಿನದ ಒಳಗೆ Chrome ಮರುಪ್ರಾರಂಭಿಸಿ}one{# ದಿನಗಳ ಒಳಗೆ Chrome ಮರುಪ್ರಾರಂಭಿಸಿ}other{# ದಿನಗಳ ಒಳಗೆ Chrome ಮರುಪ್ರಾರಂಭಿಸಿ}}</translation>
 <translation id="424864128008805179">Chrome ನಿಂದ ಸೈನ್ ಔಟ್ ಮಾಡುವುದೇ?</translation>
 <translation id="4251615635259297716">ಈ ಖಾತೆಗೆ ನಿಮ್ಮ Chrome ಡೇಟಾವನ್ನು ಲಿಂಕ್ ಮಾಡುವುದೇ?</translation>
-<translation id="4251625577313994583">ನಿಮ್ಮ iPhone ನಲ್ಲಿ Chrome ಪಡೆದುಕೊಳ್ಳಿ</translation>
 <translation id="4293420128516039005">ನಿಮ್ಮ ಸಾಧನಗಳಲ್ಲಿ Chrome ಅನ್ನು ಸಿಂಕ್ ಮಾಡಲು ಮತ್ತು ವೈಯಕ್ತೀಕರಿಸಲು ಸೈನ್ ಇನ್ ಮಾಡಿ</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">ಇದು Google ಹುಡುಕಾಟದಲ್ಲಿ ಬಳಸಲಾದ ಅದೇ ಕಾಗುಣಿತ ಪರೀಕ್ಷೆಯನ್ನು ಬಳಸುತ್ತದೆ. ನೀವು ಬ್ರೌಸರ್‌ನಲ್ಲಿ ಟೈಪ್ ಮಾಡುವ ಪಠ್ಯವನ್ನು Google ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ. ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ನೀವು ಈ ವರ್ತನೆಯನ್ನು ಯಾವಾಗ ಬೇಕಾದರೂ ಬದಲಾಯಿಸಬಹುದು.</translation>
 <translation id="4891791193823137474">Google Chrome ಹಿನ್ನೆಲೆಯಲ್ಲಿ ಚಾಲನೆಯಾಗಲು ಅನುಮತಿಸಿ</translation>
 <translation id="4895437082222824641">ಹೊಸ Chrome &amp;ಟ್ಯಾಬ್‌ನಲ್ಲಿ ಲಿಂಕ್ ಅನ್ನು ತೆರೆಯಿರಿ</translation>
-<translation id="4921569541910214635">ಕಂಪ್ಯೂಟರ್‌ ಅನ್ನು ಹಂಚಿಕೊಳ್ಳುವುದೇ? ಇದೀಗ ನೀವು ಇಷ್ಟಪಡುವ ಮಾರ್ಗದ ಮೂಲಕ ಇದೀಗ ನೀವು Chrome ಹೊಂದಿಸಬಹುದು.</translation>
 <translation id="4953650215774548573">Google Chrome ಅನ್ನು ನಿಮ್ಮ ಡಿಫಾಲ್ಟ್ ಬ್ರೌಸರ್‌ ರೂಪದಲ್ಲಿ ಹೊಂದಿಸಿ</translation>
 <translation id="495931528404527476">Chrome ನಲ್ಲಿ</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -171,8 +157,6 @@
 <translation id="5895138241574237353">ಮರುಪ್ರಾರಂಭಿಸಿ</translation>
 <translation id="5940385492829620908">ನಿಮ್ಮ ವೆಬ್, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು ಮತ್ತು ಇತರ Chrome ವಿಷಯವು ಇಲ್ಲಿ ಲೈವ್ ಆಗುತ್ತವೆ.</translation>
 <translation id="5941830788786076944">Google Chrome ಅನ್ನು ಡಿಫಾಲ್ಟ್ ಬ್ರೌಸರ್ ಆಗಿಸು</translation>
-<translation id="6014844626092547096">ಇದೀಗ ನೀವು Chrome ಗೆ ಸೈನ್ ಇನ್ ಆಗಿರುವಿರಿ! ನಿಮ್ಮ ನಿರ್ವಾಹಕರಿಂದ ಸಿಂಕ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ.</translation>
-<translation id="6040143037577758943">ಮುಚ್ಚಿರಿ</translation>
 <translation id="6070348360322141662">ಹೆಚ್ಚುವರಿ ಭದ್ರತೆಗಾಗಿ, Google Chrome ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಎನ್‌ಕ್ರಿಪ್ಟ್ ಮಾಡುತ್ತದೆ</translation>
 <translation id="6113794647360055231">Chrome ಇದೀಗ ಉತ್ತಮಗೊಂಡಿದೆ</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -185,8 +169,6 @@
 <translation id="6368958679917195344">ಹೆಚ್ಚುವರಿ <ph name="BEGIN_LINK_CROS_OSS" />ಓಪನ್ ಸೋರ್ಸ್ ಸಾಫ್ಟ್‌ವೇರ್<ph name="END_LINK_CROS_OSS" /> ನಿಂದ Chrome OS ಸಾಕಾರಗೊಂಡಿದೆ.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome ಅಪ್‌ಡೇಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">ನಿಮ್ಮ Chrome ವಿಷಯವನ್ನು ಸಿಂಕ್ ಮಾಡಲು ನೀವು <ph name="PROFILE_EMAIL" /> ಅನ್ನು ಬಳಸುತ್ತಿರುವಿರಿ. Google ಖಾತೆಯಿಲ್ಲದೆ ನಿಮ್ಮ ಸಿಂಕ್ ಪ್ರಾಶಸ್ತ್ಯಗಳನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಲು ಅಥವಾ Chrome ಬಳಸಲು <ph name="SETTINGS_LINK" /> ಗೆ ಭೇಟಿ ನೀಡಿ.</translation>
-<translation id="6600954340915313787">Chrome ಗೆ ನಕಲಿಸಲಾಗಿದೆ</translation>
 <translation id="6676384891291319759">ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ</translation>
 <translation id="6679975945624592337">Google Chrome ಹಿನ್ನೆಲೆಯಲ್ಲಿ ರನ್ ಆಗಲು ಅನುಮತಿಸಿ</translation>
 <translation id="6750954913813541382">ಕಾಗುಣಿತ ದೋಷಗಳನ್ನು ಸರಿಪಡಿಸಲು, Chrome, ನೀವು ಬ್ರೌಸರ್‌ನಲ್ಲಿ ಟೈಪ್ ಮಾಡುವ ಪಠ್ಯವನ್ನು Google ಗೆ ಕಳುಹಿಸುತ್ತದೆ</translation>
@@ -200,7 +182,6 @@
 <translation id="6989339256997917931">Google Chrome ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲಾಗಿದೆ, ಆದರೆ ನೀವು ಕನಿಷ್ಠ 30 ದಿನಗಳವರೆಗಾದರೂ ಇದನ್ನು ಬಳಸಿರಲಿಕ್ಕಿಲ್ಲ. </translation>
 <translation id="7098166902387133879">Google Chrome ನಿಮ್ಮ ಮೈಕ್ರೋಫೋನ್ ಅನ್ನು ಬಳಸುತ್ತಿದೆ.</translation>
 <translation id="7106741999175697885">ಕಾರ್ಯ ನಿರ್ವಾಹಕ - Google Chrome</translation>
-<translation id="7164397146364144019">ನೀವು Google ಗೆ ಸಂಭಾವ್ಯ ಸುರಕ್ಷತೆಗೆ ಸಂಬಂಧಿಸಿದ ಘಟನೆಗಳ ವಿವರಗಳನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ವರದಿ ಮಾಡುವ ಮೂಲಕ Chrome ಅನ್ನು ಸುರಕ್ಷಿತಗೊಳಿಸಲು ಮತ್ತು ಬಳಕೆಗೆ ಸುಲಭಗೊಳಿಸಲು ಸಹಾಯ ಮಾಡಬಹುದು.</translation>
 <translation id="7242029209006116544">ನೀವು ನಿರ್ವಹಿಸಲಾದ ಖಾತೆಯೊಂದಿಗೆ ಸೈನ್ ಇನ್ ಮಾಡುತ್ತಿರುವಿರಿ ಮತ್ತು ನಿಮ್ಮ Google Chrome ಪ್ರೊಫೈಲ್ ಮೂಲಕ ಅದರ ನಿರ್ವಾಹಕ ನಿಯಂತ್ರಣವನ್ನು ನೀಡುತ್ತಿರುವಿರಿ. ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು, ಹಾಗೂ ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳಂತಹ ನಿಮ್ಮ Chrome ಡೇಟಾವನ್ನು <ph name="USER_NAME" /> ಅವರಿಗೆ ಶಾಶ್ವತವಾಗಿ ಬಂಧಿಸಲಾಗುತ್ತದೆ. Google ಖಾತೆಗಳ ಡ್ಯಾಶ್‌ಬೋರ್ಡ್ ಮೂಲಕ ಈ ಡೇಟಾವನ್ನು ಅಳಿಸಲು ನಿಮಗೆ ಸಾಧ್ಯವಾಗುತ್ತದೆ, ಆದರೆ ಬೇರೊಂದು ಖಾತೆಯೊಂದಿಗೆ ಈ ಡೇಟಾವನ್ನು ಸಂಯೋಜಿಸಲು ನಿಮಗೆ ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ Chrome ಡೇಟಾವನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಇರಿಸಿಕೊಳ್ಳಲು ನೀವು ಐಚ್ಛಿಕವಾಗಿ ಹೊಸ ಪ್ರೊಫೈಲ್ ಅನ್ನು ರಚಿಸಬಹುದು. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Google Chrome UI ತೋರಿಸಲು ಈ ಭಾಷೆಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ</translation>
 <translation id="7296210096911315575">ಬಳಕೆ ಮತ್ತು ಸುರಕ್ಷತೆ ಕುರಿತಾದ ಪ್ರಮುಖ ಮಾಹಿತಿ</translation>
@@ -209,7 +190,6 @@
 <translation id="7398801000654795464"><ph name="USER_EMAIL_ADDRESS" /> ನಂತೆ Chrome ಅನ್ನು ನೀವು ಸೈನ್ ಇನ್ ಮಾಡಿರುವಿರಿ. ದಯವಿಟ್ಟು ಮತ್ತೆ ಸೈನ್ ಇನ್ ಮಾಡಲು ಅದೇ ಖಾತೆಯನ್ನು ಬಳಸಿ.</translation>
 <translation id="7408085963519505752">Chrome OS ನಿಯಮಗಳು</translation>
 <translation id="7419046106786626209">ನಿಮ್ಮ ಡೊಮೇನ್‌ನಲ್ಲಿ ಸಿಂಕ್ ಮಾಡುವ ಸೌಲಭ್ಯವಿಲ್ಲದ ಕಾರಣ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಸಿಂಕ್ ಮಾಡಲು Chrome OS ಗೆ ಸಾಧ್ಯವಾಗುತ್ತಿಲ್ಲ.</translation>
-<translation id="7459554271817304652">ನಿಮ್ಮ ವೈಯಕ್ತಿಕಗೊಳಿಸಿದ ಬ್ರೌಸರ್ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ವೆಬ್‍ಗೆ ಉಳಿಸಲು ಮತ್ತು ಅವುಗಳನ್ನು Google Chrome ನಿಂದ ಯಾವುದೇ ಕಂಪ್ಯೂಟರ್‌ನಲ್ಲಿ ಪ್ರವೇಶಿಸಲು ಸಿಂಕ್ ಅನ್ನು ಹೊಂದಿಸಿ.</translation>
 <translation id="7486227612705979895">ವಿಳಾಸಪಟ್ಟಿಯಲ್ಲಿ ಸಲಹೆ ನೀಡಲು, Chrome ನಿಮ್ಮ ಡ್ರೈವ್‌ಗೆ ಪ್ರವೇಶಿಸುತ್ತದೆ.</translation>
 <translation id="7531671357096394523">Chrome ನ ಎಲ್ಲಾ ನಕಲುಗಳನ್ನು ತ್ಯಜಿಸಿ.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -233,25 +213,18 @@
 <translation id="7962410387636238736">Windows XP ಮತ್ತು Windows Vista ಗಳಿಗೆ ಬೆಂಬಲವಿಲ್ಲದೇ ಇರುವುದರಿಂದ ಈ ಕಂಪ್ಯೂಟರ್‌‌ ಇನ್ನು ಮುಂದೆ Google Chrome ಅಪ್‌ಡೇಟ್‌ಗಳನ್ನು ಸ್ವೀಕರಿಸುವುದಿಲ್ಲ</translation>
 <translation id="8008534537613507642">Chrome ಅನ್ನು ಮರು ಸ್ಥಾಪಿಸು</translation>
 <translation id="8013993649590906847">ಚಿತ್ರದಲ್ಲಿ ಉಪಯುಕ್ತ ವಿವರಣೆಯು ಇಲ್ಲದಿದ್ದರೆ, Chrome ನಿಮಗಾಗಿ ಒಂದು ವಿವರಣೆಯನ್ನು ಒದಗಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ. ವಿವರಣೆಗಳನ್ನು ರಚಿಸಲು, ಚಿತ್ರಗಳನ್ನು Google ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ.</translation>
-<translation id="8032142183999901390">Chrome ನಿಂದ ನಿಮ್ಮ ಖಾತೆಯನ್ನು ತೆಗೆದುಹಾಕಿದ ನಂತರ, ಅದು ಮತ್ತೆ ಕಾರ್ಯ ನಿರ್ವಹಿಸಲು ನಿಮ್ಮ ತೆರೆದ ಟ್ಯಾಬ್‌ಗಳನ್ನು ನೀವು ಮರುಲೋಡ್‌ ಮಾಡುವ ಅಗತ್ಯವಿದೆ.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome ಕುರಿತು</translation>
-<translation id="8179874765710681175">ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ Chrome ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ. ನಿಮ್ಮ ಫೋನ್‌‌ಗೆ ನಾವು ಎಸ್ಎಂಎಸ್ ಕಳುಹಿಸುತ್ತೇವೆ.</translation>
-<translation id="825412236959742607">ಈ ಪುಟವು ತೀರಾ ಹೆಚ್ಚು ಮೆಮೊರಿಯನ್ನು ಬಳಸುತ್ತದೆ, ಆದ್ದರಿಂದ Chrome ಕೆಲವು ವಿಷಯಗಳನ್ನು ತೆಗೆದುಹಾಕಿದೆ.</translation>
 <translation id="8255190535488645436">Google Chrome ನಿಮ್ಮ ಕ್ಯಾಮರಾ ಮತ್ತು ಮೈಕ್ರೋಫೋನ್ ಅನ್ನು ಬಳಸುತ್ತಿದೆ.</translation>
 <translation id="8286862437124483331">Google Chrome ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ಪ್ರದರ್ಶಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದೆ. ಇದಕ್ಕೆ ಅನುಮತಿಸಲು ನಿಮ್ಮ Windows ಪಾಸ್‌ವರ್ಡ್‌ ಟೈಪ್ ಮಾಡಿ.</translation>
 <translation id="8290100596633877290">ಓಹ್! Google Chrome ಕ್ರ‍್ಯಾಶ್‌ ಆಗಿದೆ.ಇದೀಗ ಮರುಪ್ರಾರಂಭಿಸುವುದೆ?</translation>
 <translation id="8342675569599923794">ಈ ಫೈಲ್ ಅಪಾಯಕಾರಿಯಾಗಿದೆ, ಹೀಗಾಗಿ Chrome ಇದನ್ನು ನಿರ್ಬಂಧಿಸಿದೆ.</translation>
 <translation id="8370517070665726704">ಕೃತಿಸ್ವಾಮ್ಯ <ph name="YEAR" /> Google LLC. ಎಲ್ಲ ಹಕ್ಕುಗಳನ್ನು ಕಾಯ್ದಿರಿಸಲಾಗಿದೆ.</translation>
 <translation id="840084489713044809">Google Chrome ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ರಫ್ತು ಮಾಡಲು ಬಯಸುತ್ತದೆ.</translation>
-<translation id="8406086379114794905">Chrome ಉತ್ತಮಗೊಳಿಸುವಲ್ಲಿ ಸಹಾಯ ಮಾಡಿ.</translation>
 <translation id="8455999171311319804">ಐಚ್ಛಿಕ: Google ಗೆ ಡಯಾಗ್ನಸ್ಟಿಕ್ ಮತ್ತು ಡೇಟಾ ಬಳಕೆಯನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕಳುಹಿಸುವ ಮೂಲಕ Chrome OS ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಸಹಾಯ ಮಾಡಿ.</translation>
-<translation id="8478823064122749032">ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ Chrome ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ. ನಿಮ್ಮ ಖಾತೆ ಮರುಪ್ರಾಪ್ತಿ ಫೋನ್ ಸಂಖ್ಯೆ‌ಗೆ ನಾವು ಎಸ್ಎಂಎಸ್ ಕಳುಹಿಸುತ್ತೇವೆ: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome ಗೆ ವಿಶೇಷ ಸುರಕ್ಷತೆಯ ಅಪ್‌ಡೇಟ್‌‌ ಅನ್ನು ಈಗ ತಾನೇ ಅನ್ವಯಿಸಲಾಗಿದೆ. ಇದೀಗ ಮರುಪ್ರಾರಂಭಿಸಿ ಮತ್ತು ನಿಮ್ಮ ಟ್ಯಾಬ್‌ಗಳನ್ನು ನಾವು ಮರುಸ್ಥಾಪಿಸುತ್ತೇವೆ.</translation>
 <translation id="8521348052903287641">mDNS ಟ್ರಾಫಿಕ್‌ಗೆ ಅನುಮತಿಸುವ ನಿಟ್ಟಿನಲ್ಲಿ Google Chrome ಬೀಟಾಗೆ ಒಳಬರುವ ನಿಯಮ.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome ಅಪ್ಲಿಕೇಶನ್ ಲಾಂಚರ್ ಕ್ಯಾನರಿ</translation>
 <translation id="8556340503434111824">Google Chrome ನ ಹೊಸ ಆವೃತ್ತಿ ಲಭ್ಯವಿದೆ, ಮತ್ತು ಇದು ಎಂದಿಗಿಂತಲೂ ವೇಗವಾಗಿದೆ.</translation>
-<translation id="8568392309447938879">ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಬಳಸಲು ನೀವು Chrome ಗೆ ಸೈನ್ ಇನ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಸಾಧನಗಳಾದ್ಯಾಂತ ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ಮತ್ತು ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಸಿಂಕ್ ಮಾಡಲು Chrome ಗೆ ಇದು ಅವಕಾಶ ಮಾಡಿಕೊಡುತ್ತದೆ.</translation>
 <translation id="8606668294522778825">Google Chrome ನಿಮ್ಮ ಬ್ರೌಸಿಂಗ್ ಅನುಭವವನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ವೆಬ್‍ ಸೇವೆಗಳನ್ನು ಬಳಸಬಹುದು. ನಿಮಗೆ ಬೇಡವೆಂದಾಗ ಈ ಸೇವೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಬಹುದು. <ph name="BEGIN_LINK" />ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome ಸ್ಪಂದಿಸುತ್ತಿಲ್ಲ. ಇದೀಗ ಮರುಪ್ರಾರಂಭಿಸುವುದೆ?
 </translation>
diff --git a/chrome/app/resources/google_chrome_strings_ko.xtb b/chrome/app/resources/google_chrome_strings_ko.xtb
index eb450c0..5aea769 100644
--- a/chrome/app/resources/google_chrome_strings_ko.xtb
+++ b/chrome/app/resources/google_chrome_strings_ko.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS에서 데이터를 동기화하지 못했습니다. 동기화 암호를 업데이트하세요.</translation>
 <translation id="1302523850133262269">Chrome에서 최신 시스템 업데이트를 설치하는 동안 잠시 기다려 주세요.</translation>
 <translation id="137466361146087520">Chrome 베타</translation>
-<translation id="1393853151966637042">Chrome 사용에 대한 도움말</translation>
 <translation id="1399397803214730675">컴퓨터에 Chrome 최신 버전이 설치되어 있습니다. 실행되지 않는 경우 제거한 후 다시 시도하세요.</translation>
 <translation id="1434626383986940139">Chrome 카나리아 앱</translation>
-<translation id="1469002951682717133">Chrome 앱 런처</translation>
 <translation id="1553358976309200471">Chrome 업데이트</translation>
 <translation id="1587223624401073077">Chrome에서 카메라를 사용 중입니다.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" />은(는) 위험하므로 Chrome에서 차단했습니다.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome에서 내 Google 계정에 이 비밀번호를 저장하므로 기억하지 않아도 됩니다.</translation>
 <translation id="174539241580958092">로그인 중 오류가 발생하여 Chrome에서 데이터를 동기화하지 못했습니다.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS 사용에 대한 도움말</translation>
-<translation id="1795405610103747296">휴대전화에 Chrome을 설치하세요. 다음 휴대전화로 SMS를 보내 드리겠습니다. <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">이 기능을 사용 중지하면 Chrome에 로그인하지 않고도 Gmail 등의 Google 사이트에 로그인할 수 있습니다.</translation>
 <translation id="1860536484129686729">이 사이트에서 카메라에 액세스하려면 Chrome에 권한이 필요합니다</translation>
 <translation id="1873233029667955273">Chrome이 기본 브라우저로 설정되어 있지 않습니다</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">Chrome OS에 관한 자세한 내용은 <ph name="LINK_BEGIN" />
       Chrome OS 소개<ph name="LINK_END" />를 참조하세요.</translation>
 <translation id="2151406531797534936">지금 Chrome을 다시 시작하세요</translation>
-<translation id="216054706567564023">휴대전화에 Chrome을 설치하세요. 계정 복구 전화번호로 SMS를 보내 드리겠습니다.</translation>
 <translation id="2246246234298806438">기본 제공되는 PDF 뷰어가 없는 경우 Chrome에서 인쇄 미리보기를 표시할 수 없습니다.</translation>
-<translation id="2252923619938421629">현재 설정을 보고하여 더 나은 Chrome을 만드는 데 도움 주기</translation>
-<translation id="2286950485307333924">이제 Chrome에 로그인되었습니다.</translation>
 <translation id="2290014774651636340">Google API 키가 누락되었습니다. Chrome의 일부 기능이 사용 중지됩니다.</translation>
 <translation id="2290095356545025170">Chrome을 제거하시겠습니까?</translation>
 <translation id="2309047409763057870">Chrome의 보조 설치이며 기본 브라우저로 설정할 수 없습니다.</translation>
-<translation id="2346876346033403680">다른 사용자가 이전에 이 컴퓨터에서 <ph name="ACCOUNT_EMAIL_LAST" />(으)로 Chrome에 로그인했습니다. 본인의 계정이 아닌 경우 새 Chrome 사용자를 만들어 개인 정보를 분리하세요.
-
-로그인하면 북마크, 방문 기록 및 기타 설정과 같은 Chrome 정보가 <ph name="ACCOUNT_EMAIL_NEW" />에 병합됩니다.</translation>
 <translation id="2348335408836342058">이 사이트에서 카메라와 마이크에 액세스하려면 Chrome에 권한이 필요합니다</translation>
 <translation id="2429317896000329049">도메인에서 동기화를 사용할 수 없어 Chrome에서 데이터를 동기화하지 못했습니다.</translation>
 <translation id="2467438592969358367">Chrome에서 비밀번호를 내보내려고 합니다. 허용하려면 Windows 비밀번호를 입력하세요.</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">Chrome에 로그인되어 있습니다.</translation>
 <translation id="2888126860611144412">Chrome 정보</translation>
 <translation id="3037838751736561277">Chrome이 백그라운드 모드로 실행 중입니다.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" />의 연결을 해제하면 이 기기에 저장된 방문 기록, 북마크, 설정 및 기타 Chrome 데이터가 삭제됩니다. Google 계정에 저장된 데이터는 삭제되지 않으며 <ph name="GOOGLE_DASHBOARD_LINK" />Google 대시보드<ph name="END_GOOGLE_DASHBOARD_LINK" />에서 관리될 수 있습니다.</translation>
 <translation id="3065168410429928842">Chrome 탭</translation>
 <translation id="3080151273017101988">Chrome 종료 후에도 백그라운드 앱을 계속 실행</translation>
 <translation id="3089968997497233615">새롭고 안전한 Chrome의 새 버전을 사용할 수 있습니다.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">모든 기기에서 Chrome을 동기화하고 맞춤설정하세요.</translation>
 <translation id="3622797965165704966">이제 Google 계정으로 공유 컴퓨터에서 Chrome을 손쉽게 사용할 수 있습니다.</translation>
 <translation id="3637702109597584617">Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />서비스 약관<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">페이지에서 너무 많은 메모리를 사용하므로 Chrome에서 페이지를 일시중지했습니다.</translation>
 <translation id="3718181793972440140">항목 1개가 기기에서 삭제됩니다. 나중에 데이터를 가져오려면 Chrome에 <ph name="USER_EMAIL" />(으)로 로그인하세요.</translation>
 <translation id="3735758079232443276">Chrome을 시작하면 표시되는 페이지가 '<ph name="EXTENSION_NAME" />' 확장 프로그램으로 인해 변경되었습니다.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{1일 이내로 Chrome을 다시 시작해 주세요}other{#일 이내로 Chrome을 다시 시작해 주세요}}</translation>
 <translation id="424864128008805179">Chrome에서 로그아웃하시겠습니까?</translation>
 <translation id="4251615635259297716">Chrome 데이터를 이 계정에 연결하시겠습니까?</translation>
-<translation id="4251625577313994583">iPhone에 Chrome 다운로드하기</translation>
 <translation id="4293420128516039005">로그인하여 모든 기기에서 Chrome을 동기화하고 맞춤설정하세요.</translation>
 <translation id="4328355335528187361">Chrome 개발자(mDNS-In)</translation>
 <translation id="4331809312908958774">크롬 OS</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">Google 검색과 동일한 맞춤법 검사기가 사용됩니다. 브라우저에 입력되는 텍스트는 Google로 전송됩니다. 설정에서 언제든지 이 동작을 변경할 수 있습니다.</translation>
 <translation id="4891791193823137474">백그라운드에서 Chrome을 실행</translation>
 <translation id="4895437082222824641">새 Chrome 탭에서 링크 열기(&amp;T)</translation>
-<translation id="4921569541910214635">컴퓨터를 공유하시겠습니까? 이제 원하는 대로 Chrome을 설정할 수 있습니다.</translation>
 <translation id="4953650215774548573">Chrome을 기본 브라우저로 설정</translation>
 <translation id="495931528404527476">Chrome</translation>
 <translation id="4990567037958725628">Chrome 카나리아</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">다시 시작</translation>
 <translation id="5940385492829620908">웹, 북마크 및 기타 Chrome 콘텐츠가 여기에 저장됩니다.</translation>
 <translation id="5941830788786076944">Chrome을 기본 브라우저로</translation>
-<translation id="6014844626092547096">Chrome에 로그인했습니다. 관리자가 동기화를 사용 중지했습니다.</translation>
-<translation id="6040143037577758943">닫기</translation>
 <translation id="6070348360322141662">보안 강화를 위해 Chrome에서 사용자 데이터를 암호화합니다.</translation>
 <translation id="6113794647360055231">더욱 업그레이드된 Chrome</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Chrome</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">Chrome OS는 추가 <ph name="BEGIN_LINK_CROS_OSS" />오픈소스 소프트웨어<ph name="END_LINK_CROS_OSS" />를 사용했습니다.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - 개발자용 Chrome</translation>
 <translation id="6566149418543181476">Chrome 업데이트 중(<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Chrome 콘텐츠를 동기화하기 위해 <ph name="PROFILE_EMAIL" />을(를) 사용 중입니다. 동기화 환경설정을 업데이트하거나 Google 계정 없이 Chrome을 사용하려면 <ph name="SETTINGS_LINK" />(으)로 이동하세요.</translation>
-<translation id="6600954340915313787">Chrome에 복사됨</translation>
 <translation id="6676384891291319759">인터넷 연결</translation>
 <translation id="6679975945624592337">백그라운드에서 Chrome을 실행</translation>
 <translation id="6750954913813541382">맞춤법 오류를 바로잡기 위해 Chrome에서 브라우저에 입력된 텍스트를 Google로 전송합니다.</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Chrome이 업데이트되었지만, 최소 30일 동안 사용하지 않았습니다.</translation>
 <translation id="7098166902387133879">Chrome에서 마이크를 사용 중입니다.</translation>
 <translation id="7106741999175697885">작업 관리자 - Chrome</translation>
-<translation id="7164397146364144019">Google에 발생할 수 있는 보안 문제에 대한 세부정보를 자동으로 보고하도록 설정하면 Chrome을 더 안전하고 편리하게 사용할 수 있습니다.</translation>
 <translation id="7242029209006116544">관리 계정으로 로그인하고 관리자에게 Chrome 프로필에 대한 제어권을 부여하려고 합니다. 앱, 북마크, 방문 기록, 비밀번호 및 기타 설정과 같은 Chrome 데이터가 <ph name="USER_NAME" /> 계정에 영구적으로 연결됩니다. 이후 이 데이터를 Google 계정 대시보드에서 삭제할 수는 있지만 다른 계정에 연결할 수는 없습니다. 기존 Chrome 데이터를 유지하려면 새 프로필을 만드는 방법이 있습니다. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Chrome UI가 이 언어로 표시됩니다.</translation>
 <translation id="7296210096911315575">사용 및 안전 관련 주요 정보</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464"><ph name="USER_EMAIL_ADDRESS" />(으)로 Chrome에 로그인되어 있습니다. 같은 계정으로 다시 로그인해 주세요.</translation>
 <translation id="7408085963519505752">Chrome OS 이용약관</translation>
 <translation id="7419046106786626209">내 도메인에서 동기화를 사용할 수 없으므로 Chrome OS에서 데이터를 동기화하지 못했습니다.</translation>
-<translation id="7459554271817304652">맞춤설정한 브라우저 기능을 웹에 저장하고 모든 컴퓨터의 Chrome에서 액세스할 수 있도록 동기화를 설정합니다.</translation>
 <translation id="7486227612705979895">Chrome에서 내 드라이브에 액세스하여 주소 표시줄에 추천 검색어를 표시합니다.</translation>
 <translation id="7531671357096394523">모든 Chrome 버전 종료</translation>
 <translation id="7535429826459677826">Chrome 개발자</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">Windows XP와 Windows Vista가 더 이상 지원되지 않으므로 이 컴퓨터에서 Chrome 업데이트를 받을 수 없게 됩니다</translation>
 <translation id="8008534537613507642">Chrome 재설치</translation>
 <translation id="8013993649590906847">이미지에 유용한 설명이 없으면 Chrome에서 자동으로 설명을 제공하려고 시도합니다. 설명을 생성하기 위해 이미지가 Google로 전송됩니다.</translation>
-<translation id="8032142183999901390">Chrome에서 계정을 삭제한 후 열려 있는 탭을 새로고침해야 적용됩니다.</translation>
 <translation id="8129812357326543296">Chrome 정보(&amp;G)</translation>
-<translation id="8179874765710681175">휴대전화에 Chrome을 설치하세요. 휴대전화로 SMS를 보내 드리겠습니다.</translation>
-<translation id="825412236959742607">페이지에서 너무 많은 메모리를 사용하므로 Chrome에서 일부 콘텐츠를 삭제했습니다.</translation>
 <translation id="8255190535488645436">Chrome에서 카메라와 마이크를 사용 중입니다.</translation>
 <translation id="8286862437124483331">Chrome에서 비밀번호를 표시하려고 합니다. 허용하려면 Windows 비밀번호를 입력하세요.</translation>
 <translation id="8290100596633877290">Chrome이 다운되었습니다. 다시 시작하시겠습니까?</translation>
 <translation id="8342675569599923794">이 파일은 위험하므로 Chrome에서 차단했습니다.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. All rights reserved.</translation>
 <translation id="840084489713044809">Chrome에서 비밀번호를 내보내려고 합니다.</translation>
-<translation id="8406086379114794905">더 나은 Chrome을 만들 수 있도록 도와주세요.</translation>
 <translation id="8455999171311319804">선택사항: 진단 및 사용 데이터가 Google로 자동 전송되도록 선택하면 Chrome OS 개선에 도움이 됩니다.</translation>
-<translation id="8478823064122749032">휴대전화에 Chrome을 설치하세요. 다음의 계정 복구 전화번호로 SMS를 보내 드리겠습니다. <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Chrome 특별 보안 업데이트를 방금 적용했습니다. 다시 시작하면 탭이 복원됩니다.</translation>
 <translation id="8521348052903287641">Chrome 개발자에서 mDNS 트래픽을 허용할 때 사용되는 인바운드 규칙입니다.</translation>
 <translation id="8540666473246803645">Chrome</translation>
-<translation id="8547799825197623713">Chrome 앱 런처 카나리아</translation>
 <translation id="8556340503434111824">이전보다 더 빨라진 Chrome 새 버전을 사용할 수 있습니다.</translation>
-<translation id="8568392309447938879">앱을 사용하려면 Chrome에 로그인해야 합니다. 로그인하면 Chrome이 기기 간에 앱, 북마크, 방문 기록, 비밀번호 및 기타 설정을 동기화할 수 있습니다.</translation>
 <translation id="8606668294522778825">Chrome에서 사용자에게 더 나은 인터넷 사용 환경을 제공하기 위해 웹 서비스를 사용할 수 있습니다. 원하는 경우 서비스를 사용 중지하실 수 있습니다. <ph name="BEGIN_LINK" />자세히 알아보기<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Chrome이 응답하지 않습니다. 다시 시작하시겠습니까?</translation>
 <translation id="8625237574518804553">{0,plural, =1{1분 후 Chrome이 다시 시작됩니다}other{#분 후 Chrome이 다시 시작됩니다}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_lt.xtb b/chrome/app/resources/google_chrome_strings_lt.xtb
index 4280d63..69611cc 100644
--- a/chrome/app/resources/google_chrome_strings_lt.xtb
+++ b/chrome/app/resources/google_chrome_strings_lt.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">„Chrome“ OS negali sinchronizuoti duomenų. Atnaujinkite sinchronizavimo slaptafrazę.</translation>
 <translation id="1302523850133262269">Palaukite, kol „Chrome“ įdiegs naujausius sistemos naujinius.</translation>
 <translation id="137466361146087520">„Google Chrome“ beta</translation>
-<translation id="1393853151966637042">Gauti su „Chrome“ naudojimu susijusios pagalbos</translation>
 <translation id="1399397803214730675">Kompiuteryje jau yra naujausia „Google Chrome“ versija. Jei programinė įranga neveikia, pašalinkite „Google Chrome“ ir bandykite dar kartą.</translation>
 <translation id="1434626383986940139">„Chrome“ programos („Canary“)</translation>
-<translation id="1469002951682717133">„Chrome“ programų paleidimo priemonė</translation>
 <translation id="1553358976309200471">Atnaujinkite „Chrome“</translation>
 <translation id="1587223624401073077">„Google Chrome“ naudoja jūsų fotoaparatą.</translation>
 <translation id="1587325591171447154">Failas „<ph name="FILE_NAME" />“ pavojingas, todėl „Chrome“ jį užblokavo.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">„Chrome“ išsaugos šį slaptažodį „Google“ paskyroje. Jums nereikia jo prisiminti.</translation>
 <translation id="174539241580958092">„Google Chrome“ negali sinchronizuoti duomenų, nes prisijungiant įvyko klaida.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Gauti su „Chrome“ OS naudojimu susijusios pagalbos</translation>
-<translation id="1795405610103747296">Įdiekite „Chrome“ telefone. Išsiųsime SMS pranešimą jūsų telefono numeriu: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Jei išjungsite šį nustatymą, prie „Google“ svetainių galėsite prisijungti kaip prie „Gmail“ neprisijungę prie „Chrome“</translation>
 <translation id="1860536484129686729">„Chrome“ reikia leidimo, kad galėtų naudoti fotoaparatą šioje svetainėje</translation>
 <translation id="1873233029667955273">„Google Chrome“ nėra numatytoji naršyklė</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">Jei reikia išsamios informacijos apie „Chrome“ OS, žr. <ph name="LINK_BEGIN" />
       „Apie „Chrome“ OS“<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Dabar iš naujo paleiskite „Chrome“</translation>
-<translation id="216054706567564023">Įdiekite „Chrome“ telefone. Išsiųsime SMS pranešimą paskyros atkūrimo telefono numeriu.</translation>
 <translation id="2246246234298806438">„Google Chrome“ negali rodyti spaudinio peržiūros, kai nėra integruotos PDF žiūryklės.</translation>
-<translation id="2252923619938421629">Padėkite pagerinti „Google Chrome“ pateikę ataskaitą apie dabartinius nustatymus</translation>
-<translation id="2286950485307333924">Esate prisijungę prie „Chrome“</translation>
 <translation id="2290014774651636340">Trūksta „Google“ API raktų. Bus išjungtos kai kurios „Google Chrome“ funkcijos.</translation>
 <translation id="2290095356545025170">Ar tikrai norite pašalinti „Google Chrome“?</translation>
 <translation id="2309047409763057870">Tai yra antrinis „Google Chrome“ diegimas, todėl ji negali būti nustatyta kaip numatytoji naršyklė.</translation>
-<translation id="2346876346033403680">Kažkas anksčiau prisijungė prie „Chrome“ šiame kompiuteryje kaip <ph name="ACCOUNT_EMAIL_LAST" />. Jei tai ne jūsų paskyra, sukurkite naują „Chrome“ naudotoją, kad apsaugotumėte savo informaciją.
-
-Prisijungus bet kuriuo būdu, „Chrome“ informacija, pvz., žymės, istorija ir kiti nustatymai, bus sujungta su <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">„Chrome“ reikia leidimo, kad galėtų naudoti fotoaparatą ir mikrofoną šioje svetainėje</translation>
 <translation id="2429317896000329049">„Google Chrome“ negali sinchronizuoti duomenų, nes jūsų domene sinchronizavimas nepasiekiamas.</translation>
 <translation id="2467438592969358367">„Google Chrome“ nori eksportuoti jūsų slaptažodžius. Įveskite „Windows“ slaptažodį, kad tai leistumėte.</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">Esate prisijungę prie „Chrome“.</translation>
 <translation id="2888126860611144412">Apie „Chrome“</translation>
 <translation id="3037838751736561277">„Google Chrome“ veikia fono režimu.</translation>
-<translation id="3047079729301751317">Atjungus <ph name="USERNAME" />, bus išvalyta jūsų istorija, žymės, nustatymai ir kiti „Chrome“ duomenys, saugomi šiame įrenginyje. „Google“ paskyroje saugomi duomenys nebus išvalyti. Juos galite tvarkyti <ph name="GOOGLE_DASHBOARD_LINK" />„Google“ informacijos suvestinėje<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">„Chrome“ skirtukas</translation>
 <translation id="3080151273017101988">Uždarius „Google Chrome“ toliau leisti fono programas</translation>
 <translation id="3089968997497233615">Galima nauja, saugesnė „Google Chrome“ versija.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">Sinchronizuokite ir suasmeninkite „Chrome“ skirtinguose įrenginiuose</translation>
 <translation id="3622797965165704966">Dabar galite lengviau naudoti „Chrome“ naudodami „Google“ paskyrą ir bendrinamus kompiuterius.</translation>
 <translation id="3637702109597584617">„Google Chrome“ OS <ph name="TERMS_OF_SERVICE_LINK" />paslaugų teikimo sąlygos<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Šis puslapis naudoja per daug atminties, todėl „Chrome“ jį pristabdė.</translation>
 <translation id="3718181793972440140">Atlikus šį veiksmą iš šio įrenginio bus ištrintas 1 elementas. Jei vėliau norėsite atgauti duomenis, prisijunkite prie „Chrome“ kaip <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Plėtinys „<ph name="EXTENSION_NAME" />“ pakeitė, kuris puslapis rodomas paleidus „Chrome“.</translation>
 <translation id="3780814664026482060">„Chrome“ – „<ph name="PAGE_TITLE" />“</translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{„Chrome“ paleidimas iš naujo po dienos}one{„Chrome“ paleidimas iš naujo po # dienos}few{„Chrome“ paleidimas iš naujo po # dienų}many{„Chrome“ paleidimas iš naujo po # dienos}other{„Chrome“ paleidimas iš naujo po # dienų}}</translation>
 <translation id="424864128008805179">Atsijungti nuo „Chrome“?</translation>
 <translation id="4251615635259297716">Susisieti „Chrome“ duomenis su šia paskyra?</translation>
-<translation id="4251625577313994583">gauti „Chrome“ „iPhone“ įrenginyje</translation>
 <translation id="4293420128516039005">Prisijunkite, kad galėtumėte sinchronizuoti ir suasmeninti „Chrome“ skirtinguose įrenginiuose</translation>
 <translation id="4328355335528187361">„Google Chrome Dev“ („mDNS-In“)</translation>
 <translation id="4331809312908958774">„Chrome“ OS</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">Naudojamas tas pats rašybos tikrinimas kaip ir „Google“ paieškoje. Tekstas, kurį įvedate naršyklėje, nusiunčiamas „Google“. Šį veikimą visada galite pakeisti nustatymuose.</translation>
 <translation id="4891791193823137474">Paleisti „Google Chrome“ fone</translation>
 <translation id="4895437082222824641">Atidaryti nuorodą naujame „Chrome“ &amp;skirtuke</translation>
-<translation id="4921569541910214635">Bendrinate kompiuterį? Dabar galite nustatyti „Chrome“ kaip tik norite.</translation>
 <translation id="4953650215774548573">Nustatyti „Google Chrome“ kaip numatytąją naršyklę</translation>
 <translation id="495931528404527476">Naudojant „Chrome“</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">Paleisti iš naujo</translation>
 <translation id="5940385492829620908">Čia saugoma žiniatinklio informacija, žymės ir kiti „Chrome“ duomenys.</translation>
 <translation id="5941830788786076944">Padarykite „Google Chrome“ numatytąja naršykle</translation>
-<translation id="6014844626092547096">Dabar esate prisijungę prie „Chrome“. Administratorius neleidžia sinchronizuoti.</translation>
-<translation id="6040143037577758943">Uždaryti</translation>
 <translation id="6070348360322141662">Kad būtų papildomai užtikrintas saugumas, „Google Chrome“ užšifruos duomenis</translation>
 <translation id="6113794647360055231">„Chrome“ dabar dar tobulesnė</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" />– „Google Chrome“</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">„Chrome“ OS galima naudojant papildomą <ph name="BEGIN_LINK_CROS_OSS" />atvirojo šaltinio programinę įrangą<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556">„<ph name="PAGE_TITLE" />“ – „Google Chrome Dev“</translation>
 <translation id="6566149418543181476">Atnaujinama „Google Chrome“ (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Sinchronizuoti „Chrome“ duomenims naudojate <ph name="PROFILE_EMAIL" />. Jei norite atnaujinti sinchronizavimo nuostatą arba naudoti „Chrome“ be „Google“ paskyros, apsilankykite <ph name="SETTINGS_LINK" /> skiltyje.</translation>
-<translation id="6600954340915313787">Nukopijuota į „Chrome“</translation>
 <translation id="6676384891291319759">Interneto prieiga</translation>
 <translation id="6679975945624592337">„Google Chrome“ leidimas fone</translation>
 <translation id="6750954913813541382">Kad ištaisytų rašybos klaidas, „Chrome“ tekstą, kurį įvedate naršyklėje, siunčia „Google“</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">„Google Chrome“ atnaujinta, tačiau jos nenaudojote mažiausiai 30 dienų.</translation>
 <translation id="7098166902387133879">„Google Chrome“ naudoja jūsų mikrofoną.</translation>
 <translation id="7106741999175697885">Užduočių tvarkytuvė – „Google Chrome“</translation>
-<translation id="7164397146364144019">Galite padėti sustiprinti „Chrome“ saugą ir palengvinti jos naudojimą automatiškai „Google“ pateikdami išsamią informaciją apie galimas saugos problemas.</translation>
 <translation id="7242029209006116544">Prisijungiate su valdoma paskyra ir leidžiate jos administratoriui valdyti jūsų „Google Chrome“ profilį. „Chrome“ duomenys, pvz., programos, žymės, istorija, slaptažodžiai ir kiti nustatymai, bus visam laikui susieti su <ph name="USER_NAME" />. Galėsite ištrinti šiuos duomenis naudodami „Google“ paskyrų informacijos suvestinę, bet negalėsite susieti šių duomenų su kita paskyra. Galite pasirinktinai sukurti naują profilį, kad esami „Chrome“ duomenys būtų saugomi atskirai. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Ši kalba vartojama „Google Chrome“ NS pateikti</translation>
 <translation id="7296210096911315575">Svarbi naudojimo ir saugos informacija</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">Buvote prisijungę prie „Chrome“ kaip <ph name="USER_EMAIL_ADDRESS" />. Prisijungdami vėl naudokite tą pačią paskyrą.</translation>
 <translation id="7408085963519505752">„Chrome“ OS sąlygos</translation>
 <translation id="7419046106786626209">„Chrome“ OS negali sinchronizuoti duomenų, nes jūsų domene sinchronizavimas nepasiekiamas.</translation>
-<translation id="7459554271817304652">Nustatykite sinchronizavimą, kad žiniatinklyje išsaugotumėte suasmenintas naršyklės funkcijas ir pasiektumėte jas iš „Google Chrome“ bet kuriuo kompiuteriu.</translation>
 <translation id="7486227612705979895">„Chrome“ turės prieigą prie Disko, kad galėtų teikti pasiūlymus adreso juostoje</translation>
 <translation id="7531671357096394523">Uždarykite visas „Chrome“ kopijas.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">Šiame kompiuteryje nebebus gaunami „Google Chrome“ naujiniai, nes „Windows XP“ ir „Windows Vista“ nebepalaikomos.</translation>
 <translation id="8008534537613507642">Iš naujo įdiegti „Chrome“</translation>
 <translation id="8013993649590906847">Jei nebus naudingo vaizdo aprašo, „Chrome“ bandys jums jį pateikti. Kad būtų galima kurti aprašus, vaizdai siunčiami į sistemą „Google“.</translation>
-<translation id="8032142183999901390">Pašalinus paskyrą iš „Chrome“, galbūt reikės iš naujo įkelti skirtukus, kad pakeitimai įsigaliotų.</translation>
 <translation id="8129812357326543296">Apie „&amp;Google Chrome“</translation>
-<translation id="8179874765710681175">Įdiekite „Chrome“ telefone. Išsiųsime SMS pranešimą jūsų telefonu.</translation>
-<translation id="825412236959742607">Šis puslapis naudoja per daug atminties, todėl „Chrome“ pašalino šiek tiek turinio.</translation>
 <translation id="8255190535488645436">„Google Chrome“ naudoja jūsų fotoaparatą ir mikrofoną.</translation>
 <translation id="8286862437124483331">„Google Chrome“ bando rodyti slaptažodžius. Įveskite „Windows“ slaptažodį, kad tai leistumėte.</translation>
 <translation id="8290100596633877290">Oi! „Google Chrome“ užstrigo. Paleisti iš naujo dabar?</translation>
 <translation id="8342675569599923794">Šis failas pavojingas, todėl „Chrome“ jį užblokavo.</translation>
 <translation id="8370517070665726704">Autorių teisės „Google LLC.“, <ph name="YEAR" /> m. Visos teisės saugomos.</translation>
 <translation id="840084489713044809">„Google Chrome“ nori eksportuoti jūsų slaptažodžius.</translation>
-<translation id="8406086379114794905">Padėkite tobulinti „Chrome“</translation>
 <translation id="8455999171311319804">Pasirenkama: padėkite patobulinti „Chrome“ OS automatiškai siųsdami diagnostikos ir naudojimo duomenis į sistemą „Google“.</translation>
-<translation id="8478823064122749032">Įdiekite „Chrome“ telefone. Išsiųsime SMS pranešimą paskyros atkūrimo telefono numeriu: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Ką tik pritaikytas specialus „Google Chrome“ skirtas saugos naujinys. Dabar paleiskite naršyklę iš naujo ir atkursime visus skirtukus.</translation>
 <translation id="8521348052903287641">„Dev“ versijos „Google Chrome“ skirta taisyklė, pagal kurią leidžiamas gaunamas mDNS srautas.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">„Chrome“ programų paleidimo priemonė („Canary“)</translation>
 <translation id="8556340503434111824">Galima nauja „Google Chrome“ versija, kuri greitesnė nei bet kada.</translation>
-<translation id="8568392309447938879">Jei norite naudoti programas, turite būti prisijungę prie „Chrome“. Tada „Chrome“ galės sinchronizuoti jūsų programas, žymes, istoriją, slaptažodžius ir kitus nustatymus įrenginiuose.</translation>
 <translation id="8606668294522778825">„Google Chrome“ gali naudoti žiniatinklio paslaugas naršymo patirčiai pagerinti. Galite pasirinktinai išjungti šias paslaugas. <ph name="BEGIN_LINK" />Sužinokite daugiau<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">„Google Chrome“ neatsako. Paleisti iš naujo dabar?</translation>
 <translation id="8625237574518804553">{0,plural, =1{„Chrome“ bus paleista iš naujo po 1 minutės}one{„Chrome“ bus paleista iš naujo po # minutės}few{„Chrome“ bus paleista iš naujo po # minučių}many{„Chrome“ bus paleista iš naujo po # minutės}other{„Chrome“ bus paleista iš naujo po # minučių}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_lv.xtb b/chrome/app/resources/google_chrome_strings_lv.xtb
index 76d61aa..9f7cdb7 100644
--- a/chrome/app/resources/google_chrome_strings_lv.xtb
+++ b/chrome/app/resources/google_chrome_strings_lv.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS nevarēja sinhronizēt jūsu datus. Lūdzu, atjauniniet savu sinhronizācijas ieejas frāzi.</translation>
 <translation id="1302523850133262269">Lūdzu, uzgaidiet, kamēr Chrome instalē jaunākos sistēmas atjauninājumus.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Saņemt palīdzību par Chrome izmantošanu</translation>
 <translation id="1399397803214730675">Šim datoram jau ir instalēta jaunākā Google Chrome versija. Ja programmatūra nedarbojas, atinstalējiet Google Chrome un mēģiniet vēlreiz.</translation>
 <translation id="1434626383986940139">Chrome Canary lietotnes</translation>
-<translation id="1469002951682717133">Chrome lietotņu palaišanas programma</translation>
 <translation id="1553358976309200471">Atjaunināt Chrome</translation>
 <translation id="1587223624401073077">Pārlūkā Google Chrome tiek izmantota kamera.</translation>
 <translation id="1587325591171447154">Fails <ph name="FILE_NAME" /> ir bīstams, tādēļ Chrome to bloķēja.</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">Pārlūks Chrome saglabās šo paroli jūsu Google kontā. To nav nepieciešams iegaumēt.</translation>
 <translation id="174539241580958092">Google Chrome nevarēja sinhronizēt jūsu datus pierakstīšanās kļūdas dēļ.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Saņemt palīdzību par Chrome OS izmantošanu</translation>
-<translation id="1795405610103747296">Instalējiet pārlūku Chrome savā tālrunī. Mēs nosūtīsim īsziņu uz jūsu tālruņa numuru: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="1812689907177901597">Ja izslēgsiet šo iestatījumu, varēsiet pierakstīties Google vietnēs, piemēram, pakalpojumā Gmail, nepierakstoties pārlūkā Chrome.</translation>
 <translation id="1860536484129686729">Pārlūkam Chrome ir nepieciešama atļauja piekļūt jūsu kamerai šajā vietnē.</translation>
 <translation id="1873233029667955273">Google Chrome nav jūsu noklusējuma pārlūks.</translation>
@@ -54,16 +50,10 @@
 <translation id="2128103434102193461">Detalizētu informāciju par Chrome OS skatiet lapā <ph name="LINK_BEGIN" />
       Par Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Lūdzu, nekavējoties restartējiet pārlūku Chrome</translation>
-<translation id="216054706567564023">Instalējiet pārlūku Chrome savā tālrunī. Mēs nosūtīsim īsziņu uz jūsu konta atkopšanas tālruņa numuru.</translation>
 <translation id="2246246234298806438">Pārlūks Google Chrome nevar parādīt drukas priekšskatījumu, ja nav pieejams iebūvētais PDF skatītājs.</translation>
-<translation id="2252923619938421629">Palīdziet uzlabot pārlūku Google Chrome, ziņojot par pašreizējiem iestatījumiem.</translation>
-<translation id="2286950485307333924">Jūs esat pierakstījies pārlūkā Chrome</translation>
 <translation id="2290014774651636340">Trūkst Google API atslēgu. Tiks atspējotas dažas Google Chrome funkcijas.</translation>
 <translation id="2290095356545025170">Vai tiešām vēlaties atinstalēt Google Chrome?</translation>
 <translation id="2309047409763057870">Šī ir Google Chrome papildu instalācija, un to nevar izmantot kā noklusējuma pārlūku.</translation>
-<translation id="2346876346033403680">Kāds iepriekš pierakstījās pārlūkā Chrome šajā datorā, izmantojot e-pasta adresi <ph name="ACCOUNT_EMAIL_LAST" />. Ja tas nav jūsu konts, izveidojiet jaunu Chrome profilu, lai jūsu informācija tiktu glabāta atsevišķi.
-
-Ja pierakstīsieties tik un tā, Chrome informācija, piemēram, grāmatzīmes, vēsture un citi iestatījumi, tiks apvienota ar konta <ph name="ACCOUNT_EMAIL_NEW" /> informāciju.</translation>
 <translation id="2348335408836342058">Pārlūkam Chrome ir nepieciešama atļauja piekļūt jūsu kamerai un mikrofonam šajā vietnē.</translation>
 <translation id="2429317896000329049">Google Chrome nevarēja sinhronizēt jūsu datus, jo jūsu domēnam nav pieejama sinhronizācija.</translation>
 <translation id="2467438592969358367">Pārlūkā Google Chrome tiek mēģināts eksportēt jūsu paroles. Lai to atļautu, ierakstiet savu Windows paroli.</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">Esat pierakstījies pārlūkā Chrome!</translation>
 <translation id="2888126860611144412">Par Chrome</translation>
 <translation id="3037838751736561277">Google Chrome darbojas fona režīmā.</translation>
-<translation id="3047079729301751317">Atvienojot lietotāju <ph name="USERNAME" />, tiks notīrīta vēsture, grāmatzīmes, iestatījumi un citi Chrome dati, kas ir saglabāti šajā ierīcē. Jūsu Google kontā saglabātie dati netiks notīrīti, un tos var pārvaldīt <ph name="GOOGLE_DASHBOARD_LINK" />Google informācijas panelī<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chrome cilne</translation>
 <translation id="3080151273017101988">Turpināt lietotņu izpildi fonā, kad Google Chrome ir aizvērts</translation>
 <translation id="3089968997497233615">Ir pieejama jauna un drošāka Google Chrome versija.</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">Chrome sinhronizēšana un personalizēšana visās jūsu ierīcēs</translation>
 <translation id="3622797965165704966">Tagad pārlūkā Chrome ir vieglāk izmantot Google kontu, kā arī ir atvieglota lietošana datoros, ko izmanto vairākas personas.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />pakalpojumu sniegšanas noteikumi<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Šī lapa izmanto pārāk daudz atmiņas, tādēļ Chrome to apturēja.</translation>
 <translation id="3718181793972440140">Veicot šo darbību, no šīs ierīces tiks dzēsts 1 vienums. Lai vēlāk izgūtu datus, pierakstieties pārlūkā Chrome kā <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Paplašinājums “<ph name="EXTENSION_NAME" />” mainīja iestatījumu, kura lapa tiek parādīta, palaižot pārlūku Chrome.</translation>
 <translation id="3780814664026482060">Chrome — <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Restartējiet pārlūku Chrome vienas dienas laikā}zero{Restartējiet pārlūku Chrome # dienu laikā}one{Restartējiet pārlūku Chrome # dienas laikā}other{Restartējiet pārlūku Chrome # dienu laikā}}</translation>
 <translation id="424864128008805179">Vai izrakstīties no pārlūka Chrome?</translation>
 <translation id="4251615635259297716">Vai saistīt Chrome datus ar šo kontu?</translation>
-<translation id="4251625577313994583">Iegūt Chrome savā iPhone tālrunī</translation>
 <translation id="4293420128516039005">Pierakstieties, lai sinhronizētu un personalizētu Chrome visās savās ierīcēs.</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">Šeit tiek izmantota tāds pats pareizrakstības pārbaudītājs, kāds tiek izmantots Google meklēšanā. Pārlūkprogrammā ievadītais teksts tiek nosūtīts Google serveriem. Jebkurā brīdī varat mainīt šo darbību iestatījumos.</translation>
 <translation id="4891791193823137474">Ļaut Google Chrome darboties fonā</translation>
 <translation id="4895437082222824641">Atvērt saiti jaunā Chrome &amp;cilnē</translation>
-<translation id="4921569541910214635">Vai datoru izmanto vairāki lietotāji? Tagad varat iestatīt pārlūku Chrome atbilstoši savām vajadzībām.</translation>
 <translation id="4953650215774548573">Iestatīt Google Chrome kā manu noklusējuma pārlūku</translation>
 <translation id="495931528404527476">Pārlūkprogrammā Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -176,8 +162,6 @@
 <translation id="5895138241574237353">Restartēt</translation>
 <translation id="5940385492829620908">Šeit atrodas jūsu tīmekļa saturs, grāmatzīmes un cits Chrome saturs.</translation>
 <translation id="5941830788786076944">Izveidot Google Chrome par noklusējuma pārlūku</translation>
-<translation id="6014844626092547096">Jūs esat pierakstījies pārlūkā Chrome. Jūsu administrators ir atspējojis sinhronizēšanu.</translation>
-<translation id="6040143037577758943">Aizvērt</translation>
 <translation id="6070348360322141662">Papildu drošības nolūkos Google Chrome šifrēs jūsu datus.</translation>
 <translation id="6113794647360055231">Pārlūkā Chrome ir veikti uzlabojumi</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -190,8 +174,6 @@
 <translation id="6368958679917195344">Chrome OS ir kļuvusi iespējama, pateicoties papildu <ph name="BEGIN_LINK_CROS_OSS" />atklātā pirmkoda programmatūrai<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> — Google Chrome izstrādātāju versija</translation>
 <translation id="6566149418543181476">Notiek Google Chrome atjaunināšana (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Chrome satura sinhronizēšanai jūs izmantojat kontu <ph name="PROFILE_EMAIL" />. Lai atjauninātu savas sinhronizācijas preferences vai izmantotu Chrome ierīci bez Google konta, dodieties uz: <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Nokopēta pārlūkā Chrome.</translation>
 <translation id="6676384891291319759">Piekļūt internetam</translation>
 <translation id="6679975945624592337">Ļaut pārlūkam Google Chrome darboties fonā</translation>
 <translation id="6750954913813541382">Lai labotu pareizrakstības kļūdas, Chrome nosūta jūsu pārlūkprogrammā ievadīto tekstu Google serveriem</translation>
@@ -205,7 +187,6 @@
 <translation id="6989339256997917931">Pārlūkprogramma Google Chrome ir atjaunināta, bet jūs neesat to izmantojis vismaz 30 dienas.</translation>
 <translation id="7098166902387133879">Pārlūkā Google Chrome tiek izmantots mikrofons.</translation>
 <translation id="7106741999175697885">Uzdevumu pārvaldnieks - Google Chrome</translation>
-<translation id="7164397146364144019">Varat palīdzēt uzlabot Chrome drošību un lietošanas ērtumu, automātiski nosūtot Google serveriem informāciju par iespējamām drošības problēmām.</translation>
 <translation id="7242029209006116544">Jūs pierakstāties ar pārvaldītu kontu un nodrošināt, ka tā administrators var pārvaldīt jūsu Google Chrome profilu. Jūsu Chrome dati, piemēram, lietotnes, grāmatzīmes, vēsture, paroles un citi iestatījumi tiks neatgriezeniski saistīti ar lietotāju <ph name="USER_NAME" />. Varēsiet dzēst šos datus, izmantojot Google kontu informācijas paneli, taču nevarēsiet saistīt šos datus ar citu kontu. Ja vēlaties, varat izveidot jaunu profilu, lai atsevišķi glabātu Chrome datus. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Šī valoda tiek izmantota, lai attēlotu Google Chrome lietotāja saskarni</translation>
 <translation id="7296210096911315575">Svarīga informācija par izmantošanu un drošību</translation>
@@ -214,7 +195,6 @@
 <translation id="7398801000654795464">Pārlūkā Chrome iepriekš pierakstījāties kā lietotājs <ph name="USER_EMAIL_ADDRESS" />. Lai pierakstītos vēlreiz, lūdzu, izmantojiet to pašu kontu.</translation>
 <translation id="7408085963519505752">Chrome OS noteikumi</translation>
 <translation id="7419046106786626209">Chrome OS nevarēja sinhronizēt jūsu datus, jo sinhronizācija jūsu domēnā nav pieejama.</translation>
-<translation id="7459554271817304652">Iestatiet sinhronizāciju, lai saglabātu savas personalizētās pārlūka funkcijas tīmeklī un piekļūtu tām no pārlūka Google Chrome jebkurā datorā.</translation>
 <translation id="7486227612705979895">Pārlūkā Chrome tiks izmantota Diskā pieejamā informācija, lai adrešu joslā piedāvātu ieteikumus</translation>
 <translation id="7531671357096394523">Aizveriet visas Chrome kopijas.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -238,25 +218,18 @@
 <translation id="7962410387636238736">Šajā datorā vairs netiks saņemti Google Chrome atjauninājumi, jo operētājsistēmas Windows XP un Windows Vista vairs netiek atbalstītas.</translation>
 <translation id="8008534537613507642">Pārinstalēt Chrome</translation>
 <translation id="8013993649590906847">Ja attēlam nav vērtīga apraksta, pārlūks Chrome mēģinās jums tādu nodrošināt. Lai izveidotu aprakstus, attēli tiek nosūtīti uzņēmumam Google.</translation>
-<translation id="8032142183999901390">Kad konts būs noņemts no Chrome, iespējams, būs atkārtoti jāielādē atvērtās cilnes, lai izmaiņas stātos spēkā.</translation>
 <translation id="8129812357326543296">Par &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Instalējiet pārlūkprogrammu Chrome savā tālrunī. Mēs nosūtīsim īsziņu uz jūsu tālruņa numuru.</translation>
-<translation id="825412236959742607">Šī lapa izmanto pārāk daudz atmiņas, tādēļ pārlūks Chrome noņēma daļu satura.</translation>
 <translation id="8255190535488645436">Pārlūkā Google Chrome tiek izmantota kamera un mikrofons.</translation>
 <translation id="8286862437124483331">Google Chrome mēģina rādīt paroles. Lai to atļautu, ierakstiet savu Windows paroli.</translation>
 <translation id="8290100596633877290">Eh! Google Chrome ir avarējis. Vai restartēt to tūlīt?</translation>
 <translation id="8342675569599923794">Šis fails ir bīstams, tāpēc Chrome to bloķēja.</translation>
 <translation id="8370517070665726704">Autortiesības: <ph name="YEAR" /> Google LLC. Visas tiesības paturētas.</translation>
 <translation id="840084489713044809">Pārlūkā Google Chrome tiek mēģināts eksportēt jūsu paroles.</translation>
-<translation id="8406086379114794905">Palīdziet uzlabot Chrome</translation>
 <translation id="8455999171311319804">Neobligāti: palīdziet uzlabot Chrome OS, automātiski nosūtot Google serveriem diagnostikas un lietojuma datus.</translation>
-<translation id="8478823064122749032">Instalējiet pārlūku Chrome savā tālrunī. Mēs nosūtīsim īsziņu uz jūsu konta atkopšanas tālruņa numuru: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8498858610309223613">Tikko tika piemērots īpašs Google Chrome drošības atjauninājums. Restartējiet tūlīt, un mēs atjaunosim jūsu cilnes.</translation>
 <translation id="8521348052903287641">Ienākošo savienojumu kārtula pārlūkam Google Chrome Dev, lai atļautu mDNS datplūsmu.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome lietotņu palaišanas programma kanālam Canary</translation>
 <translation id="8556340503434111824">Ir pieejama jauna Google Chrome versija, un tā ir ātrāka nekā jebkad agrāk.</translation>
-<translation id="8568392309447938879">Lai izmantotu lietotnes, jums ir jāpierakstās pārlūkā Chrome. Tādējādi pārlūkā Chrome var sinhronizēt jūsu lietotnes, grāmatzīmes, vēsturi, paroles un citus iestatījumus dažādās ierīcēs.</translation>
 <translation id="8606668294522778825">Google Chrome var izmantot tīmekļa pakalpojumus, lai uzlabotu jūsu pārlūkošanas pieredzi. Jūs varat arī atspējot šos pakalpojumus. <ph name="BEGIN_LINK" />Uzziniet vairāk<ph name="END_LINK" />.</translation>
 <translation id="8614913330719544658">Google Chrome nereaģē. Vai restartēt to tūlīt?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Pārlūks Chrome pēc 1 minūtes tiks restartēts}zero{Pārlūks Chrome pēc # minūtēm tiks restartēts}one{Pārlūks Chrome pēc # minūtes tiks restartēts}other{Pārlūks Chrome pēc # minūtēm tiks restartēts}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ml.xtb b/chrome/app/resources/google_chrome_strings_ml.xtb
index 520263a..ec3e4f48 100644
--- a/chrome/app/resources/google_chrome_strings_ml.xtb
+++ b/chrome/app/resources/google_chrome_strings_ml.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS-ന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല. നിങ്ങളുടെ സമന്വയ പാസ്‌ഫ്രെയ്സ് അപ്‌ഡേറ്റ് ചെയ്യുക.</translation>
 <translation id="1302523850133262269">ഏറ്റവും പുതിയ സിസ്‌റ്റം അപ്‌ഡേറ്റുകൾ Chrome ഇൻസ്റ്റാളുചെയ്യുന്നതുവരെ കാത്തിരിക്കുക.</translation>
 <translation id="137466361146087520">Google Chrome ബീറ്റ</translation>
-<translation id="1393853151966637042">Chrome ഉപയോഗിച്ച് സഹായം തേടുക</translation>
 <translation id="1399397803214730675">ഈ കമ്പ്യൂട്ടറിൽ ഇപ്പോൾ തന്നെ Google Chrome-ന്റെ ഏറ്റവും പുതിയ പതിപ്പുണ്ട്. സോഫ്റ്റ്‍‍വെയർ പ്രവര്‍ത്തിക്കുന്നില്ലെങ്കില്‍, ദയവായി Google Chrome അണ്‍‌ഇന്‍സ്റ്റാള്‍  ചെയ്ത് വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="1434626383986940139">Chrome കാനറി അപ്ലിക്കേഷനുകൾ</translation>
-<translation id="1469002951682717133">Chrome അപ്ലിക്കേഷൻ ലോഞ്ചർ</translation>
 <translation id="1553358976309200471">Chrome അപ്‌ഡേറ്റ് ചെയ്യുക</translation>
 <translation id="1587223624401073077">Google Chrome നിങ്ങളുടെ ക്യാമറ ഉപയോഗിക്കുന്നു.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> അപകടകരമായതിനാൽ, Chrome ഇതിനെ ബ്ലോക്കുചെയ്‌തു.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">നിങ്ങളുടെ Google അക്കൗണ്ടിൽ Chrome ഈ പാസ്‌വേഡ് സംരക്ഷിക്കും. നിങ്ങൾ അത് ഓർത്ത് വയ്‌ക്കേണ്ടതില്ല.</translation>
 <translation id="174539241580958092">സൈൻ ഇൻ ചെയ്യുന്നതിലെ ഒരു പിശകിനാൽ Google Chrome-ന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS ഉപയോഗിച്ച് സഹായം തേടുക</translation>
-<translation id="1795405610103747296">നിങ്ങളുടെ ഫോണിൽ Chrome ഇൻസ്‌റ്റാൾ ചെയ്യുക. ഫോണിലേക്ക് ഞങ്ങളൊരു SMS അയയ്‌ക്കും: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">ഇത് ഓഫാക്കുന്നതിലൂടെ, Chrome-ലേക്ക് സൈൻ ഇൻ ചെയ്യാതെ തന്നെ Gmail പോലുള്ള Google സൈറ്റുകളിൽ നിങ്ങൾക്ക് സൈൻ ഇൻ ചെയ്യാനാവും</translation>
 <translation id="1860536484129686729">ഈ സൈറ്റിനായി, Chrome-ന് നിങ്ങളുടെ ക്യാമറ ആക്‌സസ് ചെയ്യാനുള്ള അനുമതി ആവശ്യമാണ്</translation>
 <translation id="1873233029667955273">Google Chrome നിങ്ങളുടെ ഡിഫോൾട്ട് ബ്രൗസറല്ല</translation>
@@ -56,23 +52,17 @@
 <translation id="2128103434102193461">Chrome OS-ന്റെ വിശദാംശങ്ങൾക്ക് <ph name="LINK_BEGIN" />
       Chrome OS-നെക്കുറിച്ച്<ph name="LINK_END" /> എന്ന പേജ് കാണുക</translation>
 <translation id="2151406531797534936">Chrome ഇപ്പോൾ റീസ്‌റ്റാർട്ട് ചെയ്യുക</translation>
-<translation id="216054706567564023">നിങ്ങളുടെ ഫോണിൽ Chrome ഇൻസ്‌റ്റാൾ ചെയ്യുക. അക്കൗണ്ട് വീണ്ടെടുക്കൽ ഫോൺ നമ്പറിലേക്ക് ഞങ്ങളൊരു SMS അയയ്‌ക്കും.</translation>
 <translation id="2246246234298806438">ബിൽറ്റ്-ഇൻ PDF വ്യൂവർ കാണുന്നില്ലെങ്കിൽ Google Chrome-ന് പ്രിന്റ് പ്രിവ്യു കാണിക്കാൻ കഴിയില്ല.</translation>
-<translation id="2252923619938421629">നിലവിലെ ക്രമീകരണങ്ങൾ റിപ്പോർട്ട് ചെയ്യുന്നതിലൂടെ Google Chrome-നെ മികച്ചതാക്കാൻ സഹായിക്കുക</translation>
-<translation id="2286950485307333924">നിങ്ങൾ ഇപ്പോൾ Chrome-ൽ സൈൻ ഇൻ ചെയ്‌തു</translation>
 <translation id="2290014774651636340">Google API കീകൾ നഷ്‌ടമായി. Google Chrome-ന്‍റെ ചില പ്രവർത്തനങ്ങൾ പ്രവർത്തനരഹിതമാകും.</translation>
 <translation id="2290095356545025170">Google Chrome അണിന്‍സ്റ്റാള്‍ ചെയ്യണമെന്ന് നിങ്ങള്‍ക്കുറപ്പാണോ?</translation>
 <translation id="2309047409763057870">ഇത് Google Chrome-ന്റെ ദ്വിതീയ ഇൻസ്‌റ്റലേഷനായതിനാൽ, നിങ്ങളുടെ ഡിഫോൾട്ട് ബ്രൗസറാക്കാൻ കഴിയില്ല.</translation>
-<translation id="2346876346033403680">മുമ്പ് മറ്റാരോ <ph name="ACCOUNT_EMAIL_LAST" /> എന്നായി ഈ കമ്പ്യൂട്ടറിൽ Chrome-ൽ സൈൻ ഇൻ ചെയ്‌തു. അത് നിങ്ങളുടെ അക്കൗണ്ടല്ലെങ്കിൽ, നിങ്ങളുടെ വിവരങ്ങൾ വേർതിരിച്ച് നിലനിർത്തുന്നതിന് ഒരു പുതിയ Chrome ഉപയോക്താവിനെ സൃഷ്‌ടിക്കുക.
-
-ഏതുവിധേനയും സൈൻ ഇൻ ചെയ്യുന്നത് ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ പോലുള്ള Chrome വിവരങ്ങൾ <ph name="ACCOUNT_EMAIL_NEW" /> എന്നതുമായി ലയിപ്പിക്കും.</translation>
 <translation id="2348335408836342058">ഈ സൈറ്റിനായി, Chrome-ന് നിങ്ങളുടെ ക്യാമറയും മൈക്രോഫോണും ആക്‌സസ് ചെയ്യാനുള്ള അനുമതി ആവശ്യമാണ്</translation>
 <translation id="2429317896000329049">നിങ്ങളുടെ ഡൊമെയ്‌‌നിനായി സമന്വയം ലഭ്യമല്ലാത്തതിനാൽ Google Chrome-ന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല.</translation>
 <translation id="2467438592969358367">നിങ്ങളുടെ പാസ്‌വേഡുകൾ എക്‌സ്‌പോർട്ട് ചെയ്യാൻ Google Chrome ആഗ്രഹിക്കുന്നു. ഇത് അനുവദിക്കാൻ നിങ്ങളുടെ Windows പാസ്‌വേഡ് നൽകുക.</translation>
 <translation id="2485422356828889247">അണ്‍‌ഇന്‍‌സ്റ്റാള്‍‌ ചെയ്യുക</translation>
 <translation id="2534507159460261402">Google Pay (Chrome-ലേക്ക് പകർത്തി)</translation>
 <translation id="2535429035253759792">ഈ അപ്‌ഡേറ്റ് പ്രയോഗിക്കുന്നതിന് Chrome വീണ്ടും സമാരംഭിക്കാൻ നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ ആവശ്യപ്പെടുന്നു</translation>
-<translation id="2580411288591421699">നിലവില്‍‌ പ്രവർത്തിക്കുന്ന Google Chrome പതിപ്പിന് സമാനമായത് ഇന്‍‌സ്റ്റാള്‍‌ ചെയ്യാന്‍‌ കഴിയില്ല. ദയവായി Google Chrome അടച്ചശേഷം വീണ്ടും ശ്രമിക്കുക.</translation>
+<translation id="2580411288591421699">നിലവില്‍‌ പ്രവര്‍‌ത്തിക്കുന്ന സമാന Google Chrome പതിപ്പ് ഇന്‍‌സ്റ്റാള്‍‌ ചെയ്യാന്‍‌ കഴിയില്ല. ദയവായി Google Chrome അടച്ച് വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="2586406160782125153">ഇത് ഈ ഉപകരണത്തിൽ നിന്ന് നിങ്ങളുടെ ബ്രൗസിംഗ് വിവരങ്ങൾ ഇല്ലാതാക്കും. പിന്നീട് വിവരങ്ങൾ വീണ്ടെടുക്കാൻ, <ph name="USER_EMAIL" /> എന്നയാളായി Chrome‌-ൽ സൈൻ ഇൻ ചെയ്യുക.</translation>
 <translation id="2588322182880276190">Chrome ലോഗോ</translation>
 <translation id="2644798301485385923">Chrome OS സിസ്‌റ്റം</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">നിങ്ങൾ Chrome-ൽ സൈൻ ഇൻ ചെയ്‌തു!</translation>
 <translation id="2888126860611144412">Chrome-നെ കുറിച്ച്</translation>
 <translation id="3037838751736561277">Google Chrome ഒരു പശ്ചാത്തല മോഡിലാണ്.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> എന്നത് വിച്ഛേദിക്കുന്നത് നിങ്ങളുടെ ചരിത്രം, ബുക്ക്മാർക്കുകൾ, ക്രമീകരണങ്ങൾ, ഈ ഉപകരണത്തിൽ സംഭരിച്ച മറ്റ് Chrome ഡാറ്റ എന്നിവയെ മായ്‌ക്കും. നിങ്ങളുടെ Google അക്കൗണ്ടിൽ സംഭരിച്ച ഡാറ്റ മായ്‌ക്കാനാകില്ല, അവ <ph name="GOOGLE_DASHBOARD_LINK" />Google ഡാഷ്‌ബോർഡിൽ<ph name="END_GOOGLE_DASHBOARD_LINK" /> നിയന്ത്രിക്കാനാകും.</translation>
 <translation id="3065168410429928842">Chrome ടാബ്</translation>
 <translation id="3080151273017101988">Google Chrome അടച്ചാലും പശ്ചാത്തല ആപ്ലിക്കേഷനുകള്‍ പ്രവര്‍ത്തിപ്പിക്കുന്നത് തുടരുക</translation>
 <translation id="3089968997497233615">Google Chrome-ന്റെ പുതിയതും സുരക്ഷിതവുമായ പതിപ്പ് ലഭ്യമാണ്.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">നിങ്ങളുടെ ഉപകരണങ്ങളിലുടനീളം Chrome സമന്വയിപ്പിച്ച് വ്യക്തിഗതമാക്കുക</translation>
 <translation id="3622797965165704966">ഇപ്പോൾ നിങ്ങളുടെ Google അക്കൗണ്ട് ഉപയോഗിച്ച്, പങ്കിട്ട കമ്പ്യൂട്ടറുകളിൽ Chromium ഉപയോഗിക്കാൻ എളുപ്പമാണ്.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />സേവന നിബന്ധനകള്‍<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">ഈ പേജ് ഒരുപാട് മെമ്മറി ഉപയോഗിക്കുന്നു, അതിനാൽ Chrome ഇത് താൽക്കാലികമായി അവസാനിപ്പിച്ചു.</translation>
 <translation id="3718181793972440140">ഇത് ഈ ഉപകരണത്തിൽ നിന്നും ഒരിനം ഇല്ലാതാക്കും. പിന്നീട് നിങ്ങളുടെ വിവരങ്ങൾ വീണ്ടെടുക്കാൻ, <ph name="USER_EMAIL" /> എന്നയാളായി Chrome-ൽ സൈൻ ഇൻ ചെയ്യുക.</translation>
 <translation id="3735758079232443276">നിങ്ങൾ Chrome ആരംഭിക്കുമ്പോൾ ദൃശ്യമാകുന്ന പേജിനെ "<ph name="EXTENSION_NAME" />" വിപുലീകരണം മാറ്റി.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,11 +108,10 @@
 <translation id="4053720452172726777">Google Chrome ഇഷ്‌ടാനുസൃതമാക്കുക, നിയന്ത്രിക്കുക</translation>
 <translation id="4143243756087420366">Chrome പേരും ചിത്രവും</translation>
 <translation id="4147555960264124640">നിങ്ങൾ ഒരു നിയന്ത്രിത അക്കൗണ്ട് ഉപയോഗിച്ച് സൈൻ ഇൻ ചെയ്‌ത് അതിന്റെ അഡ്‌മിനിസ്‌ട്രേറ്റർക്ക് നിങ്ങളുടെ Google Chrome പ്രൊഫൈലിന്റെ നിയന്ത്രണം നൽകുന്നു. നിങ്ങളുടെ അപ്ലിക്കേഷനുകൾ, ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, പാസ്‌വേഡുകൾ, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ പോലെയുള്ള Chrome ഡാറ്റ <ph name="USER_NAME" /> എന്നതുമായി ശാശ്വതമായി ബന്ധിപ്പിച്ചതായിത്തീരും. Google അക്കൗണ്ട്സ് ഡാഷ്‌ബോർഡ് വഴി നിങ്ങൾക്ക് ഈ ഡാറ്റ ഇല്ലാതാക്കാൻ കഴിയുമെങ്കിലും ഈ ഡാറ്റ മറ്റൊരു അക്കൗണ്ടുമായി ബന്ധപ്പെടുത്താനാകില്ല. <ph name="LEARN_MORE" /></translation>
-<translation id="4149882025268051530">ആര്‍ക്കൈവ് അണ്‍‌കം‌പ്രസ് ചെയ്യാന്‍ ഇന്‍സ്റ്റാളറിന് കഴിഞ്ഞില്ല. ദയവായി Google Chrome വീണ്ടും ഡൗൺലോഡ് ചെയ്യുക.</translation>
+<translation id="4149882025268051530">ആര്‍ക്കൈവ് അണ്‍‌കം‌പ്രസ്സ് ചെയ്യാന്‍ ഇന്‍സ്റ്റാളറിന് കഴിഞ്ഞില്ല. ദയവായി Google Chrome വീണ്ടും ഡൗൺലോഡ് ചെയ്യുക.</translation>
 <translation id="4191857738314598978">{0,plural, =1{ഒരു ദിവസത്തിനുള്ളിൽ Chrome വീണ്ടും സമാരംഭിക്കുക}other{# ദിവസത്തിനുള്ളിൽ Chrome വീണ്ടും സമാരംഭിക്കുക}}</translation>
 <translation id="424864128008805179">Chrome-ൽ നിന്ന് സൈൻ ഔട്ട് ചെയ്യണോ?</translation>
 <translation id="4251615635259297716">നിങ്ങളുടെ Chrome ഡാറ്റ ഈ അക്കൗണ്ടുമായി ലിങ്ക് ചെയ്യണോ?</translation>
-<translation id="4251625577313994583">നിങ്ങളുടെ iPhone-ൽ Chrome സ്വന്തമാക്കൂ</translation>
 <translation id="4293420128516039005">നിങ്ങളുടെ ഉപകരണങ്ങളിലുടനീളം Chrome സമന്വയിപ്പിച്ച് വ്യക്തിഗതമാക്കാൻ സൈൻ ഇൻ ചെയ്യുക</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">Google തിരയലിൽ ഉപയോഗിക്കുന്ന അതേ സ്പെൽ ചെക്കർ ഇത് ഉപയോഗിക്കുന്നു. ബ്രൗസറിൽ നിങ്ങൾ ടൈപ്പ് ചെയ്യുന്ന ടെക്‌സ്‌റ്റ് Google-ന് അയയ്ക്കുന്നു. ക്രമീകരണത്തിൽ എപ്പോഴും ഈ രീതി മാറ്റാനാകും.</translation>
 <translation id="4891791193823137474">പശ്ചാത്തലത്തില്‍ Google Chrome പ്രവര്‍ത്തിക്കാന്‍ അനുവദിക്കുക</translation>
 <translation id="4895437082222824641">പുതിയ Chrome &amp;ടാബിൽ ലിങ്ക് തുറക്കുക</translation>
-<translation id="4921569541910214635">ഒരു കമ്പ്യൂട്ടർ പങ്കിടണോ? ഇപ്പോൾ നിങ്ങൾക്ക് ഇഷ്‌ടപ്പെട്ട രീതിയിൽ Chrome സജ്ജീകരിക്കാനാകും.</translation>
 <translation id="4953650215774548573">Google Chrome-നെ നിങ്ങളുടെ ഡിഫോൾട്ട് ബ്രൗസറായി സജ്ജീകരിക്കുക</translation>
 <translation id="495931528404527476">Chrome-ൽ</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">പുനരാരംഭിക്കുക</translation>
 <translation id="5940385492829620908">നിങ്ങളുടെ വെബും ബുക്ക്മാർക്കുകളും മറ്റ് Chrome ഫയലും ഇവിടെ തത്സമയമാണ്.</translation>
 <translation id="5941830788786076944">Google Chrome-നെ ഡിഫോൾട്ട് ബ്രൗസർ ആക്കുക</translation>
-<translation id="6014844626092547096">നിങ്ങൾ ഇപ്പോൾ Chrome-ലേക്ക് സൈൻ ഇൻ ചെയ്‌തു! നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ സമന്വയം പ്രവർത്തനരഹിതമാക്കി.</translation>
-<translation id="6040143037577758943">അടയ്ക്കുക</translation>
 <translation id="6070348360322141662">കൂടുതൽ സുരക്ഷ ലഭ്യമാക്കാൻ, Google Chrome നിങ്ങളുടെ ഡാറ്റ എന്‍‌ക്രിപ്‌റ്റുചെയ്യും</translation>
 <translation id="6113794647360055231">Chrome കൂടുതൽ മികച്ചതായി</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -194,9 +178,7 @@
 <translation id="6368958679917195344">അനുബന്ധ <ph name="BEGIN_LINK_CROS_OSS" />ഓപ്പണ്‍ ഉറവിട സോഫ്റ്റ്‍‌വെയർ<ph name="END_LINK_CROS_OSS" /> ഉപയോഗിച്ചാണ് Chrome OS നിര്‍മ്മിച്ചിരിക്കുന്നത്.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome അപ്‌ഡേറ്റുചെയ്യുന്നു, (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Chrome ഫയൽ സമന്വയിപ്പിക്കാൻ നിങ്ങൾ <ph name="PROFILE_EMAIL" /> ഉപയോഗിക്കുന്നു. നിങ്ങളുടെ സമന്വയ മുൻഗണന അപ്‌ഡേറ്റ് ചെയ്യാനോ ഒരു Google അക്കൗണ്ട് കൂടാതെ Chrome ഉപയോഗിക്കാനോ <ph name="SETTINGS_LINK" /> സന്ദർശിക്കുക.</translation>
-<translation id="6600954340915313787">Chrome-ലേക്ക് പ്കർത്തി</translation>
-<translation id="6676384891291319759">ഇന്‍റര്‍‌നെറ്റ് ആക്‌സസ് ചെയ്യുക</translation>
+<translation id="6676384891291319759">ഇന്റര്‍‌നെറ്റ് ആക്‌സസ് ചെയ്യുക</translation>
 <translation id="6679975945624592337">പശ്ചാത്തലത്തില്‍ Google Chrome പ്രവര്‍ത്തിക്കാന്‍ അനുവദിക്കുക</translation>
 <translation id="6750954913813541382">അക്ഷരത്തെറ്റുകൾ പരിഹരിക്കാൻ നിങ്ങൾ ബ്രൗസറിൽ ടൈപ്പ് ചെയ്യുന്ന ടെക്‌സ്‌റ്റ് Chrome Google ലേക്ക് അയയ്ക്കുന്നു</translation>
 <translation id="677276454032249905">എന്തായാലും Chrome-ൽ നിന്ന് പുറത്തുകടക്കണോ?</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Google Chrome അപ്ഡേറ്റുചെയ്തു, പക്ഷേ 30 ദിവസം പോലും നിങ്ങള്‍ ഇത് ഉപയോഗിച്ചിട്ടില്ല.</translation>
 <translation id="7098166902387133879">Google Chrome നിങ്ങളുടെ മൈക്രോഫോൺ ഉപയോഗിക്കുന്നു.</translation>
 <translation id="7106741999175697885">ടാസ്ക് മാനേജര്‍ - Google Chrome</translation>
-<translation id="7164397146364144019">സുരക്ഷയെ ബാധിക്കാൻ സാധ്യതയുള്ള കാര്യങ്ങളുടെ വിശദാംശങ്ങൾ Google-ലേക്ക് സ്വയമേവ റിപ്പോർട്ട് ചെയ്‌തുകൊണ്ട് നിങ്ങൾക്ക് Chrome-നെ സുരക്ഷിതവും എളുപ്പവുമാക്കാൻ സഹായിക്കാനാകും.</translation>
 <translation id="7242029209006116544">നിങ്ങൾ ഒരു നിയന്ത്രിത അക്കൗണ്ട് ഉപയോഗിച്ച് സൈൻ ഇൻ ചെയ്‌ത് അതിന്റെ അഡ്‌മിനിസ്‌ട്രേറ്റർക്ക് നിങ്ങളുടെ Google Chrome പ്രൊഫൈലിന്റെ നിയന്ത്രണം നൽകുന്നു. നിങ്ങളുടെ അപ്ലിക്കേഷനുകൾ, ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, പാസ്‌വേഡുകൾ, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ പോലെയുള്ള Chrome ഡാറ്റ <ph name="USER_NAME" /> എന്നതുമായി ശാശ്വതമായി ബന്ധിപ്പിച്ചതായിത്തീരും. Google അക്കൗണ്ട്സ് ഡാഷ്‌ബോർഡ് വഴി നിങ്ങൾക്ക് ഈ ഡാറ്റ ഇല്ലാതാക്കാൻ കഴിയുമെങ്കിലും ഈ ഡാറ്റ മറ്റൊരു അക്കൗണ്ടുമായി ബന്ധപ്പെടുത്താനാകില്ല. നിങ്ങളുടെ നിലവിലെ Chrome ഡാറ്റ പ്രത്യേകമായി സൂക്ഷിക്കുന്നതിന് നിങ്ങൾക്ക് ഒരു പുതിയ പ്രൊഫൈൽ ഓപ്‌ഷണലായി സൃഷ്‌ടിക്കാനാകും. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Google Chrome UI പ്രദര്‍ശിപ്പിക്കാൻ ഈ ഭാഷ ഉപയോഗിക്കുന്നു</translation>
 <translation id="7296210096911315575">പ്രധാനപ്പെട്ട ഉപയോഗ, സുരക്ഷാ വിവരങ്ങൾ</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">നിങ്ങൾ Chrome-ൽ <ph name="USER_EMAIL_ADDRESS" /> എന്നായി സൈൻ ഇൻ ചെയ്‌തു. വീണ്ടും സൈൻ ഇൻ ചെയ്യുന്നതിന് സമാന അക്കൗണ്ട് ഉപയോഗിക്കുക.</translation>
 <translation id="7408085963519505752">Chrome OS നിബന്ധനകൾ</translation>
 <translation id="7419046106786626209">നിങ്ങളുടെ ഡൊമെയ്‌‌നിനായി സമന്വയം ലഭ്യമല്ലാത്തതിനാൽ Chrome OS-ന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല.</translation>
-<translation id="7459554271817304652">വെബിലേക്ക് നിങ്ങളുടെ വ്യക്തിഗതമാക്കിയ ബ്രൗസർ സവിശേഷതകൾ സംരക്ഷിക്കുന്നതിനും ഏതൊരു കമ്പ്യൂട്ടറിൽ നിന്നും Google Chrome-ലേക്ക് അവയെ ആക്‌സസ് ചെയ്യുന്നതിനും സമന്വയം സജ്ജമാക്കുക.</translation>
 <translation id="7486227612705979895">വിലാസ ബാറിൽ നിർദ്ദേശങ്ങൾ സൃഷ്‌ടിക്കാൻ, Chrome നിങ്ങളുടെ ഡ്രൈവ് ആക്‌സ‌സ് ചെയ്യും</translation>
 <translation id="7531671357096394523">Chrome-ൻ്റെ എല്ലാ പകർപ്പുകളും അവസാനിപ്പിക്കുക.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -228,7 +208,7 @@
 <translation id="7629695634924605473">നിങ്ങളുടെ പാസ്‌വേഡുകൾ എപ്പോഴെങ്കിലും അപഹരിക്കപ്പെട്ടിട്ടുണ്ടെങ്കിൽ അക്കാര്യം Chrome നിങ്ങളെ അറിയിക്കും</translation>
 <translation id="7641148173327520642"><ph name="TARGET_URL_HOSTNAME" /> ആക്‌സസ് ചെയ്യാൻ <ph name="ALTERNATIVE_BROWSER_NAME" /> തുറക്കുന്നതിനായി നിങ്ങളുടെ സിസ്‌റ്റം അഡ്‌മിൻ Google Chrome കോൺഫിഗർ ചെയ്‌തു.</translation>
 <translation id="7651907282515937834">Chrome എന്റർപ്രൈസ് ലോഗോ</translation>
-<translation id="7747138024166251722">ഇൻസ്റ്റാളറിന് താൽക്കാലിക ഡയറക്റ്ററി സൃഷ്‌ടിക്കാനായില്ല. ശൂന്യമായ ഡിസ്‍ക് സ്പെയിസും സോഫ്റ്റ്‌വെയർ ഇൻസ്റ്റാൾ ചെയ്യാനുള്ള അനുമതിയും പരിശോധിക്കുക.</translation>
+<translation id="7747138024166251722">ഇൻസ്റ്റാളറിന് ഒരു താൽക്കാലിക ഡയറക്ടറി സൃഷ്‌ടിക്കാനായില്ല. ശൂന്യമായ ഇടത്തിനായും സോഫ്റ്റ്‌വെയർ ഇൻസ്റ്റാൾ ചെയ്യാനുമുള്ള അനുമതിക്കായും പരിശോധിക്കുക.</translation>
 <translation id="7761834446675418963">Chrome തുറന്ന് ബ്രൗസിംഗ് ആരംഭിക്കാൻ നിങ്ങളുടെ പേര് ക്ലിക്ക് ചെയ്യുക.</translation>
 <translation id="7777080907402804672">ചിത്രത്തിൽ ഉപകാരപ്രദമായ വിവരണമില്ലെങ്കിൽ നിങ്ങൾക്കായി ഒരു വിവരണം നൽകാൻ Chrome ശ്രമിക്കും. വിവരണങ്ങൾ സൃഷ്‌ടിക്കാൻ, ചിത്രങ്ങൾ Google-ലേക്ക് അയയ്ക്കുന്നു. ഏതുസമയത്തും ക്രമീകരണത്തിൽ നിങ്ങൾക്കിത് ഓഫാക്കാം.</translation>
 <translation id="7781002470561365167">Google Chrome ന്റെ പുതിയ പതിപ്പ് ലഭ്യമാണ്.</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">Windows XP-ക്കും Windows Vista-യ്‌ക്കും ഇനിയങ്ങോട്ട് പിന്തുണ ഇല്ലാത്തതിനാൽ ഈ കമ്പ്യൂട്ടറിന് ഇനി Google Chrome അപ്‌ഡേറ്റുകൾ സ്വീകരിക്കാനാകില്ല</translation>
 <translation id="8008534537613507642">Chrome വീണ്ടും ഇൻസ്റ്റാളുചെയ്യുക</translation>
 <translation id="8013993649590906847">ചിത്രത്തിൽ ഉപകാരപ്രദമായ വിവരണമില്ലെങ്കിൽ നിങ്ങൾക്കായി ഒരു വിവരണം നൽകാൻ Chrome ശ്രമിക്കും. വിവരണങ്ങൾ സൃഷ്‌ടിക്കാൻ, ചിത്രങ്ങൾ Google-ലേക്ക് അയയ്ക്കുന്നു.</translation>
-<translation id="8032142183999901390">Chrome-ൽ നിന്ന് നിങ്ങളുടെ അക്കൗണ്ട് നീക്കം ചെയ്‌തുകഴിഞ്ഞാൽ, അത് പ്രാബല്യത്തിൽ വരുന്നതിന് ഓപ്പൺ ടാബുകൾ വീണ്ടും ലോഡ് ചെയ്യേണ്ടി വന്നേക്കാം.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome-നെക്കുറിച്ച്</translation>
-<translation id="8179874765710681175">നിങ്ങളുടെ ഫോണിൽ Chrome ഇൻസ്‌റ്റാൾ ചെയ്യുക. ഫോണിലേക്ക് ഞങ്ങളൊരു SMS അയയ്‌ക്കും.</translation>
-<translation id="825412236959742607">ഈ പേജ് കൂടുതൽ മെമ്മറി ഉപയോഗിക്കുന്നു, അതിനാൽ Chrome കുറച്ച് ഉള്ളടക്കം നീക്കം ചെയ്‌തു.</translation>
 <translation id="8255190535488645436">Google Chrome നിങ്ങളുടെ ക്യാമറയും മൈക്രോഫോണും ഉപയോഗിക്കുന്നു.</translation>
 <translation id="8286862437124483331">Google Chrome പാസ്‌വേഡുകൾ ദൃശ്യമാക്കാൻ ശ്രമിക്കുന്നു. ഇത് അനുവദിക്കാൻ നിങ്ങളുടെ Windows പാസ്‌വേഡ് നൽകുക.</translation>
 <translation id="8290100596633877290">ഓ! Google Chrome ക്രാഷുചെയ്തു. ഇപ്പോള്‍ വീണ്ടും സമാരംഭിക്കണോ?</translation>
 <translation id="8342675569599923794">ഈ ഫയൽ അപകടകരമായതിനാൽ Chrome ഇതിനെ ബ്ലോക്കുചെയ്‌തു.</translation>
 <translation id="8370517070665726704">പകർപ്പവകാശം <ph name="YEAR" /> Google LLC. എല്ലാ അവകാശങ്ങളും നിക്ഷിപ്‍തം.</translation>
 <translation id="840084489713044809">നിങ്ങളുടെ പാസ്‌വേഡുകൾ എക്‌സ്‌പോർട്ട് ചെയ്യാൻ Google Chrome ആഗ്രഹിക്കുന്നു.</translation>
-<translation id="8406086379114794905">Chrome-നെ മികച്ചതാക്കാൻ സഹായിക്കുക</translation>
 <translation id="8455999171311319804">ഓപ്‌ഷണൽ: ഡയഗണോസ്‌റ്റിക്, ഉപയോഗ വിവരങ്ങൾ Google-ന് സ്വയം അയച്ചുകൊണ്ട് Chrome OS മെച്ചപ്പെടുത്താൻ സഹായിക്കുക.</translation>
-<translation id="8478823064122749032">നിങ്ങളുടെ ഫോണിൽ Chrome ഇൻസ്‌റ്റാൾ ചെയ്യുക. അക്കൗണ്ട് വീണ്ടെടുക്കൽ ഫോൺ നമ്പറിലേക്ക് ഞങ്ങളൊരു SMS അയയ്‌ക്കും: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome-നുള്ള ഒരു പ്രത്യേക സുരക്ഷാ അപ്ഡേറ്റ് പ്രയോഗിച്ചിരിക്കുന്നു. ഇപ്പോൾ റീസ്‌റ്റാർട്ട് ചെയ്യുക, ഞങ്ങൾ നിങ്ങളുടെ ടാബുകൾ പുനഃസ്ഥാപിക്കും.</translation>
 <translation id="8521348052903287641">mDNS ട്രാഫിക് അനുവദിക്കുന്നതിന് Google Chrome Dev-ന് വേണ്ടിയുള്ള ഇൻബൗണ്ട് റൂൾ.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome അപ്ലിക്കേഷൻ ലോഞ്ചർ കാനറി</translation>
 <translation id="8556340503434111824">Google Chrome-ന്റെ പുതിയ പതിപ്പ് ലഭ്യമാണ്, അത് മുമ്പത്തേക്കാൾ വേഗതയേറിയതാണ്.</translation>
-<translation id="8568392309447938879">അപ്ലിക്കേഷനുകൾ ഉപയോഗിക്കാൻ നിങ്ങൾ Chrome-ൽ സൈൻ ഇൻ ചെയ്‌തിരിക്കേണ്ടതുണ്ട്. ഇത് നിങ്ങളുടെ ഉപകരണങ്ങളിലുടനീളമുള്ള അപ്ലിക്കേഷനുകൾ, ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, പാസ്‌വേഡുകൾ, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ സമന്വയിപ്പിക്കാൻ Chrome-നെ അനുവദിക്കുന്നു.</translation>
 <translation id="8606668294522778825">നിങ്ങളുടെ ബ്രൗസിംഗ് അനുഭവം മെച്ചപ്പെടുത്താൻ Google Chrome വെബ് സേവനങ്ങൾ ഉപയോഗിക്കാനിടയുണ്ട്. നിങ്ങൾക്ക് ഈ സേവനങ്ങൾ ഓപ്‌ഷണലായി പ്രവർത്തനരഹിതമാക്കാം. <ph name="BEGIN_LINK" />കൂടുതലറിയുക<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome പ്രതികരിക്കുന്നില്ല. ഇപ്പോള്‍ വീണ്ടും സമാരംഭിക്കണോ?</translation>
 <translation id="8625237574518804553">{0,plural, =1{ഒരു മിനിറ്റിൽ Chrome വീണ്ടും സമാരംഭിക്കും}other{# മിനിറ്റിൽ Chrome വീണ്ടും സമാരംഭിക്കും}}</translation>
@@ -271,7 +244,7 @@
 <translation id="8736674169840206667">അപ്‌ഡേറ്റ് പ്രയോഗിക്കുന്നതിന് Chrome വീണ്ടും സമാരംഭിക്കാൻ നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ ആവശ്യപ്പെടുന്നു</translation>
 <translation id="8823341990149967727">Chrome കാലഹരണപ്പെട്ടതാണ്</translation>
 <translation id="884296878221830158">നിങ്ങൾ Chrome ആരംഭിയ്ക്കുമ്പോഴോ ഹോം ബട്ടൺ ക്ലിക്ക് ചെയ്യുമ്പോഴോ ഏത് പേജാണ് കാണിക്കേണ്ടതെന്നും അത് നിയന്ത്രിയ്ക്കുന്നു.</translation>
-<translation id="8862326446509486874">സിസ്റ്റം-ലെവല്‍‌ ഇന്‍‌സ്റ്റാള്‍‌ ചെയ്യുന്നതിന് നിങ്ങള്‍‌ക്ക് ഉചിതമായ അവകാശങ്ങളില്ല. അഡ്‌മിനിസ്‌ട്രേറ്ററായി ഇന്‍‌സ്റ്റാളര്‍‌ പ്രവര്‍‌ത്തിപ്പിക്കാന്‍‌ വീണ്ടും ശ്രമിക്കൂ.</translation>
+<translation id="8862326446509486874">സിസ്റ്റം തലത്തിൽ ഇന്‍‌സ്റ്റാള്‍‌ ചെയ്യുന്നതിന് നിങ്ങള്‍‌ക്ക് ഉചിതമായ അവകാശങ്ങളില്ല. അഡ്‌മിനിസ്‌ട്രേറ്ററായി ഇന്‍‌സ്റ്റാളര്‍‌ റണ്‍ ചെയ്യിക്കാൻ വീണ്ടും ശ്രമിക്കൂ.</translation>
 <translation id="8914504000324227558">Chrome വീണ്ടും സമാരംഭിക്കുക</translation>
 <translation id="8999208279178790196">{0,plural, =0{Chrome-നൊരു അപ്‌ഡേറ്റ് ലഭ്യമാണ്}=1{Chrome-നൊരു അപ്‌ഡേറ്റ് ലഭ്യമാണ്}other{# ദിവസമായി Chrome-നൊരു അപ്‌ഡേറ്റ് ലഭ്യമാണ്}}</translation>
 <translation id="9026991721384951619">നിങ്ങളുടെ അക്കൗണ്ടിന്റെ സൈൻ ഇൻ വിശദാംശങ്ങൾ കാലഹരണപ്പെട്ടതിനാൽ Chrome OS-ന് നിങ്ങളുടെ ഡാറ്റ സമന്വയിപ്പിക്കാനായില്ല.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_mr.xtb b/chrome/app/resources/google_chrome_strings_mr.xtb
index cdc4bd4..a40150a 100644
--- a/chrome/app/resources/google_chrome_strings_mr.xtb
+++ b/chrome/app/resources/google_chrome_strings_mr.xtb
@@ -16,10 +16,8 @@
 <translation id="123620459398936149">Chrome OS तुमचा डेटा सिंक करू शकले नाही. कृपया तुमचा सिंक सांकेतिक पासफ्रेज अपडेट करा.</translation>
 <translation id="1302523850133262269">कृपया Chrome नवीनतम सिस्टम अपडेट इंस्टॉल करताना प्रतीक्षा करा.</translation>
 <translation id="137466361146087520">Google Chrome बीटा</translation>
-<translation id="1393853151966637042">Chrome वापरून मदत मिळवा</translation>
 <translation id="1399397803214730675">या कॉंप्युटरत आधीपासून Google Chrome ची अगदी अलिकडील आवृत्ती आहे. सॉफ्टवेअर काम करत नसल्यास, कृपया Google Chrome अनइंस्टॉल करा आणि पुन्हा प्रयत्न करा.</translation>
 <translation id="1434626383986940139">Chrome Canary Apps</translation>
-<translation id="1469002951682717133">Chrome App लाँचर</translation>
 <translation id="1553358976309200471">Chrome अपडेट करा</translation>
 <translation id="1587223624401073077">Google Chrome तुमचा कॅमेरा वापरत आहे.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> धोकादायक आहे, त्यामुळे Chrom ने ते अवरोधित केले आहे.</translation>
@@ -37,8 +35,6 @@
 <translation id="1734234790201236882">Chrome हा पासवर्ड तुमच्या Google खात्यामध्ये सेव्ह करेल. तुम्हाला लक्षात ठेवावा लागणार नाही.</translation>
 <translation id="174539241580958092">साइन इन करण्यात एरर आल्यामुळे Google Chrome तुमचा डेटा सिंक करू शकले नाही.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS वापरून मदत मिळवा </translation>
-<translation id="1795405610103747296">Chrome तुमच्या फोनवर इंस्टॉल करा. आम्ही तुमच्या या फोनवर एक SMS पाठवू: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">हे बंद करून, तुम्ही Chrome वर साइन इन न करता Gmail सारख्या Google सायटींवर साइन इन करू शकता</translation>
 <translation id="1860536484129686729">या साइटसाठी Chrome ला तुमचा कॅमेरा अॅक्सेस करण्याची परवानगी हवी आहे</translation>
 <translation id="1873233029667955273">Google Chrome तुमचा डीफॉल्ट ब्राउझर नाही</translation>
@@ -55,16 +51,10 @@
 <translation id="2128103434102193461">Chrome OS च्या तपशिलांसाठी, कृपया<ph name="LINK_BEGIN" />
      Chrome OS विषयी<ph name="LINK_END" /> पाहा</translation>
 <translation id="2151406531797534936">कृपया आता Chrome रीस्टार्ट करा</translation>
-<translation id="216054706567564023">Chrome तुमच्या फोनवर इंस्टॉल करा. आम्ही तुमच्या खाते रिकव्हरी फोन नंबरवर एक SMS पाठवू.</translation>
 <translation id="2246246234298806438">बिल्ट-इन पीडीएफ व्ह्यूअर गहाळ असताना Google Chrome प्रिंट पूर्वावलोकन दाखवू शकत नाही.</translation>
-<translation id="2252923619938421629">वर्तमान सेटिंग्जचा अहवाल देऊन Google Chrome उत्कृष्ट बनविण्यास मदत करा</translation>
-<translation id="2286950485307333924">तुम्ही आता Chrome वर साइन इन केले आहे</translation>
 <translation id="2290014774651636340">Google API की गहाळ आहेत. Google Chrome ची काही कार्यक्षमता अक्षम केली जाईल.</translation>
 <translation id="2290095356545025170">तुमची खात्री आहे की तुम्ही Google Chrome अनइंस्टॉल करू इच्छिता?</translation>
 <translation id="2309047409763057870">ही Google Chrome ची दुय्यम स्थापना असून त्यास तुमचा डीफॉल्ट ब्राउझर बनवू शकत नाही.</translation>
-<translation id="2346876346033403680">कोणीतरी यापूर्वी या कॉंप्युटरवरील Chromeमध्ये <ph name="ACCOUNT_EMAIL_LAST" /> या रुपात साइन इन केले होते. ते तुमचे खाते नसल्यास, तुमची माहिती स्वतंत्र ठेवण्यासाठी एक नवीन Chrome वापरकर्ता तयार करा.
-
-तरीही साइन इन करण्यामुळे <ph name="ACCOUNT_EMAIL_NEW" />मध्ये बुकमार्क, इतिहास यासारखी Chrome माहिती आणि अन्य सेटिंग्ज मर्ज होतील.</translation>
 <translation id="2348335408836342058">या साइटसाठी Chrome ला तुमचा कॅमेरा आणि मायक्रोफोन अॅक्सेस करण्याची परवानगी हवी आहे</translation>
 <translation id="2429317896000329049">आपल्या डोमेनसाठी संकालन उपलब्ध नसल्यामुळे Google Chrome तुमचा डेटा संकालित करू शकले नाही.</translation>
 <translation id="2467438592969358367">Google Chrome ला तुमचे पासवर्ड निर्यात करायचे आहेत. हे करू देण्यासाठी तुमचा Windows पासवर्ड टाइप करा.</translation>
@@ -86,7 +76,6 @@
 <translation id="2871893339301912279">तुम्ही Chrome मध्‍ये साइन इन केले आहे!</translation>
 <translation id="2888126860611144412">Chrome बद्दल</translation>
 <translation id="3037838751736561277">Google Chrome पार्श्वभूमी मोड मध्ये आहे.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> डिस्कनेक्ट केल्याने या डिव्हाइसवरील तुमचा इतिहास, बुकमार्क, सेटिंग्ज आणि अन्य Chrome डेटा साफ होईल. आपल्या Google खात्यात संचयित केलेला डेटा साफ केला जाणार नाही आणि तो <ph name="GOOGLE_DASHBOARD_LINK" />Google डॅशबोर्ड<ph name="END_GOOGLE_DASHBOARD_LINK" /> वर व्यवस्थापित केला जाऊ शकतो.</translation>
 <translation id="3065168410429928842">Chrome टॅब</translation>
 <translation id="3080151273017101988">जेव्हा Google Chrome बंद असेल तेव्हा पार्श्वभूमीत ॲप्लिकेशन चालणे सुरू ठेवा</translation>
 <translation id="3089968997497233615">Google Chrome ची नवीन, सुरक्षित आवृत्ती उपलब्ध आहे.</translation>
@@ -107,7 +96,6 @@
 <translation id="3582972582564653026">तुमच्या डिव्हाइसवर Chrome सिंक आणि पर्सनलाइझ करा</translation>
 <translation id="3622797965165704966">आता आपल्या Google खात्यावर आणि शेअर केलेल्या संगणकांवर Chrome वापरणे अधिक सुलभ आहे.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />सेवा अटी<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">हे पेज खूपच जास्त मेमरी वापरत असल्यामुळे Chrome ने ते थांबवून ठेवलेले आहे.</translation>
 <translation id="3718181793972440140">हे या डिव्‍हाइस मधून 1 आयटम हटवेल. नंतर तुमचा डेटा पुनर्प्राप्त करण्‍यासाठी, Chrome मध्ये <ph name="USER_EMAIL" /> म्हणून साइन इन करा.</translation>
 <translation id="3735758079232443276">तुम्ही Chrome सुरू करता तेव्हा कोणते पेज दर्शविले जाते हे "<ph name="EXTENSION_NAME" />" एक्स्टेंशनने बदलले आहे.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -123,7 +111,6 @@
 <translation id="4191857738314598978">{0,plural, =1{एका दिवसामध्ये Chrome पुन्हा लाँच करा}other{# दिवसांमध्ये Chrome पुन्हा लाँच करा}}</translation>
 <translation id="424864128008805179">Chrome मधून साइन आउट करायचे?</translation>
 <translation id="4251615635259297716">या खात्यावर तुमच्या Chrome डेटा लिंक करायचा?</translation>
-<translation id="4251625577313994583">Chrome तुमच्या iPhone वर मिळवा</translation>
 <translation id="4293420128516039005">तुमच्या डिव्हाइसवर Chrome सिंक आणि पर्सनलाइझ करण्यासाठी साइन इन करा</translation>
 <translation id="4328355335528187361">Google Chrome विकासक (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -145,7 +132,6 @@
 <translation id="479167709087336770">Google शोध मध्ये वापरत असेलेले समान स्पेल चेकर हे वापरते. तुम्ही ब्राउझरमध्ये टाइप करत असलेला मजकूर Google कडे पाठवला जातो. तुम्ही हे वर्तन कधीही सेटिंग्ज मध्ये बदलू शकता.</translation>
 <translation id="4891791193823137474">बॅकग्राउंडमध्ये Google Chrome चालू द्या</translation>
 <translation id="4895437082222824641">लिंक नवीन Chrome &amp;टॅबमध्ये उघडा</translation>
-<translation id="4921569541910214635">एक कॉंप्युटर शेअर करायचा? तुम्हाला आवडते त्या प्रकारे तुम्ही आता Chrome सेट करू शकता.</translation>
 <translation id="4953650215774548573">तुमचा डीफॉल्ट ब्राउझर म्हणून Google Chrome सेट करा</translation>
 <translation id="495931528404527476">Chrome मध्ये</translation>
 <translation id="4990567037958725628">Google Chrome कॅनरी</translation>
@@ -178,8 +164,6 @@
 <translation id="5895138241574237353">रीस्टार्ट करा</translation>
 <translation id="5940385492829620908">तुमचे वेब, बुकमार्क आणि अन्य Chrome सामग्री येथे थेट आहे.</translation>
 <translation id="5941830788786076944">Google Chromeला डीफॉल्ट ब्राउझर बनवा</translation>
-<translation id="6014844626092547096">तुम्ही आता Chrome वर साइन इन आहात! तुमच्या अॅडमिनिस्ट्रेटरद्वारे सिंक अक्षम केले गेले आहे.</translation>
-<translation id="6040143037577758943">बंद करा</translation>
 <translation id="6070348360322141662">अतिरिक्त सुरक्षिततेसाठी, Google Chrome तुमचा डेटा एंक्रिप्ट करेल</translation>
 <translation id="6113794647360055231">Chrome आता उत्कृष्ट झाले आहे</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> – Google Chrome</translation>
@@ -192,8 +176,6 @@
 <translation id="6368958679917195344"> Chrome OS अतिरिक्त <ph name="BEGIN_LINK_CROS_OSS" />मुक्त स्रोत सॉफ्टवेअर<ph name="END_LINK_CROS_OSS" /> द्वारे शक्य झाले आहे.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome डेव्हलपर</translation>
 <translation id="6566149418543181476">Google Chrome अपडेट करीत आहे (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">तुम्ही तुमचा Chrome आशय सिंक करण्यासाठी <ph name="PROFILE_EMAIL" /> वापरत आहात. तुमचे सिंक प्राधान्य अपडेट करण्यासाठी किंवा Google खात्याशिवाय Chrome वापरण्यासाठी, <ph name="SETTINGS_LINK" /> ला भेट द्या.</translation>
-<translation id="6600954340915313787">Chrome वर कॉपी केले</translation>
 <translation id="6676384891291319759">इंटरनेट अॅक्सेस करा</translation>
 <translation id="6679975945624592337">Google Chrome बॅकग्राउंडमध्ये चालू द्या</translation>
 <translation id="6750954913813541382">शब्दलेखनाच्या चुकांमध्ये सुधारणा करण्यासाठी, तुम्ही ब्राउझरमध्ये टाइप करता तो मजकूर Chrome Google ला पाठवते</translation>
@@ -207,7 +189,6 @@
 <translation id="6989339256997917931">Google Chrome अपडेट केला गेला, परंतु तुम्ही तो किमान 30 दिवसांपासून वापरलेला नाही.</translation>
 <translation id="7098166902387133879">Google Chrome तुमचा मायक्रोफोन वापरत आहे.</translation>
 <translation id="7106741999175697885">टास्क मॅनेजर – Google Chrome</translation>
-<translation id="7164397146364144019">तुम्ही Google कडे संभाव्य सुरक्षितता घटनांच्या तपशीलांचा स्वयंचलितपणे अहवाल देऊन Chrome वापरणे अधिक सुरक्षित आणि सुलभ बनविण्यात मदत करू शकता.</translation>
 <translation id="7242029209006116544">तुम्ही एका व्यवस्थापित खात्यासह साइन इन करत आहात आणि तुमच्या Google Chrome प्रोफाइलवर त्याच्या अॅडमिनिस्ट्रेटरला नियंत्रण देत आहात. तुमचा Chrome डेटा, जसे की तुमचे अॅप्स, बुकमार्क, इतिहास, पासवर्ड आणि अन्य सेटिंग्ज <ph name="USER_NAME" /> वर कायमच्या बद्ध होतील. तुम्ही Google खाती डॅशबोर्डद्वारे हा डेटा हटवण्यात सक्षम व्हाल, परंतु तुम्ही दुसर्‍या खात्यासह हा डेटा संबद्ध करण्यात सक्षम असणार नाही. तुम्ही तुमचा विद्यमान Chrome डेटा वेगळा ठेवण्यासाठी एक नवीन प्रोफाइल वैकल्पिकपणे तयार करू शकता. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">ही भाषा Google Chrome UI दाखवण्यासाठी वापरली जाते</translation>
 <translation id="7296210096911315575">महत्त्वाचा वापर आणि सुरक्षा माहिती</translation>
@@ -216,7 +197,6 @@
 <translation id="7398801000654795464">तुम्ही <ph name="USER_EMAIL_ADDRESS" /> या रुपात Chrome मध्ये साइन इन केले होते. कृपया पुन्हा साइन इन करण्यासाठी समान खाते वापरा.</translation>
 <translation id="7408085963519505752">Chrome OS अटी</translation>
 <translation id="7419046106786626209">आपल्या डोमेनसाठी संकालन उपलब्ध नसल्यामुळे Chrome OS तुमचा डेटा संकालित करू शकले नाही.</translation>
-<translation id="7459554271817304652">तुमची पर्सनलाइझ केलेली ब्राउझर वैशिष्ट्ये सेव्ह करण्यासाठी सिंक सेट करा आणि कोणत्याही कॉंप्युटरवरील Google Chrome वरून ते अॅक्सेस करा.</translation>
 <translation id="7486227612705979895">ॲड्रेस बारमध्ये सूचना देण्यासाठी Chrome तुमची ड्राइव्ह ॲक्सेस करेल</translation>
 <translation id="7531671357096394523">Chrome च्या सर्व प्रती बंद करा.</translation>
 <translation id="7535429826459677826">Google Chrome विकासक</translation>
@@ -240,25 +220,18 @@
 <translation id="7962410387636238736">Windows XP आणि Windows Vista ला आता सपोर्ट नसल्याने या कॉंप्युटरला यापुढे Google Chrome अपडेट मिळणार नाहीत</translation>
 <translation id="8008534537613507642">Chrome पुनर्स्थापित करा</translation>
 <translation id="8013993649590906847">इमेजचे उपयोगी वर्णन नसल्यास, Chrome तुमच्यासाठी ते देण्याचा प्रयत्न करेल. वर्णने तयार करण्यासाठी, इमेज Google ला पाठवल्या जातात.</translation>
-<translation id="8032142183999901390">Chrome वरून तुमचे खाते काढल्यानंतर, तुम्हाला हे प्रभावी होण्यासाठी तुमचे उघडे टॅब रीलोड करण्याची आवश्यकता असू शकते.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome विषयी</translation>
-<translation id="8179874765710681175">तुमच्या फोनवर Chrome इंस्टॉल करा. आम्ही तुमच्या फोनवर एक SMS पाठवू.</translation>
-<translation id="825412236959742607">हे पेज खूप जास्त मेमरी वापरत असल्यामुळे, Chrome ने काही आशय काढून टाकला आहे.</translation>
 <translation id="8255190535488645436">Google Chrome तुमचा कॅमेरा आणि मायक्रोफोन वापरत आहे.</translation>
 <translation id="8286862437124483331">Google Chrome पासवर्ड दर्शविण्‍याचा प्रयत्‍न करत आहे. यास अनुमती देण्‍यासाठी तुमचा Windows पासवर्ड टाइप करा.</translation>
 <translation id="8290100596633877290">अरेरे! Google Chrome क्रॅश झाला. त्वरित पुन्हा लाँच करायचा?</translation>
 <translation id="8342675569599923794">ही फाईल धोकादायक आहे, त्यामुळे Chrome ने ती अवरोधित केली आहे.</translation>
 <translation id="8370517070665726704">कॉपीराइट <ph name="YEAR" /> Google LLC. सर्व हक्क राखीव.</translation>
 <translation id="840084489713044809">Google Chrome ला तुमचे पासवर्ड एक्सपोर्ट करायचे आहेत.</translation>
-<translation id="8406086379114794905">Chrome उत्कृष्ट बनविण्यात मदत करा</translation>
 <translation id="8455999171311319804">पर्यायी: निदान आणि वापर डेटा Google कडे स्वयंचलितपणे पाठवून Chrome OS ला आणखी चांगले बनविण्‍यात मदत करा.</translation>
-<translation id="8478823064122749032">Chrome तुमच्या फोनवर इंस्टॉल करा. आम्ही तुमच्या या खाते रिकव्हरी फोन नंबरवर एक SMS पाठवू: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome साठी आत्ताच एक विशिष्ट सुरक्षितता अपडेट लागू करण्यात आला. आता रीस्टार्ट करा आणि आम्ही तुमचे टॅब रिस्टोअर करू.</translation>
 <translation id="8521348052903287641">Google Chrome विकासकाने mDNS रहदारीस अनुमती देण्यासाठी इनबाउंड नियम.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome App Launcher Canary</translation>
 <translation id="8556340503434111824">Google Chrome ची नवीन आवृत्ती उपलब्ध आहे, आणि ही नेहमीपेक्षा द्रुत आहे. </translation>
-<translation id="8568392309447938879">अ‍ॅप्स वापरण्यासाठी तुम्ही Chrome मध्ये साइन इन केलेले असणे आवश्यक आहे. हे Chrome ला डिव्हाइसेसवर तुमचे अ‍ॅप्स, बुकमार्क, इतिहास, पासवर्ड आणि अन्य सेटिंग्ज संकालित करण्याची अनुमती देते.</translation>
 <translation id="8606668294522778825">Google Chrome तुमच्या ब्राउझिंग अनुभवात सुधारणा करण्यासाठी वेब सेवा वापरू शकते. तुमच्याकडे या सेवा बंद करण्याचा पर्याय आहे. <ph name="BEGIN_LINK" />अधिक जाणून घ्या<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome प्रतिसाद देत नाही. त्वरित पुन्हा लाँच करायचा?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome एका मिनिटामध्ये पुन्हा लॉंच होईल}other{Chrome # मिनिटांमध्ये पुन्हा लॉंच होईल}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ms.xtb b/chrome/app/resources/google_chrome_strings_ms.xtb
index 6a260c4a..5b6fc62 100644
--- a/chrome/app/resources/google_chrome_strings_ms.xtb
+++ b/chrome/app/resources/google_chrome_strings_ms.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">OS Chrome tidak dapat menyegerakkan data anda. Sila kemas kini frasa laluan Segerak anda.</translation>
 <translation id="1302523850133262269">Sila tunggu sementara Chrome memasang kemas kini sistem terkini.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Dapatkan bantuan untuk menggunakan Chrome</translation>
 <translation id="1399397803214730675">Komputer ini mempunyai versi Google Chrome paling terkini. Jika perisian tidak berfungsi, sila nyahpasang Google Chrome dan cuba semula.</translation>
 <translation id="1434626383986940139">Apl Chrome Canary</translation>
-<translation id="1469002951682717133">Pelancar Apl Chrome</translation>
 <translation id="1553358976309200471">Kemas Kini Chrome</translation>
 <translation id="1587223624401073077">Google Chrome menggunakan kamera anda.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> berbahaya, jadi Chrome telah menyekat fail itu.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome akan menyimpan kata laluan ini dalam Akaun Google anda. Anda tidak perlu mengingati kata laluan tersebut.</translation>
 <translation id="174539241580958092">Google Chrome tidak dapat menyegerakkan data anda disebabkan ralat melog masuk.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Dapatkan bantuan untuk menggunakan Chrome OS</translation>
-<translation id="1795405610103747296">Pasang Chrome pada telefon anda. Kami akan menghantar SMS ke telefon anda: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Dengan mematikan pilihan ini, anda boleh mengelog masuk ke tapak Google seperti Gmail tanpa perlu mengelog masuk ke Chrome</translation>
 <translation id="1860536484129686729">Chrome memerlukan kebenaran untuk mengakses kamera anda bagi tapak ini</translation>
 <translation id="1873233029667955273">Google Chrome bukan penyemak imbas lalai anda</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Untuk mendapatkan butiran OS Chrome, sila lihat <ph name="LINK_BEGIN" />
       Perihal OS Chrome<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Sila mulakan semula Chrome sekarang</translation>
-<translation id="216054706567564023">Pasang Chrome pada telefon anda. Kami akan menghantar SMS ke nombor telefon pemulihan akaun anda.</translation>
 <translation id="2246246234298806438">Google Chrome tidak dapat memaparkan pratonton cetakan apabila pemapar PDF terbina dalam tiada.</translation>
-<translation id="2252923619938421629">Bantu menjadikan Google Chrome lebih baik dengan melaporkan tetapan semasa</translation>
-<translation id="2286950485307333924">Anda kini dilog masuk ke Chrome</translation>
 <translation id="2290014774651636340">Kunci API Google tiada. Sesetengah fungsi Google Chrome akan dilumpuhkan.</translation>
 <translation id="2290095356545025170">Adakah anda pasti anda mahu menyahpasang Google Chrome?</translation>
 <translation id="2309047409763057870">Ini adalah pemasangan kedua Google Chrome dan tidak boleh dijadikan penyemak imbas lalai anda.</translation>
-<translation id="2346876346033403680">Seseorang telah log masuk ke Chrome pada komputer ini sebagai <ph name="ACCOUNT_EMAIL_LAST" /> sebelum ini. Jika itu bukan akaun anda, buat pengguna Chrome yang baharu untuk mengasingkan maklumat anda.
-
-Teruskan juga log masuk akan menggabungkan maklumat Chrome seperti penanda halaman, sejarah dan tetapan lain ke <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome memerlukan kebenaran untuk mengakses kamera dan mikrofon anda bagi tapak ini</translation>
 <translation id="2429317896000329049">Google Chrome tidak dapat menyegerakkan data anda kerana Segerak tidak tersedia untuk domain anda.</translation>
 <translation id="2467438592969358367">Google Chrome mahu mengeksport kata laluan anda. Taip kata laluan Windows anda untuk membenarkannya.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">Anda kini telah log masuk ke Chrome!</translation>
 <translation id="2888126860611144412">Perihal Chrome</translation>
 <translation id="3037838751736561277">Google Chrome dalam mod latar belakang.</translation>
-<translation id="3047079729301751317">Memutuskan sambungan <ph name="USERNAME" /> akan mengosongkan sejarah anda, penanda halaman, tetapan dan data Chrome lain yang tersimpan pada peranti ini. Data yang disimpan dalam Akaun Google anda tidak akan dikosongkan dan boleh diurus pada <ph name="GOOGLE_DASHBOARD_LINK" />Papan Pemuka Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Tab Chrome</translation>
 <translation id="3080151273017101988">Terus menjalankan apl latar belakang apabila Google Chrome ditutup</translation>
 <translation id="3089968997497233615">Terdapat versi Google Chrome baharu yang lebih selamat tersedia.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Segerakkan dan peribadikan Chrome pada semua peranti anda</translation>
 <translation id="3622797965165704966">Kini lebih mudah menggunakan Chrome dengan Akaun Google anda dan pada komputer yang dikongsi.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Syarat Perkhidmatan<ph name="END_TERMS_OF_SERVICE_LINK" /> OS Google Chrome</translation>
-<translation id="3716182511346448902">Halaman ini menggunakan terlalu banyak memori, jadi Chrome menjeda halaman ini.</translation>
 <translation id="3718181793972440140">Tindakan ini akan memadamkan 1 item daripada peranti ini. Untuk mendapatkan kembali data anda kemudian, log masuk ke Chrome sebagai <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Sambungan "<ph name="EXTENSION_NAME" />" telah menukar halaman yang ditunjukkan apabila anda memulakan Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Lancarkan semula Chrome dalam masa sehari}other{Lancarkan semula Chrome dalam masa # hari}}</translation>
 <translation id="424864128008805179">Log keluar daripada Chrome?</translation>
 <translation id="4251615635259297716">Paut data Chrome anda ke akaun ini?</translation>
-<translation id="4251625577313994583">dapatkan Chrome pada iPhone anda</translation>
 <translation id="4293420128516039005">Log masuk untuk menyegerakkan dan memperibadikan Chrome pada semua peranti anda</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">OS Chrome</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Ini menggunakan penyemak ejaan yang sama seperti yang digunakan dalam carian Google. Teks yang anda taip dalam penyemak imbas akan dihantar kepada Google. Anda boleh menukar gelagat ini dalam tetapan pada bila-bila masa.</translation>
 <translation id="4891791193823137474">Biarkan Google Chrome dijalankan di latar belakang</translation>
 <translation id="4895437082222824641">Buka pautan dalam &amp;tab Chrome baharu</translation>
-<translation id="4921569541910214635">Berkongsi komputer? Kini anda boleh sediakan Chrome menurut cara yang anda suka.</translation>
 <translation id="4953650215774548573">Tetapkan Google Chrome sebagai penyemak imbas lalai anda</translation>
 <translation id="495931528404527476">Dalam Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Mulakan Semula</translation>
 <translation id="5940385492829620908">Web, penanda halaman dan barangan Chrome anda yang lain tinggal di sini.</translation>
 <translation id="5941830788786076944">Jadikan Google Chrome penyemak imbas lalai</translation>
-<translation id="6014844626092547096">Anda sedang dilog masuk ke Chrome! Penyegerakan dilumpuhkan oleh pentadbir anda.</translation>
-<translation id="6040143037577758943">Tutup</translation>
 <translation id="6070348360322141662">Untuk keselamatan tambahan, Google Chrome akan menyulitkan data anda</translation>
 <translation id="6113794647360055231">Chrome kini lebih baik</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">OS Chrome menjadi kenyataan dengan <ph name="BEGIN_LINK_CROS_OSS" />perisian sumber terbuka<ph name="END_LINK_CROS_OSS" /> tambahan.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Mengemas kini Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Anda menggunakan <ph name="PROFILE_EMAIL" /> untuk menyegerakkan bahan digital Chrome anda. Untuk mengemas kini pilihan penyegerakan anda atau menggunakan Chrome tanpa akaun Google, lawati <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Disalin ke Chrome</translation>
 <translation id="6676384891291319759">Akses Internet</translation>
 <translation id="6679975945624592337">Biarkan Google Chrome Dijalankan Di Latar Belakang</translation>
 <translation id="6750954913813541382">Untuk membetulkan kesalahan ejaan, Chrome akan menghantar teks yang anda taip dalam penyemak imbas kepada Google</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome telah dikemas kini, tetapi anda belum menggunakannya untuk sekurang-kurangnya 30 hari.</translation>
 <translation id="7098166902387133879">Google Chrome menggunakan mikrofon anda.</translation>
 <translation id="7106741999175697885">Pengurus Tugas - Google Chrome</translation>
-<translation id="7164397146364144019">Anda boleh membantu menjadikan Chrome lebih selamat dan lebih mudah untuk digunakan dengan melaporkan butiran kemungkinan insiden keselamatan secara automatik kepada Google.</translation>
 <translation id="7242029209006116544">Anda log masuk menggunakan akaun terurus dan memberikan pentadbirnya kawalan terhadap profil Google Chrome anda. Data Chrome anda, seperti apl, penanda halaman, sejarah, kata laluan dan tetapan anda yang lain akan terikat kepada <ph name="USER_NAME" /> secara kekal. Anda akan dapat memadamkan data ini melalui Papan Pemuka Akaun Google, tetapi anda tidak akan dapat mengaitkan data ini dengan akaun lain. Anda boleh memilih membuat profil baharu untuk mengasingkan data Chrome anda yang sedia ada. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Bahasa ini digunakan untuk memaparkan UI Google Chrome</translation>
 <translation id="7296210096911315575">Maklumat penggunaan dan keselamatan penting</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Anda telah log masuk ke Chrome sebagai <ph name="USER_EMAIL_ADDRESS" />. Sila gunakan akaun yang sama untuk log masuk lagi.</translation>
 <translation id="7408085963519505752">Syarat Chrome OS</translation>
 <translation id="7419046106786626209">OS Chrome tidak dapat menyegerakkan data anda kerana Segerak tidak tersedia untuk domain anda.</translation>
-<translation id="7459554271817304652">Sediakan Penyegerakan untuk menyimpan ciri penyemak imbas anda yang diperibadikan ke web dan mengaksesnya dari Google Chrome pada mana-mana komputer.</translation>
 <translation id="7486227612705979895">Chrome akan mengakses Drive anda untuk membuat cadangan dalam bar alamat</translation>
 <translation id="7531671357096394523">Tutup semua salinan Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Komputer ini tidak akan menerima kemas kini Google Chrome lagi kerana Windows XP dan Windows Vista sudah tidak disokong</translation>
 <translation id="8008534537613507642">Pasang Semula Chrome</translation>
 <translation id="8013993649590906847">Jika imej tiada perihalan yang berguna, Chrome akan cuba memberikan perihalan untuk anda. Untuk membuat perihalan, imej dihantar kepada Google.</translation>
-<translation id="8032142183999901390">Selepas mengalih keluar akaun anda daripada Chrome, anda mungkin perlu memuatkan semula tab yang dibuka untuk memberi kesan.</translation>
 <translation id="8129812357326543296">Mengenai &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Pasang Chrome pada telefon anda. Kami akan menghantar SMS ke telefon anda.</translation>
-<translation id="825412236959742607">Halaman ini menggunakan terlalu banyak memori, jadi Chrome mengalih keluar sesetengah kandungan.</translation>
 <translation id="8255190535488645436">Google Chrome menggunakan kamera dan mikrofon anda.</translation>
 <translation id="8286862437124483331">Google Chrome cuba menunjukkan kata laluan. Taip kata laluan Windows anda untuk membenarkannya.</translation>
 <translation id="8290100596633877290">Alamak! Google Chrome mengalami ranap sistem. Lancarkan semula sekarang?</translation>
 <translation id="8342675569599923794">Fail ini berbahaya, maka Chrome telah menyekatnya.</translation>
 <translation id="8370517070665726704">Hak Cipta <ph name="YEAR" /> Google LLC. Hak cipta terpelihara.</translation>
 <translation id="840084489713044809">Google Chrome mahu mengeksport kata laluan anda.</translation>
-<translation id="8406086379114794905">Bantu mempertingkat Chrome</translation>
 <translation id="8455999171311319804">Pilihan: Bantu jadikan OS Chrome lebih baik dengan menghantar data diagnostik dan penggunaan kepada Google secara automatik.</translation>
-<translation id="8478823064122749032">Pasang Chrome pada telefon anda. Kami akan menghantar SMS ke nombor telefon pemulihan akaun anda: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Kemas kini keselamatan khas untuk Google Chrome baru sahaja diterapkan. Mulakan semula sekarang dan kami akan memulihkan tab anda.</translation>
 <translation id="8521348052903287641">Peraturan masuk bagi Google Chrome Dev untuk membenarkan trafik mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Pelancar Apl Chrome Canary</translation>
 <translation id="8556340503434111824">Terdapat versi baharu Google Chrome yang tersedia, dan ia lebih pantas daripada biasa.</translation>
-<translation id="8568392309447938879">Anda perlu melog masuk ke Chrome untuk menggunakan apl. Ini membenarkan Chrome menyegerakkan apl, penanda halaman, sejarah, kata laluan dan tetapan anda yang lain pada semua peranti.</translation>
 <translation id="8606668294522778825">Google Chrome mungkin menggunakan perkhidmatan web untuk meningkatkan pengalaman semakan imbas anda. Anda boleh memilih untuk melumpuhkan perkhidmatan ini. <ph name="BEGIN_LINK" />Ketahui lebih lanjut<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome tidak responsif. Lancarkan semula sekarang?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome akan dilancarkan semula dalam masa seminit}other{Chrome akan dilancarkan semula dalam masa # minit}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_nl.xtb b/chrome/app/resources/google_chrome_strings_nl.xtb
index ccbd2a32..3ce833e 100644
--- a/chrome/app/resources/google_chrome_strings_nl.xtb
+++ b/chrome/app/resources/google_chrome_strings_nl.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS kan je gegevens niet synchroniseren. Update je wachtwoordzin voor synchronisatie.</translation>
 <translation id="1302523850133262269">Wacht terwijl Chrome de nieuwste systeemupdates installeert.</translation>
 <translation id="137466361146087520">Google Chrome Bèta</translation>
-<translation id="1393853151966637042">Hulp bij het gebruik van Chrome</translation>
 <translation id="1399397803214730675">Deze computer beschikt al over een nieuwere versie van Google Chrome. Als de software niet werkt, verwijder je Google Chrome en probeer je het opnieuw.</translation>
 <translation id="1434626383986940139">Chrome Canary-apps</translation>
-<translation id="1469002951682717133">App-opstartprogramma van Chrome</translation>
 <translation id="1553358976309200471">Chrome updaten</translation>
 <translation id="1587223624401073077">Google Chrome gebruikt je camera.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> is gevaarlijk en is daarom door Chrome geblokkeerd.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome slaat dit wachtwoord op in je Google-account. Je hoeft het niet te onthouden.</translation>
 <translation id="174539241580958092">Google Chrome kan je gegevens niet synchroniseren vanwege een fout tijdens het inloggen.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Hulp bij het gebruik van Chrome OS</translation>
-<translation id="1795405610103747296">Installeer Chrome op je telefoon. We sturen een sms naar je telefoon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Als je dit uitschakelt, kun je inloggen bij Google-sites zoals Gmail zonder in te loggen bij Chrome</translation>
 <translation id="1860536484129686729">Chrome heeft toegangsrechten voor je camera nodig voor deze site</translation>
 <translation id="1873233029667955273">Google Chrome is niet je standaardbrowser</translation>
@@ -54,16 +50,10 @@
 <translation id="2123055963409958220">Help Chrome beter te maken door de <ph name="BEGIN_LINK" />huidige instellingen<ph name="END_LINK" /> te melden</translation>
 <translation id="2128103434102193461">Ga naar <ph name="LINK_BEGIN" />Over Chrome OS<ph name="LINK_END" /> voor meer informatie over Chrome OS</translation>
 <translation id="2151406531797534936">Chrome nu opnieuw opstarten</translation>
-<translation id="216054706567564023">Installeer Chrome op je telefoon. We sturen een sms naar het hersteltelefoonnummer voor je account.</translation>
 <translation id="2246246234298806438">Google Chrome kan het afdrukvoorbeeld niet weergeven wanneer de ingebouwde pdf-viewer ontbreekt.</translation>
-<translation id="2252923619938421629">Help Google Chrome beter te maken door de huidige instellingen te melden</translation>
-<translation id="2286950485307333924">Je bent nu ingelogd bij Chrome</translation>
 <translation id="2290014774651636340">Google API-sleutels ontbreken. Sommige functies van Google Chrome worden uitgeschakeld.</translation>
 <translation id="2290095356545025170">Weet je zeker dat je Google Chrome wilt verwijderen?</translation>
 <translation id="2309047409763057870">Dit is een tweede installatie van Google Chrome en kan niet als standaardbrowser worden ingesteld.</translation>
-<translation id="2346876346033403680">Iemand is eerder ingelogd bij Chrome als <ph name="ACCOUNT_EMAIL_LAST" />. Als dit niet je account is, maak je een nieuwe Chrome-gebruiker om je gegevens gescheiden te houden.
-
-Als je inlogt, worden Chrome-gegevens zoals bladwijzers, geschiedenis en andere instellingen samengevoegd met <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome heeft toegangsrechten voor je camera en microfoon nodig voor deze site</translation>
 <translation id="2429317896000329049">Google Chrome kan je gegevens niet synchroniseren, omdat synchronisatie niet beschikbaar is voor je domein.</translation>
 <translation id="2467438592969358367">Google Chrome wil je wachtwoorden exporteren. Geef je Windows-wachtwoord op om dit toe te staan.</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">Je bent ingelogd bij Chrome.</translation>
 <translation id="2888126860611144412">Over Chrome</translation>
 <translation id="3037838751736561277">Google Chrome bevindt zich in de achtergrondmodus.</translation>
-<translation id="3047079729301751317">Als je de verbinding met <ph name="USERNAME" /> verbreekt, worden je geschiedenis, bladwijzers, instellingen en andere Chrome-gegevens op dit apparaat opgeslagen. De gegevens die in je Google-account zijn opgeslagen, worden niet gewist en kunnen worden beheerd via <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chrome-tabblad</translation>
 <translation id="3080151273017101988">Achtergrondapps blijven uitvoeren wanneer Google Chrome is gesloten</translation>
 <translation id="3089968997497233615">Er is een nieuwere, veiligere versie van Google Chrome beschikbaar.</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">Chrome op al je apparaten synchroniseren en personaliseren</translation>
 <translation id="3622797965165704966">Het is nu gemakkelijker om Chrome met je Google-account en op gedeelde computers te gebruiken.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Servicevoorwaarden<ph name="END_TERMS_OF_SERVICE_LINK" /> voor Google Chrome OS</translation>
-<translation id="3716182511346448902">Omdat deze pagina te veel geheugen gebruikt, heeft Chrome de pagina onderbroken.</translation>
 <translation id="3718181793972440140">Hiermee wordt 1 item verwijderd van dit apparaat. Als je je gegevens later wilt terughalen, log je in bij Chrome als <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">De extensie '<ph name="EXTENSION_NAME" />' heeft gewijzigd welke pagina wordt weergegeven wanneer je Chrome start.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Start Chrome binnen een dag opnieuw}other{Start Chrome binnen # dagen opnieuw}}</translation>
 <translation id="424864128008805179">Uitloggen bij Chrome?</translation>
 <translation id="4251615635259297716">Wil je je Chrome-gegevens aan dit account koppelen?</translation>
-<translation id="4251625577313994583">Download Chrome naar je iPhone</translation>
 <translation id="4293420128516039005">Log in om Chrome op al je apparaten te synchroniseren en te personaliseren</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Besturingssysteem Chrome</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">Hiervoor wordt dezelfde spellingcontrole gebruikt als voor Google Zoeken. Tekst die je in de browser typt, wordt naar Google gestuurd. Je kunt dit altijd wijzigen in de instellingen.</translation>
 <translation id="4891791193823137474">Google Chrome op de achtergrond laten uitvoeren</translation>
 <translation id="4895437082222824641">Link openen op een nieuw Chrome-&amp;tabblad</translation>
-<translation id="4921569541910214635">Deel je een computer? Je kunt Chrome nu precies instellen zoals jij dat wilt.</translation>
 <translation id="4953650215774548573">Google Chrome instellen als je standaardbrowser</translation>
 <translation id="495931528404527476">In Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -175,8 +161,6 @@
 <translation id="5895138241574237353">Opnieuw starten</translation>
 <translation id="5940385492829620908">Hier vind je internet, bladwijzers en andere Chrome-instellingen.</translation>
 <translation id="5941830788786076944">Google Chrome instellen als mijn standaardbrowser</translation>
-<translation id="6014844626092547096">Je bent nu ingelogd bij Chrome! Synchronisatie is uitgeschakeld door je beheerder.</translation>
-<translation id="6040143037577758943">Sluiten</translation>
 <translation id="6070348360322141662">Je gegevens worden voor extra beveiliging door Google Chrome versleuteld</translation>
 <translation id="6113794647360055231">Chrome is nu nog beter</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -189,8 +173,6 @@
 <translation id="6368958679917195344">Chrome OS wordt mogelijk gemaakt door aanvullende <ph name="BEGIN_LINK_CROS_OSS" />open source-software<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome updaten (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Je gebruikt <ph name="PROFILE_EMAIL" /> om je Chrome-bestanden te synchroniseren. Als je je synchronisatievoorkeur wilt bijwerken of Chrome zonder Google-account wilt gebruiken, ga je naar '<ph name="SETTINGS_LINK" />'.</translation>
-<translation id="6600954340915313787">Gekopieerd naar Chrome</translation>
 <translation id="6676384891291319759">Verbinding maken met internet</translation>
 <translation id="6679975945624592337">Google Chrome op de achtergrond laten uitvoeren</translation>
 <translation id="6750954913813541382">Voor het verbeteren van spelfouten verzendt Chrome de tekst die je in de browser typt naar Google</translation>
@@ -204,7 +186,6 @@
 <translation id="6989339256997917931">Google Chrome is bijgewerkt, maar je hebt het programma minstens 30 dagen niet gebruikt.</translation>
 <translation id="7098166902387133879">Google Chrome gebruikt je microfoon.</translation>
 <translation id="7106741999175697885">Taakbeheer - Google Chrome</translation>
-<translation id="7164397146364144019">Je kunt helpen Chrome veiliger en gebruiksvriendelijker te maken door automatisch informatie over mogelijke beveiligingsincidenten aan Google te melden.</translation>
 <translation id="7242029209006116544">Je logt in op een beheerd account waarmee de eigenaar van dat account beheer krijgt over je Google Chrome-profiel. Je Chrome-gegevens zoals je apps, bladwijzers, geschiedenis, wachtwoorden en andere instellingen worden permanent gekoppeld aan <ph name="USER_NAME" />. Je kunt deze gegevens verwijderen via het Google Accounts Dashboard, maar je kunt deze gegevens niet koppelen aan een ander account. Je kunt ook een nieuw profiel maken om je bestaande Chrome-gegevens gescheiden te houden. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Deze taal wordt gebruikt om de Google Chrome-UI weer te geven</translation>
 <translation id="7296210096911315575">Belangrijke informatie over gebruik en veiligheid</translation>
@@ -213,7 +194,6 @@
 <translation id="7398801000654795464">Je bent ingelogd bij Chrome als <ph name="USER_EMAIL_ADDRESS" />. Gebruik hetzelfde account om opnieuw in te loggen.</translation>
 <translation id="7408085963519505752">Voorwaarden van Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS kan je gegevens niet synchroniseren omdat synchronisatie niet beschikbaar is voor je domein.</translation>
-<translation id="7459554271817304652">Stel synchronisatie in om je persoonlijke browserfuncties online op te slaan en toegang te krijgen tot deze functies via Google Chrome, vanaf elke computer.</translation>
 <translation id="7486227612705979895">Chrome gebruikt de toegang tot je Drive om suggesties te doen in de adresbalk</translation>
 <translation id="7531671357096394523">Sluit alle exemplaren van Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -237,25 +217,18 @@
 <translation id="7962410387636238736">Deze computer ontvangt geen Google Chrome-updates meer, omdat Windows XP en Windows Vista niet meer worden ondersteund</translation>
 <translation id="8008534537613507642">Chrome opnieuw installeren</translation>
 <translation id="8013993649590906847">Als een afbeelding geen nuttige beschrijving bevat, probeert Chrome je er een te geven. Afbeeldingen worden naar Google verzonden om beschrijvingen te maken.</translation>
-<translation id="8032142183999901390">Nadat je je account uit Chrome hebt verwijderd, moet je je geopende tabbladen mogelijk opnieuw laden om de wijzigingen door te voeren.</translation>
 <translation id="8129812357326543296">Over &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Installeer Chrome op je telefoon. We sturen een sms naar je telefoon.</translation>
-<translation id="825412236959742607">Omdat deze pagina te veel geheugen gebruikt, heeft Chrome wat content verwijderd.</translation>
 <translation id="8255190535488645436">Google Chrome gebruikt je camera en microfoon.</translation>
 <translation id="8286862437124483331">Google Chrome probeert wachtwoorden weer te geven. Geef je Windows-wachtwoord op om dit toe te staan.</translation>
 <translation id="8290100596633877290">Oeps! Google Chrome is vastgelopen. Nu opnieuw starten?</translation>
 <translation id="8342675569599923794">Dit bestand is gevaarlijk en is daarom door Chrome geblokkeerd.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Alle rechten voorbehouden.</translation>
 <translation id="840084489713044809">Google Chrome wil je wachtwoorden exporteren.</translation>
-<translation id="8406086379114794905">Help ons Chrome te verbeteren</translation>
 <translation id="8455999171311319804">Optioneel: Help Chrome OS beter te maken door automatisch diagnostische en gebruiksgegevens te verzenden naar Google.</translation>
-<translation id="8478823064122749032">Installeer Chrome op je telefoon. We sturen een sms naar het hersteltelefoonnummer voor je account: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Er is zojuist een speciale beveiligingsupdate voor Google Chrome toegepast. Start nu opnieuw op. Je tabbladen worden hersteld.</translation>
 <translation id="8521348052903287641">Inkomende regel zodat Google Chrome Dev mDNS-verkeer toestaat.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome App Launcher Canary</translation>
 <translation id="8556340503434111824">Er is een nieuwe versie van Google Chrome en deze is sneller dan ooit.</translation>
-<translation id="8568392309447938879">Je moet zijn ingelogd bij Chrome om apps te gebruiken. Zo kan Chrome je apps, bladwijzers, geschiedenis, wachtwoorden en andere instellingen synchroniseren met al je apparaten.</translation>
 <translation id="8606668294522778825">Google Chrome kan webservices gebruiken om je browse-ervaring te verbeteren. Je kunt deze services eventueel uitschakelen. <ph name="BEGIN_LINK" />Meer informatie<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome reageert niet meer. Nu opnieuw starten?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome wordt over één minuut opnieuw gestart}other{Chrome wordt over # minuten opnieuw gestart}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_no.xtb b/chrome/app/resources/google_chrome_strings_no.xtb
index d22951f..bce6c6c 100644
--- a/chrome/app/resources/google_chrome_strings_no.xtb
+++ b/chrome/app/resources/google_chrome_strings_no.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS kunne ikke synkronisere dataene dine. Oppdater passordfrasen for synkronisering.</translation>
 <translation id="1302523850133262269">Vent mens Chrome installerer de nyeste systemoppdateringene.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Oppsøk brukerstøtten</translation>
 <translation id="1399397803214730675">Denne datamaskinen har allerede en nyere versjon av Google Chrome. Hvis programvaren ikke fungerer, må du avinstallere Google Chrome og prøve på nytt.</translation>
 <translation id="1434626383986940139">Chrome Canary-apper</translation>
-<translation id="1469002951682717133">Chrome Appvelger</translation>
 <translation id="1553358976309200471">Oppdater Chrome</translation>
 <translation id="1587223624401073077">Google Chrome bruker kameraet ditt.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> er farlig, så Chrome har blokkert den.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome lagrer passordet i Google-kontoen din, så du trenger ikke å huske det.</translation>
 <translation id="174539241580958092">Google Chrome kunne ikke synkronisere dataene dine på grunn av en påloggingsfeil.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Få hjelp med å bruke Chrome OS</translation>
-<translation id="1795405610103747296">Installer Chrome på telefonen din. Vi sender deg en SMS på <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Ved å slå dette av kan du logge på Google-sider, som Gmail, uten å logge på Chrome</translation>
 <translation id="1860536484129686729">Chrome trenger tilgang til kameraet ditt for dette nettstedet</translation>
 <translation id="1873233029667955273">Google Chrome er ikke standardnettleseren din</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">For detaljer om Chrome OS, se <ph name="LINK_BEGIN" />
       Om Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Start Chrome på nytt nå</translation>
-<translation id="216054706567564023">Installer Chrome på telefonen din. Vi sender en SMS til telefonnummeret ditt for kontogjenoppretting.</translation>
 <translation id="2246246234298806438">Google Chrome kan ikke vise forhåndsvisningen av utskrift når det innebygde PDF-visningsprogrammet mangler.</translation>
-<translation id="2252923619938421629">Bidra til å gjøre Google Chrome bedre ved å rapportere gjeldende innstillinger</translation>
-<translation id="2286950485307333924">Nå er du logget på Chrome</translation>
 <translation id="2290014774651636340">API-nøkler for Google mangler. Noe funksjonalitet i Google Chrome blir deaktivert.</translation>
 <translation id="2290095356545025170">Er du sikker på at du vil avinstallere Google Chrome?</translation>
 <translation id="2309047409763057870">Dette er en sekundær installering av Google Chrome. Den kan ikke brukes som standardnettleser.</translation>
-<translation id="2346876346033403680">Noen har tidligere logget seg på Chrome på denne datamaskinen som <ph name="ACCOUNT_EMAIL_LAST" />. Hvis det ikke er kontoen din, må du opprette en ny Chrome-bruker for å holde informasjonen din atskilt.
-
-Hvis du logger deg på allikevel, blir Chrome-informasjon som bokmerker, loggen og andre innstillinger slått sammen med <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome trenger tilgang til kameraet ditt og mikrofonen din for dette nettstedet</translation>
 <translation id="2429317896000329049">Google Chrome kunne ikke synkronisere dataene dine fordi synkronisering ikke er tilgjengelig for domenet ditt.</translation>
 <translation id="2467438592969358367">Google Chrome forsøker å eksportere passordene dine. Skriv inn Windows-passordet ditt for å tillate dette.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">Du er nå logget på Chrome.</translation>
 <translation id="2888126860611144412">Om Chrome</translation>
 <translation id="3037838751736561277">Google Chrome er i bakgrunnsmodus.</translation>
-<translation id="3047079729301751317">Hvis du kobler fra <ph name="USERNAME" />, slettes loggen din, bokmerkene, innstillingene og andre Chrome-data som er lagret på denne enheten. Data som er lagret i Google-kontoen din, blir ikke tømt og kan administreres på <ph name="GOOGLE_DASHBOARD_LINK" />Google Oversikt<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chrome-fane</translation>
 <translation id="3080151273017101988">Fortsett kjøringen av bakgrunnsprogrammer når Google Chrome er lukket</translation>
 <translation id="3089968997497233615">En ny, sikrere versjon av Google Chrome er tilgjengelig</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Synkroniser og gi Chrome et personlig preg på alle enhetene dine</translation>
 <translation id="3622797965165704966">Nå er det enklere å bruke Chrome med Google-kontoen din og på datamaskiner du deler med andre.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Vilkår for bruk<ph name="END_TERMS_OF_SERVICE_LINK" /> av Google Chrome OS</translation>
-<translation id="3716182511346448902">Denne siden bruker for mye minne, så Chrome har satt den på pause.</translation>
 <translation id="3718181793972440140">Dette sletter 1 element fra denne enheten. For å hente dataene dine igjen senere må du logge på Chrome som <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Utvidelsen «<ph name="EXTENSION_NAME" />» har endret hvilken side som vises når du starter Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Start Chrome på nytt innen en dag}other{Start Chrome på nytt innen # dager}}</translation>
 <translation id="424864128008805179">Vil du logge av Chrome?</translation>
 <translation id="4251615635259297716">Vil du koble Chrome-dataene dine til denne kontoen?</translation>
-<translation id="4251625577313994583">få Chrome på iPhone</translation>
 <translation id="4293420128516039005">Logg på for å synkronisere og gi Chrome et personlig preg på alle enhetene dine</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS – inn)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Denne funksjonen bruker den samme stavekontrollen som Google Søk. Tekst du skriver inn i nettleseren, sendes til Google. Du kan når som helst endre dette i innstillingene.</translation>
 <translation id="4891791193823137474">La Google Chrome kjøre i bakgrunnen</translation>
 <translation id="4895437082222824641">Åpne linken i en ny &amp;fane i Chrome</translation>
-<translation id="4921569541910214635">Deler du datamaskinen din med andre? Nå kan du konfigurere Chrome akkurat slik du vil.</translation>
 <translation id="4953650215774548573">Bruk Google Chrome som standard nettleser</translation>
 <translation id="495931528404527476">I Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Start på nytt</translation>
 <translation id="5940385492829620908">Her finner du nettinnholdet, bokmerkene og de andre Chrome-tingene dine.</translation>
 <translation id="5941830788786076944">Gjør Google Chrome til standardleser</translation>
-<translation id="6014844626092547096">Du er nå logget på Chrome. Synkronisering er deaktivert av administratoren din.</translation>
-<translation id="6040143037577758943">Lukk</translation>
 <translation id="6070348360322141662">Google Chrome krypterer dataene dine for å øke sikkerheten</translation>
 <translation id="6113794647360055231">Nå er Chrome blitt enda bedre</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">Chrome OS muliggjøres av <ph name="BEGIN_LINK_CROS_OSS" />tilleggsprogramvare med åpen kildekode<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome for utviklere</translation>
 <translation id="6566149418543181476">Oppdaterer Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Du bruker <ph name="PROFILE_EMAIL" /> for synkronisering av Chrome-tingene dine. For å oppdatere alternativene for synkronisering eller bruke Chrome uten Google-konto, kan du gå til <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Kopiert til Chrome</translation>
 <translation id="6676384891291319759">Gå til Internett</translation>
 <translation id="6679975945624592337">La Google Chrome kjøre i bakgrunnen</translation>
 <translation id="6750954913813541382">For å rette stavefeil sender Chrome teksten du skriver inn i nettleseren, til Google</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome har blitt oppdatert, men du har ikke brukt programmet på minst 30 dager.</translation>
 <translation id="7098166902387133879">Google Chrome bruker mikrofonen din.</translation>
 <translation id="7106741999175697885">Oppgavebehandling – Google Chrome</translation>
-<translation id="7164397146364144019">Du kan bidra til å gjøre Chrome tryggere og enklere å bruke, ved å rapportere detaljer om mulige sikkerhetsbrudd til Google automatisk.</translation>
 <translation id="7242029209006116544">Du er i ferd med å logge deg på med en administrert konto og gir administratoren kontroll over Chrome-profilen din. Chrome-dataene dine, som apper, bokmerker, loggen, passord og andre innstillinger, blir permanent knyttet til <ph name="USER_NAME" />. Du kan slette disse dataene via kontooversikten for Google, men du kan ikke knytte disse dataene til en annen konto. Du kan velge om du vil opprette en ny profil for å holde de eksisterende Chrome-dataene dine atskilte. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Dette språket brukes for UI-et i Google Chrome</translation>
 <translation id="7296210096911315575">Viktig informasjon om bruk og sikkerhet</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Du ble logget på Chrome som <ph name="USER_EMAIL_ADDRESS" />. Du må logge deg på igjen med samme konto.</translation>
 <translation id="7408085963519505752">Vilkår for Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS kunne ikke synkronisere dataene dine fordi synkronisering ikke er tilgjengelig for domenet ditt.</translation>
-<translation id="7459554271817304652">Konfigurer Synkronisering til å lagre de personlig tilpassede nettleserfunksjonene dine på nettet slik at du kan bruke dem fra Google Chrome på enhver datamaskin.</translation>
 <translation id="7486227612705979895">Chrome får tilgang til Disk-lagringen din for å kunne gi deg forslag i adressefeltet</translation>
 <translation id="7531671357096394523">Avslutt alle kopier av Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Denne datamaskinen kommer ikke lenger til å motta oppdateringer av Google Chrome, fordi Windows XP og Windows Vista ikke støttes lenger</translation>
 <translation id="8008534537613507642">Installer Chrome på nytt</translation>
 <translation id="8013993649590906847">Hvis et bilde ikke har noen nyttig beskrivelse, prøver Chrome å finne en til deg. For å opprette beskrivelser blir bilder sendt til Google.</translation>
-<translation id="8032142183999901390">Når du har fjernet kontoen din fra Chrome, kan det hende at du må laste inn de åpne fanene på nytt før endringene trer i kraft.</translation>
 <translation id="8129812357326543296">Om &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Installer Chrome på telefonen din. Vi sender deg en SMS.</translation>
-<translation id="825412236959742607">Denne siden bruker for mye minne, så Chrome har fjernet noe av innholdet.</translation>
 <translation id="8255190535488645436">Google Chrome bruker kameraet og mikrofonen din.</translation>
 <translation id="8286862437124483331">Google Chrome forsøker å vise passord. Skriv inn Windows-passordet ditt for å tillate dette.</translation>
 <translation id="8290100596633877290">Google Chrome har fått et programstopp. Vil du starte på nytt nå?</translation>
 <translation id="8342675569599923794">Denne filen er farlig, så Chrome har blokkert den.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Med enerett.</translation>
 <translation id="840084489713044809">Google Chrome forsøker å eksportere passordene dine.</translation>
-<translation id="8406086379114794905">Bidra til å gjøre Chrome bedre</translation>
 <translation id="8455999171311319804">Valgfritt: Bidra til å gjøre Chrome OS bedre ved å sende diagnostikk og brukerdata automatisk til Google.</translation>
-<translation id="8478823064122749032">Installer Chrome på telefonen din. Vi sender en SMS til telefonnummeret ditt for kontogjenoppretting (<ph name="PHONE_NUMBER" />)</translation>
 <translation id="8498858610309223613">En spesiell sikkerhetsoppdatering for Google Chrome ble nettopp installert. Start på nytt nå, så gjenoppretter vi fanene dine.</translation>
 <translation id="8521348052903287641">Regel for å tillate innkommende mDNS-trafikk i Google Chrome Dev.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome-appvelger – Canary</translation>
 <translation id="8556340503434111824">En ny versjon av Google Chrome er tilgjengelig, og den er nå raskere en noen sinne.</translation>
-<translation id="8568392309447938879">Du må være logget på Chrome for å bruke apper. På denne måten kan Chrome synkronisere appene, bokmerkene og passordene samt loggen din og andre innstillinger, på alle enhetene dine.</translation>
 <translation id="8606668294522778825">Google Chrome bruker nettjenester for å forbedre nettopplevelsen din. Du kan deaktivere disse tjenestene. <ph name="BEGIN_LINK" />Finn ut mer<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome svarer ikke. Vil du starte på nytt nå?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome startes på nytt om 1 minutt}other{Chrome startes på nytt om # minutter}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_pl.xtb b/chrome/app/resources/google_chrome_strings_pl.xtb
index ba799d0a..b260ad3b 100644
--- a/chrome/app/resources/google_chrome_strings_pl.xtb
+++ b/chrome/app/resources/google_chrome_strings_pl.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">System operacyjny Chrome nie może zsynchronizować danych. Zaktualizuj hasło synchronizacji.</translation>
 <translation id="1302523850133262269">Poczekaj, aż Chrome zainstaluje najnowsze aktualizacje systemu.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Pomoc do Chrome</translation>
 <translation id="1399397803214730675">Na tym komputerze jest już zainstalowana nowsza wersja Google Chrome. Jeśli oprogramowanie nie działa, odinstaluj Google Chrome, a następnie spróbuj ponownie.</translation>
 <translation id="1434626383986940139">Aplikacje Chrome w wersji poglądowej</translation>
-<translation id="1469002951682717133">Menu z aplikacjami Chrome</translation>
 <translation id="1553358976309200471">Zaktualizuj Chrome</translation>
 <translation id="1587223624401073077">Google Chrome używa Twojej kamery.</translation>
 <translation id="1587325591171447154">Plik <ph name="FILE_NAME" /> jest niebezpieczny, dlatego został zablokowany przez Chrome.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome zapisze to hasło na Twoim koncie Google. Nie musisz go pamiętać.</translation>
 <translation id="174539241580958092">Google Chrome nie może zsynchronizować danych z powodu błędu podczas logowania.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Skorzystaj z pomocy dotyczącej używania systemu operacyjnego Chrome</translation>
-<translation id="1795405610103747296">Zainstaluj Chrome na telefonie. Wyślemy SMS-a na Twój telefon: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Jeśli wyłączysz tę opcję, możesz logować się na stronach Google takich jak Gmail bez logowania się w Chrome</translation>
 <translation id="1860536484129686729">Chrome potrzebuje uprawnień dostępu do aparatu na tej stronie</translation>
 <translation id="1873233029667955273">Google Chrome nie jest domyślną przeglądarką</translation>
@@ -51,16 +47,10 @@
 <translation id="2128103434102193461">Szczegóły dotyczące Chrome OS znajdziesz w sekcji <ph name="LINK_BEGIN" />
       System operacyjny Chrome – informacje<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Uruchom Chrome ponownie</translation>
-<translation id="216054706567564023">Zainstaluj Chrome na telefonie. Wyślemy SMS-a pod numer telefonu do odzyskiwania konta.</translation>
 <translation id="2246246234298806438">Google Chrome nie może pokazać podglądu wydruku, gdy nie ma wbudowanej przeglądarki PDF.</translation>
-<translation id="2252923619938421629">Pomóż udoskonalić Google Chrome, zgłaszając bieżące ustawienia</translation>
-<translation id="2286950485307333924">Jesteś teraz zalogowany w Chrome</translation>
 <translation id="2290014774651636340">Brakuje kluczy interfejsu Google API. Niektóre funkcje Google Chrome będą wyłączone.</translation>
 <translation id="2290095356545025170">Czy na pewno chcesz odinstalować przeglądarkę Google Chrome?</translation>
 <translation id="2309047409763057870">To jest druga instalacja Google Chrome. Nie można ustawić jej jako przeglądarki domyślnej.</translation>
-<translation id="2346876346033403680">Ktoś zalogował się wcześniej w Chrome na tym komputerze jako <ph name="ACCOUNT_EMAIL_LAST" />. Jeśli to nie jest Twoje konto, utwórz nowego użytkownika Chrome, by Twoje informacje były przechowywane oddzielnie.
-
-Jeśli jednak zalogujesz się teraz, informacje Chrome, takie jak zakładki, historia i inne ustawienia, zostaną połączone z kontem <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome potrzebuje uprawnień dostępu do aparatu i mikrofonu na tej stronie</translation>
 <translation id="2429317896000329049">Google Chrome nie może zsynchronizować danych, ponieważ synchronizacja jest niedostępna w Twojej domenie.</translation>
 <translation id="2467438592969358367">Google Chrome chce wyeksportować Twoje hasła. Wpisz swoje hasło do Windows, by na to zezwolić.</translation>
@@ -82,7 +72,6 @@
 <translation id="2871893339301912279">Jesteś zalogowany w Chrome.</translation>
 <translation id="2888126860611144412">Chrome – informacje</translation>
 <translation id="3037838751736561277">Google Chrome jest w trybie działania w tle</translation>
-<translation id="3047079729301751317">Odłączenie konta <ph name="USERNAME" /> spowoduje wyczyszczenie jego historii, zakładek, ustawień i innych danych Chrome zapisanych na tym urządzeniu. Dane przechowywane na koncie Google nie zostaną usunięte. Możesz nimi zarządzać w <ph name="GOOGLE_DASHBOARD_LINK" />Panelu Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Karta Chrome</translation>
 <translation id="3080151273017101988">Kontynuuj działanie aplikacji w tle po zamknięciu przeglądarki Google Chrome</translation>
 <translation id="3089968997497233615">Dostępna jest nowa, bezpieczniejsza wersja przeglądarki Google Chrome.</translation>
@@ -103,7 +92,6 @@
 <translation id="3582972582564653026">Synchronizuj dane Chrome i korzystaj z własnych ustawień przeglądarki na wielu urządzeniach</translation>
 <translation id="3622797965165704966">Korzystanie z Chrome na wspólnych komputerach i przy użyciu konta Google jest teraz jeszcze łatwiejsze.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Warunki korzystania<ph name="END_TERMS_OF_SERVICE_LINK" /> z systemu operacyjnego Google Chrome</translation>
-<translation id="3716182511346448902">Ta strona używa zbyt dużo pamięci, dlatego została wstrzymana w Chrome.</translation>
 <translation id="3718181793972440140">Spowoduje to usunięcie 1 elementu z tego urządzenia. Aby później odzyskać dane, zaloguj się w Chrome jako <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Rozszerzenie „<ph name="EXTENSION_NAME" />” ustawiło inną stronę wyświetlaną po uruchomieniu Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -119,7 +107,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Ponowne uruchomienie Chrome nastąpi w ciągu 1 dnia}few{Ponowne uruchomienie Chrome nastąpi w ciągu # dni}many{Ponowne uruchomienie Chrome nastąpi w ciągu # dni}other{Ponowne uruchomienie Chrome nastąpi w ciągu # dnia}}</translation>
 <translation id="424864128008805179">Wylogować z Chrome?</translation>
 <translation id="4251615635259297716">Połączyć Twoje dane Chrome z tym kontem?</translation>
-<translation id="4251625577313994583">pobierz Chrome na iPhone'a</translation>
 <translation id="4293420128516039005">Zaloguj się, by synchronizować dane Chrome i korzystać z własnych ustawień przeglądarki na wielu urządzeniach</translation>
 <translation id="4328355335528187361">Wersja deweloperska Google Chrome (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -141,7 +128,6 @@
 <translation id="479167709087336770">Będzie stosowany ten sam mechanizm sprawdzania pisowni, który jest używany w wyszukiwarce Google. Tekst wpisywany w przeglądarce jest wysyłany do Google. Zawsze możesz to zmienić w ustawieniach.</translation>
 <translation id="4891791193823137474">Zezwalaj przeglądarce Google Chrome na działanie w tle</translation>
 <translation id="4895437082222824641">O&amp;twórz link w nowej karcie Chrome</translation>
-<translation id="4921569541910214635">Używasz komputera, z którego korzystają inne osoby? Teraz możesz skonfigurować Chrome tak, jak chcesz.</translation>
 <translation id="4953650215774548573">Ustaw Google Chrome jako domyślną przeglądarkę</translation>
 <translation id="495931528404527476">W Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -170,8 +156,6 @@
 <translation id="5895138241574237353">Uruchom ponownie</translation>
 <translation id="5940385492829620908">Tu są Twoje strony, zakładki i inne dane z Chrome.</translation>
 <translation id="5941830788786076944">Ustaw Google Chrome jako domyślną przeglądarkę</translation>
-<translation id="6014844626092547096">Jesteś zalogowany w Chrome. Administrator wyłączył synchronizację.</translation>
-<translation id="6040143037577758943">Zamknij</translation>
 <translation id="6070348360322141662">Dla większego bezpieczeństwa Google Chrome szyfruje dane</translation>
 <translation id="6113794647360055231">Chrome jest jeszcze lepszy</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -184,8 +168,6 @@
 <translation id="6368958679917195344">Opracowanie systemu operacyjnego Chrome było możliwe dzięki dodatkowemu <ph name="BEGIN_LINK_CROS_OSS" />oprogramowaniu typu open source<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Aktualizuję Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Używasz adresu <ph name="PROFILE_EMAIL" /> do synchronizowania danych w Chrome. Aby zaktualizować ustawienia synchronizacji lub używać Chrome bez konta Google, wejdź na stronę <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Skopiowana do Chrome</translation>
 <translation id="6676384891291319759">Skorzystaj z internetu</translation>
 <translation id="6679975945624592337">Zezwalaj Google Chrome na działanie w tle</translation>
 <translation id="6750954913813541382">Aby poprawić błędy pisowni, Chrome wysyła do Google to, co wpisujesz w przeglądarce</translation>
@@ -199,7 +181,6 @@
 <translation id="6989339256997917931">Przeglądarka Google Chrome została zaktualizowana, ale nie była przez Ciebie używana przez co najmniej 30 dni.</translation>
 <translation id="7098166902387133879">Google Chrome używa Twojego mikrofonu.</translation>
 <translation id="7106741999175697885">Menedżer zadań – Google Chrome</translation>
-<translation id="7164397146364144019">Możesz pomóc zwiększyć bezpieczeństwo i komfort korzystania z Chrome, automatycznie przesyłając do Google szczegółowe informacje o możliwych zagrożeniach.</translation>
 <translation id="7242029209006116544">Logujesz się na zarządzane konto i przekazujesz jego administratorowi kontrolę nad swoim profilem Google Chrome. Twoje dane Chrome, takie jak aplikacje, zakładki, historia, hasła i inne ustawienia, zostaną trwale powiązane z użytkownikiem <ph name="USER_NAME" />. Będzie można je usunąć w Panelu kont Google, ale nie będzie można ich powiązać z innym kontem. Możesz też utworzyć nowy profil, by przechowywać swoje dotychczasowe dane Chrome osobno. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Ten język jest używany do wyświetlania UI Google Chrome</translation>
 <translation id="7296210096911315575">Ważne informacje dotyczące użytkowania i bezpieczeństwa</translation>
@@ -208,7 +189,6 @@
 <translation id="7398801000654795464">Byłeś zalogowany w Chrome jako <ph name="USER_EMAIL_ADDRESS" />. Zaloguj się ponownie, korzystając z tego samego konta.</translation>
 <translation id="7408085963519505752">Warunki korzystania z Chrome OS</translation>
 <translation id="7419046106786626209">System operacyjny Chrome nie może zsynchronizować danych, ponieważ synchronizacja jest niedostępna w Twojej domenie.</translation>
-<translation id="7459554271817304652">Skonfiguruj synchronizację, by zapisać w internecie własne funkcje przeglądarki i mieć do nich dostęp w Google Chrome na każdym komputerze.</translation>
 <translation id="7486227612705979895">Chrome będzie mieć dostęp do Dysku, by wyświetlać podpowiedzi na pasku adresu</translation>
 <translation id="7531671357096394523">Zamknij wszystkie kopie Chrome.</translation>
 <translation id="7535429826459677826">Wersja deweloperska Google Chrome</translation>
@@ -232,25 +212,18 @@
 <translation id="7962410387636238736">Google Chrome nie będzie już aktualizować się na tym komputerze, ponieważ systemy Windows XP i Windows Vista nie są już obsługiwane.</translation>
 <translation id="8008534537613507642">Ponownie zainstaluj Chrome</translation>
 <translation id="8013993649590906847">Jeśli obraz nie ma przydatnego opisu, Chrome spróbuje go dla Ciebie stworzyć. W tym celu obrazy zostaną wysłane do Google.</translation>
-<translation id="8032142183999901390">Aby po usunięciu konta z Chrome zmiany zostały zastosowane, może być konieczne ponowne załadowanie otwartych kart.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome – informacje</translation>
-<translation id="8179874765710681175">Zainstaluj Chrome na telefonie. Na Twój telefon wyślemy SMS-a.</translation>
-<translation id="825412236959742607">Ta strona używa zbyt dużo pamięci, dlatego Chrome usunął część jej zawartości.</translation>
 <translation id="8255190535488645436">Google Chrome używa Twojej kamery i mikrofonu.</translation>
 <translation id="8286862437124483331">Google Chrome próbuje pokazać hasła. Podaj swoje hasło do Windows, by na to zezwolić.</translation>
 <translation id="8290100596633877290">O kurczę! Przeglądarka Google Chrome uległa awarii. Uruchomić ją teraz ponownie?</translation>
 <translation id="8342675569599923794">Ten plik jest niebezpieczny, dlatego został zablokowany przez Chrome.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Wszelkie prawa zastrzeżone.</translation>
 <translation id="840084489713044809">Google Chrome chce wyeksportować Twoje hasła.</translation>
-<translation id="8406086379114794905">Pomóż ulepszać Chrome</translation>
 <translation id="8455999171311319804">Opcjonalnie: pomóż ulepszyć system operacyjny Chrome OS, automatycznie wysyłając do Google dane diagnostyczne i informacje o użytkowaniu.</translation>
-<translation id="8478823064122749032">Zainstaluj Chrome na telefonie. Wyślemy SMS-a pod numer telefonu do odzyskiwania konta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Właśnie została zastosowana specjalna aktualizacja zabezpieczeń Google Chrome. Uruchom ponownie Chrome teraz. Karty zostaną przywrócone.</translation>
 <translation id="8521348052903287641">Reguła dla ruchu przychodzącego w wersji deweloperskiej Google Chrome zezwalająca na ruch mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Program uruchamiający aplikacje Chrome w wersji poglądowej</translation>
 <translation id="8556340503434111824">Dostępna jest nowa, szybsza niż kiedykolwiek wersja przeglądarki Google Chrome.</translation>
-<translation id="8568392309447938879">Jeśli chcesz korzystać z aplikacji, musisz zalogować się w Chrome, by Twoje aplikacje, zakładki, historia, hasła i inne ustawienia były synchronizowane między urządzeniami.</translation>
 <translation id="8606668294522778825">Aby poprawić wygodę przeglądania, Google Chrome może korzystać z usług internetowych. Możesz je opcjonalnie wyłączyć. <ph name="BEGIN_LINK" />Dowiedz się więcej<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Przeglądarka Google Chrome nie odpowiada. Uruchomić ją teraz ponownie?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome uruchomi się ponownie za minutę}few{Chrome uruchomi się ponownie za # minuty}many{Chrome uruchomi się ponownie za # minut}other{Chrome uruchomi się ponownie za # minuty}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_pt-BR.xtb b/chrome/app/resources/google_chrome_strings_pt-BR.xtb
index 74b621d0..edc1081 100644
--- a/chrome/app/resources/google_chrome_strings_pt-BR.xtb
+++ b/chrome/app/resources/google_chrome_strings_pt-BR.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">O Google Chrome não pôde sincronizar seus dados. Atualize sua senha de sincronização.</translation>
 <translation id="1302523850133262269">Aguarde enquanto o Chrome instala as últimas atualizações do sistema.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Obter ajuda para usar o Google Chrome</translation>
 <translation id="1399397803214730675">Este computador já tem uma versão mais recente do Google Chrome. Caso o software não esteja funcionando, desinstale-o e tente novamente.</translation>
 <translation id="1434626383986940139">Aplicativos Canary do Google Chrome</translation>
-<translation id="1469002951682717133">Inicializador de aplicativos do Google Chrome</translation>
 <translation id="1553358976309200471">Atualizar o Google Chrome</translation>
 <translation id="1587223624401073077">O Google Chrome está usando sua câmera.</translation>
 <translation id="1587325591171447154">O arquivo <ph name="FILE_NAME" /> é perigoso. Por isso ele foi bloqueado pelo Chrome.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">O Chrome salvará essa senha na sua Conta do Google. Você não precisará se lembrar dela.</translation>
 <translation id="174539241580958092">O Google Chrome não pôde sincronizar seus dados devido a um erro no login.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Obter ajuda para usar o Chrome OS</translation>
-<translation id="1795405610103747296">Instale o Chrome no seu smartphone. Enviaremos um SMS para seu número: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Desative essa opção para fazer login em sites do Google, como o Gmail, sem fazer login no Chrome</translation>
 <translation id="1860536484129686729">O Chrome precisa de permissão para este site acessar sua câmera</translation>
 <translation id="1873233029667955273">O Google Chrome não é seu navegador padrão</translation>
@@ -51,16 +47,10 @@
 <translation id="2128103434102193461">Para detalhes sobre o Chrome OS, veja <ph name="LINK_BEGIN" />
 Sobre o Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Reinicie o Chrome agora</translation>
-<translation id="216054706567564023">Instale o Chrome no seu smartphone. Enviaremos um SMS para o número de recuperação da sua conta.</translation>
 <translation id="2246246234298806438">O Google Chrome não consegue mostrar a visualização de impressão quando não há visualizador de PDF integrado.</translation>
-<translation id="2252923619938421629">Ajude a melhorar o Google Chrome informando as configurações atuais</translation>
-<translation id="2286950485307333924">Você está conectado ao Chrome no momento</translation>
 <translation id="2290014774651636340">As chaves da API do Google não foram encontradas. Algumas funcionalidades do Google Chrome serão desativadas.</translation>
 <translation id="2290095356545025170">Tem certeza que quer desinstalar o Google Chrome?</translation>
 <translation id="2309047409763057870">Como esta é uma instalação secundária do Google Chrome, ele não pode se tornar seu navegador padrão.</translation>
-<translation id="2346876346033403680">Anteriormente, alguém fez login no Google Chrome neste computador como <ph name="ACCOUNT_EMAIL_LAST" />. Se esta não for sua conta, crie um novo usuário do Google Chrome para manter suas informações separadas.
-
-Se você decidir fazer login assim mesmo, as informações do Google Chrome, como favoritos, histórico e outras configurações serão mescladas com as informações de <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">O Chrome precisa de permissão para este site acessar sua câmera e seu microfone</translation>
 <translation id="2429317896000329049">O Google Chrome não pôde sincronizar seus dados porque a sincronização não está disponível para seu domínio.</translation>
 <translation id="2467438592969358367">O Google Chrome quer exportar suas senhas. Digite sua senha do Windows para permitir isso.</translation>
@@ -82,7 +72,6 @@
 <translation id="2871893339301912279">Você fez login no Google Chrome.</translation>
 <translation id="2888126860611144412">Sobre o Google Chrome</translation>
 <translation id="3037838751736561277">O Google Chrome está em modo de segundo plano.</translation>
-<translation id="3047079729301751317">Ao desconectar <ph name="USERNAME" />, o histórico, os favoritos, as configurações e outros dados do Google Chrome armazenados neste dispositivo serão excluídos. Os dados armazenados na sua Conta do Google não serão excluídos e poderão ser gerenciados no <ph name="GOOGLE_DASHBOARD_LINK" />Painel de Controle do Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Guia do Chrome</translation>
 <translation id="3080151273017101988">Executar aplicativos em segundo plano quando o Google Chrome estiver fechado</translation>
 <translation id="3089968997497233615">Há uma versão nova e mais segura do Google Chrome disponível.</translation>
@@ -103,7 +92,6 @@
 <translation id="3582972582564653026">Sincronize e personalize o Chrome em todos os seus dispositivos</translation>
 <translation id="3622797965165704966">Agora ficou mais fácil usar o Chrome com sua Conta do Google e em computadores compartilhados.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Termos de Serviço<ph name="END_TERMS_OF_SERVICE_LINK" /> do Google Chrome OS</translation>
-<translation id="3716182511346448902">Como esta página usa muita memória, o Chrome a pausou.</translation>
 <translation id="3718181793972440140">Essa ação excluirá 1 item desse dispositivo. Para recuperar seus dados mais tarde, faça login no Chrome como <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">A extensão "<ph name="EXTENSION_NAME" />" alterou a página que é exibida quando você inicia o Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -119,7 +107,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Reiniciar o Chrome em 1 dia}one{Reiniciar o Chrome em # dia}other{Reiniciar o Chrome em # dias}}</translation>
 <translation id="424864128008805179">Sair do Google Chrome?</translation>
 <translation id="4251615635259297716">Vincular seus dados do Google Chrome a esta conta?</translation>
-<translation id="4251625577313994583">use o Chrome no seu iPhone</translation>
 <translation id="4293420128516039005">Faça login para sincronizar e personalizar o Chrome em todos os seus dispositivos</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Sistema operacional Chrome</translation>
@@ -141,7 +128,6 @@
 <translation id="479167709087336770">Esta opção usa o mesmo corretor ortográfico usado na Pesquisa Google. O texto digitado no navegador é enviado para o Google. É possível alterar esse comportamento nas configurações a qualquer momento.</translation>
 <translation id="4891791193823137474">Executar o Google Chrome em segundo plano</translation>
 <translation id="4895437082222824641">Abrir link em nova &amp;guia do Chrome</translation>
-<translation id="4921569541910214635">Você compartilha um computador? Agora é possível configurar o Google Chrome do jeito que você gosta.</translation>
 <translation id="4953650215774548573">Definir o Google Chrome como seu navegador padrão</translation>
 <translation id="495931528404527476">No Google Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -170,8 +156,6 @@
 <translation id="5895138241574237353">Reiniciar</translation>
 <translation id="5940385492829620908">Sua Web, seus favoritos e demais conteúdo do Chrome estão aqui.</translation>
 <translation id="5941830788786076944">Fazer do Google Chrome o navegador padrão</translation>
-<translation id="6014844626092547096">Agora, você está conectado ao Google Chrome. A sincronização está desativada por seu administrador.</translation>
-<translation id="6040143037577758943">Fechar</translation>
 <translation id="6070348360322141662">Para maior segurança, o Google Chrome criptografará seus dados</translation>
 <translation id="6113794647360055231">O Chrome ficou ainda melhor</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -184,8 +168,6 @@
 <translation id="6368958679917195344">O sistema operacional do Chrome tornou-se possível graças a um <ph name="BEGIN_LINK_CROS_OSS" />software de código aberto<ph name="END_LINK_CROS_OSS" /> adicional.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" />: Google Chrome Dev</translation>
 <translation id="6566149418543181476">Atualizando o Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Você está usando <ph name="PROFILE_EMAIL" /> para sincronizar suas informações do Google Chrome. Para atualizar suas preferências de sincronização ou usar o Chrome sem uma Conta do Google, vá para <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Copiado no Chrome</translation>
 <translation id="6676384891291319759">Acessar a internet</translation>
 <translation id="6679975945624592337">Permitir a execução do Google Chrome em segundo plano</translation>
 <translation id="6750954913813541382">Para corrigir erros de ortografia, o Chrome envia o texto digitado no navegador para o Google</translation>
@@ -199,7 +181,6 @@
 <translation id="6989339256997917931">O Google Chrome foi atualizado, mas ele não é utilizado há pelo menos trinta dias.</translation>
 <translation id="7098166902387133879">O Google Chrome está usando seu microfone.</translation>
 <translation id="7106741999175697885">Gerenciador de tarefas - Google Chrome</translation>
-<translation id="7164397146364144019">Você pode ajudar a tornar o Google Chrome mais seguro e mais fácil de usar, informando automaticamente ao Google detalhes sobre possíveis incidentes de segurança.</translation>
 <translation id="7242029209006116544">Você está fazendo login com uma conta gerenciada e concedendo ao administrador da conta o controle sobre seu perfil do Google Chrome. Seus dados do Google Chrome, como aplicativos, favoritos, histórico, senhas e outras configurações serão permanentemente vinculados a <ph name="USER_NAME" />. Você pode excluir esses dados pelo painel das Contas do Google, mas não pode associá-los a outra conta. Você tem a opção de criar um novo perfil para manter seus dados existentes do Google Chrome separados. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Esse idioma é usado para exibir a IU do Google Chrome</translation>
 <translation id="7296210096911315575">Informações importantes sobre uso e segurança</translation>
@@ -208,7 +189,6 @@
 <translation id="7398801000654795464">Você estava conectado ao Google Chrome como <ph name="USER_EMAIL_ADDRESS" />. Use a mesma conta para fazer login novamente.</translation>
 <translation id="7408085963519505752">Termos do Chrome OS</translation>
 <translation id="7419046106786626209">O Chrome OS não pôde sincronizar seus dados porque a sincronização não está disponível para seu domínio.</translation>
-<translation id="7459554271817304652">Configure a sincronização para salvar seus recursos de navegador personalizados na web e acessá-los do Google Chrome em qualquer computador.</translation>
 <translation id="7486227612705979895">O Chrome acessará seu Drive para fazer sugestões na barra de endereço</translation>
 <translation id="7531671357096394523">Saia de todas as cópias do Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -232,25 +212,18 @@
 <translation id="7962410387636238736">Este computador não receberá mais atualizações do Google Chrome porque o Windows XP e o Windows Vista não são mais compatíveis</translation>
 <translation id="8008534537613507642">Reinstalar o Google Chrome</translation>
 <translation id="8013993649590906847">Se uma imagem não tiver uma descrição útil, o Chrome tentará fornecer uma para você. As imagens serão enviadas ao Google para a criação de descrições.</translation>
-<translation id="8032142183999901390">Depois de remover sua conta do Google Chrome, pode ser necessário recarregar as guias abertas para que a alteração entre em vigor.</translation>
 <translation id="8129812357326543296">Sobre o Google Chrome</translation>
-<translation id="8179874765710681175">Instale o Chrome no seu smartphone. Enviaremos um SMS para seu número.</translation>
-<translation id="825412236959742607">Como esta página usa muita memória, o Chrome removeu parte do conteúdo.</translation>
 <translation id="8255190535488645436">O Google Chrome está usando sua câmera e seu microfone.</translation>
 <translation id="8286862437124483331">O Google Chrome está tentando mostrar senhas. Digite sua senha do Windows para permitir isso.</translation>
 <translation id="8290100596633877290">Nossa! Houve uma falha no Google Chrome. Reiniciar agora?</translation>
 <translation id="8342675569599923794">Esse arquivo é perigoso, por isso ele foi bloqueado pelo Chrome.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Todos os direitos reservados.</translation>
 <translation id="840084489713044809">O Google Chrome quer exportar suas senhas.</translation>
-<translation id="8406086379114794905">Ajudar a melhorar o Google Chrome</translation>
 <translation id="8455999171311319804">Opcional: Ajude a melhorar o Chrome OS enviando automaticamente dados de uso e diagnóstico ao Google.</translation>
-<translation id="8478823064122749032">Instale o Chrome no seu smartphone. Enviaremos um SMS para o número de recuperação da sua conta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Uma atualização especial de segurança para o Google Chrome acabou de ser aplicada. Reinicie agora, e suas guias serão restauradas.</translation>
 <translation id="8521348052903287641">Regra interna do Google Chrome Dev que permite o tráfego mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Iniciador de aplicativos do Google Chrome no Canary</translation>
 <translation id="8556340503434111824">Há uma nova versão ainda mais rápida do Google Chrome disponível.</translation>
-<translation id="8568392309447938879">É necessário fazer login no Google Chrome para usar aplicativos. Isso permite que o Chrome sincronize seus aplicativos, favoritos, histórico, senhas e outras configurações entre os dispositivos.</translation>
 <translation id="8606668294522778825">O Google Chrome pode usar os serviços da Web para melhorar sua experiência de navegação. Se preferir, é possível desativar esses serviços. <ph name="BEGIN_LINK" />Saiba mais<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">O Google Chrome não responde. Reiniciar agora?</translation>
 <translation id="8625237574518804553">{0,plural, =1{O Chrome será reiniciado em 1 minuto}one{O Chrome será reiniciado em # minuto}other{O Chrome será reiniciado em # minutos}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_pt-PT.xtb b/chrome/app/resources/google_chrome_strings_pt-PT.xtb
index 1f177bd..adcdc68d 100644
--- a/chrome/app/resources/google_chrome_strings_pt-PT.xtb
+++ b/chrome/app/resources/google_chrome_strings_pt-PT.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">O Chrome OS não conseguiu sincronizar os dados. Atualize a sua frase de acesso de sincronização.</translation>
 <translation id="1302523850133262269">Aguarde até que o Chrome instale as atualizações do sistema mais recentes.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Obter ajuda para utilizar o Chrome</translation>
 <translation id="1399397803214730675">Este computador já tem uma versão mais recente do Google Chrome. Se o software não estiver a funcionar, desinstale o Google Chrome e tente novamente.</translation>
 <translation id="1434626383986940139">Aplicações do Chrome para o Canary</translation>
-<translation id="1469002951682717133">Iniciador de Aplicações do Chrome</translation>
 <translation id="1553358976309200471">Atualizar o Chrome</translation>
 <translation id="1587223624401073077">O Google Chrome está a utilizar a câmara.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> é perigoso, por isso o Chrome bloqueou-o.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">O Chrome vai guardar esta palavra-passe na sua Conta Google. Não tem de a memorizar.</translation>
 <translation id="174539241580958092">O Google Chrome não conseguiu sincronizar os dados devido a um erro no início de sessão.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Obter ajuda para utilizar o Chrome OS</translation>
-<translation id="1795405610103747296">Instale o Chrome no telemóvel. Vamos enviar uma SMS para o seu telemóvel: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Ao desativar esta opção, pode iniciar sessão nos sites Google como o Gmail sem iniciar sessão no Chrome.</translation>
 <translation id="1860536484129686729">O Chrome necessita de autorização de acesso à câmara para este site.</translation>
 <translation id="1873233029667955273">O Google Chrome não é o seu navegador predefinido.</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Para obter detalhes do Chrome OS, consulte <ph name="LINK_BEGIN" />
       Acerca do Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Reinicie o Chrome agora</translation>
-<translation id="216054706567564023">Instale o Chrome no telemóvel. Vamos enviar uma SMS para o seu número de telefone de recuperação de conta.</translation>
 <translation id="2246246234298806438">O Google Chrome não pode mostrar a pré-visualização de impressão quando o visualizador de PDF incorporado está em falta.</translation>
-<translation id="2252923619938421629">Ajude a melhorar o Google Chrome, comunicando as definições atuais</translation>
-<translation id="2286950485307333924">Tem agora sessão iniciada no Chrome</translation>
 <translation id="2290014774651636340">As chaves da API do Google estão em falta. Algumas funcionalidades do Google Chrome serão desativadas.</translation>
 <translation id="2290095356545025170">Tem a certeza de que pretende desinstalar o Google Chrome?</translation>
 <translation id="2309047409763057870">Esta é uma instalação secundária do Google Chrome, pelo que não pode tornar-se o navegador predefinido.</translation>
-<translation id="2346876346033403680">Anteriormente, alguém iniciou sessão no Chrome neste computador com a conta <ph name="ACCOUNT_EMAIL_LAST" />. Se esta conta não for sua, crie um novo utilizador do Chrome para manter as informações em separado.
-
-Se, mesmo assim, iniciar sessão, as informações do Chrome, como marcadores, histórico e outras definições, fundir-se-ão com <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">O Chrome necessita de autorização de acesso à câmara e ao microfone para este site.</translation>
 <translation id="2429317896000329049">O Google Chrome não conseguiu sincronizar os dados porque a Sincronização não está disponível para o seu domínio.</translation>
 <translation id="2467438592969358367">O Google Chrome pretende exportar as suas palavras-passe. Escreva a sua palavra-passe do Windows para permitir esta ação.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">Tem sessão iniciada no Chrome!</translation>
 <translation id="2888126860611144412">Acerca do Chrome</translation>
 <translation id="3037838751736561277">O Google Chrome está no modo em segundo plano.</translation>
-<translation id="3047079729301751317">Desligar <ph name="USERNAME" /> irá limpar o seu histórico, os marcadores, as definições e outros dados do Chrome armazenados neste dispositivo. Os dados armazenados na Conta Google não serão limpos e podem ser geridos no <ph name="GOOGLE_DASHBOARD_LINK" />Painel de controlo Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Separador do Chrome</translation>
 <translation id="3080151273017101988">Continuar a executar aplicações em segundo plano quando o Google Chrome está fechado</translation>
 <translation id="3089968997497233615">Está disponível uma versão nova e mais segura do Google Chrome.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Sincronizar e personalizar o Chrome em todos os dispositivos</translation>
 <translation id="3622797965165704966">Agora é mais fácil utilizar o Chrome com a sua Conta Google e em computadores partilhados.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Termos de Utilização<ph name="END_TERMS_OF_SERVICE_LINK" /> do Google Chrome OS</translation>
-<translation id="3716182511346448902">Esta página utiliza demasiada memória, pelo que o Chrome a colocou em pausa.</translation>
 <translation id="3718181793972440140">Esta ação elimina 1 item deste dispositivo. Para recuperar os seus dados mais tarde, inicie sessão no Chrome como <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">A extensão "<ph name="EXTENSION_NAME" />" alterou a página apresentada quando inicia o Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Reinicie o Chrome dentro de um dia}other{Reinicie o Chrome dentro de # dias}}</translation>
 <translation id="424864128008805179">Pretende terminar sessão no Chrome?</translation>
 <translation id="4251615635259297716">Associar os seus dados do Chrome a esta conta?</translation>
-<translation id="4251625577313994583">obtenha o Chrome no seu iPhone</translation>
 <translation id="4293420128516039005">Inicie sessão para sincronizar e personalizar o Chrome em todos os dispositivos.</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Utiliza o mesmo corretor ortográfico utilizado na Pesquisa Google. O texto que introduzir no navegador é enviado à Google. Pode alterar este comportamento nas definições.</translation>
 <translation id="4891791193823137474">Permitir que o Google Chrome seja executado em segundo plano</translation>
 <translation id="4895437082222824641">Abrir link num novo &amp;separador do Chrome</translation>
-<translation id="4921569541910214635">Partilha um computador? Agora pode configurar o Chrome exatamente como pretende.</translation>
 <translation id="4953650215774548573">Definir o Google Chrome como o navegador predefinido</translation>
 <translation id="495931528404527476">No Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Reiniciar</translation>
 <translation id="5940385492829620908">A sua Web, os seus marcadores e os seus outros itens do Chrome estão aqui.</translation>
 <translation id="5941830788786076944">Tornar o Google Chrome no browser padrão.</translation>
-<translation id="6014844626092547096">Tem agora sessão iniciada no Chrome! A sincronização foi desativada pelo seu gestor.</translation>
-<translation id="6040143037577758943">Fechar</translation>
 <translation id="6070348360322141662">Para uma segurança adicional, o Google Chrome encripta os seus dados</translation>
 <translation id="6113794647360055231">O Chrome está ainda melhor</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">O Chrome OS é possível através de <ph name="BEGIN_LINK_CROS_OSS" />software de código aberto<ph name="END_LINK_CROS_OSS" /> adicional.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">A atualizar o Google Chrome (<ph name="PROGRESS_PERCENT" />)…</translation>
-<translation id="6598387184982954187">Está a utilizar <ph name="PROFILE_EMAIL" /> para sincronizar os seus conteúdos do Chrome. Para atualizar a preferência de sincronização ou utilizar o Chrome sem uma Conta Google, aceda a <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Copiado para o Chrome</translation>
 <translation id="6676384891291319759">Aceder à Internet</translation>
 <translation id="6679975945624592337">Permitir que o Google Chrome seja executado em segundo plano</translation>
 <translation id="6750954913813541382">Para corrigir erros ortográficos, o Chrome envia o texto que escrever no navegador para o Google.</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">O Google Chrome foi atualizado, mas já não o utiliza há, pelo menos, 30 dias.</translation>
 <translation id="7098166902387133879">O Google Chrome está a utilizar o microfone.</translation>
 <translation id="7106741999175697885">Gestor de tarefas - Google Chrome</translation>
-<translation id="7164397146364144019">Pode contribuir para tornar o Chrome mais seguro e fácil de utilizar ao comunicar automaticamente os detalhes de possíveis incidentes de segurança à Google.</translation>
 <translation id="7242029209006116544">Está a iniciar sessão com uma conta gerida e a permitir que o gestor controle o seu perfil do Google Chrome. Os seus dados do Chrome, como aplicações, marcadores, histórico, palavras-passe e outras definições, ficarão associados definitivamente a <ph name="USER_NAME" />. Poderá eliminar estes dados através do Painel de Controlo das Contas Google, mas não poderá associá-los a outra conta. Opcionalmente, pode criar um perfil novo para manter os seus dados atuais do Chrome em separado. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Este idioma é utilizado para apresentar a IU do Google Chrome</translation>
 <translation id="7296210096911315575">Informações de utilização e segurança importantes</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Iniciou sessão no Chrome com a conta <ph name="USER_EMAIL_ADDRESS" />. Utilize a mesma conta para iniciar sessão novamente.</translation>
 <translation id="7408085963519505752">Termos do Chrome OS</translation>
 <translation id="7419046106786626209">O Chrome OS não conseguiu sincronizar os dados porque a sincronização não está disponível para o seu domínio.</translation>
-<translation id="7459554271817304652">Configure a Sincronização para guardar as suas funcionalidades personalizadas do navegador para a Web e aceder às mesmas a partir do Google Chrome em qualquer computador.</translation>
 <translation id="7486227612705979895">O Chrome vai aceder ao Drive para fornecer sugestões na barra de endereço.</translation>
 <translation id="7531671357096394523">Saia de todas as cópias do Chrome</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Este computador deixará de receber atualizações do Google Chrome, uma vez que o Windows XP e o Windows Vista já não são suportados.</translation>
 <translation id="8008534537613507642">Reinstalar Chrome</translation>
 <translation id="8013993649590906847">Se uma imagem não tiver uma descrição útil, o Chrome tenta fornecer uma. Para criar as descrições, são enviadas imagens para a Google.</translation>
-<translation id="8032142183999901390">Depois de remover a sua conta do Chrome, poderá ter de recarregar os separadores abertos para que a alteração tenha efeito.</translation>
 <translation id="8129812357326543296">Acerca do &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Instale o Chrome no telemóvel. Vamos enviar uma SMS para o seu telemóvel.</translation>
-<translation id="825412236959742607">Esta página utiliza demasiada memória, pelo que o Chrome removeu algum conteúdo.</translation>
 <translation id="8255190535488645436">O Google Chrome está a utilizar a câmara e o microfone.</translation>
 <translation id="8286862437124483331">O Google Chrome está a tentar mostrar palavras-passe. Escreva a sua palavra-passe do Windows para permitir esta ação.</translation>
 <translation id="8290100596633877290">Ups! O Google Chrome falhou. Reiniciar agora?</translation>
 <translation id="8342675569599923794">Este ficheiro é perigoso. Como tal, o Chrome bloqueou-o.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Todos os direitos reservados.</translation>
 <translation id="840084489713044809">O Google Chrome pretende exportar as suas palavras-passe.</translation>
-<translation id="8406086379114794905">Ajude a melhorar o Chrome</translation>
 <translation id="8455999171311319804">Opcional: ajude a melhorar o Chrome OS ao enviar automaticamente dados de diagnóstico e de utilização para a Google.</translation>
-<translation id="8478823064122749032">Instale o Chrome no telemóvel. Vamos enviar uma SMS para o seu número de telefone de recuperação de conta: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Acabou de ser instalada uma atualização de segurança especial para o Google Chrome. Reinicie agora e iremos restaurar os seus separadores.</translation>
 <translation id="8521348052903287641">Regra de importação para o Google Chrome Dev permitir o tráfego mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Iniciador de Aplicações do Chrome para o Canary</translation>
 <translation id="8556340503434111824">Está disponível uma nova versão do Google Chrome, mais rápida do que nunca.</translation>
-<translation id="8568392309447938879">Tem de ter sessão iniciada no Chrome para utilizar aplicações. Deste modo, o Chrome pode sincronizar as aplicações, os marcadores, o histórico, as palavras-passe e outras definições entre dispositivos.</translation>
 <translation id="8606668294522778825">O Google Chrome poderá utilizar serviços Web para melhorar a sua experiência de navegação. Poderá optar por desativar estes serviços. <ph name="BEGIN_LINK" />Saiba mais<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">O Google Chrome não responde. Reiniciar agora?</translation>
 <translation id="8625237574518804553">{0,plural, =1{O Chrome será reiniciado dentro de 1 minuto}other{O Chrome será reiniciado dentro de # minutos}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ro.xtb b/chrome/app/resources/google_chrome_strings_ro.xtb
index c5ff369..fc1f85a 100644
--- a/chrome/app/resources/google_chrome_strings_ro.xtb
+++ b/chrome/app/resources/google_chrome_strings_ro.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Sistemul de operare Chrome nu a putut sincroniza datele. Actualizați parola de acces pentru sincronizare.</translation>
 <translation id="1302523850133262269">Așteaptă până când Chrome instalează cele mai recente actualizări de sistem.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Obțineți ajutor în legătură cu utilizarea Chrome</translation>
 <translation id="1399397803214730675">Acest computer are deja o versiune mai recentă de Google Chrome. Dacă software-ul nu funcționează, dezinstalați Google Chrome și încercați din nou.</translation>
 <translation id="1434626383986940139">Aplicații Chrome Canary</translation>
-<translation id="1469002951682717133">Lansatorul de aplicații Chrome</translation>
 <translation id="1553358976309200471">Actualizează Chrome</translation>
 <translation id="1587223624401073077">Google Chrome utilizează camera foto.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> este periculos, așadar Chrome l-a blocat.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome va salva parola în Contul tău Google. Nu va trebui să o reții.</translation>
 <translation id="174539241580958092">Google Chrome nu a putut sincroniza datele din cauza unei erori la conectare.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Obțineți ajutor în legătură cu utilizarea sistemului de operare Chrome</translation>
-<translation id="1795405610103747296">Instalează Chrome pe telefon. Vom trimite un SMS pe telefonul tău: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Dacă dezactivezi, te poți conecta la site-uri Google ca Gmail fără a te conecta la Chrome</translation>
 <translation id="1860536484129686729">Chrome are nevoie de permisiune ca să acceseze camera foto pentru acest site</translation>
 <translation id="1873233029667955273">Google Chrome nu este browserul prestabilit</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Pentru detalii despre sistemul de operare Chrome, accesează <ph name="LINK_BEGIN" />
       Despre sistemul de operare Chrome<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Repornește Chrome acum</translation>
-<translation id="216054706567564023">Instalează Chrome pe telefon. Vom trimite un SMS la numărul de telefon de recuperare a contului.</translation>
 <translation id="2246246234298806438">Google Chrome nu poate afișa previzualizarea înainte de printare când vizualizatorul PDF încorporat lipsește.</translation>
-<translation id="2252923619938421629">Contribuie la îmbunătățirea browserului Google Chrome raportând setările actuale</translation>
-<translation id="2286950485307333924">Acum te-ai conectat la Chrome</translation>
 <translation id="2290014774651636340">Lipsesc chei pentru API-ul Google. Unele funcționalități Google Chrome vor fi dezactivate.</translation>
 <translation id="2290095356545025170">Sigur vrei să dezinstalezi Google Chrome?</translation>
 <translation id="2309047409763057870">Aceasta este o instalare secundară a browserului Google Chrome și nu poate fi setat ca browser prestabilit.</translation>
-<translation id="2346876346033403680">Un alt utilizator s-a conectat anterior la Chrome de pe acest computer ca <ph name="ACCOUNT_EMAIL_LAST" />. Dacă acesta nu este contul dvs., creați un nou utilizator Chrome, pentru a vă păstra separat datele.
-
-Dacă totuși vă conectați, informațiile Chrome cum ar fi marcajele, istoricul și alte setări vor fi îmbinate cu <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome are nevoie de permisiune ca să acceseze camera foto și microfonul pentru acest site</translation>
 <translation id="2429317896000329049">Google Chrome nu a putut sincroniza datele, deoarece sincronizarea nu este disponibilă pentru domeniul dvs.</translation>
 <translation id="2467438592969358367">Google Chrome vrea să îți exporte parolele. Pentru a permite asta, introdu parola pentru Windows.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">V-ați conectat la Chrome!</translation>
 <translation id="2888126860611144412">Despre Chrome</translation>
 <translation id="3037838751736561277">Google Chrome este în modul fundal.</translation>
-<translation id="3047079729301751317">Dacă deconectați utilizatorul <ph name="USERNAME" />, vor fi șterse istoricul, marcajele, setările și alte date Chrome salvate pe acest dispozitiv. Datele salvate în Contul Google nu vor fi șterse și pot fi gestionate din <ph name="GOOGLE_DASHBOARD_LINK" />Tabloul de bord Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Fila Chrome</translation>
 <translation id="3080151273017101988">Rulează în continuare aplicații în fundal când Google Chrome este închis</translation>
 <translation id="3089968997497233615">Google Chrome este disponibil într-o versiune nouă și mai sigură.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Sincronizează și personalizează Chrome pe toate dispozitivele</translation>
 <translation id="3622797965165704966">Acum este mai ușor să folosiți Chrome cu Contul Google și pe computerele utilizate în comun.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Termenii și condițiile<ph name="END_TERMS_OF_SERVICE_LINK" /> sistemului de operare Google Chrome</translation>
-<translation id="3716182511346448902">Această pagină folosește prea multă memorie, prin urmare Chrome a întrerupt-o.</translation>
 <translation id="3718181793972440140">Astfel, se va șterge 1 element de pe acest dispozitiv. Pentru a recupera datele mai târziu, conectează-te la Chrome ca <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Extensia „<ph name="EXTENSION_NAME" />” a modificat ce pagină se afișează când pornești Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Relansează Chrome în cel mult o zi}few{Relansează Chrome în cel mult # zile}other{Relansează Chrome în cel mult # de zile}}</translation>
 <translation id="424864128008805179">Te deconectezi de la Chrome?</translation>
 <translation id="4251615635259297716">Vă conectați datele Chrome cu acest cont?</translation>
-<translation id="4251625577313994583">descarcă Chrome pe iPhone</translation>
 <translation id="4293420128516039005">Conectează-te pentru a sincroniza și a personaliza Chrome pe toate dispozitivele</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Sistemul de operare Chrome</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Folosește același verificator ortografic folosit în Căutarea Google. Textul pe care îl introduci în browser este trimis la Google. Poți schimba acest comportament în setări.</translation>
 <translation id="4891791193823137474">Permite ca Google Chrome să ruleze în fundal</translation>
 <translation id="4895437082222824641">Deschide linkul într-o &amp;filă Chrome nouă</translation>
-<translation id="4921569541910214635">Folosești un computer în comun? Acum poți să configurezi Chrome exact cum îți place.</translation>
 <translation id="4953650215774548573">Setați Google Chrome ca browser prestabilit</translation>
 <translation id="495931528404527476">În Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Reîncepe</translation>
 <translation id="5940385492829620908">Experiența web personalizată, marcajele și celelalte date Chrome chiar aici.</translation>
 <translation id="5941830788786076944">Setează Google Chrome ca browser prestabilit</translation>
-<translation id="6014844626092547096">Sunteți conectat(ă) la Chrome! Sincronizarea este dezactivată de administrator.</translation>
-<translation id="6040143037577758943">Închide</translation>
 <translation id="6070348360322141662">Pentru un plus de securitate, Google Chrome îți va cripta datele</translation>
 <translation id="6113794647360055231">Chrome a devenit și mai bun</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> – Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">Sistemul de operare Chrome este posibil datorită unui <ph name="BEGIN_LINK_CROS_OSS" />software open source<ph name="END_LINK_CROS_OSS" /> suplimentar.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome se actualizează (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">În prezent, folosiți <ph name="PROFILE_EMAIL" /> pentru a sincroniza datele Chrome. Pentru a actualiza preferințele de sincronizare sau pentru a folosi Chrome fără un Cont Google, accesați <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Copiat în Chrome</translation>
 <translation id="6676384891291319759">Accesează internetul</translation>
 <translation id="6679975945624592337">Permite Google Chrome să ruleze în fundal</translation>
 <translation id="6750954913813541382">Pentru a corecta erorile de scriere, Chrome trimite la Google textul pe care îl introduci în browser</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome a fost actualizat, dar nu l-ai folosit cel puțin 30 de zile.</translation>
 <translation id="7098166902387133879">Google Chrome utilizează microfonul.</translation>
 <translation id="7106741999175697885">Manager de activități - Google Chrome</translation>
-<translation id="7164397146364144019">Puteți contribui la un produs Chrome mai sigur și mai ușor de folosit raportând automat la Google detaliile eventualelor incidente privind securitatea.</translation>
 <translation id="7242029209006116544">Vă conectați cu un cont gestionat și îi permiteți administratorului acestuia controlul asupra profilului dvs. Google Chrome. Datele Chrome, cum ar fi aplicațiile, marcajele, istoricul, parolele și alte setări vor fi asociate definitiv cu <ph name="USER_NAME" />. Veți putea să ștergeți aceste date prin intermediul Tabloului de bord pentru Conturi Google, însă nu veți putea să asociați aceste date cu alt cont. Aveți opțiunea de a crea un profil nou, pentru a păstra separat datele Chrome existente. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Limba este folosită pentru a afișa IU Google Chrome</translation>
 <translation id="7296210096911315575">Informații importante cu privire la folosire și siguranță</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Ați fost conectat(ă) la Chrome ca <ph name="USER_EMAIL_ADDRESS" />. Utilizați același cont pentru a vă conecta din nou.</translation>
 <translation id="7408085963519505752">Termeni și condiții pentru sistemul de operare Chrome</translation>
 <translation id="7419046106786626209">Sistemul de operare Chrome nu a putut sincroniza datele, deoarece sincronizarea nu este disponibilă pentru domeniul dvs.</translation>
-<translation id="7459554271817304652">Configurați sincronizarea pentru a salva funcțiile personalizate ale browserului pe web și accesați-le din Google Chrome de pe orice computer.</translation>
 <translation id="7486227612705979895">Chrome îți va accesa spațiul de stocare Drive pentru a face sugestii în bara de adrese</translation>
 <translation id="7531671357096394523">Închide toate copiile de Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Acest computer nu va mai primi actualizări pentru Google Chrome, deoarece Windows XP și Windows Vista nu mai sunt acceptate</translation>
 <translation id="8008534537613507642">Reinstalați Chrome</translation>
 <translation id="8013993649590906847">Dacă o imagine nu are o descriere utilă, Chrome va încerca să o completeze. Pentru a crea descrieri, imaginile sunt trimise la Google.</translation>
-<translation id="8032142183999901390">După eliminarea contului din Chrome, poate fi necesar să reîncărcați filele deschise pentru ca schimbarea să se aplice.</translation>
 <translation id="8129812357326543296">Despre &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Instalează Chrome pe telefon. Vom trimite un SMS pe telefon.</translation>
-<translation id="825412236959742607">Această pagină folosește prea multă memorie, prin urmare Chrome a eliminat o parte din conținut.</translation>
 <translation id="8255190535488645436">Google Chrome utilizează camera foto și microfonul.</translation>
 <translation id="8286862437124483331">Google Chrome încearcă să afișeze parolele. Pentru a permite acest lucru, introduceți parola pentru Windows.</translation>
 <translation id="8290100596633877290">Hopa! Google Chrome s-a blocat. Repornești acum?</translation>
 <translation id="8342675569599923794">Fișierul este periculos, așadar Chrome l-a blocat.</translation>
 <translation id="8370517070665726704">Drept de autor <ph name="YEAR" /> Google LLC. Toate drepturile rezervate.</translation>
 <translation id="840084489713044809">Google Chrome vrea să îți exporte parolele.</translation>
-<translation id="8406086379114794905">Contribuie la îmbunătățirea Chrome</translation>
 <translation id="8455999171311319804">Opțional: contribuie la îmbunătățirea sistemului de operare Chrome trimițând automat date de diagnosticare și de utilizare la Google.</translation>
-<translation id="8478823064122749032">Instalează Chrome pe telefon. Vom trimite un SMS la numărul de telefon de recuperare a contului: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Tocmai a fost aplicată o actualizare de securitate specială pentru Google Chrome. Repornește acum și filele vor fi restabilite.</translation>
 <translation id="8521348052903287641">Regula de intrare pentru Google Chrome Dev pentru a permite traficul mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Lansatorul de aplicații Chrome Canary</translation>
 <translation id="8556340503434111824">Este disponibilă o nouă versiune de Google Chrome, iar aceasta este mai rapidă ca oricând.</translation>
-<translation id="8568392309447938879">Trebuie să vă conectați la Chrome pentru a folosi aplicațiile. Astfel, Chrome vă poate sincroniza aplicațiile, marcajele, istoricul, parolele și alte setări pe toate dispozitivele.</translation>
 <translation id="8606668294522778825">Este posibil ca Google Chrome să folosească servicii web pentru a-ți îmbunătăți experiența de navigare. Poți să dezactivezi aceste servicii. <ph name="BEGIN_LINK" />Află mai multe<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome nu mai răspunde. Îl repornești acum?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome se va relansa într-un minut}few{Chrome se va relansa în # minute}other{Chrome se va relansa în # de minute}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ru.xtb b/chrome/app/resources/google_chrome_strings_ru.xtb
index af35395..5c01984 100644
--- a/chrome/app/resources/google_chrome_strings_ru.xtb
+++ b/chrome/app/resources/google_chrome_strings_ru.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Не удалось синхронизировать данные. Обновите кодовую фразу в Sync.</translation>
 <translation id="1302523850133262269">Подождите, пока Chrome устанавливает последние обновления системы</translation>
 <translation id="137466361146087520">Google Chrome (бета)</translation>
-<translation id="1393853151966637042">Справочный центр</translation>
 <translation id="1399397803214730675">На компьютере уже установлена последняя версия браузера Google Chrome. Если он не работает, удалите его и установите снова.</translation>
 <translation id="1434626383986940139">Приложения Chrome Canary</translation>
-<translation id="1469002951682717133">Панель запуска приложений Chrome</translation>
 <translation id="1553358976309200471">Обновить Chrome</translation>
 <translation id="1587223624401073077">Google Chrome использует камеру.</translation>
 <translation id="1587325591171447154">Chrome заблокировал файл <ph name="FILE_NAME" /> как опасный.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Этот пароль будет сохранен в аккаунте Google. Вам не нужно его запоминать.</translation>
 <translation id="174539241580958092">Google Chrome не удалось синхронизировать данные из-за ошибки входа в аккаунт.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Помощь по использованию Chrome OS</translation>
-<translation id="1795405610103747296">Установите Chrome на телефон. Мы отправим вам SMS на номер <ph name="PHONE_NUMBER" />.</translation>
 <translation id="1812689907177901597">Отключив эту функцию, вы сможете входить в систему на сайтах Google (например, Gmail) без необходимости выполнять вход в Chrome.</translation>
 <translation id="1860536484129686729">Для этого сайта Chrome запрашивает доступ к камере.</translation>
 <translation id="1873233029667955273">Google Chrome не является браузером по умолчанию.</translation>
@@ -51,16 +47,10 @@
 <translation id="2128103434102193461">Узнайте больше <ph name="LINK_BEGIN" />
 о Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Перезапустите Chrome</translation>
-<translation id="216054706567564023">Установите Chrome на телефон. Мы отправим SMS на номер, указанный в вашем аккаунте.</translation>
 <translation id="2246246234298806438">Если отсутствует встроенный просмотрщик PDF, предварительный просмотр в Google Chrome невозможен.</translation>
-<translation id="2252923619938421629">Отправьте отчет о текущих настройках Google Chrome и помогите усовершенствовать работу браузера</translation>
-<translation id="2286950485307333924">Вы вошли в Chrome</translation>
 <translation id="2290014774651636340">Отсутствуют ключи API Google. Некоторые функции Google Chrome могут не работать.</translation>
 <translation id="2290095356545025170">Вы действительно хотите удалить Google Chrome?</translation>
 <translation id="2309047409763057870">Это дополнительная установка Google Chrome. Его нельзя сделать браузером по умолчанию.</translation>
-<translation id="2346876346033403680">Ранее вход в Chrome на этом компьютере выполнялся из аккаунта <ph name="ACCOUNT_EMAIL_LAST" />. Если это не ваш аккаунт и вы хотите закрыть доступ к своим данным, создайте новый профиль Chrome.
-
-Если войти в систему сейчас, закладки, история и прочие данные Chrome будут синхронизированы с аккаунтом <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Для этого сайта Chrome запрашивает доступ к камере и микрофону.</translation>
 <translation id="2429317896000329049">Google Chrome не удалось синхронизировать данные, поскольку служба Sync недоступна для вашего домена.</translation>
 <translation id="2467438592969358367">Чтобы экспортировать пароли из Google Chrome, введите пароль своего аккаунта Windows.</translation>
@@ -82,7 +72,6 @@
 <translation id="2871893339301912279">Добро пожаловать в Chrome!</translation>
 <translation id="2888126860611144412">О браузере Chrome</translation>
 <translation id="3037838751736561277">Google Chrome работает в фоновом режиме</translation>
-<translation id="3047079729301751317">Если вы отключите аккаунт <ph name="USERNAME" />, все сохраненные на этом устройстве закладки, настройки, история и другие данные Chrome будут удалены. Данные в вашем аккаунте Google сохранятся, и вы сможете управлять ими в <ph name="GOOGLE_DASHBOARD_LINK" />Личном кабинете Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Вкладка Chrome</translation>
 <translation id="3080151273017101988">Не отключать работающие в фоновом режиме сервисы при закрытии браузера</translation>
 <translation id="3089968997497233615">Доступна новая, более безопасная версия Google Chrome.</translation>
@@ -103,7 +92,6 @@
 <translation id="3582972582564653026">Синхронизируйте данные Chrome на всех устройствах</translation>
 <translation id="3622797965165704966">Теперь с Chrome ещё удобнее работать в аккаунте Google, в том числе на общих компьютерах.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Условия использования<ph name="END_TERMS_OF_SERVICE_LINK" /> Google Chrome OS</translation>
-<translation id="3716182511346448902">Эта страница расходовала слишком много памяти, поэтому работа ее скриптов была приостановлена.</translation>
 <translation id="3718181793972440140">С устройства будет удален 1 объект. Чтобы восстановить данные позже, войдите в Chrome как <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Расширение "<ph name="EXTENSION_NAME" />" изменило стартовую страницу Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -119,7 +107,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Перезапустите Chrome в течение дня}one{Перезапустите Chrome в течение # дня}few{Перезапустите Chrome в течение # дней}many{Перезапустите Chrome в течение # дней}other{Перезапустите Chrome в течение # дня}}</translation>
 <translation id="424864128008805179">Выйти из Chrome?</translation>
 <translation id="4251615635259297716">Связать данные Chrome с этим аккаунтом?</translation>
-<translation id="4251625577313994583">скачайте Chrome для iOS</translation>
 <translation id="4293420128516039005">Войдите, чтобы синхронизировать данные Chrome на всех устройствах</translation>
 <translation id="4328355335528187361">Google Chrome для разработчиков (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -141,7 +128,6 @@
 <translation id="479167709087336770">Используется та же технология проверки правописания, что и в Google Поиске. Текст, который вы введете в браузере, будет отправлен в Google. Этот параметр можно изменить в настройках.</translation>
 <translation id="4891791193823137474">Разрешить работу Google Chrome в фоновом режиме</translation>
 <translation id="4895437082222824641">Открыть ссылку в новой вкладке браузера Chrome</translation>
-<translation id="4921569541910214635">Пользуетесь компьютером вместе с коллегой или другом? Теперь каждый из вас сможет настроить Chrome по своему вкусу.</translation>
 <translation id="4953650215774548573">Сделать Google Chrome браузером по умолчанию</translation>
 <translation id="495931528404527476">В Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -170,8 +156,6 @@
 <translation id="5895138241574237353">Перезапустить</translation>
 <translation id="5940385492829620908">Все веб-страницы, закладки и другие данные Chrome можно найти здесь.</translation>
 <translation id="5941830788786076944">Назначить Google Chrome браузером по умолчанию</translation>
-<translation id="6014844626092547096">Добро пожаловать в Chrome! Синхронизация отключена администратором.</translation>
-<translation id="6040143037577758943">Закрыть</translation>
 <translation id="6070348360322141662">В целях повышения безопасности Google Chrome шифрует ваши данные</translation>
 <translation id="6113794647360055231">Chrome становится все лучше</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -184,8 +168,6 @@
 <translation id="6368958679917195344">Своим появлением Chrome OS обязана дополнительному <ph name="BEGIN_LINK_CROS_OSS" />программному обеспечению с открытым исходным кодом<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome для разработчиков</translation>
 <translation id="6566149418543181476">Обновление Google Chrome (<ph name="PROGRESS_PERCENT" />)…</translation>
-<translation id="6598387184982954187">Для синхронизации данных Chrome используется аккаунт <ph name="PROFILE_EMAIL" />. Изменить параметры синхронизации или отключить аккаунт можно в <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Скопировано в Chrome</translation>
 <translation id="6676384891291319759">Доступ в Интернет</translation>
 <translation id="6679975945624592337">Разрешить Google Chrome работать в фоновом режиме</translation>
 <translation id="6750954913813541382">Для проверки правописания Chrome отправляет в Google текст, который вы вводите в браузере.</translation>
@@ -199,7 +181,6 @@
 <translation id="6989339256997917931">Google Chrome был обновлен, однако вы не использовали его в течение последних 30 дней.</translation>
 <translation id="7098166902387133879">Google Chrome использует микрофон.</translation>
 <translation id="7106741999175697885">Диспетчер задач - Google Chrome</translation>
-<translation id="7164397146364144019">Вы можете сделать защиту Chrome ещё надежнее. Просто разрешите автоматически отправлять в Google информацию о возможных проблемах безопасности.</translation>
 <translation id="7242029209006116544">Выполнив вход в управляемый аккаунт, вы предоставляете администратору право контролировать настройки вашего профиля Google Chrome. Ваши данные Chrome (приложения, закладки, история, пароли и другие настройки) будут временно связаны с аккаунтом <ph name="USER_NAME" />. Эти данные можно удалить в Личном кабинете Google, но их нельзя связать с другим аккаунтом. Чтобы сохранить данные Chrome отдельно, создайте новый профиль. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">На этом языке отображается интерфейс Google Chrome</translation>
 <translation id="7296210096911315575">Использование и безопасность</translation>
@@ -208,7 +189,6 @@
 <translation id="7398801000654795464">Ранее вы входили в Chrome как <ph name="USER_EMAIL_ADDRESS" />. Войдите снова, используя тот же аккаунт.</translation>
 <translation id="7408085963519505752">Условия использования Chrome OS</translation>
 <translation id="7419046106786626209">Не удалось синхронизировать данные, поскольку сервис Sync недоступен в вашем домене.</translation>
-<translation id="7459554271817304652">Чтобы сохранить персонализированные функции для работы в Интернете и получить доступ к ним из Google Chrome на любом компьютере, необходимо настроить синхронизацию.</translation>
 <translation id="7486227612705979895">Chrome получит доступ к Google Диску, чтобы вы могли просматривать рекомендации в адресной строке</translation>
 <translation id="7531671357096394523">Закройте все экземпляры Chrome</translation>
 <translation id="7535429826459677826">Google Chrome для разработчиков</translation>
@@ -232,25 +212,18 @@
 <translation id="7962410387636238736">Google Chrome больше не будет обновляться на этом компьютере, так как поддержка Windows XP и Windows Vista прекращена.</translation>
 <translation id="8008534537613507642">Переустановить Chrome</translation>
 <translation id="8013993649590906847">Если у изображения нет понятного описания, Chrome попытается его найти. Для создания описаний изображения отправляются в Google.</translation>
-<translation id="8032142183999901390">После удаления вашего аккаунта из Chrome может понадобиться перезагрузить открытые вкладки, чтобы изменения вступили в силу.</translation>
 <translation id="8129812357326543296">О браузере &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Установите Chrome на телефоне. Мы отправим вам SMS.</translation>
-<translation id="825412236959742607">Эта страница расходовала слишком много памяти, поэтому часть контента была удалена.</translation>
 <translation id="8255190535488645436">Google Chrome использует камеру и микрофон.</translation>
 <translation id="8286862437124483331">Чтобы просмотреть пароли, введите пароль своего аккаунта Windows.</translation>
 <translation id="8290100596633877290">Произошел сбой Google Chrome. Перезапустить?</translation>
 <translation id="8342675569599923794">Chrome заблокировал этот файл как опасный.</translation>
 <translation id="8370517070665726704">© Google LLC, <ph name="YEAR" />. Все права защищены.</translation>
 <translation id="840084489713044809">Вы собираетесь экспортировать пароли из Google Chrome.</translation>
-<translation id="8406086379114794905">Помогите сделать Chrome безопаснее</translation>
 <translation id="8455999171311319804">Автоматически отправлять статистику использования и данные диагностики в Google, чтобы помочь улучшить Chrome OS (необязательно)</translation>
-<translation id="8478823064122749032">Установите Chrome на телефон. Мы отправим SMS на номер, указанный в вашем аккаунте: <ph name="PHONE_NUMBER" />.</translation>
 <translation id="8498858610309223613">Установлено специальное обновление системы безопасности. Перезапустите Google Chrome (все вкладки будут восстановлены).</translation>
 <translation id="8521348052903287641">Разрешить в Google Chrome для разработчиков передачу входящего трафика по протоколу mDNS</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Панель запуска Chrome Canary</translation>
 <translation id="8556340503434111824">Доступна новая версия Google Chrome, которая стала еще быстрее.</translation>
-<translation id="8568392309447938879">Для работы с приложениями необходимо выполнить вход в Chrome. Это обеспечит синхронизацию приложений, закладок, истории, паролей и настроек, сохраненных на всех ваших устройствах.</translation>
 <translation id="8606668294522778825">Для более качественной работы Google Chrome может использовать веб-сервисы. При необходимости вы можете отключить их. <ph name="BEGIN_LINK" />Подробнее…<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome не отвечает. Перезапустить сейчас?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome перезапустится через 1 минуту}one{Chrome перезапустится через # минуту}few{Chrome перезапустится через # минуты}many{Chrome перезапустится через # минут}other{Chrome перезапустится через # минуты}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_sk.xtb b/chrome/app/resources/google_chrome_strings_sk.xtb
index e00b076..ee51c14 100644
--- a/chrome/app/resources/google_chrome_strings_sk.xtb
+++ b/chrome/app/resources/google_chrome_strings_sk.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Systému OS Chrome sa nepodarilo synchronizovať vaše údaje. Aktualizujte prístupovú frázu synchronizácie.</translation>
 <translation id="1302523850133262269">Počkajte, kým Chrome nainštaluje najnovšie aktualizácie systému.</translation>
 <translation id="137466361146087520">Google Chrome beta verzie</translation>
-<translation id="1393853151966637042">Získajte pomoc pri používaní prehliadača Chrome</translation>
 <translation id="1399397803214730675">Tento počítač už obsahuje novšiu verziu prehliadača Google Chrome. Ak softvér nefunguje, odinštalujte prehliadač Google Chrome a skúste to znova.</translation>
 <translation id="1434626383986940139">Aplikácie Chrome Canary</translation>
-<translation id="1469002951682717133">Spúšťač aplikácií Chrome</translation>
 <translation id="1553358976309200471">Aktualizovať Chrome</translation>
 <translation id="1587223624401073077">Google Chrome používa vašu kameru.</translation>
 <translation id="1587325591171447154">Súbor <ph name="FILE_NAME" /> je nebezpečný, a preto ho Chrome zablokoval.</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">Chrome toto heslo uloží do vášho účtu Google. Nebudete si ho musieť pamätať.</translation>
 <translation id="174539241580958092">Prehliadaču Google Chrome sa nepodarilo synchronizovať vaše údaje z dôvodu chyby prihlásenia.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Získajte pomoc pri používaní systému Chrome OS</translation>
-<translation id="1795405610103747296">Nainštalujte si Chrome do telefónu. Pošleme vám správu SMS na telefón: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Po vypnutí tejto možnosti sa budete môcť prihlásiť do webov Googlu (napríklad do Gmailu) bez prihlásenia do Chromu</translation>
 <translation id="1860536484129686729">Chrome potrebuje povolenie pre tento web na prístup k fotoaparátu</translation>
 <translation id="1873233029667955273">Google Chrome nie je váš predvolený prehliadač</translation>
@@ -53,16 +49,10 @@
 <translation id="2128103434102193461">Podrobnosti o systéme Chrome OS nájdete na stránke <ph name="LINK_BEGIN" />
       Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Reštartujte Chrome</translation>
-<translation id="216054706567564023">Nainštalujte si Chrome do telefónu. Pošleme vám správu SMS na telefónne číslo na obnovenie účtu.</translation>
 <translation id="2246246234298806438">Ak vstavaný zobrazovač súborov PDF chýba, prehliadač Google Chrome nemôže zobraziť ukážku pred tlačou.</translation>
-<translation id="2252923619938421629">Nahláste aktuálne nastavenia a pomôžte tak zlepšiť prehliadač Google Chrome</translation>
-<translation id="2286950485307333924">Ste prihlásený/-á do prehliadača Chrome</translation>
 <translation id="2290014774651636340">Chýbajú kľúče rozhrania Google API. Niektoré funkcie prehliadača Google Chrome budú zakázané.</translation>
 <translation id="2290095356545025170">Naozaj chcete odinštalovať aplikáciu Google Chrome?</translation>
 <translation id="2309047409763057870">Toto je sekundárna inštalácia prehliadača Google Chrome – nemôže byť nastavený ako váš predvolený prehliadač.</translation>
-<translation id="2346876346033403680">Do prehliadača Chrome sa už na tomto počítači niekto prihlásil pomocou účtu <ph name="ACCOUNT_EMAIL_LAST" />. Ak tento účet nepatrí vám, vytvorte nového používateľa prehliadača Chrome, aby ste zachovali oddelenie informácií.
-
-Ak sa chcete aj napriek tomu prihlásiť, informácie prehliadača Chrome, ako sú záložky, história a iné nastavenia, sa priradia k účtu <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome potrebuje povolenie pre tento web na prístup k fotoaparátu a mikrofónu</translation>
 <translation id="2429317896000329049">Prehliadaču Google Chrome sa nepodarilo synchronizovať vaše údaje, pretože možnosť synchronizácie nie je pre vašu doménu k dispozícii.</translation>
 <translation id="2467438592969358367">Google Chrome sa pokúša exportovať vaše heslá. Ak to chcete povoliť, zadajte heslo systému Windows.</translation>
@@ -84,7 +74,6 @@
 <translation id="2871893339301912279">Ste prihlásený/-á do prehliadača Chrome.</translation>
 <translation id="2888126860611144412">O prehliadači Chrome</translation>
 <translation id="3037838751736561277">Google Chrome je v režime na pozadí.</translation>
-<translation id="3047079729301751317">Ak odpojíte účet <ph name="USERNAME" />, vymaže sa história, záložky, nastavenia a všetky ďalšie údaje prehliadača Chrome uložené na vašom zariadení. Údaje uložené v účte Google sa nevymažú a môžete ich spravovať v službe <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Karta Chrome</translation>
 <translation id="3080151273017101988">Po zatvorení prehliadača Google Chrome nechať aplikácie na pozadí spustené</translation>
 <translation id="3089968997497233615">K dispozícii je nová, bezpečnejšia verzia prehliadača Google Chrome.</translation>
@@ -105,7 +94,6 @@
 <translation id="3582972582564653026">Synchronizujte a prispôsobte si Chrome v rôznych zariadeniach</translation>
 <translation id="3622797965165704966">Teraz je používanie prehliadača Chrome s účtom Google a na zdieľaných počítačoch oveľa ľahšie.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Zmluvné podmienky<ph name="END_TERMS_OF_SERVICE_LINK" /> Google Chrome OS</translation>
-<translation id="3716182511346448902">Táto stránka využíva príliš veľa pamäte, a preto ju Chrome pozastavil.</translation>
 <translation id="3718181793972440140">Táto akcia odstráni zo zariadenia jednu položku. Ak budete chcieť svoje údaje neskôr opäť načítať, prihláste sa do Chromu ako používateľ <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Rozšírenie „<ph name="EXTENSION_NAME" />“ zmenilo stránku, ktorá sa zobrazí pri spustení prehliadača Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -121,7 +109,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Chrome znova spustite do jedného dňa}few{Chrome znova spustite do # dní}many{Chrome znova spustite do # dňa}other{Chrome znova spustite do # dní}}</translation>
 <translation id="424864128008805179">Odhlásiť sa z Chromu?</translation>
 <translation id="4251615635259297716">Chcete prepojiť údaje prehliadača Chrome s týmto účtom?</translation>
-<translation id="4251625577313994583">získať Chrome na zariadení iPhone</translation>
 <translation id="4293420128516039005">Po prihlásení budete môcť Chrome synchronizovať a prispôsobiť v rôznych zariadeniach.</translation>
 <translation id="4328355335528187361">Google Chrome verzie pre vývojárov (mDNS-In)</translation>
 <translation id="4331809312908958774">OS Chrome</translation>
@@ -143,7 +130,6 @@
 <translation id="479167709087336770">Využíva rovnaký nástroj na kontrolu pravopisu, aký sa používa vo Vyhľadávaní Google. Text zadaný do prehliadača sa odošle Googlu. Toto správanie môžete zmeniť v nastaveniach.</translation>
 <translation id="4891791193823137474">Povoliť prehliadaču Google Chrome spustenie na pozadí</translation>
 <translation id="4895437082222824641">Otvoriť odkaz na novej &amp;karte Chromu</translation>
-<translation id="4921569541910214635">Zdieľať počítač? Teraz si môžete prehliadač Chrome nastaviť podľa vlastných predstáv.</translation>
 <translation id="4953650215774548573">Nastaviť Google Chrome ako predvolený prehliadač</translation>
 <translation id="495931528404527476">V prehliadači Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -176,8 +162,6 @@
 <translation id="5895138241574237353">Reštartovať</translation>
 <translation id="5940385492829620908">Tu nájdete svoj obsah na webe, záložky a ďalšie položky prehliadača Chrome.</translation>
 <translation id="5941830788786076944">Nastaviť prehľadávač Google Chrome ako predvolený</translation>
-<translation id="6014844626092547096">Prihlásili ste sa do prehliadača Chrome. Synchronizácia je ale zakázaná administrátorom.</translation>
-<translation id="6040143037577758943">Zavrieť</translation>
 <translation id="6070348360322141662">V záujme vyššej miery zabezpečenia budú dáta v prehliadači Google Chrome šifrované</translation>
 <translation id="6113794647360055231">Prehliadač Chrome bol práve vylepšený</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -190,8 +174,6 @@
 <translation id="6368958679917195344">Chrome OS mohol vzniknúť vďaka ďalšiemu <ph name="BEGIN_LINK_CROS_OSS" />softvéru s otvoreným zdrojom<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Aktualizuje sa Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Na synchronizáciu prehliadača Chrome používate účet <ph name="PROFILE_EMAIL" />. Ak chcete upraviť predvoľby synchronizácie alebo používať prehliadač Chrome bez účtu Google, prejdite na <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Skopírovaná do prehliadača Chrome</translation>
 <translation id="6676384891291319759">Prístup do siete Internet</translation>
 <translation id="6679975945624592337">Povoliť prehliadaču Google Chrome spustenie na pozadí</translation>
 <translation id="6750954913813541382">Chrome odošle text zadaný v prehliadači Googlu s cieľom opraviť pravopisné chyby</translation>
@@ -205,7 +187,6 @@
 <translation id="6989339256997917931">Prehliadač Google Chrome bol aktualizovaný, ale najmenej 30 dní ste ho nepoužili.</translation>
 <translation id="7098166902387133879">Google Chrome používa váš mikrofón.</translation>
 <translation id="7106741999175697885">Správca úloh – Google Chrome</translation>
-<translation id="7164397146364144019">Automatickým nahlasovaním podrobností o možných bezpečnostných problémoch môžete prispieť k zvýšeniu zabezpečenia prehliadača Chrome a k zjednodušeniu jeho používania.</translation>
 <translation id="7242029209006116544">Prihlasujete sa pomocou spravovaného účtu a jeho správcovi dávate kontrolu nad vaším profilom prehliadača Chrome. Vaše údaje prehliadača Chrome, ako sú aplikácie, záložky, história, heslá a iné nastavenia, sa natrvalo priradia k účtu <ph name="USER_NAME" />. Tieto údaje budete môcť odstrániť len pomocou panela Dashboard v Účtoch Google, ale nebudete ich môcť priradiť k inému účtu. Ak chcete, aby boli existujúce údaje prehliadača Chrome oddelené, môžete vytvoriť nový profil. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">V tomto jazyku sa zobrazuje používateľské rozhranie prehliadača Google Chrome.</translation>
 <translation id="7296210096911315575">Dôležité informácie o používaní a zabezpečení</translation>
@@ -214,7 +195,6 @@
 <translation id="7398801000654795464">Do prehliadača Chrome ste boli prihlásený/-á ako <ph name="USER_EMAIL_ADDRESS" />. Ak sa chcete prihlásiť znova, použite rovnaký účet.</translation>
 <translation id="7408085963519505752">Zmluvné podmienky systému OS Chrome</translation>
 <translation id="7419046106786626209">Systému OS Chrome sa nepodarilo synchronizovať vaše údaje, pretože možnosť synchronizácie nie je pre vašu doménu k dispozícii.</translation>
-<translation id="7459554271817304652">Ak chcete uložiť svoje prispôsobené funkcie prehliadača na webe a pristupovať k nim z prehliadača Google Chrome v ktoromkoľvek počítači, nastavte synchronizáciu.</translation>
 <translation id="7486227612705979895">Chrome bude mať prístup na váš Disk, aby mohol v paneli s adresou zobrazovať návrhy</translation>
 <translation id="7531671357096394523">Zavrite všetky okná Chromu.</translation>
 <translation id="7535429826459677826">Google Chrome verzie pre vývojárov</translation>
@@ -238,25 +218,18 @@
 <translation id="7962410387636238736">Tento počítač už nebude dostávať aktualizácie prehliadača Google Chrome, pretože systémy Windows XP a Windows Vista už nie sú podporované</translation>
 <translation id="8008534537613507642">Preinštalovať prehliadač Chrome</translation>
 <translation id="8013993649590906847">Ak obrázok nemá užitočný popis, Chrome sa vám ho pokúsi poskytnúť. Obrázky sa odosielajú Googlu, aby bolo možné vytvoriť popisy.</translation>
-<translation id="8032142183999901390">Po odstránení účtu z prehliadača Chrome možno budete musieť znova načítať otvorené karty, aby sa zmena uplatnila.</translation>
 <translation id="8129812357326543296">Informácie o prehliadači &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Nainštalujte si Chrome do telefónu. Pošleme vám doň správu SMS.</translation>
-<translation id="825412236959742607">Táto stránka využíva príliš veľa pamäte, a preto Chrome odstránil niektorý obsah.</translation>
 <translation id="8255190535488645436">Google Chrome používa vašu kameru a mikrofón.</translation>
 <translation id="8286862437124483331">Prehliadač Google Chrome sa pokúša zobraziť heslá. Ak to chcete povoliť, zadajte svoje heslo systému Windows.</translation>
 <translation id="8290100596633877290">Google Chrome zlyhal. Chcete ho spustiť znova?</translation>
 <translation id="8342675569599923794">Tento súbor je nebezpečný, a preto ho Chrome zablokoval.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Všetky práva vyhradené.</translation>
 <translation id="840084489713044809">Google Chrome sa pokúša exportovať vaše heslá.</translation>
-<translation id="8406086379114794905">Pomôžte nám Chrome zlepšiť</translation>
 <translation id="8455999171311319804">Voliteľné: Pomáhať s vylepšením systému Chrome OS automatickým odosielaním diagnostík a údajov o využívaní Googlu.</translation>
-<translation id="8478823064122749032">Nainštalujte si Chrome do telefónu. Pošleme vám správu SMS na telefónne číslo na obnovenie účtu: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Práve bola použitá mimoriadna bezpečnostná aktualizácia pre prehliadač Google Chrome. Po reštartovaní obnovíme vaše karty.</translation>
 <translation id="8521348052903287641">Pravidlo pre prichádzajúce prenosy pre prehliadač Google Chrome verzie pre vývojárov, ktoré povoľuje prenos dát mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Spúšťač aplikácií Chrome Canary</translation>
 <translation id="8556340503434111824">K dispozícii je nová verzia prehliadača Google Chrome, ktorá je rýchlejšia ako kedykoľvek predtým.</translation>
-<translation id="8568392309447938879">Aplikácie môžete používať až po prihlásení do prehliadača Chrome. Prehliadaču Chrome tým umožníte synchronizovať vaše aplikácie, záložky, históriu, heslá a ďalšie nastavenia na všetkých zariadeniach.</translation>
 <translation id="8606668294522778825">Google Chrome vám môže uľahčiť prehliadanie pomocou webových služieb. Vybrané webové služby môžete podľa potreby vypnúť. <ph name="BEGIN_LINK" />Ďalšie informácie<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome nereaguje. Chcete ho spustiť znova?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome sa reštartuje o 1 minútu}few{Chrome sa reštartuje o # minúty}many{Chrome sa reštartuje o # minúty}other{Chrome sa reštartuje o # minút}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_sl.xtb b/chrome/app/resources/google_chrome_strings_sl.xtb
index 06b9a7a..a4700b6 100644
--- a/chrome/app/resources/google_chrome_strings_sl.xtb
+++ b/chrome/app/resources/google_chrome_strings_sl.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome OS ne more sinhronizirati vaših podatkov. Posodobite geslo za Google Sync.</translation>
 <translation id="1302523850133262269">Počakajte, da Chrome namesti najnovejše sistemske posodobitve.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Pomoč pri uporabi Google Chroma</translation>
 <translation id="1399397803214730675">V tem računalniku je že nameščena novejša različica Google Chroma. Če programska oprema ne deluje, odstranite Google Chrome in poskusite znova.</translation>
 <translation id="1434626383986940139">Delovne različice aplikacij za Chrome</translation>
-<translation id="1469002951682717133">Zaganjalnik aplikacij v Chromu</translation>
 <translation id="1553358976309200471">Posodobi Chrome</translation>
 <translation id="1587223624401073077">Google Chrome uporablja vašo kamero.</translation>
 <translation id="1587325591171447154">Datoteka <ph name="FILE_NAME" /> je nevarna, zato jo je Chrome blokiral.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome bo shranil to geslo v Google Računu. Ni si vam ga treba zapomniti.</translation>
 <translation id="174539241580958092">Google Chrome ni mogel sinhronizirati podatkov zaradi napake pri prijavi.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Pomoč pri uporabi sistema Chrome OS</translation>
-<translation id="1795405610103747296">Namestite Chrome v telefonu. V telefon bomo poslali SMS: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Če to izklopite, se lahko prijavite na Googlovih spletnih mestih, kot je Gmail, ne da bi se morali prijaviti v Chrome</translation>
 <translation id="1860536484129686729">Chrome potrebuje dovoljenje za dostop do fotoaparata za to spletno mesto</translation>
 <translation id="1873233029667955273">Google Chrome ni privzeti brskalnik</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">Glede podrobnosti o sistemu OS Chrome glejte <ph name="LINK_BEGIN" />
       O sistemu OS Chrome<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Znova zaženite Chrome</translation>
-<translation id="216054706567564023">Namestite Chrome v telefonu. Na telefonsko številko za obnovitev računa bomo poslali SMS.</translation>
 <translation id="2246246234298806438">Google Chrome ne more odpreti predogleda tiskanja, če ni vgrajenega pregledovalnika datotek PDF.</translation>
-<translation id="2252923619938421629">Pomagajte izboljšati Google Chrome s poročanjem trenutnih nastavitev</translation>
-<translation id="2286950485307333924">Prijavljeni ste v Chrome</translation>
 <translation id="2290014774651636340">Manjkajo ključi za Google API. Nekatere funkcije Google Chroma bodo onemogočene.</translation>
 <translation id="2290095356545025170">Ali ste prepričani, da želite odstraniti Google Chrome?</translation>
 <translation id="2309047409763057870">To je sekundarna namestitev Google Chroma in ga ni mogoče nastaviti kot privzeti brskalnik.</translation>
-<translation id="2346876346033403680">Nekdo se je prijavil v Chrome v tem računalniku kot <ph name="ACCOUNT_EMAIL_LAST" />. Če to ni vaš račun, ustvarite nov uporabniški profil za Chrome, da bodo vaši podatki ločeni.
-
-Če se boste kljub temu prijavili, bodo podatki v Chromu, na primer zaznamki, zgodovina in druge nastavitve, združeni v računu <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome potrebuje dovoljenje za dostop do fotoaparata in mikrofona za to spletno mesto</translation>
 <translation id="2429317896000329049">Google Chrome ni mogel sinhronizirati podatkov, ker sinhronizacija ni na voljo za vašo domeno.</translation>
 <translation id="2467438592969358367">Google Chrome želi izvoziti gesla. Če želite omogočiti to, vnesite geslo za Windows.</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">Zdaj ste prijavljeni v Chrome.</translation>
 <translation id="2888126860611144412">O brskalniku Chrome</translation>
 <translation id="3037838751736561277">Google Chrome se izvaja v ozadju.</translation>
-<translation id="3047079729301751317">Če prekinete povezavo za <ph name="USERNAME" />, boste izbrisali zgodovino, zaznamke, nastavitve in druge Chromove podatke, ki so shranjeni v tej napravi. Podatki, shranjeni v Google Računu, ne bodo izbrisani in jih je mogoče upravljati na <ph name="GOOGLE_DASHBOARD_LINK" />Google Nadzorni plošči<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Zavihek v Chromu</translation>
 <translation id="3080151273017101988">Nadaljuj izvajanje programov v ozadju, ko je Google Chrome zaprt</translation>
 <translation id="3089968997497233615">Na voljo je nova, varnejša različica Google Chroma.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">V vseh svojih napravah sinhronizirajte in prilagodite Chrome</translation>
 <translation id="3622797965165704966">Zdaj je Chrome lažje uporabljati z Google Računom in v računalnikih, ki so v skupni rabi.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Pogoji storitve<ph name="END_TERMS_OF_SERVICE_LINK" /> za Googlov OS Chrome</translation>
-<translation id="3716182511346448902">Ta stran uporablja preveč pomnilnika, zato jo je Chrome zaustavil.</translation>
 <translation id="3718181793972440140">S tem bo iz te naprave izbrisan 1 element. Če želite pozneje prenesti podatke, se v Chrome prijavite kot <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Zaradi razširitve »<ph name="EXTENSION_NAME" />« se je spremenila stran, ki je prikazana, ko zaženete Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Chrome znova zaženite v enem dnevu}one{Chrome znova zaženite v # dnevu}two{Chrome znova zaženite v # dnevih}few{Chrome znova zaženite v # dnevih}other{Chrome znova zaženite v # dnevih}}</translation>
 <translation id="424864128008805179">Se želite odjaviti iz Chroma?</translation>
 <translation id="4251615635259297716">Želite svoje podatke v Chromu povezati s tem računom?</translation>
-<translation id="4251625577313994583">prenesite Chrome v iPhone</translation>
 <translation id="4293420128516039005">Prijavite se, da boste lahko Chrome sinhronizirali in prilagodili v vseh svojih napravah</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">OS Chrome</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">Uporabljeno je isto preverjanje črkovanja kot v Iskanju Google. Besedilo, ki ga vnesete v brskalniku, je poslano Googlu. To lahko kadar koli spremenite v nastavitvah.</translation>
 <translation id="4891791193823137474">Naj se Google Chrome izvaja v ozadju</translation>
 <translation id="4895437082222824641">Odpiranje povezave na novem &amp;zavihku v Chromu</translation>
-<translation id="4921569541910214635">Imate računalnik v skupni rabi? Zdaj lahko nastavite Chrome po svojih željah.</translation>
 <translation id="4953650215774548573">Nastavitev Google Chroma za privzeti brskalnik</translation>
 <translation id="495931528404527476">V Chromu</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">Znova zaženi</translation>
 <translation id="5940385492829620908">Tu so shranjeni vaš splet, zaznamki in druge stvari v Chromu.</translation>
 <translation id="5941830788786076944">Nastavi Google Chrome kot privzeti brskalnik</translation>
-<translation id="6014844626092547096">Zdaj ste prijavljeni v Chrome. Sinhronizacijo je onemogočil skrbnik.</translation>
-<translation id="6040143037577758943">Zapri</translation>
 <translation id="6070348360322141662">Zaradi večje varnosti bo Google Chrome šifriral vaše podatke</translation>
 <translation id="6113794647360055231">Chrome je pravkar postal še boljši</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> – Google Chrome</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">Sistem Chrome OS uporablja dodatno <ph name="BEGIN_LINK_CROS_OSS" />odprtokodno programsko opremo<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> različica Google Chroma za razvijalce</translation>
 <translation id="6566149418543181476">Posodabljanje Google Chroma (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Za sinhronizacijo stvari v Chromu uporabljate <ph name="PROFILE_EMAIL" />. Če želite posodobiti nastavitve sinhroniziranja ali uporabljati Chrome brez Google Računa, odprite <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Kopirano v Chrome</translation>
 <translation id="6676384891291319759">Dostop do interneta</translation>
 <translation id="6679975945624592337">Naj se Google Chrome izvaja v ozadju</translation>
 <translation id="6750954913813541382">Chrome zaradi odpravljanja napak pri črkovanju Googlu pošlje besedilo, ki ga vnesete v brskalnik</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Google Chrome je posodobljen, a ga niste uporabljali že vsaj 30 dni.</translation>
 <translation id="7098166902387133879">Google Chrome uporablja vaš mikrofon.</translation>
 <translation id="7106741999175697885">Upravitelj opravil – Google Chrome</translation>
-<translation id="7164397146364144019">S samodejnim poročanjem podrobnosti o morebitnih varnostnih dogodkih Googlu lahko pomagate narediti Chrome varnejši in preprostejši za uporabo.</translation>
 <translation id="7242029209006116544">Prijavljate se z upravljanim računom in s tem njegovemu skrbniku omogočate nadzor vašega profila v Google Chromu. Vaši podatki v Chromu, kot so aplikacije, zaznamki, zgodovina, gesla in druge nastavitve, bodo postali trajno povezani z uporabnikom <ph name="USER_NAME" />. Te podatke boste lahko izbrisali z nadzorno ploščo za Google Račune, vendar jih ne boste mogli povezati z drugim računom. Če želite, lahko ustvarite nov profil, da bodo obstoječi podatki v Chromu ostali ločeni. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Ta jezik se uporablja za prikaz uporabniškega vmesnika za Google Chrome</translation>
 <translation id="7296210096911315575">Pomembne informacije glede uporabe in varnosti</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">V Chrome ste bili prijavljeni kot <ph name="USER_EMAIL_ADDRESS" />. Pri vnovični prijavi uporabite isti račun.</translation>
 <translation id="7408085963519505752">Pogoji za Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS ni mogel sinhronizirati podatkov, ker sinhronizacija ni na voljo za vašo domeno.</translation>
-<translation id="7459554271817304652">Nastavite sinhronizacijo, da prilagojene funkcije brskalnika shranite v spletu in do njih v Google Chromu dostopate v katerem koli računalniku.</translation>
 <translation id="7486227612705979895">Chrome bo dostopal do Googla Drive zaradi ponujanja predlogov v naslovni vrstici</translation>
 <translation id="7531671357096394523">Zapiranje vseh kopij Chroma.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">Ta računalnik ne bo več prejemal posodobitev za Google Chrome, ker sistema Windows XP in Windows Vista nista več podprta.</translation>
 <translation id="8008534537613507642">Vnovična namestitev Chroma</translation>
 <translation id="8013993649590906847">Če slika nima koristnega opisa, ga bo Chrome poskušal zagotoviti. Opisi se ustvarijo tako, da se slike pošljejo Googlu.</translation>
-<translation id="8032142183999901390">Ko odstranite račun iz Chroma, boste morali morda znova naložiti odprte zavihke, če želite uveljaviti spremembo.</translation>
 <translation id="8129812357326543296">O &amp;Google Chromu</translation>
-<translation id="8179874765710681175">Namestite Chrome v telefonu. V telefon vam bomo poslali SMS.</translation>
-<translation id="825412236959742607">Ta stran uporablja preveč pomnilnika, zato je Chrome odstranil nekaj vsebine.</translation>
 <translation id="8255190535488645436">Google Chrome uporablja vašo kamero in mikrofon.</translation>
 <translation id="8286862437124483331">Google Chrome poskuša prikazati gesla. Če želite omogočiti to, vnesite geslo za Windows.</translation>
 <translation id="8290100596633877290">Opa! Google Chrome se je zrušil. Ga želite znova zagnati?</translation>
 <translation id="8342675569599923794">Ta datoteka je nevarna, zato jo je Chrome blokiral.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Vse pravice pridržane.</translation>
 <translation id="840084489713044809">Google Chrome želi izvoziti gesla.</translation>
-<translation id="8406086379114794905">Pomagajte izboljšati Chrome</translation>
 <translation id="8455999171311319804">Izbirno: pomagajte izboljšati OS Chrome s samodejnim pošiljanjem diagnostičnih podatkov in podatkov o uporabi Googlu.</translation>
-<translation id="8478823064122749032">Namestite Chrome v telefonu. Na telefonsko številko za obnovitev računa bomo poslali SMS: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Pravkar je bila nameščena posebna varnostna posodobitev za Google Chrome. Znova ga zaženite (vaše zavihke bomo obnovili).</translation>
 <translation id="8521348052903287641">Pravilo za dohodni promet za Google Chrome Dev, ki dovoli promet mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Delovna različica Chromovega zaganjalnika aplikacij</translation>
 <translation id="8556340503434111824">Na voljo je nova različica Google Chroma, ki je najhitrejša doslej.</translation>
-<translation id="8568392309447938879">Če želite uporabljati aplikacije, morate biti prijavljeni v Chrome. Ko se prijavite, lahko Chrome vaše aplikacije, zaznamke, gesla in druge nastavitve sinhronizira z vsemi napravami.</translation>
 <translation id="8606668294522778825">Google Chrome lahko za izboljšanje izkušnje pri brskanju uporabi spletne storitve.
 Te storitve lahko morda onemogočite. <ph name="BEGIN_LINK" />Več o tem<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome se ne odziva. Ga želite znova zagnati?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_sr.xtb b/chrome/app/resources/google_chrome_strings_sr.xtb
index 2bd6d07..79bb5d0 100644
--- a/chrome/app/resources/google_chrome_strings_sr.xtb
+++ b/chrome/app/resources/google_chrome_strings_sr.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Chrome ОС не може да синхронизује податке. Ажурирајте приступну фразу за Синхронизацију.</translation>
 <translation id="1302523850133262269">Сачекајте да Chrome инсталира најновија ажурирања система.</translation>
 <translation id="137466361146087520">Google Chrome бета</translation>
-<translation id="1393853151966637042">Пронађи помоћ за коришћење Chrome-а</translation>
 <translation id="1399397803214730675">Овај рачунар већ има новију верзију Google Chrome прегледача. Ако софтвер не функционише, деинсталирајте Google Chrome и покушајте поново.</translation>
 <translation id="1434626383986940139">Chrome Canary апликације</translation>
-<translation id="1469002951682717133">Покретач Chrome апликација</translation>
 <translation id="1553358976309200471">Ажурирај Chrome</translation>
 <translation id="1587223624401073077">Google Chrome користи камеру.</translation>
 <translation id="1587325591171447154">Датотека <ph name="FILE_NAME" /> је опасна, па ју је Chrome блокирао.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome ће сачувати ову лозинку на Google налогу. Нећете морати да је памтите.</translation>
 <translation id="174539241580958092">Google Chrome не може да синхронизује податке због грешке при пријављивању.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Пронађи помоћ за коришћење Chrome ОС-а</translation>
-<translation id="1795405610103747296">Инсталирајте Chrome на телефону. Послаћемо вам SMS на телефон: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Када то укључите, можете да се пријављујете на Google сајтове, као што је Gmail, али се не пријављујете у Chrome</translation>
 <translation id="1860536484129686729">Chrome тражи дозволу да приступи камери за овај сајт</translation>
 <translation id="1873233029667955273">Google Chrome није подразумевани прегледач</translation>
@@ -55,16 +51,10 @@
 <translation id="2123055963409958220">Помозите да побољшамо Chrome тако што ћете послати извештај о <ph name="BEGIN_LINK" />актуелним подешавањима<ph name="END_LINK" /></translation>
 <translation id="2128103434102193461">Детаље о Chrome ОС-у потражите у одељку <ph name="LINK_BEGIN" />О Chrome ОС-у<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Поново покрените Chrome</translation>
-<translation id="216054706567564023">Инсталирајте Chrome на телефону. Послаћемо вам SMS на број телефона за враћање приступа налогу.</translation>
 <translation id="2246246234298806438">Google Chrome не може да покаже приказ пре штампања када недостаје уграђени PDF приказивач.</translation>
-<translation id="2252923619938421629">Помозите да побољшамо Google Chrome тако што ћете послати извештај о актуелним подешавањима</translation>
-<translation id="2286950485307333924">Сада сте пријављени у Chrome</translation>
 <translation id="2290014774651636340">Недостају шифре за Google API. Неке функције Google Chrome-а ће бити онемогућене.</translation>
 <translation id="2290095356545025170">Да ли стварно желите да деинсталирате Google Chrome?</translation>
 <translation id="2309047409763057870">Ово је секундарна инсталација Google Chrome-а па не можете да га подесите као подразумевани прегледач.</translation>
-<translation id="2346876346033403680">Неко се претходно пријавио у Chrome на овом рачунару као <ph name="ACCOUNT_EMAIL_LAST" />. Ако то није ваш налог, направите новог Chrome корисника да би информације биле раздвојене.
-
-Ако се ипак пријавите, Chrome информације као што су обележивачи, историја и друга подешавања ће бити обједињене на <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome тражи дозволу да приступи камери и микрофону за овај сајт</translation>
 <translation id="2429317896000329049">Google Chrome не може да синхронизује податке јер Синхронизација није доступна за домен.</translation>
 <translation id="2467438592969358367">Google Chrome жели да извезе лозинке. Унесите лозинку за Windows да бисте то омогућили.</translation>
@@ -86,7 +76,6 @@
 <translation id="2871893339301912279">Пријављени сте у Chrome!</translation>
 <translation id="2888126860611144412">О Chrome прегледачу</translation>
 <translation id="3037838751736561277">Google Chrome је у позадинском режиму.</translation>
-<translation id="3047079729301751317">Ако прекинете везу са <ph name="USERNAME" />, обрисаћете историју, обележиваче, подешавања и друге Chrome податке ускладиштене на овом уређају. Подаци сачувани на Google налогу неће бити обрисани и можете њима да управљате на <ph name="GOOGLE_DASHBOARD_LINK" />Google контролној табли<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Картица Chrome</translation>
 <translation id="3080151273017101988">Настави са покретањем апликација у позадини када се Google Chrome затвори</translation>
 <translation id="3089968997497233615">Доступна је нова, безбеднија верзија Google Chrome прегледача.</translation>
@@ -107,7 +96,6 @@
 <translation id="3582972582564653026">Синхронизујте и персонализујте Chrome на свим уређајима</translation>
 <translation id="3622797965165704966">Сада можете лакше да користите Chrome са Google налогом и на дељеним рачунарима.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />Услови коришћења<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Ова страница користи превише меморије, па ју је Chrome паузирао.</translation>
 <translation id="3718181793972440140">Овим ћете избрисати 1 ставку са овог уређаја. Да бисте касније вратили податке, пријавите се у Chrome као <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Додатак „<ph name="EXTENSION_NAME" />“ је променио страницу која се приказује када покренете Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -123,7 +111,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Поново покрените Chrome за један дан}one{Поново покрените Chrome за # дан}few{Поново покрените Chrome за # дана}other{Поново покрените Chrome за # дана}}</translation>
 <translation id="424864128008805179">Желите ли да се одјавите из Chrome-а?</translation>
 <translation id="4251615635259297716">Желите ли да повежете Chrome податке са овим налогом?</translation>
-<translation id="4251625577313994583">преузмите Chrome на iPhone</translation>
 <translation id="4293420128516039005">Пријавите се да бисте синхронизовали и персонализовали Chrome на свим уређајима</translation>
 <translation id="4328355335528187361">Програмерска верзија Google Chrome-а (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome ОС</translation>
@@ -145,7 +132,6 @@
 <translation id="479167709087336770">Користи исту проверу правописа као Google претрага. Текст који унесете у прегледач се шаље Google-у. То увек можете да промените у подешавањима.</translation>
 <translation id="4891791193823137474">Нека Google Chrome ради у позадини</translation>
 <translation id="4895437082222824641">Отвори линк у новој Chrome &amp;картици</translation>
-<translation id="4921569541910214635">Делите рачунар? Сада можете да подесите Chrome баш онако како вама одговара.</translation>
 <translation id="4953650215774548573">Подеси Google Chrome као подразумевани прегледач</translation>
 <translation id="495931528404527476">У Chrome-у</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -179,8 +165,6 @@
 <translation id="5895138241574237353">Покрени поново</translation>
 <translation id="5940385492829620908">Веб, обележивачи и други Chrome садржај се овде уживо приказују.</translation>
 <translation id="5941830788786076944">Подесите Google Chrome као подразумевани прегледач</translation>
-<translation id="6014844626092547096">Сада сте пријављени у Chrome! Администратор је онемогућио синхронизацију.</translation>
-<translation id="6040143037577758943">Затвори</translation>
 <translation id="6070348360322141662">Google Chrome ће шифровати податке ради додатне сигурности</translation>
 <translation id="6113794647360055231">Управо смо побољшали Chrome</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> – Google Chrome</translation>
@@ -193,8 +177,6 @@
 <translation id="6368958679917195344">Chrome OС je могућ захваљујући додатном <ph name="BEGIN_LINK_CROS_OSS" />софтвер отвореног кода<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Програмерска верзија Google Chrome-а</translation>
 <translation id="6566149418543181476">Ажурирање Google Chrome-а (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Користите <ph name="PROFILE_EMAIL" /> за синхронизацију Chrome садржаја. Да бисте ажурирали подешавање синхронизације или користили Chrome без Google налога, посетите <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Копирана у Chrome</translation>
 <translation id="6676384891291319759">Приступите Интернету</translation>
 <translation id="6679975945624592337">Нека Google Chrome ради у позадини</translation>
 <translation id="6750954913813541382">Да би исправио правописне грешке, Chrome Google-у шаље текст који уносите у прегледач</translation>
@@ -208,7 +190,6 @@
 <translation id="6989339256997917931">Google Chrome је ажуриран, али га нисте користили најмање 30 дана.</translation>
 <translation id="7098166902387133879">Google Chrome користи микрофон.</translation>
 <translation id="7106741999175697885">Менаџер задатака – Google Chrome</translation>
-<translation id="7164397146364144019">Можете да помогнете да Chrome буде безбеднији и једноставнији за коришћење ако аутоматски пријављујете Google-у детаље могућих безбедносних инцидената.</translation>
 <translation id="7242029209006116544">Пријављујете се помоћу налога којим се управља и дајете његовом администратору контролу над Google Chrome профилом. Chrome подаци, као што су апликације, обележивачи, историја, лозинке и друга подешавања, биће трајно повезани са налогом <ph name="USER_NAME" />. Моћи ћете да избришете те податке преко Контролне табле Google налога, али нећете моћи да их повежете са неким другим налогом. Можете опционално да направите нови профил да би постојећи Chrome подаци остали одвојени. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Овај језик се користи за приказивање корисничког интерфејса Google Chrome-а</translation>
 <translation id="7296210096911315575">Важне информације о употреби и безбедности</translation>
@@ -217,7 +198,6 @@
 <translation id="7398801000654795464">Били сте пријављени у Chrome као <ph name="USER_EMAIL_ADDRESS" />. Користите исти налог да бисте се поново пријавили.</translation>
 <translation id="7408085963519505752">Chrome ОС услови</translation>
 <translation id="7419046106786626209">Chrome ОС не може да синхронизује податке јер Синхронизација није доступна за домен.</translation>
-<translation id="7459554271817304652">Подесите Синхронизацију како бисте сачували персонализоване функције прегледача на Веб и приступали им из Google Chrome-а на било ком рачунару.</translation>
 <translation id="7486227612705979895">Chrome ће приступати Диску да би приказивао предлоге на траци за адресу</translation>
 <translation id="7531671357096394523">Затворите све копије Chrome-а.</translation>
 <translation id="7535429826459677826">Програмерска верзија Google Chrome-а</translation>
@@ -241,25 +221,18 @@
 <translation id="7962410387636238736">Овај рачунар више неће добијати ажурирања за Google Chrome јер Windows XP и Windows Vista више нису подржани</translation>
 <translation id="8008534537613507642">Поново инсталирај Chrome</translation>
 <translation id="8013993649590906847">Ако слика нема користан опис, Chrome ће пробати да вам га пружи. Слике се шаљу Google-у ради прављења описа.</translation>
-<translation id="8032142183999901390">Када уклоните налог из Chrome-а, можда ћете морати поново да учитате отворене картице да би то ступило на снагу.</translation>
 <translation id="8129812357326543296">О &amp;Google Chrome-у</translation>
-<translation id="8179874765710681175">Инсталирајте Chrome на телефону. Послаћемо вам SMS на телефон.</translation>
-<translation id="825412236959742607">Ова страница користи превише меморије, па је Chrome уклонио одређени садржај.</translation>
 <translation id="8255190535488645436">Google Chrome користи камеру и микрофон.</translation>
 <translation id="8286862437124483331">Google Chrome покушава да прикаже лозинке. Унесите лозинку за Windows да бисте то омогућили.</translation>
 <translation id="8290100596633877290">Опа! Google Chrome је отказао. Желите ли да га одмах поново покренете?</translation>
 <translation id="8342675569599923794">Ова датотека је опасна, па ју је Chrome блокирао.</translation>
 <translation id="8370517070665726704">Ауторска права <ph name="YEAR" />. Google LLC. Сва права задржана.</translation>
 <translation id="840084489713044809">Google Chrome жели да извезе лозинке.</translation>
-<translation id="8406086379114794905">Помозите нам да побољшамо Chrome</translation>
 <translation id="8455999171311319804">Опционално: Помозите нам да побољшамо Chrome ОС тако што ћете аутоматски слати Google-у дијагностику и податке о коришћењу.</translation>
-<translation id="8478823064122749032">Инсталирајте Chrome на телефону. Послаћемо вам SMS на број телефона за враћање приступа налогу: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Посебно безбедносно ажурирање за Google Chrome је управо примењено. Рестартујте га и вратићемо вам картице.</translation>
 <translation id="8521348052903287641">Правило за долазни саобраћај за програмерску верзију Google Chrome-а да бисте омогућили mDNS саобраћај.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Покретач Chrome апликација Canary</translation>
 <translation id="8556340503434111824">Доступна је нова верзија Google Chrome прегледача, бржа него икад пре.</translation>
-<translation id="8568392309447938879">Треба да будете пријављени у Chrome да бисте користили апликације. То омогућава Chrome-у да синхронизује апликације, обележиваче, историју, лозинке и друга подешавања на више уређаја.</translation>
 <translation id="8606668294522778825">Google Chrome може да користи веб-услуге да би побољшао доживљај прегледања. Можете опционално да онемогућите те услуге. <ph name="BEGIN_LINK" />Сазнајте више<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome не реагује. Желите ли да га одмах поново покренете?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Поново ћемо покренути Chrome за 1 минут}one{Поново ћемо покренути Chrome за # минут}few{Поново ћемо покренути Chrome за # минута}other{Поново ћемо покренути Chrome за # минута}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_sv.xtb b/chrome/app/resources/google_chrome_strings_sv.xtb
index 6cea778..57dc741 100644
--- a/chrome/app/resources/google_chrome_strings_sv.xtb
+++ b/chrome/app/resources/google_chrome_strings_sv.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Det gick inte att synkronisera data med Chrome OS. Uppdatera lösenfrasen för synkronisering.</translation>
 <translation id="1302523850133262269">Vänta medan de senaste systemuppdateringarna installeras av Chrome.</translation>
 <translation id="137466361146087520">Google Chrome beta</translation>
-<translation id="1393853151966637042">Få hjälp med att använda Chrome</translation>
 <translation id="1399397803214730675">Det finns redan en senare version av Google Chrome på den här datorn. Om programmet inte fungerar avinstallerar du Google Chrome och försöker igen.</translation>
 <translation id="1434626383986940139">Chrome Canary-appar</translation>
-<translation id="1469002951682717133">Startprogrammet för appar i Chrome</translation>
 <translation id="1553358976309200471">Uppdatera Chrome</translation>
 <translation id="1587223624401073077">Google Chrome använder din kamera.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> är skadlig och har blockerats av Chrome.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Det här lösenordet sparas i ditt Google-konto. Du behöver inte komma ihåg det.</translation>
 <translation id="174539241580958092">Google Chrome kunde inte synkronisera data på grund av ett fel vid inloggningen.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Få hjälp med att använda Chrome OS</translation>
-<translation id="1795405610103747296">Installera Chrome på mobilen. Vi skickar ett sms till mobilen: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Om du inaktiverar detta kan du logga in på Googles webbplatser, till exempel Gmail, utan att logga in i Chrome</translation>
 <translation id="1860536484129686729">Du behöver ge Chrome behörighet att använda kameran på webbplatsen</translation>
 <translation id="1873233029667955273">Google Chrome är inte din standardwebbläsare</translation>
@@ -56,16 +52,10 @@
 <translation id="2128103434102193461">Mer information om Chrome OS finns under <ph name="LINK_BEGIN" />
       Om Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Starta om Chrome nu</translation>
-<translation id="216054706567564023">Installera Chrome på mobilen. Vi skickar ett sms till ditt telefonnummer för kontoåterställning.</translation>
 <translation id="2246246234298806438">Förhandsgranskningen av utskriften kan inte visas i Google Chrome eftersom den inbyggda PDF-läsaren saknas.</translation>
-<translation id="2252923619938421629">Hjälp oss att förbättra Google Chrome genom att rapportera dina aktuella inställningar</translation>
-<translation id="2286950485307333924">Du är nu inloggad i Chrome</translation>
 <translation id="2290014774651636340">Googles API-nycklar saknas. Vissa funktioner i Google Chrome kommer att vara inaktiverade.</translation>
 <translation id="2290095356545025170">Är du säker på att du vill avinstallera Google Chrome?</translation>
 <translation id="2309047409763057870">Det här är en sekundär installation av Google Chrome. Det går inte att göra den till standardwebbläsare.</translation>
-<translation id="2346876346033403680">Någon har tidigare loggat in i Chrome på den här datorn som <ph name="ACCOUNT_EMAIL_LAST" />. Om det inte är ditt konto skapar du en ny Chrome-användare för att hålla din information privat för dig.
-
-Om du loggar in ändå synkroniseras din information i Chrome, till exempel bokmärken, historik och andra inställningar, med <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Du behöver ge Chrome behörighet att använda kameran och mikrofonen på webbplatsen</translation>
 <translation id="2429317896000329049">Google Chrome kunde inte synkronisera data eftersom synkronisering inte är tillgängligt för din domän.</translation>
 <translation id="2467438592969358367">Lösenorden exporteras från Google Chrome. Skriv ditt Windows-lösenord om du tillåter detta.</translation>
@@ -87,7 +77,6 @@
 <translation id="2871893339301912279">Du är inloggad i Chrome.</translation>
 <translation id="2888126860611144412">Om Chrome</translation>
 <translation id="3037838751736561277">Google Chrome körs i bakgrundsläge.</translation>
-<translation id="3047079729301751317">Om du kopplar från <ph name="USERNAME" /> rensas din historik, dina bokmärken, dina inställningar och annan Chrome-data som du har lagrat på enheten. Data som lagras i Google-kontot rensas inte utan kan hanteras via <ph name="GOOGLE_DASHBOARD_LINK" />Google Översikt<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chrome-flik</translation>
 <translation id="3080151273017101988">Fortsätt köra bakgrundsappar när Google Chrome avslutas</translation>
 <translation id="3089968997497233615">Det finns en ny, ännu säkrare version av Google Chrome.</translation>
@@ -108,7 +97,6 @@
 <translation id="3582972582564653026">Synkronisera och anpassa Chrome på alla enheter du använder</translation>
 <translation id="3622797965165704966">Nu är det enklare att använda Chrome med ditt Google-konto och på delade datorer.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Användarvillkor<ph name="END_TERMS_OF_SERVICE_LINK" /> för Google Chrome OS</translation>
-<translation id="3716182511346448902">Den här sidan har pausats i Chrome eftersom den använder för mycket minne.</translation>
 <translation id="3718181793972440140">Ett objekt tas bort från enheten. Logga in i Chrome som <ph name="USER_EMAIL" /> om du vill kunna återställa datan senare.</translation>
 <translation id="3735758079232443276">Tillägget <ph name="EXTENSION_NAME" /> har ändrat vilken sida som visas när du startar Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -124,7 +112,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Starta om Chrome inom en dag}other{Starta om Chrome inom # dagar}}</translation>
 <translation id="424864128008805179">Vill du logga ut från Chrome?</translation>
 <translation id="4251615635259297716">Koppla dina uppgifter i Chrome till det här kontot</translation>
-<translation id="4251625577313994583">Ladda ned Chrome på iPhone</translation>
 <translation id="4293420128516039005">Genom att logga in kan du synkronisera och anpassa Chrome på alla enheter du använder</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-in)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -146,7 +133,6 @@
 <translation id="479167709087336770">Detta använder samma stavningskontroll som Google Sök. Text som du skriver i webbläsaren skickas till Google. Du kan när som helst ändra detta i inställningarna.</translation>
 <translation id="4891791193823137474">Låt Google Chrome köras i bakgrunden</translation>
 <translation id="4895437082222824641">Öppna länkar i en ny flik i Chrome</translation>
-<translation id="4921569541910214635">Delar du dator? Nu kan du konfigurera Chrome precis som du vill.</translation>
 <translation id="4953650215774548573">Ange Google Chrome som standardwebbläsare</translation>
 <translation id="495931528404527476">I Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -180,8 +166,6 @@
 <translation id="5895138241574237353">Starta om</translation>
 <translation id="5940385492829620908">Här finns webben, bokmärken och allt annat du använder Chrome till.</translation>
 <translation id="5941830788786076944">Använd Google Chrome som standardwebbläsare</translation>
-<translation id="6014844626092547096">Nu är du inloggad på Chrome. Synkronisering har inaktiverats av administratören.</translation>
-<translation id="6040143037577758943">Stäng</translation>
 <translation id="6070348360322141662">Din data krypteras i Google Chrome för att öka säkerheten</translation>
 <translation id="6113794647360055231">Vi har gjort Chrome ännu bättre</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -194,8 +178,6 @@
 <translation id="6368958679917195344">Chrome OS fungerar tack vare <ph name="BEGIN_LINK_CROS_OSS" />öppen källkod<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome uppdateras (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Du använder <ph name="PROFILE_EMAIL" /> för att synkronisera dina grejer i Chrome. Om du vill uppdatera synkroniseringsinställningen eller använda Chrome utan ett Google-konto besöker du <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Kopierat till Chrome</translation>
 <translation id="6676384891291319759">Gå ut på Internet</translation>
 <translation id="6679975945624592337">Låt Google Chrome köras i bakgrunden</translation>
 <translation id="6750954913813541382">Text som du skriver i webbläsaren Chrome skickas till Google för att kontrollera stavningen</translation>
@@ -209,7 +191,6 @@
 <translation id="6989339256997917931">Chrome har uppdaterats men du har inte använt det på över 30 dagar.</translation>
 <translation id="7098166902387133879">Google Chrome använder din mikrofon.</translation>
 <translation id="7106741999175697885">Aktivitetshanteraren - Google Chrome</translation>
-<translation id="7164397146364144019">Du kan bidra till att göra Chrome säkrare och enklare att använda genom att rapportera uppgifter om möjliga säkerhetsincidenter till Google automatiskt.</translation>
 <translation id="7242029209006116544">Du loggar in med ett hanterat konto och ger dess administratör kontroll över din Google Chrome-profil. Dina Chrome-uppgifter, t.ex. dina appar, bokmärken, din historik, dina lösenord och andra inställningar, knyts permanent till <ph name="USER_NAME" />. Du kommer att kunna ta bort dessa uppgifter via instrumentpanelen i Google Konton, men du kommer inte att kunna koppla dessa uppgifter till ett annat konto. Du kan skapa en ny profil om du vill hålla dina befintliga Chrome-uppgifter separata. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Användargränssnittet i Google Chrome visas på det här språket</translation>
 <translation id="7296210096911315575">Viktig användnings- och säkerhetsinformation</translation>
@@ -218,7 +199,6 @@
 <translation id="7398801000654795464">Du var inloggad i Chrome som <ph name="USER_EMAIL_ADDRESS" />. Använd samma konto när du loggar in igen.</translation>
 <translation id="7408085963519505752">Villkor för Chrome OS</translation>
 <translation id="7419046106786626209">Det gick inte att synkronisera data med Chrome OS eftersom synkronisering inte är tillgängligt för din domän.</translation>
-<translation id="7459554271817304652">Ställ in synkronisering och spara dina anpassade webbläsarfunktioner på Internet så att du kan använda dem i Google Chrome på vilken dator som helst.</translation>
 <translation id="7486227612705979895">Chrome får åtkomst till din Drive så att du kan få förslag därifrån i adressfältet</translation>
 <translation id="7531671357096394523">Stäng alla kopior av Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -242,25 +222,18 @@
 <translation id="7962410387636238736">Den här datorn får inte längre uppdateringar för Google Chrome eftersom Windows XP och Windows Vista inte längre stöds.</translation>
 <translation id="8008534537613507642">Installera om Chrome</translation>
 <translation id="8013993649590906847">Om en bild inte har någon användbar beskrivning görs ett försök att beskriva den åt dig i Chrome. Bilderna skickas till Google så att beskrivningen kan genereras.</translation>
-<translation id="8032142183999901390">När du har tagit bort kontot från Chrome kan öppna flikar behöva läsas in på nytt för att ändringen ska träda i kraft.</translation>
 <translation id="8129812357326543296">Om &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Installera Chrome på mobilen. Vi skickar ett sms till mobilen.</translation>
-<translation id="825412236959742607">Den här sidan använder för mycket minne, så en del innehåll har tagits bort.</translation>
 <translation id="8255190535488645436">Google Chrome använder din kamera och mikrofon.</translation>
 <translation id="8286862437124483331">Skriv ditt Windows-lösenord om du vill tillåta att lösenord visas i Google Chrome.</translation>
 <translation id="8290100596633877290">Hoppsan! Google Chrome har kraschat. Vill du starta om nu?</translation>
 <translation id="8342675569599923794">Filen är farlig och har blockerats av Chrome.</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. Med ensamrätt.</translation>
 <translation id="840084489713044809">Lösenorden exporteras från Google Chrome.</translation>
-<translation id="8406086379114794905">Hjälp till att göra Chrome bättre</translation>
 <translation id="8455999171311319804">Valfritt: Hjälp oss att göra Chrome bättre genom att automatiskt skicka diagnostik- och användningsdata till Google.</translation>
-<translation id="8478823064122749032">Installera Chrome på mobilen. Vi skickar ett sms till ditt telefonnummer för kontoåterställning: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">En särskild säkerhetsuppdatering för Google Chrome installerades precis. Starta om webbläsaren nu. Flikarna återställs efteråt.</translation>
 <translation id="8521348052903287641">Regel som tillåter inkommande mDNS-trafik för Google Chrome Dev.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Startprogrammet för appar i Chrome Canary</translation>
 <translation id="8556340503434111824">Det finns en ny version av Google Chrome och den är snabbare än någonsin.</translation>
-<translation id="8568392309447938879">Du måste logga in i Chrome om du vill använda appar. När du gör det synkroniseras appar, bokmärken, historik, lösenord och andra inställningar på de enheter där Chrome används.</translation>
 <translation id="8606668294522778825">Google Chrome kan använda webbtjänster för att förbättra din upplevelse på webben. Du kan inaktivera dessa tjänster om du vill. <ph name="BEGIN_LINK" />Läs mer<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome svarar inte. Vill du starta om nu?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Om en minut startas Chrome om}other{Om # minuter startas Chrome om}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_sw.xtb b/chrome/app/resources/google_chrome_strings_sw.xtb
index f068cf9..1bda8e6 100644
--- a/chrome/app/resources/google_chrome_strings_sw.xtb
+++ b/chrome/app/resources/google_chrome_strings_sw.xtb
@@ -17,10 +17,8 @@
 <translation id="123620459398936149">Mfumo wa Uendeshaji wa Chrome haukuweza kusawazisha data yako. Tafadhali sasisha kauli ya siri unayotumia Kusawazisha.</translation>
 <translation id="1302523850133262269">Tafadhali subiri Chrome inaposakinisha sasisho mpya za mfumo.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Pata usaidizi wa kutumia Chrome</translation>
 <translation id="1399397803214730675">Kompyuta hii tayari ina toleo jipya zaidi la Google Chrome. Ikiwa programu haifanyi kazi, tafadhali ondoa Google Chrome kisha ujaribu tena.</translation>
 <translation id="1434626383986940139">Programu za Chrome Canary</translation>
-<translation id="1469002951682717133">Kizinduzi cha Programu za Chrome</translation>
 <translation id="1553358976309200471">Sasisha Chrome</translation>
 <translation id="1587223624401073077">Google Chrome inatumia kamera yako.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> ni hatari, kwa hivyo Chromium imeizuia.</translation>
@@ -38,8 +36,6 @@
 <translation id="1734234790201236882">Chrome itahifadhi nenosiri hili kwenye Akaunti yako ya Google. Hutahitaji kulikumbuka.</translation>
 <translation id="174539241580958092">Google Chrome haikuweza kusawazisha data yako kutokana na hitilafu ya kuingia katika akaunti.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Pata msaada wa kutumia Chrome OS</translation>
-<translation id="1795405610103747296">Sakinisha Chrome kwenye simu yako. Tutatuma SMS kwenye simu yako: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Kwa kuzima kipengele hiki, unaweza kuingia katika tovuti za Google kama vile Gmail bila kuingia katika akaunti ya Chrome</translation>
 <translation id="1860536484129686729">Chrome inahitaji ruhusa ya kufikia kamera yako katika tovuti hii</translation>
 <translation id="1873233029667955273">Google Chrome si kivinjari chako chaguomsingi</translation>
@@ -54,16 +50,10 @@
 <translation id="2123055963409958220">Saidia kuboresha Chrome kwa kuripoti kuhusu <ph name="BEGIN_LINK" />mipangilio ya sasa<ph name="END_LINK" /></translation>
 <translation id="2128103434102193461">Ili upate maelezo kuhusu Mfumo wa Uendeshaji wa Chrome, tafadhali angalia <ph name="LINK_BEGIN" />Kuhusu Mfumo wa Uendeshaji wa Chrome<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Tafadhali zima kisha uwashe Chrome sasa</translation>
-<translation id="216054706567564023">Sakinisha Chrome kwenye simu yako. Tutatuma SMS kwenye nambari yako ya simu ya mbinu za kurejesha uwezo wa kufikia akaunti.</translation>
 <translation id="2246246234298806438">Google Chrome haiwezi kuonyesha uhakiki wa kuchapisha wakati kionyeshi kilichojengewa ndani cha PDF kinakosekana.</translation>
-<translation id="2252923619938421629">Saidia kuboresha Google Chrome kwa kuripoti mipangilio ya sasa</translation>
-<translation id="2286950485307333924">Sasa umeingia katika Chrome</translation>
 <translation id="2290014774651636340">Funguo za API za Google zinakosekana. Baadhi ya utendaji wa Google Chrome utazimwa.</translation>
 <translation id="2290095356545025170">Je, una hakika kuwa ungependa kusanidua Google Chrome?</translation>
 <translation id="2309047409763057870">Huu ni usakinishaji wa pili wa Google Chrome, na haiwezi kufanywa kuwa kivinjari chako chaguomsingi.</translation>
-<translation id="2346876346033403680">Awali mtu aliingia katika Chrome kwenye kompyuta hii kama <ph name="ACCOUNT_EMAIL_LAST" />. Iwapo hiyo sio akaunti yako, weka mtumiaji mwengine wa Chrome ili utenganishe maelezo yako.
-
-Kuingia bila kujali kutaunganisha maelezo ya Chrome kama vile alamisho, historia, na mipangilio mingine kwenye <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome inahitaji ruhusa ya kufikia kamera na maikrofoni yako katika tovuti hii</translation>
 <translation id="2429317896000329049">Google Chrome haikuweza kusawazisha data yako kwa sababu Usawazishaji haupatikani kwa kikoa chako.</translation>
 <translation id="2467438592969358367">Google Chrome ingependa kuhamisha manenosiri yako. Andika nenosiri lako la Windows ili uruhusu shughuli hii.</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">Umeingia kwenye Chrome!</translation>
 <translation id="2888126860611144412">Kuhusu Chrome</translation>
 <translation id="3037838751736561277">Google Chrome iko katika hali ya chini chini.</translation>
-<translation id="3047079729301751317">Kuondoa <ph name="USERNAME" /> kutafuta historia, alamisho, mipangilio, na data zako nyingine kwenye Chrome zilizohifadhiwa kwenye kifaa hiki. Data iliyohifadhiwa katika Akaunti ya Google haitafutwa na inaweza kudhibitiwa kwenye <ph name="GOOGLE_DASHBOARD_LINK" />Dashibodi ya Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Kichupo cha Chrome</translation>
 <translation id="3080151273017101988">Endelea kuendesha programu zinazofanya kazi chini chini wakati Google Chrome imefungwa</translation>
 <translation id="3089968997497233615">Kuna toleo jipya na salama la Google Chrome.</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">Sawazisha na uweke mapendeleo kwenye Chrome katika vifaa vyako vyote</translation>
 <translation id="3622797965165704966">Sasa ni rahisi zaidi kutumia Chrome pamoja na Akaunti yako ya Google na kwenye kompyuta zinazoshirikiwa.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Sheria na Masharti<ph name="END_TERMS_OF_SERVICE_LINK" /> ya Mfumo wa Uendeshaji wa Google Chrome</translation>
-<translation id="3716182511346448902">Ukurasa huu unatumia hifadhi kubwa zaidi, kwa hivyo Chrome imeusitisha.</translation>
 <translation id="3718181793972440140">Hatua hii itafuta kipengee 1 kwenye kifaa hiki. Ili urejeshe data yako baadaye, ingia katika Chrome ukitumia <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Kiendelezi hiki "<ph name="EXTENSION_NAME" />" kimebadilisha ukurasa unaoonyeshwa unapoanzisha Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Fungua Chrome upya ndani ya siku moja}other{Fungua Chrome upya ndani ya siku #}}</translation>
 <translation id="424864128008805179">Ungependa kuondoka kwenye Chrome?</translation>
 <translation id="4251615635259297716">Ungependa kuunganisha data yako ya Chrome kwenye akaunti hii?</translation>
-<translation id="4251625577313994583">pata Chrome kwenye iPhone yako</translation>
 <translation id="4293420128516039005">Ingia katika akaunti ili usawazishe na uweke mapendeleo kwenye Chrome katika vifaa vyako vyote</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Mfumo wa Uendeshaji wa Chrome</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">Huduma hii hutumia kikagua maendelezo sawa na kinachotumika kwenye Huduma ya Tafuta na Google. Maandishi unayoandika kwenye kivinjari yanatumwa kwa Google. Unaweza kubadilisha hali hii katika mipangilio wakati wowote.</translation>
 <translation id="4891791193823137474">Ruhusu Google Chrome iendeshe katika mandharinyuma</translation>
 <translation id="4895437082222824641">Fungua kiungo katika kichupo kipya cha Chrome</translation>
-<translation id="4921569541910214635">Ungependa kushiriki kompyuta? Sasa unaweza kusanidi Chrome kama tu unavyoipenda.</translation>
 <translation id="4953650215774548573">Weka Google Chrome iwe kivinjari chako chaguomsingi</translation>
 <translation id="495931528404527476">Katika Chrome</translation>
 <translation id="4990567037958725628">Kanari ya Google Chrome</translation>
@@ -178,8 +164,6 @@
 <translation id="5895138241574237353">Zzima na uwashe</translation>
 <translation id="5940385492829620908">Wavuti, alamisho, na vitu vyako vingine vya Chrome vinapatikana hapa.</translation>
 <translation id="5941830788786076944">Fanya Google Chrome iwe kivinjari chaguomsingi</translation>
-<translation id="6014844626092547096">Sasa umeingia kwenye Chrome! Usawazishaji umezimwa na msimamizi wako.</translation>
-<translation id="6040143037577758943">Funga</translation>
 <translation id="6070348360322141662">Kwa usalama wa ziada, Google Chrome itasimba data yako kwa njia fiche</translation>
 <translation id="6113794647360055231">Chrome imeboreshwa zaidi</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -192,8 +176,6 @@
 <translation id="6368958679917195344">Chrome OS imewezeshwa na programu ya ziada ya <ph name="BEGIN_LINK_CROS_OSS" />programu huria<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome ya Wasanidi Programu</translation>
 <translation id="6566149418543181476">Inasasisha Google Chrome <ph name="PROGRESS_PERCENT" /></translation>
-<translation id="6598387184982954187">Unatumia <ph name="PROFILE_EMAIL" /> kusawazisha vitu vyako kwenye Chrome. Ili usasishe mapendeleo yako ya usawazishaji au utumie Chrome bila akaunti ya Google, tembelea <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Imenakiliwa kwenye Chrome</translation>
 <translation id="6676384891291319759">Fikia wavuti</translation>
 <translation id="6679975945624592337">Ruhusu Google Chrome itumike Chinichini</translation>
 <translation id="6750954913813541382">Ili kurekebisha makosa ya tahajia, Chrome hutuma kwa Google maandishi unayoandika kwenye kivinjari</translation>
@@ -207,7 +189,6 @@
 <translation id="6989339256997917931">Google Chrome imesasishwa, lakini hujaitumia kwa angalau siku 30.</translation>
 <translation id="7098166902387133879">Google Chrome inatumia maikrofoni yako.</translation>
 <translation id="7106741999175697885">Kidhibiti cha Shughuli - Google Chrome</translation>
-<translation id="7164397146364144019">Unaweza kusaidia kuifanya Chrome kuwa salama na rahisi zaidi kutumia kwa kuripoti maelezo ya uwezekano wa matukio yasiyo salama kwa Google kiotomatiki.</translation>
 <translation id="7242029209006116544">Unaingia katika akaunti ykitumia akaunti inayodhibitiwa na kumpa msimamizi wa akaunti hiyo udhibiti wa wasifu wako kwenye Google Chrome. Data yako ya Chrome, kama vile programu zako, alamisho, historia, manenosiri, na mipangilio mingine itahishwa na <ph name="USER_NAME" /> daima. Utaweza kufuta data hii kupitia Dashibodi ya Akaunti za Google, lakini hutaweza kuhusisha data hii na akaunti nyingine. Unaweza kuunda kwa hiari wasifu mpya ili kuweka data yako ya Chrome iliyo kando. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Lugha hii inatumika kuonyesha Kiolesura cha Google Chrome</translation>
 <translation id="7296210096911315575">Maelezo muhimu kuhusu usalama na matumizi</translation>
@@ -216,7 +197,6 @@
 <translation id="7398801000654795464">Uliingia kwenye Chrome kama <ph name="USER_EMAIL_ADDRESS" />. Tafadhali tumia akaunti sawa ili kuingia tena.</translation>
 <translation id="7408085963519505752">Masharti ya Chrome OS</translation>
 <translation id="7419046106786626209">Mfumo wa Uendeshaji wa Chrome haukuweza kusawazisha data yako kwa sababu Usawazishaji haupatikani katika kikoa chako.</translation>
-<translation id="7459554271817304652">Sanidi Usawazishaji ili kuhifadhi vipengele vyako vya kivinjari vilivyobinafsishwa kwenye mtandao na uvifikie kutoka Google Chrome kwenye kompyuta yoyote.</translation>
 <translation id="7486227612705979895">Chrome itafikia Hifadhi yako ili kutoa mapendekezo kwenye sehemu ya anwani</translation>
 <translation id="7531671357096394523">Funga nakala zote za Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -240,25 +220,18 @@
 <translation id="7962410387636238736">Kompyuta hii haitapokea tena masasisho ya Google Chrome kwa sababu Windows XP na Windows Vista hazitumiki tena</translation>
 <translation id="8008534537613507642">Sakinisha Chrome Upya</translation>
 <translation id="8013993649590906847">Ikiwa picha haina ufafanuzi muhimu, Chrome itajaribu kukuwekea. Ili kuweka ufafanuzi, tutatuma picha kwa Google.</translation>
-<translation id="8032142183999901390">Baada ya kuiondoa akaunti yako kwenye Chrome, huenda ukahitajika kupakia upya vichupo vyako vilivyo wazi ili kuanza kufanya kazi.</translation>
 <translation id="8129812357326543296">Kuhusu &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Sakinisha Chrome kwenye simu yako. Tutakutumia SMS kwenye simu yako.</translation>
-<translation id="825412236959742607">Ukurasa huu unatumia hifadhi kubwa mno, hivyo basi Chrome imeondoa baadhi ya maudhui.</translation>
 <translation id="8255190535488645436">Google Chrome inatumia kamera na maikrofoni yako.</translation>
 <translation id="8286862437124483331">Google Chrome inajaribu kuonyesha manenosiri. Chapa nenosiri lako la Windows ili uruhusu hili.</translation>
 <translation id="8290100596633877290">Ho! Google Chrome imezimika. Ianzishe tena sasa?</translation>
 <translation id="8342675569599923794">Faili hii ni hatari, kwa hivyo Chrome imeizuia.</translation>
 <translation id="8370517070665726704">Hakimiliki <ph name="YEAR" /> Google LLC. Haki zote zimehifadhiwa.</translation>
 <translation id="840084489713044809">Google Chrome ingependa kuhamisha manenosiri yako.</translation>
-<translation id="8406086379114794905">Saidia kuboresha Chrome</translation>
 <translation id="8455999171311319804">Hiari: Saidia kuboresha Mfumo wa Uendeshaji wa Chrome kwa kutuma data ya uchunguzi na matumizi kwa Google kiotomatiki.</translation>
-<translation id="8478823064122749032">Sakinisha Chrome kwenye simu yako. Tutatuma SMS kwenye nambari yako ya simu ya mbinu za kurejesha uwezo wa kufikia akaunti: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Sasisho maalum la usalama wa Google Chrome limewekwa sasa hivi. Ifunge kisha uifungue sasa na tutarejesha vichupo vyako.</translation>
 <translation id="8521348052903287641">Sheria ya kuingia ya Google Chrome Dev ili kuruhusu trafiki ya mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Canary ya Kizinduzi cha Programu ya Chrome</translation>
 <translation id="8556340503434111824">Kuna toleo jipya linalopatikana la Google Chrome, na ni la kasi kuliko la awali.</translation>
-<translation id="8568392309447938879">Unahitajika kuingia katika akaunti ya Chrome ili utumie programu hizi. Hii huruhusu Chrome kusawazisha programu zako, alamisho, historia, manenosiri na mipangilio mingine katika vifaa vyote.</translation>
 <translation id="8606668294522778825">Huenda Google Chrome ikatumia huduma za wavuti kuboresha hali yako ya kuvinjari. Unaweza chagua kuzima huduma hizi. <ph name="BEGIN_LINK" />Pata maelezo zaidi<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome imelemazwa. Izindue upya sasa?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome itafunguka upya ndani ya dakika 1}other{Chrome itafunguka upya ndani ya dakika #}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ta.xtb b/chrome/app/resources/google_chrome_strings_ta.xtb
index b900be1..c5567ac0 100644
--- a/chrome/app/resources/google_chrome_strings_ta.xtb
+++ b/chrome/app/resources/google_chrome_strings_ta.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">உங்கள் தரவை Chrome OS ஆல் ஒத்திசைக்க முடியவில்லை. உங்கள் கடவுச்சொற்றொடரைப் புதுப்பிக்கவும்.</translation>
 <translation id="1302523850133262269">சமீபத்திய முறைமை புதுப்பிப்புகளை Chrome நிறுவும் வரை காத்திருக்கவும்.</translation>
 <translation id="137466361146087520">Google Chrome பீட்டா</translation>
-<translation id="1393853151966637042">Chrome ஐப் பயன்படுத்தி உதவி பெறுக</translation>
 <translation id="1399397803214730675">Google Chromeமின் மிகச் சமீபத்திய பதிப்பு இந்தக் கம்ப்யூட்டரில் ஏற்கனவே உள்ளது. மென்பொருள் இயங்கவில்லை என்றால், Google Chromeமை நிறுவல்நீக்கம் செய்துவிட்டு, மீண்டும் முயற்சி செய்க.</translation>
 <translation id="1434626383986940139">Chrome Canary ஆப்ஸ்</translation>
-<translation id="1469002951682717133">Chrome பயன்பாட்டுத் துவக்கி</translation>
 <translation id="1553358976309200471">Chromeஐப் புதுப்பி</translation>
 <translation id="1587223624401073077">Google Chrome உங்கள் கேமராவைப் பயன்படுத்துகிறது.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> ஆபத்தானது என்பதால் Chrome அதைத் தடுத்துள்ளது.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome இந்தக் கடவுச்சொல்லை உங்கள் Google கணக்கில் சேமிக்கும். அதை நீங்கள் நினைவில் வைத்திருக்கத் தேவையில்லை.</translation>
 <translation id="174539241580958092">உள்நுழைவுப் பிழையின் காரணமாக உங்கள் தரவை Google Chrome ஆல் ஒத்திசைக்க முடியவில்லை.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS ஐப் பயன்படுத்தி உதவி பெறுக</translation>
-<translation id="1795405610103747296">உங்கள் மொபைலில் Chromeமை நிறுவவும். மொபைல் எண்ணுக்கு SMS ஒன்றை அனுப்புவோம்: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">இதை முடக்கினால், நீங்கள் Chromeமில் உள்நுழையாமலேயே Gmail போன்ற Google தளங்களில் உள்நுழையலாம்</translation>
 <translation id="1860536484129686729">இந்தத் தளத்திற்காகக் கேமராவை அணுக Chromeமுக்கு அனுமதி தேவை</translation>
 <translation id="1873233029667955273">Google Chrome உங்கள் இயல்புநிலை உலாவி அல்ல</translation>
@@ -51,16 +47,10 @@
 <translation id="2123055963409958220"><ph name="BEGIN_LINK" />தற்போதைய அமைப்புகளைப்<ph name="END_LINK" />பற்றிய அறிக்கையை அனுப்பி, Chromeஐ இன்னும் சிறந்ததாக்க உதவவும்</translation>
 <translation id="2128103434102193461">Chrome OS விவரங்களுக்கு <ph name="LINK_BEGIN" />Chrome OS அறிமுகம்<ph name="LINK_END" /> என்பதைப் பார்க்கவும்</translation>
 <translation id="2151406531797534936">Chromeமை இப்போது மீண்டும் தொடங்கவும்</translation>
-<translation id="216054706567564023">உங்கள் மொபைலில் Chromeமை நிறுவவும். கணக்கின் மீட்பு மொபைல் எண்ணுக்கு SMS ஒன்றை அனுப்புவோம்.</translation>
 <translation id="2246246234298806438">உள்ளமைக்கப்பட்ட PDF வியூவர் இல்லையென்றால், Google Chrome அச்சிடல் மாதிரிக்காட்சியைக் காண்பிக்காது.</translation>
-<translation id="2252923619938421629">நடப்பு அமைப்புகள் குறித்து தெரிவிப்பதன் மூலம் Google Chrome ஐச் சிறந்ததாக்க உதவவும்</translation>
-<translation id="2286950485307333924">இப்போது Chrome இல் உள்நுழைந்துள்ளீர்கள்</translation>
 <translation id="2290014774651636340">Google API விசைகள் காணப்படவில்லை. Google Chrome இன் சில செயல்பாடுகள் முடக்கப்படும்.</translation>
 <translation id="2290095356545025170">Google Chrome நிறுவல் நீக்கம் செய்வதில் உறுதியாக உள்ளீர்களா?</translation>
 <translation id="2309047409763057870">இது Google Chrome இன் இரண்டாம் நிலை நிறுவல் என்பதால், அதை இயல்புநிலை உலாவியாக அமைக்க முடியாது.</translation>
-<translation id="2346876346033403680">இதற்கு முன்னர் ஒருவர் இந்தக் கம்ப்யூட்டரிலுள்ள Chromeல் <ph name="ACCOUNT_EMAIL_LAST" /> ஆக உள்நுழைந்திருந்தார். அது உங்கள் கணக்கு இல்லையெனில், உங்கள் தகவலைத் தனியாக வைத்திருக்க புதிய Chrome பயனரை உருவாக்கவும்.
-
-எப்படியிருந்தாலும் உள்நுழைதல் <ph name="ACCOUNT_EMAIL_NEW" /> க்கான புக்மார்க்குகள், வரலாறு, மற்றும் பிற அமைப்புகள் போன்ற Chrome தகவலைப் பிணைக்கும்.</translation>
 <translation id="2348335408836342058">இந்தத் தளத்திற்காகக் கேமராவையும் மைக்ரோஃபோனையும் அணுக Chromeமுக்கு அனுமதி தேவை</translation>
 <translation id="2429317896000329049">உங்கள் களத்திற்கு ஒத்திசைவு இல்லாததால், Google Chrome ஆல் உங்கள் தரவை ஒத்திசைக்க முடியவில்லை.</translation>
 <translation id="2467438592969358367">Google Chrome உங்கள் கடவுச்சொற்களை ஏற்ற விரும்புகிறது. இதை அனுமதிக்க, உங்கள் Windows கடவுச்சொல்லை உள்ளிடவும்.</translation>
@@ -82,7 +72,6 @@
 <translation id="2871893339301912279">Chrome இல் உள்நுழைந்துள்ளீர்கள்!</translation>
 <translation id="2888126860611144412">Chrome அறிமுகம்</translation>
 <translation id="3037838751736561277">Google Chrome பின்புலப் பயன்முறையில் இயங்குகிறது.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> ஐத் துண்டிப்பது, இந்தச் சாதனத்தில் உள்ள உங்கள் வரலாறு, புத்தகக்குறிகள், அமைப்புகள் மற்றும் பிற Chrome தரவை அழிக்கும். உங்கள் Google கணக்கில் சேமிக்கப்பட்ட தரவு அழிக்கப்படாது, மேலும் <ph name="GOOGLE_DASHBOARD_LINK" />Google டாஷ்போர்டில்<ph name="END_GOOGLE_DASHBOARD_LINK" /> நிர்வகிக்கலாம்.</translation>
 <translation id="3065168410429928842">Chrome தாவல்</translation>
 <translation id="3080151273017101988">Google Chrome மூடப்பட்டிருக்கும்போது பின்புல ஆப்ஸை இயக்க அனுமதி</translation>
 <translation id="3089968997497233615">புதிய, இன்னும் பாதுகாப்பான Google Chrome பதிப்பு தற்போது கிடைக்கிறது.</translation>
@@ -103,7 +92,6 @@
 <translation id="3582972582564653026">உங்கள் எல்லாச் சாதனங்களிலும் Chromeஐ ஒத்திசைக்கலாம், தனிப்பயனாக்கலாம்</translation>
 <translation id="3622797965165704966">இப்போது உங்கள் Google கணக்குடனும், பகிரப்பட்ட கம்ப்யூட்டர்களிலும் Chromeமைப் பயன்படுத்துவது எளிதானது.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />சேவை விதிமுறைகள்<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">இந்தப் பக்கம் அதிகளவு நினைவகத்தைப் பயன்படுத்துவதால், Chrome அதை இடைநிறுத்தியுள்ளது.</translation>
 <translation id="3718181793972440140">வெளியேறினால், இந்தச் சாதனத்திலிருந்து ஓர் உருப்படி நீக்கப்படும். பின்னர் தரவை மீட்டமைக்க, Chrome இல் <ph name="USER_EMAIL" /> எனும் முகவரியின் மூலம் உள்நுழையவும்.</translation>
 <translation id="3735758079232443276">Chromeஐத் தொடங்கும் போது காண்பிக்கப்படும் பக்கத்தை, "<ph name="EXTENSION_NAME" />" நீட்டிப்பு மாற்றியுள்ளது.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -119,7 +107,6 @@
 <translation id="4191857738314598978">{0,plural, =1{ஒரு நாளுக்குள் Chromeமை மீண்டும் தொடங்கவும்}other{# நாட்களுக்குள் Chromeமை மீண்டும் தொடங்கவும்}}</translation>
 <translation id="424864128008805179">Chrome இலிருந்து வெளியேறவா?</translation>
 <translation id="4251615635259297716">உங்கள் Chrome தரவை இந்தக் கணக்குடன் இணைக்கவா?</translation>
-<translation id="4251625577313994583">iPhone இல் Chromeஐப் பெறுக</translation>
 <translation id="4293420128516039005">உங்கள் எல்லாச் சாதனங்களிலும் Chromeஐ ஒத்திசைக்க மற்றும் தனிப்பயனாக்க, உள்நுழையவும்</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -141,7 +128,6 @@
 <translation id="479167709087336770">இது Google தேடலில் பயன்படுத்தப்படும் அதே பிழைதிருத்தியைப் பயன்படுத்துகிறது. உலாவியில் நீங்கள் உள்ளிடும் உரை Googleளுக்கு அனுப்பப்படும். இதை அமைப்புகளில் எப்போது வேண்டுமானாலும் மாற்றலாம்.</translation>
 <translation id="4891791193823137474">பின்னணியில் Google Chrome ஐ இயக்கு</translation>
 <translation id="4895437082222824641">புதிய Chrome &amp;தாவலில் இணைப்பைத் திற</translation>
-<translation id="4921569541910214635">கம்ப்யூட்டரைப் பகிர்ந்து கொண்டுள்ளீர்களா? இப்போது நீங்கள் விரும்பும் விதத்தில் Chromeமை அமைக்கலாம்.</translation>
 <translation id="4953650215774548573">Google Chrome ஐ உங்கள் இயல்புநிலை உலாவியாக அமைக்கவும்</translation>
 <translation id="495931528404527476">Chrome இல்</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -171,8 +157,6 @@
 <translation id="5895138241574237353">மறுதொடக்கம்</translation>
 <translation id="5940385492829620908">உங்களின் இணையம், புக்மார்க்குகள் மற்றும் பிற Chrome உருப்படிகள் இங்கே உள்ளன.</translation>
 <translation id="5941830788786076944">Google Chrome ஐ இயல்புநிலை உலாவியாக அமை</translation>
-<translation id="6014844626092547096">தற்போது Chrome இல் உள்நுழைந்துள்ளீர்கள்! உங்கள் நிர்வாகியால் ஒத்திசைவு முடக்கப்பட்டுள்ளது.</translation>
-<translation id="6040143037577758943">மூடு</translation>
 <translation id="6070348360322141662">கூடுதல் பாதுகாப்பிற்கு, Google Chrome உங்கள் தரவை என்கிரிப்ட் செய்யும்</translation>
 <translation id="6113794647360055231">Chrome இன்னும் சிறப்படைந்துள்ளது</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -185,8 +169,6 @@
 <translation id="6368958679917195344">கூடுதலான <ph name="BEGIN_LINK_CROS_OSS" />ஓப்பன் சோர்ஸ் மென்பொருள்களால்<ph name="END_LINK_CROS_OSS" /> Chrome OS ஐ உருவாக்குவது சாத்தியமானது.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chromeஐப் புதுப்பிக்கிறது (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">உங்கள் Chrome விஷயங்களை ஒத்திசைக்க <ph name="PROFILE_EMAIL" /> ஐப் பயன்படுத்துகிறீர்கள். உங்கள் ஒத்திசைவு விருப்பத்தேர்வைப் புதுப்பிக்க அல்லது Google கணக்கில்லாமல் Chromeமைப் பயன்படுத்த, <ph name="SETTINGS_LINK" /> ஐப் பார்வையிடவும்.</translation>
-<translation id="6600954340915313787">Chromeக்கு நகலெடுக்கப்பட்டது</translation>
 <translation id="6676384891291319759">இணையத்தை அணுகுதல்</translation>
 <translation id="6679975945624592337">பின்னணியில் Google Chromeஐ இயங்க அனுமதி</translation>
 <translation id="6750954913813541382">எழுத்துப்பிழைகளைச் சரிசெய்ய உலாவியில் உள்ளிடும் உரையை Chrome ஆப்ஸ் Googleளுக்கு அனுப்பும்</translation>
@@ -200,7 +182,6 @@
 <translation id="6989339256997917931">Google Chrome புதுப்பிக்கப்பட்டது, ஆனால் இதை நீங்கள் குறைந்தபட்சம் 30 நாட்களாகப் பயன்படுத்தவில்லை.</translation>
 <translation id="7098166902387133879">Google Chrome உங்கள் மைக்ரோஃபோனைப் பயன்படுத்துகிறது.</translation>
 <translation id="7106741999175697885">செயல் நிர்வாகி - Google Chrome</translation>
-<translation id="7164397146364144019">பாதுகாப்பிற்கு இடையூறு விளைவிக்கும் சாத்தியமுள்ள செயல்பாடு குறித்த விவரங்களைத் தானாகவே Google க்கு அனுப்புவதன் மூலம், Chrome ஐ மேலும் பாதுகாப்பானதாகவும், பயன்படுத்துவதற்கு எளிதானதாகவும் மாற்ற உதவவும்.</translation>
 <translation id="7242029209006116544">நீங்கள் நிர்வகிக்கப்படும் கணக்கு மூலம் உள்நுழைகிறீர்கள், மேலும் அதன் நிர்வாகிக்கு உங்கள் Google Chrome சுயவிவரத்தின் கட்டுப்பாட்டை வழங்குகிறீர்கள். உங்கள் ஆப்ஸ், புக்மார்க்குகள், வரலாறு, கடவுச்சொற்கள் போன்ற உங்கள் Chrome தரவு மற்றும் பிற அமைப்புகள் நிரந்தரமாக <ph name="USER_NAME" /> உடன் இணைக்கப்படும். இந்தத் தரவை Google கணக்குகளின் டாஷ்போர்டு வழியாக நீக்க முடியும், ஆனால் இந்தத் தரவை வேறொரு கணக்குடன் தொடர்புபடுத்த முடியாது. விரும்பினால், உங்களுடைய நடப்பு Chrome தரவைத் தனிப்பட்ட முறையில் வைத்திருக்க நீங்கள் புதிய சுயவிவரத்தை உருவாக்கலாம். <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Google Chrome UIயைக் காட்ட இந்த மொழி பயன்படுத்தப்படும்</translation>
 <translation id="7296210096911315575">பயன்பாடு மற்றும் பாதுகாப்பு குறித்த முக்கியத் தகவல்</translation>
@@ -209,7 +190,6 @@
 <translation id="7398801000654795464">Chromeல் <ph name="USER_EMAIL_ADDRESS" /> ஆக உள்நுழைந்திருந்தீர்கள். மீண்டும் உள்நுழைய அதே கணக்கைப் பயன்படுத்தவும்.</translation>
 <translation id="7408085963519505752">Chrome OS விதிமுறைகள்</translation>
 <translation id="7419046106786626209">உங்கள் களத்திற்கு ஒத்திசைவு கிடைக்கவில்லை என்பதால், Chrome OS ஆல் உங்கள் தரவை ஒத்திசைக்க முடியவில்லை.</translation>
-<translation id="7459554271817304652">உங்கள் தனிப்பயனாக்கப்பட்ட உலாவி அம்சங்களை வலையில் சேமிக்க, ஒத்திசைவை அமைத்து, எந்தக் கம்ப்யூட்டரிலும் Google Chromiumமிலிருந்து அவற்றை அணுகலாம்.</translation>
 <translation id="7486227612705979895">முகவரிப் பட்டியில் பரிந்துரைகளை வழங்க, Chrome உங்கள் இயக்ககத்தை அணுகும்</translation>
 <translation id="7531671357096394523">Chromeமின் அனைத்து நேர்வுகளில் இருந்தும் வெளியேறுதல்.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -233,25 +213,18 @@
 <translation id="7962410387636238736">Windows XP மற்றும் Windows Vista ஆகியவை இனி ஆதரிக்கப்படாது என்பதால் இந்தக் கம்ப்யூட்டர் இனி Google Chrome புதுப்பிப்புகளைப் பெறாது</translation>
 <translation id="8008534537613507642">Chrome ஐ மீண்டும்நிறுவு</translation>
 <translation id="8013993649590906847">ஒரு படத்திற்குப் பயனுள்ள விளக்கம் இல்லாதபட்சத்தில் Chrome உங்களுக்காக அதை வழங்க முயலும். விளக்கங்களை உருவாக்குவதற்காக படங்கள் Googleளுக்கு அனுப்பப்படும்.</translation>
-<translation id="8032142183999901390">Chromeமிலிருந்து உங்கள் கணக்கை அகற்றிய பின்னர், மாற்றங்களைச் செயல்படுத்த உங்கள் திறந்த தாவல்களை மீண்டும் ஏற்ற வேண்டியிருக்கலாம்.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome அறிமுகம்</translation>
-<translation id="8179874765710681175">உங்கள் மொபைலில் Chromeமை நிறுவவும். மொபைலுக்கு SMS ஒன்றை அனுப்புவோம்.</translation>
-<translation id="825412236959742607">இந்தப் பக்கம் அதிகளவு நினைவகத்தைப் பயன்படுத்துவதால், Chrome சில உள்ளடக்கங்களை அகற்றியது.</translation>
 <translation id="8255190535488645436">Google Chrome உங்கள் கேமராவையும் மைக்ரோஃபோனையும் பயன்படுத்துகிறது.</translation>
 <translation id="8286862437124483331">Google Chrome கடவுச்சொற்களைக் காண்பிக்க முயற்சிக்கிறது. இதை அனுமதிக்க உங்கள் Windows கடவுச்சொல்லைத் தட்டச்சு செய்யவும்.</translation>
 <translation id="8290100596633877290">அச்சச்சோ! Google Chrome செயலிழந்தது. இப்போது மீண்டும் தொடங்கவா?</translation>
 <translation id="8342675569599923794">இந்தக் கோப்பு ஆபத்தானது என்பதால், அதை Chrome தடுத்துள்ளது.</translation>
 <translation id="8370517070665726704">பதிப்புரிமை <ph name="YEAR" /> Google LLC. அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.</translation>
 <translation id="840084489713044809">Google Chrome உங்கள் கடவுச்சொற்களை ஏற்ற விரும்புகிறது.</translation>
-<translation id="8406086379114794905">Chrome ஐ மேலும் சிறப்பாக்க உதவவும்</translation>
 <translation id="8455999171311319804">விருப்பத்தேர்வுக்குரியது: பிழை அறிக்கையையும் உபயோகத் தரவையும் Googleக்குத் தானாக அனுப்புவதன் மூலம், Chrome OSஐ இன்னும் சிறப்பாக்க உதவவும்.</translation>
-<translation id="8478823064122749032">உங்கள் மொபைலில் Chromeமை நிறுவவும். கணக்கின் மீட்பு மொபைல் எண்ணுக்கு SMS ஒன்றை அனுப்புவோம்: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chromeமுக்கான சிறப்புப் பாதுகாப்புப் புதுப்பிப்பு சற்றுமுன் இயக்கப்பட்டது. இப்போது Chromeமை மீண்டும் தொடங்கவும், உங்கள் தாவல்களை மீண்டும் காண்பிப்போம்.</translation>
 <translation id="8521348052903287641">mDNS ட்ராஃபிக்கை அனுமதிக்க, Google Chrome Devக்கான உள்வரும் விதி.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome பயன்பாட்டுத் துவக்கி Canary</translation>
 <translation id="8556340503434111824">Google Chrome இன் புதிய பதிப்பு கிடைக்கிறது, அது முன்னெப்போதையும் விட விரைவானது.</translation>
-<translation id="8568392309447938879">பயன்பாடுகளைப் பயன்படுத்துவதற்கு நீங்கள் Chrome இல் உள்நுழைந்திருக்க வேண்டும். இது எல்லா சாதனங்களிலும் உங்கள் ஆப்ஸ், புக்மார்க்குகள், வரலாறு, கடவுச்சொற்கள் மற்றும் பிற அமைப்புகள் ஆகியவற்றை ஒத்திசைக்க Chrome ஐ அனுமதிக்கிறது.</translation>
 <translation id="8606668294522778825">உங்கள் உலாவல் அனுபவத்தை மேம்படுத்த இணைய சேவைகளை Google Chrome பயன்படுத்தலாம். விருப்பத்திற்கேற்ப இந்தச் சேவைகளை நீங்கள் முடக்கலாம். <ph name="BEGIN_LINK" />மேலும் அறிக<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome பதிலளிக்கவில்லை. இப்போது மீண்டும் தொடங்கவா?</translation>
 <translation id="8625237574518804553">{0,plural, =1{ஒரு நிமிடத்தில் Chrome மீண்டும் தொடங்கும்}other{# நிமிடங்களில் Chrome மீண்டும் தொடங்கும்}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_te.xtb b/chrome/app/resources/google_chrome_strings_te.xtb
index 0fa0f9e..a5800e8 100644
--- a/chrome/app/resources/google_chrome_strings_te.xtb
+++ b/chrome/app/resources/google_chrome_strings_te.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS మీ డేటాను సింక్ చేయ‌లేక‌పోయింది. దయచేసి మీ సింక్‌ రహస్య పదబంధాన్ని అప్‌డేట్ చేయండి.</translation>
 <translation id="1302523850133262269">దయచేసి Chrome తాజా సిస్టమ్ నవీకరణలను ఇన్‌స్టాల్ చేస్తున్నప్పుడు వేచి ఉండండి.</translation>
 <translation id="137466361146087520">Google Chrome బీటా</translation>
-<translation id="1393853151966637042">Chromeను ఉపయోగించడం గురించి సహాయాన్ని పొందండి</translation>
 <translation id="1399397803214730675">ఈ కంప్యూటర్‌లో ఇప్పటికే Google Chrome యొక్క తాజా వెర్షన్ ఉంది. సాఫ్ట్‌వేర్ పని చేయకపోతే, దయచేసి Google Chromeను అన్‌ఇన్‌స్టాల్ చేసి, మళ్ళీ ప్రయత్నించండి.</translation>
 <translation id="1434626383986940139">Chrome కెనరీ అనువర్తనాలు</translation>
-<translation id="1469002951682717133">Chrome యాప్‌ లాంఛ‌ర్‌</translation>
 <translation id="1553358976309200471">Chromeని నవీకరించు</translation>
 <translation id="1587223624401073077">Google Chrome మీ కెమెరాను ఉపయోగిస్తోంది.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> హానికరం, కావున Chrome దాన్ని బ్లాక్ చేసింది.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome ఈ పాస్‌వర్డ్‌ను మీ Google ఖాతాలో సేవ్ చేస్తుంది. మీరు దీనిని గుర్తుంచుకోవాల్సిన అవసరం లేదు.</translation>
 <translation id="174539241580958092">సైన్ ఇన్ చేయడంలో ఎర్రర్ ఏర్పడినందున Google Chrome మీ డేటాను సింక్ చేయలేకపోయింది.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OSను ఉపయోగించడం గురించి సహాయాన్ని పొందండి</translation>
-<translation id="1795405610103747296">మీ ఫోన్‌లో Chromeను ఇన్‌స్టాల్ చేయండి. మేము మీ ఫోన్ నంబర్‌కు SMS పంపుతాము: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">దీనిని ఆఫ్ చేయడం ద్వారా, మీరు Chromeకి సైన్ ఇన్ చేయకుండానే Gmail లాంటి Google సైట్‌లలో సైన్ ఇన్ చేయగలరు</translation>
 <translation id="1860536484129686729">ఈ సైట్ కోసం మీ కెమెరాను ఉపయోగించడానికి Chromeకు అనుమతి అవసరం</translation>
 <translation id="1873233029667955273">Google Chrome మీ డిఫాల్ట్ బ్రౌజర్ కాదు</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Chrome OS వివరాల కోసం, దయచేసి <ph name="LINK_BEGIN" />
       Chrome OS పరిచయం<ph name="LINK_END" />ను చూడండి</translation>
 <translation id="2151406531797534936">దయచేసి Chromeను ఇప్పుడే మళ్ళీ ప్రారంభించండి</translation>
-<translation id="216054706567564023">మీ ఫోన్‌లో Chromeను ఇన్‌స్టాల్ చేయండి. మేము మీ ఖాతా పునరుద్ధరణ ఫోన్ నంబర్‌కు SMSను పంపుతాము.</translation>
 <translation id="2246246234298806438">అంతర్గత PDF వ్యూవర్ లేనప్పుడు Google Chrome ముద్రణ ప్రివ్యూను చూపించదు.</translation>
-<translation id="2252923619938421629">ప్రస్తుత సెట్టింగ్‌లను నివేదించడం ద్వారా Google Chromeను మెరుగుపరచడంలో సహాయపడండి</translation>
-<translation id="2286950485307333924">మీరు ఇప్పుడు Chromeకి సైన్ ఇన్ చేసారు</translation>
 <translation id="2290014774651636340">Google API కీలు లేవు. Google Chrome కార్యాచరణలో కొంత భాగం నిలిపివేయబడుతుంది.</translation>
 <translation id="2290095356545025170">మీరు Google Chromeను ఖచ్చితంగా అన్‌ఇన్‌స్టాల్ చేయాలని అనుకుంటున్నారా?</translation>
 <translation id="2309047409763057870">ఇది Google Chrome యొక్క రెండవ ఇన‌స్ట‌లేష‌న్. దీన్ని మీ డిఫాల్ట్ బ్రౌజర్‌గా చేయడం సాధ్యపడదు.</translation>
-<translation id="2346876346033403680">ఒకరు ఈ కంప్యూటర్‌లో మునుపు <ph name="ACCOUNT_EMAIL_LAST" />గా Chromeకు సైన్ ఇన్ చేశారు. అది మీ ఖాతా కాకుంటే, మీ సమాచారాన్ని వేరుగా ఉంచడానికి కొత్త Chrome వినియోగదారును సృష్టించండి.
-
-ఏది ఏమైనా సైన్ ఇన్ చేస్తే బుక్‌మార్క్‌లు, చరిత్ర, ఇతర సెట్టింగ్‌ల వంటి Chrome సమాచారం <ph name="ACCOUNT_EMAIL_NEW" />కు విలీనం చేయబడుతుంది.</translation>
 <translation id="2348335408836342058">ఈ సైట్ కోసం మీ కెమెరా మరియు మైక్రోఫోన్‌ను యాక్సెస్ చేయడానికి Chromeకు అనుమతి అవసరం</translation>
 <translation id="2429317896000329049">మీ డొమైన్ కోసం సింక్‌ అందుబాటులో లేనందున Google Chrome మీ డేటాను సింక్ చేయ‌లేక‌పోయింది.</translation>
 <translation id="2467438592969358367">Google Chrome మీ పాస్‌వర్డ్‌లను ఎగుమతి చేయాలనుకుంటోంది. దీనిని అనుమతించడం కోసం మీ Windows పాస్‌వర్డ్‌ని టైప్ చేయండి.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">మీరు Chromeకు సైన్ ఇన్ చేసారు!</translation>
 <translation id="2888126860611144412">Chrome పరిచయం</translation>
 <translation id="3037838751736561277">Google Chrome నేపథ్య మోడ్‌లో ఉంది.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" />ను డిస్‌కనెక్ట్ చేయడం వ‌ల్ల‌ ఈ పరికరంలో నిల్వ చేయబడిన మీ చరిత్ర, బుక్‌మార్క్‌లు, సెట్టింగ్‌లు, ఇతర Chrome డేటా క్లియర్ చేయబడతాయి. మీ Google ఖాతాలో నిల్వ చేయబడిన డేటా క్లియర్ చేయబడదు. దాన్ని <ph name="GOOGLE_DASHBOARD_LINK" />Google డాష్‌బోర్డ్<ph name="END_GOOGLE_DASHBOARD_LINK" />లో నిర్వహించవచ్చు.</translation>
 <translation id="3065168410429928842">Chrome ట్యాబ్</translation>
 <translation id="3080151273017101988">Google Chromeను మూసివేసినపుడు, యాప్‌లను నేపథ్యంలో అమలు చేయడాన్ని కొనసాగించు</translation>
 <translation id="3089968997497233615">Google Chrome యొక్క కొత్తదైన, మరింత సురక్షిత వెర్షన్ అందుబాటులో ఉంది.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">మీ పరికరాల అంతటా Chromeను సింక్ చేయండి మరియు వ్యక్తిగతీకరించండి</translation>
 <translation id="3622797965165704966">ఇప్పుడు మీ Google ఖాతాతో, షేర్ చేయ‌బ‌డిన కంప్యూటర్‌ల‌లో Chromeను సులభంగా ఉపయోగించవచ్చు.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />సేవా నిబంధనలు<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">ఈ పేజీ చాలా మెమరీని ఉపయోగిస్తోంది, కాబట్టి దీన్ని Chrome పాజ్ చేయబడింది.</translation>
 <translation id="3718181793972440140">ఇది ఈ పరికరం నుండి 1 అంశాన్ని తొలగిస్తుంది. మీ డేటాను తర్వాత తిరిగి పొందడానికి, Chromeకు <ph name="USER_EMAIL" /> లాగా సైన్ ఇన్ చేయండి.</translation>
 <translation id="3735758079232443276"><ph name="EXTENSION_NAME" /> పొడిగింపు మీరు Chromeని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{ఒక రోజులోపు Chromeను తిరిగి ప్రారంభించండి}other{# రోజులలోపు Chromeను తిరిగి ప్రారంభించండి}}</translation>
 <translation id="424864128008805179">Chrome నుండి సైన్ అవుట్ చేయాలా?</translation>
 <translation id="4251615635259297716">మీ Chrome డేటాను ఈ ఖాతాకు జోడించాలా?</translation>
-<translation id="4251625577313994583">మీ iPhoneలో Chromeని పొందండి</translation>
 <translation id="4293420128516039005">మీ పరికరాల అంతటా Chromeను సింక్ చేయడానికి, వ్యక్తిగతీకరించడానికి సైన్ ఇన్ చేయండి</translation>
 <translation id="4328355335528187361">Google Chrome డెవలపర్ (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">ఇది Google శోధనలో ఉపయోగించే అదే స్పెల్ చెకర్‌ను ఉపయోగిస్తుంది. మీరు బ్రౌజర్‌లో టైప్ చేసే వచనాన్ని Googleకు పంపుతుంది. మీరు ఈ ప్రవర్తనను తర్వాత ఎప్పుడైనా సెట్టింగ్‌లలో మార్చవచ్చు.</translation>
 <translation id="4891791193823137474">Google Chromeను నేపథ్యంలో అమలు అయ్యేలా అనుమతించండి</translation>
 <translation id="4895437082222824641">కొత్త Chrome &amp;ట్యాబ్‌లో లింక్‌ను తెరువు</translation>
-<translation id="4921569541910214635">కంప్యూటర్‌ను షేర్ చేయాలా? ఇప్పుడు మీరు కోరుకున్న విధంగా Chromeను సెటప్ చేయవచ్చు.</translation>
 <translation id="4953650215774548573">Google Chromeను మీ డిఫాల్ట్ బ్రౌజర్‌గా సెట్ చేయండి</translation>
 <translation id="495931528404527476">Chromeలో</translation>
 <translation id="4990567037958725628">Google Chrome కేనరీ</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">మళ్ళీ ప్రారంభించు</translation>
 <translation id="5940385492829620908">మీ వెబ్, బుక్‌మార్క్‌లు మరియు ఇతర Chrome అంశాలు ఇక్కడ చూపబడతాయి.</translation>
 <translation id="5941830788786076944">Google Chromeను డిఫాల్ట్ బ్రౌజర్‌గా చేసుకోండి</translation>
-<translation id="6014844626092547096">ఇప్పుడు మీరు Chromeకు సైన్ ఇన్ చేశారు! మీ నిర్వాహకులు సింక్‌ను నిలిపివేశారు.</translation>
-<translation id="6040143037577758943">మూసివేయి</translation>
 <translation id="6070348360322141662">అదనపు భద్రత దృష్ట్యా, Google Chrome మీ డేటాను ఎన్‌క్రిప్ట్ చేస్తుంది</translation>
 <translation id="6113794647360055231">Chrome ఇప్పుడు మెరుగైంది</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">అదనపు <ph name="BEGIN_LINK_CROS_OSS" />ఓపన్ సోర్స్ సాఫ్ట్‌వేర్‌<ph name="END_LINK_CROS_OSS" />పై Chrome OS ఎంతగానో ఆధారపడుతుంది.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome నవీకరించబడుతోంది (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">మీరు మీ Chrome అంశాలను సింక్ చేయ‌డానికి <ph name="PROFILE_EMAIL" />ను ఉపయోగిస్తున్నారు. మీ సింక్‌ ప్రాధాన్యతను అప్‌డేట్ చేయ‌డానికి లేదా Google ఖాతా లేకుండా Chromeను ఉపయోగించడానికి, <ph name="SETTINGS_LINK" />ను సందర్శించండి.</translation>
-<translation id="6600954340915313787">Chromeకి కాపీ చేయబడింది</translation>
 <translation id="6676384891291319759">ఇంటర్నెట్‌ను ఆక్సెస్ చెయ్యండి</translation>
 <translation id="6679975945624592337">Google Chromeను నేపథ్యంలో అమలు అయ్యేందుకు అనుమతించండి</translation>
 <translation id="6750954913813541382">అక్షర దోషాలను పరిష్కరించడానికి, Chrome అన్నది మీరు బ్రౌజర్‌లో టైప్ చేసే వచనాన్ని Googleకు పంపుతుంది</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome నవీకరింబడింది, కానీ మీరు దీన్ని కనీసం 30 రోజులు ఉయోగించలేరు.</translation>
 <translation id="7098166902387133879">Google Chrome మీ మైక్రోఫోన్‌ని ఉపయోగిస్తోంది.</translation>
 <translation id="7106741999175697885">విధి నిర్వాహకుడు - Google Chrome</translation>
-<translation id="7164397146364144019">భద్రతాపరమైన దాడులయ్యే అవకాశమున్న అన్ని సంఘటనలకు సంబంధించిన వివరాలను Googleకు ఆటోమేటిక్‌గా నివేదించడం ద్వారా Chrome‌ను సురక్షితంగా మరియు సులభంగా ఉపయోగించదగినదిగా చేయడంలో సాయం చేయవచ్చు.</translation>
 <translation id="7242029209006116544">మీరు నిర్వహించబడే ఖాతాతో సైన్ ఇన్ చేస్తున్నారు. దీని నిర్వాహకునికి మీ Google Chrome ప్రొఫైల్‌పై నియంత్రణను అందిస్తున్నారు. మీ యాప్‌లు, బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు, ఇతర సెట్టింగ్‌ల వంటి మీ Chrome డేటా, శాశ్వతంగా <ph name="USER_NAME" />కు అనుబంధించబడుతుంది. మీరు Google ఖాతాల డాష్‌బోర్డ్ ద్వారా ఈ డేటాను తొలగించవచ్చు, కానీ ఈ డేటాను మరో ఖాతాతో అనుబంధించలేరు. మీరు ప్రస్తుతం ఉన్న మీ Chrome డేటాను వేరుగా ఉంచడానికి ఐచ్ఛికంగా కొత్త‌ ప్రొఫైల్‌ను సృష్టించవచ్చు. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Google Chrome UIను చూపడానికి ఈ భాష ఉపయోగించబడింది</translation>
 <translation id="7296210096911315575">ముఖ్యమైన వినియోగ, భద్రతా సమాచారం</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">మీరు <ph name="USER_EMAIL_ADDRESS" />గా Chromeకు సైన్ ఇన్ చేసారు. మళ్లీ సైన్ ఇన్ చేయడానికి, దయచేసి ఇదే ఖాతాను ఉపయోగించండి.</translation>
 <translation id="7408085963519505752">Chrome OS నిబంధనలు</translation>
 <translation id="7419046106786626209">మీ డొమైన్ కోసం సింక్‌ అందుబాటులో లేనందున Chrome OS మీ డేటాను సింక్ చేయ‌లేక‌పోయింది.</translation>
-<translation id="7459554271817304652">వెబ్‌కు మీ వ్యక్తిగతీకరించిన‌ బ్రౌజర్ ఫీచ‌ర్‌ల‌ను సేవ్ చేయడానికి మరియు ఏదైనా కంప్యూటర్‌లోని Google Chrome నుండి అయినా వాటిని యాక్సెస్‌ చేయడానికి సింక్‌ను సెటప్ చేయండి.</translation>
 <translation id="7486227612705979895">చిరునామా బార్‌లో సూచనలను చేయడానికి Chrome మీ డిస్క్‌ను యాక్సెస్ చేస్తుంది</translation>
 <translation id="7531671357096394523">Chrome యొక్క అన్ని కాపీల నుండి నిష్క్రమించండి.</translation>
 <translation id="7535429826459677826">Google Chrome డెవలపర్</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">Windows XP మరియు Windows Vistaలకు ఇప్పుడు మద్దతు లేనందున ఈ కంప్యూటర్ ఇకపై Google Chrome అప్‌డేట్‌లను స్వీకరించదు</translation>
 <translation id="8008534537613507642">Chromeను మళ్లీ ఇన్‌స్టాల్ చేయి</translation>
 <translation id="8013993649590906847">చిత్రంలో ఉపయోగకరమైన వివరణ లేకుంటే, మీ కోసం ఒక వివరణను అందించడానికి Chrome ప్రయత్నిస్తుంది. వివరణలను సృష్టించడానికి, చిత్రాలు Googleకు పంపబడతాయి.</translation>
-<translation id="8032142183999901390">Chrome నుండి మీ ఖాతాను తీసివేసిన తర్వాత, ప్రభావవంతం కావడానికి మీరు మీ తెరిచిన ట్యాబ్‌లను మళ్లీ లోడ్ చేయాల్సి రావచ్చు.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome గురించి</translation>
-<translation id="8179874765710681175">మీ ఫోన్‌లో Chromeను ఇన్‌స్టాల్ చేయండి. మేము మీ ఫోన్‌కు SMS పంపుతాము.</translation>
-<translation id="825412236959742607">ఈ పేజీ చాలా మెమరీని ఉపయోగిస్తుంది, కాబట్టి Chrome కొంత కంటెంట్‌ను తీసివేసింది.</translation>
 <translation id="8255190535488645436">Google Chrome మీ కెమెరా మరియు మైక్రోఫోన్‌ని ఉపయోగిస్తోంది.</translation>
 <translation id="8286862437124483331">Google Chrome పాస్‌వర్డ్‌లను చూపడానికి ప్రయత్నిస్తోంది. దీన్ని అనుమతించడానికి మీ Windows పాస్‌వర్డ్‌ను టైప్ చేయండి.</translation>
 <translation id="8290100596633877290">ఆపండి! Google Chrome క్రాష్ అయ్యింది. ఇప్పుడు మళ్ళీ ప్రారంభించాల?</translation>
 <translation id="8342675569599923794">ఈ ఫైల్ అపాయకరమైనది, కాబట్టి Chrome దీన్ని బ్లాక్ చేసింది.</translation>
 <translation id="8370517070665726704">కాపీరైట్ <ph name="YEAR" /> Google LLC. సర్వ హక్కులు ప్రత్యేకించబడ్డాయి.</translation>
 <translation id="840084489713044809">Google Chrome మీ పాస్‌వర్డ్‌లను ఎగుమతి చేయాలనుకుంటోంది.</translation>
-<translation id="8406086379114794905">Chromeను మెరుగుపరచడంలో సహాయపడండి</translation>
 <translation id="8455999171311319804">ఐచ్ఛికం: విశ్లేషణ మరియు వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపడం ద్వారా Chrome OSను మెరుగుపరచడంలో సహాయం అందించండి.</translation>
-<translation id="8478823064122749032">మీ ఫోన్‌లో Chromeను ఇన్‌స్టాల్ చేయండి. మేము మీ ఖాతా పునరుద్ధరణ ఫోన్ నంబర్‌కు SMSను పంపుతాము: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chromeకి సంబంధించిన ప్రత్యేక భద్రతా అప్‌డేట్ వర్తింపజేయబడింది. ఇప్పుడే పునఃప్రారంభించండి, మేము మీ ట్యాబ్‌లను పునరుద్ధరిస్తాము.</translation>
 <translation id="8521348052903287641">mDNS ట్రాఫిక్‌ను అనుమతించడానికి Google Chrome డెవలపర్ కోసం ఇన్‌బౌండ్ నియమం.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome యాప్‌ లాంఛ‌ర్‌ కెనరీ</translation>
 <translation id="8556340503434111824">Google Chrome యొక్క కొత్త వెర్షన్ అందుబాటులో ఉంది, ఇది మునుపటి కంటే వేగవంతంగా ఉంటుంది.</translation>
-<translation id="8568392309447938879">మీరు అనువర్తనాలను ఉపయోగించడానికి Chromeకు సైన్ ఇన్ చేయాలి. ఇది పరికరాల్లో మీ అనువర్తనాలు, బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు మరియు ఇతర సెట్టింగ్‌లను సమకాలీకరించడానికి Chromeను అనుమతిస్తుంది.</translation>
 <translation id="8606668294522778825">Google Chrome మీ బ్రౌజింగ్ అనుభవాన్ని మెరుగుపరచడానికి వెబ్ సేవ‌లు ఉపయోగించవచ్చు. మీరు ఈ సేవ‌లు ఐచ్ఛికంగా నిలిపివేయవచ్చు. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome స్పందించడం లేదు. ఇప్పుడే పునఃప్రారంభించాలా?</translation>
 <translation id="8625237574518804553">{0,plural, =1{1 నిమిషంలో Chrome తిరిగి ప్రారంభించబడుతుంది}other{# నిమిషాల్లో Chrome తిరిగి ప్రారంభించబడుతుంది}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_th.xtb b/chrome/app/resources/google_chrome_strings_th.xtb
index a3e3128..d69e4544 100644
--- a/chrome/app/resources/google_chrome_strings_th.xtb
+++ b/chrome/app/resources/google_chrome_strings_th.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS ไม่สามารถซิงค์ข้อมูลของคุณ โปรดอัปเดตข้อความรหัสผ่านสำหรับการซิงค์</translation>
 <translation id="1302523850133262269">โปรดรอขณะที่ Chrome ติดตั้งการอัปเดตระบบล่าสุด</translation>
 <translation id="137466361146087520">Google Chrome เบต้า</translation>
-<translation id="1393853151966637042">รับความช่วยเหลือเกี่ยวกับการใช้ Chrome</translation>
 <translation id="1399397803214730675">คอมพิวเตอร์เครื่องนี้มี Google Chrome รุ่นใหม่กว่าแล้ว หากซอฟต์แวร์ไม่ทำงาน โปรดถอนการติดตั้ง Google Chrome แล้วลองใหม่อีกครั้ง</translation>
 <translation id="1434626383986940139">แอป Chrome Canary</translation>
-<translation id="1469002951682717133">Chrome App Launcher</translation>
 <translation id="1553358976309200471">อัปเดต Chrome</translation>
 <translation id="1587223624401073077">Google Chrome ใช้กล้องของคุณอยู่</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> เป็นอันตราย Chromium จึงบล็อกไว้</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome จะบันทึกรหัสผ่านนี้ในบัญชี Google คุณจะได้ไม่ต้องจำรหัสผ่านเอง</translation>
 <translation id="174539241580958092">Google Chrome ไม่สามารถซิงค์ข้อมูลของคุณเนื่องจากเกิดข้อผิดพลาดในการลงชื่อเข้าใช้</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">รับความช่วยเหลือเกี่ยวกับการใช้ Chrome OS</translation>
-<translation id="1795405610103747296">ติดตั้ง Chrome ในโทรศัพท์ เราจะส่ง SMS ไปยังโทรศัพท์ของคุณ: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">เมื่อปิดการตั้งค่านี้ คุณจะลงชื่อเข้าใช้เว็บไซต์ของ Google อย่างเช่น Gmail ได้โดยไม่ต้องลงชื่อเข้าใช้ Chrome</translation>
 <translation id="1860536484129686729">Chrome ต้องการสิทธิ์เข้าถึงกล้องถ่ายรูปของคุณสำหรับเว็บไซต์นี้</translation>
 <translation id="1873233029667955273">Google Chrome ไม่ใช่เบราว์เซอร์เริ่มต้น</translation>
@@ -50,16 +46,10 @@
 <translation id="2123055963409958220">ช่วยให้ Chrome ดียิ่งขึ้นด้วยการรายงาน<ph name="BEGIN_LINK" />การตั้งค่าปัจจุบัน<ph name="END_LINK" /></translation>
 <translation id="2128103434102193461">สำหรับรายละเอียดของ Chrome OS โปรดดู<ph name="LINK_BEGIN" />เกี่ยวกับ Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">โปรดรีสตาร์ท Chrome ตอนนี้เลย</translation>
-<translation id="216054706567564023">ติดตั้ง Chrome ในโทรศัพท์ เราจะส่ง SMS ไปยังหมายเลขโทรศัพท์สำหรับการกู้คืนบัญชีของคุณ</translation>
 <translation id="2246246234298806438">Google Chrome ไม่สามารถแสดงหน้าตัวอย่างก่อนพิมพ์หากไม่มีโปรแกรมดู PDF ในตัว</translation>
-<translation id="2252923619938421629">ช่วยให้ Google Chrome ดียิ่งขึ้นด้วยการรายงานการตั้งค่าปัจจุบัน</translation>
-<translation id="2286950485307333924">คุณได้ลงชื่อเข้าใช้ Chrome แล้ว</translation>
 <translation id="2290014774651636340">คีย์ API ของ Google หายไป การทำงานบางอย่างของ Google Chrome จะถูกปิดใช้งาน</translation>
 <translation id="2290095356545025170">คุณแน่ใจหรือไม่ว่าต้องการยกเลิกการติดตั้ง Google Chrome</translation>
 <translation id="2309047409763057870">นี่เป็นการติดตั้ง Google Chrome แบบสำรอง และไม่สามารถใช้เป็นเบราว์เซอร์เริ่มต้นของคุณ</translation>
-<translation id="2346876346033403680">ก่อนหน้านี้มีผู้ลงชื่อเข้าใช้ Chrome บนคอมพิวเตอร์นี้ในชื่อ <ph name="ACCOUNT_EMAIL_LAST" /> หากนั่นไม่ใช่บัญชีของคุณ ให้สร้างผู้ใช้ Chrome ใหม่เพื่อเก็บข้อมูลแยก
-
-การลงชื่อเข้าใช้ต่อไปจะรวมข้อมูล Chrome เช่น บุ๊กมาร์ก ประวัติการเข้าชม และการตั้งค่าอื่นๆ เข้ากับ <ph name="ACCOUNT_EMAIL_NEW" /></translation>
 <translation id="2348335408836342058">Chrome ต้องการสิทธิ์เข้าถึงไมโครโฟนและกล้องถ่ายรูปของคุณสำหรับเว็บไซต์นี้</translation>
 <translation id="2429317896000329049">Google Chrome ไม่สามารถซิงค์ข้อมูลของคุณเนื่องจากไม่สามารถใช้การซิงค์กับโดเมนของคุณ</translation>
 <translation id="2467438592969358367">Google Chrome ต้องการส่งออกรหัสผ่านของคุณ พิมพ์รหัสผ่าน Windows เพื่ออนุญาตให้ดำเนินการ</translation>
@@ -81,7 +71,6 @@
 <translation id="2871893339301912279">คุณได้ลงชื่อเข้าใช้ Chrome แล้ว!</translation>
 <translation id="2888126860611144412">เกี่ยวกับ Chrome</translation>
 <translation id="3037838751736561277">Google Chrome กำลังอยู่ในโหมดทำงานในพื้นหลัง</translation>
-<translation id="3047079729301751317">การยกเลิกการเชื่อมต่อกับ <ph name="USERNAME" /> จะล้างประวัติการเข้าชม บุ๊กมาร์ก การตั้งค่า และข้อมูลอื่นๆ ของ Chrome ที่เก็บไว้ในอุปกรณ์นี้ ข้อมูลที่เก็บไว้ในบัญชี Google ของคุณจะไม่ถูกล้างและสามารถจัดการได้บน <ph name="GOOGLE_DASHBOARD_LINK" />Google Dashboard<ph name="END_GOOGLE_DASHBOARD_LINK" /></translation>
 <translation id="3065168410429928842">แท็บ Chrome</translation>
 <translation id="3080151273017101988">เรียกใช้แอปพลิเคชันเบื้องหลังต่อไปเมื่อ Google Chrome ถูกปิดลง</translation>
 <translation id="3089968997497233615">Google Chrome มีรุ่นใหม่ที่ปลอดภัยกว่าให้ใช้งานแล้ว</translation>
@@ -102,7 +91,6 @@
 <translation id="3582972582564653026">ซิงค์และปรับเปลี่ยน Chrome ในอุปกรณ์ต่างๆ</translation>
 <translation id="3622797965165704966">ตอนนี้การใช้ Chrome กับบัญชี Google ของคุณและบนคอมพิวเตอร์ที่ใช้ร่วมกันทำได้ง่ายกว่าเดิม</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />ข้อกำหนดในการให้บริการ<ph name="END_TERMS_OF_SERVICE_LINK" />ของ Google Chrome OS</translation>
-<translation id="3716182511346448902">หน้านี้ใช้หน่วยความจำมากเกินไป Chrome จึงหยุดหน้าชั่วคราว</translation>
 <translation id="3718181793972440140">การดำเนินการนี้จะลบ 1 รายการออกจากอุปกรณ์นี้ หากต้องการดึงข้อมูลภายหลัง ให้ลงชื่อเข้าใช้ Chrome ด้วย <ph name="USER_EMAIL" /></translation>
 <translation id="3735758079232443276">ส่วนขยาย "<ph name="EXTENSION_NAME" />" ได้เปลี่ยนหน้าที่จะแสดงเมื่อคุณเริ่มต้น Chrome</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -118,7 +106,6 @@
 <translation id="4191857738314598978">{0,plural, =1{เปิด Chrome ขึ้นมาใหม่ภายใน 1 วัน}other{เปิด Chrome ขึ้นมาใหม่ภายใน # วัน}}</translation>
 <translation id="424864128008805179">ต้องการออกจากระบบ Chrome ไหม</translation>
 <translation id="4251615635259297716">เชื่อมโยงข้อมูล Chrome กับบัญชีนี้ไหม</translation>
-<translation id="4251625577313994583">รับ Chrome ใน iPhone ของคุณ</translation>
 <translation id="4293420128516039005">ลงชื่อเข้าใช้เพื่อซิงค์และปรับเปลี่ยน Chrome ในอุปกรณ์ต่างๆ</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -140,7 +127,6 @@
 <translation id="479167709087336770">การดำเนินการนี้จะใช้โปรแกรมตรวจตัวสะกดแบบเดียวกับใน Google Search ข้อความที่คุณพิมพ์ในเบราว์เซอร์จะส่งไปยัง Google คุณปรับเปลี่ยนลักษณะการทำงานนี้ได้ทุกเมื่อในการตั้งค่า</translation>
 <translation id="4891791193823137474">ให้ Google Chrome ทำงานในเบื้องหลัง</translation>
 <translation id="4895437082222824641">เปิดลิงก์ใน Chrome แท็บใหม่</translation>
-<translation id="4921569541910214635">หากต้องการแชร์คอมพิวเตอร์ ตอนนี้คุณสามารถตั้งค่า Chrome ในแบบที่คุณชอบได้แล้ว</translation>
 <translation id="4953650215774548573">ตั้ง Google Chrome เป็นเบราว์เซอร์เริ่มต้นของคุณ</translation>
 <translation id="495931528404527476">ใน Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -169,8 +155,6 @@
 <translation id="5895138241574237353">ปิดแล้วเปิดอีกครั้ง</translation>
 <translation id="5940385492829620908">เว็บของคุณ บุ๊กมาร์ก และสิ่งอื่นๆ ใน Chrome พร้อมใช้แล้วที่นี่</translation>
 <translation id="5941830788786076944">ทำให้ Google Chrome เป็นเบราว์เซอร์เริ่มต้น</translation>
-<translation id="6014844626092547096">ขณะนี้คุณลงชื่อเข้าใช้ Chrome แล้ว! การซิงค์ถูกปิดใช้งานโดยผู้ดูแลระบบของคุณ</translation>
-<translation id="6040143037577758943">ปิด</translation>
 <translation id="6070348360322141662">Google Chrome จะเข้ารหัสลับข้อมูลของคุณเพื่อเพิ่มความปลอดภัยให้มากยิ่งขึ้น</translation>
 <translation id="6113794647360055231">Chrome ดีขึ้นกว่าเดิม</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -183,8 +167,6 @@
 <translation id="6368958679917195344">Chrome OS เกิดขึ้นได้ด้วยการสนับสนุนจาก<ph name="BEGIN_LINK_CROS_OSS" />ซอฟต์แวร์โอเพนซอร์ส<ph name="END_LINK_CROS_OSS" />เพิ่มเติม</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">กำลังอัปเดต Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">คุณกำลังใช้ <ph name="PROFILE_EMAIL" /> ในการซิงค์ข้อมูลใน Chrome หากต้องการอัปเดตค่ากำหนดการซิงค์หรือใช้ Chrome โดยไม่มีบัญชี Google โปรดไปที่ <ph name="SETTINGS_LINK" /></translation>
-<translation id="6600954340915313787">คัดลอกไปยัง Chrome แล้ว</translation>
 <translation id="6676384891291319759">เข้าถึงอินเทอร์เน็ต</translation>
 <translation id="6679975945624592337">ให้ Google Chrome ทำงานในพื้นหลัง</translation>
 <translation id="6750954913813541382">Chrome จะส่งข้อความที่คุณพิมพ์ในเบราว์เซอร์ไปยัง Google เพื่อแก้ไขข้อผิดพลาดของการสะกดคำ</translation>
@@ -198,7 +180,6 @@
 <translation id="6989339256997917931">อัปเดต Google Chrome แล้ว แต่คุณไม่ได้ใช้งานมาไม่ต่ำกว่า 30 วันแล้ว</translation>
 <translation id="7098166902387133879">Google Chrome ใช้ไมโครโฟนอยู่</translation>
 <translation id="7106741999175697885">ตัวจัดการงาน - Google Chrome</translation>
-<translation id="7164397146364144019">คุณสามารถช่วยปรับปรุงให้ Chrome ปลอดภัยและใช้งานง่ายขึ้นโดยรายงานรายละเอียดของเหตุการณ์ด้านความปลอดภัยที่อาจจะเกิดขึ้นต่อ Google โดยอัตโนมัติ</translation>
 <translation id="7242029209006116544">คุณกำลังลงชื่อเข้าใช้ด้วยบัญชีที่จัดการ และให้การควบคุมระดับผู้ดูแลระบบของบัญชีดังกล่าวเหนือโปรไฟล์ Google Chrome ของคุณ ข้อมูล Chrome เช่น แอป บุ๊กมาร์ก ประวัติการเข้าชม รหัสผ่าน และการตั้งค่าอื่นๆ จะเชื่อมโยงอย่างถาวรกับ <ph name="USER_NAME" /> คุณจะสามารถลบข้อมูลนี้ผ่านทางแผงควบคุมบัญชี Google แต่คุณจะไม่สามารถเชื่อมโยงข้อมูลนี้กับบัญชีอื่น คุณสามารถเลือกที่จะสร้างโปรไฟล์ใหม่เพื่อแยกเก็บข้อมูล Chrome ที่มีอยู่ของคุณ <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">นี่เป็นภาษาที่ใช้ในการแสดง UI ของ Google Chrome</translation>
 <translation id="7296210096911315575">ข้อมูลสำคัญเกี่ยวกับการใช้งานและความปลอดภัย</translation>
@@ -207,7 +188,6 @@
 <translation id="7398801000654795464">คุณเคยลงชื่อเข้าใช้ Chrome ในชื่อ <ph name="USER_EMAIL_ADDRESS" /> โปรดใช้บัญชีเดิมเพื่อลงชื่อเข้าใช้อีกครั้ง</translation>
 <translation id="7408085963519505752">ข้อกำหนดของ Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS ไม่สามารถซิงค์ข้อมูลของคุณเนื่องจากการซิงค์ไม่พร้อมให้บริการสำหรับโดเมนของคุณ</translation>
-<translation id="7459554271817304652">ตั้งค่าการซิงค์เพื่อบัน​​ทึกฟีเจอร์เบราว์เซอร์ในแบบของคุณไปยังเว็บและเข้าถึงได้จาก Google Chrome บนคอมพิวเตอร์เครื่องใดก็ได้</translation>
 <translation id="7486227612705979895">Chrome จะเข้าถึงไดรฟ์ของคุณเพื่อแสดงคำแนะนำในแถบที่อยู่</translation>
 <translation id="7531671357096394523">ปิด Chrome ทุกสำเนา</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -231,25 +211,18 @@
 <translation id="7962410387636238736">คอมพิวเตอร์เครื่องนี้จะไม่ได้รับการอัปเดต Google Chrome อีกต่อไปเพราะระบบไม่รองรับ Windows XP และ Windows Vista แล้ว</translation>
 <translation id="8008534537613507642">ติดตั้ง Chrome ใหม่</translation>
 <translation id="8013993649590906847">หากรูปภาพไม่มีคำอธิบายที่เป็นประโยชน์ Chrome จะพยายามใส่คำอธิบายให้คุณ รูปภาพจะส่งมายัง Google เพื่อสร้างคำอธิบาย</translation>
-<translation id="8032142183999901390">เมื่อลบบัญชีของคุณออกจาก Chrome แล้ว คุณต้องโหลดแท็บที่เปิดอยู่ซ้ำเพื่อให้มีผล</translation>
 <translation id="8129812357326543296">เกี่ยวกับ &amp;Google Chrome</translation>
-<translation id="8179874765710681175">ติดตั้ง Chrome ในโทรศัพท์ เราจะส่ง SMS ไปยังโทรศัพท์ของคุณ</translation>
-<translation id="825412236959742607">หน้านี้ใช้หน่วยความจำมากเกินไป Chrome จึงนำเนื้อหาบางส่วนออก</translation>
 <translation id="8255190535488645436">Google Chrome ใช้กล้องและไมโครโฟนของคุณอยู่</translation>
 <translation id="8286862437124483331">Google Chrome กำลังพยายามแสดงรหัสผ่าน พิมพ์รหัสผ่าน Windows ของคุณเพื่อแสดงรหัสผ่าน</translation>
 <translation id="8290100596633877290">อ๊ะ! Google Chrome ขัดข้อง เปิดใหม่ตอนนี้หรือไม่</translation>
 <translation id="8342675569599923794">ไฟล์นี้อันตราย Chrome จึงบล็อกไว้</translation>
 <translation id="8370517070665726704">ลิขสิทธิ์ <ph name="YEAR" /> Google LLC สงวนลิขสิทธิ์</translation>
 <translation id="840084489713044809">Google Chrome ต้องการส่งออกรหัสผ่านของคุณ</translation>
-<translation id="8406086379114794905">ช่วยปรับปรุง Chrome ให้ดีขึ้น</translation>
 <translation id="8455999171311319804">ไม่บังคับ: ช่วยทำให้ Chrome OS ดียิ่งขึ้นโดยการส่งข้อมูลการวินิจฉัยและการใช้งานไปยัง Google โดยอัตโนมัติ</translation>
-<translation id="8478823064122749032">ติดตั้ง Chrome ในโทรศัพท์ เราจะส่ง SMS ไปยังหมายเลขโทรศัพท์สำหรับการกู้คืนบัญชีของคุณ: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">ระบบเพิ่งนำการอัปเดตความปลอดภัยพิเศษไปใช้กับ Google Chrome รีสตาร์ทเลย แล้วเราจะคืนค่าแท็บให้คุณ</translation>
 <translation id="8521348052903287641">กฎขาเข้าสำหรับ Google Chrome Dev เพื่ออนุญาตการเข้าชมแบบ mDNS</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome App Launcher Canary</translation>
 <translation id="8556340503434111824">มี Chrome รุ่นใหม่ให้ใช้งานแล้วและเร็วกว่าเดิม</translation>
-<translation id="8568392309447938879">คุณจะต้องลงชื่อเข้าใช้ Chrome เพื่อใช้แอป ซึ่งจะช่วยให้ Chrome สามารถซิงค์แอป บุ๊กมาร์ก ประวัติ รหัสผ่าน และการตั้งค่าอื่นๆ ระหว่างอุปกรณ์ได้</translation>
 <translation id="8606668294522778825">Google Chrome อาจใช้บริการเว็บเพื่อปรับปรุงประสบการณ์การท่องเว็บของคุณ คุณสามารถเลือกปิดบริการเหล่านี้ได้ <ph name="BEGIN_LINK" />ดูข้อมูลเพิ่มเติม<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome ไม่ตอบสนอง เปิดใช้งานใหม่ตอนนี้หรือไม่</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome จะเปิดขึ้นมาใหม่ใน 1 นาที}other{Chrome จะเปิดขึ้นมาใหม่ใน # นาที}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_tr.xtb b/chrome/app/resources/google_chrome_strings_tr.xtb
index 0f8dcfe..f6053c5 100644
--- a/chrome/app/resources/google_chrome_strings_tr.xtb
+++ b/chrome/app/resources/google_chrome_strings_tr.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS, verilerinizi senkronize edemedi. Lütfen Senkronizasyon parolanızı güncelleyin.</translation>
 <translation id="1302523850133262269">Chrome en son sistem güncellemelerini yüklerken lütfen bekleyin.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Chrome'u kullanma konusunda yardım alın</translation>
 <translation id="1399397803214730675">Bu bilgisayarda Google Chrome'un daha yeni bir sürümü zaten var. Yazılım çalışmıyorsa, lütfen Google Chrome'un yüklemesini kaldırın ve tekrar deneyin.</translation>
 <translation id="1434626383986940139">Chrome Canary Uygulamaları</translation>
-<translation id="1469002951682717133">Chrome Uygulama Başlatıcı</translation>
 <translation id="1553358976309200471">Chrome'u güncelle</translation>
 <translation id="1587223624401073077">Google Chrome kameranızı kullanıyor.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> tehlikeli olduğu için Chrome tarafından engellendi.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome bu şifreyi Google Hesabınıza kaydedecek. Bu şekilde şifreyi hatırlamanız gerekmez.</translation>
 <translation id="174539241580958092">Oturum açmadaki bir hata nedeniyle Google Chrome, verilerinizi senkronize edemedi.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Chrome OS'i kullanma konusunda yardım alın</translation>
-<translation id="1795405610103747296">Chrome'u telefonunuza yükleyin. Telefonunuza SMS göndereceğiz: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Bu özelliği kapatarak Chrome'da oturum açmadan Gmail gibi Google sitelerinde oturum açabilirsiniz.</translation>
 <translation id="1860536484129686729">Chrome'un bu sitede kameranıza erişmesi için izin gerekiyor</translation>
 <translation id="1873233029667955273">Google Chrome varsayılan tarayıcınız değil</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Chrome OS ayrıntıları için lütfen <ph name="LINK_BEGIN" />
       Chrome OS Hakkında<ph name="LINK_END" /> sayfasına bakın</translation>
 <translation id="2151406531797534936">Lütfen Chrome'u şimdi yeniden başlatın</translation>
-<translation id="216054706567564023">Chrome'u telefonunuza yükleyin. Hesap kurtarma telefon numaranıza SMS göndereceğiz.</translation>
 <translation id="2246246234298806438">Google Chrome, dahili PDF görüntüleyici yokken baskı önizlemeyi gösteremez.</translation>
-<translation id="2252923619938421629">Mevcut ayarlarınızı bildirerek Google Chrome'u daha iyi hale getirmemize yardımcı olun</translation>
-<translation id="2286950485307333924">Şu anda Chrome'da oturum açmış bulunmaktasınız</translation>
 <translation id="2290014774651636340">Google API anahtarları eksik. Google Chrome'un bazı işlevleri devre dışı bırakılacak.</translation>
 <translation id="2290095356545025170">Google Chrome'u kaldırmak istediğinizden emin misiniz?</translation>
 <translation id="2309047409763057870">Bu, Google Chrome'un ikincil bir yüklemesidir ve varsayılan tarayıcınız yapılamaz.</translation>
-<translation id="2346876346033403680">Birisi daha önce bu bilgisayarda <ph name="ACCOUNT_EMAIL_LAST" /> olarak Chrome'da oturum açmış. Bu sizin hesabınız değilse, bilgilerinizi ayrı tutmak için yeni bir Chrome kullanıcısı oluşturun.
-
-Yine de oturum açarsanız, yer işaretleriniz, geçmişiniz ve diğer ayarlarınız gibi Chrome bilgileriniz <ph name="ACCOUNT_EMAIL_NEW" /> ile birleştirilecektir.</translation>
 <translation id="2348335408836342058">Chrome'un bu sitede kameranıza ve mikrofonunuza erişmesi için izin gerekiyor</translation>
 <translation id="2429317896000329049">Senkronizasyon, alan adınızda kullanılamadığından Google Chrome, verilerinizi senkronize edemedi.</translation>
 <translation id="2467438592969358367">Google Chrome şifrelerinizi dışa aktarmak istiyor. Buna izin vermek için Windows şifrenizi yazın.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">Chrome'da oturum açtınız!</translation>
 <translation id="2888126860611144412">Chrome hakkında</translation>
 <translation id="3037838751736561277">Google Chrome arka plan modunda.</translation>
-<translation id="3047079729301751317"><ph name="USERNAME" /> kullanıcısının bağlantısını kesmek, geçmişinizi, yer işaretlerinizi, ayarlarınızı ve bu cihazda depolanan diğer Chrome verilerinizi temizler. Google Hesabınızda depolanan veriler temizlenmez ve <ph name="GOOGLE_DASHBOARD_LINK" />Google Hesap Özeti<ph name="END_GOOGLE_DASHBOARD_LINK" />'nden yönetilebilir.</translation>
 <translation id="3065168410429928842">Chrome Sekmesi</translation>
 <translation id="3080151273017101988">Google Chrome kapandığında arka plan uygulamaları çalıştırmaya devam et</translation>
 <translation id="3089968997497233615">Google Chrome'un kullanabileceğiniz yeni, daha güvenli bir sürümü var.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Chrome'u cihazlarınız arasında senkronize edin ve kişiselleştirin</translation>
 <translation id="3622797965165704966">Chrome'u Google Hesabınızla ve paylaşılan bilgisayarlarda kullanmak artık daha kolay.</translation>
 <translation id="3637702109597584617">Google Chrome OS <ph name="TERMS_OF_SERVICE_LINK" />Hizmet Şartları<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">Bu sayfa, bellekte çok fazla yer kapladığından Chrome tarafından duraklatıldı.</translation>
 <translation id="3718181793972440140">Bu işlem, 1 öğeyi bu cihazdan silecektir. Verilerinizi daha sonra geri almak için Chrome'da <ph name="USER_EMAIL" /> hesabıyla oturum açın.</translation>
 <translation id="3735758079232443276">"<ph name="EXTENSION_NAME" />" uzantısı, Chrome'u başlattığınızda gösterilen sayfayı değiştirdi.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Chrome'u bir gün içinde yeniden başlatın}other{Chrome'u # gün içinde yeniden başlatın}}</translation>
 <translation id="424864128008805179">Chrome oturumu kapatılsın mı?</translation>
 <translation id="4251615635259297716">Chrome verileriniz bu hesaba bağlansın mı?</translation>
-<translation id="4251625577313994583">iPhone'unuzda Chrome'u edinin</translation>
 <translation id="4293420128516039005">Chrome'u cihazlarınız arasında senkronize etmek ve kişiselleştirmek için oturum açın</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome OS</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Bu işlev, Google Arama'da kullanılan yazım denetiminin aynısını kullanır. Tarayıcıda yazdığınız metin Google'a gönderilir. Bu davranışı istediğiniz zaman ayarlardan değiştirebilirsiniz.</translation>
 <translation id="4891791193823137474">Google Chrome'un arka planda çalışmasına izin ver</translation>
 <translation id="4895437082222824641">Bağlantıyı yeni Chrome &amp;sekmesinde aç</translation>
-<translation id="4921569541910214635">Bilgisayarı paylaşıyor musunuz? Artık Chrome'u tam olarak istediğiniz gibi kurabilirsiniz.</translation>
 <translation id="4953650215774548573">Google Chrome'u varsayılan tarayıcım olarak ayarla</translation>
 <translation id="495931528404527476">Chrome'da</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -174,8 +160,6 @@
 <translation id="5895138241574237353">Yeniden başlat</translation>
 <translation id="5940385492829620908">Web, yer işaretleri ve diğer Chrome öğeleriniz burada bulunur.</translation>
 <translation id="5941830788786076944">Google Chrome varsayılan tarayıcı olsun</translation>
-<translation id="6014844626092547096">Chrome'da oturum açtınız! Senkronizasyon, yöneticiniz tarafından devre dışı bırakıldı.</translation>
-<translation id="6040143037577758943">Kapat</translation>
 <translation id="6070348360322141662">Google Chrome ek güvenlik sağlamak için verilerinizi şifreler</translation>
 <translation id="6113794647360055231">Chrome daha da iyi bir hale geldi</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -188,8 +172,6 @@
 <translation id="6368958679917195344">Chrome OS, ek <ph name="BEGIN_LINK_CROS_OSS" />açık kaynak yazılımlardan<ph name="END_LINK_CROS_OSS" /> yararlanılarak geliştirilmiştir.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome Dev</translation>
 <translation id="6566149418543181476">Google Chrome güncelleniyor (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Chrome öğelerinizi senkronize etmek için <ph name="PROFILE_EMAIL" /> adresini kullanıyorsunuz. Senkronizasyon tercihinizi güncellemek veya Chrome'u bir Google Hesabı olmadan kullanmak için şunu ziyaret edin: <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Chrome'a kopyalandı</translation>
 <translation id="6676384891291319759">İnternet'e erişin</translation>
 <translation id="6679975945624592337">Google Chrome'un Arka Planda Çalışmasına İzin Ver</translation>
 <translation id="6750954913813541382">Yazım hatalarını düzeltmek için Chrome, tarayıcıda yazdığınız metni Google'a gönderir</translation>
@@ -203,7 +185,6 @@
 <translation id="6989339256997917931">Google Chrome güncellendi, ancak programı en azından 30 gündür kullanmıyorsunuz.</translation>
 <translation id="7098166902387133879">Google Chrome mikrofonunuzu kullanıyor.</translation>
 <translation id="7106741999175697885">Görev Yöneticisi - Google Chrome</translation>
-<translation id="7164397146364144019">Olası güvenlik olaylarının ayrıntılarını Google'a otomatik olarak bildirerek Chrome'un daha güvenli ve kullanımı kolay bir hale gelmesine yardımcı olabilirsiniz.</translation>
 <translation id="7242029209006116544">Yönetilen bir hesapla oturum açıyor ve hesabın yöneticisine Google Chrome profilinizi denetleme izni veriyorsunuz. Uygulamalarınız, yer işaretleriniz, geçmişiniz, şifreleriniz ve diğer ayarlarınız gibi Chrome verileriniz kalıcı olarak <ph name="USER_NAME" /> ile bağlantılandırılacaktır. Google Hesapları Hesap Özeti'ni kullanarak bu verileri silebilecek, ancak bu verileri başka bir hesapla ilişkilendiremeyeceksiniz. İsterseniz mevcut Chrome verilerinizi ayrı tutmak için yeni bir profil oluşturabilirsiniz.<ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Bu dil, Google Chrome kullanıcı arayüzünü görüntülemek için kullanılır</translation>
 <translation id="7296210096911315575">Önemli kullanım ve güvenlik bilgileri</translation>
@@ -212,7 +193,6 @@
 <translation id="7398801000654795464">Chrome'da <ph name="USER_EMAIL_ADDRESS" /> olarak oturum açtınız. Tekrar oturum açmak için lütfen aynı hesabı kullanın.</translation>
 <translation id="7408085963519505752">Chrome OS Şartları</translation>
 <translation id="7419046106786626209">Senkronizasyon, alan adınızda kullanılamadığından Chrome OS, verilerinizi senkronize edemedi.</translation>
-<translation id="7459554271817304652">Kişiselleştirilmiş tarayıcı özelliklerinizi Web'e kaydetmek ve herhangi bir bilgisayardan Google Chrome'u kullanarak bu özelliklere erişmek için senkronizasyonu ayarlayın.</translation>
 <translation id="7486227612705979895">Chrome, adres çubuğunda öneriler göstermek için Drive'ınıza erişecektir</translation>
 <translation id="7531671357096394523">Tüm Chrome kopyalarından çık.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -236,25 +216,18 @@
 <translation id="7962410387636238736">Windows XP ve Windows Vista artık desteklenmediğinden, bu bilgisayar bundan böyle Google Chrome güncellemelerini almayacaktır</translation>
 <translation id="8008534537613507642">Chrome'u yeniden yükle</translation>
 <translation id="8013993649590906847">Bir resmin işe yarar bir açıklaması yoksa, Chrome sizin için bir açıklama sağlamaya çalışır. Açıklama oluşturmak için resimler Google'a gönderilir.</translation>
-<translation id="8032142183999901390">Hesabınızı Chrome'dan kaldırdıktan sonra, geçerli olması için açık sekmelerinizi yeniden yüklemeniz gerekebilir.</translation>
 <translation id="8129812357326543296">&amp;Google Chrome hakkında</translation>
-<translation id="8179874765710681175">Chrome'u telefonunuza yükleyin. Telefonunuza SMS göndereceğiz.</translation>
-<translation id="825412236959742607">Bu sayfa çok fazla bellek kullandığından Chrome bazı içerikleri kaldırdı.</translation>
 <translation id="8255190535488645436">Google Chrome kameranızı ve mikrofonunuzu kullanıyor.</translation>
 <translation id="8286862437124483331">Google Chrome şifreleri göstermeye çalışıyor. Buna izin vermek için Windows şifrenizi yazın.</translation>
 <translation id="8290100596633877290">Of! Google Chrome kilitlendi. Şimdi yeniden başlatılsın mı?</translation>
 <translation id="8342675569599923794">Bu dosya tehlikeli olduğu için Chrome tarafından engellendi.</translation>
 <translation id="8370517070665726704">Telif hakkı <ph name="YEAR" /> Google LLC. Tüm hakları saklıdır.</translation>
 <translation id="840084489713044809">Google Chrome, şifrelerinizi dışa aktarmak istiyor.</translation>
-<translation id="8406086379114794905">Chrome'u daha iyi hale getirmeye yardımcı olun</translation>
 <translation id="8455999171311319804">İsteğe bağlı: Teşhis ve kullanım verilerini Google'a otomatik olarak gönderin ve Chrome OS'in iyileştirilmesine yardımcı olun.</translation>
-<translation id="8478823064122749032">Chrome'u telefonunuza yükleyin. Hesap kurtarma telefon numaranıza SMS göndereceğiz: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome için özel bir güvenlik güncellemesi uygulandı. Uygulamayı hemen yeniden başlatın; açık sekmeleriniz geri yüklenir.</translation>
 <translation id="8521348052903287641">Google Chrome Dev'in mDNS trafiğine izin vermeyi sağlayan gelen trafik kuralı.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome Uygulama Başlatıcısı Canary</translation>
 <translation id="8556340503434111824">Kullanabileceğiniz yeni bir Google Chrome sürümü var ve bu sürüm, her zamankinden daha hızlı.</translation>
-<translation id="8568392309447938879">Uygulamaları kullanmak için Chrome'da oturum açmış olmanız gerekir. Oturum açmanız, Chrome'un uygulamalarınızı, yer işaretlerinizi, geçmişinizi, şifrelerinizi ve diğer ayarlarınızı tüm cihazlarınızda senkronize etmesine olanak sağlar.</translation>
 <translation id="8606668294522778825">Google Chrome, göz atma deneyiminizi iyileştirmek için web hizmetleri kullanabilir. İsterseniz, bu hizmetleri devre dışı bırakabilirsiniz. <ph name="BEGIN_LINK" />Daha fazla bilgi edinin<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome yanıt vermiyor. Yeniden başlatılsın mı?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome 1 dakika içinde yeniden başlatılacak}other{Chrome # dakika içinde yeniden başlatılacak}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_uk.xtb b/chrome/app/resources/google_chrome_strings_uk.xtb
index c6e33059..4d85d8a 100644
--- a/chrome/app/resources/google_chrome_strings_uk.xtb
+++ b/chrome/app/resources/google_chrome_strings_uk.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">ОС Chrome не вдалося синхронізувати ваші дані. Оновіть свою парольну фразу для синхронізації.</translation>
 <translation id="1302523850133262269">Зачекайте, доки Chrome установить найновіші оновлення системи.</translation>
 <translation id="137466361146087520">Бета-версія Google Chrome</translation>
-<translation id="1393853151966637042">Отримати довідку щодо користування Chrome</translation>
 <translation id="1399397803214730675">На комп’ютері вже встановлено новішу версію Google Chrome. Якщо програмне забезпечення не працює, видаліть Google Chrome і повторіть спробу.</translation>
 <translation id="1434626383986940139">Програми Chrome для версії Canary</translation>
-<translation id="1469002951682717133">Панель запуску програм Chrome</translation>
 <translation id="1553358976309200471">Оновити Chrome</translation>
 <translation id="1587223624401073077">Google Chrome використовує вашу камеру.</translation>
 <translation id="1587325591171447154">Файл <ph name="FILE_NAME" /> небезпечний, тому Chrome заблокував його.</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome збереже цей пароль в обліковому записі Google. Не потрібно його запам’ятовувати.</translation>
 <translation id="174539241580958092">Google Chrome не вдалося синхронізувати ваші дані через помилку входу.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Отримати довідку щодо користування ОС Chrome</translation>
-<translation id="1795405610103747296">Установіть Chrome на телефоні. Ми надішлемо SMS на ваш телефон: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Якщо вимкнути цей параметр, ви зможете входити на сайти Google, як-от Gmail, без входу в Chrome</translation>
 <translation id="1860536484129686729">Chrome потрібен дозвіл на використання камери, щоб надати цьому сайту доступ до неї</translation>
 <translation id="1873233029667955273">Google Chrome не є веб-переглядачем за умовчанням</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">Щоб отримати докладнішу інформацію, перегляньте сторінку <ph name="LINK_BEGIN" />
       Про ОС Chrome<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Перезапустіть Chrome</translation>
-<translation id="216054706567564023">Установіть Chrome на телефоні. Ми надішлемо SMS на номер телефону для відновлення облікового запису.</translation>
 <translation id="2246246234298806438">Google Chrome не може відобразити попередній перегляд версії для друку, якщо немає вбудованого переглядача PDF.</translation>
-<translation id="2252923619938421629">Допоможіть покращити Google Chrome, повідомляючи поточні налаштування</translation>
-<translation id="2286950485307333924">Ви ввійшли в Chrome</translation>
 <translation id="2290014774651636340">Ключі API Google відсутні. Деякі функції Google Chrome буде вимкнено.</translation>
 <translation id="2290095356545025170">Ви дійсно хочете видалити Google Chrome?</translation>
 <translation id="2309047409763057870">Це додаткове встановлення Google Chrome. Його не можна зробити вашим веб-переглядачем за умовчанням.</translation>
-<translation id="2346876346033403680">Хтось раніше входив у Chrome на цьому комп’ютері як <ph name="ACCOUNT_EMAIL_LAST" />. Якщо це не ваш обліковий запис, створіть нового користувача Chrome, щоб зберігати свою інформацію окремо.
-
-Якщо ви все одно ввійдете, наявні дані Chrome, як-от закладки, історію й інші налаштування, буде об’єднано з обліковим записом <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome потрібен дозвіл на використання камери й мікрофона, щоб надати цьому сайту доступ до них</translation>
 <translation id="2429317896000329049">Google Chrome не вдалося синхронізувати ваші дані, оскільки синхронізація для вашого домену недоступна.</translation>
 <translation id="2467438592969358367">Google Chrome хоче експортувати ваші паролі. Щоб дозволити, введіть свій пароль Windows.</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">Ви ввійшли в Chrome.</translation>
 <translation id="2888126860611144412">Про Chrome</translation>
 <translation id="3037838751736561277">Google Chrome у фоновому режимі.</translation>
-<translation id="3047079729301751317">Якщо від’єднати користувача <ph name="USERNAME" />, вашу історію, закладки, налаштування й інші дані Chrome, збережені на цьому пристрої, буде видалено. Дані, які зберігаються в обліковому записі Google, не буде видалено. Ними можна керувати на <ph name="GOOGLE_DASHBOARD_LINK" />Інформаційній панелі Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Chrome</translation>
 <translation id="3080151273017101988">Продовжувати роботу фонових програм, коли Google Chrome закрито</translation>
 <translation id="3089968997497233615">Доступна нова, безпечніша версія Google Chrome.</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">Синхронізуйте та персоналізуйте роботу Chrome на всіх своїх пристроях</translation>
 <translation id="3622797965165704966">Користуватися Chrome у своєму обліковому записі Google на спільних комп’ютерах стало легше.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Умови використання<ph name="END_TERMS_OF_SERVICE_LINK" /> ОС Google Chrome</translation>
-<translation id="3716182511346448902">Ця сторінка займає велику кількість пам’яті, тому Chrome призупинив її роботу.</translation>
 <translation id="3718181793972440140">1 елемент буде видалено з цього пристрою. Щоб відновити дані пізніше, увійдіть в обліковий запис Chrome як <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Розширення "<ph name="EXTENSION_NAME" />" змінило сторінку, яка відкривається під час запуску Chrome.</translation>
 <translation id="3780814664026482060">Chrome – <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Перезапустіть Chrome упродовж дня}one{Перезапустіть Chrome упродовж # дня}few{Перезапустіть Chrome упродовж # днів}many{Перезапустіть Chrome упродовж # днів}other{Перезапустіть Chrome упродовж # дня}}</translation>
 <translation id="424864128008805179">Вийти з Chrome?</translation>
 <translation id="4251615635259297716">Пов’язати ваші дані Chrome із цим обліковим записом?</translation>
-<translation id="4251625577313994583">завантажити Chrome на iPhone</translation>
 <translation id="4293420128516039005">Увійдіть, щоб синхронізувати та персоналізувати роботу Chrome на всіх своїх пристроях</translation>
 <translation id="4328355335528187361">Версія Google Chrome для розробників (mDNS-In)</translation>
 <translation id="4331809312908958774">ОС Chrome</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">Використовується та сама технологія перевірки правопису, що й у Пошуку Google. Текст, який ви вводите у веб-переглядачі, надсилається в Google. Це завжди можна змінити в налаштуваннях.</translation>
 <translation id="4891791193823137474">Дозволити Google Chrome працювати у фоновому режимі</translation>
 <translation id="4895437082222824641">Відкрити посилання в новій &amp;вкладці Chrome</translation>
-<translation id="4921569541910214635">Користуєтеся комп’ютером спільно з іншими? Тепер ви можете налаштувати Chrome на свій смак.</translation>
 <translation id="4953650215774548573">Зробити Google Chrome веб-переглядачем за умовчанням</translation>
 <translation id="495931528404527476">У Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">Перезапустити</translation>
 <translation id="5940385492829620908">Тут містяться ваші веб-сторінки, закладки та інші дані Chrome.</translation>
 <translation id="5941830788786076944">Зробити Google Chrome переглядачем за промовчанням</translation>
-<translation id="6014844626092547096">Ви ввійшли в Chrome. Проте ваш адміністратор вимкнув синхронізацію.</translation>
-<translation id="6040143037577758943">Закрити</translation>
 <translation id="6070348360322141662">Щоб підвищити безпеку, Google Chrome шифруватиме ваші дані</translation>
 <translation id="6113794647360055231">Chrome став ще кращим</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">ОС Chrome стала можливою завдяки додатковому <ph name="BEGIN_LINK_CROS_OSS" />програмному забезпеченню з відкритим кодом<ph name="END_LINK_CROS_OSS" />.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> – Версія Google Chrome для розробників</translation>
 <translation id="6566149418543181476">Google Chrome оновлюється (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Ви синхронізуєте дані Chrome через обліковий запис <ph name="PROFILE_EMAIL" />. Щоб оновити параметри синхронізації або використовувати Chrome без облікового запису Google, перейдіть на сторінку <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Скопійовано в Chrome</translation>
 <translation id="6676384891291319759">Доступ до Інтернету</translation>
 <translation id="6679975945624592337">Дозволити Google Chrome працювати у фоновому режимі</translation>
 <translation id="6750954913813541382">Щоб виправляти орфографічні помилки, Chrome надсилає в Google текст, який ви вводите у веб-переглядачі</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome оновлено, проте ви не користувалися цим веб-переглядачем щонайменше 30 днів.</translation>
 <translation id="7098166902387133879">Google Chrome використовує ваш мікрофон.</translation>
 <translation id="7106741999175697885">Диспетчер завдань - Google Chrome</translation>
-<translation id="7164397146364144019">Ви можете допомогти зробити Chrome безпечнішим і простішим у користуванні, автоматично повідомляючи Google деталі щодо можливого порушення безпеки.</translation>
 <translation id="7242029209006116544">Ви входите, використовуючи дані облікового запису, яким керує адміністратор. Адміністратор може контролювати ваш профіль Google Chrome. Ваші дані Chrome, як-от програми, закладки, історія, паролі й інші налаштування, буде назавжди пов’язано з обліковим записом <ph name="USER_NAME" />. Ці дані можна видалити на інформаційній панелі Облікових записів Google, але ви не зможете пов’язати їх з іншим обліковим записом. Проте ви можете створити новий профіль, щоб зберігати наявні дані Chrome окремо. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Цією мовою відображається інтерфейс Google Chrome</translation>
 <translation id="7296210096911315575">Важлива інформація про використання й безпеку</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">Ви ввійшли в Chrome як <ph name="USER_EMAIL_ADDRESS" />. Скористайтеся тим самим обліковим записом, щоб увійти знову.</translation>
 <translation id="7408085963519505752">Умови ОС Chrome</translation>
 <translation id="7419046106786626209">ОС Chrome не вдалося синхронізувати ваші дані, оскільки синхронізація для вашого домену недоступна.</translation>
-<translation id="7459554271817304652">Налаштуйте синхронізацію, щоб зберегти свої персоналізовані функції веб-переглядача в Інтернеті й мати до них доступ із Google Chrome на будь-якому комп’ютері.</translation>
 <translation id="7486227612705979895">Chrome матиме доступ до Диска, щоб робити пропозиції в адресному рядку</translation>
 <translation id="7531671357096394523">Закрийте всі копії Chrome.</translation>
 <translation id="7535429826459677826">Версія Google Chrome для розробників</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">На цей комп’ютер не надходитимуть оновлення Google Chrome, оскільки Windows XP та Windows Vista більше не підтримуються</translation>
 <translation id="8008534537613507642">Перевстановити Chrome</translation>
 <translation id="8013993649590906847">Якщо зображення не має корисного опису, Chrome спробує додати його. Для цього зображення надсилаються в Google.</translation>
-<translation id="8032142183999901390">Якщо видалити обліковий запис із Chrome, можливо, потрібно оновити відкриті вкладки, щоб зміни почали діяти.</translation>
 <translation id="8129812357326543296">Про &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Установіть Chrome на телефоні. Ми надішлемо SMS на ваш телефон.</translation>
-<translation id="825412236959742607">Ця сторінка використовує забагато пам’яті, тому веб-переглядач Chrome вилучив деякий вміст.</translation>
 <translation id="8255190535488645436">Google Chrome використовує вашу камеру та мікрофон.</translation>
 <translation id="8286862437124483331">Google Chrome намагається показати паролі. Щоб дозволити, введіть свій пароль Windows.</translation>
 <translation id="8290100596633877290">Відбулося аварійне завершення роботи Google Chrome. Перезапустити зараз?</translation>
 <translation id="8342675569599923794">Цей файл небезпечний, тому Chrome заблокував його.</translation>
 <translation id="8370517070665726704">Авторське право <ph name="YEAR" /> Google LLC. Усі права захищено.</translation>
 <translation id="840084489713044809">Google Chrome хоче експортувати ваші паролі.</translation>
-<translation id="8406086379114794905">Допоможіть покращити Chrome</translation>
 <translation id="8455999171311319804">Додатково. Допоможіть покращити ОС Chrome, автоматично надсилаючи в Google дані про діагностику та використання.</translation>
-<translation id="8478823064122749032">Установіть Chrome на телефоні. Ми надішлемо SMS на номер телефону для відновлення облікового запису: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Щойно було застосовано спеціальне оновлення для захисту Google Chrome. Перезапустіть веб-переглядач, і ваші вкладки буде відновлено.</translation>
 <translation id="8521348052903287641">Вхідне правило для Google Chrome для розробників дозволяє трафік mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Панель запуску програм Chrome для версії Canary</translation>
 <translation id="8556340503434111824">Доступна нова версія Google Chrome – швидша, ніж будь-коли.</translation>
-<translation id="8568392309447938879">Щоб користуватися програмами, потрібно ввійти в Chrome. Це дозволяє веб-переглядачу Chrome синхронізувати ваші програми, закладки, історію, паролі й інші налаштування на різних пристроях.</translation>
 <translation id="8606668294522778825">Google Chrome може покращувати веб-перегляд за допомогою веб-служб. Ви можете вимкнути ці служби. <ph name="BEGIN_LINK" />Докладніше<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome не відповідає. Перезапустити зараз?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome перезапуститься через 1 хвилину}one{Chrome перезапуститься через # хвилину}few{Chrome перезапуститься через # хвилини}many{Chrome перезапуститься через # хвилин}other{Chrome перезапуститься через # хвилини}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_vi.xtb b/chrome/app/resources/google_chrome_strings_vi.xtb
index 8cb2e4c..d01d6c4d 100644
--- a/chrome/app/resources/google_chrome_strings_vi.xtb
+++ b/chrome/app/resources/google_chrome_strings_vi.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS không thể đồng bộ hóa dữ liệu của bạn. Vui lòng cập nhật cụm mật khẩu Đồng bộ hóa của bạn.</translation>
 <translation id="1302523850133262269">Vui lòng đợi khi Chrome cài đặt các bản cập nhật hệ thống mới nhất.</translation>
 <translation id="137466361146087520">Google Chrome Beta</translation>
-<translation id="1393853151966637042">Nhận trợ giúp sử dụng Chrome</translation>
 <translation id="1399397803214730675">Máy tính này đã có phiên bản Google Chrome mới hơn. Nếu phần mềm hiện không hoạt động, vui lòng gỡ cài đặt Google Chrome và thử lại.</translation>
 <translation id="1434626383986940139">Ứng dụng Chrome Canary</translation>
-<translation id="1469002951682717133">Trình chạy ứng dụng Chrome</translation>
 <translation id="1553358976309200471">Cập nhật Chrome</translation>
 <translation id="1587223624401073077">Google Chrome đang sử dụng máy ảnh của bạn.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> nguy hiểm, do đó Chrome đã chặn tệp.</translation>
@@ -36,8 +34,6 @@
 <translation id="1734234790201236882">Chrome sẽ lưu mật khẩu này trong Tài khoản Google của bạn. Bạn sẽ không phải nhớ mật khẩu này.</translation>
 <translation id="174539241580958092">Google Chrome không thể đồng bộ hóa dữ liệu của bạn do lỗi khi đăng nhập.</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">Nhận trợ giúp về cách sử dụng Chrome OS</translation>
-<translation id="1795405610103747296">Cài đặt Chrome trên điện thoại của bạn. Chúng tôi sẽ gửi SMS tới điện thoại của bạn: <ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">Bằng việc tắt tính năng này, bạn có thể đăng nhập vào các trang web của Google, chẳng hạn như Gmail mà không cần đăng nhập vào Chrome</translation>
 <translation id="1860536484129686729">Chrome cần có quyền truy cập vào máy ảnh của bạn cho trang web này</translation>
 <translation id="1873233029667955273">Google Chrome không phải là trình duyệt mặc định của bạn</translation>
@@ -54,16 +50,10 @@
 <translation id="2128103434102193461">Để biết thông tin chi tiết về Chrome OS, vui lòng xem phần <ph name="LINK_BEGIN" />
       Giới thiệu về Chrome OS<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">Vui lòng khởi động lại Chrome ngay bây giờ</translation>
-<translation id="216054706567564023">Cài đặt Chrome trên điện thoại của bạn. Chúng tôi sẽ gửi SMS tới số điện thoại khôi phục tài khoản của bạn.</translation>
 <translation id="2246246234298806438">Google Chrome không thể hiển thị xem trước bản in khi thiếu trình xem PDF được cài sẵn.</translation>
-<translation id="2252923619938421629">Giúp cải thiện Google Chrome bằng cách báo cáo cài đặt hiện tại</translation>
-<translation id="2286950485307333924">Bạn hiện đã đăng nhập vào Chrome</translation>
 <translation id="2290014774651636340">Khóa API của Google bị thiếu. Một số chức năng của Google Chrome sẽ bị tắt.</translation>
 <translation id="2290095356545025170">Bạn có chắc chắn muốn gỡ cài đặt Google Chrome không?</translation>
 <translation id="2309047409763057870">Đây là cài đặt thứ cấp của Google Chrome và không thể trở thành trình duyệt mặc định của bạn.</translation>
-<translation id="2346876346033403680">Ai đó trước đây đã đăng nhập vào Chrome trên máy tính này là <ph name="ACCOUNT_EMAIL_LAST" />. Nếu đó không phải là tài khoản của bạn, hãy tạo người dùng Chrome mới để giữ riêng biệt thông tin của bạn.
-
-Đăng nhập bằng mọi cách sẽ kết hợp thông tin Chrome như dấu trang, lịch sử và các cài đặt khác vào <ph name="ACCOUNT_EMAIL_NEW" />.</translation>
 <translation id="2348335408836342058">Chrome cần có quyền truy cập vào máy ảnh và micrô của bạn cho trang web này</translation>
 <translation id="2429317896000329049">Google Chrome không thể đồng bộ hóa dữ liệu của bạn vì Đồng bộ hóa không khả dụng cho miền của bạn.</translation>
 <translation id="2467438592969358367">Google Chrome muốn xuất các mật khẩu của bạn. Hãy nhập mật khẩu Windows để cho phép thực hiện việc này.</translation>
@@ -85,7 +75,6 @@
 <translation id="2871893339301912279">Bạn đã đăng nhập vào Chrome!</translation>
 <translation id="2888126860611144412">Giới thiệu về Chrome</translation>
 <translation id="3037838751736561277">Google Chrome đang chạy trong nền.</translation>
-<translation id="3047079729301751317">Ngắt kết nối <ph name="USERNAME" /> sẽ xóa lịch sử, dấu trang, cài đặt và các dữ liệu Chrome khác của bạn trên thiết bị này. Dữ liệu được lưu trữ trong tài khoản Google của bạn sẽ không bị xóa và có thể được quản lý trên <ph name="GOOGLE_DASHBOARD_LINK" />Trang tổng quan của Google<ph name="END_GOOGLE_DASHBOARD_LINK" />.</translation>
 <translation id="3065168410429928842">Tab Chrome</translation>
 <translation id="3080151273017101988">Tiếp tục chạy các ứng dụng nền khi Google Chrome đóng</translation>
 <translation id="3089968997497233615">Đã có phiên bản Google Chrome mới và an toàn hơn.</translation>
@@ -106,7 +95,6 @@
 <translation id="3582972582564653026">Đồng bộ hóa và cá nhân hóa Chrome trên các thiết bị của bạn</translation>
 <translation id="3622797965165704966">Giờ đây, việc sử dụng Chrome bằng tài khoản Google của bạn và trên máy tính được chia sẻ trở nên dễ dàng hơn.</translation>
 <translation id="3637702109597584617"><ph name="TERMS_OF_SERVICE_LINK" />Điều khoản dịch vụ<ph name="END_TERMS_OF_SERVICE_LINK" /> của Google Chrome OS</translation>
-<translation id="3716182511346448902">Chrome đã tạm dừng trang này vì trang dùng quá nhiều bộ nhớ.</translation>
 <translation id="3718181793972440140">Thao tác này sẽ xóa 1 mục khỏi thiết bị này. Để truy xuất dữ liệu của bạn sau, hãy đăng nhập vào Chrome dưới dạng <ph name="USER_EMAIL" />.</translation>
 <translation id="3735758079232443276">Tiện ích "<ph name="EXTENSION_NAME" />" đã thay đổi trang nào được hiển thị khi bạn khởi động Chrome.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -122,7 +110,6 @@
 <translation id="4191857738314598978">{0,plural, =1{Khởi động lại Chrome trong vòng một ngày}other{Khởi động lại Chrome trong vòng # ngày}}</translation>
 <translation id="424864128008805179">Đăng xuất khỏi Chrome?</translation>
 <translation id="4251615635259297716">Bạn muốn liên kết dữ liệu Chrome của bạn với tài khoản này?</translation>
-<translation id="4251625577313994583">tải Chrome trên iPhone của bạn</translation>
 <translation id="4293420128516039005">Đăng nhập để đồng bộ hóa và cá nhân hóa Chrome trên các thiết bị của bạn</translation>
 <translation id="4328355335528187361">Google Chrome Dev (mDNS-In)</translation>
 <translation id="4331809312908958774">Hệ điều hành Chrome</translation>
@@ -144,7 +131,6 @@
 <translation id="479167709087336770">Dịch vụ này sử dụng cùng một trình kiểm tra chính tả dùng trong Google Tìm kiếm. Thông tin bạn nhập vào trình duyệt sẽ được gửi tới Google. Bạn luôn có thể thay đổi hành động này trong phần cài đặt.</translation>
 <translation id="4891791193823137474">Để Google Chrome chạy trên nền</translation>
 <translation id="4895437082222824641">Mở liên kết trong tab mới của Chrome</translation>
-<translation id="4921569541910214635">Bạn muốn chia sẻ máy tính? Giờ đây, bạn có thể thiết lập Chrome theo cách mình muốn.</translation>
 <translation id="4953650215774548573">Đặt Google Chrome làm trình duyệt mặc định của bạn</translation>
 <translation id="495931528404527476">Trong Chrome</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -176,8 +162,6 @@
 <translation id="5895138241574237353">Khởi động lại</translation>
 <translation id="5940385492829620908">Web, dấu trang và các nội dung khác của bạn trên Chrome đều có ở đây.</translation>
 <translation id="5941830788786076944">Chọn Google Chrome làm trình duyệt mặc định</translation>
-<translation id="6014844626092547096">Bạn hiện đã đăng nhập vào Chrome! Quản trị viên của bạn đã tắt tính năng Đồng bộ hóa.</translation>
-<translation id="6040143037577758943">Đóng</translation>
 <translation id="6070348360322141662">Để bảo mật hơn, Google Chrome sẽ mã hóa dữ liệu của bạn</translation>
 <translation id="6113794647360055231">Chrome được cải tiến hơn</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -190,8 +174,6 @@
 <translation id="6368958679917195344">Chrome OS trở nên khả thi là nhờ <ph name="BEGIN_LINK_CROS_OSS" />phần mềm nguồn mở<ph name="END_LINK_CROS_OSS" /> bổ sung.</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome dành cho nhà phát triển</translation>
 <translation id="6566149418543181476">Đang cập nhật Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">Bạn đang sử dụng <ph name="PROFILE_EMAIL" /> để đồng bộ hóa nội dung Chrome của mình. Để cập nhật tùy chọn đồng bộ hóa hoặc sử dụng Chrome mà không cần tài khoản Google, hãy truy cập <ph name="SETTINGS_LINK" />.</translation>
-<translation id="6600954340915313787">Đã sao chép vào Chrome</translation>
 <translation id="6676384891291319759">Truy cập Internet</translation>
 <translation id="6679975945624592337">Cho phép Google Chrome chạy trong nền</translation>
 <translation id="6750954913813541382">Để sửa lỗi chính tả, Chrome sẽ gửi văn bản mà bạn nhập vào trình duyệt này cho Google</translation>
@@ -205,7 +187,6 @@
 <translation id="6989339256997917931">Google Chrome đã được cập nhật, nhưng bạn đã không sử dụng chương trình này ít nhất 30 ngày.</translation>
 <translation id="7098166902387133879">Google Chrome đang sử dụng micrô của bạn.</translation>
 <translation id="7106741999175697885">Trình quản lý Tác vụ - Google Chrome</translation>
-<translation id="7164397146364144019">Bạn có thể giúp Chrome an toàn và dễ sử dụng hơn bằng cách tự động báo cáo với Google chi tiết về sự cố bảo mật có thể xảy ra.</translation>
 <translation id="7242029209006116544">Bạn đang đăng nhập bằng tài khoản được quản lý và cấp cho quản trị viên của tài khoản quyền kiểm soát cấu hình trên Google Chrome của bạn. Dữ liệu Chrome của bạn, chẳng hạn như ứng dụng, dấu trang, lịch sử, mật khẩu và các cài đặt khác sẽ vĩnh viễn được liên kết với <ph name="USER_NAME" />. Bạn có thể xóa dữ liệu này thông qua Trang tổng quan của tài khoản Google nhưng không thể liên kết dữ liệu này với tài khoản khác. Bạn có thể tùy chọn tạo một cấu hình mới để giữ cho dữ liệu Chrome hiện có của bạn riêng biệt. <ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">Ngôn ngữ này dùng để hiển thị giao diện người dùng của Google Chrome</translation>
 <translation id="7296210096911315575">Thông tin quan trọng về sử dụng và an toàn</translation>
@@ -214,7 +195,6 @@
 <translation id="7398801000654795464">Bạn đã đăng nhập vào Chrome là <ph name="USER_EMAIL_ADDRESS" />. Vui lòng sử dụng cùng tài khoản để đăng nhập lại.</translation>
 <translation id="7408085963519505752">Điều khoản của Chrome OS</translation>
 <translation id="7419046106786626209">Chrome OS không thể đồng bộ hóa dữ liệu của bạn vì Đồng bộ hóa không khả dụng với miền của bạn.</translation>
-<translation id="7459554271817304652">Thiết lập đồng bộ hóa để lưu các tính năng trình duyệt được cá nhân hóa của bạn vào web và truy cập chúng từ Google Chrome trên bất kỳ máy tính nào.</translation>
 <translation id="7486227612705979895">Chrome sẽ truy cập vào Drive của bạn để đưa ra đề xuất trên thanh địa chỉ</translation>
 <translation id="7531671357096394523">Đóng tất cả các bản sao của Chrome.</translation>
 <translation id="7535429826459677826">Google Chrome Dev</translation>
@@ -238,25 +218,18 @@
 <translation id="7962410387636238736">Máy tính này sẽ không còn nhận được bản cập nhật Google Chrome do Windows XP và Windows Vista không còn được hỗ trợ</translation>
 <translation id="8008534537613507642">Cài đặt lại Chrome</translation>
 <translation id="8013993649590906847">Chrome sẽ cố gắng mô tả cho bạn những hình ảnh không có nội dung mô tả hữu ích. Để tạo nội dung mô tả, các hình ảnh sẽ được gửi đến Google.</translation>
-<translation id="8032142183999901390">Sau khi xóa tài khoản khỏi Chrome, bạn có thể cần phải tải lại các tab đang mở của mình để tác vụ có hiệu lực.</translation>
 <translation id="8129812357326543296">Giới thiệu về &amp;Google Chrome</translation>
-<translation id="8179874765710681175">Cài đặt Chrome trên điện thoại của bạn. Chúng tôi sẽ gửi SMS tới điện thoại của bạn.</translation>
-<translation id="825412236959742607">Trang này sử dụng quá nhiều bộ nhớ, nên Chrome đã xóa bớt nội dung.</translation>
 <translation id="8255190535488645436">Google Chrome đang sử dụng máy ảnh và micrô của bạn.</translation>
 <translation id="8286862437124483331">Google Chrome đang cố gắng hiển thị mật khẩu. Hãy nhập mật khẩu Windows của bạn để cho phép việc này.</translation>
 <translation id="8290100596633877290">Chà! Google Chrome đã bị lỗi. Mở lại bây giờ không? </translation>
 <translation id="8342675569599923794">Tệp này nguy hiểm, do đó Chrome đã chặn tệp.</translation>
 <translation id="8370517070665726704">Bản quyền <ph name="YEAR" /> Google LLC. Mọi quyền được bảo lưu.</translation>
 <translation id="840084489713044809">Google Chrome muốn xuất các mật khẩu của bạn.</translation>
-<translation id="8406086379114794905">Giúp cải thiện Chrome tốt hơn</translation>
 <translation id="8455999171311319804">Tùy chọn: Giúp cải thiện Chrome OS bằng cách tự động gửi dữ liệu chẩn đoán và dữ liệu sử dụng cho Google.</translation>
-<translation id="8478823064122749032">Cài đặt Chrome trên điện thoại của bạn. Chúng tôi sẽ gửi SMS tới số điện thoại khôi phục tài khoản của bạn: <ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome vừa áp dụng một bản cập nhật bảo mật đặc biệt. Vui lòng khởi động lại ngay bây giờ và chúng tôi sẽ khôi phục các tab của bạn.</translation>
 <translation id="8521348052903287641">Quy tắc kết nối để Google Chrome Dev cho phép lưu lượng truy cập mDNS.</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Canary trình chạy ứng dụng Chrome</translation>
 <translation id="8556340503434111824">Hiện đã có phiên bản mới của Google Chrome và phiên bản này nhanh hơn bao giờ hết.</translation>
-<translation id="8568392309447938879">Bạn cần đăng nhập vào Chrome để sử dụng ứng dụng. Điều này cho phép Chrome đồng bộ hóa ứng dụng, dấu trang, lịch sử, mật khẩu và cài đặt khác của bạn trên các thiết bị.</translation>
 <translation id="8606668294522778825">Google Chrome có thể sử dụng dịch vụ web để cải thiện trải nghiệm duyệt web của bạn. Bạn có thể tùy ý vô hiệu hóa các dịch vụ này. <ph name="BEGIN_LINK" />Tìm hiểu thêm<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome không hồi đáp. Chạy lại ngay bây giờ?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome sẽ khởi động lại sau 1 phút}other{Chrome sẽ khởi động lại sau # phút}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_zh-CN.xtb b/chrome/app/resources/google_chrome_strings_zh-CN.xtb
index a3c5b97..6da951c6 100644
--- a/chrome/app/resources/google_chrome_strings_zh-CN.xtb
+++ b/chrome/app/resources/google_chrome_strings_zh-CN.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome操作系统无法同步您的数据。请更新您的同步密码。</translation>
 <translation id="1302523850133262269">Chrome正在安装最新的系统更新,请稍候。</translation>
 <translation id="137466361146087520">Google Chrome 测试版</translation>
-<translation id="1393853151966637042">获取 Chrome 浏览器使用帮助</translation>
 <translation id="1399397803214730675">该计算机已安装了更高版本的 Google Chrome 浏览器。如果该软件无法正常运行,请卸载 Google Chrome 浏览器,然后重试。</translation>
 <translation id="1434626383986940139">Chrome Canary 应用</translation>
-<translation id="1469002951682717133">Chrome 应用启动器</translation>
 <translation id="1553358976309200471">更新 Chrome</translation>
 <translation id="1587223624401073077">Google Chrome 正在使用您的摄像头。</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> 存在危险,因此 Chrome 已将其拦截。</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome 会将此密码保存在您的 Google 帐号中,因此您不必记住它。</translation>
 <translation id="174539241580958092">由于在登录时出现错误,Google Chrome无法同步您的数据。</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">获取 Chrome 操作系统使用帮助</translation>
-<translation id="1795405610103747296">请在您的手机上安装 Chrome。我们会将一条短信发送到您的手机:<ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">关闭此功能后,您无需登录 Chrome 即可登录 Gmail 等 Google 网站</translation>
 <translation id="1860536484129686729">Chrome 需要获得相应权限,才能允许此网站使用您的摄像头</translation>
 <translation id="1873233029667955273">Google Chrome 不是您的默认浏览器</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">如需详细了解 Chrome 操作系统,请参阅<ph name="LINK_BEGIN" />
 Chrome 操作系统简介<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">请立即重启 Chrome</translation>
-<translation id="216054706567564023">请在您的手机上安装 Chrome。我们会将一条短信发送到您帐号的辅助电话号码。</translation>
 <translation id="2246246234298806438">在缺少内置 PDF 查看器的情况下,Google Chrome 浏览器无法显示打印预览。</translation>
-<translation id="2252923619938421629">报告当前设置,帮助我们改进 Google Chrome</translation>
-<translation id="2286950485307333924">现在您已登录到Chrome</translation>
 <translation id="2290014774651636340">缺少 Google API 密钥,因此 Google Chrome 的部分功能将无法使用。</translation>
 <translation id="2290095356545025170">确定要卸载 Google Chrome 浏览器吗?</translation>
 <translation id="2309047409763057870">这是 Google Chrome 的并行安装,您无法将此浏览器设为默认浏览器。</translation>
-<translation id="2346876346033403680">之前有人在此计算机上以 <ph name="ACCOUNT_EMAIL_LAST" /> 帐号登录 Chrome。如果这不是您的帐号,请新建一个 Chrome 用户来单独保存您的信息。
-
-如果您仍然登录,Chrome 信息(例如书签、历史记录和其他设置)将合并到 <ph name="ACCOUNT_EMAIL_NEW" />。</translation>
 <translation id="2348335408836342058">Chrome 需要获得相应权限,才能允许此网站使用您的摄像头和麦克风</translation>
 <translation id="2429317896000329049">由于您的网域停用了同步功能,Google Chrome无法同步您的数据。</translation>
 <translation id="2467438592969358367">Google Chrome 想导出您的密码。请输入您的 Windows 密码以允许此操作。</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">您已登录 Chrome!</translation>
 <translation id="2888126860611144412">关于 Chrome</translation>
 <translation id="3037838751736561277">Google Chrome处于后台运行模式。</translation>
-<translation id="3047079729301751317">取消与<ph name="USERNAME" />的关联将会清除您的历史记录、书签、设置以及存储在此设备上的其他Chrome数据。您的Google帐号中存储的数据将不会被清除,并且您可以通过<ph name="GOOGLE_DASHBOARD_LINK" />Google信息中心<ph name="END_GOOGLE_DASHBOARD_LINK" />管理这些数据。</translation>
 <translation id="3065168410429928842">Chrome 标签页</translation>
 <translation id="3080151273017101988">关闭 Google Chrome 后继续运行后台应用</translation>
 <translation id="3089968997497233615">Google Chrome 浏览器现已推出更安全的新版本。</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">在您的所有设备上同步并个性化设置 Chrome</translation>
 <translation id="3622797965165704966">现在,无论是通过Google帐号还是在共用的计算机上,您都可以更轻松地使用Chrome。</translation>
 <translation id="3637702109597584617">Google Chrome 操作系统<ph name="TERMS_OF_SERVICE_LINK" />服务条款<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">此网页占用的内存过多,因此 Chrome 已将其暂停。</translation>
 <translation id="3718181793972440140">这会从这台设备上删除 1 项内容。如果日后想要检索您的数据,届时请以 <ph name="USER_EMAIL" /> 的身份登录 Chrome。</translation>
 <translation id="3735758079232443276">“<ph name="EXTENSION_NAME" />”扩展程序更改了 Chrome 启动后系统显示的页面。</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{请于 1 天内重新启动 Chrome}other{请于 # 天内重新启动 Chrome}}</translation>
 <translation id="424864128008805179">退出 Chrome?</translation>
 <translation id="4251615635259297716">是否将您的 Chrome 数据与此帐号相关联?</translation>
-<translation id="4251625577313994583">在 iPhone 上下载 Chrome</translation>
 <translation id="4293420128516039005">登录即可在您的所有设备上同步并个性化设置 Chrome</translation>
 <translation id="4328355335528187361">Google Chrome 开发者版 (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome 操作系统</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">这项服务会使用 Google 搜索所用的拼写检查工具。您在浏览器中输入的文字会被发送给 Google。您随时可在“设置”中更改此行为。</translation>
 <translation id="4891791193823137474">让 Google Chrome 浏览器在后台运行</translation>
 <translation id="4895437082222824641">在 Chrome 新标签页中打开链接(&amp;T)</translation>
-<translation id="4921569541910214635">与其他人共用计算机?现在,您可以随心所欲地设置Chrome。</translation>
 <translation id="4953650215774548573">将Google Chrome设为默认浏览器</translation>
 <translation id="495931528404527476">在 Chrome 中</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -172,8 +158,6 @@
 <translation id="5895138241574237353">重新启动</translation>
 <translation id="5940385492829620908">您的上网记录、书签和其他Chrome资料和数据都保存在此处。</translation>
 <translation id="5941830788786076944">将 Google Chrome 浏览器设为默认浏览器</translation>
-<translation id="6014844626092547096">您现在已登录 Chrome!不过,管理员已停用同步功能。</translation>
-<translation id="6040143037577758943">关闭</translation>
 <translation id="6070348360322141662">为了提高安全性,Google Chrome 将对您的数据进行加密</translation>
 <translation id="6113794647360055231">Chrome现在更好用了</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -186,8 +170,6 @@
 <translation id="6368958679917195344">Chrome 操作系统的问世还有其他<ph name="BEGIN_LINK_CROS_OSS" />开放源代码软件<ph name="END_LINK_CROS_OSS" />的一份功劳。</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome 开发者版</translation>
 <translation id="6566149418543181476">正在更新 Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">您在使用<ph name="PROFILE_EMAIL" />同步自己的Chrome资料和数据。要更新您的同步偏好设置或在不登录Google帐号的情况下使用Chrome,请前往<ph name="SETTINGS_LINK" />部分。</translation>
-<translation id="6600954340915313787">已复制到 Chrome</translation>
 <translation id="6676384891291319759">访问互联网</translation>
 <translation id="6679975945624592337">让 Google Chrome 在后台运行</translation>
 <translation id="6750954913813541382">为了修正拼写错误,Chrome 会将您在浏览器中输入的文字发送给 Google</translation>
@@ -201,7 +183,6 @@
 <translation id="6989339256997917931">Google Chrome 浏览器已更新,但您已经至少 30 天未使用它了。</translation>
 <translation id="7098166902387133879">Google Chrome 正在使用您的麦克风。</translation>
 <translation id="7106741999175697885">任务管理器 - Google Chrome</translation>
-<translation id="7164397146364144019">您可以选择自动向 Google 报告可能出现的安全事件详情,以帮助我们提高 Chrome 的安全性和易用性。</translation>
 <translation id="7242029209006116544">您目前登录的帐号是一个托管帐号,该帐号的管理员将能够控制您的 Google Chrome 个人资料。您的 Chrome 数据(例如您的应用、书签、历史记录、密码和其他设置)将永远与 <ph name="USER_NAME" /> 相关联。您可以通过 Google 帐号信息中心删除这些数据,但无法将这些数据与其他帐号相关联。您可以选择创建新的个人资料来单独存储现有的 Chrome 数据。<ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">使用此语言显示 Google Chrome 界面</translation>
 <translation id="7296210096911315575">重要用途和安全信息</translation>
@@ -210,7 +191,6 @@
 <translation id="7398801000654795464">您之前登录 Chrome 时使用的帐号为 <ph name="USER_EMAIL_ADDRESS" />,请使用同一帐号再次登录。</translation>
 <translation id="7408085963519505752">Chrome操作系统条款</translation>
 <translation id="7419046106786626209">由于您的网域停用了同步功能,Chrome操作系统无法同步您的数据。</translation>
-<translation id="7459554271817304652">您可以设置同步以将个性化浏览器功能保存到网上,以便在任意计算机上的 Google Chrome 浏览器中使用这些功能。</translation>
 <translation id="7486227612705979895">Chrome 将访问您的云端硬盘,以在地址栏提供建议</translation>
 <translation id="7531671357096394523">退出 Chrome 的所有副本。</translation>
 <translation id="7535429826459677826">Google Chrome 开发者版</translation>
@@ -234,25 +214,18 @@
 <translation id="7962410387636238736">此计算机将不会再收到 Google Chrome 更新,因为 Windows XP 和 Windows Vista 已不再受支持</translation>
 <translation id="8008534537613507642">重新安装Chrome</translation>
 <translation id="8013993649590906847">如果图片缺少有用的说明,则 Chrome 会尝试为您提供一条说明。为便于创建说明,系统会将图片发送给 Google。</translation>
-<translation id="8032142183999901390">从Chrome移除您的帐号后,您可能需要重新加载已打开的标签页才能使其正常显示。</translation>
 <translation id="8129812357326543296">关于 Google Chrome(&amp;G)</translation>
-<translation id="8179874765710681175">请在您的手机上安装 Chrome。我们会向您的手机发送一条短信。</translation>
-<translation id="825412236959742607">此网页占用的内存过多,因此 Chrome 移除了部分内容。</translation>
 <translation id="8255190535488645436">Google Chrome 正在使用您的摄像头和麦克风。</translation>
 <translation id="8286862437124483331">Google Chrome正在尝试显示密码,请输入您的Windows密码以允许此操作。</translation>
 <translation id="8290100596633877290">哎呀!Google Chrome 浏览器崩溃了。是否立即重新启动?</translation>
 <translation id="8342675569599923794">此文件存在危险,因此 Chrome 已将其拦截。</translation>
 <translation id="8370517070665726704">版权所有 <ph name="YEAR" /> Google LLC. 保留所有权利。</translation>
 <translation id="840084489713044809">Google Chrome 想导出您的密码。</translation>
-<translation id="8406086379114794905">帮助我们改进Chrome</translation>
 <translation id="8455999171311319804">可选:将诊断数据和使用情况数据自动发送给 Google,协助我们改进 Chrome 操作系统。</translation>
-<translation id="8478823064122749032">请在您的手机上安装 Chrome。我们会将一条短信发送到您帐号的辅助电话号码:<ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome 刚刚应用了一项特殊的安全更新。请立即重启,以便系统恢复您的标签页。</translation>
 <translation id="8521348052903287641">Google Chrome 开发者版的入站规则,允许 mDNS 流量。</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome 应用启动器 Canary</translation>
 <translation id="8556340503434111824">Google Chrome 浏览器现已推出速度更快的新版本。</translation>
-<translation id="8568392309447938879">您需要先登录Chrome,再使用各项应用。这样,Chrome就可以在各个设备上同步您的应用、书签、历史记录、密码和其他设置。</translation>
 <translation id="8606668294522778825">Google Chrome 可能会使用网络服务来改善您的浏览体验。不过,您可以选择停用这些服务。<ph name="BEGIN_LINK" />了解详情<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome 未响应。是否立即重新启动?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome 将在 1 分钟后重新启动}other{Chrome 将在 # 分钟后重新启动}}</translation>
diff --git a/chrome/app/resources/google_chrome_strings_zh-TW.xtb b/chrome/app/resources/google_chrome_strings_zh-TW.xtb
index c6391a82..fa3331a 100644
--- a/chrome/app/resources/google_chrome_strings_zh-TW.xtb
+++ b/chrome/app/resources/google_chrome_strings_zh-TW.xtb
@@ -15,10 +15,8 @@
 <translation id="123620459398936149">Chrome OS 無法同步處理你的資料,請更新你的同步通關密語。</translation>
 <translation id="1302523850133262269">請稍候,Chrome 正在安裝最新的系統更新。</translation>
 <translation id="137466361146087520">Google Chrome 測試版</translation>
-<translation id="1393853151966637042">前往 Chrome 說明頁面</translation>
 <translation id="1399397803214730675">這台電腦已安裝較新的 Google Chrome 版本,如果軟體無法順利運作,請解除安裝 Google Chrome,然後再試一次。</translation>
 <translation id="1434626383986940139">Chrome Canary 應用程式</translation>
-<translation id="1469002951682717133">Chrome 應用程式啟動器</translation>
 <translation id="1553358976309200471">更新 Chrome</translation>
 <translation id="1587223624401073077">Google Chrome 正在使用你的攝影機。</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> 並不安全,因此遭到 Chrome 封鎖。</translation>
@@ -34,8 +32,6 @@
 <translation id="1734234790201236882">Chrome 會將這組密碼儲存至你的 Google 帳戶,你不須記住密碼。</translation>
 <translation id="174539241580958092">登入時發生錯誤,因此 Google Chrome 無法同步處理你的資料。</translation>
 <translation id="1759842336958782510">Chrome</translation>
-<translation id="1773601347087397504">前往 Chrome 作業系統說明頁面</translation>
-<translation id="1795405610103747296">在手機上安裝 Chrome。我們會傳送簡訊到你的手機:<ph name="PHONE_NUMBER" /></translation>
 <translation id="1812689907177901597">關閉這項功能後,你可以單獨登入 Gmail 等這類 Google 網站,不必同時登入 Chrome</translation>
 <translation id="1860536484129686729">Chrome 需要相關權限,才能讓這個網站使用你的攝影機</translation>
 <translation id="1873233029667955273">Google Chrome 並非你的預設瀏覽器</translation>
@@ -52,16 +48,10 @@
 <translation id="2128103434102193461">如需 Chrome 作業系統的詳細資料,請參閱<ph name="LINK_BEGIN" />
       關於 Chrome 作業系統<ph name="LINK_END" /></translation>
 <translation id="2151406531797534936">請立即重新啟動 Chrome</translation>
-<translation id="216054706567564023">在手機上安裝 Chrome。我們會傳送簡訊到你的帳戶備援電話號碼。</translation>
 <translation id="2246246234298806438">缺乏內建的 PDF 檢視器時,Google Chrome 無法顯示列印預覽。</translation>
-<translation id="2252923619938421629">只要回報目前的設定,就能助我們一臂之力,讓 Google Chrome 更臻完美</translation>
-<translation id="2286950485307333924">你現在已登入 Chrome</translation>
 <translation id="2290014774651636340">缺少 Google API 金鑰,系統將停用 Google Chrome 的部分功能。</translation>
 <translation id="2290095356545025170">你是否確定要解除安裝 Google Chrome?</translation>
 <translation id="2309047409763057870">這是以並存形式安裝的次要 Google Chrome,無法設為您的預設瀏覽器。</translation>
-<translation id="2346876346033403680">先前已有其他使用者使用 <ph name="ACCOUNT_EMAIL_LAST" /> 在這台電腦上登入 Chrome。如果這不是你的帳戶,請建立新的 Chrome 使用者以便個別保存你的資訊。
-
-如果你仍要繼續登入帳戶,各項 Chrome 資訊 (例如書籤、記錄和其他設定) 則會合併至 <ph name="ACCOUNT_EMAIL_NEW" />。</translation>
 <translation id="2348335408836342058">Chrome 需要相關權限,才能讓這個網站使用你的攝影機和麥克風</translation>
 <translation id="2429317896000329049">你的網域無法使用「同步功能」,因此 Google Chrome 無法同步處理你的資料。</translation>
 <translation id="2467438592969358367">Google Chrome 要求匯出你的密碼。如果允許,請輸入你的 Windows 密碼。</translation>
@@ -83,7 +73,6 @@
 <translation id="2871893339301912279">你已登入 Chrome!</translation>
 <translation id="2888126860611144412">關於 Chrome</translation>
 <translation id="3037838751736561277">Google Chrome 正在背景模式中執行。</translation>
-<translation id="3047079729301751317">解除與 <ph name="USERNAME" /> 的連結將會清除此裝置上已儲存的歷史記錄、書籤、設定和其他 Chrome 資料。不過,這不會清除 Google 帳戶中儲存的資料,你可以在 <ph name="GOOGLE_DASHBOARD_LINK" />Google 資訊主頁<ph name="END_GOOGLE_DASHBOARD_LINK" />管理這些資料。</translation>
 <translation id="3065168410429928842">Chrome 分頁</translation>
 <translation id="3080151273017101988">Google Chrome 關閉時繼續執行背景應用程式</translation>
 <translation id="3089968997497233615">Google Chrome 推出全新版本,安全性更勝以往。</translation>
@@ -104,7 +93,6 @@
 <translation id="3582972582564653026">進行同步處理即可在你的所有裝置上享有個人化的 Chrome 體驗</translation>
 <translation id="3622797965165704966">無論是登入 Google 帳戶使用 Chrome,還是以 Google 帳戶使用共用電腦,現在都變得更容易了。</translation>
 <translation id="3637702109597584617">Google Chrome 作業系統<ph name="TERMS_OF_SERVICE_LINK" />服務條款<ph name="END_TERMS_OF_SERVICE_LINK" /></translation>
-<translation id="3716182511346448902">這個網頁使用了過多記憶體,因此遭到 Chrome 暫停。</translation>
 <translation id="3718181793972440140">登出後,系統會將 1 個項目從這個裝置上刪除。日後如要重新取得你的資料,請以 <ph name="USER_EMAIL" /> 身分登入 Chrome。</translation>
 <translation id="3735758079232443276">擴充功能「<ph name="EXTENSION_NAME" />」已變更 Chrome 啟動時所顯示的網頁。</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
@@ -120,7 +108,6 @@
 <translation id="4191857738314598978">{0,plural, =1{請在 1 天內重新啟動 Chrome}other{請在 # 天內重新啟動 Chrome}}</translation>
 <translation id="424864128008805179">要登出 Chrome 嗎?</translation>
 <translation id="4251615635259297716">要將你的 Chrome 資料連結至這個帳戶嗎?</translation>
-<translation id="4251625577313994583">在 iPhone 上使用 Chrome</translation>
 <translation id="4293420128516039005">登入即可進行同步處理,讓你在所有裝置上享有個人化的 Chrome 體驗</translation>
 <translation id="4328355335528187361">Google Chrome 開發人員版 (mDNS-In)</translation>
 <translation id="4331809312908958774">Chrome 作業系統</translation>
@@ -142,7 +129,6 @@
 <translation id="479167709087336770">這會使用與 Google 搜尋相同的拼字檢查工具。系統會將你在瀏覽器中輸入的文字傳送給 Google。你隨時可以在設定中變更這項行為。</translation>
 <translation id="4891791193823137474">讓 Google Chrome 在背景執行</translation>
 <translation id="4895437082222824641">在新的 Chrome 分頁中開啟連結(&amp;T)</translation>
-<translation id="4921569541910214635">如果你與他人共用電腦,現在可以依自己的喜好和習慣設定 Chrome。</translation>
 <translation id="4953650215774548573">將 Google Chrome 設為預設瀏覽器</translation>
 <translation id="495931528404527476">在 Chrome 中</translation>
 <translation id="4990567037958725628">Google Chrome Canary</translation>
@@ -174,8 +160,6 @@
 <translation id="5895138241574237353">重新啟動</translation>
 <translation id="5940385492829620908">你瀏覽的網頁、書籤和其他 Chrome 設定都在這裡。</translation>
 <translation id="5941830788786076944">使用 Google Chrome 做為我的預設瀏覽器</translation>
-<translation id="6014844626092547096">你現在已登入 Chrome!但管理員已關閉同步功能。</translation>
-<translation id="6040143037577758943">關閉</translation>
 <translation id="6070348360322141662">為了提升安全性,Google Chrome 會將你的資料加密保護</translation>
 <translation id="6113794647360055231">Chrome 變得更好用了</translation>
 <translation id="6169866489629082767"><ph name="PAGE_TITLE" /> - Google Chrome</translation>
@@ -188,8 +172,6 @@
 <translation id="6368958679917195344">Chrome 作業系統藉助了其他<ph name="BEGIN_LINK_CROS_OSS" />開放原始碼軟體<ph name="END_LINK_CROS_OSS" />的相關技術才得以問世。</translation>
 <translation id="6515495397637126556"><ph name="PAGE_TITLE" /> - Google Chrome 開發人員版</translation>
 <translation id="6566149418543181476">正在更新 Google Chrome (<ph name="PROGRESS_PERCENT" />)</translation>
-<translation id="6598387184982954187">你正使用 <ph name="PROFILE_EMAIL" /> 帳戶同步處理你的 Chrome 資料。如要更新你的偏好設定,或是在未登入 Google 帳戶的情況下使用 Chrome,請前往 [<ph name="SETTINGS_LINK" />]。</translation>
-<translation id="6600954340915313787">已複製到 Chrome</translation>
 <translation id="6676384891291319759">連線到網際網路</translation>
 <translation id="6679975945624592337">讓 Google Chrome 在背景執行</translation>
 <translation id="6750954913813541382">Chrome 會將你在瀏覽器中輸入的文字傳送至 Google,以修正拼字錯誤</translation>
@@ -203,7 +185,6 @@
 <translation id="6989339256997917931">Google Chrome 已更新,但你至少已有 30 天未使用該瀏覽器。</translation>
 <translation id="7098166902387133879">Google Chrome 正在使用你的麥克風。</translation>
 <translation id="7106741999175697885">工作管理員 - Google Chrome</translation>
-<translation id="7164397146364144019">你可以自動將疑似安全性事件的詳細資料傳送給 Google,協助我們讓 Chrome 變得更安全、更好用。</translation>
 <translation id="7242029209006116544">你已登入管理化環境下的帳戶,並將管理控制權授予你的 Chrome 設定檔。你的 Chrome 資料 (例如應用程式、書籤、記錄、密碼和其他設定) 均將永久與 <ph name="USER_NAME" /> 建立關聯。你可以透過 Google 帳戶資訊主頁刪除這些資料,但你無法將這些資料與其他帳戶建立關聯。如要另行保留現有的 Chromium 資料,你可以選擇建立新的設定檔。<ph name="LEARN_MORE" /></translation>
 <translation id="7295052994004373688">這是 Google Chrome UI 的顯示語言</translation>
 <translation id="7296210096911315575">重要的使用與安全資訊</translation>
@@ -212,7 +193,6 @@
 <translation id="7398801000654795464">你使用了 <ph name="USER_EMAIL_ADDRESS" /> 的身分登入 Chrome,請使用相同帳戶重新登入。</translation>
 <translation id="7408085963519505752">Chrome 作業系統條款</translation>
 <translation id="7419046106786626209">你的網域無法使用「同步功能」,因此 Chrome 作業系統無法同步處理你的資料。</translation>
-<translation id="7459554271817304652">設定同步處理功能,即可在網路上儲存你的個人化瀏覽器功能,並且透過任何電腦從 Google Chrome 使用這些功能。</translation>
 <translation id="7486227612705979895">Chrome 將存取你的雲端硬碟,並在網址列提供建議</translation>
 <translation id="7531671357096394523">請關閉所有 Chrome 瀏覽器。</translation>
 <translation id="7535429826459677826">Google Chrome 開發人員版</translation>
@@ -236,25 +216,18 @@
 <translation id="7962410387636238736">Google Chrome 已停止支援 Windows XP 和 Windows Vista,因此這部電腦不會再收到 Google Chrome 更新</translation>
 <translation id="8008534537613507642">重新安裝 Chrome</translation>
 <translation id="8013993649590906847">如果圖片缺少有用的說明,Chrome 會嘗試為你提供說明。系統會將圖片傳送給 Google,以便產生說明。</translation>
-<translation id="8032142183999901390">將你的帳戶從 Chrome 移除後,可能需要重新載入開啟的分頁,操作才會生效。</translation>
 <translation id="8129812357326543296">關於 Google Chrome(&amp;G)</translation>
-<translation id="8179874765710681175">在手機上安裝 Chrome。我們會傳送簡訊到你的手機。</translation>
-<translation id="825412236959742607">這個網頁使用了過多記憶體,因此 Chrome 移除了部分內容。</translation>
 <translation id="8255190535488645436">Google Chrome 正在使用你的攝影機和麥克風。</translation>
 <translation id="8286862437124483331">Google Chrome 現在會嘗試顯示密碼。如果你同意的話,請輸入你的 Windows 密碼。</translation>
 <translation id="8290100596633877290">真糟糕!Google Chrome 當掉了,要立即重新啟動嗎?</translation>
 <translation id="8342675569599923794">這個檔案並不安全,因此遭到 Chrome 封鎖。</translation>
 <translation id="8370517070665726704">Copyright <ph name="YEAR" /> Google LLC. 保留所有權利。</translation>
 <translation id="840084489713044809">Google Chrome 要求匯出你的密碼。</translation>
-<translation id="8406086379114794905">協助改善 Chrome 的服務品質</translation>
 <translation id="8455999171311319804">選擇性:自動將診斷資料和使用情況資料傳送給 Google,協助我們讓 Chrome 作業系統更臻完善。</translation>
-<translation id="8478823064122749032">在手機上安裝 Chrome。我們會傳送簡訊到你的帳戶備援電話號碼:<ph name="PHONE_NUMBER" /></translation>
 <translation id="8498858610309223613">Google Chrome 剛才套用了特殊的安全性更新。請立即重新啟動,系統會恢復你原先開啟的分頁。</translation>
 <translation id="8521348052903287641">允許 mDNS 流量的 Google Chrome 開發人員版輸入規則。</translation>
 <translation id="8540666473246803645">Google Chrome</translation>
-<translation id="8547799825197623713">Chrome 應用程式啟動器 Canary 頻道</translation>
 <translation id="8556340503434111824">Google Chrome 推出全新版本,速度更勝以往。</translation>
-<translation id="8568392309447938879">你必須登入 Chrome 才能使用應用程式。在登入狀態下,Chrome 可同步處理你在多個裝置上的應用程式、書籤、記錄、密碼和其他設定。</translation>
 <translation id="8606668294522778825">Google Chrome 可能會使用網路服務改善您的瀏覽體驗。不過,您可以選擇停用這些服務。<ph name="BEGIN_LINK" />瞭解詳情<ph name="END_LINK" /></translation>
 <translation id="8614913330719544658">Google Chrome 沒有回應,要立即重新啟動嗎?</translation>
 <translation id="8625237574518804553">{0,plural, =1{Chrome 將在 1 分鐘後重新啟動}other{Chrome 將在 # 分鐘後重新啟動}}</translation>
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index 9282f6f..7415213 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -1088,28 +1088,6 @@
     "performance_manager/decorators/page_almost_idle_decorator.h",
     "performance_manager/decorators/process_metrics_decorator.cc",
     "performance_manager/decorators/process_metrics_decorator.h",
-    "performance_manager/frame_priority/frame_priority.cc",
-    "performance_manager/frame_priority/max_vote_aggregator.cc",
-    "performance_manager/frame_priority/override_vote_aggregator.cc",
-    "performance_manager/graph/frame_node.cc",
-    "performance_manager/graph/frame_node_impl.cc",
-    "performance_manager/graph/frame_node_impl.h",
-    "performance_manager/graph/graph.cc",
-    "performance_manager/graph/graph_impl.cc",
-    "performance_manager/graph/graph_impl.h",
-    "performance_manager/graph/graph_impl_operations.cc",
-    "performance_manager/graph/graph_impl_operations.h",
-    "performance_manager/graph/graph_operations.cc",
-    "performance_manager/graph/node.cc",
-    "performance_manager/graph/node_attached_data.cc",
-    "performance_manager/graph/node_attached_data.h",
-    "performance_manager/graph/node_attached_data_impl.h",
-    "performance_manager/graph/node_base.cc",
-    "performance_manager/graph/node_base.h",
-    "performance_manager/graph/node_type.h",
-    "performance_manager/graph/page_node.cc",
-    "performance_manager/graph/page_node_impl.cc",
-    "performance_manager/graph/page_node_impl.h",
     "performance_manager/graph/policies/policy_features.cc",
     "performance_manager/graph/policies/policy_features.h",
     "performance_manager/graph/policies/working_set_trimmer_policy.cc",
@@ -1118,16 +1096,6 @@
     "performance_manager/graph/policies/working_set_trimmer_policy_chromeos.h",
     "performance_manager/graph/policies/working_set_trimmer_policy_win.cc",
     "performance_manager/graph/policies/working_set_trimmer_policy_win.h",
-    "performance_manager/graph/process_node.cc",
-    "performance_manager/graph/process_node_impl.cc",
-    "performance_manager/graph/process_node_impl.h",
-    "performance_manager/graph/properties.h",
-    "performance_manager/graph/system_node.cc",
-    "performance_manager/graph/system_node_impl.cc",
-    "performance_manager/graph/system_node_impl.h",
-    "performance_manager/graph/worker_node.cc",
-    "performance_manager/graph/worker_node_impl.cc",
-    "performance_manager/graph/worker_node_impl.h",
     "performance_manager/mechanisms/working_set_trimmer.cc",
     "performance_manager/mechanisms/working_set_trimmer.h",
     "performance_manager/mechanisms/working_set_trimmer_chromeos.cc",
@@ -1139,13 +1107,6 @@
     "performance_manager/observers/isolation_context_metrics.h",
     "performance_manager/observers/metrics_collector.cc",
     "performance_manager/observers/metrics_collector.h",
-    "performance_manager/performance_manager.cc",
-    "performance_manager/performance_manager_impl.cc",
-    "performance_manager/performance_manager_impl.h",
-    "performance_manager/performance_manager_lock_observer.cc",
-    "performance_manager/performance_manager_lock_observer.h",
-    "performance_manager/performance_manager_tab_helper.cc",
-    "performance_manager/performance_manager_tab_helper.h",
     "performance_manager/persistence/site_data/exponential_moving_average.cc",
     "performance_manager/persistence/site_data/exponential_moving_average.h",
     "performance_manager/persistence/site_data/feature_usage.h",
@@ -1173,27 +1134,6 @@
     "performance_manager/persistence/site_data/site_data_writer.cc",
     "performance_manager/persistence/site_data/site_data_writer.h",
     "performance_manager/persistence/site_data/tab_visibility.h",
-    "performance_manager/public/frame_priority/frame_priority.h",
-    "performance_manager/public/frame_priority/max_vote_aggregator.h",
-    "performance_manager/public/frame_priority/override_vote_aggregator.h",
-    "performance_manager/public/graph/frame_node.h",
-    "performance_manager/public/graph/graph.h",
-    "performance_manager/public/graph/graph_operations.h",
-    "performance_manager/public/graph/node.h",
-    "performance_manager/public/graph/node_attached_data.h",
-    "performance_manager/public/graph/page_node.h",
-    "performance_manager/public/graph/process_node.h",
-    "performance_manager/public/graph/system_node.h",
-    "performance_manager/public/graph/worker_node.h",
-    "performance_manager/public/performance_manager.h",
-    "performance_manager/public/render_process_host_proxy.h",
-    "performance_manager/public/web_contents_proxy.h",
-    "performance_manager/render_process_host_proxy.cc",
-    "performance_manager/render_process_user_data.cc",
-    "performance_manager/render_process_user_data.h",
-    "performance_manager/web_contents_proxy.cc",
-    "performance_manager/web_contents_proxy_impl.cc",
-    "performance_manager/web_contents_proxy_impl.h",
     "performance_monitor/metric_evaluator_helper_win.cc",
     "performance_monitor/metric_evaluator_helper_win.h",
     "performance_monitor/process_metrics_history.cc",
@@ -2060,6 +2000,7 @@
     "//components/password_manager/core/browser",
     "//components/password_manager/core/common",
     "//components/payments/core",
+    "//components/performance_manager",
     "//components/policy:generated",
     "//components/policy/content/",
     "//components/policy/core/browser",
@@ -4099,8 +4040,8 @@
       "notifications/screen_lock_notification_blocker.cc",
       "notifications/screen_lock_notification_blocker.h",
       "platform_util.cc",
-      "policy/cloud/machine_level_user_cloud_policy_helper.cc",
-      "policy/cloud/machine_level_user_cloud_policy_helper.h",
+      "policy/cloud/chrome_browser_cloud_management_helper.cc",
+      "policy/cloud/chrome_browser_cloud_management_helper.h",
       "policy/cloud/user_policy_signin_service.cc",
       "policy/cloud/user_policy_signin_service.h",
       "policy/cloud/user_policy_signin_service_internal.h",
@@ -5229,11 +5170,7 @@
 }
 
 config("notouch_config") {
-  defines = [
-    "BROWSER_MEDIA_CONTROLS_MENU",
-    "ENABLE_SPATIAL_NAVIGATION_HOST",
-    "INCOGNITO_DEFAULT_DISABLED",
-  ]
+  defines = [ "ENABLE_SPATIAL_NAVIGATION_HOST" ]
 }
 
 if (is_android) {
@@ -5317,8 +5254,7 @@
   # The .grd contains references to generated files.
   source_is_generated = true
 
-  # Allow compress="brotli". Used in supervised_user_error_page_resources.grdp.
-  use_brotli = enable_supervised_users
+  use_brotli = true
 
   defines = chrome_grit_defines
   if (enable_hangout_services_extension) {
diff --git a/chrome/browser/DEPS b/chrome/browser/DEPS
index 9cbef0a..76e43b6a 100644
--- a/chrome/browser/DEPS
+++ b/chrome/browser/DEPS
@@ -169,6 +169,10 @@
   "+components/password_manager/core/common",
   "+components/payments/content",
   "+components/payments/core",
+  "+components/performance_manager/public",
+  "+components/performance_manager/test_support",
+  "+components/performance_manager/performance_manager_tab_helper.h",
+  "+components/performance_manager/performance_manager_impl.h",
   "+components/pdf/browser",
   "+components/policy",
   "+components/pref_registry",
@@ -375,8 +379,6 @@
   "+chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.h",
   "+chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.h",
   "+chrome/browser/performance_manager/graph/policies/policy_features.h",
-  "+chrome/browser/performance_manager/performance_manager_tab_helper.h",
-  "+chrome/browser/performance_manager/test_support",
 
   # Explicitly disallow using SyncMessageFilter to prevent browser from
   # sending synchronous IPC messages on non-UI threads.
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index 46c5fa3..312ed04 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -2888,6 +2888,10 @@
      flag_descriptions::kForceEffectiveConnectionTypeDescription, kOsAll,
      MULTI_VALUE_TYPE(kForceEffectiveConnectionTypeChoices)},
 
+    {"forced-colors", flag_descriptions::kForcedColorsName,
+     flag_descriptions::kForcedColorsDescription, kOsAll,
+     FEATURE_VALUE_TYPE(features::kForcedColors)},
+
     {"memlog", flag_descriptions::kMemlogName,
      flag_descriptions::kMemlogDescription, kOsAll,
      MULTI_VALUE_TYPE(kMemlogModeChoices)},
@@ -3157,12 +3161,6 @@
          download::features::kAllowDownloadResumptionWithoutStrongValidators)},
 
 #if defined(OS_ANDROID)
-    {"new-net-error-page-ui", flag_descriptions::kNewNetErrorPageUIName,
-     flag_descriptions::kNewNetErrorPageUIDescription, kOsAndroid,
-     FEATURE_VALUE_TYPE(features::kNewNetErrorPageUI)},
-#endif  // defined(OS_ANDROID)
-
-#if defined(OS_ANDROID)
     {"auto-fetch-on-net-error-page",
      flag_descriptions::kAutoFetchOnNetErrorPageName,
      flag_descriptions::kAutoFetchOnNetErrorPageDescription, kOsAndroid,
@@ -4642,6 +4640,13 @@
      FEATURE_VALUE_TYPE(chromeos::assistant::features::kAssistantAudioEraser)},
 #endif
 
+#if defined(OS_WIN)
+    {"enable-winrt-geolocation-implementation",
+     flag_descriptions::kWinrtGeolocationImplementationName,
+     flag_descriptions::kWinrtGeolocationImplementationDescription, kOsWin,
+     FEATURE_VALUE_TYPE(features::kWinrtGeolocationImplementation)},
+#endif
+
 #if defined(OS_CHROMEOS)
     {"exo-pointer-lock", flag_descriptions::kExoPointerLockName,
      flag_descriptions::kExoPointerLockDescription, kOsCrOS,
diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/android/chrome_feature_list.cc
index e0b1580..b6b80e8 100644
--- a/chrome/browser/android/chrome_feature_list.cc
+++ b/chrome/browser/android/chrome_feature_list.cc
@@ -272,8 +272,8 @@
 const base::Feature kAndroidSearchEngineChoiceNotification{
     "AndroidSearchEngineChoiceNotification", base::FEATURE_ENABLED_BY_DEFAULT};
 
-const base::Feature kAndroidSetupSearchEngine{
-    "AndroidSetupSearchEngine", base::FEATURE_DISABLED_BY_DEFAULT};
+const base::Feature kAndroidSetupSearchEngine{"AndroidSetupSearchEngine",
+                                              base::FEATURE_ENABLED_BY_DEFAULT};
 
 const base::Feature kAndroidSiteSettingsUIRefresh{
     "AndroidSiteSettingsUIRefresh", base::FEATURE_ENABLED_BY_DEFAULT};
diff --git a/chrome/browser/android/document/document_web_contents_delegate.cc b/chrome/browser/android/document/document_web_contents_delegate.cc
index 915de7aa..3b75d30 100644
--- a/chrome/browser/android/document/document_web_contents_delegate.cc
+++ b/chrome/browser/android/document/document_web_contents_delegate.cc
@@ -41,14 +41,21 @@
   NOTREACHED();
 }
 
-bool DocumentWebContentsDelegate::IsWebContentsCreationOverridden(
+bool DocumentWebContentsDelegate::ShouldCreateWebContents(
+    content::WebContents* web_contents,
+    content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
-    const GURL& target_url) {
+    const GURL& target_url,
+    const std::string& partition_id,
+    content::SessionStorageNamespace* session_storage_namespace) {
   NOTREACHED();
-  return true;
+  return false;
 }
 
 static jlong JNI_DocumentWebContentsDelegate_Initialize(
diff --git a/chrome/browser/android/document/document_web_contents_delegate.h b/chrome/browser/android/document/document_web_contents_delegate.h
index e9b3d4ab9..2c3e345 100644
--- a/chrome/browser/android/document/document_web_contents_delegate.h
+++ b/chrome/browser/android/document/document_web_contents_delegate.h
@@ -36,12 +36,19 @@
                       bool user_gesture,
                       bool* was_blocked) override;
   void CloseContents(content::WebContents* source) override;
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override;
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) override;
 };
 
 #endif  // CHROME_BROWSER_ANDROID_DOCUMENT_DOCUMENT_WEB_CONTENTS_DELEGATE_H_
diff --git a/chrome/browser/android/download/available_offline_content_provider.cc b/chrome/browser/android/download/available_offline_content_provider.cc
index de6d7859..9418f93 100644
--- a/chrome/browser/android/download/available_offline_content_provider.cc
+++ b/chrome/browser/android/download/available_offline_content_provider.cc
@@ -221,11 +221,6 @@
 AvailableOfflineContentProvider::~AvailableOfflineContentProvider() = default;
 
 void AvailableOfflineContentProvider::List(ListCallback callback) {
-  if (!offline_pages::IsOfflinePagesEnabled() ||
-      !base::FeatureList::IsEnabled(features::kNewNetErrorPageUI)) {
-    std::move(callback).Run(true, {});
-    return;
-  }
   offline_items_collection::OfflineContentAggregator* aggregator =
       OfflineContentAggregatorFactory::GetForKey(profile_->GetProfileKey());
   aggregator->GetAllItems(
diff --git a/chrome/browser/android/download/available_offline_content_provider_unittest.cc b/chrome/browser/android/download/available_offline_content_provider_unittest.cc
index 6b21e86..27993387 100644
--- a/chrome/browser/android/download/available_offline_content_provider_unittest.cc
+++ b/chrome/browser/android/download/available_offline_content_provider_unittest.cc
@@ -127,7 +127,6 @@
 class AvailableOfflineContentTest : public testing::Test {
  protected:
   void SetUp() override {
-    scoped_feature_list_->InitAndEnableFeature(features::kNewNetErrorPageUI);
     aggregator_ =
         OfflineContentAggregatorFactory::GetForKey(profile_.GetProfileKey());
     aggregator_->RegisterProvider(kProviderNamespace, &content_provider_);
@@ -181,12 +180,7 @@
   EXPECT_TRUE(list_visible_by_prefs);
 }
 
-#if defined(DISABLE_OFFLINE_PAGES_TOUCHLESS)
-#define MAYBE_FourInterestingItems DISABLED_FourInterestingItems
-#else
-#define MAYBE_FourInterestingItems FourInterestingItems
-#endif
-TEST_F(AvailableOfflineContentTest, MAYBE_FourInterestingItems) {
+TEST_F(AvailableOfflineContentTest, FourInterestingItems) {
   // We need at least 4 interesting items for anything to show up at all.
   content_provider_.SetItems({UninterestingImageItem(), VideoItem(),
                               SuggestedOfflinePageItem(), AudioItem(),
@@ -230,25 +224,7 @@
   EXPECT_EQ(page_item.attribution, first->attribution);
 }
 
-TEST_F(AvailableOfflineContentTest, NotEnabled) {
-  scoped_feature_list_ = std::make_unique<base::test::ScopedFeatureList>();
-  scoped_feature_list_->InitAndDisableFeature(features::kNewNetErrorPageUI);
-  content_provider_.SetItems({SuggestedOfflinePageItem()});
-
-  bool list_visible_by_prefs;
-  std::vector<chrome::mojom::AvailableOfflineContentPtr> suggestions;
-  std::tie(list_visible_by_prefs, suggestions) = ListAndWait();
-
-  EXPECT_TRUE(suggestions.empty());
-  EXPECT_TRUE(list_visible_by_prefs);
-}
-
-#if defined(DISABLE_OFFLINE_PAGES_TOUCHLESS)
-#define MAYBE_ListVisibilityChanges DISABLED_ListVisibilityChanges
-#else
-#define MAYBE_ListVisibilityChanges ListVisibilityChanges
-#endif
-TEST_F(AvailableOfflineContentTest, MAYBE_ListVisibilityChanges) {
+TEST_F(AvailableOfflineContentTest, ListVisibilityChanges) {
   // We need at least 4 interesting items for anything to show up at all.
   content_provider_.SetItems({UninterestingImageItem(), VideoItem(),
                               SuggestedOfflinePageItem(), AudioItem(),
diff --git a/chrome/browser/android/tab_web_contents_delegate_android.cc b/chrome/browser/android/tab_web_contents_delegate_android.cc
index d3a7eb8a..fd742d82 100644
--- a/chrome/browser/android/tab_web_contents_delegate_android.cc
+++ b/chrome/browser/android/tab_web_contents_delegate_android.cc
@@ -334,7 +334,6 @@
   nav_params.FillNavigateParamsFromOpenURLParams(params);
   nav_params.source_contents = source;
   nav_params.window_action = NavigateParams::SHOW_WINDOW;
-  nav_params.user_gesture = params.user_gesture;
   if (ConsiderForPopupBlocking(params.disposition) &&
       MaybeBlockPopup(source, nullptr, &nav_params, &params,
                       blink::mojom::WindowFeatures())) {
diff --git a/chrome/browser/android/vr/BUILD.gn b/chrome/browser/android/vr/BUILD.gn
index adf2fb7..497d92b 100644
--- a/chrome/browser/android/vr/BUILD.gn
+++ b/chrome/browser/android/vr/BUILD.gn
@@ -188,7 +188,7 @@
 # dependency on chrome/browser precludes the use of an intermediate target (eg.
 # vr_android_with_factory).
 group("module_factory") {
-  if (use_native_modules && modularize_vr_native) {
+  if (use_native_partitions) {
     deps = [
       ":ui_module_factory",
     ]
diff --git a/chrome/browser/background/background_contents.cc b/chrome/browser/background/background_contents.cc
index a4d5fcd8..76359b0 100644
--- a/chrome/browser/background/background_contents.cc
+++ b/chrome/browser/background/background_contents.cc
@@ -32,7 +32,9 @@
 BackgroundContents::BackgroundContents(
     scoped_refptr<SiteInstance> site_instance,
     content::RenderFrameHost* opener,
-    bool is_new_browsing_instance,
+    int32_t routing_id,
+    int32_t main_frame_routing_id,
+    int32_t main_frame_widget_routing_id,
     Delegate* delegate,
     const std::string& partition_id,
     content::SessionStorageNamespace* session_storage_namespace)
@@ -47,12 +49,11 @@
       opener ? opener->GetProcess()->GetID() : MSG_ROUTING_NONE;
   create_params.opener_render_frame_id =
       opener ? opener->GetRoutingID() : MSG_ROUTING_NONE;
+  create_params.routing_id = routing_id;
+  create_params.main_frame_routing_id = main_frame_routing_id;
+  create_params.main_frame_widget_routing_id = main_frame_widget_routing_id;
+  create_params.renderer_initiated_creation = routing_id != MSG_ROUTING_NONE;
   create_params.is_never_visible = true;
-
-  // This isn't semantically sensible, but it is what the old code implicitly
-  // did.
-  create_params.renderer_initiated_creation = !is_new_browsing_instance;
-
   if (session_storage_namespace) {
     content::SessionStorageNamespaceMap session_storage_namespace_map;
     session_storage_namespace_map.insert(
diff --git a/chrome/browser/background/background_contents.h b/chrome/browser/background/background_contents.h
index c661e6e..552f9a25 100644
--- a/chrome/browser/background/background_contents.h
+++ b/chrome/browser/background/background_contents.h
@@ -62,7 +62,9 @@
   BackgroundContents(
       scoped_refptr<content::SiteInstance> site_instance,
       content::RenderFrameHost* opener,
-      bool is_new_browsing_instance,
+      int32_t routing_id,
+      int32_t main_frame_routing_id,
+      int32_t main_frame_widget_routing_id,
       Delegate* delegate,
       const std::string& partition_id,
       content::SessionStorageNamespace* session_storage_namespace);
diff --git a/chrome/browser/background/background_contents_service.cc b/chrome/browser/background/background_contents_service.cc
index 0689f2f..eb11a0b 100644
--- a/chrome/browser/background/background_contents_service.cc
+++ b/chrome/browser/background/background_contents_service.cc
@@ -578,8 +578,9 @@
   DVLOG(1) << "Loading background content url: " << url;
 
   BackgroundContents* contents = CreateBackgroundContents(
-      SiteInstance::CreateForURL(profile_, url), nullptr, true, frame_name,
-      application_id, std::string(), nullptr);
+      SiteInstance::CreateForURL(profile_, url), nullptr, MSG_ROUTING_NONE,
+      MSG_ROUTING_NONE, MSG_ROUTING_NONE, frame_name, application_id,
+      std::string(), nullptr);
 
   contents->CreateRenderViewSoon(url);
 }
@@ -587,13 +588,16 @@
 BackgroundContents* BackgroundContentsService::CreateBackgroundContents(
     scoped_refptr<SiteInstance> site,
     content::RenderFrameHost* opener,
-    bool is_new_browsing_instance,
+    int32_t routing_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     const std::string& frame_name,
     const std::string& application_id,
     const std::string& partition_id,
     content::SessionStorageNamespace* session_storage_namespace) {
   auto contents = std::make_unique<BackgroundContents>(
-      std::move(site), opener, is_new_browsing_instance, this, partition_id,
+      std::move(site), opener, routing_id, main_frame_route_id,
+      main_frame_widget_route_id, this, partition_id,
       session_storage_namespace);
   BackgroundContents* contents_ptr = contents.get();
   AddBackgroundContents(std::move(contents), application_id, frame_name);
diff --git a/chrome/browser/background/background_contents_service.h b/chrome/browser/background/background_contents_service.h
index 5fcfe86..bde2fc61 100644
--- a/chrome/browser/background/background_contents_service.h
+++ b/chrome/browser/background/background_contents_service.h
@@ -117,13 +117,15 @@
   const std::string& GetParentApplicationId(BackgroundContents* contents) const;
 
   // Creates a new BackgroundContents using the passed |site| and
-  // begins tracking the object internally so it can be shutdown if the parent
-  // application is uninstalled.
+  // the |route_id| and begins tracking the object internally so it can be
+  // shutdown if the parent application is uninstalled.
   // Observers will receive a OnBackgroundContentsOpened call.
   BackgroundContents* CreateBackgroundContents(
       scoped_refptr<content::SiteInstance> site,
       content::RenderFrameHost* opener,
-      bool is_new_browsing_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       const std::string& frame_name,
       const std::string& application_id,
       const std::string& partition_id,
diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd
index 5f864a3b..81ad6d17 100644
--- a/chrome/browser/browser_resources.grd
+++ b/chrome/browser/browser_resources.grd
@@ -350,8 +350,8 @@
       <include name="IDR_USB_DEVICE_MANAGER_TEST_MOJOM_LITE_JS" file="${root_gen_dir}\services\device\public\mojom\usb_manager_test.mojom-lite.js" use_base_dir="false" flattenhtml="true" allowexternalscript="true" type="BINDATA" compress="gzip" />
       <include name="IDR_USB_DEVICE_MOJOM_LITE_JS" file="${root_gen_dir}\services\device\public\mojom\usb_device.mojom-lite.js" use_base_dir="false" flattenhtml="true" allowexternalscript="true" type="BINDATA" compress="gzip" />
       <include name="IDR_WEB_FOOTER_EXPERIMENT_HTML" file="resources\web_footer_experiment\index.html" type="BINDATA" />
-      <include name="IDR_WEBRTC_LOGS_HTML" file="resources\media\webrtc_logs.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" />
-      <include name="IDR_WEBRTC_LOGS_JS" file="resources\media\webrtc_logs.js" type="BINDATA" />
+      <include name="IDR_WEBRTC_LOGS_HTML" file="resources\media\webrtc_logs.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" compress="brotli" />
+      <include name="IDR_WEBRTC_LOGS_JS" file="resources\media\webrtc_logs.js" type="BINDATA" compress="brotli" />
       <include name="IDR_WEBSTORE_MANIFEST" file="resources\webstore_app\manifest.json" type="BINDATA" />
       <include name="IDR_CRYPTOTOKEN_MANIFEST" file="resources\cryptotoken\manifest.json" type="BINDATA" />
       <if expr="chromeos">
diff --git a/chrome/browser/browser_switcher/ieem_sitelist_parser.cc b/chrome/browser/browser_switcher/ieem_sitelist_parser.cc
index ec95bf515b..b1d055b4 100644
--- a/chrome/browser/browser_switcher/ieem_sitelist_parser.cc
+++ b/chrome/browser/browser_switcher/ieem_sitelist_parser.cc
@@ -16,8 +16,6 @@
 
 namespace {
 
-using namespace data_decoder;  // For |GetXmlElement...()| helper functions.
-
 const char kInvalidRootElement[] = "Invalid XML root element";
 
 const char kSchema1RulesElement[] = "rules";
@@ -37,7 +35,7 @@
 std::vector<const base::Value*> GetChildrenWithTag(const base::Value& node,
                                                    const std::string& tag) {
   std::vector<const base::Value*> children;
-  GetAllXmlElementChildrenWithTag(node, tag, &children);
+  data_decoder::GetAllXmlElementChildrenWithTag(node, tag, &children);
   return children;
 }
 
@@ -52,20 +50,20 @@
 };
 
 Entry ParseDomainOrPath(const base::Value& node, ParsedXml* result) {
-  DCHECK(IsXmlElementNamed(node, kSchema1DomainElement) ||
-         IsXmlElementNamed(node, kSchema1PathElement));
+  DCHECK(data_decoder::IsXmlElementNamed(node, kSchema1DomainElement) ||
+         data_decoder::IsXmlElementNamed(node, kSchema1PathElement));
 
   Entry entry;
 
   std::string exclude_attrib =
-      GetXmlElementAttribute(node, kSchema1ExcludeAttribute);
+      data_decoder::GetXmlElementAttribute(node, kSchema1ExcludeAttribute);
   entry.exclude = (exclude_attrib == kSchema1TrueValue);
 
-  std::string do_not_transition_attrib =
-      GetXmlElementAttribute(node, kSchema1DoNotTransitionAttribute);
+  std::string do_not_transition_attrib = data_decoder::GetXmlElementAttribute(
+      node, kSchema1DoNotTransitionAttribute);
   entry.do_not_transition = (do_not_transition_attrib == kSchema1TrueValue);
 
-  GetXmlElementText(node, &entry.text);
+  data_decoder::GetXmlElementText(node, &entry.text);
   base::TrimWhitespaceASCII(entry.text, base::TRIM_ALL, &entry.text);
 
   return entry;
@@ -74,11 +72,12 @@
 // Parses Enterprise Mode schema 1 files according to:
 // https://technet.microsoft.com/itpro/internet-explorer/ie11-deploy-guide/enterprise-mode-schema-version-1-guidance
 void ParseIeFileVersionOne(const base::Value& xml, ParsedXml* result) {
-  DCHECK(IsXmlElementNamed(xml, kSchema1RulesElement));
-  for (const base::Value& node : GetXmlElementChildren(xml)->GetList()) {
+  DCHECK(data_decoder::IsXmlElementNamed(xml, kSchema1RulesElement));
+  for (const base::Value& node :
+       data_decoder::GetXmlElementChildren(xml)->GetList()) {
     // Skip over anything that is not a <emie> or <docMode> element.
-    if (!IsXmlElementNamed(node, kSchema1EmieElement) &&
-        !IsXmlElementNamed(node, kSchema1DocModeElement)) {
+    if (!data_decoder::IsXmlElementNamed(node, kSchema1EmieElement) &&
+        !data_decoder::IsXmlElementNamed(node, kSchema1DocModeElement)) {
       continue;
     }
     // Loop over <domain> elements.
@@ -105,12 +104,12 @@
 // Parses Enterprise Mode schema 2 files according to:
 // https://technet.microsoft.com/itpro/internet-explorer/ie11-deploy-guide/enterprise-mode-schema-version-2-guidance
 void ParseIeFileVersionTwo(const base::Value& xml, ParsedXml* result) {
-  DCHECK(IsXmlElementNamed(xml, kSchema2SiteListElement));
+  DCHECK(data_decoder::IsXmlElementNamed(xml, kSchema2SiteListElement));
   // Iterate over <site> elements. Notably, skip <created-by> elements.
   for (const base::Value* site_node :
        GetChildrenWithTag(xml, kSchema2SiteElement)) {
-    std::string url =
-        GetXmlElementAttribute(*site_node, kSchema2SiteUrlAttribute);
+    std::string url = data_decoder::GetXmlElementAttribute(
+        *site_node, kSchema2SiteUrlAttribute);
     base::TrimWhitespaceASCII(url, base::TRIM_ALL, &url);
     if (url.empty())
       continue;
@@ -118,7 +117,7 @@
     std::string mode;
     for (const base::Value* open_in_node :
          GetChildrenWithTag(*site_node, kSchema2SiteOpenInElement)) {
-      GetXmlElementText(*open_in_node, &mode);
+      data_decoder::GetXmlElementText(*open_in_node, &mode);
     }
     base::TrimWhitespaceASCII(mode, base::TRIM_ALL, &mode);
     std::string prefix =
diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
index 1fa141a..35d7730 100644
--- a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
+++ b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
@@ -931,12 +931,13 @@
 
 #if defined(OS_ANDROID)
 #if BUILDFLAG(ENABLE_FEED_IN_CHROME)
-    if (base::FeatureList::IsEnabled(feed::kInterestFeedContentSuggestions))
+    if (base::FeatureList::IsEnabled(feed::kInterestFeedContentSuggestions)) {
       // Don't bridge through if the service isn't present, which means we're
       // probably running in a native unit test.
       if (feed::FeedHostServiceFactory::GetForBrowserContext(profile_)) {
         feed::FeedLifecycleBridge::ClearCachedData();
       }
+    }
 #endif  // BUILDFLAG(ENABLE_FEED_IN_CHROME)
 #endif  // defined(OS_ANDROID)
 
@@ -962,8 +963,7 @@
 #if defined(OS_ANDROID)
     // For now we're considering offline pages as cache, so if we're removing
     // cache we should remove offline pages as well.
-    if ((remove_mask & content::BrowsingDataRemover::DATA_TYPE_CACHE) &&
-        offline_pages::IsOfflinePagesEnabled()) {
+    if (remove_mask & content::BrowsingDataRemover::DATA_TYPE_CACHE) {
       auto* offline_page_model =
           offline_pages::OfflinePageModelFactory::GetForBrowserContext(
               profile_);
diff --git a/chrome/browser/chrome_browser_interface_binders.cc b/chrome/browser/chrome_browser_interface_binders.cc
index 7c59f51..b1c9c3a 100644
--- a/chrome/browser/chrome_browser_interface_binders.cc
+++ b/chrome/browser/chrome_browser_interface_binders.cc
@@ -23,9 +23,6 @@
 #include "services/service_manager/public/cpp/interface_provider.h"
 #include "third_party/blink/public/mojom/installedapp/installed_app_provider.mojom.h"
 #include "third_party/blink/public/mojom/webshare/webshare.mojom.h"
-#if defined(BROWSER_MEDIA_CONTROLS_MENU)
-#include "third_party/blink/public/mojom/media_controls/touchless/media_controls.mojom.h"
-#endif
 #if defined(ENABLE_SPATIAL_NAVIGATION_HOST)
 #include "third_party/blink/public/mojom/page/spatial_navigation.mojom.h"
 #endif
@@ -75,10 +72,6 @@
 #if defined(OS_ANDROID)
   map->Add<blink::mojom::InstalledAppProvider>(base::BindRepeating(
       &ForwardToJavaFrameRegistry<blink::mojom::InstalledAppProvider>));
-#if defined(BROWSER_MEDIA_CONTROLS_MENU)
-  map->Add<blink::mojom::MediaControlsMenuHost>(base::BindRepeating(
-      &ForwardToJavaFrameRegistry<blink::mojom::MediaControlsMenuHost>));
-#endif
   if (base::FeatureList::IsEnabled(features::kWebPayments)) {
     map->Add<payments::mojom::PaymentRequest>(base::BindRepeating(
         &ForwardToJavaFrameRegistry<payments::mojom::PaymentRequest>));
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
index c48b0a4..2474f7b 100644
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -84,7 +84,6 @@
 #include "chrome/browser/payments/payment_request_display_manager_factory.h"
 #include "chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.h"
 #include "chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
 #include "chrome/browser/permissions/attestation_permission_request.h"
 #include "chrome/browser/permissions/permission_context_base.h"
 #include "chrome/browser/permissions/permission_request_manager.h"
@@ -224,6 +223,7 @@
 #include "components/page_load_metrics/browser/page_load_metrics_util.h"
 #include "components/password_manager/content/browser/content_password_manager_driver_factory.h"
 #include "components/payments/content/payment_request_display_manager.h"
+#include "components/performance_manager/public/performance_manager.h"
 #include "components/policy/content/policy_blacklist_navigation_throttle.h"
 #include "components/policy/content/policy_blacklist_service.h"
 #include "components/policy/core/common/policy_service.h"
@@ -405,6 +405,7 @@
 #elif defined(OS_ANDROID)
 #include "base/android/application_status_listener.h"
 #include "chrome/android/features/dev_ui/buildflags.h"
+#include "chrome/android/modules/extra_icu/provider/module_provider.h"
 #include "chrome/browser/android/app_hooks.h"
 #include "chrome/browser/android/chrome_context_util.h"
 #include "chrome/browser/android/devtools_manager_delegate_android.h"
@@ -4013,7 +4014,6 @@
   NavigateParams nav_params(Profile::FromBrowserContext(browser_context),
                             params.url, params.transition);
   nav_params.FillNavigateParamsFromOpenURLParams(params);
-  nav_params.user_gesture = params.user_gesture;
 
   Navigate(&nav_params);
   std::move(callback).Run(nav_params.navigated_or_inserted_contents);
@@ -5669,3 +5669,10 @@
       CONTENT_SETTINGS_TYPE_BLUETOOTH_SCANNING, std::string(),
       CONTENT_SETTING_BLOCK);
 }
+
+bool ChromeContentBrowserClient::ShouldLoadExtraIcuDataFile() {
+#if defined(OS_ANDROID)
+  return extra_icu::ModuleProvider::IsModuleInstalled();
+#endif
+  return false;
+}
diff --git a/chrome/browser/chrome_content_browser_client.h b/chrome/browser/chrome_content_browser_client.h
index 8f7afc8..120d9f9 100644
--- a/chrome/browser/chrome_content_browser_client.h
+++ b/chrome/browser/chrome_content_browser_client.h
@@ -614,6 +614,8 @@
                               const url::Origin& requesting_origin,
                               const url::Origin& embedding_origin) override;
 
+  bool ShouldLoadExtraIcuDataFile() override;
+
   content::PreviewsState DetermineAllowedPreviewsWithoutHoldback(
       content::PreviewsState initial_state,
       content::NavigationHandle* navigation_handle,
diff --git a/chrome/browser/chromeos/BUILD.gn b/chrome/browser/chromeos/BUILD.gn
index 8d00a08..625d868 100644
--- a/chrome/browser/chromeos/BUILD.gn
+++ b/chrome/browser/chromeos/BUILD.gn
@@ -806,6 +806,8 @@
     "crostini/crosvm_process_list.h",
     "crostini/fake_crostini_installer_ui_delegate.cc",
     "crostini/fake_crostini_installer_ui_delegate.h",
+    "crostini/throttle/crostini_throttle.cc",
+    "crostini/throttle/crostini_throttle.h",
     "cryptauth/client_app_metadata_provider_service.cc",
     "cryptauth/client_app_metadata_provider_service.h",
     "cryptauth/client_app_metadata_provider_service_factory.cc",
@@ -2527,6 +2529,7 @@
     "crostini/crostini_unsupported_action_notifier_unittest.cc",
     "crostini/crosvm_metrics_unittest.cc",
     "crostini/crosvm_process_list_unittest.cc",
+    "crostini/throttle/crostini_throttle_unittest.cc",
     "cryptauth/client_app_metadata_provider_service_unittest.cc",
     "customization/customization_document_unittest.cc",
     "dbus/proxy_resolution_service_provider_unittest.cc",
diff --git a/chrome/browser/chromeos/accessibility/accessibility_manager.cc b/chrome/browser/chromeos/accessibility/accessibility_manager.cc
index ecebe48..314176d 100644
--- a/chrome/browser/chromeos/accessibility/accessibility_manager.cc
+++ b/chrome/browser/chromeos/accessibility/accessibility_manager.cc
@@ -908,7 +908,7 @@
   return switch_access_enabled_;
 }
 
-void AccessibilityManager::UpdateSwitchAccessFromPref() {
+void AccessibilityManager::OnSwitchAccessChanged() {
   if (!profile_)
     return;
 
@@ -1115,7 +1115,7 @@
                    base::Unretained(this)));
     pref_change_registrar_->Add(
         ash::prefs::kAccessibilitySwitchAccessEnabled,
-        base::Bind(&AccessibilityManager::UpdateSwitchAccessFromPref,
+        base::Bind(&AccessibilityManager::OnSwitchAccessChanged,
                    base::Unretained(this)));
     pref_change_registrar_->Add(
         ash::prefs::kAccessibilityAutoclickEnabled,
@@ -1150,11 +1150,11 @@
   else
     UpdateBrailleImeState();
   UpdateAlwaysShowMenuFromPref();
-  UpdateSwitchAccessFromPref();
 
   // TODO(warx): reconcile to ash once the prefs registration above is moved to
   // ash.
   OnSpokenFeedbackChanged();
+  OnSwitchAccessChanged();
   OnSelectToSpeakChanged();
   OnAutoclickChanged();
 }
diff --git a/chrome/browser/chromeos/accessibility/accessibility_manager.h b/chrome/browser/chromeos/accessibility/accessibility_manager.h
index 8e772e1..3e916395 100644
--- a/chrome/browser/chromeos/accessibility/accessibility_manager.h
+++ b/chrome/browser/chromeos/accessibility/accessibility_manager.h
@@ -384,8 +384,8 @@
   void OnFocusHighlightChanged();
   void OnTapDraggingChanged();
   void OnSelectToSpeakChanged();
-  void UpdateSwitchAccessFromPref();
   void OnAutoclickChanged();
+  void OnSwitchAccessChanged();
 
   void CheckBrailleState();
   void ReceiveBrailleDisplayState(
diff --git a/chrome/browser/chromeos/arc/instance_throttle/arc_instance_throttle.h b/chrome/browser/chromeos/arc/instance_throttle/arc_instance_throttle.h
index f8c20c2..18f79cd 100644
--- a/chrome/browser/chromeos/arc/instance_throttle/arc_instance_throttle.h
+++ b/chrome/browser/chromeos/arc/instance_throttle/arc_instance_throttle.h
@@ -59,10 +59,6 @@
     delegate_ = std::move(delegate);
   }
 
-  void set_level_for_testing(chromeos::ThrottleObserver::PriorityLevel level) {
-    SetLevel(level);
-  }
-
  private:
   // chromeos::ThrottleService:
   void ThrottleInstance(
diff --git a/chrome/browser/chromeos/crostini/crostini_manager.cc b/chrome/browser/chromeos/crostini/crostini_manager.cc
index ad78529..586e750 100644
--- a/chrome/browser/chromeos/crostini/crostini_manager.cc
+++ b/chrome/browser/chromeos/crostini/crostini_manager.cc
@@ -98,8 +98,8 @@
     const std::string& vm_name,
     const std::string& container_name,
     CrostiniResult result) {
-  auto range = container_callbacks->equal_range(
-      std::make_tuple(vm_name, container_name));
+  auto range =
+      container_callbacks->equal_range(ContainerId(vm_name, container_name));
   for (auto it = range.first; it != range.second; ++it) {
     std::move(it->second).Run(result);
   }
@@ -1076,7 +1076,7 @@
     VLOG(1) << "Awaiting LxdContainerDeletedSignal for " << vm_name << ", "
             << container_name;
     delete_lxd_container_callbacks_.emplace(
-        std::make_tuple(vm_name, container_name), std::move(callback));
+        ContainerId(vm_name, container_name), std::move(callback));
 
   } else if (response->status() ==
              vm_tools::cicerone::DeleteLxdContainerResponse::DOES_NOT_EXIST) {
@@ -1630,7 +1630,7 @@
       std::move(callback));
   if (observer)
     restarter->AddObserver(observer);
-  auto key = std::make_pair(restarter->vm_name(), restarter->container_name());
+  auto key = ContainerId(restarter->vm_name(), restarter->container_name());
   restarters_by_container_.emplace(key, restarter->restart_id());
   restarters_by_id_[restarter->restart_id()] = restarter;
   if (restarters_by_container_.count(key) > 1) {
@@ -1661,8 +1661,8 @@
     CrostiniManager::RestartId restart_id,
     base::OnceClosure callback) {
   auto restarter_it = restarters_by_id_.find(restart_id);
-  auto key = std::make_pair(restarter_it->second->vm_name(),
-                            restarter_it->second->container_name());
+  auto key = ContainerId(restarter_it->second->vm_name(),
+                         restarter_it->second->container_name());
   if (restarter_it != restarters_by_id_.end()) {
     auto range = restarters_by_container_.equal_range(key);
     for (auto it = range.first; it != range.second; ++it) {
@@ -2023,7 +2023,7 @@
     return;
   // Find the callbacks to call, then erase them from the map.
   auto range_callbacks = shutdown_container_callbacks_.equal_range(
-      std::make_tuple(signal.vm_name(), signal.container_name()));
+      ContainerId(signal.vm_name(), signal.container_name()));
   for (auto it = range_callbacks.first; it != range_callbacks.second; ++it) {
     std::move(it->second).Run();
   }
@@ -2303,7 +2303,7 @@
 
   // Find the callbacks to call, then erase them from the map.
   auto range = delete_lxd_container_callbacks_.equal_range(
-      std::make_tuple(signal.vm_name(), signal.container_name()));
+      ContainerId(signal.vm_name(), signal.container_name()));
   for (auto it = range.first; it != range.second; ++it) {
     std::move(it->second).Run(success);
   }
@@ -2316,7 +2316,7 @@
     return;
   }
   auto range = restarters_by_container_.equal_range(
-      std::make_pair(signal.vm_name(), signal.container_name()));
+      ContainerId(signal.vm_name(), signal.container_name()));
   for (auto it = range.first; it != range.second; ++it) {
     restarters_by_id_[it->second]->OnContainerDownloading(
         signal.download_progress());
@@ -2528,7 +2528,7 @@
 
 void CrostiniManager::FinishRestart(CrostiniRestarter* restarter,
                                     CrostiniResult result) {
-  auto key = std::make_pair(restarter->vm_name(), restarter->container_name());
+  auto key = ContainerId(restarter->vm_name(), restarter->container_name());
   auto range = restarters_by_container_.equal_range(key);
   std::vector<scoped_refptr<CrostiniRestarter>> pending_restarters;
   // Erase first, because restarter->RunCallback() may modify our maps.
@@ -2625,7 +2625,7 @@
   }
 
   // Invoke original callback with either success or failure.
-  auto key = std::make_pair(signal.vm_name(), signal.container_name());
+  auto key = ContainerId(signal.vm_name(), signal.container_name());
   auto it = export_lxd_container_callbacks_.find(key);
   if (it == export_lxd_container_callbacks_.end()) {
     LOG(ERROR) << "No export callback for " << signal.vm_name() << ", "
@@ -2725,7 +2725,7 @@
 
   // Invoke original callback with either success or failure.
   if (call_original_callback) {
-    auto key = std::make_pair(signal.vm_name(), signal.container_name());
+    auto key = ContainerId(signal.vm_name(), signal.container_name());
     auto it = import_lxd_container_callbacks_.find(key);
     if (it == import_lxd_container_callbacks_.end()) {
       LOG(ERROR) << "No import callback for " << signal.vm_name() << ", "
diff --git a/chrome/browser/chromeos/crostini/crostini_package_notification_unittest.cc b/chrome/browser/chromeos/crostini/crostini_package_notification_unittest.cc
index f05e897..8ce0971 100644
--- a/chrome/browser/chromeos/crostini/crostini_package_notification_unittest.cc
+++ b/chrome/browser/chromeos/crostini/crostini_package_notification_unittest.cc
@@ -66,8 +66,7 @@
       profile_.get(),
       CrostiniPackageNotification::NotificationType::PACKAGE_INSTALL,
       PackageOperationStatus::RUNNING,
-      std::pair<std::string, std::string>(kCrostiniDefaultVmName,
-                                          kCrostiniDefaultContainerName),
+      ContainerId(kCrostiniDefaultVmName, kCrostiniDefaultContainerName),
       base::string16(), kNotificationId, service_.get());
 
   notification.UpdateProgress(PackageOperationStatus::SUCCEEDED, 100);
@@ -79,8 +78,7 @@
       profile_.get(),
       CrostiniPackageNotification::NotificationType::PACKAGE_INSTALL,
       PackageOperationStatus::RUNNING,
-      std::pair<std::string, std::string>(kCrostiniDefaultVmName,
-                                          kCrostiniDefaultContainerName),
+      ContainerId(kCrostiniDefaultVmName, kCrostiniDefaultContainerName),
       base::string16(), kNotificationId, service_.get());
 
   auto app = CrostiniTestHelper::BasicApp(kDefaultAppFileId);
@@ -95,8 +93,7 @@
       profile_.get(),
       CrostiniPackageNotification::NotificationType::PACKAGE_INSTALL,
       PackageOperationStatus::RUNNING,
-      std::pair<std::string, std::string>(kCrostiniDefaultVmName,
-                                          kCrostiniDefaultContainerName),
+      ContainerId(kCrostiniDefaultVmName, kCrostiniDefaultContainerName),
       base::string16(), kNotificationId, service_.get());
 
   auto app = CrostiniTestHelper::BasicApp(kDefaultAppFileId);
@@ -117,8 +114,7 @@
       profile_.get(),
       CrostiniPackageNotification::NotificationType::PACKAGE_INSTALL,
       PackageOperationStatus::RUNNING,
-      std::pair<std::string, std::string>(kCrostiniDefaultVmName,
-                                          kCrostiniDefaultContainerName),
+      ContainerId(kCrostiniDefaultVmName, kCrostiniDefaultContainerName),
       base::string16(), kNotificationId, service_.get());
 
   app = CrostiniTestHelper::BasicApp(kSecondAppFileId);
diff --git a/chrome/browser/chromeos/crostini/crostini_package_service.cc b/chrome/browser/chromeos/crostini/crostini_package_service.cc
index 65c14eb2..1a7173a 100644
--- a/chrome/browser/chromeos/crostini/crostini_package_service.cc
+++ b/chrome/browser/chromeos/crostini/crostini_package_service.cc
@@ -260,7 +260,7 @@
   if (status == InstallLinuxPackageProgressStatus::INSTALLING)
     display_progress += 50;  // Second phase
 
-  UpdatePackageOperationStatus(std::make_pair(vm_name, container_name),
+  UpdatePackageOperationStatus(ContainerId(vm_name, container_name),
                                InstallStatusToOperationStatus(status),
                                display_progress);
 }
diff --git a/chrome/browser/chromeos/crostini/throttle/crostini_throttle.cc b/chrome/browser/chromeos/crostini/throttle/crostini_throttle.cc
new file mode 100644
index 0000000..bc41786
--- /dev/null
+++ b/chrome/browser/chromeos/crostini/throttle/crostini_throttle.cc
@@ -0,0 +1,104 @@
+// Copyright 2019 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/chromeos/crostini/throttle/crostini_throttle.h"
+
+#include "base/no_destructor.h"
+#include "chrome/browser/chromeos/concierge_helper_service.h"
+#include "chrome/browser/chromeos/crostini/crostini_util.h"
+#include "chrome/browser/profiles/profile.h"
+#include "components/keyed_service/content/browser_context_dependency_manager.h"
+#include "components/keyed_service/content/browser_context_keyed_service_factory.h"
+#include "content/public/browser/browser_context.h"
+
+namespace crostini {
+namespace {
+
+class DefaultDelegateImpl : public CrostiniThrottle::Delegate {
+ public:
+  explicit DefaultDelegateImpl(content::BrowserContext* context)
+      : context_(context) {}
+  ~DefaultDelegateImpl() override = default;
+
+  void SetCpuRestriction(bool do_restrict) override {
+    chromeos::ConciergeHelperService::GetForBrowserContext(context_)
+        ->SetTerminaVmCpuRestriction(do_restrict);
+  }
+
+ private:
+  content::BrowserContext* context_;
+
+  DISALLOW_COPY_AND_ASSIGN(DefaultDelegateImpl);
+};
+
+class CrostiniThrottleFactory : public BrowserContextKeyedServiceFactory {
+ public:
+  static CrostiniThrottleFactory* GetInstance() {
+    static base::NoDestructor<CrostiniThrottleFactory> instance;
+    return instance.get();
+  }
+
+  static CrostiniThrottle* GetForBrowserContext(
+      content::BrowserContext* context) {
+    return static_cast<CrostiniThrottle*>(
+        CrostiniThrottleFactory::GetInstance()->GetServiceForBrowserContext(
+            context, true /* create */));
+  }
+
+ private:
+  friend class base::NoDestructor<CrostiniThrottleFactory>;
+
+  CrostiniThrottleFactory()
+      : BrowserContextKeyedServiceFactory(
+            "CrostiniThrottleFactory",
+            BrowserContextDependencyManager::GetInstance()) {}
+  ~CrostiniThrottleFactory() override = default;
+
+  // BrowserContextKeyedServiceFactory:
+  KeyedService* BuildServiceInstanceFor(
+      content::BrowserContext* context) const override {
+    if (context->IsOffTheRecord())
+      return nullptr;
+    return new CrostiniThrottle(context);
+  }
+
+  DISALLOW_COPY_AND_ASSIGN(CrostiniThrottleFactory);
+};
+
+}  // namespace
+
+// static
+CrostiniThrottle* CrostiniThrottle::GetForBrowserContext(
+    content::BrowserContext* context) {
+  return CrostiniThrottleFactory::GetForBrowserContext(context);
+}
+
+CrostiniThrottle::CrostiniThrottle(content::BrowserContext* context)
+    : ThrottleService(context),
+      delegate_(std::make_unique<DefaultDelegateImpl>(context)) {
+  StartObservers();
+}
+
+CrostiniThrottle::~CrostiniThrottle() = default;
+
+void CrostiniThrottle::Shutdown() {
+  StopObservers();
+}
+
+void CrostiniThrottle::ThrottleInstance(
+    chromeos::ThrottleObserver::PriorityLevel level) {
+  switch (level) {
+    case chromeos::ThrottleObserver::PriorityLevel::CRITICAL:
+    case chromeos::ThrottleObserver::PriorityLevel::IMPORTANT:
+    case chromeos::ThrottleObserver::PriorityLevel::NORMAL:
+      delegate_->SetCpuRestriction(false);
+      break;
+    case chromeos::ThrottleObserver::PriorityLevel::LOW:
+    case chromeos::ThrottleObserver::PriorityLevel::UNKNOWN:
+      delegate_->SetCpuRestriction(true);
+      break;
+  }
+}
+
+}  // namespace crostini
diff --git a/chrome/browser/chromeos/crostini/throttle/crostini_throttle.h b/chrome/browser/chromeos/crostini/throttle/crostini_throttle.h
new file mode 100644
index 0000000..4ff2646
--- /dev/null
+++ b/chrome/browser/chromeos/crostini/throttle/crostini_throttle.h
@@ -0,0 +1,66 @@
+// Copyright 2019 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_CROSTINI_THROTTLE_CROSTINI_THROTTLE_H_
+#define CHROME_BROWSER_CHROMEOS_CROSTINI_THROTTLE_CROSTINI_THROTTLE_H_
+
+#include <memory>
+#include <string>
+#include <utility>
+
+#include "base/macros.h"
+#include "chrome/browser/chromeos/throttle_service.h"
+#include "components/keyed_service/core/keyed_service.h"
+
+namespace content {
+class BrowserContext;
+}
+
+namespace crostini {
+
+// This class holds a number observers which watch for conditions and adjust the
+// throttle state of the Crostini VM on a change in conditions.
+class CrostiniThrottle : public KeyedService, public chromeos::ThrottleService {
+ public:
+  class Delegate {
+   public:
+    Delegate() = default;
+    virtual ~Delegate() = default;
+
+    virtual void SetCpuRestriction(bool) = 0;
+
+   private:
+    DISALLOW_COPY_AND_ASSIGN(Delegate);
+  };
+
+  // Returns singleton instance for the given BrowserContext, or nullptr if
+  // the browser |context| is not allowed to use Crostini.
+  static CrostiniThrottle* GetForBrowserContext(
+      content::BrowserContext* context);
+
+  explicit CrostiniThrottle(content::BrowserContext* context);
+  ~CrostiniThrottle() override;
+
+  // KeyedService:
+  void Shutdown() override;
+
+  void set_delegate_for_testing(std::unique_ptr<Delegate> delegate) {
+    delegate_ = std::move(delegate);
+  }
+
+ private:
+  // chromeos::ThrottleService:
+  void ThrottleInstance(
+      chromeos::ThrottleObserver::PriorityLevel level) override;
+  void RecordCpuRestrictionDisabledUMA(const std::string& observer_name,
+                                       base::TimeDelta delta) override {}
+
+  std::unique_ptr<Delegate> delegate_;
+
+  DISALLOW_COPY_AND_ASSIGN(CrostiniThrottle);
+};
+
+}  // namespace crostini
+
+#endif  // CHROME_BROWSER_CHROMEOS_CROSTINI_THROTTLE_CROSTINI_THROTTLE_H_
diff --git a/chrome/browser/chromeos/crostini/throttle/crostini_throttle_unittest.cc b/chrome/browser/chromeos/crostini/throttle/crostini_throttle_unittest.cc
new file mode 100644
index 0000000..0219cd6
--- /dev/null
+++ b/chrome/browser/chromeos/crostini/throttle/crostini_throttle_unittest.cc
@@ -0,0 +1,90 @@
+// Copyright 2019 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/chromeos/crostini/throttle/crostini_throttle.h"
+#include <memory>
+#include "base/macros.h"
+#include "chrome/browser/chromeos/crostini/crostini_test_helper.h"
+#include "chrome/test/base/testing_profile.h"
+#include "chromeos/dbus/dbus_thread_manager.h"
+#include "content/public/test/browser_task_environment.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace crostini {
+
+class CrostiniThrottleTest : public testing::Test {
+ public:
+  CrostiniThrottleTest()
+      : crostini_helper_(&profile_), crostini_throttle_(&profile_) {
+    crostini_throttle_.set_delegate_for_testing(
+        std::make_unique<TestDelegateImpl>(this));
+  }
+
+ protected:
+  CrostiniThrottle* crostini_throttle() { return &crostini_throttle_; }
+
+  size_t disable_cpu_restriction_counter() const {
+    return disable_cpu_restriction_counter_;
+  }
+
+  size_t enable_cpu_restriction_counter() const {
+    return enable_cpu_restriction_counter_;
+  }
+
+ private:
+  class TestDelegateImpl : public CrostiniThrottle::Delegate {
+   public:
+    explicit TestDelegateImpl(CrostiniThrottleTest* test) : test_(test) {}
+    ~TestDelegateImpl() override = default;
+
+    void SetCpuRestriction(bool restrict) override {
+      if (restrict)
+        ++(test_->enable_cpu_restriction_counter_);
+      else
+        ++(test_->disable_cpu_restriction_counter_);
+    }
+
+    CrostiniThrottleTest* test_;
+    DISALLOW_COPY_AND_ASSIGN(TestDelegateImpl);
+  };
+
+  content::BrowserTaskEnvironment task_environment_;
+  TestingProfile profile_;
+  CrostiniTestHelper crostini_helper_;
+  CrostiniThrottle crostini_throttle_;
+  size_t disable_cpu_restriction_counter_{0};
+  size_t enable_cpu_restriction_counter_{0};
+
+  DISALLOW_COPY_AND_ASSIGN(CrostiniThrottleTest);
+};
+
+// Tests that CrostiniThrottle can be constructed and destructed.
+TEST_F(CrostiniThrottleTest, TestConstructDestruct) {}
+
+// Tests that CrostiniThrottle adjusts CPU restriction
+// when ThrottleInstance is called.
+TEST_F(CrostiniThrottleTest, TestThrottleInstance) {
+  crostini_throttle()->set_level_for_testing(
+      chromeos::ThrottleObserver::PriorityLevel::LOW);
+  EXPECT_EQ(1U, enable_cpu_restriction_counter());
+  EXPECT_EQ(0U, disable_cpu_restriction_counter());
+
+  // CrostiniThrottle level is already LOW, expect no change
+  crostini_throttle()->set_level_for_testing(
+      chromeos::ThrottleObserver::PriorityLevel::LOW);
+  EXPECT_EQ(1U, enable_cpu_restriction_counter());
+  EXPECT_EQ(0U, disable_cpu_restriction_counter());
+
+  crostini_throttle()->set_level_for_testing(
+      chromeos::ThrottleObserver::PriorityLevel::CRITICAL);
+  EXPECT_EQ(1U, enable_cpu_restriction_counter());
+  EXPECT_EQ(1U, disable_cpu_restriction_counter());
+
+  crostini_throttle()->set_level_for_testing(
+      chromeos::ThrottleObserver::PriorityLevel::LOW);
+  EXPECT_EQ(2U, enable_cpu_restriction_counter());
+  EXPECT_EQ(1U, disable_cpu_restriction_counter());
+}
+
+}  // namespace crostini
diff --git a/chrome/browser/chromeos/first_run/drive_first_run_controller.cc b/chrome/browser/chromeos/first_run/drive_first_run_controller.cc
index cb30bba..5162378 100644
--- a/chrome/browser/chromeos/first_run/drive_first_run_controller.cc
+++ b/chrome/browser/chromeos/first_run/drive_first_run_controller.cc
@@ -120,16 +120,14 @@
                    const base::string16& error_description) override;
 
   // content::WebContentsDelegate overrides:
-  bool IsWebContentsCreationOverridden(
-      content::SiteInstance* source_site_instance,
-      content::mojom::WindowContainerType window_container_type,
-      const GURL& opener_url,
-      const std::string& frame_name,
-      const GURL& target_url) override;
-  content::WebContents* CreateCustomWebContents(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
       content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
-      bool is_new_browsing_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
+      content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
       const GURL& target_url,
@@ -232,54 +230,54 @@
   }
 }
 
-bool DriveWebContentsManager::IsWebContentsCreationOverridden(
-    content::SiteInstance* source_site_instance,
-    content::mojom::WindowContainerType window_container_type,
-    const GURL& opener_url,
-    const std::string& frame_name,
-    const GURL& target_url) {
-  if (window_container_type == content::mojom::WindowContainerType::NORMAL)
-    return false;
-
-  // Check that the target URL is for the Drive app.
-  const extensions::Extension* extension =
-      extensions::ExtensionRegistry::Get(profile_)
-          ->enabled_extensions().GetAppByURL(target_url);
-
-  return extension && extension->id() == app_id_;
-}
-
-content::WebContents* DriveWebContentsManager::CreateCustomWebContents(
+bool DriveWebContentsManager::ShouldCreateWebContents(
+    content::WebContents* web_contents,
     content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
-    bool is_new_browsing_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
+    content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
     const GURL& target_url,
     const std::string& partition_id,
     content::SessionStorageNamespace* session_storage_namespace) {
+  if (window_container_type == content::mojom::WindowContainerType::NORMAL)
+    return true;
+
+  // Check that the target URL is for the Drive app.
+  const extensions::Extension* extension =
+      extensions::ExtensionRegistry::Get(profile_)
+          ->enabled_extensions().GetAppByURL(target_url);
+  if (!extension || extension->id() != app_id_)
+    return true;
+
   // The background contents creation is normally done in Browser, but
   // because we're using a detached WebContents, we need to do it ourselves.
   BackgroundContentsService* background_contents_service =
       BackgroundContentsServiceFactory::GetForProfile(profile_);
 
-  // Only redirect if background contents does not yet exists.
-  if (!background_contents_service->GetAppBackgroundContents(app_id_)) {
-    // drive_first_run/app/manifest.json sets allow_js_access to false and
-    // therefore we are creating a new SiteInstance (and thus a new renderer
-    // process) here, so we must use MSG_ROUTING_NONE and we cannot pass the
-    // opener (similarly to how allow_js_access:false is handled in
-    // Browser::MaybeCreateBackgroundContents).
-    BackgroundContents* contents =
-        background_contents_service->CreateBackgroundContents(
-            content::SiteInstance::Create(profile_), nullptr, true, frame_name,
-            app_id_, partition_id, session_storage_namespace);
-    contents->web_contents()->GetController().LoadURL(
-        target_url, content::Referrer(), ui::PAGE_TRANSITION_LINK,
-        std::string());
+  // Prevent redirection if background contents already exists.
+  if (background_contents_service->GetAppBackgroundContents(app_id_)) {
+    return false;
   }
+  // drive_first_run/app/manifest.json sets allow_js_access to false and
+  // therefore we are creating a new SiteInstance (and thus a new renderer
+  // process) here, so we must use MSG_ROUTING_NONE and we cannot pass the
+  // opener (similarily to how allow_js_access:false is handled in
+  // Browser::MaybeCreateBackgroundContents).
+  BackgroundContents* contents =
+      background_contents_service->CreateBackgroundContents(
+          content::SiteInstance::Create(profile_), nullptr, MSG_ROUTING_NONE,
+          MSG_ROUTING_NONE, MSG_ROUTING_NONE, frame_name, app_id_, partition_id,
+          session_storage_namespace);
 
-  return nullptr;
+  contents->web_contents()->GetController().LoadURL(
+      target_url, content::Referrer(), ui::PAGE_TRANSITION_LINK, std::string());
+
+  // Return false as we already created the WebContents here.
+  return false;
 }
 
 void DriveWebContentsManager::OnBackgroundContentsOpened(
diff --git a/chrome/browser/chromeos/login/ui/login_web_dialog.cc b/chrome/browser/chromeos/login/ui/login_web_dialog.cc
index 86bdbd0..406554f9 100644
--- a/chrome/browser/chromeos/login/ui/login_web_dialog.cc
+++ b/chrome/browser/chromeos/login/ui/login_web_dialog.cc
@@ -164,8 +164,8 @@
   return (source && !chrome::FindBrowserWithWebContents(source));
 }
 
-bool LoginWebDialog::HandleShouldOverrideWebContentsCreation() {
-  return true;
+bool LoginWebDialog::HandleShouldCreateWebContents() {
+  return false;
 }
 
 std::vector<ui::Accelerator> LoginWebDialog::GetAccelerators() {
diff --git a/chrome/browser/chromeos/login/ui/login_web_dialog.h b/chrome/browser/chromeos/login/ui/login_web_dialog.h
index 245cb63..571ba7c 100644
--- a/chrome/browser/chromeos/login/ui/login_web_dialog.h
+++ b/chrome/browser/chromeos/login/ui/login_web_dialog.h
@@ -81,7 +81,7 @@
   bool HandleOpenURLFromTab(content::WebContents* source,
                             const content::OpenURLParams& params,
                             content::WebContents** out_new_contents) override;
-  bool HandleShouldOverrideWebContentsCreation() override;
+  bool HandleShouldCreateWebContents() override;
   std::vector<ui::Accelerator> GetAccelerators() override;
   bool AcceleratorPressed(const ui::Accelerator& accelerator) override;
 
diff --git a/chrome/browser/chromeos/login/wizard_controller.cc b/chrome/browser/chromeos/login/wizard_controller.cc
index 9684e3f..7be4e595 100644
--- a/chrome/browser/chromeos/login/wizard_controller.cc
+++ b/chrome/browser/chromeos/login/wizard_controller.cc
@@ -708,6 +708,10 @@
     const LoginScreenContext& context) {
   VLOG(1) << "SkipToLoginForTesting.";
   StartupUtils::MarkEulaAccepted();
+  ChangeMetricsReportingStateWithReply(
+      true,
+      base::BindRepeating(&WizardController::OnChangedMetricsReportingState,
+                          weak_factory_.GetWeakPtr()));
   PerformPostEulaActions();
   OnDeviceDisabledChecked(false /* device_disabled */);
 }
diff --git a/chrome/browser/chromeos/throttle_service.cc b/chrome/browser/chromeos/throttle_service.cc
index f6e9572..5cc7a642 100644
--- a/chrome/browser/chromeos/throttle_service.cc
+++ b/chrome/browser/chromeos/throttle_service.cc
@@ -26,6 +26,11 @@
   StartObservers();
 }
 
+void ThrottleService::set_level_for_testing(
+    ThrottleObserver::PriorityLevel level) {
+  SetLevel(level);
+}
+
 void ThrottleService::AddObserver(std::unique_ptr<ThrottleObserver> observer) {
   observers_.push_back(std::move(observer));
 }
diff --git a/chrome/browser/chromeos/throttle_service.h b/chrome/browser/chromeos/throttle_service.h
index 06e5d717..988bb1ea 100644
--- a/chrome/browser/chromeos/throttle_service.h
+++ b/chrome/browser/chromeos/throttle_service.h
@@ -33,6 +33,7 @@
   void NotifyObserverStateChangedForTesting();
   void SetObserversForTesting(
       std::vector<std::unique_ptr<ThrottleObserver>> observers);
+  void set_level_for_testing(ThrottleObserver::PriorityLevel level);
 
  protected:
   void AddObserver(std::unique_ptr<ThrottleObserver> observer);
diff --git a/chrome/browser/devtools/BUILD.gn b/chrome/browser/devtools/BUILD.gn
index 36b7641..e89c23aa 100644
--- a/chrome/browser/devtools/BUILD.gn
+++ b/chrome/browser/devtools/BUILD.gn
@@ -26,6 +26,8 @@
     "protocol/page.h",
     "protocol/protocol.cc",
     "protocol/protocol.h",
+    "protocol/security.cc",
+    "protocol/security.h",
     "protocol/target.cc",
     "protocol/target.h",
   ]
@@ -198,8 +200,10 @@
     sources += [ "devtools_dock_tile.cc" ]
   }
   if (!is_android) {
-    deps += [ ":protocol_generated_sources",
-              "//third_party/inspector_protocol:encoding" ]
+    deps += [
+      ":protocol_generated_sources",
+      "//third_party/inspector_protocol:encoding",
+    ]
     sources += [
       "protocol/browser_handler.cc",
       "protocol/browser_handler.h",
@@ -207,6 +211,8 @@
       "protocol/cast_handler.h",
       "protocol/page_handler.cc",
       "protocol/page_handler.h",
+      "protocol/security_handler.cc",
+      "protocol/security_handler.h",
       "protocol/target_handler.cc",
       "protocol/target_handler.h",
     ]
diff --git a/chrome/browser/devtools/chrome_devtools_session.cc b/chrome/browser/devtools/chrome_devtools_session.cc
index 4b75e59..846cdec 100644
--- a/chrome/browser/devtools/chrome_devtools_session.cc
+++ b/chrome/browser/devtools/chrome_devtools_session.cc
@@ -9,6 +9,7 @@
 #include "chrome/browser/devtools/protocol/browser_handler.h"
 #include "chrome/browser/devtools/protocol/cast_handler.h"
 #include "chrome/browser/devtools/protocol/page_handler.h"
+#include "chrome/browser/devtools/protocol/security_handler.h"
 #include "chrome/browser/devtools/protocol/target_handler.h"
 #include "content/public/browser/devtools_agent_host.h"
 #include "content/public/browser/devtools_agent_host_client.h"
@@ -64,6 +65,8 @@
       agent_host->GetType() == content::DevToolsAgentHost::kTypePage) {
     page_handler_ = std::make_unique<PageHandler>(agent_host->GetWebContents(),
                                                   dispatcher_.get());
+    security_handler_ = std::make_unique<SecurityHandler>(
+        agent_host->GetWebContents(), dispatcher_.get());
     if (client->MayAttachToBrowser()) {
       cast_handler_ = std::make_unique<CastHandler>(
           agent_host->GetWebContents(), dispatcher_.get());
diff --git a/chrome/browser/devtools/chrome_devtools_session.h b/chrome/browser/devtools/chrome_devtools_session.h
index 2665df6..4a18176 100644
--- a/chrome/browser/devtools/chrome_devtools_session.h
+++ b/chrome/browser/devtools/chrome_devtools_session.h
@@ -22,6 +22,7 @@
 class BrowserHandler;
 class CastHandler;
 class PageHandler;
+class SecurityHandler;
 class TargetHandler;
 class WindowManagerHandler;
 
@@ -61,6 +62,7 @@
   std::unique_ptr<BrowserHandler> browser_handler_;
   std::unique_ptr<CastHandler> cast_handler_;
   std::unique_ptr<PageHandler> page_handler_;
+  std::unique_ptr<SecurityHandler> security_handler_;
   std::unique_ptr<TargetHandler> target_handler_;
 #if defined(OS_CHROMEOS)
   std::unique_ptr<WindowManagerHandler> window_manager_protocl_handler_;
diff --git a/chrome/browser/devtools/devtools_window.cc b/chrome/browser/devtools/devtools_window.cc
index 14bc702..f908408 100644
--- a/chrome/browser/devtools/devtools_window.cc
+++ b/chrome/browser/devtools/devtools_window.cc
@@ -21,7 +21,6 @@
 #include "chrome/browser/devtools/devtools_eye_dropper.h"
 #include "chrome/browser/file_select_helper.h"
 #include "chrome/browser/infobars/infobar_service.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/sessions/session_tab_helper.h"
 #include "chrome/browser/task_manager/web_contents_tags.h"
@@ -38,6 +37,7 @@
 #include "chrome/common/pref_names.h"
 #include "chrome/common/url_constants.h"
 #include "components/app_modal/javascript_dialog_manager.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
 #include "components/pref_registry/pref_registry_syncable.h"
 #include "components/prefs/scoped_user_pref_update.h"
 #include "components/sync_preferences/pref_service_syncable.h"
diff --git a/chrome/browser/devtools/inspector_protocol_config.json b/chrome/browser/devtools/inspector_protocol_config.json
index 5389729..431eaa6 100644
--- a/chrome/browser/devtools/inspector_protocol_config.json
+++ b/chrome/browser/devtools/inspector_protocol_config.json
@@ -28,6 +28,11 @@
             },
             {
                 "domain": "WindowManager"
+            },
+            {
+                "domain": "Security",
+                "include": [ "enable", "disable" ],
+                "include_events": [ "visibleSecurityStateChanged" ]
             }
         ]
     },
diff --git a/chrome/browser/devtools/protocol/devtools_protocol_browsertest.cc b/chrome/browser/devtools/protocol/devtools_protocol_browsertest.cc
new file mode 100644
index 0000000..cebdc25
--- /dev/null
+++ b/chrome/browser/devtools/protocol/devtools_protocol_browsertest.cc
@@ -0,0 +1,336 @@
+// Copyright 2019 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/base64.h"
+#include "base/callback.h"
+#include "base/json/json_reader.h"
+#include "base/json/json_writer.h"
+#include "base/values.h"
+#include "chrome/browser/ui/browser.h"
+#include "chrome/test/base/in_process_browser_test.h"
+#include "chrome/test/base/ui_test_utils.h"
+#include "content/public/browser/devtools_agent_host.h"
+#include "content/public/browser/navigation_entry.h"
+#include "content/public/browser/ssl_status.h"
+#include "content/public/browser/web_contents.h"
+#include "content/public/test/browser_test_utils.h"
+#include "net/dns/mock_host_resolver.h"
+#include "net/ssl/ssl_cipher_suite_names.h"
+#include "net/ssl/ssl_connection_status_flags.h"
+#include "third_party/boringssl/src/include/openssl/ssl.h"
+
+namespace {
+
+const char kIdParam[] = "id";
+const char kMethodParam[] = "method";
+
+}  // namespace
+
+class DevToolsProtocolTest : public InProcessBrowserTest,
+                             public content::DevToolsAgentHostClient {
+ public:
+  DevToolsProtocolTest() : last_sent_id_(0) {}
+
+ protected:
+  typedef base::RepeatingCallback<bool(const base::Value&)> NotificationMatcher;
+
+  // InProcessBrowserTest  interface
+  void TearDownOnMainThread() override { Detach(); }
+
+  // DevToolsAgentHostClient interface
+  void DispatchProtocolMessage(content::DevToolsAgentHost* agent_host,
+                               const std::string& message) override {
+    auto parsed_message = base::JSONReader::Read(message);
+    auto id = parsed_message->FindIntPath("id");
+    if (id) {
+      // TODO: implement handling of results from method calls (when needed).
+    } else {
+      std::string* notification = parsed_message->FindStringPath("method");
+      EXPECT_TRUE(notification);
+      notifications_.push_back(*notification);
+      base::Value* params = parsed_message->FindPath("params");
+      notification_params_.push_back(params ? params->Clone() : base::Value());
+      if (waiting_for_notification_ == *notification &&
+          (waiting_for_notification_matcher_.is_null() ||
+           waiting_for_notification_matcher_.Run(
+               notification_params_.back()))) {
+        waiting_for_notification_ = std::string();
+        waiting_for_notification_matcher_ = NotificationMatcher();
+        waiting_for_notification_params_ = notification_params_.back().Clone();
+        std::move(run_loop_quit_closure_).Run();
+      }
+    }
+  }
+
+  void SendCommand(const std::string& method) {
+    base::Value command(base::Value::Type::DICTIONARY);
+    command.SetKey(kIdParam, base::Value(++last_sent_id_));
+    command.SetKey(kMethodParam, base::Value(method));
+    std::string json_command;
+    base::JSONWriter::Write(command, &json_command);
+    agent_host_->DispatchProtocolMessage(this, json_command);
+  }
+
+  void RunLoopUpdatingQuitClosure() {
+    base::RunLoop run_loop;
+    CHECK(!run_loop_quit_closure_);
+    run_loop_quit_closure_ = run_loop.QuitClosure();
+    run_loop.Run();
+  }
+
+  void Attach() {
+    agent_host_ = content::DevToolsAgentHost::GetOrCreateFor(web_contents());
+    agent_host_->AttachClient(this);
+  }
+
+  void Detach() {
+    if (agent_host_) {
+      agent_host_->DetachClient(this);
+      agent_host_ = nullptr;
+    }
+  }
+
+  content::WebContents* web_contents() {
+    return browser()->tab_strip_model()->GetWebContentsAt(0);
+  }
+
+  base::Value WaitForNotification(const std::string& notification) {
+    auto always_match = base::Bind([](const base::Value&) { return true; });
+    return WaitForMatchingNotification(notification, always_match);
+  }
+
+  base::Value WaitForMatchingNotification(const std::string& notification,
+                                          const NotificationMatcher& matcher) {
+    for (size_t i = 0; i < notifications_.size(); ++i) {
+      if (notifications_[i] == notification &&
+          matcher.Run(notification_params_[i])) {
+        base::Value result = std::move(notification_params_[i]);
+        notifications_.erase(notifications_.begin() + i);
+        notification_params_.erase(notification_params_.begin() + i);
+        return result;
+      }
+    }
+    waiting_for_notification_ = notification;
+    waiting_for_notification_matcher_ = matcher;
+    RunLoopUpdatingQuitClosure();
+    return std::move(waiting_for_notification_params_);
+  }
+
+ private:
+  // DevToolsAgentHostClient interface
+  void AgentHostClosed(content::DevToolsAgentHost* agent_host) override {}
+
+  scoped_refptr<content::DevToolsAgentHost> agent_host_;
+  int last_sent_id_;
+  base::OnceClosure run_loop_quit_closure_;
+  std::vector<std::string> notifications_;
+  std::vector<base::Value> notification_params_;
+  std::string waiting_for_notification_;
+  NotificationMatcher waiting_for_notification_matcher_;
+  base::Value waiting_for_notification_params_;
+};
+
+IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest,
+                       VisibleSecurityStateChangedNeutralState) {
+  ui_test_utils::NavigateToURL(browser(), GURL("about:blank"));
+  content::WaitForLoadStop(web_contents());
+
+  Attach();
+  SendCommand("Security.enable");
+  base::Value params =
+      WaitForNotification("Security.visibleSecurityStateChanged");
+
+  std::string* security_state =
+      params.FindStringPath("visibleSecurityState.securityState");
+  ASSERT_TRUE(security_state);
+  ASSERT_EQ(std::string("neutral"), *security_state);
+  ASSERT_FALSE(
+      params.FindPath("visibleSecurityState.certificateSecurityState"));
+  const base::Value* security_state_issue_ids =
+      params.FindListPath("visibleSecurityState.securityStateIssueIds");
+  ASSERT_TRUE(std::find(security_state_issue_ids->GetList().begin(),
+                        security_state_issue_ids->GetList().end(),
+                        base::Value("scheme-is-not-cryptographic")) !=
+              security_state_issue_ids->GetList().end());
+}
+
+IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, VisibleSecurityStateSecureState) {
+  net::EmbeddedTestServer https_server(net::EmbeddedTestServer::TYPE_HTTPS);
+  https_server.ServeFilesFromSourceDirectory(GetChromeTestDataDir());
+  ASSERT_TRUE(https_server.Start());
+
+  ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(
+      browser(), https_server.GetURL("/title1.html"), 1);
+  content::NavigationEntry* entry =
+      web_contents()->GetController().GetLastCommittedEntry();
+  ASSERT_TRUE(entry);
+
+  // Extract SSL status data from the navigation entry.
+  scoped_refptr<net::X509Certificate> page_cert = entry->GetSSL().certificate;
+  ASSERT_TRUE(page_cert);
+
+  int ssl_version =
+      net::SSLConnectionStatusToVersion(entry->GetSSL().connection_status);
+  const char* page_protocol;
+  net::SSLVersionToString(&page_protocol, ssl_version);
+
+  const char* page_key_exchange_str;
+  const char* page_cipher;
+  const char* page_mac;
+  bool is_aead;
+  bool is_tls13;
+  uint16_t page_cipher_suite =
+      net::SSLConnectionStatusToCipherSuite(entry->GetSSL().connection_status);
+  net::SSLCipherSuiteToStrings(&page_key_exchange_str, &page_cipher, &page_mac,
+                               &is_aead, &is_tls13, page_cipher_suite);
+  std::string page_key_exchange;
+  if (page_key_exchange_str)
+    page_key_exchange = page_key_exchange_str;
+
+  const char* page_key_exchange_group =
+      SSL_get_curve_name(entry->GetSSL().key_exchange_group);
+
+  std::string page_subject_name;
+  std::string page_issuer_name;
+  double page_valid_from = 0.0;
+  double page_valid_to = 0.0;
+  if (entry->GetSSL().certificate) {
+    page_subject_name = entry->GetSSL().certificate->subject().common_name;
+    page_issuer_name = entry->GetSSL().certificate->issuer().common_name;
+    page_valid_from = entry->GetSSL().certificate->valid_start().ToDoubleT();
+    page_valid_to = entry->GetSSL().certificate->valid_expiry().ToDoubleT();
+  }
+
+  bool page_certificate_has_weak_signature =
+      (entry->GetSSL().cert_status & net::CERT_STATUS_WEAK_SIGNATURE_ALGORITHM);
+
+  int status = net::ObsoleteSSLStatus(entry->GetSSL().connection_status,
+                                      entry->GetSSL().peer_signature_algorithm);
+  bool page_modern_ssl = status == net::OBSOLETE_SSL_NONE;
+  bool page_obsolete_ssl_protocol = status & net::OBSOLETE_SSL_MASK_PROTOCOL;
+  bool page_obsolete_ssl_key_exchange =
+      status & net::OBSOLETE_SSL_MASK_KEY_EXCHANGE;
+  bool page_obsolete_ssl_cipher = status & net::OBSOLETE_SSL_MASK_CIPHER;
+  bool page_obsolete_ssl_signature = status & net::OBSOLETE_SSL_MASK_SIGNATURE;
+
+  Attach();
+  SendCommand("Security.enable");
+  auto has_certificate = [](const base::Value& params) {
+    return params.FindListPath(
+               "visibleSecurityState.certificateSecurityState.certificate") !=
+           nullptr;
+  };
+  base::Value params = WaitForMatchingNotification(
+      "Security.visibleSecurityStateChanged", base::Bind(has_certificate));
+
+  // Verify that the visibleSecurityState payload matches the SSL status data.
+  std::string* security_state =
+      params.FindStringPath("visibleSecurityState.securityState");
+  ASSERT_TRUE(security_state);
+  ASSERT_EQ(std::string("secure"), *security_state);
+
+  base::Value* certificate_security_state =
+      params.FindPath("visibleSecurityState.certificateSecurityState");
+  ASSERT_TRUE(certificate_security_state);
+
+  std::string* protocol =
+      certificate_security_state->FindStringPath("protocol");
+  ASSERT_TRUE(protocol);
+  ASSERT_EQ(*protocol, page_protocol);
+
+  std::string* key_exchange =
+      certificate_security_state->FindStringPath("keyExchange");
+  ASSERT_TRUE(key_exchange);
+  ASSERT_EQ(*key_exchange, page_key_exchange);
+
+  std::string* key_exchange_group =
+      certificate_security_state->FindStringPath("keyExchangeGroup");
+  if (key_exchange_group) {
+    ASSERT_EQ(*key_exchange_group, page_key_exchange_group);
+  }
+
+  std::string* mac = certificate_security_state->FindStringPath("mac");
+  if (mac) {
+    ASSERT_EQ(*mac, page_mac);
+  }
+
+  std::string* cipher = certificate_security_state->FindStringPath("cipher");
+  ASSERT_TRUE(cipher);
+  ASSERT_EQ(*cipher, page_cipher);
+
+  std::string* subject_name =
+      certificate_security_state->FindStringPath("subjectName");
+  ASSERT_TRUE(subject_name);
+  ASSERT_EQ(*subject_name, page_subject_name);
+
+  std::string* issuer = certificate_security_state->FindStringPath("issuer");
+  ASSERT_TRUE(issuer);
+  ASSERT_EQ(*issuer, page_issuer_name);
+
+  auto valid_from = certificate_security_state->FindDoublePath("validFrom");
+  ASSERT_TRUE(valid_from);
+  ASSERT_EQ(*valid_from, page_valid_from);
+
+  auto valid_to = certificate_security_state->FindDoublePath("validTo");
+  ASSERT_TRUE(valid_to);
+  ASSERT_EQ(*valid_to, page_valid_to);
+
+  auto certificate_has_weak_signature =
+      certificate_security_state->FindBoolPath("certifcateHasWeakSignature");
+  ASSERT_TRUE(certificate_has_weak_signature);
+  ASSERT_EQ(*certificate_has_weak_signature,
+            page_certificate_has_weak_signature);
+
+  auto modern_ssl = certificate_security_state->FindBoolPath("modernSSL");
+  ASSERT_TRUE(modern_ssl);
+  ASSERT_EQ(*modern_ssl, page_modern_ssl);
+
+  auto obsolete_ssl_protocol =
+      certificate_security_state->FindBoolPath("obsoleteSslProtocol");
+  ASSERT_TRUE(obsolete_ssl_protocol);
+  ASSERT_EQ(*obsolete_ssl_protocol, page_obsolete_ssl_protocol);
+
+  auto obsolete_ssl_key_exchange =
+      certificate_security_state->FindBoolPath("obsoleteSslKeyExchange");
+  ASSERT_TRUE(obsolete_ssl_key_exchange);
+  ASSERT_EQ(*obsolete_ssl_key_exchange, page_obsolete_ssl_key_exchange);
+
+  auto obsolete_ssl_cipher =
+      certificate_security_state->FindBoolPath("obsoleteSslCipher");
+  ASSERT_TRUE(obsolete_ssl_cipher);
+  ASSERT_EQ(*obsolete_ssl_cipher, page_obsolete_ssl_cipher);
+
+  auto obsolete_ssl_signature =
+      certificate_security_state->FindBoolPath("obsoleteSslSignature");
+  ASSERT_TRUE(obsolete_ssl_signature);
+  ASSERT_EQ(*obsolete_ssl_signature, page_obsolete_ssl_signature);
+
+  const base::Value* certificate_value =
+      certificate_security_state->FindListPath("certificate");
+  std::vector<std::string> der_certs;
+  for (const auto& cert : certificate_value->GetList()) {
+    std::string decoded;
+    ASSERT_TRUE(base::Base64Decode(cert.GetString(), &decoded));
+    der_certs.push_back(decoded);
+  }
+  std::vector<base::StringPiece> cert_string_piece;
+  for (const auto& str : der_certs) {
+    cert_string_piece.push_back(str);
+  }
+
+  // Check that the certificateSecurityState.certificate matches.
+  net::SHA256HashValue page_cert_chain_fingerprint =
+      page_cert->CalculateChainFingerprint256();
+  scoped_refptr<net::X509Certificate> certificate =
+      net::X509Certificate::CreateFromDERCertChain(cert_string_piece);
+  ASSERT_TRUE(certificate);
+  EXPECT_EQ(page_cert_chain_fingerprint,
+            certificate->CalculateChainFingerprint256());
+  const base::Value* security_state_issue_ids =
+      params.FindListPath("visibleSecurityState.securityStateIssueIds");
+  EXPECT_EQ(security_state_issue_ids->GetList().size(), 0u);
+}
diff --git a/chrome/browser/devtools/protocol/security_handler.cc b/chrome/browser/devtools/protocol/security_handler.cc
new file mode 100644
index 0000000..a9db946
--- /dev/null
+++ b/chrome/browser/devtools/protocol/security_handler.cc
@@ -0,0 +1,246 @@
+// Copyright 2019 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/devtools/protocol/security_handler.h"
+
+#include <string>
+#include <vector>
+
+#include "base/base64.h"
+#include "chrome/browser/ssl/security_state_tab_helper.h"
+#include "components/security_state/content/content_utils.h"
+#include "content/public/browser/web_contents.h"
+#include "content/public/common/origin_util.h"
+#include "net/cert/x509_certificate.h"
+#include "net/cert/x509_util.h"
+#include "net/ssl/ssl_cipher_suite_names.h"
+#include "net/ssl/ssl_connection_status_flags.h"
+#include "third_party/boringssl/src/include/openssl/ssl.h"
+
+namespace {
+
+const char kInsecureOriginSecurityStateIssueId[] = "insecure-origin";
+const char kSchemeIsNotCryptographicSecurityStateIssueId[] =
+    "scheme-is-not-cryptographic";
+const char kMalicousContentSecurityStateIssueId[] = "malicious-content";
+const char kDisplayedMixedContentSecurityStateIssueId[] =
+    "displayed-mixed-content";
+const char kContainedMixedFormSecurityStateIssueId[] = "contained-mixed-form";
+const char kRanMixedContentSecurityStateIssueId[] = "ran-mixed-content";
+const char kDisplayedContentWithCertErrorsSecurityStateIssueId[] =
+    "displayed-content-with-cert-errors";
+const char kRanContentWithCertErrorSecurityStateIssueId[] =
+    "ran-content-with-cert-error";
+const char kPkpBypassedSecurityStateIssueId[] = "pkp-bypassed";
+const char kIsErrorPageSecurityStateIssueId[] = "is-error-page";
+const char kInsecureInputEventsSecurityStateIssueId[] = "insecure-input-events";
+
+std::string SecurityLevelToProtocolSecurityState(
+    security_state::SecurityLevel security_level) {
+  switch (security_level) {
+    case security_state::NONE:
+    case security_state::WARNING:
+      return protocol::Security::SecurityStateEnum::Neutral;
+    case security_state::SECURE_WITH_POLICY_INSTALLED_CERT:
+    case security_state::EV_SECURE:
+    case security_state::SECURE:
+      return protocol::Security::SecurityStateEnum::Secure;
+    case security_state::DANGEROUS:
+      return protocol::Security::SecurityStateEnum::Insecure;
+    case security_state::SECURITY_LEVEL_COUNT:
+      NOTREACHED();
+      return protocol::Security::SecurityStateEnum::Neutral;
+  }
+
+  NOTREACHED();
+  return protocol::Security::SecurityStateEnum::Neutral;
+}
+
+std::unique_ptr<protocol::Security::CertificateSecurityState>
+CreateCertificateSecurityState(
+    const security_state::VisibleSecurityState& state) {
+  auto certificate = std::make_unique<protocol::Array<protocol::String>>();
+  if (state.certificate) {
+    certificate->emplace_back();
+    base::Base64Encode(net::x509_util::CryptoBufferAsStringPiece(
+                           state.certificate->cert_buffer()),
+                       &certificate->back());
+    for (const auto& cert : state.certificate->intermediate_buffers()) {
+      certificate->emplace_back();
+      base::Base64Encode(net::x509_util::CryptoBufferAsStringPiece(cert.get()),
+                         &certificate->back());
+    }
+  }
+
+  int ssl_version = net::SSLConnectionStatusToVersion(state.connection_status);
+  const char* protocol;
+  net::SSLVersionToString(&protocol, ssl_version);
+
+  const char* key_exchange_str;
+  const char* cipher;
+  const char* mac;
+  bool is_aead;
+  bool is_tls13;
+  uint16_t cipher_suite =
+      net::SSLConnectionStatusToCipherSuite(state.connection_status);
+  net::SSLCipherSuiteToStrings(&key_exchange_str, &cipher, &mac, &is_aead,
+                               &is_tls13, cipher_suite);
+  std::string key_exchange;
+  if (key_exchange_str)
+    key_exchange = key_exchange_str;
+
+  const char* key_exchange_group = SSL_get_curve_name(state.key_exchange_group);
+
+  std::string subject_name;
+  std::string issuer_name;
+  double valid_from = 0.0;
+  double valid_to = 0.0;
+  if (state.certificate) {
+    subject_name = state.certificate->subject().common_name;
+    issuer_name = state.certificate->issuer().common_name;
+    valid_from = state.certificate->valid_start().ToDoubleT();
+    valid_to = state.certificate->valid_expiry().ToDoubleT();
+  }
+
+  bool certificate_has_weak_signature =
+      (state.cert_status & net::CERT_STATUS_WEAK_SIGNATURE_ALGORITHM);
+
+  int status = net::ObsoleteSSLStatus(state.connection_status,
+                                      state.peer_signature_algorithm);
+  bool modern_ssl = status == net::OBSOLETE_SSL_NONE;
+  bool obsolete_ssl_protocol = status & net::OBSOLETE_SSL_MASK_PROTOCOL;
+  bool obsolete_ssl_key_exchange = status & net::OBSOLETE_SSL_MASK_KEY_EXCHANGE;
+  bool obsolete_ssl_cipher = status & net::OBSOLETE_SSL_MASK_CIPHER;
+  bool obsolete_ssl_signature = status & net::OBSOLETE_SSL_MASK_SIGNATURE;
+
+  auto certificate_security_state =
+      protocol::Security::CertificateSecurityState::Create()
+          .SetProtocol(protocol)
+          .SetKeyExchange(key_exchange)
+          .SetCipher(cipher)
+          .SetCertificate(std::move(certificate))
+          .SetSubjectName(subject_name)
+          .SetIssuer(issuer_name)
+          .SetValidFrom(valid_from)
+          .SetValidTo(valid_to)
+          .SetCertifcateHasWeakSignature(certificate_has_weak_signature)
+          .SetModernSSL(modern_ssl)
+          .SetObsoleteSslProtocol(obsolete_ssl_protocol)
+          .SetObsoleteSslKeyExchange(obsolete_ssl_key_exchange)
+          .SetObsoleteSslCipher(obsolete_ssl_cipher)
+          .SetObsoleteSslSignature(obsolete_ssl_signature)
+          .Build();
+
+  if (key_exchange_group)
+    certificate_security_state->SetKeyExchangeGroup(key_exchange_group);
+  if (mac)
+    certificate_security_state->SetMac(mac);
+
+  return certificate_security_state;
+}
+
+std::unique_ptr<protocol::Security::VisibleSecurityState>
+CreateVisibleSecurityState(const security_state::VisibleSecurityState& state,
+                           content::WebContents* web_contents) {
+  SecurityStateTabHelper* helper =
+      SecurityStateTabHelper::FromWebContents(web_contents);
+  DCHECK(helper);
+  std::string security_state =
+      SecurityLevelToProtocolSecurityState(helper->GetSecurityLevel());
+
+  bool scheme_is_cryptographic =
+      security_state::IsSchemeCryptographic(state.url);
+  bool malicious_content = state.malicious_content_status !=
+                           security_state::MALICIOUS_CONTENT_STATUS_NONE;
+  bool insecure_input_events =
+      state.insecure_input_events.insecure_field_edited;
+
+  bool secure_origin = scheme_is_cryptographic;
+  if (!scheme_is_cryptographic)
+    secure_origin = content::IsOriginSecure(state.url);
+
+  std::vector<std::string> security_state_issue_ids;
+  if (!secure_origin)
+    security_state_issue_ids.push_back(kInsecureOriginSecurityStateIssueId);
+  if (!scheme_is_cryptographic)
+    security_state_issue_ids.push_back(
+        kSchemeIsNotCryptographicSecurityStateIssueId);
+  if (malicious_content)
+    security_state_issue_ids.push_back(kMalicousContentSecurityStateIssueId);
+  if (state.displayed_mixed_content)
+    security_state_issue_ids.push_back(
+        kDisplayedMixedContentSecurityStateIssueId);
+  if (state.contained_mixed_form)
+    security_state_issue_ids.push_back(kContainedMixedFormSecurityStateIssueId);
+  if (state.ran_mixed_content)
+    security_state_issue_ids.push_back(kRanMixedContentSecurityStateIssueId);
+  if (state.displayed_content_with_cert_errors)
+    security_state_issue_ids.push_back(
+        kDisplayedContentWithCertErrorsSecurityStateIssueId);
+  if (state.ran_content_with_cert_errors)
+    security_state_issue_ids.push_back(
+        kRanContentWithCertErrorSecurityStateIssueId);
+  if (state.pkp_bypassed)
+    security_state_issue_ids.push_back(kPkpBypassedSecurityStateIssueId);
+  if (state.is_error_page)
+    security_state_issue_ids.push_back(kIsErrorPageSecurityStateIssueId);
+  if (insecure_input_events)
+    security_state_issue_ids.push_back(
+        kInsecureInputEventsSecurityStateIssueId);
+
+  auto visible_security_state =
+      protocol::Security::VisibleSecurityState::Create()
+          .SetSecurityState(security_state)
+          .SetSecurityStateIssueIds(
+              std::make_unique<protocol::Array<std::string>>(
+                  security_state_issue_ids))
+          .Build();
+
+  if (state.connection_status != 0) {
+    auto certificate_security_state = CreateCertificateSecurityState(state);
+    visible_security_state->SetCertificateSecurityState(
+        std::move(certificate_security_state));
+  }
+  return visible_security_state;
+}
+
+}  // namespace
+
+SecurityHandler::SecurityHandler(content::WebContents* web_contents,
+                                 protocol::UberDispatcher* dispatcher)
+    : content::WebContentsObserver(web_contents) {
+  DCHECK(web_contents);
+  frontend_ =
+      std::make_unique<protocol::Security::Frontend>(dispatcher->channel());
+  protocol::Security::Dispatcher::wire(dispatcher, this);
+}
+
+SecurityHandler::~SecurityHandler() {}
+
+protocol::Response SecurityHandler::Enable() {
+  if (enabled_)
+    return protocol::Response::FallThrough();
+  enabled_ = true;
+  DidChangeVisibleSecurityState();
+  // Do not mark the command as handled. Let it fall through instead, so that
+  // the handler in content gets a chance to process the command.
+  return protocol::Response::FallThrough();
+}
+
+protocol::Response SecurityHandler::Disable() {
+  enabled_ = false;
+  // Do not mark the command as handled. Let it fall through instead, so that
+  // the handler in content gets a chance to process the command.
+  return protocol::Response::FallThrough();
+}
+
+void SecurityHandler::DidChangeVisibleSecurityState() {
+  if (!enabled_)
+    return;
+
+  auto state = security_state::GetVisibleSecurityState(web_contents());
+  auto visible_security_state =
+      CreateVisibleSecurityState(*state.get(), web_contents());
+  frontend_->VisibleSecurityStateChanged(std::move(visible_security_state));
+}
diff --git a/chrome/browser/devtools/protocol/security_handler.h b/chrome/browser/devtools/protocol/security_handler.h
new file mode 100644
index 0000000..e4f3c88
--- /dev/null
+++ b/chrome/browser/devtools/protocol/security_handler.h
@@ -0,0 +1,37 @@
+// Copyright 2019 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_DEVTOOLS_PROTOCOL_SECURITY_HANDLER_H_
+#define CHROME_BROWSER_DEVTOOLS_PROTOCOL_SECURITY_HANDLER_H_
+
+#include "chrome/browser/devtools/protocol/forward.h"
+#include "chrome/browser/devtools/protocol/security.h"
+#include "content/public/browser/web_contents_observer.h"
+
+namespace content {
+class WebContents;
+}  // namespace content
+
+class SecurityHandler : public protocol::Security::Backend,
+                        public content::WebContentsObserver {
+ public:
+  SecurityHandler(content::WebContents* web_contents,
+                  protocol::UberDispatcher* dispatcher);
+  ~SecurityHandler() override;
+
+  // Security::Backend:
+  protocol::Response Enable() override;
+  protocol::Response Disable() override;
+
+ private:
+  // WebContentsObserver overrides
+  void DidChangeVisibleSecurityState() override;
+
+  bool enabled_ = false;
+  std::unique_ptr<protocol::Security::Frontend> frontend_;
+
+  DISALLOW_COPY_AND_ASSIGN(SecurityHandler);
+};
+
+#endif  // CHROME_BROWSER_DEVTOOLS_PROTOCOL_SECURITY_HANDLER_H_
diff --git a/chrome/browser/dom_distiller/distillable_page_utils_browsertest.cc b/chrome/browser/dom_distiller/distillable_page_utils_browsertest.cc
index 9187ce2c..0df4f31 100644
--- a/chrome/browser/dom_distiller/distillable_page_utils_browsertest.cc
+++ b/chrome/browser/dom_distiller/distillable_page_utils_browsertest.cc
@@ -33,10 +33,6 @@
 using ::testing::Not;
 using ::testing::Optional;
 
-// This is essentially an "enum" with human-readable strings (e.g. "adaboost",
-// "none") as values.
-using namespace switches::reader_mode_heuristics;  // NOLINT
-
 const char kSimpleArticlePath[] = "/dom_distiller/simple_article.html";
 const char kSimpleArticleIFramePath[] =
     "/dom_distiller/simple_article_iframe.html";
@@ -68,7 +64,7 @@
 }  // namespace
 
 template <const char Option[]>
-class DistillablePageUtilsBrowserTestOption : public InProcessBrowserTest {
+class TestOption : public InProcessBrowserTest {
  public:
   void SetUpCommandLine(base::CommandLine* command_line) override {
     command_line->AppendSwitch(switches::kEnableDomDistiller);
@@ -130,15 +126,14 @@
 }
 
 using DistillablePageUtilsBrowserTestAlways =
-    DistillablePageUtilsBrowserTestOption<kAlwaysTrue>;
+    TestOption<switches::reader_mode_heuristics::kAlwaysTrue>;
 
 IN_PROC_BROWSER_TEST_F(DistillablePageUtilsBrowserTestAlways,
                        AllRealPathsCallObserverOnceWithIsDistillable) {
   for (unsigned i = 0; i < sizeof(kAllPaths) / sizeof(kAllPaths[0]); ++i) {
     testing::InSequence dummy;
     EXPECT_CALL(holder_, OnResult(AllOf(IsDistillable(), IsLast())))
-        .WillOnce(testing::InvokeWithoutArgs(
-            this, &DistillablePageUtilsBrowserTestOption::QuitSoon));
+        .WillOnce(testing::InvokeWithoutArgs(this, &TestOption::QuitSoon));
     NavigateAndWait(kAllPaths[i], base::TimeDelta());
     EXPECT_THAT(GetLatestResult(web_contents_),
                 Optional(AllOf(IsDistillable(), IsLast())));
@@ -153,7 +148,7 @@
 }
 
 using DistillablePageUtilsBrowserTestNone =
-    DistillablePageUtilsBrowserTestOption<kNone>;
+    TestOption<switches::reader_mode_heuristics::kNone>;
 
 IN_PROC_BROWSER_TEST_F(DistillablePageUtilsBrowserTestNone, NeverCallObserver) {
   EXPECT_CALL(holder_, OnResult(_)).Times(0);
@@ -162,13 +157,12 @@
 }
 
 using DistillablePageUtilsBrowserTestOGArticle =
-    DistillablePageUtilsBrowserTestOption<kOGArticle>;
+    TestOption<switches::reader_mode_heuristics::kOGArticle>;
 
 IN_PROC_BROWSER_TEST_F(DistillablePageUtilsBrowserTestOGArticle,
                        ArticlesCallObserverOnceWithIsDistillable) {
   EXPECT_CALL(holder_, OnResult(AllOf(IsDistillable(), IsLast())))
-      .WillOnce(testing::InvokeWithoutArgs(
-          this, &DistillablePageUtilsBrowserTestOption::QuitSoon));
+      .WillOnce(testing::InvokeWithoutArgs(this, &TestOption::QuitSoon));
   NavigateAndWait(kArticlePath, base::TimeDelta());
   EXPECT_THAT(GetLatestResult(web_contents_),
               Optional(AllOf(IsDistillable(), IsLast())));
@@ -177,15 +171,14 @@
 IN_PROC_BROWSER_TEST_F(DistillablePageUtilsBrowserTestOGArticle,
                        NonArticleCallsObserverOnceWithIsNotDistillable) {
   EXPECT_CALL(holder_, OnResult(AllOf(Not(IsDistillable()), IsLast())))
-      .WillOnce(testing::InvokeWithoutArgs(
-          this, &DistillablePageUtilsBrowserTestOption::QuitSoon));
+      .WillOnce(testing::InvokeWithoutArgs(this, &TestOption::QuitSoon));
   NavigateAndWait(kNonArticlePath, base::TimeDelta());
   EXPECT_THAT(GetLatestResult(web_contents_),
               Optional(AllOf(Not(IsDistillable()), IsLast())));
 }
 
 using DistillablePageUtilsBrowserTestAdaboost =
-    DistillablePageUtilsBrowserTestOption<kAdaBoost>;
+    TestOption<switches::reader_mode_heuristics::kAdaBoost>;
 
 IN_PROC_BROWSER_TEST_F(DistillablePageUtilsBrowserTestAdaboost,
                        SimpleArticlesCallObserverTwiceWithIsDistillable) {
@@ -197,8 +190,7 @@
         .Times(1);
     EXPECT_CALL(holder_, OnResult(AllOf(IsDistillable(), IsLast(),
                                         Not(IsMobileFriendly()))))
-        .WillOnce(testing::InvokeWithoutArgs(
-            this, &DistillablePageUtilsBrowserTestOption::QuitSoon));
+        .WillOnce(testing::InvokeWithoutArgs(this, &TestOption::QuitSoon));
     NavigateAndWait(paths[i], base::TimeDelta());
 
     EXPECT_THAT(
@@ -215,8 +207,7 @@
       .Times(1);
   EXPECT_CALL(holder_, OnResult(AllOf(Not(IsDistillable()), IsLast(),
                                       Not(IsMobileFriendly()))))
-      .WillOnce(testing::InvokeWithoutArgs(
-          this, &DistillablePageUtilsBrowserTestOption::QuitSoon));
+      .WillOnce(testing::InvokeWithoutArgs(this, &TestOption::QuitSoon));
   NavigateAndWait(kNonArticlePath, base::TimeDelta());
   EXPECT_THAT(
       GetLatestResult(web_contents_),
@@ -224,7 +215,7 @@
 }
 
 using DistillablePageUtilsBrowserTestAllArticles =
-    DistillablePageUtilsBrowserTestOption<kAllArticles>;
+    TestOption<switches::reader_mode_heuristics::kAllArticles>;
 
 IN_PROC_BROWSER_TEST_F(DistillablePageUtilsBrowserTestAllArticles,
                        SimpleArticlesCallObserverTwiceWithIsDistillable) {
@@ -236,8 +227,7 @@
         .Times(1);
     EXPECT_CALL(holder_, OnResult(AllOf(IsDistillable(), IsLast(),
                                         Not(IsMobileFriendly()))))
-        .WillOnce(testing::InvokeWithoutArgs(
-            this, &DistillablePageUtilsBrowserTestOption::QuitSoon));
+        .WillOnce(testing::InvokeWithoutArgs(this, &TestOption::QuitSoon));
     NavigateAndWait(paths[i], base::TimeDelta());
     EXPECT_THAT(
         GetLatestResult(web_contents_),
@@ -253,8 +243,7 @@
       .Times(1);
   EXPECT_CALL(holder_, OnResult(AllOf(Not(IsDistillable()), IsLast(),
                                       Not(IsMobileFriendly()))))
-      .WillOnce(testing::InvokeWithoutArgs(
-          this, &DistillablePageUtilsBrowserTestOption::QuitSoon));
+      .WillOnce(testing::InvokeWithoutArgs(this, &TestOption::QuitSoon));
   NavigateAndWait(kNonArticlePath, base::TimeDelta());
   EXPECT_THAT(
       GetLatestResult(web_contents_),
diff --git a/chrome/browser/download/chrome_download_manager_delegate_unittest.cc b/chrome/browser/download/chrome_download_manager_delegate_unittest.cc
index 03bd783..90fe46b 100644
--- a/chrome/browser/download/chrome_download_manager_delegate_unittest.cc
+++ b/chrome/browser/download/chrome_download_manager_delegate_unittest.cc
@@ -851,14 +851,7 @@
 }
 
 #if defined(OS_ANDROID)
-#if defined(DISABLE_OFFLINE_PAGES_TOUCHLESS)
-#define MAYBE_InterceptDownloadByOfflinePages \
-  DISABLED_InterceptDownloadByOfflinePages
-#else
-#define MAYBE_InterceptDownloadByOfflinePages InterceptDownloadByOfflinePages
-#endif
-TEST_F(ChromeDownloadManagerDelegateTest,
-       MAYBE_InterceptDownloadByOfflinePages) {
+TEST_F(ChromeDownloadManagerDelegateTest, InterceptDownloadByOfflinePages) {
   const GURL kUrl("http://example.com/foo");
   std::string mime_type = "text/html";
   bool should_intercept = delegate()->InterceptDownloadIfApplicable(
diff --git a/chrome/browser/enterprise_reporting/extension_info.cc b/chrome/browser/enterprise_reporting/extension_info.cc
index 5e8345e..edafcb5 100644
--- a/chrome/browser/enterprise_reporting/extension_info.cc
+++ b/chrome/browser/enterprise_reporting/extension_info.cc
@@ -10,81 +10,81 @@
 #include "extensions/common/manifest_url_handlers.h"
 #include "extensions/common/permissions/permissions_data.h"
 
-namespace em = enterprise_management;
-
 namespace enterprise_reporting {
 
-using namespace extensions;
-
 namespace {
 
-em::Extension_ExtensionType GetExtensionType(Manifest::Type extension_type) {
+enterprise_management::Extension_ExtensionType GetExtensionType(
+    extensions::Manifest::Type extension_type) {
   switch (extension_type) {
-    case Manifest::TYPE_UNKNOWN:
-    case Manifest::TYPE_SHARED_MODULE:
-      return em::Extension_ExtensionType_TYPE_UNKNOWN;
-    case Manifest::TYPE_EXTENSION:
-      return em::Extension_ExtensionType_TYPE_EXTENSION;
-    case Manifest::TYPE_THEME:
-      return em::Extension_ExtensionType_TYPE_THEME;
-    case Manifest::TYPE_USER_SCRIPT:
-      return em::Extension_ExtensionType_TYPE_USER_SCRIPT;
-    case Manifest::TYPE_HOSTED_APP:
-      return em::Extension_ExtensionType_TYPE_HOSTED_APP;
-    case Manifest::TYPE_LEGACY_PACKAGED_APP:
-      return em::Extension_ExtensionType_TYPE_LEGACY_PACKAGED_APP;
-    case Manifest::TYPE_PLATFORM_APP:
-      return em::Extension_ExtensionType_TYPE_PLATFORM_APP;
-    case Manifest::TYPE_LOGIN_SCREEN_EXTENSION:
-      return em::Extension_ExtensionType_TYPE_LOGIN_SCREEN_EXTENSION;
-    case Manifest::NUM_LOAD_TYPES:
+    case extensions::Manifest::TYPE_UNKNOWN:
+    case extensions::Manifest::TYPE_SHARED_MODULE:
+      return enterprise_management::Extension_ExtensionType_TYPE_UNKNOWN;
+    case extensions::Manifest::TYPE_EXTENSION:
+      return enterprise_management::Extension_ExtensionType_TYPE_EXTENSION;
+    case extensions::Manifest::TYPE_THEME:
+      return enterprise_management::Extension_ExtensionType_TYPE_THEME;
+    case extensions::Manifest::TYPE_USER_SCRIPT:
+      return enterprise_management::Extension_ExtensionType_TYPE_USER_SCRIPT;
+    case extensions::Manifest::TYPE_HOSTED_APP:
+      return enterprise_management::Extension_ExtensionType_TYPE_HOSTED_APP;
+    case extensions::Manifest::TYPE_LEGACY_PACKAGED_APP:
+      return enterprise_management::
+          Extension_ExtensionType_TYPE_LEGACY_PACKAGED_APP;
+    case extensions::Manifest::TYPE_PLATFORM_APP:
+      return enterprise_management::Extension_ExtensionType_TYPE_PLATFORM_APP;
+    case extensions::Manifest::TYPE_LOGIN_SCREEN_EXTENSION:
+      return enterprise_management::
+          Extension_ExtensionType_TYPE_LOGIN_SCREEN_EXTENSION;
+    case extensions::Manifest::NUM_LOAD_TYPES:
       NOTREACHED();
-      return em::Extension_ExtensionType_TYPE_UNKNOWN;
+      return enterprise_management::Extension_ExtensionType_TYPE_UNKNOWN;
   }
 }
 
-em::Extension_InstallType GetExtensionInstallType(
-    Manifest::Location extension_location) {
+enterprise_management::Extension_InstallType GetExtensionInstallType(
+    extensions::Manifest::Location extension_location) {
   switch (extension_location) {
-    case Manifest::INTERNAL:
-      return em::Extension_InstallType_TYPE_NORMAL;
-    case Manifest::UNPACKED:
-    case Manifest::COMMAND_LINE:
-      return em::Extension_InstallType_TYPE_DEVELOPMENT;
-    case Manifest::EXTERNAL_PREF:
-    case Manifest::EXTERNAL_REGISTRY:
-    case Manifest::EXTERNAL_PREF_DOWNLOAD:
-      return em::Extension_InstallType_TYPE_SIDELOAD;
-    case Manifest::EXTERNAL_POLICY:
-    case Manifest::EXTERNAL_POLICY_DOWNLOAD:
-      return em::Extension_InstallType_TYPE_ADMIN;
-    case Manifest::NUM_LOCATIONS:
+    case extensions::Manifest::INTERNAL:
+      return enterprise_management::Extension_InstallType_TYPE_NORMAL;
+    case extensions::Manifest::UNPACKED:
+    case extensions::Manifest::COMMAND_LINE:
+      return enterprise_management::Extension_InstallType_TYPE_DEVELOPMENT;
+    case extensions::Manifest::EXTERNAL_PREF:
+    case extensions::Manifest::EXTERNAL_REGISTRY:
+    case extensions::Manifest::EXTERNAL_PREF_DOWNLOAD:
+      return enterprise_management::Extension_InstallType_TYPE_SIDELOAD;
+    case extensions::Manifest::EXTERNAL_POLICY:
+    case extensions::Manifest::EXTERNAL_POLICY_DOWNLOAD:
+      return enterprise_management::Extension_InstallType_TYPE_ADMIN;
+    case extensions::Manifest::NUM_LOCATIONS:
       NOTREACHED();
       FALLTHROUGH;
-    case Manifest::INVALID_LOCATION:
-    case Manifest::COMPONENT:
-    case Manifest::EXTERNAL_COMPONENT:
-      return em::Extension_InstallType_TYPE_OTHER;
+    case extensions::Manifest::INVALID_LOCATION:
+    case extensions::Manifest::COMPONENT:
+    case extensions::Manifest::EXTERNAL_COMPONENT:
+      return enterprise_management::Extension_InstallType_TYPE_OTHER;
   }
 }
 
-void AddPermission(const Extension* extension, em::Extension* extension_info) {
+void AddPermission(const extensions::Extension* extension,
+                   enterprise_management::Extension* extension_info) {
   for (const std::string& permission :
        extension->permissions_data()->active_permissions().GetAPIsAsStrings()) {
     extension_info->add_permissions(permission);
   }
 }
 
-void AddHostPermission(const Extension* extension,
-                       em::Extension* extension_info) {
+void AddHostPermission(const extensions::Extension* extension,
+                       enterprise_management::Extension* extension_info) {
   for (const auto& url :
        extension->permissions_data()->active_permissions().explicit_hosts()) {
     extension_info->add_host_permissions(url.GetAsString());
   }
 }
 
-void AddExtensions(const ExtensionSet& extensions,
-                   em::ChromeUserProfileInfo* profile_info,
+void AddExtensions(const extensions::ExtensionSet& extensions,
+                   enterprise_management::ChromeUserProfileInfo* profile_info,
                    bool enabled) {
   for (const auto& extension : extensions) {
     // Skip the component extension.
@@ -98,7 +98,7 @@
     extension_info->set_description(extension->description());
     extension_info->set_app_type(GetExtensionType(extension->GetType()));
     extension_info->set_homepage_url(
-        ManifestURL::GetHomepageURL(extension.get()).spec());
+        extensions::ManifestURL::GetHomepageURL(extension.get()).spec());
     extension_info->set_install_type(
         GetExtensionInstallType(extension->location()));
     extension_info->set_enabled(enabled);
@@ -111,8 +111,8 @@
 
 void AppendExtensionInfoIntoProfileReport(
     Profile* profile,
-    em::ChromeUserProfileInfo* profile_info) {
-  ExtensionRegistry* registry = ExtensionRegistry::Get(profile);
+    enterprise_management::ChromeUserProfileInfo* profile_info) {
+  auto* registry = extensions::ExtensionRegistry::Get(profile);
   AddExtensions(registry->enabled_extensions(), profile_info, true);
   AddExtensions(registry->disabled_extensions(), profile_info, false);
   AddExtensions(registry->terminated_extensions(), profile_info, false);
diff --git a/chrome/browser/enterprise_reporting/policy_info.cc b/chrome/browser/enterprise_reporting/policy_info.cc
index 505ce06..b05767d 100644
--- a/chrome/browser/enterprise_reporting/policy_info.cc
+++ b/chrome/browser/enterprise_reporting/policy_info.cc
@@ -18,15 +18,13 @@
 
 namespace enterprise_reporting {
 
-using namespace policy;
-
 namespace {
 
 em::Policy_PolicyLevel GetLevel(const base::Value& policy) {
-  switch (static_cast<PolicyLevel>(*policy.FindIntKey("level"))) {
-    case POLICY_LEVEL_RECOMMENDED:
+  switch (static_cast<policy::PolicyLevel>(*policy.FindIntKey("level"))) {
+    case policy::POLICY_LEVEL_RECOMMENDED:
       return em::Policy_PolicyLevel_LEVEL_RECOMMENDED;
-    case POLICY_LEVEL_MANDATORY:
+    case policy::POLICY_LEVEL_MANDATORY:
       return em::Policy_PolicyLevel_LEVEL_MANDATORY;
   }
   NOTREACHED() << "Invalid policy level: " << *policy.FindIntKey("level");
@@ -34,10 +32,10 @@
 }
 
 em::Policy_PolicyScope GetScope(const base::Value& policy) {
-  switch (static_cast<PolicyScope>(*policy.FindIntKey("scope"))) {
-    case POLICY_SCOPE_USER:
+  switch (static_cast<policy::PolicyScope>(*policy.FindIntKey("scope"))) {
+    case policy::POLICY_SCOPE_USER:
       return em::Policy_PolicyScope_SCOPE_USER;
-    case POLICY_SCOPE_MACHINE:
+    case policy::POLICY_SCOPE_MACHINE:
       return em::Policy_PolicyScope_SCOPE_MACHINE;
   }
   NOTREACHED() << "Invalid policy scope: " << *policy.FindIntKey("scope");
@@ -45,22 +43,22 @@
 }
 
 em::Policy_PolicySource GetSource(const base::Value& policy) {
-  switch (static_cast<PolicySource>(*policy.FindIntKey("source"))) {
-    case POLICY_SOURCE_ENTERPRISE_DEFAULT:
+  switch (static_cast<policy::PolicySource>(*policy.FindIntKey("source"))) {
+    case policy::POLICY_SOURCE_ENTERPRISE_DEFAULT:
       return em::Policy_PolicySource_SOURCE_ENTERPRISE_DEFAULT;
-    case POLICY_SOURCE_CLOUD:
+    case policy::POLICY_SOURCE_CLOUD:
       return em::Policy_PolicySource_SOURCE_CLOUD;
-    case POLICY_SOURCE_ACTIVE_DIRECTORY:
+    case policy::POLICY_SOURCE_ACTIVE_DIRECTORY:
       return em::Policy_PolicySource_SOURCE_ACTIVE_DIRECTORY;
-    case POLICY_SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE:
+    case policy::POLICY_SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE:
       return em::Policy_PolicySource_SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE;
-    case POLICY_SOURCE_PLATFORM:
+    case policy::POLICY_SOURCE_PLATFORM:
       return em::Policy_PolicySource_SOURCE_PLATFORM;
-    case POLICY_SOURCE_PRIORITY_CLOUD:
+    case policy::POLICY_SOURCE_PRIORITY_CLOUD:
       return em::Policy_PolicySource_SOURCE_PRIORITY_CLOUD;
-    case POLICY_SOURCE_MERGED:
+    case policy::POLICY_SOURCE_MERGED:
       return em::Policy_PolicySource_SOURCE_MERGED;
-    case POLICY_SOURCE_COUNT:
+    case policy::POLICY_SOURCE_COUNT:
       NOTREACHED();
       return em::Policy_PolicySource_SOURCE_UNKNOWN;
   }
@@ -114,13 +112,14 @@
 void AppendMachineLevelUserCloudPolicyFetchTimestamp(
     em::ChromeUserProfileInfo* profile_info) {
 #if !defined(OS_CHROMEOS)
-  MachineLevelUserCloudPolicyManager* manager =
+  policy::MachineLevelUserCloudPolicyManager* manager =
       g_browser_process->browser_policy_connector()
           ->machine_level_user_cloud_policy_manager();
   if (!manager || !manager->IsClientRegistered())
     return;
   auto* timestamp = profile_info->add_policy_fetched_timestamps();
-  timestamp->set_type(dm_protocol::kChromeMachineLevelExtensionCloudPolicyType);
+  timestamp->set_type(
+      policy::dm_protocol::kChromeMachineLevelExtensionCloudPolicyType);
   timestamp->set_timestamp(
       manager->core()->client()->last_policy_timestamp().ToJavaTime());
 #endif
diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUILD.gn
index dd9fbcd..72c0f76 100644
--- a/chrome/browser/extensions/BUILD.gn
+++ b/chrome/browser/extensions/BUILD.gn
@@ -823,6 +823,7 @@
     "//components/password_manager/core/browser:affiliation",
     "//components/payments/core",
     "//components/pdf/browser",
+    "//components/performance_manager",
     "//components/policy:generated",
     "//components/policy/core/browser",
     "//components/pref_registry",
diff --git a/chrome/browser/extensions/api/chrome_extensions_api_client.cc b/chrome/browser/extensions/api/chrome_extensions_api_client.cc
index 4db7f5c..10b8986f 100644
--- a/chrome/browser/extensions/api/chrome_extensions_api_client.cc
+++ b/chrome/browser/extensions/api/chrome_extensions_api_client.cc
@@ -39,8 +39,6 @@
 #include "chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.h"
 #include "chrome/browser/guest_view/web_view/chrome_web_view_guest_delegate.h"
 #include "chrome/browser/guest_view/web_view/chrome_web_view_permission_helper_delegate.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
 #include "chrome/browser/search/instant_service.h"
 #include "chrome/browser/search/instant_service_factory.h"
 #include "chrome/browser/ui/pdf/chrome_pdf_web_contents_helper_client.h"
@@ -48,6 +46,8 @@
 #include "chrome/common/url_constants.h"
 #include "chrome/common/webui_url_constants.h"
 #include "components/pdf/browser/pdf_web_contents_helper.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/public/performance_manager.h"
 #include "components/signin/core/browser/signin_header_helper.h"
 #include "content/public/browser/browser_context.h"
 #include "content/public/browser/browser_task_traits.h"
diff --git a/chrome/browser/extensions/api/commands/command_service.cc b/chrome/browser/extensions/api/commands/command_service.cc
index 1bba6ab..6760176 100644
--- a/chrome/browser/extensions/api/commands/command_service.cc
+++ b/chrome/browser/extensions/api/commands/command_service.cc
@@ -552,7 +552,6 @@
     return true;
 
   if (command.global()) {
-    using namespace extensions;
     if (command.command_name() == manifest_values::kBrowserActionCommandEvent ||
         command.command_name() == manifest_values::kPageActionCommandEvent)
       return false;  // Browser and page actions are not global in nature.
diff --git a/chrome/browser/extensions/api/cryptotoken_private/cryptotoken_private_api_unittest.cc b/chrome/browser/extensions/api/cryptotoken_private/cryptotoken_private_api_unittest.cc
index a96cf26..092a999 100644
--- a/chrome/browser/extensions/api/cryptotoken_private/cryptotoken_private_api_unittest.cc
+++ b/chrome/browser/extensions/api/cryptotoken_private/cryptotoken_private_api_unittest.cc
@@ -23,14 +23,10 @@
 #include "extensions/browser/extension_function_dispatcher.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
-using crypto::SHA256HashString;
-
 namespace extensions {
 
 namespace {
 
-using namespace api::cryptotoken_private;
-
 bool GetSingleBooleanResult(ExtensionFunction* function, bool* result) {
   const base::ListValue* result_list = function->GetResultList();
   if (!result_list) {
@@ -133,9 +129,9 @@
 
 TEST_F(CryptoTokenPrivateApiTest, IsAppIdHashInEnterpriseContext) {
   const std::string example_com("https://example.com/");
-  const std::string example_com_hash(SHA256HashString(example_com));
-  const std::string rp_id_hash(SHA256HashString("example.com"));
-  const std::string foo_com_hash(SHA256HashString("https://foo.com/"));
+  const std::string example_com_hash(crypto::SHA256HashString(example_com));
+  const std::string rp_id_hash(crypto::SHA256HashString("example.com"));
+  const std::string foo_com_hash(crypto::SHA256HashString("https://foo.com/"));
 
   bool result;
   ASSERT_TRUE(GetAppIdHashInEnterpriseContext(example_com_hash, &result));
diff --git a/chrome/browser/extensions/api/image_writer_private/removable_storage_provider_chromeos_unittest.cc b/chrome/browser/extensions/api/image_writer_private/removable_storage_provider_chromeos_unittest.cc
index 431c9e43..af1d4c4 100644
--- a/chrome/browser/extensions/api/image_writer_private/removable_storage_provider_chromeos_unittest.cc
+++ b/chrome/browser/extensions/api/image_writer_private/removable_storage_provider_chromeos_unittest.cc
@@ -15,9 +15,6 @@
 
 namespace {
 
-using namespace chromeos::disks;
-using namespace api::image_writer_private;
-
 const char kDevicePathUSB[] = "/dev/test-usb";
 const char kDevicePathSD[] = "/dev/test-sd";
 const char kMountPath[] = "/test-mount";
@@ -36,12 +33,13 @@
  public:
   RemovableStorageProviderChromeOsUnitTest() {}
   void SetUp() override {
-    disk_mount_manager_mock_ = new MockDiskMountManager();
-    DiskMountManager::InitializeForTesting(disk_mount_manager_mock_);
+    disk_mount_manager_mock_ = new chromeos::disks::MockDiskMountManager();
+    chromeos::disks::DiskMountManager::InitializeForTesting(
+        disk_mount_manager_mock_);
     disk_mount_manager_mock_->SetupDefaultReplies();
   }
 
-  void TearDown() override { DiskMountManager::Shutdown(); }
+  void TearDown() override { chromeos::disks::DiskMountManager::Shutdown(); }
 
   void DevicesCallback(scoped_refptr<StorageDeviceList> devices) {
     devices_ = devices;
@@ -68,10 +66,8 @@
                   bool is_parent,
                   bool has_media,
                   bool on_boot_device) {
-    DiskMountManager::MountPointInfo mount_info(
-        device_path,
-        kMountPath,
-        chromeos::MOUNT_TYPE_DEVICE,
+    chromeos::disks::DiskMountManager::MountPointInfo mount_info(
+        device_path, kMountPath, chromeos::MOUNT_TYPE_DEVICE,
         chromeos::disks::MOUNT_CONDITION_NONE);
     disk_mount_manager_mock_->CreateDiskEntryForMountDevice(
         mount_info, kDeviceId, kDeviceName, vendor_name, product_name,
@@ -80,13 +76,14 @@
   }
 
   // Checks if the DeviceList has a specific entry.
-  RemovableStorageDevice* FindDevice(StorageDeviceList* list,
-                                     const std::string& file_path) {
-    for (RemovableStorageDevice& device : list->data) {
+  api::image_writer_private::RemovableStorageDevice* FindDevice(
+      StorageDeviceList* list,
+      const std::string& file_path) {
+    for (auto& device : list->data) {
       if (device.storage_unit_id == file_path)
         return &device;
     }
-    return NULL;
+    return nullptr;
   }
 
   void ExpectDevice(StorageDeviceList* list,
@@ -94,9 +91,9 @@
                     const std::string& vendor,
                     const std::string& model,
                     uint64_t capacity) {
-    RemovableStorageDevice* device = FindDevice(devices_.get(), device_path);
+    auto* device = FindDevice(devices_.get(), device_path);
 
-    ASSERT_TRUE(device != NULL);
+    ASSERT_TRUE(device);
 
     EXPECT_EQ(device_path, device->storage_unit_id);
     EXPECT_EQ(vendor, device->vendor);
@@ -105,7 +102,7 @@
   }
 
   content::BrowserTaskEnvironment task_environment_;
-  MockDiskMountManager* disk_mount_manager_mock_;
+  chromeos::disks::MockDiskMountManager* disk_mount_manager_mock_;
   scoped_refptr<StorageDeviceList> devices_;
 };
 
diff --git a/chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router.cc b/chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router.cc
index f094c57..48363ce 100644
--- a/chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router.cc
+++ b/chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router.cc
@@ -339,10 +339,10 @@
 
 void SafeBrowsingPrivateEventRouter::InitRealtimeReportingClient() {
 #if !defined(OS_CHROMEOS)
-  // This method is not compiled on chromeos because
-  // MachineLevelUserCloudPolicyController does not exist.  Also,
-  // policy::BrowserDMTokenStorage::Get()->RetrieveDMToken() does return a
-  // valid token either.  Once these are fixed the #if !define can be removed.
+  // This method is not compiled on Chrome OS because
+  // MachineLevelUserCloudPolicyController does not exist. Also,
+  // policy::BrowserDMTokenStorage::Get()->RetrieveDMToken() doesn't return a
+  // valid token either. Once these are fixed the #if !defined can be removed.
 
   if (!policy::MachineLevelUserCloudPolicyController::
           IsMachineLevelUserCloudPolicyEnabled()) {
diff --git a/chrome/browser/extensions/chrome_extension_host_delegate.cc b/chrome/browser/extensions/chrome_extension_host_delegate.cc
index ee85f5c..a7abcb88 100644
--- a/chrome/browser/extensions/chrome_extension_host_delegate.cc
+++ b/chrome/browser/extensions/chrome_extension_host_delegate.cc
@@ -14,11 +14,11 @@
 #include "chrome/browser/extensions/extension_service.h"
 #include "chrome/browser/extensions/extension_tab_util.h"
 #include "chrome/browser/media/webrtc/media_capture_devices_dispatcher.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
 #include "chrome/browser/picture_in_picture/picture_in_picture_window_manager.h"
 #include "chrome/browser/ui/prefs/prefs_tab_helper.h"
 #include "components/app_modal/javascript_dialog_manager.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/public/performance_manager.h"
 #include "extensions/browser/extension_host.h"
 #include "extensions/browser/extension_system.h"
 #include "extensions/browser/load_monitoring_extension_host_queue.h"
diff --git a/chrome/browser/extensions/extension_view_host.cc b/chrome/browser/extensions/extension_view_host.cc
index 6008b981..991aa432 100644
--- a/chrome/browser/extensions/extension_view_host.cc
+++ b/chrome/browser/extensions/extension_view_host.cc
@@ -12,14 +12,14 @@
 #include "chrome/browser/extensions/extension_view.h"
 #include "chrome/browser/extensions/window_controller.h"
 #include "chrome/browser/file_select_helper.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
 #include "chrome/browser/platform_util.h"
 #include "chrome/browser/ui/autofill/chrome_autofill_client.h"
 #include "chrome/browser/ui/browser.h"
 #include "chrome/browser/ui/color_chooser.h"
 #include "components/autofill/content/browser/content_autofill_driver_factory.h"
 #include "components/autofill/core/browser/autofill_manager.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/public/performance_manager.h"
 #include "components/web_modal/web_contents_modal_dialog_manager.h"
 #include "content/public/browser/file_select_listener.h"
 #include "content/public/browser/keyboard_event_processing_result.h"
diff --git a/chrome/browser/extensions/external_provider_impl_unittest.cc b/chrome/browser/extensions/external_provider_impl_unittest.cc
index 54a536a0..99085dc 100644
--- a/chrome/browser/extensions/external_provider_impl_unittest.cc
+++ b/chrome/browser/extensions/external_provider_impl_unittest.cc
@@ -44,16 +44,10 @@
 #include "components/user_manager/scoped_user_manager.h"
 #endif
 
-using ::testing::NotNull;
-using ::testing::Return;
-using ::testing::_;
-
 namespace extensions {
 
 namespace {
 
-using namespace net::test_server;
-
 const char kManifestPath[] = "/update_manifest";
 const char kAppPath[] = "/app.crx";
 
@@ -99,7 +93,7 @@
   // ExtensionServiceTestBase overrides:
   void SetUp() override {
     ExtensionServiceTestBase::SetUp();
-    test_server_.reset(new EmbeddedTestServer());
+    test_server_ = std::make_unique<net::test_server::EmbeddedTestServer>();
 
     test_server_->RegisterRequestHandler(
         base::Bind(&ExternalProviderImplTest::HandleRequest,
@@ -113,10 +107,11 @@
   }
 
  private:
-  std::unique_ptr<HttpResponse> HandleRequest(const HttpRequest& request) {
+  std::unique_ptr<net::test_server::HttpResponse> HandleRequest(
+      const net::test_server::HttpRequest& request) {
     GURL url = test_server_->GetURL(request.relative_url);
     if (url.path() == kManifestPath) {
-      std::unique_ptr<BasicHttpResponse> response(new BasicHttpResponse);
+      auto response = std::make_unique<net::test_server::BasicHttpResponse>();
       response->set_code(net::HTTP_OK);
       response->set_content(base::StringPrintf(
           "<?xml version='1.0' encoding='UTF-8'?>\n"
@@ -138,7 +133,7 @@
       base::ReadFileToString(
           test_data_dir.AppendASCII("extensions/dummyiap.crx"),
           &contents);
-      std::unique_ptr<BasicHttpResponse> response(new BasicHttpResponse);
+      auto response = std::make_unique<net::test_server::BasicHttpResponse>();
       response->set_code(net::HTTP_OK);
       response->set_content(contents);
       return std::move(response);
@@ -147,7 +142,7 @@
     return nullptr;
   }
 
-  std::unique_ptr<EmbeddedTestServer> test_server_;
+  std::unique_ptr<net::test_server::EmbeddedTestServer> test_server_;
   std::unique_ptr<ExtensionCacheFake> test_extension_cache_;
 
 #if defined(OS_CHROMEOS)
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
index ba1e866..070a249 100644
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -2021,6 +2021,11 @@
     "expiry_milestone": 80
   },
   {
+    "name": "enable-winrt-geolocation-implementation",
+    "owners": [ "pelavall@microsoft.com" ],
+    "expiry_milestone": 81
+  },
+  {
     "name": "enable-winrt-sensor-implementation",
     "owners": [ "wensh@microsoft.com" ],
     "expiry_milestone": 80
@@ -2196,6 +2201,11 @@
     "expiry_milestone": -1
   },
   {
+    "name": "forced-colors",
+    "owners": [ "weblayout@microsoft.com" ],
+    "expiry_milestone": 82
+  },
+  {
     "name": "form-controls-refresh",
     "owners": [ "iopopesc@microsoft.com", "//third_party/blink/renderer/core/OWNERS" ],
     "expiry_milestone": 78
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
index bfdf7fd..1b75d45 100644
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -668,6 +668,12 @@
     "during the handshake when resuming a connection to a compatible TLS 1.3 "
     "server.";
 
+const char kWinrtGeolocationImplementationName[] =
+    "WinRT Geolocation Implementation";
+const char kWinrtGeolocationImplementationDescription[] =
+    "Enables usage of the Windows.Devices.Geolocation WinRT APIs on Windows "
+    "for geolocation";
+
 const char kWinrtSensorsImplementationName[] = "WinRT Sensor Implementation";
 const char kWinrtSensorsImplementationDescription[] =
     "Enables usage of the Windows.Devices.Sensors WinRT APIs on Windows for "
@@ -1607,6 +1613,10 @@
 const char kForceWebContentsDarkModeDescription[] =
     "Automatically render all web contents using a dark theme.";
 
+const char kForcedColorsName[] = "Forced Colors";
+const char kForcedColorsDescription[] =
+    "Enables forced colors mode for web content.";
+
 const char kPercentBasedScrollingName[] = "Percent-based Scrolling";
 const char kPercentBasedScrollingDescription[] =
     "If enabled, mousewheel and keyboard scrolls will scroll by a percentage "
@@ -2550,10 +2560,6 @@
     "Whether Chrome should offer users the option to manually request to "
     "generate passwords on Android.";
 
-const char kNewNetErrorPageUIName[] = "Enable new UI for net-error page";
-const char kNewNetErrorPageUIDescription[] =
-    "Enables showing available offline content on the net-error (Dino) page.";
-
 const char kNewPhotoPickerName[] = "Enable new Photopicker";
 const char kNewPhotoPickerDescription[] =
     "Activates the new picker for selecting photos.";
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
index 6079115..62df3c7a 100644
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -407,6 +407,9 @@
 extern const char kEnableTLS13EarlyDataName[];
 extern const char kEnableTLS13EarlyDataDescription[];
 
+extern const char kWinrtGeolocationImplementationName[];
+extern const char kWinrtGeolocationImplementationDescription[];
+
 extern const char kWinrtSensorsImplementationName[];
 extern const char kWinrtSensorsImplementationDescription[];
 
@@ -964,6 +967,9 @@
 extern const char kForceWebContentsDarkModeName[];
 extern const char kForceWebContentsDarkModeDescription[];
 
+extern const char kForcedColorsName[];
+extern const char kForcedColorsDescription[];
+
 extern const char kPercentBasedScrollingName[];
 extern const char kPercentBasedScrollingDescription[];
 
@@ -1511,9 +1517,6 @@
 extern const char kManualPasswordGenerationAndroidName[];
 extern const char kManualPasswordGenerationAndroidDescription[];
 
-extern const char kNewNetErrorPageUIName[];
-extern const char kNewNetErrorPageUIDescription[];
-
 extern const char kNewPhotoPickerName[];
 extern const char kNewPhotoPickerDescription[];
 
diff --git a/chrome/browser/heavy_ad_intervention/heavy_ad_helper_browsertest.cc b/chrome/browser/heavy_ad_intervention/heavy_ad_helper_browsertest.cc
index d4ec4719..605957c5 100644
--- a/chrome/browser/heavy_ad_intervention/heavy_ad_helper_browsertest.cc
+++ b/chrome/browser/heavy_ad_intervention/heavy_ad_helper_browsertest.cc
@@ -59,8 +59,8 @@
   web_contents->SetDelegate(&console_delegate);
 
   content::TestNavigationObserver error_observer(web_contents);
-  controller.LoadErrorPage(child, url, heavy_ads::PrepareHeavyAdPage(),
-                           net::ERR_BLOCKED_BY_CLIENT);
+  controller.LoadPostCommitErrorPage(
+      child, url, heavy_ads::PrepareHeavyAdPage(), net::ERR_BLOCKED_BY_CLIENT);
   error_observer.Wait();
 
   EXPECT_TRUE(console_delegate.messages().empty());
@@ -81,8 +81,8 @@
       ChildFrameAt(web_contents->GetMainFrame(), 0);
 
   content::TestNavigationObserver error_observer(web_contents);
-  controller.LoadErrorPage(child, url, heavy_ads::PrepareHeavyAdPage(),
-                           net::ERR_BLOCKED_BY_CLIENT);
+  controller.LoadPostCommitErrorPage(
+      child, url, heavy_ads::PrepareHeavyAdPage(), net::ERR_BLOCKED_BY_CLIENT);
   error_observer.Wait();
 
   EXPECT_TRUE(IsContentInDocument(
diff --git a/chrome/browser/history/top_sites_factory.cc b/chrome/browser/history/top_sites_factory.cc
index ad4fccb..85c4095 100644
--- a/chrome/browser/history/top_sites_factory.cc
+++ b/chrome/browser/history/top_sites_factory.cc
@@ -57,14 +57,6 @@
 #if !defined(OS_ANDROID)
 // Android does not use prepopulated pages.
 const RawPrepopulatedPage kRawPrepopulatedPages[] = {
-#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
-    {
-        IDS_NTP_DEFAULT_SEARCH_URL,
-        IDS_NTP_DEFAULT_SEARCH_TITLE,
-        IDS_WELCOME_SEARCH,
-        SkColorSetRGB(63, 132, 197),
-    },
-#endif
     {
         IDS_WEBSTORE_URL,
         IDS_EXTENSION_WEB_STORE_TITLE_SHORT,
@@ -82,30 +74,12 @@
   PrefService* pref_service = profile->GetPrefs();
   bool hide_web_store_icon = pref_service->GetBoolean(prefs::kHideWebStoreIcon);
 
-  // The default shortcut is shown for new profiles, beginning at first run, if
-  // the feature is enabled. A pref is persisted so that the shortcut continues
-  // to be shown through browser restarts, when the profile is no longer
-  // considered "new".
-  bool is_search_shortcut_feature_enabled =
-      base::FeatureList::IsEnabled(features::kFirstRunDefaultSearchShortcut);
-  if (profile->IsNewProfile() && is_search_shortcut_feature_enabled) {
-    pref_service->SetBoolean(prefs::kShowFirstRunDefaultSearchShortcut, true);
-  }
-  bool show_default_search_shortcut =
-      is_search_shortcut_feature_enabled &&
-      pref_service->GetBoolean(prefs::kShowFirstRunDefaultSearchShortcut);
-
   prepopulated_pages->reserve(base::size(kRawPrepopulatedPages));
   for (size_t i = 0; i < base::size(kRawPrepopulatedPages); ++i) {
     const RawPrepopulatedPage& page = kRawPrepopulatedPages[i];
     if (hide_web_store_icon && page.url_id == IDS_WEBSTORE_URL)
       continue;
 
-    if (!show_default_search_shortcut &&
-        page.url_id == IDS_NTP_DEFAULT_SEARCH_URL) {
-      continue;
-    }
-
     prepopulated_pages->push_back(history::PrepopulatedPage(
         GURL(l10n_util::GetStringUTF8(page.url_id)),
         l10n_util::GetStringUTF16(page.title_id), page.favicon_id, page.color));
diff --git a/chrome/browser/media/offscreen_tab.cc b/chrome/browser/media/offscreen_tab.cc
index ea8024c..dd0e28e 100644
--- a/chrome/browser/media/offscreen_tab.cc
+++ b/chrome/browser/media/offscreen_tab.cc
@@ -280,16 +280,24 @@
   return false;
 }
 
-bool OffscreenTab::IsWebContentsCreationOverridden(
+bool OffscreenTab::ShouldCreateWebContents(
+    content::WebContents* web_contents,
+    content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
-    const GURL& target_url) {
+    const GURL& target_url,
+    const std::string& partition_id,
+    content::SessionStorageNamespace* session_storage_namespace) {
+  DCHECK_EQ(offscreen_tab_web_contents_.get(), web_contents);
   // Disallow creating separate WebContentses.  The WebContents implementation
   // uses this to spawn new windows/tabs, which is also not allowed for
   // offscreen tabs.
-  return true;
+  return false;
 }
 
 bool OffscreenTab::EmbedsFullscreenWidget() {
diff --git a/chrome/browser/media/offscreen_tab.h b/chrome/browser/media/offscreen_tab.h
index e3d8a35..77991a3 100644
--- a/chrome/browser/media/offscreen_tab.h
+++ b/chrome/browser/media/offscreen_tab.h
@@ -101,12 +101,19 @@
   bool CanDragEnter(content::WebContents* source,
                     const content::DropData& data,
                     blink::WebDragOperationsMask operations_allowed) final;
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) final;
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) final;
   bool EmbedsFullscreenWidget() final;
   void EnterFullscreenModeForTab(
       content::WebContents* contents,
diff --git a/chrome/browser/memory/enterprise_memory_limit_evaluator.cc b/chrome/browser/memory/enterprise_memory_limit_evaluator.cc
index 595de3d..ac8e606 100644
--- a/chrome/browser/memory/enterprise_memory_limit_evaluator.cc
+++ b/chrome/browser/memory/enterprise_memory_limit_evaluator.cc
@@ -5,8 +5,8 @@
 #include "chrome/browser/memory/enterprise_memory_limit_evaluator.h"
 
 #include "base/bind.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
+#include "components/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/performance_manager.h"
 
 namespace memory {
 
diff --git a/chrome/browser/memory/enterprise_memory_limit_evaluator.h b/chrome/browser/memory/enterprise_memory_limit_evaluator.h
index 1f327d5..4e39190 100644
--- a/chrome/browser/memory/enterprise_memory_limit_evaluator.h
+++ b/chrome/browser/memory/enterprise_memory_limit_evaluator.h
@@ -10,8 +10,8 @@
 #include "base/sequence_checker.h"
 #include "base/threading/sequenced_task_runner_handle.h"
 #include "base/util/memory_pressure/memory_pressure_voter.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/system_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/system_node.h"
 
 namespace memory {
 
diff --git a/chrome/browser/metrics/process_memory_metrics_emitter.cc b/chrome/browser/metrics/process_memory_metrics_emitter.cc
index 3d40aa1..da220d5 100644
--- a/chrome/browser/metrics/process_memory_metrics_emitter.cc
+++ b/chrome/browser/metrics/process_memory_metrics_emitter.cc
@@ -15,13 +15,13 @@
 #include "build/build_config.h"
 #include "chrome/browser/browser_process.h"
 #include "chrome/browser/metrics/tab_footprint_aggregator.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/graph_operations.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
 #include "chrome/browser/profiles/profile_manager.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/graph_operations.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/performance_manager.h"
 #include "content/public/browser/audio_service_info.h"
 #include "content/public/browser/render_process_host.h"
 #include "content/public/common/content_switches.h"
diff --git a/chrome/browser/offline_pages/offline_page_url_loader.cc b/chrome/browser/offline_pages/offline_page_url_loader.cc
index 70df923..38316532 100644
--- a/chrome/browser/offline_pages/offline_page_url_loader.cc
+++ b/chrome/browser/offline_pages/offline_page_url_loader.cc
@@ -47,9 +47,6 @@
 }
 
 bool ShouldCreateLoader(const network::ResourceRequest& resource_request) {
-  if (!IsOfflinePagesEnabled())
-    return false;
-
   // Ignore the requests not for the main frame.
   if (resource_request.resource_type !=
       static_cast<int>(content::ResourceType::kMainFrame))
diff --git a/chrome/browser/offline_pages/offline_page_utils.cc b/chrome/browser/offline_pages/offline_page_utils.cc
index 9ac53ed..8458564 100644
--- a/chrome/browser/offline_pages/offline_page_utils.cc
+++ b/chrome/browser/offline_pages/offline_page_utils.cc
@@ -327,9 +327,6 @@
 bool OfflinePageUtils::CanDownloadAsOfflinePage(
     const GURL& url,
     const std::string& contents_mime_type) {
-  if (!IsOfflinePagesEnabled())
-    return false;
-
   return url.SchemeIsHTTPOrHTTPS() &&
          (net::MatchesMimeType(contents_mime_type, "text/html") ||
           net::MatchesMimeType(contents_mime_type, "application/xhtml+xml"));
diff --git a/chrome/browser/optimization_guide/optimization_guide_hints_manager.cc b/chrome/browser/optimization_guide/optimization_guide_hints_manager.cc
index c9f73e8..4cf6e7e 100644
--- a/chrome/browser/optimization_guide/optimization_guide_hints_manager.cc
+++ b/chrome/browser/optimization_guide/optimization_guide_hints_manager.cc
@@ -16,10 +16,13 @@
 #include "base/task_runner_util.h"
 #include "base/time/default_clock.h"
 #include "chrome/browser/browser_process.h"
+#include "chrome/browser/navigation_predictor/navigation_predictor_keyed_service.h"
+#include "chrome/browser/navigation_predictor/navigation_predictor_keyed_service_factory.h"
 #include "chrome/browser/optimization_guide/optimization_guide_navigation_data.h"
 #include "chrome/browser/optimization_guide/optimization_guide_permissions_util.h"
 #include "chrome/browser/optimization_guide/optimization_guide_web_contents_observer.h"
 #include "chrome/browser/profiles/profile.h"
+#include "components/google/core/common/google_util.h"
 #include "components/optimization_guide/bloom_filter.h"
 #include "components/optimization_guide/hint_cache.h"
 #include "components/optimization_guide/hint_cache_store.h"
@@ -184,6 +187,10 @@
       optimization_guide::switches::ShouldPurgeHintCacheStoreOnStartup(),
       base::BindOnce(&OptimizationGuideHintsManager::OnHintCacheInitialized,
                      ui_weak_ptr_factory_.GetWeakPtr()));
+
+  NavigationPredictorKeyedService* navigation_predictor_service =
+      NavigationPredictorKeyedServiceFactory::GetForProfile(profile_);
+  navigation_predictor_service->AddObserver(this);
 }
 
 OptimizationGuideHintsManager::~OptimizationGuideHintsManager() {
@@ -192,6 +199,10 @@
   optimization_guide_service_->RemoveObserver(this);
   g_browser_process->network_quality_tracker()
       ->RemoveEffectiveConnectionTypeObserver(this);
+
+  NavigationPredictorKeyedService* navigation_predictor_service =
+      NavigationPredictorKeyedServiceFactory::GetForProfile(profile_);
+  navigation_predictor_service->RemoveObserver(this);
 }
 
 void OptimizationGuideHintsManager::Shutdown() {
@@ -533,6 +544,7 @@
 }
 
 void OptimizationGuideHintsManager::OnFetchedTopHostsHintsStored() {
+  DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
   LOCAL_HISTOGRAM_BOOLEAN("OptimizationGuide.FetchedHints.Stored", true);
 
   top_hosts_hints_fetch_timer_.Stop();
@@ -542,11 +554,13 @@
 }
 
 void OptimizationGuideHintsManager::OnFetchedPageNavigationHintsStored() {
-  for (const auto& url : navigation_urls_last_fetched_real_time_)
-    LoadHintForURL(url, base::DoNothing());
+  DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
+  for (const auto& host : navigation_hosts_last_fetched_real_time_)
+    LoadHintForHost(host, base::DoNothing());
 }
 
 base::Time OptimizationGuideHintsManager::GetLastHintsFetchAttemptTime() const {
+  DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
   return base::Time::FromDeltaSinceWindowsEpoch(
       base::TimeDelta::FromMicroseconds(pref_service_->GetInt64(
           optimization_guide::prefs::kHintsFetcherLastFetchAttempt)));
@@ -554,6 +568,7 @@
 
 void OptimizationGuideHintsManager::SetLastHintsFetchAttemptTime(
     base::Time last_attempt_time) {
+  DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
   pref_service_->SetInt64(
       optimization_guide::prefs::kHintsFetcherLastFetchAttempt,
       last_attempt_time.ToDeltaSinceWindowsEpoch().InMicroseconds());
@@ -581,20 +596,88 @@
     }
   }
 
-  LoadHintForURL(url, std::move(callback));
+  LoadHintForHost(url.host(), std::move(callback));
 }
 
-void OptimizationGuideHintsManager::LoadHintForURL(const GURL& url,
-                                                   base::OnceClosure callback) {
+void OptimizationGuideHintsManager::LoadHintForHost(
+    const std::string& host,
+    base::OnceClosure callback) {
   DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
-  DCHECK(url.has_host());
 
   hint_cache_->LoadHint(
-      url.host(),
+      host,
       base::BindOnce(&OptimizationGuideHintsManager::OnHintLoaded,
                      ui_weak_ptr_factory_.GetWeakPtr(), std::move(callback)));
 }
 
+bool OptimizationGuideHintsManager::IsGoogleURL(const GURL& url) const {
+  return google_util::IsGoogleHostname(url.host(),
+                                       google_util::DISALLOW_SUBDOMAIN);
+}
+
+void OptimizationGuideHintsManager::OnPredictionUpdated(
+    const base::Optional<NavigationPredictorKeyedService::Prediction>&
+        prediction) {
+  DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
+
+  if (!prediction.has_value())
+    return;
+
+  const GURL& source_document_url = prediction->source_document_url();
+
+  // We only extract next predicted navigations from Google URLs.
+  if (!IsGoogleURL(source_document_url))
+    return;
+
+  // Extract the target hosts. Use a flat set to remove duplicates.
+  // |target_hosts_serialized| is the ordered list of non-duplicate hosts.
+  base::flat_set<std::string> target_hosts;
+  std::vector<std::string> target_hosts_serialized;
+  for (const auto& url : prediction->sorted_predicted_urls()) {
+    if (!IsAllowedToFetchNavigationHints(url))
+      continue;
+    if (target_hosts.size() >=
+        optimization_guide::features::
+            MaxHostsForOptimizationGuideServiceHintsFetch()) {
+      break;
+    }
+
+    // Insert the host to |target_hosts|. The host is inserted to
+    // |target_hosts_serialized| only if it was not a duplicate insertion to
+    // |target_hosts|.
+    std::pair<base::flat_set<std::string>::iterator, bool> insert_result =
+        target_hosts.insert(url.host());
+    if (insert_result.second)
+      target_hosts_serialized.push_back(url.host());
+
+    // Ensure that the 2 data structures remain synchronized.
+    DCHECK_EQ(target_hosts.size(), target_hosts_serialized.size());
+  }
+
+  if (target_hosts.empty())
+    return;
+
+  navigation_hosts_last_fetched_real_time_.clear();
+  for (const auto& host : target_hosts)
+    navigation_hosts_last_fetched_real_time_.push_back(host);
+
+  if (!hints_fetcher_) {
+    hints_fetcher_ = std::make_unique<optimization_guide::HintsFetcher>(
+        url_loader_factory_,
+        optimization_guide::features::GetOptimizationGuideServiceURL(),
+        pref_service_);
+  }
+
+  hints_fetcher_->FetchOptimizationGuideServiceHints(
+      target_hosts_serialized,
+      optimization_guide::proto::CONTEXT_PAGE_NAVIGATION,
+      base::BindOnce(&OptimizationGuideHintsManager::OnHintsFetched,
+                     ui_weak_ptr_factory_.GetWeakPtr()));
+
+  for (const auto& host : target_hosts)
+    LoadHintForHost(host, base::DoNothing());
+}
+
 void OptimizationGuideHintsManager::OnHintLoaded(
     base::OnceClosure callback,
     const optimization_guide::proto::Hint* loaded_hint) const {
@@ -841,11 +924,16 @@
     base::OnceClosure callback) {
   DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
 
+  if (optimization_guide::switches::
+          DisableFetchingHintsAtNavigationStartForTesting()) {
+    return;
+  }
+
   if (IsAllowedToFetchNavigationHints(navigation_handle->GetURL())) {
     std::vector<std::string> hosts{navigation_handle->GetURL().host()};
-    navigation_urls_last_fetched_real_time_.clear();
-    navigation_urls_last_fetched_real_time_.push_back(
-        navigation_handle->GetURL());
+    navigation_hosts_last_fetched_real_time_.clear();
+    navigation_hosts_last_fetched_real_time_.push_back(
+        navigation_handle->GetURL().host());
 
     if (!hints_fetcher_) {
       hints_fetcher_ = std::make_unique<optimization_guide::HintsFetcher>(
diff --git a/chrome/browser/optimization_guide/optimization_guide_hints_manager.h b/chrome/browser/optimization_guide/optimization_guide_hints_manager.h
index 33dd1b75..c77e07b 100644
--- a/chrome/browser/optimization_guide/optimization_guide_hints_manager.h
+++ b/chrome/browser/optimization_guide/optimization_guide_hints_manager.h
@@ -18,6 +18,7 @@
 #include "base/synchronization/lock.h"
 #include "base/time/clock.h"
 #include "base/timer/timer.h"
+#include "chrome/browser/navigation_predictor/navigation_predictor_keyed_service.h"
 #include "components/optimization_guide/hints_component_info.h"
 #include "components/optimization_guide/optimization_guide_service_observer.h"
 #include "components/optimization_guide/proto/hints.pb.h"
@@ -60,7 +61,8 @@
 
 class OptimizationGuideHintsManager
     : public optimization_guide::OptimizationGuideServiceObserver,
-      public network::NetworkQualityTracker::EffectiveConnectionTypeObserver {
+      public network::NetworkQualityTracker::EffectiveConnectionTypeObserver,
+      public NavigationPredictorKeyedService::Observer {
  public:
   OptimizationGuideHintsManager(
       optimization_guide::OptimizationGuideService* optimization_guide_service,
@@ -139,6 +141,17 @@
                                    base::OnceClosure callback);
 
  private:
+  FRIEND_TEST_ALL_PREFIXES(OptimizationGuideHintsManagerTest, IsGoogleURL);
+  FRIEND_TEST_ALL_PREFIXES(OptimizationGuideHintsManagerTest,
+                           HintsFetched_AtSRP_ECT_SLOW_2G);
+  FRIEND_TEST_ALL_PREFIXES(OptimizationGuideHintsManagerTest,
+                           HintsFetched_AtSRP_ECT_4G);
+  FRIEND_TEST_ALL_PREFIXES(OptimizationGuideHintsManagerTest,
+                           HintsFetched_AtNonSRP_ECT_SLOW_2G);
+  FRIEND_TEST_ALL_PREFIXES(OptimizationGuideHintsManagerTest,
+                           HintsFetched_AtSRP_ECT_SLOW_2G_DuplicatesRemoved);
+  FRIEND_TEST_ALL_PREFIXES(OptimizationGuideHintsManagerTest,
+                           HintsFetched_AtSRP_ECT_SLOW_2G_InsecureHostsRemoved);
   // Processes the hints component.
   //
   // Should always be called on the thread that belongs to
@@ -240,11 +253,20 @@
   void LoadHintForNavigation(content::NavigationHandle* navigation_handle,
                              base::OnceClosure callback);
 
-  // Loads the hint for |url| if available.
+  // Loads the hint for |host| if available.
   // |callback| is run when the request has finished regardless of whether there
-  // was actually a hint for that |url| or not. The callback can be used as a
+  // was actually a hint for that |host| or not. The callback can be used as a
   // signal for tests.
-  void LoadHintForURL(const GURL& url, base::OnceClosure callback);
+  void LoadHintForHost(const std::string& host, base::OnceClosure callback);
+
+  // Returns true if the hostname for |url| matches the host of google web
+  // search results page (www.google.*).
+  bool IsGoogleURL(const GURL& url) const;
+
+  // NavigationPredictorKeyedService::Observer:
+  void OnPredictionUpdated(
+      const base::Optional<NavigationPredictorKeyedService::Prediction>&
+          prediction) override;
 
   // The OptimizationGuideService that this guide is listening to. Not owned.
   optimization_guide::OptimizationGuideService* const
@@ -314,8 +336,8 @@
   // Used in testing to subscribe to an update event in this class.
   base::OnceClosure next_update_closure_;
 
-  // URLs for which hints were last fetched in the real-time.
-  std::vector<GURL> navigation_urls_last_fetched_real_time_;
+  // Hosts for which hints were last fetched in the real-time.
+  std::vector<std::string> navigation_hosts_last_fetched_real_time_;
 
   // Used to get |weak_ptr_| to self on the UI thread.
   base::WeakPtrFactory<OptimizationGuideHintsManager> ui_weak_ptr_factory_{
diff --git a/chrome/browser/optimization_guide/optimization_guide_hints_manager_unittest.cc b/chrome/browser/optimization_guide/optimization_guide_hints_manager_unittest.cc
index 6a225a8..b3fb5fbf07 100644
--- a/chrome/browser/optimization_guide/optimization_guide_hints_manager_unittest.cc
+++ b/chrome/browser/optimization_guide/optimization_guide_hints_manager_unittest.cc
@@ -1703,6 +1703,175 @@
   EXPECT_EQ(nullptr, navigation_data->page_hint());
 }
 
+TEST_F(OptimizationGuideHintsManagerTest, IsGoogleURL) {
+  const struct {
+    const char* url;
+    bool expect_is_google_url;
+  } tests[] = {
+      {"https://www.google.com/"
+       "search?q=cats&oq=cq&aqs=foo&ie=UTF-8",
+       true},
+      {"https://www.google.com/", true},
+      {"https://www.google.com/:99", true},
+
+      // Try localized search pages.
+      {"https://www.google.co.in/"
+       "search?q=cats&oq=cq&aqs=foo&ie=UTF-8",
+       true},
+      {"https://www.google.co.in/", true},
+      {"https://www.google.co.in/:99", true},
+
+      // Try Google domain pages that are not web search related.
+      {"https://www.not-google.com/", false},
+      {"https://www.youtube.com/", false},
+      {"https://domain.google.com/", false},
+      {"https://images.google.com/", false},
+  };
+
+  for (const auto& test : tests) {
+    GURL url(test.url);
+    EXPECT_TRUE(url.is_valid());
+    EXPECT_EQ(test.expect_is_google_url, hints_manager()->IsGoogleURL(url));
+  }
+}
+
+TEST_F(OptimizationGuideHintsManagerTest, HintsFetched_AtSRP_ECT_SLOW_2G) {
+  hints_manager()->RegisterOptimizationTypes(
+      {optimization_guide::proto::DEFER_ALL_SCRIPT});
+  base::test::ScopedFeatureList scoped_list;
+  scoped_list.InitAndEnableFeature(
+      optimization_guide::features::kOptimizationHintsFetching);
+  InitializeWithDefaultConfig("1.0.0.0");
+
+  // Set ECT estimate so hint is activated.
+  hints_manager()->OnEffectiveConnectionTypeChanged(
+      net::EffectiveConnectionType::EFFECTIVE_CONNECTION_TYPE_SLOW_2G);
+  std::unique_ptr<content::MockNavigationHandle> navigation_handle =
+      CreateMockNavigationHandleWithOptimizationGuideWebContentsObserver(
+          url_without_hints());
+  base::HistogramTester histogram_tester;
+  std::vector<GURL> sorted_predicted_urls;
+  sorted_predicted_urls.push_back(GURL("https://foo.com/"));
+  NavigationPredictorKeyedService::Prediction prediction(
+      nullptr, GURL("https://www.google.com/"), sorted_predicted_urls);
+
+  hints_manager()->OnPredictionUpdated(prediction);
+  histogram_tester.ExpectUniqueSample(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.HostCount", 1, 1);
+}
+
+TEST_F(OptimizationGuideHintsManagerTest,
+       HintsFetched_AtSRP_ECT_SLOW_2G_DuplicatesRemoved) {
+  hints_manager()->RegisterOptimizationTypes(
+      {optimization_guide::proto::DEFER_ALL_SCRIPT});
+  base::test::ScopedFeatureList scoped_list;
+  scoped_list.InitAndEnableFeature(
+      optimization_guide::features::kOptimizationHintsFetching);
+  InitializeWithDefaultConfig("1.0.0.0");
+
+  // Set ECT estimate so hint is activated.
+  hints_manager()->OnEffectiveConnectionTypeChanged(
+      net::EffectiveConnectionType::EFFECTIVE_CONNECTION_TYPE_SLOW_2G);
+  std::unique_ptr<content::MockNavigationHandle> navigation_handle =
+      CreateMockNavigationHandleWithOptimizationGuideWebContentsObserver(
+          url_without_hints());
+  base::HistogramTester histogram_tester;
+  std::vector<GURL> sorted_predicted_urls;
+  sorted_predicted_urls.push_back(GURL("https://foo.com/page1.html"));
+  sorted_predicted_urls.push_back(GURL("https://foo.com/page2.html"));
+  sorted_predicted_urls.push_back(GURL("https://foo.com/page3.html"));
+  sorted_predicted_urls.push_back(GURL("https://bar.com/"));
+
+  NavigationPredictorKeyedService::Prediction prediction(
+      nullptr, GURL("https://www.google.com/"), sorted_predicted_urls);
+
+  hints_manager()->OnPredictionUpdated(prediction);
+  // Ensure that we only include 2 hosts in the request. These would be foo.com
+  // and bar.com.
+  histogram_tester.ExpectUniqueSample(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.HostCount", 2, 1);
+}
+
+TEST_F(OptimizationGuideHintsManagerTest,
+       HintsFetched_AtSRP_ECT_SLOW_2G_InsecureHostsRemoved) {
+  hints_manager()->RegisterOptimizationTypes(
+      {optimization_guide::proto::DEFER_ALL_SCRIPT});
+  base::test::ScopedFeatureList scoped_list;
+  scoped_list.InitAndEnableFeature(
+      optimization_guide::features::kOptimizationHintsFetching);
+  InitializeWithDefaultConfig("1.0.0.0");
+
+  // Set ECT estimate so hint is activated.
+  hints_manager()->OnEffectiveConnectionTypeChanged(
+      net::EffectiveConnectionType::EFFECTIVE_CONNECTION_TYPE_SLOW_2G);
+  std::unique_ptr<content::MockNavigationHandle> navigation_handle =
+      CreateMockNavigationHandleWithOptimizationGuideWebContentsObserver(
+          url_without_hints());
+  base::HistogramTester histogram_tester;
+  std::vector<GURL> sorted_predicted_urls;
+  sorted_predicted_urls.push_back(GURL("https://foo.com/page1.html"));
+  sorted_predicted_urls.push_back(GURL("http://insecure-bar.com/"));
+
+  NavigationPredictorKeyedService::Prediction prediction(
+      nullptr, GURL("https://www.google.com/"), sorted_predicted_urls);
+
+  hints_manager()->OnPredictionUpdated(prediction);
+  // Ensure that we only include 1 secure host in the request. These would be
+  // foo.com.
+  histogram_tester.ExpectUniqueSample(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.HostCount", 1, 1);
+}
+
+TEST_F(OptimizationGuideHintsManagerTest, HintsFetched_AtSRP_ECT_4G) {
+  hints_manager()->RegisterOptimizationTypes(
+      {optimization_guide::proto::DEFER_ALL_SCRIPT});
+  base::test::ScopedFeatureList scoped_list;
+  scoped_list.InitAndEnableFeature(
+      optimization_guide::features::kOptimizationHintsFetching);
+  InitializeWithDefaultConfig("1.0.0.0");
+
+  // Set ECT estimate so hint is activated.
+  hints_manager()->OnEffectiveConnectionTypeChanged(
+      net::EffectiveConnectionType::EFFECTIVE_CONNECTION_TYPE_4G);
+  std::unique_ptr<content::MockNavigationHandle> navigation_handle =
+      CreateMockNavigationHandleWithOptimizationGuideWebContentsObserver(
+          url_without_hints());
+  base::HistogramTester histogram_tester;
+  std::vector<GURL> sorted_predicted_urls;
+  sorted_predicted_urls.push_back(GURL("https://foo.com/"));
+  NavigationPredictorKeyedService::Prediction prediction(
+      nullptr, GURL("https://www.google.com/"), sorted_predicted_urls);
+
+  hints_manager()->OnPredictionUpdated(prediction);
+  histogram_tester.ExpectTotalCount(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.HostCount", 0);
+}
+
+TEST_F(OptimizationGuideHintsManagerTest, HintsFetched_AtNonSRP_ECT_SLOW_2G) {
+  hints_manager()->RegisterOptimizationTypes(
+      {optimization_guide::proto::DEFER_ALL_SCRIPT});
+  base::test::ScopedFeatureList scoped_list;
+  scoped_list.InitAndEnableFeature(
+      optimization_guide::features::kOptimizationHintsFetching);
+  InitializeWithDefaultConfig("1.0.0.0");
+
+  // Set ECT estimate so hint is activated.
+  hints_manager()->OnEffectiveConnectionTypeChanged(
+      net::EffectiveConnectionType::EFFECTIVE_CONNECTION_TYPE_SLOW_2G);
+  std::unique_ptr<content::MockNavigationHandle> navigation_handle =
+      CreateMockNavigationHandleWithOptimizationGuideWebContentsObserver(
+          url_without_hints());
+  base::HistogramTester histogram_tester;
+  std::vector<GURL> sorted_predicted_urls;
+  sorted_predicted_urls.push_back(GURL("https://foo.com/"));
+  NavigationPredictorKeyedService::Prediction prediction(
+      nullptr, GURL("https://www.not-google.com/"), sorted_predicted_urls);
+
+  hints_manager()->OnPredictionUpdated(prediction);
+  histogram_tester.ExpectTotalCount(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.HostCount", 0);
+}
+
 TEST_F(OptimizationGuideHintsManagerTest,
        HintsFetchedAtNavigationTime_ECT_SLOW_2G) {
   hints_manager()->RegisterOptimizationTypes(
diff --git a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.cc b/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.cc
index 48b73a2..63b2971c 100644
--- a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.cc
+++ b/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.cc
@@ -186,7 +186,7 @@
   // Ensure that this RenderFrameHost is a subframe.
   DCHECK(render_frame_host->GetParent());
 
-  GetDelegate().GetWebContents()->GetController().LoadErrorPage(
+  GetDelegate().GetWebContents()->GetController().LoadPostCommitErrorPage(
       render_frame_host, render_frame_host->GetLastCommittedURL(),
       heavy_ads::PrepareHeavyAdPage(), net::ERR_BLOCKED_BY_CLIENT);
 
diff --git a/chrome/browser/password_manager/account_chooser_dialog_android.cc b/chrome/browser/password_manager/account_chooser_dialog_android.cc
index 61200aa..246214f 100644
--- a/chrome/browser/password_manager/account_chooser_dialog_android.cc
+++ b/chrome/browser/password_manager/account_chooser_dialog_android.cc
@@ -29,21 +29,16 @@
 #include "ui/gfx/android/java_bitmap.h"
 #include "ui/gfx/range/range.h"
 
-using base::android::AttachCurrentThread;
-using base::android::ConvertUTF16ToJavaString;
-using base::android::JavaParamRef;
-using base::android::ScopedJavaLocalRef;
-
 namespace {
 
 void JNI_AccountChooserDialog_AddElementsToJavaCredentialArray(
     JNIEnv* env,
-    ScopedJavaLocalRef<jobjectArray> java_credentials_array,
+    base::android::ScopedJavaLocalRef<jobjectArray> java_credentials_array,
     const std::vector<std::unique_ptr<autofill::PasswordForm>>& forms) {
   int index = 0;
   for (const auto& password_form : forms) {
-    ScopedJavaLocalRef<jobject> java_credential = CreateNativeCredential(
-        env, *password_form, index);
+    base::android::ScopedJavaLocalRef<jobject> java_credential =
+        CreateNativeCredential(env, *password_form, index);
     env->SetObjectArrayElement(java_credentials_array.obj(), index,
                                java_credential.obj());
     index++;
@@ -83,7 +78,8 @@
     base::android::ScopedJavaLocalRef<jobject> java_bitmap =
         gfx::ConvertToJavaBitmap(bitmap);
     Java_AccountChooserDialog_imageFetchComplete(
-        AttachCurrentThread(), java_dialog_, index_, java_bitmap);
+        base::android::AttachCurrentThread(), java_dialog_, index_,
+        java_bitmap);
   }
   delete this;
 }
@@ -124,11 +120,11 @@
     delete this;
     return false;
   }
-  JNIEnv* env = AttachCurrentThread();
+  JNIEnv* env = base::android::AttachCurrentThread();
   base::string16 title =
       l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_ACCOUNT_CHOOSER_TITLE);
   gfx::NativeWindow native_window = web_contents_->GetTopLevelNativeWindow();
-  ScopedJavaLocalRef<jobjectArray> java_credentials_array =
+  base::android::ScopedJavaLocalRef<jobjectArray> java_credentials_array =
       CreateNativeCredentialArray(env, local_credentials_forms().size());
   JNI_AccountChooserDialog_AddElementsToJavaCredentialArray(
       env, java_credentials_array, local_credentials_forms());
@@ -158,7 +154,7 @@
 
 void AccountChooserDialogAndroid::OnCredentialClicked(
     JNIEnv* env,
-    const JavaParamRef<jobject>& obj,
+    const base::android::JavaParamRef<jobject>& obj,
     jint credential_item,
     jboolean signin_button_clicked) {
   ChooseCredential(
@@ -167,20 +163,21 @@
       signin_button_clicked);
 }
 
-void AccountChooserDialogAndroid::Destroy(JNIEnv* env,
-                                          const JavaParamRef<jobject>& obj) {
+void AccountChooserDialogAndroid::Destroy(
+    JNIEnv* env,
+    const base::android::JavaParamRef<jobject>& obj) {
   delete this;
 }
 
 void AccountChooserDialogAndroid::CancelDialog(
     JNIEnv* env,
-    const JavaParamRef<jobject>& obj) {
+    const base::android::JavaParamRef<jobject>& obj) {
   OnDialogCancel();
 }
 
 void AccountChooserDialogAndroid::OnLinkClicked(
     JNIEnv* env,
-    const JavaParamRef<jobject>& obj) {
+    const base::android::JavaParamRef<jobject>& obj) {
   web_contents_->OpenURL(content::OpenURLParams(
       GURL(password_manager::kPasswordManagerHelpCenterSmartLock),
       content::Referrer(), WindowOpenDisposition::NEW_FOREGROUND_TAB,
@@ -188,7 +185,7 @@
 }
 
 void AccountChooserDialogAndroid::WebContentsDestroyed() {
-  JNIEnv* env = AttachCurrentThread();
+  JNIEnv* env = base::android::AttachCurrentThread();
   Java_AccountChooserDialog_dismissDialog(env, dialog_jobject_);
 }
 
@@ -198,7 +195,7 @@
     // TODO(https://crbug.com/610700): once bug is fixed, this code should be
     // gone.
     OnDialogCancel();
-    JNIEnv* env = AttachCurrentThread();
+    JNIEnv* env = base::android::AttachCurrentThread();
     Java_AccountChooserDialog_dismissDialog(env, dialog_jobject_);
   }
 }
@@ -217,26 +214,22 @@
     size_t index,
     password_manager::CredentialType type,
     bool signin_button_clicked) {
-  using namespace password_manager;
-  password_manager::metrics_util::AccountChooserUserAction action;
-  if (type == CredentialType::CREDENTIAL_TYPE_EMPTY) {
+  namespace metrics = password_manager::metrics_util;
+
+  metrics::AccountChooserUserAction action;
+  if (type == password_manager::CredentialType::CREDENTIAL_TYPE_EMPTY) {
     passwords_data_.ChooseCredential(nullptr);
-    action = metrics_util::ACCOUNT_CHOOSER_DISMISSED;
+    action = metrics::ACCOUNT_CHOOSER_DISMISSED;
   } else {
-    action = signin_button_clicked
-                 ? metrics_util::ACCOUNT_CHOOSER_SIGN_IN
-                 : metrics_util::ACCOUNT_CHOOSER_CREDENTIAL_CHOSEN;
+    action = signin_button_clicked ? metrics::ACCOUNT_CHOOSER_SIGN_IN
+                                   : metrics::ACCOUNT_CHOOSER_CREDENTIAL_CHOSEN;
     const auto& credentials_forms = local_credentials_forms();
-    if (index < credentials_forms.size()) {
+    if (index < credentials_forms.size())
       passwords_data_.ChooseCredential(credentials_forms[index].get());
-    }
   }
 
-  if (local_credentials_forms().size() == 1) {
-    password_manager::metrics_util::LogAccountChooserUserActionOneAccount(
-        action);
-  } else {
-    password_manager::metrics_util::LogAccountChooserUserActionManyAccounts(
-        action);
-  }
+  if (local_credentials_forms().size() == 1)
+    metrics::LogAccountChooserUserActionOneAccount(action);
+  else
+    metrics::LogAccountChooserUserActionManyAccounts(action);
 }
diff --git a/chrome/browser/performance_manager/DEPS b/chrome/browser/performance_manager/DEPS
index 166ed20..aecc1b8 100644
--- a/chrome/browser/performance_manager/DEPS
+++ b/chrome/browser/performance_manager/DEPS
@@ -2,6 +2,7 @@
 include_rules = [
   "-chrome/browser",
   "+chrome/browser/performance_manager",
+  "+components/performance_manager",
 ]
 
 # Allow some Chrome specific files to includes more things from //chrome.
diff --git a/chrome/browser/performance_manager/browser_child_process_watcher.cc b/chrome/browser/performance_manager/browser_child_process_watcher.cc
index e4feef9..2fb04315 100644
--- a/chrome/browser/performance_manager/browser_child_process_watcher.cc
+++ b/chrome/browser/performance_manager/browser_child_process_watcher.cc
@@ -11,9 +11,9 @@
 #include "base/process/process.h"
 #include "base/stl_util.h"
 #include "build/build_config.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
 #include "content/public/browser/child_process_data.h"
 #include "content/public/browser/child_process_termination_info.h"
 #include "content/public/common/process_type.h"
diff --git a/chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.cc b/chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.cc
index 25480bba..7368c90 100644
--- a/chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.cc
+++ b/chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.cc
@@ -14,14 +14,14 @@
 #include "chrome/browser/performance_manager/decorators/page_aggregator.h"
 #include "chrome/browser/performance_manager/decorators/page_almost_idle_decorator.h"
 #include "chrome/browser/performance_manager/decorators/process_metrics_decorator.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
 #include "chrome/browser/performance_manager/graph/policies/policy_features.h"
 #include "chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.h"
 #include "chrome/browser/performance_manager/observers/isolation_context_metrics.h"
 #include "chrome/browser/performance_manager/observers/metrics_collector.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
-#include "chrome/browser/performance_manager/render_process_user_data.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/render_process_user_data.h"
 #include "content/public/common/content_features.h"
 
 #if defined(OS_LINUX)
diff --git a/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc b/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc
index ed17c06..f73d0e0e 100644
--- a/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc
+++ b/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc
@@ -9,9 +9,9 @@
 #include "base/bind.h"
 #include "base/logging.h"
 #include "base/threading/sequenced_task_runner_handle.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/render_process_user_data.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/render_process_user_data.h"
 #include "content/public/browser/render_process_host.h"
 #include "mojo/public/cpp/bindings/pending_receiver.h"
 #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h"
diff --git a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.cc b/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.cc
index fa43d8b..32b94f5 100644
--- a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.cc
+++ b/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.cc
@@ -4,11 +4,11 @@
 
 #include "chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h"
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/node_attached_data_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h b/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h
index 10644bc..7bedc0c 100644
--- a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h
+++ b/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h
@@ -5,10 +5,10 @@
 #ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_FROZEN_FRAME_AGGREGATOR_H_
 #define CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_FROZEN_FRAME_AGGREGATOR_H_
 
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator_unittest.cc b/chrome/browser/performance_manager/decorators/frozen_frame_aggregator_unittest.cc
index a07f120f..c01ed42 100644
--- a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator_unittest.cc
+++ b/chrome/browser/performance_manager/decorators/frozen_frame_aggregator_unittest.cc
@@ -6,10 +6,10 @@
 
 #include <memory>
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/decorators/page_aggregator.cc b/chrome/browser/performance_manager/decorators/page_aggregator.cc
index 0b93344d..1dc7131 100644
--- a/chrome/browser/performance_manager/decorators/page_aggregator.cc
+++ b/chrome/browser/performance_manager/decorators/page_aggregator.cc
@@ -6,8 +6,8 @@
 
 #include <stdint.h>
 
-#include "chrome/browser/performance_manager/graph/node_attached_data_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/node_attached_data_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
 #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h"
 
 namespace performance_manager {
@@ -28,6 +28,15 @@
                                          InterventionPolicy policy) {
     page_node->SetOriginTrialFreezePolicy(policy);
   }
+
+  static void SetPageIsHoldingWebLock(PageNodeImpl* page_node, bool value) {
+    page_node->SetIsHoldingWebLock(value);
+  }
+
+  static void SetPageIsHoldingIndexedDBLock(PageNodeImpl* page_node,
+                                            bool value) {
+    page_node->SetIsHoldingIndexedDBLock(value);
+  }
 };
 
 class PageAggregator::Data : public NodeAttachedDataImpl<Data> {
@@ -36,7 +45,10 @@
   struct Traits : public NodeAttachedDataInternalOnNodeType<PageNodeImpl> {};
 
   explicit Data(const PageNodeImpl* page_node) {}
-  ~Data() override = default;
+  ~Data() override {
+    DCHECK_EQ(num_frames_holding_web_lock_, 0U);
+    DCHECK_EQ(num_frames_holding_indexeddb_lock_, 0U);
+  }
 
   static StorageType* GetInternalStorage(PageNodeImpl* page_node) {
     return PageAggregatorAccess::GetInternalStorage(page_node);
@@ -53,6 +65,17 @@
     --num_current_frames_for_freezing_policy[static_cast<size_t>(policy)];
   }
 
+  // Updates the counter of page using WebLocks and sets the corresponding
+  // page-level property.
+  void UpdateFrameCountForWebLockUsage(bool frame_is_holding_weblock,
+                                       PageNodeImpl* page_node);
+
+  // Updates the counter of page using IndexedDB locks and sets the
+  // corresponding page-level property.
+  void UpdateFrameCountForIndexedDBLockUsage(
+      bool frame_is_holding_indexeddb_lock,
+      PageNodeImpl* page_node);
+
   // Updates the page's origin trial freeze policy from current data.
   void UpdateOriginTrialFreezePolicy(PageNodeImpl* page_node) {
     PageAggregatorAccess::SetOriginTrialFreezePolicy(
@@ -61,19 +84,7 @@
 
  private:
   // Computes the page's origin trial freeze policy from current data.
-  InterventionPolicy ComputeOriginTrialFreezePolicy() const {
-    if (GetNumCurrentFramesForFreezingPolicy(InterventionPolicy::kUnknown))
-      return InterventionPolicy::kUnknown;
-
-    if (GetNumCurrentFramesForFreezingPolicy(InterventionPolicy::kOptOut))
-      return InterventionPolicy::kOptOut;
-
-    if (GetNumCurrentFramesForFreezingPolicy(InterventionPolicy::kOptIn))
-      return InterventionPolicy::kOptIn;
-
-    // A page with no frame can be frozen. This will have no effect.
-    return InterventionPolicy::kDefault;
-  }
+  InterventionPolicy ComputeOriginTrialFreezePolicy() const;
 
   // Returns the number of current frames with |policy| on the page that owns
   // this Data.
@@ -87,9 +98,56 @@
   uint32_t num_current_frames_for_freezing_policy
       [static_cast<size_t>(InterventionPolicy::kMaxValue) + 1] = {};
 
+  // The number of frames holding at least one WebLock / IndexedDB lock. This
+  // counts all frames, not just the current ones.
+  uint32_t num_frames_holding_web_lock_ = 0;
+  uint32_t num_frames_holding_indexeddb_lock_ = 0;
+
   DISALLOW_COPY_AND_ASSIGN(Data);
 };
 
+InterventionPolicy PageAggregator::Data::ComputeOriginTrialFreezePolicy()
+    const {
+  if (GetNumCurrentFramesForFreezingPolicy(InterventionPolicy::kUnknown))
+    return InterventionPolicy::kUnknown;
+
+  if (GetNumCurrentFramesForFreezingPolicy(InterventionPolicy::kOptOut))
+    return InterventionPolicy::kOptOut;
+
+  if (GetNumCurrentFramesForFreezingPolicy(InterventionPolicy::kOptIn))
+    return InterventionPolicy::kOptIn;
+
+  // A page with no frame can be frozen. This will have no effect.
+  return InterventionPolicy::kDefault;
+}
+
+void PageAggregator::Data::UpdateFrameCountForWebLockUsage(
+    bool frame_is_holding_weblock,
+    PageNodeImpl* page_node) {
+  if (frame_is_holding_weblock) {
+    ++num_frames_holding_web_lock_;
+  } else {
+    DCHECK_GT(num_frames_holding_web_lock_, 0U);
+    --num_frames_holding_web_lock_;
+  }
+  PageAggregatorAccess::SetPageIsHoldingWebLock(
+      page_node, num_frames_holding_web_lock_ > 0);
+}
+
+void PageAggregator::Data::UpdateFrameCountForIndexedDBLockUsage(
+    bool frame_is_holding_indexeddb_lock,
+    PageNodeImpl* page_node) {
+  if (frame_is_holding_indexeddb_lock) {
+    ++num_frames_holding_indexeddb_lock_;
+  } else {
+    DCHECK_GT(num_frames_holding_indexeddb_lock_, 0U);
+    --num_frames_holding_indexeddb_lock_;
+  }
+
+  PageAggregatorAccess::SetPageIsHoldingIndexedDBLock(
+      page_node, num_frames_holding_indexeddb_lock_ > 0);
+}
+
 PageAggregator::PageAggregator() = default;
 PageAggregator::~PageAggregator() = default;
 
@@ -98,15 +156,22 @@
 }
 
 void PageAggregator::OnBeforeFrameNodeRemoved(const FrameNode* frame_node) {
+  auto* page_node = PageNodeImpl::FromNode(frame_node->GetPageNode());
+  Data* data = Data::Get(page_node);
   if (frame_node->IsCurrent()) {
-    auto* page_node = PageNodeImpl::FromNode(frame_node->GetPageNode());
-    Data* data = Data::Get(page_node);
     // Data should have been created when the frame became current.
     DCHECK(data);
     data->DecrementFrameCountForFreezingPolicy(
         frame_node->GetOriginTrialFreezePolicy());
     data->UpdateOriginTrialFreezePolicy(page_node);
   }
+
+  // It is not guaranteed that the graph will be notified that the frame
+  // has released its lock before it is notified of the frame being deleted.
+  if (frame_node->IsHoldingWebLock())
+    data->UpdateFrameCountForWebLockUsage(false, page_node);
+  if (frame_node->IsHoldingIndexedDBLock())
+    data->UpdateFrameCountForIndexedDBLockUsage(false, page_node);
 }
 
 void PageAggregator::OnIsCurrentChanged(const FrameNode* frame_node) {
@@ -128,7 +193,8 @@
   if (frame_node->IsCurrent()) {
     auto* page_node = PageNodeImpl::FromNode(frame_node->GetPageNode());
     Data* data = Data::Get(page_node);
-    // Data should have been created when the frame became current.
+    // Data should have been created when the frame became current or the first
+    // time this frame grabbed a lock.
     DCHECK(data);
     data->DecrementFrameCountForFreezingPolicy(previous_value);
     data->IncrementFrameCountForFreezingPolicy(
@@ -137,6 +203,22 @@
   }
 }
 
+void PageAggregator::OnFrameIsHoldingWebLockChanged(
+    const FrameNode* frame_node) {
+  auto* page_node = PageNodeImpl::FromNode(frame_node->GetPageNode());
+  Data* data = Data::GetOrCreate(page_node);
+  data->UpdateFrameCountForWebLockUsage(frame_node->IsHoldingWebLock(),
+                                        page_node);
+}
+
+void PageAggregator::OnFrameIsHoldingIndexedDBLockChanged(
+    const FrameNode* frame_node) {
+  auto* page_node = PageNodeImpl::FromNode(frame_node->GetPageNode());
+  Data* data = Data::GetOrCreate(page_node);
+  data->UpdateFrameCountForIndexedDBLockUsage(
+      frame_node->IsHoldingIndexedDBLock(), page_node);
+}
+
 void PageAggregator::OnPassedToGraph(Graph* graph) {
   // This observer presumes that it's been added before any nodes exist in the
   // graph.
diff --git a/chrome/browser/performance_manager/decorators/page_aggregator.h b/chrome/browser/performance_manager/decorators/page_aggregator.h
index ef0c8d4..3011f92 100644
--- a/chrome/browser/performance_manager/decorators/page_aggregator.h
+++ b/chrome/browser/performance_manager/decorators/page_aggregator.h
@@ -5,8 +5,8 @@
 #ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_PAGE_AGGREGATOR_H_
 #define CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_PAGE_AGGREGATOR_H_
 
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
 
 namespace performance_manager {
 
@@ -14,8 +14,8 @@
 // aggregator are:
 //   - The freeze origin trial policy: The aggregation of the freeze
 //     origin trial policies of its current frames.
-//
-// TODO(sebmarchand): Add the WebLocks and IndexedDB properties.
+//   - The usage of WebLocks in one of the page's frames.
+//   - The usage of IndexedDB locks in one of the page's frames.
 class PageAggregator : public FrameNode::ObserverDefaultImpl,
                        public GraphOwnedDefaultImpl {
  public:
@@ -32,6 +32,9 @@
   void OnOriginTrialFreezePolicyChanged(
       const FrameNode* frame_node,
       const InterventionPolicy& previous_value) override;
+  void OnFrameIsHoldingWebLockChanged(const FrameNode* frame_node) override;
+  void OnFrameIsHoldingIndexedDBLockChanged(
+      const FrameNode* frame_node) override;
 
   // GraphOwned implementation:
   void OnPassedToGraph(Graph* graph) override;
diff --git a/chrome/browser/performance_manager/decorators/page_aggregator_unittest.cc b/chrome/browser/performance_manager/decorators/page_aggregator_unittest.cc
index b559c21b..7164215 100644
--- a/chrome/browser/performance_manager/decorators/page_aggregator_unittest.cc
+++ b/chrome/browser/performance_manager/decorators/page_aggregator_unittest.cc
@@ -4,11 +4,11 @@
 
 #include "chrome/browser/performance_manager/decorators/page_aggregator.h"
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
@@ -185,10 +185,8 @@
 // Test changing the Origin Trial Freezing policy of a frame after it becomes
 // current.
 TEST_F(PageAggregatorTest, OriginTrialFreezingPolicyChanges) {
-  TestNodeWrapper<ProcessNodeImpl> process =
-      TestNodeWrapper<ProcessNodeImpl>::Create(graph());
-  TestNodeWrapper<PageNodeImpl> page =
-      TestNodeWrapper<PageNodeImpl>::Create(graph());
+  auto process = CreateNode<ProcessNodeImpl>();
+  auto page = CreateNode<PageNodeImpl>();
   TestNodeWrapper<FrameNodeImpl> frame =
       graph()->CreateFrameNodeAutoId(process.get(), page.get());
   frame->SetIsCurrent(true);
@@ -204,4 +202,67 @@
   EXPECT_EQ(InterventionPolicy::kUnknown, page->origin_trial_freeze_policy());
 }
 
+TEST_F(PageAggregatorTest, WebLocksAggregation) {
+  // Creates a page containing 2 frames.
+  auto process = CreateNode<ProcessNodeImpl>();
+  auto page = CreateNode<PageNodeImpl>();
+  TestNodeWrapper<FrameNodeImpl> frame_0 =
+      graph()->CreateFrameNodeAutoId(process.get(), page.get());
+  TestNodeWrapper<FrameNodeImpl> frame_1 =
+      graph()->CreateFrameNodeAutoId(process.get(), page.get());
+
+  // By default the page shouldn't hold any WebLock.
+  EXPECT_FALSE(page->is_holding_weblock());
+
+  // |frame_0| now holds a WebLock, the corresponding property should be set on
+  // the page node.
+  frame_0->SetIsHoldingWebLock(true);
+  EXPECT_TRUE(page->is_holding_weblock());
+
+  // |frame_1| also holding a WebLock shouldn't affect the page property.
+  frame_1->SetIsHoldingWebLock(true);
+  EXPECT_TRUE(page->is_holding_weblock());
+
+  // |frame_1| still holds a WebLock after this.
+  frame_0->SetIsHoldingWebLock(false);
+  EXPECT_TRUE(page->is_holding_weblock());
+
+  // Destroying |frame_1| without explicitly releasing the WebLock it's
+  // holding should update the corresponding page property.
+  frame_1.reset();
+  EXPECT_FALSE(page->is_holding_weblock());
+}
+
+TEST_F(PageAggregatorTest, IndexedDBLocksAggregation) {
+  // Creates a page containing 2 frames.
+  auto process = CreateNode<ProcessNodeImpl>();
+  auto page = CreateNode<PageNodeImpl>();
+  TestNodeWrapper<FrameNodeImpl> frame_0 =
+      graph()->CreateFrameNodeAutoId(process.get(), page.get());
+  TestNodeWrapper<FrameNodeImpl> frame_1 =
+      graph()->CreateFrameNodeAutoId(process.get(), page.get());
+
+  // By default the page shouldn't hold any IndexedDB lock.
+  EXPECT_FALSE(page->is_holding_indexeddb_lock());
+
+  // |frame_0| now holds an IndexedDB lock, the corresponding property should be
+  // set on the page node.
+  frame_0->SetIsHoldingIndexedDBLock(true);
+  EXPECT_TRUE(page->is_holding_indexeddb_lock());
+
+  // |frame_1| also holding an IndexedDB lock shouldn't affect the page
+  // property.
+  frame_1->SetIsHoldingIndexedDBLock(true);
+  EXPECT_TRUE(page->is_holding_indexeddb_lock());
+
+  // |frame_1| still holds an IndexedDB lock after this.
+  frame_0->SetIsHoldingIndexedDBLock(false);
+  EXPECT_TRUE(page->is_holding_indexeddb_lock());
+
+  // Destroying |frame_1| without explicitly releasing the IndexedDB lock it's
+  // holding should update the corresponding page property.
+  frame_1.reset();
+  EXPECT_FALSE(page->is_holding_indexeddb_lock());
+}
+
 }  // namespace performance_manager
diff --git a/chrome/browser/performance_manager/decorators/page_almost_idle_decorator.cc b/chrome/browser/performance_manager/decorators/page_almost_idle_decorator.cc
index 1493559..b02c2ce0 100644
--- a/chrome/browser/performance_manager/decorators/page_almost_idle_decorator.cc
+++ b/chrome/browser/performance_manager/decorators/page_almost_idle_decorator.cc
@@ -6,11 +6,11 @@
 
 #include <algorithm>
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/node_attached_data_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/decorators/page_almost_idle_decorator.h b/chrome/browser/performance_manager/decorators/page_almost_idle_decorator.h
index 1edc9ad..b8dac1e 100644
--- a/chrome/browser/performance_manager/decorators/page_almost_idle_decorator.h
+++ b/chrome/browser/performance_manager/decorators/page_almost_idle_decorator.h
@@ -7,10 +7,10 @@
 
 #include "base/time/time.h"
 #include "base/timer/timer.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/decorators/page_almost_idle_decorator_unittest.cc b/chrome/browser/performance_manager/decorators/page_almost_idle_decorator_unittest.cc
index 727f1ec..889f132 100644
--- a/chrome/browser/performance_manager/decorators/page_almost_idle_decorator_unittest.cc
+++ b/chrome/browser/performance_manager/decorators/page_almost_idle_decorator_unittest.cc
@@ -9,11 +9,11 @@
 #include <utility>
 
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/decorators/process_metrics_decorator.cc b/chrome/browser/performance_manager/decorators/process_metrics_decorator.cc
index bce70a8..604c0247 100644
--- a/chrome/browser/performance_manager/decorators/process_metrics_decorator.cc
+++ b/chrome/browser/performance_manager/decorators/process_metrics_decorator.cc
@@ -4,10 +4,10 @@
 
 #include "chrome/browser/performance_manager/decorators/process_metrics_decorator.h"
 
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/node_attached_data_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
 #include "services/resource_coordinator/public/cpp/memory_instrumentation/global_memory_dump.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/decorators/process_metrics_decorator.h b/chrome/browser/performance_manager/decorators/process_metrics_decorator.h
index 06b7ae8..13e9b78 100644
--- a/chrome/browser/performance_manager/decorators/process_metrics_decorator.h
+++ b/chrome/browser/performance_manager/decorators/process_metrics_decorator.h
@@ -7,7 +7,7 @@
 
 #include "base/memory/weak_ptr.h"
 #include "base/timer/timer.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/graph.h"
 #include "services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/decorators/process_metrics_decorator_unittest.cc b/chrome/browser/performance_manager/decorators/process_metrics_decorator_unittest.cc
index 540a55b..3582064 100644
--- a/chrome/browser/performance_manager/decorators/process_metrics_decorator_unittest.cc
+++ b/chrome/browser/performance_manager/decorators/process_metrics_decorator_unittest.cc
@@ -8,9 +8,9 @@
 
 #include "base/optional.h"
 #include "base/run_loop.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "services/resource_coordinator/public/cpp/memory_instrumentation/global_memory_dump.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
diff --git a/chrome/browser/performance_manager/graph/page_node_impl_browsertest.cc b/chrome/browser/performance_manager/graph/page_node_impl_browsertest.cc
index 7eaf953..45e517c8 100644
--- a/chrome/browser/performance_manager/graph/page_node_impl_browsertest.cc
+++ b/chrome/browser/performance_manager/graph/page_node_impl_browsertest.cc
@@ -9,11 +9,11 @@
 #include "base/strings/string_util.h"
 #include "base/test/bind_test_util.h"
 #include "base/threading/thread_restrictions.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
 #include "chrome/common/chrome_switches.h"
 #include "chrome/test/base/in_process_browser_test.h"
 #include "chrome/test/base/ui_test_utils.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "content/public/test/url_loader_interceptor.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.cc b/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.cc
index 4d09723..e0903bf 100644
--- a/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.cc
+++ b/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.cc
@@ -13,14 +13,14 @@
 #include "base/task/post_task.h"
 #include "base/time/time.h"
 #include "chrome/browser/performance_manager/graph/policies/policy_features.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
-#include "chrome/browser/performance_manager/render_process_user_data.h"
 #include "chrome/common/performance_manager/mojom/tcmalloc.mojom.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/render_process_user_data.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
 #include "content/public/browser/render_process_host.h"
diff --git a/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.h b/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.h
index 9d9e05781..255b1960 100644
--- a/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.h
+++ b/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.h
@@ -8,10 +8,10 @@
 #include "base/macros.h"
 #include "base/time/time.h"
 #include "base/timer/timer.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
 #include "chrome/common/performance_manager/mojom/tcmalloc.mojom.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/public/graph/process_node.h"
 #include "mojo/public/cpp/bindings/remote.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux_unittest.cc b/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux_unittest.cc
index 4d76da0c..e641a2f 100644
--- a/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux_unittest.cc
+++ b/chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux_unittest.cc
@@ -7,13 +7,13 @@
 #include "base/allocator/buildflags.h"
 #include "base/task/post_task.h"
 #include "base/test/scoped_feature_list.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
 #include "chrome/browser/performance_manager/graph/policies/policy_features.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
 #include "content/public/test/browser_task_environment.h"
diff --git a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.cc b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.cc
index 1f46588..076aaf8 100644
--- a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.cc
+++ b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.cc
@@ -7,9 +7,9 @@
 #include "build/build_config.h"
 
 #include "chrome/browser/performance_manager/mechanisms/working_set_trimmer.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/public/graph/process_node.h"
 #if defined(OS_WIN)
 #include "chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_win.h"
 #elif defined(OS_CHROMEOS)
diff --git a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.h b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.h
index ba9cfc961..bfece9f 100644
--- a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.h
+++ b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.h
@@ -7,9 +7,9 @@
 
 #include "base/macros.h"
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/public/graph/process_node.h"
 
 namespace performance_manager {
 namespace policies {
diff --git a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos.cc b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos.cc
index 4b07eb4..80bbddc 100644
--- a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos.cc
+++ b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos.cc
@@ -7,10 +7,10 @@
 #include "base/bind.h"
 #include "chrome/browser/performance_manager/graph/policies/policy_features.h"
 #include "chrome/browser/performance_manager/mechanisms/working_set_trimmer.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/page_node.h"
 #include "url/gurl.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos_unittest.cc b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos_unittest.cc
index 30d5d96..f6200298 100644
--- a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos_unittest.cc
+++ b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos_unittest.cc
@@ -5,12 +5,12 @@
 #include "chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos.h"
 
 #include "base/memory/memory_pressure_listener.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_unittest.cc b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_unittest.cc
index 6a6f4da..b956591 100644
--- a/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_unittest.cc
+++ b/chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy_unittest.cc
@@ -4,8 +4,8 @@
 
 #include "chrome/browser/performance_manager/graph/policies/working_set_trimmer_policy.h"
 
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/system_node_impl.h b/chrome/browser/performance_manager/graph/system_node_impl.h
deleted file mode 100644
index e310fb4..0000000
--- a/chrome/browser/performance_manager/graph/system_node_impl.h
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright 2018 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_PERFORMANCE_MANAGER_GRAPH_SYSTEM_NODE_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_SYSTEM_NODE_IMPL_H_
-
-#include <cstdint>
-#include <memory>
-#include <vector>
-
-#include "base/macros.h"
-#include "base/process/process_handle.h"
-#include "base/time/time.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/public/graph/system_node.h"
-
-namespace performance_manager {
-
-class SystemNodeImpl : public PublicNodeImpl<SystemNodeImpl, SystemNode>,
-                       public TypedNodeBase<SystemNodeImpl,
-                                            SystemNode,
-                                            SystemNodeObserver> {
- public:
-  static constexpr NodeTypeEnum Type() { return NodeTypeEnum::kSystem; }
-
-  explicit SystemNodeImpl(GraphImpl* graph);
-  ~SystemNodeImpl() override;
-
-  // This should be called after refreshing the memory usage data of the process
-  // nodes.
-  void OnProcessMemoryMetricsAvailable();
-
- private:
-  DISALLOW_COPY_AND_ASSIGN(SystemNodeImpl);
-};
-
-}  // namespace performance_manager
-
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_SYSTEM_NODE_IMPL_H_
diff --git a/chrome/browser/performance_manager/mechanisms/working_set_trimmer_chromeos.cc b/chrome/browser/performance_manager/mechanisms/working_set_trimmer_chromeos.cc
index 3d5db7f..2171139 100644
--- a/chrome/browser/performance_manager/mechanisms/working_set_trimmer_chromeos.cc
+++ b/chrome/browser/performance_manager/mechanisms/working_set_trimmer_chromeos.cc
@@ -8,7 +8,7 @@
 #include "base/files/file_util.h"
 #include "base/logging.h"
 #include "base/strings/stringprintf.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
 
 namespace performance_manager {
 namespace mechanism {
diff --git a/chrome/browser/performance_manager/mechanisms/working_set_trimmer_win.cc b/chrome/browser/performance_manager/mechanisms/working_set_trimmer_win.cc
index 0b04769..267af82 100644
--- a/chrome/browser/performance_manager/mechanisms/working_set_trimmer_win.cc
+++ b/chrome/browser/performance_manager/mechanisms/working_set_trimmer_win.cc
@@ -10,7 +10,7 @@
 
 #include "base/logging.h"
 #include "base/process/process.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
 
 namespace performance_manager {
 namespace mechanism {
diff --git a/chrome/browser/performance_manager/mechanisms/working_set_trimmer_win_unittest.cc b/chrome/browser/performance_manager/mechanisms/working_set_trimmer_win_unittest.cc
index 448672a..0dc6c90 100644
--- a/chrome/browser/performance_manager/mechanisms/working_set_trimmer_win_unittest.cc
+++ b/chrome/browser/performance_manager/mechanisms/working_set_trimmer_win_unittest.cc
@@ -17,8 +17,8 @@
 #include "base/strings/string_number_conversions.h"
 #include "base/synchronization/waitable_event.h"
 #include "base/test/multiprocess_test.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 #include "testing/gtest/include/gtest/gtest.h"
 #include "testing/multiprocess_func_list.h"
 
diff --git a/chrome/browser/performance_manager/observers/isolation_context_metrics.cc b/chrome/browser/performance_manager/observers/isolation_context_metrics.cc
index 5cfaada..a0aefd96 100644
--- a/chrome/browser/performance_manager/observers/isolation_context_metrics.cc
+++ b/chrome/browser/performance_manager/observers/isolation_context_metrics.cc
@@ -9,7 +9,7 @@
 
 #include "base/bind.h"
 #include "base/metrics/histogram_macros.h"
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/observers/isolation_context_metrics.h b/chrome/browser/performance_manager/observers/isolation_context_metrics.h
index 0b1d80b..c0aaeac1 100644
--- a/chrome/browser/performance_manager/observers/isolation_context_metrics.h
+++ b/chrome/browser/performance_manager/observers/isolation_context_metrics.h
@@ -10,10 +10,10 @@
 #include "base/containers/small_map.h"
 #include "base/macros.h"
 #include "base/timer/timer.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/observers/isolation_context_metrics_unittest.cc b/chrome/browser/performance_manager/observers/isolation_context_metrics_unittest.cc
index a95e2cd..087c1a2 100644
--- a/chrome/browser/performance_manager/observers/isolation_context_metrics_unittest.cc
+++ b/chrome/browser/performance_manager/observers/isolation_context_metrics_unittest.cc
@@ -6,10 +6,10 @@
 
 #include "base/run_loop.h"
 #include "base/test/metrics/histogram_tester.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/observers/metrics_collector.cc b/chrome/browser/performance_manager/observers/metrics_collector.cc
index e6b48a6..f9e2a7a 100644
--- a/chrome/browser/performance_manager/observers/metrics_collector.cc
+++ b/chrome/browser/performance_manager/observers/metrics_collector.cc
@@ -8,8 +8,8 @@
 
 #include "base/metrics/field_trial_params.h"
 #include "base/metrics/histogram_macros.h"
-#include "chrome/browser/performance_manager/public/graph/graph_operations.h"
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/public/graph/graph_operations.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/observers/metrics_collector.h b/chrome/browser/performance_manager/observers/metrics_collector.h
index 08b5a72..9af2ca19 100644
--- a/chrome/browser/performance_manager/observers/metrics_collector.h
+++ b/chrome/browser/performance_manager/observers/metrics_collector.h
@@ -11,10 +11,10 @@
 #include "base/metrics/histogram_macros.h"
 #include "base/time/time.h"
 #include "chrome/browser/performance_manager/observers/background_metrics_reporter.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
 #include "services/metrics/public/cpp/ukm_builders.h"
 #include "services/metrics/public/cpp/ukm_source_id.h"
 
diff --git a/chrome/browser/performance_manager/observers/metrics_collector_unittest.cc b/chrome/browser/performance_manager/observers/metrics_collector_unittest.cc
index f1e7807..9fc653af 100644
--- a/chrome/browser/performance_manager/observers/metrics_collector_unittest.cc
+++ b/chrome/browser/performance_manager/observers/metrics_collector_unittest.cc
@@ -6,10 +6,10 @@
 
 #include "base/test/metrics/histogram_tester.h"
 #include "build/build_config.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 #include "components/ukm/test_ukm_recorder.h"
 #include "url/gurl.h"
 
diff --git a/chrome/browser/performance_manager/persistence/site_data/site_data_cache_facade.cc b/chrome/browser/performance_manager/persistence/site_data/site_data_cache_facade.cc
index 4cd71dad..ba93e70 100644
--- a/chrome/browser/performance_manager/persistence/site_data/site_data_cache_facade.cc
+++ b/chrome/browser/performance_manager/persistence/site_data/site_data_cache_facade.cc
@@ -8,10 +8,10 @@
 
 #include "base/bind.h"
 #include "base/run_loop.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
 #include "chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.h"
 #include "chrome/browser/performance_manager/persistence/site_data/site_data_cache_impl.h"
 #include "chrome/browser/profiles/incognito_helpers.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "content/public/browser/browser_context.h"
 #include "content/public/browser/browser_thread.h"
 
diff --git a/chrome/browser/performance_manager/persistence/site_data/site_data_cache_facade_unittest.cc b/chrome/browser/performance_manager/persistence/site_data/site_data_cache_facade_unittest.cc
index ce9cb0e1..7adb28a7 100644
--- a/chrome/browser/performance_manager/persistence/site_data/site_data_cache_facade_unittest.cc
+++ b/chrome/browser/performance_manager/persistence/site_data/site_data_cache_facade_unittest.cc
@@ -9,11 +9,11 @@
 #include "base/run_loop.h"
 #include "base/task/post_task.h"
 #include "base/test/bind_test_util.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
 #include "chrome/browser/performance_manager/persistence/site_data/leveldb_site_data_store.h"
 #include "chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.h"
 #include "chrome/browser/performance_manager/persistence/site_data/unittest_utils.h"
 #include "chrome/test/base/testing_profile.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "content/public/test/test_utils.h"
 #include "testing/gtest/include/gtest/gtest.h"
 #include "url/gurl.h"
diff --git a/chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.cc b/chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.cc
index 5d482eda..127d3ea 100644
--- a/chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.cc
+++ b/chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.cc
@@ -10,10 +10,10 @@
 #include "base/sequenced_task_runner.h"
 #include "base/stl_util.h"
 #include "base/task_runner_util.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
 #include "chrome/browser/performance_manager/persistence/site_data/non_recording_site_data_cache.h"
 #include "chrome/browser/performance_manager/persistence/site_data/site_data_cache_impl.h"
 #include "chrome/browser/performance_manager/persistence/site_data/site_data_cache_inspector.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "content/public/browser/browser_context.h"
 #include "content/public/browser/browser_thread.h"
 
diff --git a/chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.h b/chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.h
index a1440ed..edc4612 100644
--- a/chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.h
+++ b/chrome/browser/performance_manager/persistence/site_data/site_data_cache_factory.h
@@ -17,7 +17,7 @@
 #include "base/sequence_checker.h"
 #include "base/sequenced_task_runner.h"
 #include "chrome/browser/performance_manager/persistence/site_data/site_data_cache.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/graph.h"
 #include "content/public/browser/browser_context.h"
 
 namespace content {
diff --git a/chrome/browser/performance_manager/persistence/site_data/unittest_utils.h b/chrome/browser/performance_manager/persistence/site_data/unittest_utils.h
index 7f78fcbe..ea1b808 100644
--- a/chrome/browser/performance_manager/persistence/site_data/unittest_utils.h
+++ b/chrome/browser/performance_manager/persistence/site_data/unittest_utils.h
@@ -9,9 +9,9 @@
 #include <vector>
 
 #include "base/macros.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
 #include "chrome/browser/performance_manager/persistence/site_data/site_data_impl.h"
 #include "chrome/browser/performance_manager/persistence/site_data/site_data_store.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "content/public/test/browser_task_environment.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
diff --git a/chrome/browser/performance_manager/public/DEPS b/chrome/browser/performance_manager/public/DEPS
deleted file mode 100644
index a35d1e2..0000000
--- a/chrome/browser/performance_manager/public/DEPS
+++ /dev/null
@@ -1,5 +0,0 @@
-# The public includes shouldn't depend on anything not public.
-include_rules = [
-  "-chrome/browser/performance_manager",
-  "+chrome/browser/performance_manager/public",
-]
\ No newline at end of file
diff --git a/chrome/browser/performance_manager/render_process_host_proxy_unittest.cc b/chrome/browser/performance_manager/render_process_host_proxy_unittest.cc
index 8194b08..f224071 100644
--- a/chrome/browser/performance_manager/render_process_host_proxy_unittest.cc
+++ b/chrome/browser/performance_manager/render_process_host_proxy_unittest.cc
@@ -2,39 +2,61 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
 
 #include "base/memory/weak_ptr.h"
 #include "base/process/process.h"
 #include "base/task/post_task.h"
 #include "base/task/task_traits.h"
 #include "base/test/bind_test_util.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_test_harness.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
-#include "chrome/browser/performance_manager/render_process_user_data.h"
+// TODO(https://crbug.com/953031): Remove these dependencies and move this
+//     test to the component directory.
+#include "chrome/test/base/chrome_render_view_host_test_harness.h"
 #include "chrome/test/base/testing_browser_process.h"
 #include "chrome/test/base/testing_profile.h"
 #include "chrome/test/base/testing_profile_manager.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/render_process_user_data.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
+#include "content/public/browser/web_contents.h"
 #include "content/public/test/mock_render_process_host.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 namespace performance_manager {
 
-class RenderProcessHostProxyTest
-    : public performance_manager::PerformanceManagerTestHarness {
+class RenderProcessHostProxyTest : public ChromeRenderViewHostTestHarness {
  protected:
   RenderProcessHostProxyTest() {}
   ~RenderProcessHostProxyTest() override {}
 
-  void SetUp() override { PerformanceManagerTestHarness::SetUp(); }
-  void TearDown() override { PerformanceManagerTestHarness::TearDown(); }
+  void SetUp() override {
+    ChromeRenderViewHostTestHarness::SetUp();
+    perf_man_ = PerformanceManagerImpl::Create(base::DoNothing());
+  }
+  void TearDown() override {
+    // Have the performance manager destroy itself.
+    PerformanceManagerImpl::Destroy(std::move(perf_man_));
+    task_environment()->RunUntilIdle();
+
+    ChromeRenderViewHostTestHarness::TearDown();
+  }
+
+  std::unique_ptr<content::WebContents> CreateTestWebContents() {
+    std::unique_ptr<content::WebContents> contents =
+        ChromeRenderViewHostTestHarness::CreateTestWebContents();
+    PerformanceManagerTabHelper::CreateForWebContents(contents.get());
+    return contents;
+  }
 
  private:
+  std::unique_ptr<PerformanceManagerImpl> perf_man_;
+
   DISALLOW_COPY_AND_ASSIGN(RenderProcessHostProxyTest);
 };
 
diff --git a/chrome/browser/performance_manager/test_support/graph_impl.h b/chrome/browser/performance_manager/test_support/graph_impl.h
deleted file mode 100644
index ed72561..0000000
--- a/chrome/browser/performance_manager/test_support/graph_impl.h
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2019 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_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_IMPL_H_
-
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data_impl.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/graph/node_type.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/properties.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
-#include "chrome/browser/performance_manager/graph/worker_node_impl.h"
-
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_IMPL_H_
diff --git a/chrome/browser/policy/cloud/machine_level_user_cloud_policy_helper.cc b/chrome/browser/policy/cloud/chrome_browser_cloud_management_helper.cc
similarity index 86%
rename from chrome/browser/policy/cloud/machine_level_user_cloud_policy_helper.cc
rename to chrome/browser/policy/cloud/chrome_browser_cloud_management_helper.cc
index 218d9eb..192ce1d 100644
--- a/chrome/browser/policy/cloud/machine_level_user_cloud_policy_helper.cc
+++ b/chrome/browser/policy/cloud/chrome_browser_cloud_management_helper.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/policy/cloud/machine_level_user_cloud_policy_helper.h"
+#include "chrome/browser/policy/cloud/chrome_browser_cloud_management_helper.h"
 
 #include <utility>
 
@@ -32,19 +32,21 @@
 
 }  // namespace
 
-/* MachineLevelUserCloudPolicyRegistrar */
-MachineLevelUserCloudPolicyRegistrar::MachineLevelUserCloudPolicyRegistrar(
+/* ChromeBrowserCloudManagementRegistrar */
+ChromeBrowserCloudManagementRegistrar::ChromeBrowserCloudManagementRegistrar(
     DeviceManagementService* device_management_service,
     scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory)
     : device_management_service_(device_management_service),
       url_loader_factory_(url_loader_factory) {}
 
-MachineLevelUserCloudPolicyRegistrar::~MachineLevelUserCloudPolicyRegistrar() {}
+ChromeBrowserCloudManagementRegistrar::
+    ~ChromeBrowserCloudManagementRegistrar() {}
 
-void MachineLevelUserCloudPolicyRegistrar::RegisterForPolicyWithEnrollmentToken(
-    const std::string& enrollment_token,
-    const std::string& client_id,
-    const PolicyRegistrationCallback& callback) {
+void ChromeBrowserCloudManagementRegistrar::
+    RegisterForCloudManagementWithEnrollmentToken(
+        const std::string& enrollment_token,
+        const std::string& client_id,
+        const CloudManagementRegistrationCallback& callback) {
   DCHECK(!enrollment_token.empty());
   DCHECK(!client_id.empty());
 
@@ -74,14 +76,16 @@
       enterprise_management::DeviceRegisterRequest::BROWSER);
   registration_helper_->StartRegistrationWithEnrollmentToken(
       enrollment_token, client_id,
-      base::BindRepeating(
-          &MachineLevelUserCloudPolicyRegistrar::CallPolicyRegistrationCallback,
-          base::Unretained(this), base::Passed(&policy_client), callback));
+      base::BindRepeating(&ChromeBrowserCloudManagementRegistrar::
+                              CallCloudManagementRegistrationCallback,
+                          base::Unretained(this), base::Passed(&policy_client),
+                          callback));
 }
 
-void MachineLevelUserCloudPolicyRegistrar::CallPolicyRegistrationCallback(
-    std::unique_ptr<CloudPolicyClient> client,
-    PolicyRegistrationCallback callback) {
+void ChromeBrowserCloudManagementRegistrar::
+    CallCloudManagementRegistrationCallback(
+        std::unique_ptr<CloudPolicyClient> client,
+        CloudManagementRegistrationCallback callback) {
   registration_helper_.reset();
   if (callback)
     callback.Run(client->dm_token(), client->client_id());
diff --git a/chrome/browser/policy/cloud/machine_level_user_cloud_policy_helper.h b/chrome/browser/policy/cloud/chrome_browser_cloud_management_helper.h
similarity index 79%
rename from chrome/browser/policy/cloud/machine_level_user_cloud_policy_helper.h
rename to chrome/browser/policy/cloud/chrome_browser_cloud_management_helper.h
index 6c14454..49061f6 100644
--- a/chrome/browser/policy/cloud/machine_level_user_cloud_policy_helper.h
+++ b/chrome/browser/policy/cloud/chrome_browser_cloud_management_helper.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_POLICY_CLOUD_MACHINE_LEVEL_USER_CLOUD_POLICY_HELPER_H_
-#define CHROME_BROWSER_POLICY_CLOUD_MACHINE_LEVEL_USER_CLOUD_POLICY_HELPER_H_
+#ifndef CHROME_BROWSER_POLICY_CLOUD_CHROME_BROWSER_CLOUD_MANAGEMENT_HELPER_H_
+#define CHROME_BROWSER_POLICY_CLOUD_CHROME_BROWSER_CLOUD_MANAGEMENT_HELPER_H_
 
 #include <memory>
 #include <string>
@@ -28,36 +28,37 @@
 class DeviceManagementService;
 
 // A helper class that register device with the enrollment token and client id.
-class MachineLevelUserCloudPolicyRegistrar {
+class ChromeBrowserCloudManagementRegistrar {
  public:
-  MachineLevelUserCloudPolicyRegistrar(
+  ChromeBrowserCloudManagementRegistrar(
       DeviceManagementService* device_management_service,
       scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory);
-  ~MachineLevelUserCloudPolicyRegistrar();
+  ~ChromeBrowserCloudManagementRegistrar();
 
   // The callback invoked once policy registration is complete. Passed
   // |dm_token| and |client_id| parameters are empty if policy registration
   // failed.
   // TODO(crbug.com/825321): Update this to OnceCallback.
-  using PolicyRegistrationCallback =
+  using CloudManagementRegistrationCallback =
       base::RepeatingCallback<void(const std::string& dm_token,
                                    const std::string& client_id)>;
 
   // Registers a CloudPolicyClient for fetching machine level user policy.
-  void RegisterForPolicyWithEnrollmentToken(
+  void RegisterForCloudManagementWithEnrollmentToken(
       const std::string& enrollment_token,
       const std::string& client_id,
-      const PolicyRegistrationCallback& callback);
+      const CloudManagementRegistrationCallback& callback);
 
  private:
-  void CallPolicyRegistrationCallback(std::unique_ptr<CloudPolicyClient> client,
-                                      PolicyRegistrationCallback callback);
+  void CallCloudManagementRegistrationCallback(
+      std::unique_ptr<CloudPolicyClient> client,
+      CloudManagementRegistrationCallback callback);
 
   std::unique_ptr<CloudPolicyClientRegistrationHelper> registration_helper_;
   DeviceManagementService* device_management_service_;
   scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory_;
 
-  DISALLOW_COPY_AND_ASSIGN(MachineLevelUserCloudPolicyRegistrar);
+  DISALLOW_COPY_AND_ASSIGN(ChromeBrowserCloudManagementRegistrar);
 };
 
 // A helper class that setup registration and fetch policy.
@@ -93,4 +94,4 @@
 
 }  // namespace policy
 
-#endif  // CHROME_BROWSER_POLICY_CLOUD_MACHINE_LEVEL_USER_CLOUD_POLICY_HELPER_H_
+#endif  // CHROME_BROWSER_POLICY_CLOUD_CHROME_BROWSER_CLOUD_MANAGEMENT_HELPER_H_
diff --git a/chrome/browser/policy/configuration_policy_handler_list_factory.cc b/chrome/browser/policy/configuration_policy_handler_list_factory.cc
index 6ca09b3b..b2ab51da 100644
--- a/chrome/browser/policy/configuration_policy_handler_list_factory.cc
+++ b/chrome/browser/policy/configuration_policy_handler_list_factory.cc
@@ -226,6 +226,9 @@
   { key::kDefaultImagesSetting,
     prefs::kManagedDefaultImagesSetting,
     base::Value::Type::INTEGER },
+  { key::kLegacySameSiteCookieBehaviorEnabled,
+    prefs::kManagedDefaultLegacyCookieAccessSetting,
+    base::Value::Type::INTEGER },
   { key::kDefaultPluginsSetting,
     prefs::kManagedDefaultPluginsSetting,
     base::Value::Type::INTEGER },
@@ -253,6 +256,9 @@
   { key::kJavaScriptBlockedForUrls,
     prefs::kManagedJavaScriptBlockedForUrls,
     base::Value::Type::LIST },
+  { key::kLegacySameSiteCookieBehaviorEnabledForDomainList,
+    prefs::kManagedLegacyCookieAccessAllowedForDomains,
+    base::Value::Type::LIST },
   { key::kPluginsAllowedForUrls,
     prefs::kManagedPluginsAllowedForUrls,
     base::Value::Type::LIST },
diff --git a/chrome/browser/policy/e2e_test/infra/config.pyl b/chrome/browser/policy/e2e_test/infra/config.pyl
deleted file mode 100644
index 51dbb2fe..0000000
--- a/chrome/browser/policy/e2e_test/infra/config.pyl
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2019 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.
-
-# This is a .pyl, or "Python Literal", file. You can treat it just like a
-# .json file, with the following exceptions:
-# * all keys must be quoted (use single quotes, please);
-# * comments are allowed, using '#' syntax; and
-# * trailing commas are allowed.
-
-{
-  # This is a map of buildbot master names -> buildbot builder names ->
-  # config names (where each config name is a key in the 'configs' dict,
-  # below). MB uses this dict to look up which config to use for a given bot.
-  'masters': {
-    'chromium.win': {
-      'win-celab-builder-rel': 'win-celab',
-    },
-
-    'tryserver.chromium.win': {
-      'win-celab-try-rel': 'win-celab',
-    },
-  },
-
-  # This is the list of configs that you can pass to mb; each config
-  # represents a particular combination of gn args that we must support.
-  'configs': {
-    'win-celab': [
-      'release_bot', 'minimal_symbols'
-    ],
-  },
-
-  # This is a dict mapping a given 'mixin' name to a dict of settings that
-  # mb should use. See //tools/mb/docs/user_guide.md for more information.
-  'mixins':
-  {
-    'goma': {
-      'gn_args': 'use_goma=true strip_absolute_paths_from_debug_symbols=true',
-    },
-
-    'minimal_symbols': {
-      'gn_args': 'symbol_level=1',
-    },
-
-    'release': {
-      'gn_args': 'is_debug=false',
-    },
-
-    'release_bot': {
-      'mixins': ['release', 'static', 'goma'],
-    },
-
-    'static': {
-      'gn_args': 'is_component_build=false',
-    },
-  },
-}
diff --git a/chrome/browser/policy/machine_level_user_cloud_policy_controller.cc b/chrome/browser/policy/machine_level_user_cloud_policy_controller.cc
index 65a0cfc..b9efc7ab 100644
--- a/chrome/browser/policy/machine_level_user_cloud_policy_controller.cc
+++ b/chrome/browser/policy/machine_level_user_cloud_policy_controller.cc
@@ -24,7 +24,7 @@
 #include "chrome/browser/net/system_network_context_manager.h"
 #include "chrome/browser/policy/browser_dm_token_storage.h"
 #include "chrome/browser/policy/chrome_browser_policy_connector.h"
-#include "chrome/browser/policy/cloud/machine_level_user_cloud_policy_helper.h"
+#include "chrome/browser/policy/cloud/chrome_browser_cloud_management_helper.h"
 #include "chrome/browser/policy/machine_level_user_cloud_policy_register_watcher.h"
 #include "chrome/common/chrome_features.h"
 #include "chrome/common/chrome_paths.h"
@@ -196,8 +196,9 @@
   DCHECK(!enrollment_token.empty());
   DCHECK(!client_id.empty());
 
-  policy_registrar_ = std::make_unique<MachineLevelUserCloudPolicyRegistrar>(
-      device_management_service, url_loader_factory);
+  cloud_management_registrar_ =
+      std::make_unique<ChromeBrowserCloudManagementRegistrar>(
+          device_management_service, url_loader_factory);
   policy_fetcher_ = std::make_unique<MachineLevelUserCloudPolicyFetcher>(
       policy_manager, local_state, device_management_service,
       url_loader_factory);
@@ -209,10 +210,10 @@
     enrollment_start_time_ = base::Time::Now();
 
     // Not registered already, so do it now.
-    policy_registrar_->RegisterForPolicyWithEnrollmentToken(
+    cloud_management_registrar_->RegisterForCloudManagementWithEnrollmentToken(
         enrollment_token, client_id,
         base::Bind(&MachineLevelUserCloudPolicyController::
-                       RegisterForPolicyWithEnrollmentTokenCallback,
+                       RegisterForCloudManagementWithEnrollmentTokenCallback,
                    base::Unretained(this)));
 #if defined(OS_WIN)
     // This metric is only published on Windows to indicate how many user level
@@ -285,8 +286,9 @@
 }
 
 void MachineLevelUserCloudPolicyController::
-    RegisterForPolicyWithEnrollmentTokenCallback(const std::string& dm_token,
-                                                 const std::string& client_id) {
+    RegisterForCloudManagementWithEnrollmentTokenCallback(
+        const std::string& dm_token,
+        const std::string& client_id) {
   base::TimeDelta enrollment_time = base::Time::Now() - enrollment_start_time_;
 
   if (dm_token.empty()) {
diff --git a/chrome/browser/policy/machine_level_user_cloud_policy_controller.h b/chrome/browser/policy/machine_level_user_cloud_policy_controller.h
index d235bef4f..4e0e4aa 100644
--- a/chrome/browser/policy/machine_level_user_cloud_policy_controller.h
+++ b/chrome/browser/policy/machine_level_user_cloud_policy_controller.h
@@ -25,11 +25,11 @@
 }
 
 namespace policy {
+class ChromeBrowserCloudManagementRegistrar;
 class ConfigurationPolicyProvider;
 class MachineLevelUserCloudPolicyManager;
 class MachineLevelUserCloudPolicyFetcher;
 class MachineLevelUserCloudPolicyRegisterWatcher;
-class MachineLevelUserCloudPolicyRegistrar;
 
 // A class that setups and manages MachineLevelUserCloudPolicy.
 class MachineLevelUserCloudPolicyController {
@@ -94,7 +94,7 @@
  private:
   bool GetEnrollmentTokenAndClientId(std::string* enrollment_token,
                                      std::string* client_id);
-  void RegisterForPolicyWithEnrollmentTokenCallback(
+  void RegisterForCloudManagementWithEnrollmentTokenCallback(
       const std::string& dm_token,
       const std::string& client_id);
 
@@ -104,7 +104,8 @@
 
   base::ObserverList<Observer, true>::Unchecked observers_;
 
-  std::unique_ptr<MachineLevelUserCloudPolicyRegistrar> policy_registrar_;
+  std::unique_ptr<ChromeBrowserCloudManagementRegistrar>
+      cloud_management_registrar_;
   std::unique_ptr<MachineLevelUserCloudPolicyFetcher> policy_fetcher_;
     // This is an observer of the controller and needs to be declared after the
     // |observers_|.
diff --git a/chrome/browser/prefs/incognito_mode_prefs.h b/chrome/browser/prefs/incognito_mode_prefs.h
index 07fe795..03ad928 100644
--- a/chrome/browser/prefs/incognito_mode_prefs.h
+++ b/chrome/browser/prefs/incognito_mode_prefs.h
@@ -39,12 +39,7 @@
     AVAILABILITY_NUM_TYPES
   };
 
-  static constexpr Availability kDefaultAvailability =
-#if defined(INCOGNITO_DEFAULT_DISABLED)
-      DISABLED;
-#else
-      ENABLED;
-#endif
+  static constexpr Availability kDefaultAvailability = ENABLED;
 
   // Register incognito related preferences.
   static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);
diff --git a/chrome/browser/prefs/tracked/pref_hash_browsertest.cc b/chrome/browser/prefs/tracked/pref_hash_browsertest.cc
index fe64081..67913e7 100644
--- a/chrome/browser/prefs/tracked/pref_hash_browsertest.cc
+++ b/chrome/browser/prefs/tracked/pref_hash_browsertest.cc
@@ -432,15 +432,15 @@
 
 #else  // defined(OFFICIAL_BUILD)
 
-    using namespace chrome_prefs::internals;
-    if (trial_group == kSettingsEnforcementGroupNoEnforcement)
+    namespace internals = chrome_prefs::internals;
+    if (trial_group == internals::kSettingsEnforcementGroupNoEnforcement)
       return PROTECTION_DISABLED_FOR_GROUP;
-    if (trial_group == kSettingsEnforcementGroupEnforceAlways)
+    if (trial_group == internals::kSettingsEnforcementGroupEnforceAlways)
       return PROTECTION_ENABLED_BASIC;
-    if (trial_group == kSettingsEnforcementGroupEnforceAlwaysWithDSE)
+    if (trial_group == internals::kSettingsEnforcementGroupEnforceAlwaysWithDSE)
       return PROTECTION_ENABLED_DSE;
     if (trial_group ==
-        kSettingsEnforcementGroupEnforceAlwaysWithExtensionsAndDSE) {
+        internals::kSettingsEnforcementGroupEnforceAlwaysWithExtensionsAndDSE) {
       return PROTECTION_ENABLED_EXTENSIONS;
     }
     ADD_FAILURE();
diff --git a/chrome/browser/prerender/prerender_contents.cc b/chrome/browser/prerender/prerender_contents.cc
index 8a90ffb..bf5a1e4 100644
--- a/chrome/browser/prerender/prerender_contents.cc
+++ b/chrome/browser/prerender/prerender_contents.cc
@@ -112,17 +112,24 @@
     std::move(callback).Run(false);
   }
 
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override {
+      const GURL& target_url,
+      const std::string& partition_id,
+      SessionStorageNamespace* session_storage_namespace) override {
     // Since we don't want to permit child windows that would have a
     // window.opener property, terminate prerendering.
     prerender_contents_->Destroy(FINAL_STATUS_CREATE_NEW_WINDOW);
     // Cancel the popup.
-    return true;
+    return false;
   }
 
   bool OnGoToEntryOffset(int offset) override {
diff --git a/chrome/browser/previews/hints_fetcher_browsertest.cc b/chrome/browser/previews/hints_fetcher_browsertest.cc
index cbc9b166..8c1c7da 100644
--- a/chrome/browser/previews/hints_fetcher_browsertest.cc
+++ b/chrome/browser/previews/hints_fetcher_browsertest.cc
@@ -10,6 +10,7 @@
 #include "base/command_line.h"
 #include "base/containers/flat_set.h"
 #include "base/run_loop.h"
+#include "base/strings/strcat.h"
 #include "base/task/post_task.h"
 #include "base/task/thread_pool/thread_pool_instance.h"
 #include "base/test/metrics/histogram_tester.h"
@@ -27,6 +28,7 @@
 #include "chrome/test/base/in_process_browser_test.h"
 #include "chrome/test/base/ui_test_utils.h"
 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_features.h"
+#include "components/google/core/common/google_util.h"
 #include "components/optimization_guide/hint_cache_store.h"
 #include "components/optimization_guide/hints_component_info.h"
 #include "components/optimization_guide/hints_component_util.h"
@@ -42,12 +44,18 @@
 #include "components/previews/core/previews_black_list.h"
 #include "components/previews/core/previews_features.h"
 #include "components/previews/core/previews_switches.h"
+#include "components/ukm/test_ukm_recorder.h"
 #include "content/public/browser/browser_task_traits.h"
+#include "content/public/test/browser_test_base.h"
 #include "content/public/test/browser_test_utils.h"
 #include "content/public/test/network_connection_change_simulator.h"
+#include "net/dns/mock_host_resolver.h"
+#include "net/test/embedded_test_server/embedded_test_server.h"
 #include "net/test/embedded_test_server/http_request.h"
 #include "net/test/embedded_test_server/http_response.h"
+#include "services/metrics/public/cpp/ukm_builders.h"
 #include "services/network/public/cpp/network_quality_tracker.h"
+#include "third_party/blink/public/common/features.h"
 
 namespace {
 
@@ -79,6 +87,10 @@
     total = GetTotalHistogramSamples(histogram_tester, histogram_name);
     if (total >= count)
       return total;
+
+    content::FetchHistogramsFromChildProcesses();
+    SubprocessMetricsProvider::MergeHistogramDeltasForTesting();
+    base::RunLoop().RunUntilIdle();
   }
 }
 
@@ -102,6 +114,24 @@
   kMalformed = 2,
 };
 
+constexpr char kGoogleHost[] = "www.google.com";
+
+// Modifies |relative_url|:
+// Scheme of the returned URL matches the scheme of the |server|.
+// Host of the returned URL matches kGoogleHost.
+// Port number of the returned URL matches the port at which |server| is
+// listening.
+// Path of the returned URL is set to |relative_url|.
+GURL GetURLWithGoogleHost(net::EmbeddedTestServer* server,
+                          const std::string& relative_url) {
+  GURL server_base_url = server->base_url();
+  GURL base_url =
+      GURL(base::StrCat({server_base_url.scheme(), "://", kGoogleHost, ":",
+                         server_base_url.port()}));
+  EXPECT_TRUE(base_url.is_valid()) << base_url.possibly_invalid_spec();
+  return base_url.Resolve(relative_url);
+}
+
 }  // namespace
 
 // This test class sets up everything but does not enable any
@@ -121,6 +151,12 @@
     content::NetworkConnectionChangeSimulator().SetConnectionType(
         network::mojom::ConnectionType::CONNECTION_2G);
 
+    // Ensure that kGoogleHost resolves to the localhost where the embedded test
+    // server is listening.
+    host_resolver()->AddRule("*", "127.0.0.1");
+
+    ukm_recorder_ = std::make_unique<ukm::TestAutoSetUkmRecorder>();
+
     InProcessBrowserTest::SetUpOnMainThread();
   }
 
@@ -128,15 +164,19 @@
     origin_server_.reset(
         new net::EmbeddedTestServer(net::EmbeddedTestServer::TYPE_HTTPS));
     origin_server_->ServeFilesFromSourceDirectory("chrome/test/data/previews");
-    origin_server_->RegisterRequestHandler(base::BindRepeating(
-        &HintsFetcherDisabledBrowserTest::HandleOriginRequest,
-        base::Unretained(this)));
 
     ASSERT_TRUE(origin_server_->Start());
 
     https_url_ = origin_server_->GetURL("/hint_setup.html");
     ASSERT_TRUE(https_url().SchemeIs(url::kHttpsScheme));
 
+    search_results_page_url_ =
+        GetURLWithGoogleHost(origin_server_.get(), "/search_results_page.html");
+    ASSERT_TRUE(search_results_page_url_.is_valid() &&
+                search_results_page_url_.SchemeIs(url::kHttpsScheme) &&
+                google_util::IsGoogleHostname(search_results_page_url_.host(),
+                                              google_util::DISALLOW_SUBDOMAIN));
+
     hints_server_.reset(
         new net::EmbeddedTestServer(net::EmbeddedTestServer::TYPE_HTTPS));
     hints_server_->ServeFilesFromSourceDirectory("chrome/test/data/previews");
@@ -148,7 +188,9 @@
 
     if (IsOptimizationGuideKeyedServiceEnabled()) {
       param_feature_list_.InitWithFeatures(
-          {optimization_guide::features::kOptimizationGuideKeyedService}, {});
+          {optimization_guide::features::kOptimizationGuideKeyedService,
+           blink::features::kNavigationPredictor},
+          {});
     } else {
       param_feature_list_.InitWithFeatures(
           {}, {optimization_guide::features::kOptimizationGuideKeyedService});
@@ -158,6 +200,8 @@
   }
 
   void SetUpCommandLine(base::CommandLine* cmd) override {
+    cmd->AppendSwitch("ignore-certificate-errors");
+
     cmd->AppendSwitch("enable-spdy-proxy-auth");
 
     // Due to race conditions, it's possible that blacklist data is not loaded
@@ -293,6 +337,10 @@
     return &histogram_tester_;
   }
 
+  const GURL& search_results_page_url() const {
+    return search_results_page_url_;
+  }
+
   void SetExpectedHintsRequestForHosts(
       const base::flat_set<std::string>& hosts) {
     base::AutoLock lock(lock_);
@@ -304,6 +352,37 @@
     return count_hints_requests_received_;
   }
 
+  void WaitUntilHintsFetcherRequestReceived() {
+    while (true) {
+      {
+        // Acquire the |lock_| inside to avoid starving other consumers of the
+        // lock.
+        base::AutoLock lock(lock_);
+        if (count_hints_requests_received_ > 0)
+          return;
+      }
+      base::RunLoop().RunUntilIdle();
+    }
+  }
+
+  void ResetCountHintsRequestsReceived() {
+    base::AutoLock lock(lock_);
+    count_hints_requests_received_ = 0;
+  }
+
+  // Wait for page layout to happen. This is needed in some tests since the
+  // anchor elements are extracted from the webpage after page layout finishes.
+  void WaitForPageLayout() {
+    const char* entry_name =
+        ukm::builders::NavigationPredictorPageLinkMetrics::kEntryName;
+
+    if (ukm_recorder_->GetEntriesByName(entry_name).empty()) {
+      base::RunLoop run_loop;
+      ukm_recorder_->SetOnAddEntryCallback(entry_name, run_loop.QuitClosure());
+      run_loop.Run();
+    }
+  }
+
  protected:
   base::test::ScopedFeatureList scoped_feature_list_;
   std::unique_ptr<net::EmbeddedTestServer> origin_server_;
@@ -403,6 +482,8 @@
 
   GURL https_url_;
 
+  GURL search_results_page_url_;
+
   base::HistogramTester histogram_tester_;
 
   optimization_guide::testing::TestHintsComponentCreator
@@ -420,6 +501,8 @@
   // null, then the verification is not done.
   base::Optional<base::flat_set<std::string>> expect_hints_request_for_hosts_;
 
+  std::unique_ptr<ukm::TestAutoSetUkmRecorder> ukm_recorder_;
+
   DISALLOW_COPY_AND_ASSIGN(HintsFetcherDisabledBrowserTest);
 };
 
@@ -1252,3 +1335,90 @@
   // the blacklist.
   EXPECT_EQ(engaged_hosts, GetTopHostBlacklistSize());
 }
+
+class HintsFetcherSearchPageBrowserTest : public HintsFetcherBrowserTest {
+  void SetUpCommandLine(base::CommandLine* cmd) override {
+    cmd->AppendSwitch(optimization_guide::switches::
+                          kDisableFetchingHintsAtNavigationStartForTesting);
+    cmd->AppendSwitch("ignore-certificate-errors");
+    HintsFetcherBrowserTest::SetUpCommandLine(cmd);
+  }
+};
+
+// True if testing using the OptimizationGuideKeyedService implementation.
+INSTANTIATE_TEST_SUITE_P(OptimizationGuideKeyedServiceImplementation,
+                         HintsFetcherSearchPageBrowserTest,
+                         testing::Bool());
+
+IN_PROC_BROWSER_TEST_P(
+    HintsFetcherSearchPageBrowserTest,
+    DISABLE_ON_WIN_MAC_CHROMESOS(HintsFetcher_SRP_Slow_Connection)) {
+  g_browser_process->network_quality_tracker()
+      ->ReportEffectiveConnectionTypeForTesting(
+          net::EFFECTIVE_CONNECTION_TYPE_2G);
+
+  const base::HistogramTester* histogram_tester = GetHistogramTester();
+
+  // Whitelist NoScript for https_url()'s' host.
+  SetUpComponentUpdateHints(https_url());
+
+  // Expect that the browser initialization will record at least one sample
+  // in each of the following histograms as One Platform Hints are enabled.
+  EXPECT_GE(RetryForHistogramUntilCountReached(
+                histogram_tester,
+                "OptimizationGuide.HintsFetcher.GetHintsRequest.HostCount", 1),
+            1);
+
+  EXPECT_GE(RetryForHistogramUntilCountReached(
+                histogram_tester,
+                "OptimizationGuide.HintsFetcher.GetHintsRequest.Status", 1),
+            1);
+
+  histogram_tester->ExpectUniqueSample(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.Status", net::HTTP_OK, 1);
+  histogram_tester->ExpectUniqueSample(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.NetErrorCode", net::OK,
+      1);
+  histogram_tester->ExpectUniqueSample(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.HintCount", 1, 1);
+
+  // Hints fetching on SRP is enabled only when optimization keyed service is
+  // enabled.
+  if (!IsOptimizationGuideKeyedServiceEnabled())
+    return;
+
+  // Populate expected hosts with hosts contained in the html response of
+  // search_results_page_url().
+  base::flat_set<std::string> expected_hosts;
+  expected_hosts.insert(GURL("https://foo.com").host());
+  expected_hosts.insert(GURL("https://example.com").host());
+  expected_hosts.insert(GURL("https://example2.com").host());
+  SetExpectedHintsRequestForHosts(expected_hosts);
+
+  histogram_tester->ExpectTotalCount(
+      optimization_guide::kLoadedHintLocalHistogramString, 0);
+
+  // Navigate to a host not in the seeded site engagement service; it
+  // should be recorded as not covered by the hints fetcher.
+  ResetCountHintsRequestsReceived();
+  ui_test_utils::NavigateToURL(browser(), search_results_page_url());
+  WaitForPageLayout();
+
+  RetryForHistogramUntilCountReached(
+      histogram_tester, "AnchorElementMetrics.Visible.HighestNavigationScore",
+      1);
+
+  RetryForHistogramUntilCountReached(
+      histogram_tester,
+      "OptimizationGuide.HintsFetcher.NavigationHostCoveredByFetch", 1);
+
+  histogram_tester->ExpectUniqueSample(
+      "OptimizationGuide.HintsFetcher.NavigationHostCoveredByFetch", false, 1);
+
+  WaitUntilHintsFetcherRequestReceived();
+  EXPECT_EQ(1u, count_hints_requests_received());
+
+  RetryForHistogramUntilCountReached(
+      histogram_tester, optimization_guide::kLoadedHintLocalHistogramString,
+      IsOptimizationGuideKeyedServiceEnabled() ? 2 : 1);
+}
diff --git a/chrome/browser/previews/previews_content_util.cc b/chrome/browser/previews/previews_content_util.cc
index c058211..1ac3496 100644
--- a/chrome/browser/previews/previews_content_util.cc
+++ b/chrome/browser/previews/previews_content_util.cc
@@ -121,6 +121,12 @@
     }
   }
 
+  if (!previews::params::LitePageRedirectTriggerOnAPITransition() &&
+      navigation_handle->GetPageTransition() & ui::PAGE_TRANSITION_FROM_API) {
+    ineligible_reasons.push_back(
+        previews::LitePageRedirectIneligibleReason::kAPIPageTransition);
+  }
+
   // Record UMA.
   for (previews::LitePageRedirectIneligibleReason reason : ineligible_reasons) {
     previews::LogLitePageRedirectIneligibleReason(reason);
diff --git a/chrome/browser/previews/previews_lite_page_redirect_browsertest.cc b/chrome/browser/previews/previews_lite_page_redirect_browsertest.cc
index 80a5ec4..72258d6 100644
--- a/chrome/browser/previews/previews_lite_page_redirect_browsertest.cc
+++ b/chrome/browser/previews/previews_lite_page_redirect_browsertest.cc
@@ -1134,6 +1134,16 @@
         &result));
     EXPECT_EQ(kSubframeTitle, base::ASCIIToUTF16(result));
   }
+
+  {
+    base::HistogramTester histogram_tester;
+    NavigateParams params(browser(), https_url(), ui::PAGE_TRANSITION_FROM_API);
+    ui_test_utils::NavigateToURL(&params);
+    VerifyPreviewNotLoaded();
+    histogram_tester.ExpectBucketCount(
+        "Previews.ServerLitePage.IneligibleReasons",
+        previews::LitePageRedirectIneligibleReason::kAPIPageTransition, 1);
+  }
 }
 
 IN_PROC_BROWSER_TEST_P(
diff --git a/chrome/browser/previews/previews_lite_page_redirect_url_loader_interceptor.h b/chrome/browser/previews/previews_lite_page_redirect_url_loader_interceptor.h
index 3de4f34..9d44ad77 100644
--- a/chrome/browser/previews/previews_lite_page_redirect_url_loader_interceptor.h
+++ b/chrome/browser/previews/previews_lite_page_redirect_url_loader_interceptor.h
@@ -60,7 +60,8 @@
   kInvalidProxyHeaders = 11,
   kServiceProbeIncomplete = 12,
   kServiceProbeFailed = 13,
-  kMaxValue = kServiceProbeFailed,
+  kAPIPageTransition = 14,
+  kMaxValue = kAPIPageTransition,
 };
 
 // The response type from the previews server. This enum must
diff --git a/chrome/browser/referrer_policy_browsertest.cc b/chrome/browser/referrer_policy_browsertest.cc
index 154ac07..291e1ffa 100644
--- a/chrome/browser/referrer_policy_browsertest.cc
+++ b/chrome/browser/referrer_policy_browsertest.cc
@@ -15,6 +15,7 @@
 #include "chrome/browser/ui/browser.h"
 #include "chrome/browser/ui/browser_commands.h"
 #include "chrome/browser/ui/tabs/tab_strip_model.h"
+#include "chrome/common/chrome_features.h"
 #include "chrome/common/pref_names.h"
 #include "chrome/test/base/in_process_browser_test.h"
 #include "chrome/test/base/ui_test_utils.h"
@@ -29,25 +30,35 @@
 #include "content/public/browser/web_contents.h"
 #include "content/public/common/content_features.h"
 #include "content/public/test/browser_test_utils.h"
+#include "net/test/embedded_test_server/http_request.h"
 #include "services/network/public/cpp/features.h"
 #include "third_party/blink/public/platform/web_input_event.h"
 
 class ReferrerPolicyTest : public InProcessBrowserTest {
  public:
   ReferrerPolicyTest() : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {
+    // Subclasses might want to verify the requests that arrive at servers;
+    // register a default no-op handler that subclasses may override.
+    embedded_test_server()->RegisterRequestMonitor(base::BindRepeating(
+        &ReferrerPolicyTest::OnServerIncomingRequest, base::Unretained(this)));
+    https_server_.RegisterRequestMonitor(base::BindRepeating(
+        &ReferrerPolicyTest::OnServerIncomingRequest, base::Unretained(this)));
+
     https_server_.AddDefaultHandlers(GetChromeTestDataDir());
     EXPECT_TRUE(embedded_test_server()->Start());
     EXPECT_TRUE(https_server_.Start());
   }
   ~ReferrerPolicyTest() override {}
 
- protected:
   enum ExpectedReferrer {
     EXPECT_EMPTY_REFERRER,
     EXPECT_FULL_REFERRER,
     EXPECT_ORIGIN_AS_REFERRER
   };
 
+ protected:
+  virtual void OnServerIncomingRequest(const net::test_server::HttpRequest&) {}
+
   // Returns the expected title for the tab with the given (full) referrer and
   // the expected modification of it.
   base::string16 GetExpectedTitle(const GURL& url,
@@ -84,7 +95,8 @@
   enum LinkType { REGULAR_LINK, LINK_WITH_TARGET_BLANK, };
 
   enum RedirectType {
-    NO_REDIRECT,
+    NO_REDIRECT,        // direct navigation via HTTP
+    HTTPS_NO_REDIRECT,  // direct navigation via HTTPS
     SERVER_REDIRECT_FROM_HTTPS_TO_HTTP,
     SERVER_REDIRECT_FROM_HTTP_TO_HTTP,
     SERVER_REDIRECT_FROM_HTTP_TO_HTTPS
@@ -120,6 +132,10 @@
         redirect_url = embedded_test_server()->GetURL(
             "/referrer_policy/referrer-policy-log.html");
         break;
+      case HTTPS_NO_REDIRECT:
+        redirect_url =
+            https_server_.GetURL("/referrer_policy/referrer-policy-log.html");
+        break;
       case SERVER_REDIRECT_FROM_HTTPS_TO_HTTP:
         redirect_url = https_server_.GetURL(
             std::string("/server-redirect?") +
@@ -214,36 +230,10 @@
   net::EmbeddedTestServer https_server_;
 };
 
-class ReferrerPolicyCapReferrerToOriginOnCrossOriginTest
-    : public ReferrerPolicyTest {
- public:
-  ReferrerPolicyCapReferrerToOriginOnCrossOriginTest() {
-    scoped_feature_list_.InitAndEnableFeature(
-        network::features::kCapReferrerToOriginOnCrossOrigin);
-  }
-
- private:
-  base::test::ScopedFeatureList scoped_feature_list_;
-};
-
-class ReferrerPolicyWithReduceReferrerGranularityFlagTest
-    : public ReferrerPolicyTest {
- public:
-  ReferrerPolicyWithReduceReferrerGranularityFlagTest() {
-    scoped_feature_list_.InitAndEnableFeature(
-        features::kReducedReferrerGranularity);
-  }
-
- private:
-  base::test::ScopedFeatureList scoped_feature_list_;
-};
-
 // The basic behavior of referrer policies is covered by layout tests in
 // http/tests/security/referrer-policy-*. These tests cover (hopefully) all
 // code paths chrome uses to navigate. To keep the number of combinations down,
 // we only test the "origin" policy here.
-//
-// Some tests are marked as FAILS, see http://crbug.com/124750
 
 // Content initiated navigation, from HTTP to HTTP.
 IN_PROC_BROWSER_TEST_F(ReferrerPolicyTest, Origin) {
@@ -662,29 +652,279 @@
                   blink::WebMouseEvent::Button::kLeft, EXPECT_EMPTY_REFERRER);
 }
 
-// Reduced 'referer' granularity flag tests.
+// Parameters for testing functionality imposing ad-hoc restrictions
+// on the behavior of referrers, for instance absolute caps like
+// "never send referrers" (as of writing, features::kNoReferrers)
+// or "on cross-origin requests, never send more than the initiator's
+// origin" (features::kCapReferrerToOriginOnCrossOrigin).
+//
+// These tests assume a default policy of no-referrer-when-downgrade.
+struct ReferrerOverrideParams {
+  base::Optional<base::Feature> feature_to_enable;
+  network::mojom::ReferrerPolicy baseline_policy;
+  network::mojom::ReferrerPolicy expected_policy;
 
-// User initiated navigation, from HTTP to HTTPS via server redirect.
-IN_PROC_BROWSER_TEST_F(ReferrerPolicyTest, HttpLeftClickRedirectDefaultNoFlag) {
-  RunReferrerTest(network::mojom::ReferrerPolicy::kDefault, START_ON_HTTP,
-                  REGULAR_LINK, SERVER_REDIRECT_FROM_HTTP_TO_HTTPS,
-                  WindowOpenDisposition::CURRENT_TAB,
-                  blink::WebMouseEvent::Button::kLeft, EXPECT_FULL_REFERRER,
-                  network::mojom::ReferrerPolicy::kNoReferrerWhenDowngrade);
+  ReferrerPolicyTest::ExpectedReferrer same_origin_nav,  // HTTP -> HTTP
+      cross_origin_nav,                                  // HTTP -> HTTP
+      cross_origin_downgrade_nav,  // HTTPS -> HTTP, cross-origin
+      same_origin_to_cross_origin_redirect,
+      cross_origin_to_same_origin_redirect, same_origin_subresource,
+      same_origin_to_cross_origin_subresource_redirect;
+} kReferrerOverrideParams[] = {
+    {.feature_to_enable = features::kNoReferrers,
+     .baseline_policy = network::mojom::ReferrerPolicy::kAlways,
+     // The renderer's "have we completely disabled referrers?"
+     // implementation resets requests' referrer policies to the default when
+     // it excises their referrers.
+     .expected_policy =
+         content::Referrer::NetReferrerPolicyToBlinkReferrerPolicy(
+             content::Referrer::GetDefaultReferrerPolicy()),
+     .same_origin_nav = ReferrerPolicyTest::EXPECT_EMPTY_REFERRER,
+     .cross_origin_nav = ReferrerPolicyTest::EXPECT_EMPTY_REFERRER,
+     .cross_origin_downgrade_nav = ReferrerPolicyTest::EXPECT_EMPTY_REFERRER,
+     .same_origin_to_cross_origin_redirect =
+         ReferrerPolicyTest::EXPECT_EMPTY_REFERRER,
+     .cross_origin_to_same_origin_redirect =
+         ReferrerPolicyTest::EXPECT_EMPTY_REFERRER,
+     .same_origin_subresource = ReferrerPolicyTest::EXPECT_EMPTY_REFERRER,
+     .same_origin_to_cross_origin_subresource_redirect =
+         ReferrerPolicyTest::EXPECT_EMPTY_REFERRER},
+    {
+        .feature_to_enable =
+            network::features::kCapReferrerToOriginOnCrossOrigin,
+        .baseline_policy = network::mojom::ReferrerPolicy::kAlways,
+        // Applying the cap doesn't change the "referrer policy"
+        // attribute of a request
+        .expected_policy = network::mojom::ReferrerPolicy::kAlways,
+        .same_origin_nav = ReferrerPolicyTest::EXPECT_FULL_REFERRER,
+        .cross_origin_nav = ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+        .cross_origin_downgrade_nav =
+            ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+        .same_origin_to_cross_origin_redirect =
+            ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+        // Referrer policies get applied to whatever the current referrer is:
+        // in the case of a cross-origin -> same-origin redirect, we already
+        // will have truncated the referrer to the initiating origin
+        .cross_origin_to_same_origin_redirect =
+            ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+        .same_origin_subresource = ReferrerPolicyTest::EXPECT_FULL_REFERRER,
+        .same_origin_to_cross_origin_subresource_redirect =
+            ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+    },
+    {
+        .feature_to_enable = features::kReducedReferrerGranularity,
+        .baseline_policy = network::mojom::ReferrerPolicy::kDefault,
+        // kDefault gets resolved into a concrete policy when making requests
+        .expected_policy = network::mojom::ReferrerPolicy::
+            kNoReferrerWhenDowngradeOriginWhenCrossOrigin,
+        .same_origin_nav = ReferrerPolicyTest::EXPECT_FULL_REFERRER,
+        .cross_origin_nav = ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+        .cross_origin_downgrade_nav = ReferrerPolicyTest::EXPECT_EMPTY_REFERRER,
+        .same_origin_to_cross_origin_redirect =
+            ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+        .cross_origin_to_same_origin_redirect =
+            ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+        .same_origin_subresource = ReferrerPolicyTest::EXPECT_FULL_REFERRER,
+        .same_origin_to_cross_origin_subresource_redirect =
+            ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER,
+    },
+};
+
+class ReferrerOverrideTest
+    : public ReferrerPolicyTest,
+      public ::testing::WithParamInterface<ReferrerOverrideParams> {
+ public:
+  ReferrerOverrideTest() {
+    if (GetParam().feature_to_enable)
+      scoped_feature_list_.InitAndEnableFeature(*GetParam().feature_to_enable);
+  }
+
+  // Callback to verify that HTTP requests have the correct headers;
+  // currently, this is used on subresource-request tests. (See the comment
+  // on RequestCheck, below.)
+  void OnServerIncomingRequest(
+      const net::test_server::HttpRequest& request) final {
+    if (!check_on_requests_)
+      return;
+
+    if (request.relative_url != check_on_requests_->destination_url_to_match)
+      return;
+
+    auto it = request.headers.find("Referer");
+
+    if (check_on_requests_->expected_spec.empty()) {
+      EXPECT_TRUE(it == request.headers.end());
+    } else {
+      EXPECT_TRUE(it != request.headers.end() &&
+                  it->second == check_on_requests_->expected_spec);
+    }
+  }
+
+ protected:
+  // If "check_on_requests_" is set, for each HTTP request that arrives at
+  // either of the embedded test servers ("embedded_test_server()" and
+  // "https_server_"), if the relative URL equals that stored in
+  // "destination_url_to_match", OnServerIncomingRequest will assert
+  // that the provided Referer header's value equals the value of
+  // "expected_spec".
+  struct RequestCheck {
+    std::string expected_spec;
+    std::string destination_url_to_match;
+  };
+  base::Optional<RequestCheck> check_on_requests_;
+
+  // Test that the correct referrer is sent along with
+  // a subresource request.
+  // Parameter semantics are the same as for
+  // ReferrerPolicyTest::RunReferrerTest.
+  void RunSubresourceTest(StartOnProtocol start_protocol,
+                          RedirectType redirect,
+                          network::mojom::ReferrerPolicy baseline_policy,
+                          ExpectedReferrer expectation) {
+    GURL image_url;
+    switch (redirect) {
+      case NO_REDIRECT:
+        image_url = embedded_test_server()->GetURL("/referrer_policy/logo.gif");
+        break;
+      case HTTPS_NO_REDIRECT:
+        image_url = https_server_.GetURL("/referrer_policy/logo.gif");
+        break;
+      case SERVER_REDIRECT_FROM_HTTPS_TO_HTTP:
+        image_url = https_server_.GetURL(
+            std::string("/server-redirect?") +
+            embedded_test_server()->GetURL("/referrer_policy/logo.gif").spec());
+        break;
+      case SERVER_REDIRECT_FROM_HTTP_TO_HTTP:
+        image_url = embedded_test_server()->GetURL(
+            std::string("/server-redirect?") +
+            embedded_test_server()->GetURL("/referrer_policy/logo.gif").spec());
+        break;
+      case SERVER_REDIRECT_FROM_HTTP_TO_HTTPS:
+        image_url = embedded_test_server()->GetURL(
+            std::string("/server-redirect?") +
+            https_server_.GetURL("/referrer_policy/logo.gif").spec());
+        break;
+    }
+
+    std::string relative_url =
+        std::string("/referrer_policy/referrer-policy-subresource.html?") +
+        "policy=" + content::ReferrerPolicyToString(baseline_policy) +
+        "&redirect=" + image_url.spec();
+
+    auto* start_server = start_protocol == START_ON_HTTPS
+                             ? &https_server_
+                             : embedded_test_server();
+    const GURL start_url = start_server->GetURL(relative_url);
+
+    content::WebContents* tab =
+        browser()->tab_strip_model()->GetActiveWebContents();
+
+    check_on_requests_ = RequestCheck{"", "/referrer_policy/logo.gif"};
+    switch (expectation) {
+      case ReferrerPolicyTest::EXPECT_EMPTY_REFERRER:
+        check_on_requests_->expected_spec = "";
+        break;
+      case ReferrerPolicyTest::EXPECT_FULL_REFERRER:
+        check_on_requests_->expected_spec = start_url.spec();
+        break;
+      case ReferrerPolicyTest::EXPECT_ORIGIN_AS_REFERRER:
+        check_on_requests_->expected_spec = start_url.GetWithEmptyPath().spec();
+        break;
+    }
+
+    // set by referrer-policy-subresource.html JS after the embedded image loads
+    base::string16 expected_title(base::ASCIIToUTF16("loaded"));
+    std::unique_ptr<content::TitleWatcher> title_watcher(
+        new content::TitleWatcher(tab, expected_title));
+    ui_test_utils::NavigateToURL(browser(), start_url);
+
+    // Wait for the page to load; during the load, since check_on_requests_ is
+    // nonempty, OnServerIncomingRequest will validate the referrers.
+    EXPECT_EQ(expected_title, title_watcher->WaitAndGetTitle());
+  }
+
+ private:
+  base::test::ScopedFeatureList scoped_feature_list_;
+};
+
+INSTANTIATE_TEST_SUITE_P(
+    WithOverrideParams,
+    ReferrerOverrideTest,
+    ::testing::ValuesIn(kReferrerOverrideParams),
+    [](const ::testing::TestParamInfo<ReferrerOverrideParams>& info) {
+      if (info.param.feature_to_enable)
+        return info.param.feature_to_enable->name;
+      return "(no feature)";
+    });
+
+IN_PROC_BROWSER_TEST_P(ReferrerOverrideTest, SameOriginNavigation) {
+  RunReferrerTest(GetParam().baseline_policy, START_ON_HTTP, REGULAR_LINK,
+                  NO_REDIRECT, WindowOpenDisposition::CURRENT_TAB,
+                  blink::WebMouseEvent::Button::kNoButton,
+                  GetParam().same_origin_nav, GetParam().expected_policy);
 }
 
-IN_PROC_BROWSER_TEST_F(ReferrerPolicyWithReduceReferrerGranularityFlagTest,
-                       HttpLeftClickRedirectDefaultFlag) {
-  network::mojom::ReferrerPolicy expected_referrer_policy = network::mojom::
-      ReferrerPolicy::kNoReferrerWhenDowngradeOriginWhenCrossOrigin;
-
-  RunReferrerTest(network::mojom::ReferrerPolicy::kDefault, START_ON_HTTP,
-                  REGULAR_LINK, SERVER_REDIRECT_FROM_HTTP_TO_HTTPS,
-                  WindowOpenDisposition::CURRENT_TAB,
-                  blink::WebMouseEvent::Button::kLeft,
-                  EXPECT_ORIGIN_AS_REFERRER, expected_referrer_policy);
+IN_PROC_BROWSER_TEST_P(ReferrerOverrideTest, CrossOriginNavigation) {
+  RunReferrerTest(GetParam().baseline_policy, START_ON_HTTP, REGULAR_LINK,
+                  HTTPS_NO_REDIRECT, WindowOpenDisposition::CURRENT_TAB,
+                  blink::WebMouseEvent::Button::kNoButton,
+                  GetParam().cross_origin_nav, GetParam().expected_policy);
 }
 
+IN_PROC_BROWSER_TEST_P(ReferrerOverrideTest, CrossOriginDowngradeNavigation) {
+  RunReferrerTest(GetParam().baseline_policy, START_ON_HTTPS, REGULAR_LINK,
+                  NO_REDIRECT, WindowOpenDisposition::CURRENT_TAB,
+                  blink::WebMouseEvent::Button::kNoButton,
+                  GetParam().cross_origin_downgrade_nav,
+                  GetParam().expected_policy);
+}
+
+IN_PROC_BROWSER_TEST_P(ReferrerOverrideTest, CrossOriginRedirect) {
+  RunReferrerTest(GetParam().baseline_policy, START_ON_HTTP, REGULAR_LINK,
+                  SERVER_REDIRECT_FROM_HTTP_TO_HTTPS,
+                  WindowOpenDisposition::CURRENT_TAB,
+                  blink::WebMouseEvent::Button::kNoButton,
+                  GetParam().same_origin_to_cross_origin_redirect,
+                  GetParam().expected_policy);
+}
+
+IN_PROC_BROWSER_TEST_P(ReferrerOverrideTest, CrossOriginToSameOriginRedirect) {
+  RunReferrerTest(GetParam().baseline_policy, START_ON_HTTP, REGULAR_LINK,
+                  SERVER_REDIRECT_FROM_HTTPS_TO_HTTP,
+                  WindowOpenDisposition::CURRENT_TAB,
+                  blink::WebMouseEvent::Button::kNoButton,
+                  GetParam().cross_origin_to_same_origin_redirect,
+                  GetParam().expected_policy);
+}
+
+IN_PROC_BROWSER_TEST_P(ReferrerOverrideTest, SameOriginSubresource) {
+  RunSubresourceTest(START_ON_HTTP, NO_REDIRECT, GetParam().baseline_policy,
+                     GetParam().same_origin_subresource);
+}
+
+IN_PROC_BROWSER_TEST_P(ReferrerOverrideTest,
+                       SameOriginToCrossOriginSubresourceRedirect) {
+  RunSubresourceTest(
+      START_ON_HTTP, SERVER_REDIRECT_FROM_HTTP_TO_HTTPS,
+      GetParam().baseline_policy,
+      GetParam().same_origin_to_cross_origin_subresource_redirect);
+}
+
+// Most of the functionality of the referrer-cap flag is covered by
+// ReferrerOverrideTest; these couple additional tests test the flag's
+// interaction with other referrer policies
+class ReferrerPolicyCapReferrerToOriginOnCrossOriginTest
+    : public ReferrerPolicyTest {
+ public:
+  ReferrerPolicyCapReferrerToOriginOnCrossOriginTest() {
+    scoped_feature_list_.InitAndEnableFeature(
+        network::features::kCapReferrerToOriginOnCrossOrigin);
+  }
+
+ private:
+  base::test::ScopedFeatureList scoped_feature_list_;
+};
+
 // Test that capping referrer granularity at origin on cross-origin requests
 // correctly defers to a more restrictive referrer policy on a
 // cross-origin navigation.
@@ -697,18 +937,6 @@
 }
 
 // Test that capping referrer granularity at origin on cross-origin requests
-// correctly overrides a less restrictive referrer policy on a
-// cross-origin navigation.
-IN_PROC_BROWSER_TEST_F(ReferrerPolicyCapReferrerToOriginOnCrossOriginTest,
-                       CorrectlyOverridesOnNavigation) {
-  RunReferrerTest(network::mojom::ReferrerPolicy::kAlways, START_ON_HTTPS,
-                  REGULAR_LINK, NO_REDIRECT /*direct navigation x-origin*/,
-                  WindowOpenDisposition::CURRENT_TAB,
-                  blink::WebMouseEvent::Button::kLeft,
-                  EXPECT_ORIGIN_AS_REFERRER);
-}
-
-// Test that capping referrer granularity at origin on cross-origin requests
 // correctly defers to a more restrictive referrer policy on a
 // cross-origin redirect.
 IN_PROC_BROWSER_TEST_F(ReferrerPolicyCapReferrerToOriginOnCrossOriginTest,
@@ -719,50 +947,6 @@
                   blink::WebMouseEvent::Button::kLeft, EXPECT_EMPTY_REFERRER);
 }
 
-// Test that capping referrer granularity at origin on cross-origin requests
-// correctly overrides a less restrictive referrer policy on a
-// cross-origin redirect.
-IN_PROC_BROWSER_TEST_F(ReferrerPolicyCapReferrerToOriginOnCrossOriginTest,
-                       CorrectlyOverridesOnRedirect) {
-  RunReferrerTest(
-      network::mojom::ReferrerPolicy::kAlways, START_ON_HTTP, REGULAR_LINK,
-      SERVER_REDIRECT_FROM_HTTP_TO_HTTPS, WindowOpenDisposition::CURRENT_TAB,
-      blink::WebMouseEvent::Button::kLeft, EXPECT_ORIGIN_AS_REFERRER);
-}
-
-// Test that capping referrer granularity at origin on cross-origin requests
-// correctly respects a less restrictive referrer policy on a
-// same-origin navigation.
-IN_PROC_BROWSER_TEST_F(ReferrerPolicyCapReferrerToOriginOnCrossOriginTest,
-                       DeclinesToOverrideOnSameOriginNavigation) {
-  RunReferrerTest(network::mojom::ReferrerPolicy::kAlways, START_ON_HTTP,
-                  REGULAR_LINK, NO_REDIRECT /*direct navigation same-origin*/,
-                  WindowOpenDisposition::CURRENT_TAB,
-                  blink::WebMouseEvent::Button::kLeft, EXPECT_FULL_REFERRER);
-}
-
-// Test that capping referrer granularity at origin on cross-origin requests
-// correctly respects a less restrictive referrer policy on a
-// same-origin redirect.
-IN_PROC_BROWSER_TEST_F(ReferrerPolicyCapReferrerToOriginOnCrossOriginTest,
-                       DeclinesToOverrideOnSameOriginRedirect) {
-  RunReferrerTest(network::mojom::ReferrerPolicy::kAlways, START_ON_HTTP,
-                  REGULAR_LINK, SERVER_REDIRECT_FROM_HTTP_TO_HTTP,
-                  WindowOpenDisposition::CURRENT_TAB,
-                  blink::WebMouseEvent::Button::kLeft, EXPECT_FULL_REFERRER);
-}
-
-// Test that, when capping referrer granularity at origin on cross-origin
-// requests, the referrer remains truncated if we're redirected back
-// to the initiating origin.
-IN_PROC_BROWSER_TEST_F(ReferrerPolicyCapReferrerToOriginOnCrossOriginTest,
-                       OverrideMaintainedOnRedirectBackToOriginalOrigin) {
-  RunReferrerTest(
-      network::mojom::ReferrerPolicy::kAlways, START_ON_HTTPS, REGULAR_LINK,
-      SERVER_REDIRECT_FROM_HTTP_TO_HTTPS, WindowOpenDisposition::CURRENT_TAB,
-      blink::WebMouseEvent::Button::kLeft, EXPECT_ORIGIN_AS_REFERRER);
-}
-
 // Test that, when the cross-origin referrer cap is on but we also have the
 // "no referrers at all" pref set, we send no referrer at all on cross-origin
 // requests.
diff --git a/chrome/browser/resource_coordinator/local_site_characteristics_data_unittest_utils.cc b/chrome/browser/resource_coordinator/local_site_characteristics_data_unittest_utils.cc
index 2b870a0..82565b1 100644
--- a/chrome/browser/resource_coordinator/local_site_characteristics_data_unittest_utils.cc
+++ b/chrome/browser/resource_coordinator/local_site_characteristics_data_unittest_utils.cc
@@ -8,11 +8,11 @@
 
 #include "base/bind_helpers.h"
 #include "base/task/post_task.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
 #include "chrome/browser/resource_coordinator/local_site_characteristics_data_store_factory.h"
 #include "chrome/browser/resource_coordinator/local_site_characteristics_webcontents_observer.h"
 #include "chrome/browser/resource_coordinator/tab_helper.h"
 #include "chrome/browser/resource_coordinator/tab_manager_features.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
 #include "content/public/browser/system_connector.h"
diff --git a/chrome/browser/resource_coordinator/local_site_characteristics_webcontents_observer.cc b/chrome/browser/resource_coordinator/local_site_characteristics_webcontents_observer.cc
index df2fa35..04307b9 100644
--- a/chrome/browser/resource_coordinator/local_site_characteristics_webcontents_observer.cc
+++ b/chrome/browser/resource_coordinator/local_site_characteristics_webcontents_observer.cc
@@ -7,16 +7,16 @@
 #include "base/bind.h"
 #include "base/metrics/histogram_macros.h"
 #include "base/threading/sequenced_task_runner_handle.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/resource_coordinator/local_site_characteristics_data_store_factory.h"
 #include "chrome/browser/resource_coordinator/tab_helper.h"
 #include "chrome/browser/resource_coordinator/time.h"
 #include "chrome/browser/resource_coordinator/utils.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 #include "content/public/browser/navigation_handle.h"
 #include "content/public/browser/web_contents.h"
 
diff --git a/chrome/browser/resource_coordinator/resource_coordinator_parts.cc b/chrome/browser/resource_coordinator/resource_coordinator_parts.cc
index 4d72b60f..7273896 100644
--- a/chrome/browser/resource_coordinator/resource_coordinator_parts.cc
+++ b/chrome/browser/resource_coordinator/resource_coordinator_parts.cc
@@ -4,7 +4,7 @@
 
 #include "chrome/browser/resource_coordinator/resource_coordinator_parts.h"
 
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
 
 namespace resource_coordinator {
 
diff --git a/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc b/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc
index 843ce13..76632ca 100644
--- a/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc
+++ b/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc
@@ -423,6 +423,16 @@
   origin_trial_freeze_policy_ = policy;
 }
 
+void TabLifecycleUnitSource::TabLifecycleUnit::SetIsHoldingWebLock(
+    bool is_holding_weblock) {
+  is_holding_weblock_ = is_holding_weblock;
+}
+
+void TabLifecycleUnitSource::TabLifecycleUnit::SetIsHoldingIndexedDBLock(
+    bool is_holding_indexeddb_lock) {
+  is_holding_indexeddb_lock_ = is_holding_indexeddb_lock;
+}
+
 void TabLifecycleUnitSource::TabLifecycleUnit::RequestFreezeForDiscard(
     LifecycleUnitDiscardReason reason) {
   DCHECK_EQ(reason, LifecycleUnitDiscardReason::PROACTIVE);
diff --git a/chrome/browser/resource_coordinator/tab_lifecycle_unit.h b/chrome/browser/resource_coordinator/tab_lifecycle_unit.h
index a66b2835..9fcdc00 100644
--- a/chrome/browser/resource_coordinator/tab_lifecycle_unit.h
+++ b/chrome/browser/resource_coordinator/tab_lifecycle_unit.h
@@ -93,6 +93,10 @@
   // Updates the tab's origin trial freeze policy.
   void UpdateOriginTrialFreezePolicy(mojom::InterventionPolicy policy);
 
+  // Setters for the WebLock and IndexedDB lock usage properties.
+  void SetIsHoldingWebLock(bool is_holding_weblock);
+  void SetIsHoldingIndexedDBLock(bool is_holding_indexeddb_lock);
+
   // LifecycleUnit:
   TabLifecycleUnitExternal* AsTabLifecycleUnitExternal() override;
   base::string16 GetTitle() const override;
@@ -225,6 +229,14 @@
   // tab was "recently audible" otherwise.
   base::TimeTicks recently_audible_time_;
 
+  // Indicates if at least one of the frames of this tab is currently holding
+  // at least one WebLock.
+  bool is_holding_weblock_ = false;
+
+  // Indicates if at least one of the frames of this tab is currently holding
+  // at least one IndexedDB Lock.
+  bool is_holding_indexeddb_lock_ = false;
+
   std::unique_ptr<TabLifecycleUnitExternalImpl> external_impl_;
 
   DISALLOW_COPY_AND_ASSIGN(TabLifecycleUnit);
diff --git a/chrome/browser/resource_coordinator/tab_lifecycle_unit_source.cc b/chrome/browser/resource_coordinator/tab_lifecycle_unit_source.cc
index f62c2b8..ba3232c6 100644
--- a/chrome/browser/resource_coordinator/tab_lifecycle_unit_source.cc
+++ b/chrome/browser/resource_coordinator/tab_lifecycle_unit_source.cc
@@ -9,9 +9,6 @@
 #include "base/stl_util.h"
 #include "base/task/post_task.h"
 #include "chrome/browser/browser_process.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
 #include "chrome/browser/resource_coordinator/discard_metrics_lifecycle_unit_observer.h"
 #include "chrome/browser/resource_coordinator/lifecycle_unit_source_observer.h"
 #include "chrome/browser/resource_coordinator/resource_coordinator_parts.h"
@@ -24,6 +21,9 @@
 #include "chrome/browser/ui/recently_audible_helper.h"
 #include "chrome/browser/ui/tabs/tab_strip_model.h"
 #include "chrome/common/pref_names.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 #include "components/prefs/pref_change_registrar.h"
 #include "components/prefs/pref_service.h"
 #include "content/public/browser/browser_task_traits.h"
@@ -97,6 +97,30 @@
     }
   }
 
+  static void OnPageIsHoldingWebLockChangedImpl(
+      const WebContentsProxy& contents_proxy,
+      bool is_holding_weblock) {
+    DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
+    // If the web contents is still alive then dispatch to the actual
+    // implementation in TabLifecycleUnitSource.
+    if (auto* contents = contents_proxy.Get()) {
+      TabLifecycleUnitSource::OnIsHoldingWebLockChanged(contents,
+                                                        is_holding_weblock);
+    }
+  }
+
+  static void OnPageIsHoldingIndexedDBLockChangedImpl(
+      const WebContentsProxy& contents_proxy,
+      bool is_holding_indexeddb_lock) {
+    DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
+    // If the web contents is still alive then dispatch to the actual
+    // implementation in TabLifecycleUnitSource.
+    if (auto* contents = contents_proxy.Get()) {
+      TabLifecycleUnitSource::OnIsHoldingIndexedDBLockChanged(
+          contents, is_holding_indexeddb_lock);
+    }
+  }
+
   // performance_manager::PageNode::ObserverDefaultImpl::
   void OnPageLifecycleStateChanged(const PageNode* page_node) override {
     // Forward the notification over to the UI thread.
@@ -118,6 +142,25 @@
             page_node->GetOriginTrialFreezePolicy()));
   }
 
+  void OnPageIsHoldingWebLockChanged(const PageNode* page_node) override {
+    // Forward the notification over to the UI thread.
+    base::PostTask(
+        FROM_HERE, {content::BrowserThread::UI},
+        base::BindOnce(
+            &TabLifecycleStateObserver::OnPageIsHoldingWebLockChangedImpl,
+            page_node->GetContentsProxy(), page_node->IsHoldingWebLock()));
+  }
+
+  void OnPageIsHoldingIndexedDBLockChanged(const PageNode* page_node) override {
+    // Forward the notification over to the UI thread.
+    base::PostTask(
+        FROM_HERE, {content::BrowserThread::UI},
+        base::BindOnce(
+            &TabLifecycleStateObserver::OnPageIsHoldingIndexedDBLockChangedImpl,
+            page_node->GetContentsProxy(),
+            page_node->IsHoldingIndexedDBLock()));
+  }
+
   void OnPassedToGraph(Graph* graph) override {
     graph->AddPageNodeObserver(this);
   }
@@ -384,6 +427,30 @@
     lifecycle_unit->UpdateOriginTrialFreezePolicy(policy);
 }
 
+// static
+void TabLifecycleUnitSource::OnIsHoldingWebLockChanged(
+    content::WebContents* web_contents,
+    bool is_holding_weblock) {
+  TabLifecycleUnit* lifecycle_unit = GetTabLifecycleUnit(web_contents);
+
+  // Some WebContents aren't attached to a tab, so there is no corresponding
+  // TabLifecycleUnit.
+  if (lifecycle_unit)
+    lifecycle_unit->SetIsHoldingWebLock(is_holding_weblock);
+}
+
+// static
+void TabLifecycleUnitSource::OnIsHoldingIndexedDBLockChanged(
+    content::WebContents* web_contents,
+    bool is_holding_indexeddb_lock) {
+  TabLifecycleUnit* lifecycle_unit = GetTabLifecycleUnit(web_contents);
+
+  // Some WebContents aren't attached to a tab, so there is no corresponding
+  // TabLifecycleUnit.
+  if (lifecycle_unit)
+    lifecycle_unit->SetIsHoldingIndexedDBLock(is_holding_indexeddb_lock);
+}
+
 void TabLifecycleUnitSource::SetTabLifecyclesEnterprisePolicy(bool enabled) {
   tab_lifecycles_enterprise_policy_ = enabled;
 }
diff --git a/chrome/browser/resource_coordinator/tab_lifecycle_unit_source.h b/chrome/browser/resource_coordinator/tab_lifecycle_unit_source.h
index 8b9390cdf..2387e05f 100644
--- a/chrome/browser/resource_coordinator/tab_lifecycle_unit_source.h
+++ b/chrome/browser/resource_coordinator/tab_lifecycle_unit_source.h
@@ -154,6 +154,11 @@
   static void OnOriginTrialFreezePolicyChanged(
       content::WebContents* web_contents,
       mojom::InterventionPolicy policy);
+  static void OnIsHoldingWebLockChanged(content::WebContents* web_contents,
+                                        bool is_holding_weblock);
+  static void OnIsHoldingIndexedDBLockChanged(
+      content::WebContents* web_contents,
+      bool is_holding_indexeddb_lock);
 
   // Callback for TabLifecyclesEnterprisePreferenceMonitor.
   void SetTabLifecyclesEnterprisePolicy(bool enabled);
diff --git a/chrome/browser/resource_coordinator/tab_manager.cc b/chrome/browser/resource_coordinator/tab_manager.cc
index fd23e8b..1bc7596ee 100644
--- a/chrome/browser/resource_coordinator/tab_manager.cc
+++ b/chrome/browser/resource_coordinator/tab_manager.cc
@@ -32,7 +32,6 @@
 #include "chrome/browser/media/webrtc/media_capture_devices_dispatcher.h"
 #include "chrome/browser/media/webrtc/media_stream_capture_indicator.h"
 #include "chrome/browser/memory/oom_memory_details.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/resource_coordinator/background_tab_navigation_throttle.h"
 #include "chrome/browser/resource_coordinator/resource_coordinator_parts.h"
@@ -54,6 +53,7 @@
 #include "chrome/common/chrome_constants.h"
 #include "chrome/common/chrome_features.h"
 #include "chrome/common/url_constants.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "components/variations/variations_associated_data.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
diff --git a/chrome/browser/resource_coordinator/tab_manager_resource_coordinator_signal_observer.cc b/chrome/browser/resource_coordinator/tab_manager_resource_coordinator_signal_observer.cc
index d48aeea..e4387cd 100644
--- a/chrome/browser/resource_coordinator/tab_manager_resource_coordinator_signal_observer.cc
+++ b/chrome/browser/resource_coordinator/tab_manager_resource_coordinator_signal_observer.cc
@@ -7,12 +7,12 @@
 #include "base/task/post_task.h"
 #include "base/time/time.h"
 #include "chrome/browser/browser_process.h"
-#include "chrome/browser/performance_manager/public/graph/graph_operations.h"
 #include "chrome/browser/resource_coordinator/resource_coordinator_parts.h"
 #include "chrome/browser/resource_coordinator/tab_load_tracker.h"
 #include "chrome/browser/resource_coordinator/tab_manager_stats_collector.h"
 #include "chrome/browser/resource_coordinator/tab_manager_web_contents_data.h"
 #include "chrome/browser/resource_coordinator/utils.h"
+#include "components/performance_manager/public/graph/graph_operations.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
 
diff --git a/chrome/browser/resource_coordinator/tab_manager_resource_coordinator_signal_observer.h b/chrome/browser/resource_coordinator/tab_manager_resource_coordinator_signal_observer.h
index 6443f14..a36bdb6 100644
--- a/chrome/browser/resource_coordinator/tab_manager_resource_coordinator_signal_observer.h
+++ b/chrome/browser/resource_coordinator/tab_manager_resource_coordinator_signal_observer.h
@@ -6,11 +6,11 @@
 #define CHROME_BROWSER_RESOURCE_COORDINATOR_TAB_MANAGER_RESOURCE_COORDINATOR_SIGNAL_OBSERVER_H_
 
 #include "base/macros.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
 #include "chrome/browser/resource_coordinator/tab_manager.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 
 namespace resource_coordinator {
 
diff --git a/chrome/browser/resource_coordinator/tab_manager_stats_collector_unittest.cc b/chrome/browser/resource_coordinator/tab_manager_stats_collector_unittest.cc
index c92c059..be928d9 100644
--- a/chrome/browser/resource_coordinator/tab_manager_stats_collector_unittest.cc
+++ b/chrome/browser/resource_coordinator/tab_manager_stats_collector_unittest.cc
@@ -18,7 +18,6 @@
 #include "base/time/tick_clock.h"
 #include "base/time/time.h"
 #include "chrome/browser/browser_process.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
 #include "chrome/browser/resource_coordinator/local_site_characteristics_data_unittest_utils.h"
 #include "chrome/browser/resource_coordinator/tab_helper.h"
 #include "chrome/browser/resource_coordinator/tab_load_tracker.h"
@@ -27,6 +26,7 @@
 #include "chrome/test/base/chrome_render_view_host_test_harness.h"
 #include "chrome/test/base/test_browser_window.h"
 #include "chrome/test/base/testing_profile.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
 #include "components/ukm/test_ukm_recorder.h"
 #include "content/public/browser/web_contents.h"
 #include "content/public/test/web_contents_tester.h"
diff --git a/chrome/browser/resource_coordinator/tab_manager_unittest.cc b/chrome/browser/resource_coordinator/tab_manager_unittest.cc
index 54b5b37..438f48e7 100644
--- a/chrome/browser/resource_coordinator/tab_manager_unittest.cc
+++ b/chrome/browser/resource_coordinator/tab_manager_unittest.cc
@@ -26,7 +26,6 @@
 #include "build/build_config.h"
 #include "chrome/browser/browser_process.h"
 #include "chrome/browser/metrics/desktop_session_duration/desktop_session_duration_tracker.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/resource_coordinator/background_tab_navigation_throttle.h"
 #include "chrome/browser/resource_coordinator/local_site_characteristics_data_unittest_utils.h"
@@ -48,6 +47,7 @@
 #include "chrome/common/url_constants.h"
 #include "chrome/test/base/test_browser_window.h"
 #include "chrome/test/base/testing_profile.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
 #include "components/variations/variations_associated_data.h"
 #include "content/public/browser/render_frame_host.h"
 #include "content/public/browser/render_process_host.h"
diff --git a/chrome/browser/resources/accessibility/accessibility.html b/chrome/browser/resources/accessibility/accessibility.html
index d40012b..1d9b645 100644
--- a/chrome/browser/resources/accessibility/accessibility.html
+++ b/chrome/browser/resources/accessibility/accessibility.html
@@ -17,11 +17,20 @@
 </head>
 <body>
   <h1>Accessibility Internals</h1>
+  <p>
+    Use this page to inspect the internal representation of accessibility in
+    Chrome. You can see and modify the various accessibility modes Chrome has.
+    You can also view the accessibility tree for a specific page, or for the
+    Chrome app natively.
+  </p>
 
   <div class="columns">
     <div class="column">
-      <h2>Global accessibility mode:</h2>
-
+      <h2>Accessibility modes:</h2>
+      <p>
+        Check/uncheck accessibility modes to see how they change a page's
+        accessibility.
+      </p>
       <div class="checkbox-row">
         <label>
           <span class="checkbox-wrapper">
@@ -103,8 +112,25 @@
         Automatically labels images.
       </div>
 
-      <h2>Options:</h2>
+      <h2>Command line options:</h2>
+      <p>
+        Accessibility features in Chrome are off by default and enabled
+        automatically on-demand. Changes to these modes only take effect
+        until the next time Chrome is restarted.
+      </p>
+      <p>
+        To force accessibility to be enabled at launch, run Chrome with this
+        flag:
+        <pre>--force-renderer-accessibility</pre>
+      </p>
+      <p>
+        To disable accessibility, run Chrome with this flag:
+        <pre>--disable-renderer-accessibility</pre>
+      </p>
 
+    </div>
+    <div class="column">
+      <h2>Accessibility tree viewing options:</h2>
       <div class="checkbox-row">
         <span class="checkbox-wrapper">
           <input type="checkbox" id="internal"
@@ -118,24 +144,7 @@
         Show internal accessibility tree instead of native
       </div>
 
-    </div>
-    <div class="column">
-      <p>
-        Accessibility features in Chrome are off by default and enabled
-        automatically on-demand.  Changes to this page only take effect
-        until the next time Chrome is restarted.
-      </p>
-      <p>
-        To force accessibility to be enabled at launch, run Chrome with this
-        command-line flag:
-        <pre>--force-renderer-accessibility</pre>
-      </p>
-      <p>
-        To disable accessibility, run Chrome with this flag:
-        <pre>--disable-renderer-accessibility</pre>
-      </p>
-
-      <h2>Filters:</h2>
+      <h3>Filters:</h3>
       <p>
         Use filters to match the attributes and attribute values you want
         included in the output. Filters can contain simple wildcards (*) only,
@@ -176,18 +185,6 @@
     </div>
   </div>
 
-  <!--
-  <div id="global" class="row">Global accessibility mode:
-    <a is="action-link" role="button" id="toggle_global"
-       aria-labelledby="global"></a>
-  </div>
-
-  <div id="internal" class="row">
-    Show internal accessibility tree instead of native:
-    <a is="action-link" role="button" id="toggle_internal"
-       aria-labelledby="internal"></a>
-  </div>
--->
   <h2>Chrome Native UI:</h2>
   <div id="browsers" class="list">
     Set a delay, in milliseconds, before getting the native accessibility tree:
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_am.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_am.xtb
index 64c8f77..1a811b9 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_am.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_am.xtb
@@ -22,6 +22,7 @@
 
         የማከማቻ ፈቃዶች ያላቸው መተግበሪያዎች የእርስዎ ፎቶዎች እና ቪዲዮዎች መዳረሻ ይኖራቸዋል።</translation>
 <translation id="3081586908890909590">ቪዲዮ ለመቅረጽ ቀይር</translation>
+<translation id="313467653172006084">60 ክ/ሴ</translation>
 <translation id="3183731565330012717">የፍርግርግ ዓይነት</translation>
 <translation id="3227137524299004712">ማይክሮፎን</translation>
 <translation id="3259149966178251584">የካሜራ ምስል ጥራት</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ar.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ar.xtb
index cdcf3bb..1bdaddca 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ar.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ar.xtb
@@ -22,6 +22,7 @@
 
         ستتمكن التطبيقات المزوّدة بأذونات مساحة التخزين من الوصول إلى صورك وفيديوهاتك.</translation>
 <translation id="3081586908890909590">التبديل لتسجيل فيديو</translation>
+<translation id="313467653172006084">30 صورة في الثانية</translation>
 <translation id="3183731565330012717">نوع الشبكة</translation>
 <translation id="3227137524299004712">الميكروفون</translation>
 <translation id="3259149966178251584">درجة دقة الكاميرا</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_bg.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_bg.xtb
index 8f2a8e05..d724013c 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_bg.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_bg.xtb
@@ -22,6 +22,7 @@
 
 Приложенията с разрешения за хранилището ще имат достъп до снимките и видеоклиповете ви.</translation>
 <translation id="3081586908890909590">Превключване към режима за запис на видеоклипове</translation>
+<translation id="313467653172006084">30 кдр/сек</translation>
 <translation id="3183731565330012717">Тип решетка</translation>
 <translation id="3227137524299004712">Микрофон</translation>
 <translation id="3259149966178251584">Разделителна способност на камерата</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_bn.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_bn.xtb
index 3571696..db3b5386 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_bn.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_bn.xtb
@@ -22,6 +22,7 @@
 
         আপনার ফটো ও ভিডিওতে স্টোরেজ ব্যবহারের অনুমতি আছে এমন অ্যাপের অ্যাক্সেস থাকবে।</translation>
 <translation id="3081586908890909590">ভিডিও রেকর্ড মোডে পাল্টান</translation>
+<translation id="313467653172006084">৩০ FPS</translation>
 <translation id="3183731565330012717">গ্রিডের ধরন</translation>
 <translation id="3227137524299004712">মাইক্রোফোন</translation>
 <translation id="3259149966178251584">ক্যামেরার রেজোলিউশন</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ca.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ca.xtb
index 8e8fa77..f1ad054 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ca.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ca.xtb
@@ -22,6 +22,7 @@
 
         Les aplicacions amb permisos d'emmagatzematge tindran accés a les fotos i als vídeos.</translation>
 <translation id="3081586908890909590">Canvia al mode per gravar vídeo</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Tipus de quadrícula</translation>
 <translation id="3227137524299004712">Micròfon</translation>
 <translation id="3259149966178251584">Resolució de la càmera</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_cs.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_cs.xtb
index f4a9f94..5e1f6d87 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_cs.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_cs.xtb
@@ -22,6 +22,7 @@
 
         K vašim fotkám a videím budou mít přístup aplikace s oprávněním k úložišti.</translation>
 <translation id="3081586908890909590">Přepnout na záznam videa</translation>
+<translation id="313467653172006084">30 snímků/s</translation>
 <translation id="3183731565330012717">Typ mřížky</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Rozlišení fotoaparátu</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_da.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_da.xtb
index 534f28a..5fe7c24 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_da.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_da.xtb
@@ -22,6 +22,7 @@
 
         Apps med lagertilladelser får adgang til dine billeder og videoer.</translation>
 <translation id="3081586908890909590">Skift til videooptagelse</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Gittertype</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Kameraets opløsning</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_de.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_de.xtb
index 55b5e8b..259e338 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_de.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_de.xtb
@@ -22,6 +22,7 @@
 
         Apps mit Speicherberechtigungen haben Zugriff auf Ihre Fotos und Videos.</translation>
 <translation id="3081586908890909590">Zu Videomodus wechseln</translation>
+<translation id="313467653172006084">30 fps</translation>
 <translation id="3183731565330012717">Rastertyp</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Kameraauflösung</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_el.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_el.xtb
index b5214dea..bc098b9 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_el.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_el.xtb
@@ -22,6 +22,7 @@
 
         Οι εφαρμογές με άδειες αποθηκευτικού χώρου θα έχουν πρόσβαση στις φωτογραφίες και τα βίντεό σας.</translation>
 <translation id="3081586908890909590">Μετάβαση στη λειτουργία εγγραφής βίντεο</translation>
+<translation id="313467653172006084">30 καρέ ανά δευτερόλεπτο</translation>
 <translation id="3183731565330012717">Τύπος πλέγματος</translation>
 <translation id="3227137524299004712">Μικρόφωνο</translation>
 <translation id="3259149966178251584">Ανάλυση κάμερας</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_en-GB.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_en-GB.xtb
index 3981095..fe0e13e 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_en-GB.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_en-GB.xtb
@@ -22,6 +22,7 @@
 
         Apps with storage permissions will have access to your photos and videos.</translation>
 <translation id="3081586908890909590">Switch to record video</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Grid type</translation>
 <translation id="3227137524299004712">Microphone</translation>
 <translation id="3259149966178251584">Camera resolution</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_es-419.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_es-419.xtb
index b748ba55..83f3299 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_es-419.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_es-419.xtb
@@ -22,6 +22,7 @@
 
 Las apps que tengan permiso de almacenamiento podrán acceder a tus fotos y videos.</translation>
 <translation id="3081586908890909590">Cambiar al modo para grabar video</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Cuadrícula</translation>
 <translation id="3227137524299004712">Micrófono</translation>
 <translation id="3259149966178251584">Resolución de la cámara</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_es.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_es.xtb
index c268879..a18e241a 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_es.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_es.xtb
@@ -22,6 +22,7 @@
 
         Las aplicaciones con permiso de almacenamiento podrán acceder a tus fotos y vídeos.</translation>
 <translation id="3081586908890909590">Cambiar al modo de cámara de vídeo</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Tipo de cuadrícula</translation>
 <translation id="3227137524299004712">Micrófono</translation>
 <translation id="3259149966178251584">Resolución de la cámara</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_et.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_et.xtb
index 0982fa6..0f23880 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_et.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_et.xtb
@@ -22,7 +22,8 @@
 
 Salvestusruumi kasutuse lubadega rakendustel on juurdepääs teie fotodele ja videotele.</translation>
 <translation id="3081586908890909590">Vaheta video salvestamise režiimile</translation>
-<translation id="3183731565330012717">Ruudustiku tüüp</translation>
+<translation id="313467653172006084">30 FPS</translation>
+<translation id="3183731565330012717">Võrgustiku tüüp</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Kaamera eraldusvõime</translation>
 <translation id="3517926952904427380">Vertikaalpaigutuses fotot ei saa jäädvustada</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fa.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fa.xtb
index 0cd75b5..b7c2e0fc 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fa.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fa.xtb
@@ -22,6 +22,7 @@
 
         برنامه‌هایی که مجوز فضای ذخیره‌سازی دارند، به عکس‌ها و ویدیوهایتان دسترسی خواهند داشت.</translation>
 <translation id="3081586908890909590">رفتن به حالت فیلم‌برداری</translation>
+<translation id="313467653172006084">۳۰ FPS</translation>
 <translation id="3183731565330012717">نوع جدول</translation>
 <translation id="3227137524299004712">میکروفن</translation>
 <translation id="3259149966178251584">وضوح دوربین</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fi.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fi.xtb
index 444d01e..187bb91 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fi.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fi.xtb
@@ -22,6 +22,7 @@
 
         Jos sovelluksella on tallennustilan käyttöoikeus, se voi käyttää kuvia ja videoita.</translation>
 <translation id="3081586908890909590">Vaihda videon kuvaamiseen</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Ruudukkotyyppi</translation>
 <translation id="3227137524299004712">Mikrofoni</translation>
 <translation id="3259149966178251584">Kameran resoluutio</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fil.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fil.xtb
index 2e0587b..952d2d37 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fil.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fil.xtb
@@ -22,6 +22,7 @@
 
         Magkakaroon ng access sa iyong mga larawan at video ang mga app na may mga pahintulot sa storage.</translation>
 <translation id="3081586908890909590">Lumipat sa pag-record ng video</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Uri ng grid</translation>
 <translation id="3227137524299004712">Mikropono</translation>
 <translation id="3259149966178251584">Resolution ng camera</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fr.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fr.xtb
index 7538f18..9e9da4c2 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fr.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_fr.xtb
@@ -22,6 +22,7 @@
 
         Les applications disposant d'autorisations d'accès à l'espace de stockage pourront accéder à vos photos et vidéos.</translation>
 <translation id="3081586908890909590">Passer à l'enregistrement de vidéo</translation>
+<translation id="313467653172006084">30 IPS</translation>
 <translation id="3183731565330012717">Type de grille</translation>
 <translation id="3227137524299004712">Micro</translation>
 <translation id="3259149966178251584">Résolution de la caméra</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_gu.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_gu.xtb
index a36d565..dc06544b 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_gu.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_gu.xtb
@@ -22,6 +22,7 @@
 
         સ્ટોરેજ માટે પરવાનગી ધરાવતી ઍપ તમારા ફોટા તથા વીડિયોને ઍક્સેસ કરી શકશે.</translation>
 <translation id="3081586908890909590">વીડિયો રેકોર્ડ કરવા માટે સ્વિચ કરો</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">ગ્રિડનો પ્રકાર</translation>
 <translation id="3227137524299004712">માઇક્રોફોન</translation>
 <translation id="3259149966178251584">કૅમેરાનું રિઝોલ્યુશન</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hi.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hi.xtb
index a24535e..a8dc088 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hi.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hi.xtb
@@ -22,6 +22,7 @@
 
         मेमोरी की अनुमतियों वाले ऐप्लिकेशन आपकी फ़ोटो और वीडियो ऐक्सेस कर पाएंगे.</translation>
 <translation id="3081586908890909590">वीडियो रिकॉर्डिंग मोड पर जाएं</translation>
+<translation id="313467653172006084">30 FPS (फ़्रेम प्रति सेकंड)</translation>
 <translation id="3183731565330012717">ग्रिड के प्रकार</translation>
 <translation id="3227137524299004712">माइक्रोफ़ोन</translation>
 <translation id="3259149966178251584">कैमरे का रिज़ॉल्यूशन</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hr.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hr.xtb
index 8316efa..d8e0bf27 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hr.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hr.xtb
@@ -22,6 +22,7 @@
 
         Aplikacije s dopuštenjima za pohranu imat će pristup vašim fotografijama i videozapisima.</translation>
 <translation id="3081586908890909590">Prijeđi na snimanje videozapisa</translation>
+<translation id="313467653172006084">30 okv/s</translation>
 <translation id="3183731565330012717">Vrsta rešetke</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Razlučivost fotoaparata</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hu.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hu.xtb
index 65c84d74..d367227 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hu.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_hu.xtb
@@ -22,6 +22,7 @@
 
         A tárhelyengedéllyel rendelkező alkalmazások hozzáférhetnek a fotókhoz és a videókhoz.</translation>
 <translation id="3081586908890909590">Váltás videófelvételre</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Rács típusa</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Kamera felbontása</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_id.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_id.xtb
index 099a77c..417cee2 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_id.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_id.xtb
@@ -22,6 +22,7 @@
 
         Aplikasi yang memiliki izin penyimpanan dapat mengakses foto dan video.</translation>
 <translation id="3081586908890909590">Beralih ke mode merekam video</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Jenis petak</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Resolusi kamera</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_it.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_it.xtb
index acf3f73..9da8b54 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_it.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_it.xtb
@@ -22,6 +22,7 @@
 
 Le app con autorizzazioni di accesso allo spazio di archiviazione potranno accedere alle foto e ai video.</translation>
 <translation id="3081586908890909590">Passa alla modalità video</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Tipo di griglia</translation>
 <translation id="3227137524299004712">Microfono</translation>
 <translation id="3259149966178251584">Risoluzione della fotocamera</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ja.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ja.xtb
index af76320..3a20c634 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ja.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ja.xtb
@@ -22,6 +22,7 @@
 
         また、ストレージへのアクセスが許可されているアプリからも、これらの写真や動画にアクセスできます。</translation>
 <translation id="3081586908890909590">動画の撮影に切り替え</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">グリッドの種類</translation>
 <translation id="3227137524299004712">マイク</translation>
 <translation id="3259149966178251584">カメラの解像度</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_kn.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_kn.xtb
index ec3f1545..0e9ef893 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_kn.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_kn.xtb
@@ -22,6 +22,7 @@
 
         ಸಂಗ್ರಹಣೆ ಅನುಮತಿಗಳನ್ನು ಹೊಂದಿರುವ ಆ್ಯಪ್‌ಗಳು ನಿಮ್ಮ ಫೋಟೋಗಳು ಮತ್ತು ವೀಡಿಯೊಗಳಿಗೆ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುತ್ತವೆ.</translation>
 <translation id="3081586908890909590">ವೀಡಿಯೊ ರೆಕಾರ್ಡ್ ಮೋಡ್‌ಗೆ ಬದಲಿಸಿ</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">ಗ್ರಿಡ್ ಪ್ರಕಾರ</translation>
 <translation id="3227137524299004712">ಮೈಕ್ರೋಫೋನ್</translation>
 <translation id="3259149966178251584">ಕ್ಯಾಮರಾ ರೆಸಲ್ಯೂಷನ್</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ko.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ko.xtb
index ae95644..6f470ba8 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ko.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ko.xtb
@@ -22,6 +22,7 @@
 
         저장용량 권한이 있는 앱은 사진 및 동영상에 액세스할 수 있습니다.</translation>
 <translation id="3081586908890909590">동영상 녹화 모드로 전환</translation>
+<translation id="313467653172006084">30FPS</translation>
 <translation id="3183731565330012717">그리드 유형</translation>
 <translation id="3227137524299004712">마이크</translation>
 <translation id="3259149966178251584">카메라 해상도</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_lt.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_lt.xtb
index 66e8682..dc801b5 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_lt.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_lt.xtb
@@ -22,6 +22,7 @@
 
         Programos su saugyklos leidimais galės pasiekti jūsų nuotraukas ir vaizdo įrašus.</translation>
 <translation id="3081586908890909590">Perjungti į filmavimo režimą</translation>
+<translation id="313467653172006084">30 KPS</translation>
 <translation id="3183731565330012717">Tinklelio tipas</translation>
 <translation id="3227137524299004712">Mikrofonas</translation>
 <translation id="3259149966178251584">Fotoaparato skyra</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_lv.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_lv.xtb
index 01ec0167..7740220 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_lv.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_lv.xtb
@@ -22,6 +22,7 @@
 
         Lietotnes, kurām ir atļauja piekļūt krātuvei, varēs piekļūt jūsu fotoattēliem un videoklipiem.</translation>
 <translation id="3081586908890909590">Ieslēdziet, lai ierakstītu videoklipu</translation>
+<translation id="313467653172006084">30 kadri/s</translation>
 <translation id="3183731565330012717">Režģa veids</translation>
 <translation id="3227137524299004712">Mikrofons</translation>
 <translation id="3259149966178251584">Kameras izšķirtspēja</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ml.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ml.xtb
index 17b3d56..4ca36dde 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ml.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ml.xtb
@@ -22,6 +22,7 @@
 
 സ്‌റ്റോറേജ് അനുമതികളുള്ള ആപ്പുകൾക്ക് നിങ്ങളുടെ ഫോട്ടോകളിലേക്കും വീഡിയോകളിലേക്കും ആക്‌സസ് ഉണ്ടായിരിക്കും.</translation>
 <translation id="3081586908890909590">വീഡിയോ റെക്കോർഡ് ചെയ്യുന്നതിലേക്ക് മാറുക</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">ഗ്രിഡ് തരം</translation>
 <translation id="3227137524299004712">മൈക്രോഫോൺ</translation>
 <translation id="3259149966178251584">ക്യാമറ റെസല്യൂഷൻ</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_mr.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_mr.xtb
index 9eae217..19c46ee5 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_mr.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_mr.xtb
@@ -17,11 +17,12 @@
 <translation id="2501953888035679275">तुमच्‍या कॅमेर्‍याने फोटो घ्‍या आणि व्हिडिओ रेकॉर्ड करा.</translation>
 <translation id="2549985041256363841">रेकॉर्डिंग सुरू करा</translation>
 <translation id="2599796128805996109">मागील कॅमेरा</translation>
-<translation id="2912439424121107408">या डिव्हाइसवर एक्सपोर्ट मोड सपोर्ट करत नाही</translation>
+<translation id="2912439424121107408">एक्सपोर्ट मोडला या डिव्हाइसवर सपोर्ट नाही</translation>
 <translation id="2968794441791257519">कॅमेर्‍याने घेतलेले फोटो आणि व्हिडिओ डाउनलोड फोल्डरवर हलवले जातील. तुम्ही ते Files मध्ये अ‍ॅक्सेस करू शकता.
 
         स्टोरेज परवानग्या असलेल्या अ‍ॅप्सना तुमच्या फोटो आणि व्हिडिओंचा अ‍ॅक्सेस असेल.</translation>
 <translation id="3081586908890909590">व्हिडिओ रेकॉर्ड करण्यासाठी स्विच करा</translation>
+<translation id="313467653172006084">३० FPS</translation>
 <translation id="3183731565330012717">ग्रिडचा प्रकार</translation>
 <translation id="3227137524299004712">मायक्रोफोन</translation>
 <translation id="3259149966178251584">कॅमेरा रिझोल्यूशन</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ms.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ms.xtb
index 6210e2c..3037657 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ms.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ms.xtb
@@ -22,6 +22,7 @@
 
         Apl yang diberikan kebenaran storan boleh mengakses foto dan video anda.</translation>
 <translation id="3081586908890909590">Beralih kepada merakam video</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Jenis grid</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Peleraian kamera</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_nl.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_nl.xtb
index e21dc2f..7b74e32 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_nl.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_nl.xtb
@@ -22,6 +22,7 @@
 
         Apps met opslagmachtiging hebben toegang tot je foto's en video's.</translation>
 <translation id="3081586908890909590">Naar video opnemen</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Rastertype</translation>
 <translation id="3227137524299004712">Microfoon</translation>
 <translation id="3259149966178251584">Cameraresolutie</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_no.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_no.xtb
index 410ab2e..714bd45 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_no.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_no.xtb
@@ -22,6 +22,7 @@
 
 Apper med lagringstillatelser har tilgang til bildene og videoene dine.</translation>
 <translation id="3081586908890909590">Bytt til video</translation>
+<translation id="313467653172006084">30 bilder per sekund</translation>
 <translation id="3183731565330012717">Rutenettype</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Kameraoppløsning</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pl.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pl.xtb
index a2c5acc..a9966a9 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pl.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pl.xtb
@@ -22,6 +22,7 @@
 
         Do Twoich zdjęć i filmów będą mieć dostęp aplikacje z uprawnieniami dostępu do pamięci.</translation>
 <translation id="3081586908890909590">Przełącz, by nagrać film</translation>
+<translation id="313467653172006084">30 kl./s</translation>
 <translation id="3183731565330012717">Typ siatki</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Rozdzielczość aparatu</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pt-BR.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pt-BR.xtb
index bf865bc3..ae5c200 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pt-BR.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pt-BR.xtb
@@ -22,6 +22,7 @@
 
         Os apps com permissões de armazenamento terão acesso a seus vídeos e fotos.</translation>
 <translation id="3081586908890909590">Alternar para gravar vídeo</translation>
+<translation id="313467653172006084">30 QPS</translation>
 <translation id="3183731565330012717">Tipo de grade</translation>
 <translation id="3227137524299004712">Microfone</translation>
 <translation id="3259149966178251584">Resolução da câmera</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pt-PT.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pt-PT.xtb
index 3728e500..fb7bf3c 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pt-PT.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_pt-PT.xtb
@@ -22,6 +22,7 @@
 
         As aplicações com autorizações de armazenamento terão acesso aos seus vídeos e fotos.</translation>
 <translation id="3081586908890909590">Mudar para gravar vídeo</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Tipo de grelha</translation>
 <translation id="3227137524299004712">Microfone</translation>
 <translation id="3259149966178251584">Resolução da câmara</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ro.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ro.xtb
index 9910170..f6ae6b8 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ro.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ro.xtb
@@ -22,6 +22,7 @@
 
         Aplicațiile cu permisiuni de stocare vor avea acces la fotografiile și videoclipurile tale.</translation>
 <translation id="3081586908890909590">Comută pentru a înregistra un videoclip</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Tipul grilei</translation>
 <translation id="3227137524299004712">Microfon</translation>
 <translation id="3259149966178251584">Rezoluția camerei</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ru.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ru.xtb
index d3d63f3..0df4402 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ru.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ru.xtb
@@ -22,6 +22,7 @@
 
 Приложения, которым вы разрешили пользоваться хранилищем, получат доступ к вашим фотографиям и видео.</translation>
 <translation id="3081586908890909590">Переключиться на видеосъемку</translation>
+<translation id="313467653172006084">30 кадров/с</translation>
 <translation id="3183731565330012717">Тип сетки</translation>
 <translation id="3227137524299004712">Микрофон</translation>
 <translation id="3259149966178251584">Разрешение камеры</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sk.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sk.xtb
index f863bdb..57eef4c8 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sk.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sk.xtb
@@ -22,6 +22,7 @@
 
         Fotky aj videá budú môcť používať aplikácie s povoleniami pre úložisko.</translation>
 <translation id="3081586908890909590">Prepnúť na zaznamenávanie videa</translation>
+<translation id="313467653172006084">30 sním./s</translation>
 <translation id="3183731565330012717">Typ mriežky</translation>
 <translation id="3227137524299004712">Mikrofón</translation>
 <translation id="3259149966178251584">Rozlíšenie fotoaparátu</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sl.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sl.xtb
index dac73ac..304b67e7 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sl.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sl.xtb
@@ -22,6 +22,7 @@
 
         Aplikacije z dovoljenji za shrambo bodo imele dostop do fotografij in videoposnetkov.</translation>
 <translation id="3081586908890909590">Preklop na snemanje videa</translation>
+<translation id="313467653172006084">30 sličic/s</translation>
 <translation id="3183731565330012717">Vrsta mreže</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Ločljivost fotoaparata</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sr.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sr.xtb
index 33174212..13e93f5 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sr.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sr.xtb
@@ -22,6 +22,7 @@
 
         Апликације са дозволама за приступ меморијском простору ће имати приступ сликама и видео снимцима.</translation>
 <translation id="3081586908890909590">Пређи на режим за снимање видеа</translation>
+<translation id="313467653172006084">30 кадр/с</translation>
 <translation id="3183731565330012717">Тип мреже</translation>
 <translation id="3227137524299004712">Микрофон</translation>
 <translation id="3259149966178251584">Резолуција камере</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sv.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sv.xtb
index a8bae04..2a653fa 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sv.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sv.xtb
@@ -22,6 +22,7 @@
 
         Fotona och videorna blir tillgängliga för appar som har åtkomstbehörighet till lagringsutrymmet.</translation>
 <translation id="3081586908890909590">Byt till videoinspelning</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Typ av rutnät</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Kameraupplösning</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sw.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sw.xtb
index 4828e0b..1cc3beb 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sw.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_sw.xtb
@@ -22,6 +22,7 @@
 
         Programu zilizo na ruhusa za hifadhi zitaweza kufikia picha na video zako.</translation>
 <translation id="3081586908890909590">Rekodi video</translation>
+<translation id="313467653172006084">FPS 30</translation>
 <translation id="3183731565330012717">Aina ya gridi</translation>
 <translation id="3227137524299004712">Maikrofoni</translation>
 <translation id="3259149966178251584">Ubora wa kamera</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ta.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ta.xtb
index ad066cd..ced95ab 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ta.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_ta.xtb
@@ -22,6 +22,7 @@
 
         சேமிப்பக அனுமதிகள் உள்ள ஆப்ஸால் அவற்றை அணுக முடியும்.</translation>
 <translation id="3081586908890909590">வீடியோவைப் பதிவுசெய்யும் பயன்முறைக்கு மாறு</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">கட்ட வகை</translation>
 <translation id="3227137524299004712">மைக்ரோஃபோன்</translation>
 <translation id="3259149966178251584">கேமரா தெளிவுத்திறன்</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_te.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_te.xtb
index 7fece31..e683023 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_te.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_te.xtb
@@ -22,6 +22,7 @@
 
 నిల్వ అనుమతులు కలిగిన యాప్‌లు మీ ఫోటోలు మరియు వీడియోలను యాక్సెస్ చేయగలుగుతాయి.</translation>
 <translation id="3081586908890909590">వీడియో రికార్డింగ్ మోడ్‌కు మార్చు</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">గ్రిడ్ రకం</translation>
 <translation id="3227137524299004712">మైక్రోఫోన్</translation>
 <translation id="3259149966178251584">కెమెరా రిజల్యూషన్</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_th.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_th.xtb
index cf6478e..7d836ec 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_th.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_th.xtb
@@ -22,6 +22,7 @@
 
 แอปที่มีสิทธิ์ในพื้นที่เก็บข้อมูลจะเข้าถึงรูปภาพและวิดีโอของคุณได้</translation>
 <translation id="3081586908890909590">เปลี่ยนเป็นโหมดบันทึกวิดีโอ</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">ประเภทตารางกริด</translation>
 <translation id="3227137524299004712">ไมโครโฟน</translation>
 <translation id="3259149966178251584">ความละเอียดกล้อง</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_tr.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_tr.xtb
index 0621867..cdd4717a 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_tr.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_tr.xtb
@@ -22,6 +22,7 @@
 
         Depolama iznine sahip uygulamalar fotoğraflarınıza ve videolarınıza erişebilecektir.</translation>
 <translation id="3081586908890909590">Video kaydetmeye geç</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">Tablo türü</translation>
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3259149966178251584">Kamera çözünürlüğü</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_uk.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_uk.xtb
index edda4ef..8cb1dcf 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_uk.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_uk.xtb
@@ -22,6 +22,7 @@
 
         Також до них матимуть доступ додатки, яким дозволено використовувати пам’ять пристрою.</translation>
 <translation id="3081586908890909590">Перейти в режим запису відео</translation>
+<translation id="313467653172006084">30 кадрів/с</translation>
 <translation id="3183731565330012717">Тип сітки</translation>
 <translation id="3227137524299004712">Мікрофон</translation>
 <translation id="3259149966178251584">Роздільна здатність камери</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_zh-CN.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_zh-CN.xtb
index 4611fd1..c1ff4b4e 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_zh-CN.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_zh-CN.xtb
@@ -22,6 +22,7 @@
 
         具有存储权限的应用将有权访问您的照片和视频。</translation>
 <translation id="3081586908890909590">切换到录制视频模式</translation>
+<translation id="313467653172006084">30 FPS</translation>
 <translation id="3183731565330012717">网格类型</translation>
 <translation id="3227137524299004712">麦克风</translation>
 <translation id="3259149966178251584">摄像头分辨率</translation>
diff --git a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_zh-TW.xtb b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_zh-TW.xtb
index a4b2dcb..ac8d53e 100644
--- a/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_zh-TW.xtb
+++ b/chrome/browser/resources/chromeos/camera/src/strings/camera_strings_zh-TW.xtb
@@ -22,6 +22,7 @@
 
         具備儲存空間權限的應用程式將可存取你的相片和影片。</translation>
 <translation id="3081586908890909590">切換為錄影模式</translation>
+<translation id="313467653172006084">每秒畫格數:30</translation>
 <translation id="3183731565330012717">格線類型</translation>
 <translation id="3227137524299004712">麥克風</translation>
 <translation id="3259149966178251584">相機解析度</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb
index 3224bec..e60adec 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">ቀዳሚ የተጎበኘ አገናኝ</translation>
 <translation id="3241638166094654466">በእያንዳንዱ መስመር ላይ ያሉ ሕዋሶች፦</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">ቀዳሚው ተመሳሳይ ንጥል</translation>
 <translation id="3286372614333682499">የምስል ፍሬ</translation>
 <translation id="3286390186030710347">ተንሸራታች</translation>
 <translation id="3299925995433437805">ምንም ቀጣይ የተጎበኘ አገናኝ የለም።</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">እሴትን ይጨምሩ</translation>
 <translation id="4529987814483543472">የሚታወቅ የቁልፍ አደራደር</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{እዝባር}one{# እዝባሮች}other{# እዝባሮች}}</translation>
+<translation id="4537277403911487429">ቀጣዩ ተመሳሳይ ንጥል</translation>
 <translation id="4547556996012970016">ቀጣይ የደረጃ 5 ርዕስ</translation>
 <translation id="4562381607973973258">ራስጌ</translation>
 <translation id="4569941707103739422">ለማሰስ የላይ ወይም የታች ቀስትን፣ ለማግበር enter ይጫኑ።</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb
index 942b9ed..35fc8c0d 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">الرابط السابق الذي تمّ الانتقال إليه</translation>
 <translation id="3241638166094654466">الخلايا في كل سطر:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">العنصر المماثل السابق</translation>
 <translation id="3286372614333682499">صورة أشخاص</translation>
 <translation id="3286390186030710347">شريط تمرير</translation>
 <translation id="3299925995433437805">ليس هناك رابط تالٍ تم الانتقال إليه.</translation>
@@ -342,7 +343,7 @@
 <translation id="3324983252691184275">قرمزي</translation>
 <translation id="3338224621010291843">شريط تمرير <ph name="VALUE" /> <ph name="NAME" /></translation>
 <translation id="335581015389089642">الحديث</translation>
-<translation id="3356951775008366684">الإعلان عن النطق الصوتي للكلمات</translation>
+<translation id="3356951775008366684">الإعلان عن النطق الصوتي للكلمة</translation>
 <translation id="3359142382821736686">seprtr</translation>
 <translation id="3374537878095184207">{COUNT,plural, =1{علامة جمع واحدة}zero{# plus signs}two{علامتا جمع (#)}few{# علامات جمع}many{# علامة جمع}other{# من علامات الجمع}}</translation>
 <translation id="338583716107319301">فاصل</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">زيادة القيمة</translation>
 <translation id="4529987814483543472">مخطط مفاتيح كلاسيكي</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{شرطة مائلة واحدة}zero{# slashes}two{شرطتان مائلتان (#)}few{# شرطات مائلة}many{# شرطة مائلة}other{# من الشرطات المائلة}}</translation>
+<translation id="4537277403911487429">العنصر المماثل التالي</translation>
 <translation id="4547556996012970016">عنوان المستوى الخامس التالي</translation>
 <translation id="4562381607973973258">رأس صفحة</translation>
 <translation id="4569941707103739422">‏يُرجى الضغط على السهم المتجه للأعلى أو للأسفل للتنقل، والضغط على Enter للتفعيل.</translation>
@@ -539,7 +541,7 @@
 <translation id="4763480195061959176">فيديو</translation>
 <translation id="4764692524839457597">تلقائي</translation>
 <translation id="4772771694153161212">بدون تسطير</translation>
-<translation id="4787577491510559358">الإعلان عن تنسيق العنصر الحالي</translation>
+<translation id="4787577491510559358">الإعلان عن تنسيق عنصر حالي</translation>
 <translation id="479989351350248267">بحث</translation>
 <translation id="4804818685124855865">قطع الاتصال</translation>
 <translation id="481165870889056555">الإعلان عن عنوان الصفحة الحالية</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb
index e0931a1..ead893d 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Предишна посетена връзка</translation>
 <translation id="3241638166094654466">Клетки във всеки ред:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Предишен подобен елемент</translation>
 <translation id="3286372614333682499">вертикална ориентация</translation>
 <translation id="3286390186030710347">Плъзгач</translation>
 <translation id="3299925995433437805">Няма следваща посетена връзка.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Увеличаване на стойността</translation>
 <translation id="4529987814483543472">Традиционна клавиатурна подредба</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{наклонена черта}other{# наклонени черти}}</translation>
+<translation id="4537277403911487429">Следващ подобен елемент</translation>
 <translation id="4547556996012970016">Следващото заглавие от пето ниво</translation>
 <translation id="4562381607973973258">Горен колонтитул</translation>
 <translation id="4569941707103739422">За придвижване натиснете клавиша със стрелка нагоре или надолу, за активиране използвайте Enter.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb
index d4d5b8f..190ebe53 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">আগে ঘুরে দেখা লিঙ্ক</translation>
 <translation id="3241638166094654466">প্রতিটি লাইনে কক্ষের সংখ্যা:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">এই রকমের আগের আইটেম</translation>
 <translation id="3286372614333682499">পোর্ট্রেট</translation>
 <translation id="3286390186030710347">স্লাইডার</translation>
 <translation id="3299925995433437805">কোনও পরবর্তী ঘুরে দেখা লিঙ্ক নেই</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">বাড়ান</translation>
 <translation id="4529987814483543472">ক্লাসিক কীম্যাপ</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{স্ল্যাশ}one{#টি স্ল্যাশ}other{#টি স্ল্যাশ}}</translation>
+<translation id="4537277403911487429">এই রকমের পরের আইটেম</translation>
 <translation id="4547556996012970016">পরবর্তী স্তর ৫ শিরোনাম</translation>
 <translation id="4562381607973973258">শিরোনাম</translation>
 <translation id="4569941707103739422">নেভিগেট করতে উপরের অথবা নিচের তীরচিহ্ন, চালু করতে এন্টার টিপুন।</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb
index aeff6593..edddfae 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Enllaç visitat anterior</translation>
 <translation id="3241638166094654466">Cel·les en cada línia:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Element similar anterior</translation>
 <translation id="3286372614333682499">vertical</translation>
 <translation id="3286390186030710347">Control lliscant</translation>
 <translation id="3299925995433437805">No hi ha cap enllaç visitat següent.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Augmenta el valor</translation>
 <translation id="4529987814483543472">Mapa de teclat clàssic</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{barra inclinada}other{# barres inclinades}}</translation>
+<translation id="4537277403911487429">Element similar següent</translation>
 <translation id="4547556996012970016">Capçalera del nivell 5 següent</translation>
 <translation id="4562381607973973258">Capçalera</translation>
 <translation id="4569941707103739422">Prem les fletxes amunt i avall per navegar; prem Retorn per activar una opció.</translation>
@@ -538,7 +540,7 @@
 <translation id="4763480195061959176">vídeo</translation>
 <translation id="4764692524839457597">opció predeterminada</translation>
 <translation id="4772771694153161212">Sense subratllat</translation>
-<translation id="4787577491510559358">Anuncia el format de l'element</translation>
+<translation id="4787577491510559358">Anuncia el format de l'element actual</translation>
 <translation id="479989351350248267">cerca</translation>
 <translation id="4804818685124855865">Desconnecta</translation>
 <translation id="481165870889056555">Presenta el títol de la pàgina actual</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb
index cbd6297..ae5ac7a2 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Předchozí navštívený odkaz</translation>
 <translation id="3241638166094654466">Buňky na každém řádku:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Předchozí podobná položka</translation>
 <translation id="3286372614333682499">na výšku</translation>
 <translation id="3286390186030710347">Posuvník</translation>
 <translation id="3299925995433437805">Žádný další navštívený odkaz není.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Zvýšit hodnotu</translation>
 <translation id="4529987814483543472">Klasická mapa kláves</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{lomítko}few{# lomítka}many{# slashes}other{# lomítek}}</translation>
+<translation id="4537277403911487429">Další podobná položka</translation>
 <translation id="4547556996012970016">Další nadpis 5. úrovně</translation>
 <translation id="4562381607973973258">Nadpis</translation>
 <translation id="4569941707103739422">Navigovat lze pomocí šipky nahoru nebo dolů, možnost aktivujete pomocí klávesy Enter.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb
index 3e4d747..0c93910 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Tidligere besøgt link</translation>
 <translation id="3241638166094654466">Celler i hver linje:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Forrige lignende element</translation>
 <translation id="3286372614333682499">stående</translation>
 <translation id="3286390186030710347">Skyder</translation>
 <translation id="3299925995433437805">Intet næste besøgte link.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Hæv værdien</translation>
 <translation id="4529987814483543472">Klassisk tastaturoversigt</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{skråstreg}one{# skråstreger}other{# skråstreger}}</translation>
+<translation id="4537277403911487429">Næste lignende element</translation>
 <translation id="4547556996012970016">Næste niveau 5-overskrift</translation>
 <translation id="4562381607973973258">Overskrift</translation>
 <translation id="4569941707103739422">Tryk på pil op eller pil ned for at navigere. Tryk på Enter for at aktivere.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb
index 4b98055..721f056 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Vorheriger besuchter Link</translation>
 <translation id="3241638166094654466">Zellen in jeder Zeile:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Vorheriges ähnliches Element</translation>
 <translation id="3286372614333682499">Hochformat</translation>
 <translation id="3286390186030710347">Schieberegler</translation>
 <translation id="3299925995433437805">Kein nächster besuchter Link</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Wert erhöhen</translation>
 <translation id="4529987814483543472">Klassische Tastaturbelegung</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{Schrägstrich}other{# Schrägstriche}}</translation>
+<translation id="4537277403911487429">Nächstes ähnliches Element</translation>
 <translation id="4547556996012970016">Nächste Überschrift der Ebene 5</translation>
 <translation id="4562381607973973258">Header-Element</translation>
 <translation id="4569941707103739422">Zum Auswählen von Elementen die Pfeiltaste nach oben oder unten drücken und zum Öffnen des Elements mit der Eingabetaste bestätigen.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb
index 40cc614..0a3acbc 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Προηγούμενος σύνδεσμος που έχετε επισκεφτεί</translation>
 <translation id="3241638166094654466">Κελιά σε κάθε γραμμή:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Προηγούμενο παρόμοιο στοιχείο</translation>
 <translation id="3286372614333682499">κατακόρυφος προσανατολισμός</translation>
 <translation id="3286390186030710347">Ρυθμιστικό</translation>
 <translation id="3299925995433437805">Δεν υπάρχει επόμενος σύνδεσμος που έχετε επισκεφτεί.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Αύξηση αξίας</translation>
 <translation id="4529987814483543472">Κλασική αντιστοίχιση πλήκτρων</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{κάθετος}other{# κάθετοι}}</translation>
+<translation id="4537277403911487429">Επόμενο παρόμοιο στοιχείο</translation>
 <translation id="4547556996012970016">Επικεφαλίδα επόμενου επιπέδου 5</translation>
 <translation id="4562381607973973258">Κεφαλίδα</translation>
 <translation id="4569941707103739422">Πατήστε το πάνω ή το κάτω βέλος για πλοήγηση και το πλήκτρο Enter για ενεργοποίηση.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb
index 471abe9..e847c9b 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Previous visited link</translation>
 <translation id="3241638166094654466">Cells in each line:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Previous similar item</translation>
 <translation id="3286372614333682499">portrait</translation>
 <translation id="3286390186030710347">Slider</translation>
 <translation id="3299925995433437805">No next visited link.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Increase value</translation>
 <translation id="4529987814483543472">Classic keymap</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{slash}other{# slashes}}</translation>
+<translation id="4537277403911487429">Next similar item</translation>
 <translation id="4547556996012970016">Next level 5 heading</translation>
 <translation id="4562381607973973258">Header</translation>
 <translation id="4569941707103739422">Press up or down arrow to navigate; enter to activate.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb
index 9489fff..b3959bb 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Vínculo visitado anterior</translation>
 <translation id="3241638166094654466">Celdas en cada línea:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Elemento similar anterior</translation>
 <translation id="3286372614333682499">vertical</translation>
 <translation id="3286390186030710347">Control deslizante</translation>
 <translation id="3299925995433437805">No hay ningún vínculo visitado posterior.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Incrementar el valor</translation>
 <translation id="4529987814483543472">Mapa de teclado clásico</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{barra}other{# barras}}</translation>
+<translation id="4537277403911487429">Próximo elemento similar</translation>
 <translation id="4547556996012970016">Siguiente encabezado de nivel 5</translation>
 <translation id="4562381607973973258">Encabezado</translation>
 <translation id="4569941707103739422">Presiona la flecha hacia arriba o abajo para navegar e Intro para activar una opción.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb
index 9f8db93..87bff70 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Anterior enlace visitado</translation>
 <translation id="3241638166094654466">Celdas en cada línea:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Elemento similar anterior</translation>
 <translation id="3286372614333682499">vertical</translation>
 <translation id="3286390186030710347">Control deslizante</translation>
 <translation id="3299925995433437805">No hay ningún enlace siguiente visitado.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Aumentar el valor</translation>
 <translation id="4529987814483543472">Mapa de teclado clásico</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{barra}other{# barras}}</translation>
+<translation id="4537277403911487429">Siguiente elemento similar</translation>
 <translation id="4547556996012970016">Siguiente encabezado de nivel 5</translation>
 <translation id="4562381607973973258">Etiqueta de encabezado</translation>
 <translation id="4569941707103739422">Pulsa la flecha hacia arriba o hacia abajo para desplazarte, y la tecla Intro para activar la opción.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb
index 4c9883fe..c3d5ca76 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Eelmine külastatud link</translation>
 <translation id="3241638166094654466">Igal real olevad lahtrid:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Eelmine sarnane üksus</translation>
 <translation id="3286372614333682499">vertikaalpaigutus</translation>
 <translation id="3286390186030710347">Liugur</translation>
 <translation id="3299925995433437805">Järgmist külastatud linki pole.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Väärtuse suurendamine</translation>
 <translation id="4529987814483543472">Klassikaline klahvitabel</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{kaldkriips}other{# kaldkriipsu}}</translation>
+<translation id="4537277403911487429">Järgmine sarnane üksus</translation>
 <translation id="4547556996012970016">Järgmine 5. taseme pealkiri</translation>
 <translation id="4562381607973973258">Päis</translation>
 <translation id="4569941707103739422">Navigeerimiseks vajutage üles- või allanoolt, aktiveerimiseks vajutage sisestusklahvi.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb
index 56dbf515e..84b187c 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">پیوند بازدید شده قبلی</translation>
 <translation id="3241638166094654466">تعداد سلول‌ها در هر خط:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">مورد مشابه قبلی</translation>
 <translation id="3286372614333682499">چهره</translation>
 <translation id="3286390186030710347">اسلایدر</translation>
 <translation id="3299925995433437805">پیوند بازدید شده بعدی وجود ندارد.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">افزایش مقدار</translation>
 <translation id="4529987814483543472">نقشه کلید کلاسیک</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{ممیز}one{# ممیز}other{# ممیز}}</translation>
+<translation id="4537277403911487429">مورد مشابه بعدی</translation>
 <translation id="4547556996012970016">عنوان بعدی سطح ۵</translation>
 <translation id="4562381607973973258">Header</translation>
 <translation id="4569941707103739422">‏پیکان بالا یا پایین را برای پیمایش فشار دهید؛ برای فعال کردن enter را فشار دهید.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb
index ab04d14a..ddf6b9a 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Edellinen käyty linkki</translation>
 <translation id="3241638166094654466">Kunkin rivin solut:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Edellinen samanlainen kohde</translation>
 <translation id="3286372614333682499">pystysuunta</translation>
 <translation id="3286390186030710347">Liukusäädin</translation>
 <translation id="3299925995433437805">Ei seuraavia käytyjä linkkejä.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Suurenna arvoa</translation>
 <translation id="4529987814483543472">Perinteinen näppäinasettelu</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{kauttaviiva}other{# kauttaviivaa}}</translation>
+<translation id="4537277403911487429">Seuraava samankaltainen kohde</translation>
 <translation id="4547556996012970016">Seuraava tason 5 otsikko</translation>
 <translation id="4562381607973973258">Otsikko</translation>
 <translation id="4569941707103739422">Siirry painamalla ala- tai ylänuolta, aktivoi painamalla Enter.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb
index ac97463..4dcb15a0 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Nakaraang binisitang link</translation>
 <translation id="3241638166094654466">Mga cell sa bawat linya:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Nakaraang katulad na item</translation>
 <translation id="3286372614333682499">portrait</translation>
 <translation id="3286390186030710347">Slider</translation>
 <translation id="3299925995433437805">Walang sunod na binisitang link.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Dagdagan ang value</translation>
 <translation id="4529987814483543472">Classic na keymap</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{slash}one{# slash}other{# na slash}}</translation>
+<translation id="4537277403911487429">Susunod na katulad na item</translation>
 <translation id="4547556996012970016">Susunod na heading sa antas 5</translation>
 <translation id="4562381607973973258">Header</translation>
 <translation id="4569941707103739422">Pindutin ang pataas o pababang arrow upang mag-navigate; pindutin ang enter upang i-activate.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb
index f4bf204..57976275 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Lien consulté précédent</translation>
 <translation id="3241638166094654466">Cellules sur chaque ligne :</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" /> : <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Élément similaire précédent</translation>
 <translation id="3286372614333682499">portrait</translation>
 <translation id="3286390186030710347">Curseur</translation>
 <translation id="3299925995433437805">Aucun lien consulté suivant.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Augmenter la valeur</translation>
 <translation id="4529987814483543472">Mappage classique du clavier</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{barre oblique}one{# barre oblique}other{# barres obliques}}</translation>
+<translation id="4537277403911487429">Élément similaire suivant</translation>
 <translation id="4547556996012970016">En-tête suivant de niveau 5</translation>
 <translation id="4562381607973973258">En-tête</translation>
 <translation id="4569941707103739422">Appuyez sur la flèche vers le haut ou vers le bas pour parcourir les éléments, et sur la touche Entrée pour les activer.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb
index 56fe58a..90df8cc 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">પાછલી મુલાકાત લીધેલી લિંક</translation>
 <translation id="3241638166094654466">દરેક લાઇનમાંનાં કોષોની સંખ્યા:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">આના જેવી જ અગાઉની આઇટમ</translation>
 <translation id="3286372614333682499">પોર્ટ્રેટ</translation>
 <translation id="3286390186030710347">સ્લાઇડર</translation>
 <translation id="3299925995433437805">કોઈ આગલી મુલાકાત લીધેલી લિંક નથી.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">મૂલ્ય વધારો</translation>
 <translation id="4529987814483543472">ક્લાસિક કીમૅપ</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{સ્લેશ}one{# સ્લેશ}other{# સ્લેશ}}</translation>
+<translation id="4537277403911487429">આના જેવી જ આગલી આઇટમ</translation>
 <translation id="4547556996012970016">આગલા સ્તર 5 નું મથાળું</translation>
 <translation id="4562381607973973258">હેડર</translation>
 <translation id="4569941707103739422">નૅવિગેટ કરવા માટે ઉપર અથવા નીચેની Arrow કી દબાવો; ચાલુ કરવા માટે Enter કી દબાવો.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb
index f2a08ac..d01f8e09 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb
@@ -20,6 +20,7 @@
 <translation id="1087788677726983142">इवेंट स्ट्रीम फ़िल्टर छिपाएं</translation>
 <translation id="1088219014394087294">कोई शीर्षक नहीं.</translation>
 <translation id="1106741348836243114">ध्वनि फ़ीडबैक (ईयरकॉन) चालू या बंद करें.</translation>
+<translation id="1114836634143403764">सुझाव</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="1124771028211010580">मौजूदा डिसप्ले शैली आमने-सामने है.</translation>
@@ -126,6 +127,7 @@
 <translation id="1845944666972354496">चालू करने के लिए दो बार टैप करें</translation>
 <translation id="1846771122725914429">ब्लूटूथ ब्रेल डिसप्ले</translation>
 <translation id="1865601187525349519">लेख का अंत</translation>
+<translation id="1875375785454778375">लाइव मौजूदगी</translation>
 <translation id="1876229593313240038">दस्तावेज़</translation>
 <translation id="188130072164734898">वर्तमान समय और तारीख बोलें.</translation>
 <translation id="1902396333223336119">सेल</translation>
@@ -146,6 +148,7 @@
 <translation id="2009187674653301682">सुपरस्क्रिप्ट नहीं है</translation>
 <translation id="2010555995361223825">ChromeVox मेनू</translation>
 <translation id="2045490512405922022">चेक नहीं किया गया</translation>
+<translation id="2049107626739254612">लेखन से जुड़ी जानकारी</translation>
 <translation id="20601713649439366">कोई पिछला गणित का व्यंजक नहीं.</translation>
 <translation id="2063539687800151747">इपिग्राफ़</translation>
 <translation id="207477615537953741">शब्दार्थ विज्ञान बंद</translation>
@@ -156,6 +159,7 @@
 <translation id="2110480898214777136">किसी पेज, संवाद या अन्य कंटेनर के भीतर शुरुआत से अंत तक ले जाएं या अंत से शुरुआत तक ले जाएं</translation>
 <translation id="2119965627982867824">spnbtn</translation>
 <translation id="2121067395472282800">एक्सेस कुंजी:<ph name="KEY" /></translation>
+<translation id="2126597928985245619">इस आइटम के लिए कोई टेक्स्ट उपलब्ध नहीं है</translation>
 <translation id="2127747486437921899">इटैलिक</translation>
 <translation id="2138345533858834403">स्क्रीन के ऊपर मौजूद ChromeVox पैनल में रीफ़्रेश
         किए जा सकने वाले ब्रेल प्रदर्शन के आउटपुट की नकल पेश करता है.</translation>
@@ -261,6 +265,7 @@
 <translation id="2911433807131383493">ChromeVox निर्देश खोलें</translation>
 <translation id="2912405967290226587">तीन उंगलियों से दाईं ओर स्वाइप करें</translation>
 <translation id="2932083475399492303">संरचनात्मक या लेआउट के बीच रेखा प्रकार टॉगल करें</translation>
+<translation id="293796669683825859">टिप्पणियां</translation>
 <translation id="2942710183375260152">गहरा स्लेटी नीला</translation>
 <translation id="2943596527105977722">गोल्डन रॉड जैसा गहरा रंग</translation>
 <translation id="2944762337049891859">पेज लोड हो जाने के बाद अपने आप उसे पढ़ेंं.</translation>
@@ -322,6 +327,7 @@
 <translation id="3241052487511142956">पहले देखा गया लिंक</translation>
 <translation id="3241638166094654466">हर एक पंक्ति में सेल:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">पिछला मिलता-जुलता आइटम</translation>
 <translation id="3286372614333682499">पोर्ट्रेट</translation>
 <translation id="3286390186030710347">स्लाइडर</translation>
 <translation id="3299925995433437805">बाद में देखा गया कोई लिंक नहीं.</translation>
@@ -337,6 +343,7 @@
 <translation id="3324983252691184275">गहरा लाल</translation>
 <translation id="3338224621010291843"><ph name="VALUE" /> <ph name="NAME" /> स्‍लाइडर</translation>
 <translation id="335581015389089642">बोली</translation>
+<translation id="3356951775008366684">शब्द का फ़ोनेटिक में उच्चारण करें</translation>
 <translation id="3359142382821736686">seprtr</translation>
 <translation id="3374537878095184207">{COUNT,plural, =1{धन}one{# धन चिह्न}other{# धन चिह्न}}</translation>
 <translation id="338583716107319301">विभाजक</translation>
@@ -503,6 +510,7 @@
 <translation id="4517854969512651305">मान बढ़ाएं</translation>
 <translation id="4529987814483543472">क्लासिक कीमैप</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{स्लैश}one{# स्लैश}other{# स्लैश}}</translation>
+<translation id="4537277403911487429">अगला मिलता-जुलता आइटम</translation>
 <translation id="4547556996012970016">अगले लेवल 5 का शीर्षक</translation>
 <translation id="4562381607973973258">शीर्षलेख</translation>
 <translation id="4569941707103739422">नेविगेट करने के लिए ऊपर या नीचे वाला तीर का निशान; चालू करने के लिए enter दबाएं.</translation>
@@ -533,6 +541,7 @@
 <translation id="4763480195061959176">वीडियो</translation>
 <translation id="4764692524839457597">डिफ़ॉल्ट</translation>
 <translation id="4772771694153161212">अंडरलाइन नहीं है</translation>
+<translation id="4787577491510559358">मौजूदा आइटम के फ़ॉर्मैट बताएं</translation>
 <translation id="479989351350248267">search</translation>
 <translation id="4804818685124855865">डिसकनेक्ट करें</translation>
 <translation id="481165870889056555">वर्तमान पेज का शीर्षक प्रदर्शित करें</translation>
@@ -569,6 +578,7 @@
 <translation id="4983588134362688868">पेज के शीर्ष पर जाएं</translation>
 <translation id="4986606102545753256"><ph name="NAME" />, विंडो</translation>
 <translation id="4993152509206108683">दर <ph name="PERCENT" /> प्रतिशत</translation>
+<translation id="4994420463726586413">बैटरी की मौजूदा स्थिति बताएं</translation>
 <translation id="4996716799442435517">विज़ुअल</translation>
 <translation id="4997282455736854877"><ph name="NAME" />, रेडियो बटन चयनित</translation>
 <translation id="4997475792277222884">कोई अगला आइटम नहीं जो एक लिंक नहीं है.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb
index 72155ed..f61499cc 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Prethodna posjećena veza</translation>
 <translation id="3241638166094654466">Ćelije u svakom retku:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Prethodna slična stavka</translation>
 <translation id="3286372614333682499">portret</translation>
 <translation id="3286390186030710347">Klizač</translation>
 <translation id="3299925995433437805">Nema sljedeće posjećene veze.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Povećavanje vrijednosti</translation>
 <translation id="4529987814483543472">Klasična karta tipkovnice</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{kosa crta}one{# kosa crta}few{# kose crte}other{# kosih crta}}</translation>
+<translation id="4537277403911487429">Sljedeća slična stavka</translation>
 <translation id="4547556996012970016">Sljedeći naslov razine 5</translation>
 <translation id="4562381607973973258">Zaglavlje</translation>
 <translation id="4569941707103739422">Za kretanje po izborniku pritisnite strelicu prema gore ili dolje, a za aktiviranje stavke pritisnite Enter.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb
index 0d69b656..9d93b09 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Előző felkeresett link</translation>
 <translation id="3241638166094654466">Az egyes sorokban található cellák száma:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Előző hasonló elem</translation>
 <translation id="3286372614333682499">álló</translation>
 <translation id="3286390186030710347">Csúszka</translation>
 <translation id="3299925995433437805">Nincs következő felkeresett link.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Érték növelése</translation>
 <translation id="4529987814483543472">Hagyományos billentyűzetkiosztás</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{törtvonal}other{# törtvonal}}</translation>
+<translation id="4537277403911487429">Következő hasonló elem</translation>
 <translation id="4547556996012970016">Következő 5. szintű fejléc</translation>
 <translation id="4562381607973973258">Fejléc</translation>
 <translation id="4569941707103739422">A navigációhoz a lefelé és a felfelé mutató nyilakat, az aktiváláshoz az Enter billentyűt használja.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb
index fa7ecd6..41a03a83 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Tautan yang dikunjungi sebelumnya</translation>
 <translation id="3241638166094654466">Sel di tiap baris:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Item serupa sebelumnya</translation>
 <translation id="3286372614333682499">potret</translation>
 <translation id="3286390186030710347">Penggeser</translation>
 <translation id="3299925995433437805">Tidak ada link yang dikunjungi selanjutnya.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Meningkatkan nilai</translation>
 <translation id="4529987814483543472">Peta tombol klasik</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{garis miring}other{# garis miring}}</translation>
+<translation id="4537277403911487429">Item serupa berikutnya</translation>
 <translation id="4547556996012970016">Judul tingkat 5 berikutnya</translation>
 <translation id="4562381607973973258">Header</translation>
 <translation id="4569941707103739422">Tekan panah atas atau bawah untuk memilih; enter untuk mengaktifkan.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb
index 8f02039..b1cf976f 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Link visitato precedente</translation>
 <translation id="3241638166094654466">Celle in ogni riga:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Elemento simile precedente</translation>
 <translation id="3286372614333682499">verticale</translation>
 <translation id="3286390186030710347">Dispositivo di scorrimento</translation>
 <translation id="3299925995433437805">Nessun link visitato successivo.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Aumenta il valore</translation>
 <translation id="4529987814483543472">Mappa di chiavi classica</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{barra}other{# barre}}</translation>
+<translation id="4537277403911487429">Elemento simile successivo</translation>
 <translation id="4547556996012970016">Intestazione livello 5 successiva</translation>
 <translation id="4562381607973973258">Intestazione</translation>
 <translation id="4569941707103739422">Premi la freccia su o giù per spostarti e INVIO per attivare.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb
index 6a60aa9e..79e52c9 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb
@@ -127,7 +127,7 @@
 <translation id="1845944666972354496">אפשר להפעיל באמצעות לחיצה פעמיים</translation>
 <translation id="1846771122725914429">‏צג ברייל תואם Bluetooth</translation>
 <translation id="1865601187525349519">סוף הטקסט</translation>
-<translation id="1875375785454778375">מבצע פעולות עכשיו</translation>
+<translation id="1875375785454778375">עובד/ת על התוכן הזה</translation>
 <translation id="1876229593313240038">doc</translation>
 <translation id="188130072164734898">אמור את התאריך והשעה הנוכחיים.</translation>
 <translation id="1902396333223336119">תא</translation>
@@ -342,7 +342,7 @@
 <translation id="3324983252691184275">ארגמן</translation>
 <translation id="3338224621010291843">המחוון <ph name="VALUE" /> <ph name="NAME" /></translation>
 <translation id="335581015389089642">דיבור</translation>
-<translation id="3356951775008366684">הקראת ההגייה פונטית של מילה</translation>
+<translation id="3356951775008366684">הקראת הגייה פונטית של מילים</translation>
 <translation id="3359142382821736686">seprtr</translation>
 <translation id="3374537878095184207">{COUNT,plural, =1{סימן חיבור}two{# סימני חיבור}many{# סימני חיבור}other{# סימני חיבור}}</translation>
 <translation id="338583716107319301">מפריד</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb
index 05d41fd..6f6e0e1 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">前にアクセスしたリンク</translation>
 <translation id="3241638166094654466">各行のセル数:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">前の同様の項目</translation>
 <translation id="3286372614333682499">縦向き</translation>
 <translation id="3286390186030710347">スライダ</translation>
 <translation id="3299925995433437805">次にアクセスしたリンクはありません。</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">値を大きくします</translation>
 <translation id="4529987814483543472">クラシック キーマップ</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{スラッシュ}other{# 個のスラッシュ}}</translation>
+<translation id="4537277403911487429">次の同様の項目</translation>
 <translation id="4547556996012970016">次のレベル 5 見出し</translation>
 <translation id="4562381607973973258">見出し</translation>
 <translation id="4569941707103739422">上または下矢印キーで移動し、Enter キーで有効にします。</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb
index ac66141..311ac209 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">ಹಿಂದಿನ ಭೇಟಿ ನೀಡಿದ ಲಿಂಕ್</translation>
 <translation id="3241638166094654466">ಪ್ರತಿಯೊಂದು ಸಾಲಿನಲ್ಲಿರುವ ಸೆಲ್‌ಗಳು:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">ಅದೇ ರೀತಿಯ ಹಿಂದಿನ ಐಟಂ</translation>
 <translation id="3286372614333682499">ಪೋರ್ಟ್ರೇಟ್</translation>
 <translation id="3286390186030710347">ಸ್ಲೈಡರ್</translation>
 <translation id="3299925995433437805">ಮುಂದೆ ಯಾವುದೇ ಭೇಟಿ ನೀಡಿದ ಲಿಂಕ್ ಇಲ್ಲ.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">ಮೌಲ್ಯವನ್ನು ಹೆಚ್ಚಿಸಿ</translation>
 <translation id="4529987814483543472">ಕ್ಲಾಸಿಕ್ ಕೀಮ್ಯಾಪ್</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{ಸ್ಲ್ಯಾಷ್‌}one{# ಸ್ಲ್ಯಾಷ್‌ಗಳು}other{# ಸ್ಲ್ಯಾಷ್‌ಗಳು}}</translation>
+<translation id="4537277403911487429">ಅದೇ ರೀತಿಯ ಮುಂದಿನ ಐಟಂ</translation>
 <translation id="4547556996012970016">ಮುಂದಿನ ಹಂತ 5 ಶಿರೋನಾಮೆ</translation>
 <translation id="4562381607973973258">ಶಿರೋಲೇಖ</translation>
 <translation id="4569941707103739422">ನ್ಯಾವಿಗೇಟ್ ಮಾಡಲು ಮೇಲಿನ ಬಾಣದ ಗುರುತು ಅಥವಾ ಕೆಳಗಿನ ಬಾಣದ ಗುರುತನ್ನು ಒತ್ತಿರಿ; ಸಕ್ರಿಯಗೊಳಿಸಲು ಎಂಟರ್ ಒತ್ತಿ.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb
index f9945b9..7b5bb30 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">이전 방문한 링크</translation>
 <translation id="3241638166094654466">각 행의 셀 수:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">이전 유사한 항목</translation>
 <translation id="3286372614333682499">세로 모드</translation>
 <translation id="3286390186030710347">슬라이더</translation>
 <translation id="3299925995433437805">다음 방문한 링크가 없습니다.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">값 늘리기</translation>
 <translation id="4529987814483543472">기본 키맵</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{슬래시}other{슬래시 #개}}</translation>
+<translation id="4537277403911487429">다음 유사한 항목</translation>
 <translation id="4547556996012970016">다음 수준 5 제목</translation>
 <translation id="4562381607973973258">머리글</translation>
 <translation id="4569941707103739422">이동하려면 위쪽 또는 아래쪽 화살표를 누르고, 활성화하려면 Enter를 누르세요.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb
index 39150bf..9c14ff1 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Ankstesnė aplankyta nuoroda</translation>
 <translation id="3241638166094654466">Langelių kiekvienoje eilutėje:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Ankstesnis panašus elementas</translation>
 <translation id="3286372614333682499">stačia</translation>
 <translation id="3286390186030710347">Šliaužiklis</translation>
 <translation id="3299925995433437805">Nėra kitos aplankytos nuorodos.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Padidinti vertę</translation>
 <translation id="4529987814483543472">Klasikinis klavišų žemėlapis</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{pasvirasis brūkšnys}one{# pasvirasis brūkšnys}few{# pasvirieji brūkšniai}many{# slashes}other{# pasvirųjų brūkšnių}}</translation>
+<translation id="4537277403911487429">Kitas panašus elementas</translation>
 <translation id="4547556996012970016">Kita 5 lygio antraštė</translation>
 <translation id="4562381607973973258">Antraštė</translation>
 <translation id="4569941707103739422">Jei norite naršyti, paspauskite rodyklę aukštyn arba žemyn; kad suaktyvintumėte, paspauskite „Enter“.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb
index c93cab2..61f1e62 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Iepriekšējā apmeklētā saite</translation>
 <translation id="3241638166094654466">Šūnas katrā rindā:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Iepriekšējais līdzīgais vienums</translation>
 <translation id="3286372614333682499">portrets</translation>
 <translation id="3286390186030710347">Slīdnis</translation>
 <translation id="3299925995433437805">Tālāk nav nevienas apmeklētās saites.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Palielināt vērtību</translation>
 <translation id="4529987814483543472">Klasiskā taustiņu piesaiste</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{slīpsvītra}zero{# slīpsvītru}one{# slīpsvītra}other{# slīpsvītras}}</translation>
+<translation id="4537277403911487429">Nākamais līdzīgais vienums</translation>
 <translation id="4547556996012970016">Nākamais 5. līmeņa virsraksts</translation>
 <translation id="4562381607973973258">Galvene</translation>
 <translation id="4569941707103739422">Lai veiktu navigāciju, nospiediet augšupvērsto vai lejupvērsto bultiņu; lai aktivizētu vienumu, nospiediet ievadīšanas taustiņu.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb
index ab4c521..2bbb572 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">സന്ദർശിച്ച മുമ്പത്തെ ലിങ്ക്</translation>
 <translation id="3241638166094654466">ഓരോ വരിയിലെയും കളങ്ങൾ:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">സമാനമായ മുമ്പത്തെ ഇനം</translation>
 <translation id="3286372614333682499">പോർട്രെയ്‌റ്റ്</translation>
 <translation id="3286390186030710347">സ്ലൈഡർ</translation>
 <translation id="3299925995433437805">സന്ദർശിച്ച അടുത്ത ലിങ്കൊന്നുമില്ല.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">മൂല്യം കൂട്ടുക</translation>
 <translation id="4529987814483543472">ക്ലാസിക്ക് കീമാപ്പ്</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{സ്ലാഷ്}other{# സ്ലാഷുകൾ}}</translation>
+<translation id="4537277403911487429">സമാനമായ അടുത്ത ഇനം</translation>
 <translation id="4547556996012970016">അടുത്ത നില 5 ശീർഷകം</translation>
 <translation id="4562381607973973258">ശീർഷകം</translation>
 <translation id="4569941707103739422">നാവിഗേറ്റ് ചെയ്യാൻ മുകളിലേക്കോ താഴേക്കോ ഉള്ള അമ്പടയാള കീകൾ അമർത്തുക; സജീവമാക്കാൻ എന്റർ അമർത്തുക.</translation>
@@ -720,7 +722,7 @@
 <translation id="5937336320314038555">{COUNT,plural, =1{സമചിഹ്നം}other{# സമചിഹ്നങ്ങൾ}}</translation>
 <translation id="5939518447894949180">വീണ്ടും സജ്ജീകരിക്കുക</translation>
 <translation id="5948123859135882163">ഘടനാപരമായതിനും സെമാന്റിക്കിനുമിടയിൽ മാത്ത് എക്‌സ്‌പ്രഷനുകളുടെ വ്യാഖ്യാനം ടോഗിൾ ചെയ്യുക</translation>
-<translation id="5955304353782037793">app</translation>
+<translation id="5955304353782037793">ആപ്പ്</translation>
 <translation id="5956928062748260866">ഡയലോഗ്</translation>
 <translation id="5963413905009737549">വിഭാഗം</translation>
 <translation id="5968607524793740041">സന്ദർഭ മെനു കാണിക്കുക</translation>
@@ -893,7 +895,7 @@
 <translation id="72393384879519786">ശീർഷകം</translation>
 <translation id="7240858705033280249">വിശദാംശങ്ങളിലേക്ക് പോവുക</translation>
 <translation id="7241683698754534149">ദൈർഘ്യമേറിയ വിവരണം പുതിയ ടാബിൽ തുറക്കുക</translation>
-<translation id="7248671827512403053">അപ്ലിക്കേഷന്‍</translation>
+<translation id="7248671827512403053">ആപ്പ്</translation>
 <translation id="725969808843520477">അടുത്ത റേഡിയോ ബട്ടൺ</translation>
 <translation id="7261612856573623172">സിസ്‌റ്റം ടെക്‌സ്‌റ്റ്-ടു-സ്‌പീച്ച് ശബ്‌ദം</translation>
 <translation id="7269119382257320590">ചിഹ്നനങ്ങളൊന്നുമില്ല</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb
index 064ce61e..1c99b69 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">मागील भेट दिलेली लिंक</translation>
 <translation id="3241638166094654466">प्रत्येक रेषेतील सेल:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">मागील यासारखा आयटम</translation>
 <translation id="3286372614333682499">पोट्रेट</translation>
 <translation id="3286390186030710347">स्‍लायडर</translation>
 <translation id="3299925995433437805">पुढील भेट दिलेली लिंक नाही.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">मूल्य वाढवा</translation>
 <translation id="4529987814483543472">क्लासिक मुख्य नकाशा</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{स्लॅश}other{# स्लॅश}}</translation>
+<translation id="4537277403911487429">पुढील यासारखा आयटम</translation>
 <translation id="4547556996012970016">पुढील स्तर 5 मथळा</translation>
 <translation id="4562381607973973258">शीर्षलेख</translation>
 <translation id="4569941707103739422">नेव्हिगेट करण्यासाठी अप किंवा डाउन ॲरो दाबा, अ‍ॅक्टिव्ह करण्यासाठी एंटर दाबा.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb
index a78a1db..3d9e72d 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Pautan yang dilawati sebelumnya</translation>
 <translation id="3241638166094654466">Sel dalam setiap baris:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Item serupa sebelumnya</translation>
 <translation id="3286372614333682499">potret</translation>
 <translation id="3286390186030710347">Peluncur</translation>
 <translation id="3299925995433437805">Tiada pautan yang dilawati seterusnya.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Tingkatkan nilai</translation>
 <translation id="4529987814483543472">Peta kekunci klasik</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{garis condong}other{# garis condong}}</translation>
+<translation id="4537277403911487429">Item serupa seterusnya</translation>
 <translation id="4547556996012970016">Tajuk tahap 5 seterusnya</translation>
 <translation id="4562381607973973258">Pengepala</translation>
 <translation id="4569941707103739422">Tekan anak panah ke atas atau ke bawah untuk menavigasi; enter untuk mengaktifkan.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb
index ac64fe9..8e29f27 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Vorige bezochte link</translation>
 <translation id="3241638166094654466">Cellen in elke regel:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Vorig vergelijkbaar item</translation>
 <translation id="3286372614333682499">staand</translation>
 <translation id="3286390186030710347">Schuifregelaar</translation>
 <translation id="3299925995433437805">Geen volgende bezochte link.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Waarde verhogen</translation>
 <translation id="4529987814483543472">Klassieke toetsenbordindeling</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{slash}other{# slashes}}</translation>
+<translation id="4537277403911487429">Volgend vergelijkbaar item</translation>
 <translation id="4547556996012970016">Volgende kop voor niveau 5</translation>
 <translation id="4562381607973973258">Koptekst</translation>
 <translation id="4569941707103739422">Druk op de pijl-omhoog of -omlaag om te navigeren of druk op Enter om te activeren.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb
index 3e8461f..e54f8e9 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Tidligere besøkt link</translation>
 <translation id="3241638166094654466">Celler i hver linje:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Forrige lignende element</translation>
 <translation id="3286372614333682499">stående</translation>
 <translation id="3286390186030710347">Glidebryter</translation>
 <translation id="3299925995433437805">Ingen neste besøkte link.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Øk verdien</translation>
 <translation id="4529987814483543472">Klassisk tastaturoppsett</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{skråstrek}other{# skråstreker}}</translation>
+<translation id="4537277403911487429">Neste lignende element</translation>
 <translation id="4547556996012970016">Neste overskrift på nivå 5</translation>
 <translation id="4562381607973973258">Topptekst</translation>
 <translation id="4569941707103739422">Trykk på opp- eller nedoverpilen for å navigere og Enter for å aktivere.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb
index 9eccb69..68d8fb74 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Poprzedni kliknięty link</translation>
 <translation id="3241638166094654466">Komórki w każdym wierszu:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Poprzedni podobny element</translation>
 <translation id="3286372614333682499">orientacja pionowa</translation>
 <translation id="3286390186030710347">Suwak</translation>
 <translation id="3299925995433437805">Brak następnego klikniętego linku.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Zwiększ wartość</translation>
 <translation id="4529987814483543472">Klasyczny układ klawiatury</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{ukośnik}few{# ukośniki}many{# ukośników}other{# slashes}}</translation>
+<translation id="4537277403911487429">Następny podobny element</translation>
 <translation id="4547556996012970016">Następny nagłówek poziomu 5</translation>
 <translation id="4562381607973973258">Nagłówek</translation>
 <translation id="4569941707103739422">Naciśnij strzałkę w górę lub w dół, aby się poruszać, i Enter, aby wybrać.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb
index 223ee69..f621ecf1 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb
@@ -127,7 +127,7 @@
 <translation id="1845944666972354496">Toque duas vezes para ativar</translation>
 <translation id="1846771122725914429">Linha braille com Bluetooth</translation>
 <translation id="1865601187525349519">Fim do texto</translation>
-<translation id="1875375785454778375">Presença ao vivo</translation>
+<translation id="1875375785454778375">Há mais alguém aqui</translation>
 <translation id="1876229593313240038">doc</translation>
 <translation id="188130072164734898">Fala a hora e a data atuais.</translation>
 <translation id="1902396333223336119">Célula</translation>
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Link anterior visitado</translation>
 <translation id="3241638166094654466">Células em cada linha:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Item semelhante anterior</translation>
 <translation id="3286372614333682499">retrato</translation>
 <translation id="3286390186030710347">Slide</translation>
 <translation id="3299925995433437805">Não há próximo link visitado.</translation>
@@ -342,7 +343,7 @@
 <translation id="3324983252691184275">Carmim</translation>
 <translation id="3338224621010291843">Controle deslizante <ph name="VALUE" /> <ph name="NAME" /></translation>
 <translation id="335581015389089642">Voz</translation>
-<translation id="3356951775008366684">Anunciar pronúncia fonética da palavra</translation>
+<translation id="3356951775008366684">Ler em voz alta a pronúncia fonética da palavra</translation>
 <translation id="3359142382821736686">seprtr</translation>
 <translation id="3374537878095184207">{COUNT,plural, =1{sinal de mais}one{# indicadores de mais}other{# indicadores de mais}}</translation>
 <translation id="338583716107319301">Separador</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Aumentar valor</translation>
 <translation id="4529987814483543472">Mapa de teclado clássico</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{barra}one{# barras}other{# barras}}</translation>
+<translation id="4537277403911487429">Próximo item semelhante</translation>
 <translation id="4547556996012970016">Próximo cabeçalho de nível 5</translation>
 <translation id="4562381607973973258">Cabeçalho</translation>
 <translation id="4569941707103739422">Pressione a seta para cima ou para baixo para navegar ou pressione Enter para ativar.</translation>
@@ -576,7 +578,7 @@
 <translation id="4983588134362688868">Vai para a parte superior da página</translation>
 <translation id="4986606102545753256">Janela <ph name="NAME" /></translation>
 <translation id="4993152509206108683">Velocidade <ph name="PERCENT" /> por cento</translation>
-<translation id="4994420463726586413">Anunciar o status atual da bateria</translation>
+<translation id="4994420463726586413">Ler em voz alta o status atual da bateria</translation>
 <translation id="4996716799442435517">Visual</translation>
 <translation id="4997282455736854877">Botão de opção <ph name="NAME" /> selecionado</translation>
 <translation id="4997475792277222884">Nenhum item a seguir que não seja link.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb
index 4f0c689..285989e 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Link visitado anterior</translation>
 <translation id="3241638166094654466">Células em cada linha:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Item semelhante anterior</translation>
 <translation id="3286372614333682499">retrato</translation>
 <translation id="3286390186030710347">Controlo de deslize</translation>
 <translation id="3299925995433437805">Não existe nenhum link visitado seguinte.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Aumentar valor</translation>
 <translation id="4529987814483543472">Mapa de teclas clássico</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{barra}other{# barras}}</translation>
+<translation id="4537277403911487429">Item semelhante seguinte</translation>
 <translation id="4547556996012970016">Título de nível 5 seguinte</translation>
 <translation id="4562381607973973258">Cabeçalho</translation>
 <translation id="4569941707103739422">Prima a seta para cima ou para baixo para navegar. Prima Enter para ativar.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb
index bee059d..b167f1ab 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Link accesat anterior</translation>
 <translation id="3241638166094654466">Celule pe fiecare rând:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Elementul similar anterior</translation>
 <translation id="3286372614333682499">portret</translation>
 <translation id="3286390186030710347">Glisor</translation>
 <translation id="3299925995433437805">Nu există un link accesat următor.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Mărește valoarea</translation>
 <translation id="4529987814483543472">Harta clasică a tastelor</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{bară oblică spre dreapta}few{# bare oblice spre dreapta}other{# de bare oblice spre dreapta}}</translation>
+<translation id="4537277403911487429">Următorul element similar</translation>
 <translation id="4547556996012970016">Titlul de nivel 5 următor</translation>
 <translation id="4562381607973973258">Antet</translation>
 <translation id="4569941707103739422">Apasă săgeata în sus sau săgeata în jos pentru a naviga sau pe enter pentru activare.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb
index 5ade116..b075d1c 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Перейти к предыдущей открытой ссылке</translation>
 <translation id="3241638166094654466">Ячеек в каждой строке:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Предыдущий похожий объект</translation>
 <translation id="3286372614333682499">вертикальная ориентация</translation>
 <translation id="3286390186030710347">Ползунок</translation>
 <translation id="3299925995433437805">Следующей открытой ссылки нет.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Увеличить значение.</translation>
 <translation id="4529987814483543472">Классическая раскладка</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{косая черта}one{# косая черта}few{# косые черты}many{# косых черт}other{# slashes}}</translation>
+<translation id="4537277403911487429">Следующий похожий объект</translation>
 <translation id="4547556996012970016">Перейти к следующему заголовку пятого уровня</translation>
 <translation id="4562381607973973258">Заголовок.</translation>
 <translation id="4569941707103739422">Перемещайтесь по меню с помощью стрелок вверх и вниз. Чтобы выбрать команду, нажмите Ввод.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb
index 34fa237..2ca3ff0 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Predchádzajúci navštívený odkaz</translation>
 <translation id="3241638166094654466">Bunky v každom riadku:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Predchádzajúca podobná položka</translation>
 <translation id="3286372614333682499">na výšku</translation>
 <translation id="3286390186030710347">Posuvník</translation>
 <translation id="3299925995433437805">Žiadny ďalší navštívený odkaz</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Zvýšiť hodnotu</translation>
 <translation id="4529987814483543472">Klasická klávesová mapa</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{lomka}few{# lomky}many{# slashes}other{# lomiek}}</translation>
+<translation id="4537277403911487429">Ďalšia podobná položka</translation>
 <translation id="4547556996012970016">Ďalší nadpis 5. úrovne</translation>
 <translation id="4562381607973973258">Hlavička</translation>
 <translation id="4569941707103739422">Prechádzajte pomocou šípky nahor alebo nadol. Aktivujete zadaním textu.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb
index 2dfe55a..d2fe715 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Prejšnja obiskana povezava</translation>
 <translation id="3241638166094654466">Celice v posamezni vrstici:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Prejšnji podobni element</translation>
 <translation id="3286372614333682499">pokončno</translation>
 <translation id="3286390186030710347">Drsnik</translation>
 <translation id="3299925995433437805">Ni naslednje obiskane povezave</translation>
@@ -342,7 +343,7 @@
 <translation id="3324983252691184275">Škrlatna</translation>
 <translation id="3338224621010291843">Drsnik z vrednostjo <ph name="VALUE" /> in imenom <ph name="NAME" /></translation>
 <translation id="335581015389089642">Speech</translation>
-<translation id="3356951775008366684">Najava fonetične izgovarjave za besedo</translation>
+<translation id="3356951775008366684">Najava fonetične izgovorjave za besedo</translation>
 <translation id="3359142382821736686">loččrt</translation>
 <translation id="3374537878095184207">{COUNT,plural, =1{znak za plus}one{# znak za plus}two{# znaka za plus}few{# znaki za plus}other{# znakov za plus}}</translation>
 <translation id="338583716107319301">Ločilo</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Povečanje vrednosti</translation>
 <translation id="4529987814483543472">Klasična razporeditev tipk</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{poševnica}one{# poševnica}two{# poševnici}few{# poševnice}other{# poševnic}}</translation>
+<translation id="4537277403911487429">Naslednji podobni element</translation>
 <translation id="4547556996012970016">Naslednji naslov na ravni 5</translation>
 <translation id="4562381607973973258">Glava</translation>
 <translation id="4569941707103739422">Pritisnite puščico gor ali dol, če se želite pomikati; pritisnite »enter«, če želite aktivirati.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb
index 95041e1e..dcf809d 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb
@@ -148,7 +148,7 @@
 <translation id="2009187674653301682">Није експонентни текст</translation>
 <translation id="2010555995361223825">ChromeVox менији</translation>
 <translation id="2045490512405922022">није означено</translation>
-<translation id="2049107626739254612">Информације о прављењу садржаја</translation>
+<translation id="2049107626739254612">Информације о ауторству</translation>
 <translation id="20601713649439366">Нема претходног математичког израза.</translation>
 <translation id="2063539687800151747">Натпис</translation>
 <translation id="207477615537953741">Семантичко тумачење је искључено</translation>
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Претходни посећени линк</translation>
 <translation id="3241638166094654466">Ћелија у свакој линији:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Претходна слична ставка</translation>
 <translation id="3286372614333682499">усправно</translation>
 <translation id="3286390186030710347">Клизач</translation>
 <translation id="3299925995433437805">Нема следећег посећеног линка.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Повећава вредност</translation>
 <translation id="4529987814483543472">Класична мапа тастера</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{коса црта}one{# коса црта}few{# косе црте}other{# косих црта}}</translation>
+<translation id="4537277403911487429">Следећа слична ставка</translation>
 <translation id="4547556996012970016">Следеће заглавље 5. нивоа</translation>
 <translation id="4562381607973973258">Заглавље</translation>
 <translation id="4569941707103739422">Притисните стрелицу нагоре или надоле да бисте се кретали. Да бисте активирали, притисните Enter.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb
index 75224e7..218986a 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">Föregående länk som har besökts</translation>
 <translation id="3241638166094654466">Celler i varje rad:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Föregående liknande</translation>
 <translation id="3286372614333682499">stående</translation>
 <translation id="3286390186030710347">Skjutreglage</translation>
 <translation id="3299925995433437805">Det finns inga fler länkar som har besökts.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">Öka värdet</translation>
 <translation id="4529987814483543472">Klassisk tangentuppsättning</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{snedstreck}other{# snedstreck}}</translation>
+<translation id="4537277403911487429">Nästa liknande</translation>
 <translation id="4547556996012970016">Nästa rubrik på nivå 5</translation>
 <translation id="4562381607973973258">Sidhuvud</translation>
 <translation id="4569941707103739422">Flytta markeringen med uppåtpil eller nedåtpil, aktivera med retur.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb
index 0275cd6..7ad7544 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Kiungo kilichotembelewa kilichotangulia</translation>
 <translation id="3241638166094654466">Visanduku katika kila mstari:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Kipengee kinachofanana ambacho kilitangulia</translation>
 <translation id="3286372614333682499">wima</translation>
 <translation id="3286390186030710347">Kitelezi</translation>
 <translation id="3299925995433437805">Hakuna kiungo kilichotembelewa kinachofuata.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Ongeza thamani</translation>
 <translation id="4529987814483543472">Ramani msingi ya zamani</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{mkwaju}other{mikwaju #}}</translation>
+<translation id="4537277403911487429">Kipengee kinachofanana ambacho kinafuata</translation>
 <translation id="4547556996012970016">Kichwa cha ngazi ya 5 kinachofuata</translation>
 <translation id="4562381607973973258">Kichwa</translation>
 <translation id="4569941707103739422">Bonyeza kishale cha juu au cha chini ili usogeze; bonyeza 'enter' ili uwashe.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb
index f3bdd3b..3ed62f24 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">முந்தையதாக பார்வையிட்ட இணைப்பு</translation>
 <translation id="3241638166094654466">ஒவ்வொரு வரியிலும் உள்ள கலங்கள்:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">இதேபோன்ற முந்தைய கட்டளை</translation>
 <translation id="3286372614333682499">போர்ட்ரெயிட்</translation>
 <translation id="3286390186030710347">ஸ்லைடர்</translation>
 <translation id="3299925995433437805">அடுத்ததாக பார்வையிட்ட இணைப்பு இல்லை.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">மதிப்பை அதிகரிக்கும்</translation>
 <translation id="4529987814483543472">கிளாஸிக் விசைவரைபடம்</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{சாய்கோடு}other{# சாய்கோடுகள்}}</translation>
+<translation id="4537277403911487429">இதேபோன்ற அடுத்த கட்டளை</translation>
 <translation id="4547556996012970016">அடுத்த 5 ஆம் படிநிலை தலைப்பு</translation>
 <translation id="4562381607973973258">தலைப்பு</translation>
 <translation id="4569941707103739422">மெனு கன்ட்ரோலில் வெவ்வேறு உருப்படிகளுக்குச் செல்ல, மேல்நோக்கிய அல்லது கீழ்நோக்கிய அம்புக்குறி விசையை அழுத்தவும்; செயல்படுத்த, enter விசையை அழுத்தவும்.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb
index 583c3de..4afec1cc 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">మునుపు సందర్శించిన లింక్</translation>
 <translation id="3241638166094654466">ప్రతి పంక్తిలో గడులు:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">ఇలాంటి మునుపటి అంశం</translation>
 <translation id="3286372614333682499">పోర్ట్రెయిట్‌లో ఉంది</translation>
 <translation id="3286390186030710347">స్లయిడర్</translation>
 <translation id="3299925995433437805">తర్వాత సందర్శించిన లింక్ ఏదీ లేదు.</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">విలువను పెంచుతుంది</translation>
 <translation id="4529987814483543472">క్లాసిక్ కీమ్యాప్</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{స్లాష్ గుర్తు}other{# స్లాష్ గుర్తులు}}</translation>
+<translation id="4537277403911487429">ఇలాంటి తరువాతి అంశం</translation>
 <translation id="4547556996012970016">తరువాత స్థాయి 5 శీర్షిక</translation>
 <translation id="4562381607973973258">ముఖ్య శీర్షిక</translation>
 <translation id="4569941707103739422">నావిగేట్ చేయడం కోసం పైకి లేదా కిందికి బాణాన్ని నొక్కండి; యాక్టివేట్‌ చేయడం కోసం enter నొక్కండి.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb
index ecde6aa..9b9e324 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">ลิงก์ที่เคยเข้าชมก่อนหน้า</translation>
 <translation id="3241638166094654466">จำนวนเซลล์ในแต่ละบรรทัด:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">รายการที่คล้ายกันก่อนหน้า</translation>
 <translation id="3286372614333682499">แนวตั้ง</translation>
 <translation id="3286390186030710347">แถบเลื่อน</translation>
 <translation id="3299925995433437805">ไม่มีลิงก์ที่เคยเข้าชมถัดไป</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">เพิ่มค่า</translation>
 <translation id="4529987814483543472">รูปแบบแป้นคลาสสิก</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{เครื่องหมายทับ}other{# เครื่องหมายทับ}}</translation>
+<translation id="4537277403911487429">รายการที่คล้ายกันถัดไป</translation>
 <translation id="4547556996012970016">ส่วนหัวระดับ 5 ถัดไป</translation>
 <translation id="4562381607973973258">ส่วนหัว</translation>
 <translation id="4569941707103739422">กดลูกศรขึ้นหรือลงเพื่อนำทาง แล้วกด Enter เพื่อเปิดใช้งาน</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb
index 088d205..cd264c38 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Ziyaret edilmiş olan önceki bağlantı</translation>
 <translation id="3241638166094654466">Her satırdaki hücre sayısı:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Önceki benzer öğe</translation>
 <translation id="3286372614333682499">dikey</translation>
 <translation id="3286390186030710347">Kaydırma çubuğu</translation>
 <translation id="3299925995433437805">Ziyaret edilmiş başka sonraki bağlantı yok.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Değeri artırma</translation>
 <translation id="4529987814483543472">Klasik tuş eşleşmesi</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{eğik çizgi}other{# eğik çizgi}}</translation>
+<translation id="4537277403911487429">Sonraki benzer öğe</translation>
 <translation id="4547556996012970016">Sonraki 5. düzey başlık</translation>
 <translation id="4562381607973973258">Üst bilgi</translation>
 <translation id="4569941707103739422">Gezinmek için yukarı veya aşağı oka, etkinleştirmek için Enter tuşuna basın.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb
index 02911e33..6c5a8946 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb
@@ -127,7 +127,7 @@
 <translation id="1845944666972354496">Двічі торкніться, щоб активувати</translation>
 <translation id="1846771122725914429">Брайлівський Bluetooth-дисплей</translation>
 <translation id="1865601187525349519">Кінець тексту</translation>
-<translation id="1875375785454778375">Присутність у реальному часі</translation>
+<translation id="1875375785454778375">Дані про присутність у реальному часі</translation>
 <translation id="1876229593313240038">документ</translation>
 <translation id="188130072164734898">Диктувати поточну дату та час.</translation>
 <translation id="1902396333223336119">Клітинка</translation>
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">Попереднє натиснуте посилання</translation>
 <translation id="3241638166094654466">Клітинок у кожному рядку:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />: <ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">Попередній схожий елемент</translation>
 <translation id="3286372614333682499">книжкова</translation>
 <translation id="3286390186030710347">Повзунок</translation>
 <translation id="3299925995433437805">Немає наступного натиснутого посилання.</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">Збільшити значення</translation>
 <translation id="4529987814483543472">Класична розкладка клавіатури</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{коса риска}one{# коса риска}few{# косі риски}many{# косих рисок}other{# slashes}}</translation>
+<translation id="4537277403911487429">Наступний схожий елемент</translation>
 <translation id="4547556996012970016">Наступний заголовок рівня 5</translation>
 <translation id="4562381607973973258">Заголовок</translation>
 <translation id="4569941707103739422">Натискайте стрілки вгору чи вниз для навігації; натисніть Enter, щоб активувати.</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb
index 1ebff095..4760a2a 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb
@@ -326,6 +326,7 @@
 <translation id="3241052487511142956">上一个访问过的链接</translation>
 <translation id="3241638166094654466">每行中的单元格数:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />:<ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">上一个相似项</translation>
 <translation id="3286372614333682499">纵向</translation>
 <translation id="3286390186030710347">滑块</translation>
 <translation id="3299925995433437805">不存在下一个访问过的链接。</translation>
@@ -508,6 +509,7 @@
 <translation id="4517854969512651305">将值增大</translation>
 <translation id="4529987814483543472">传统键映射</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{1个斜线符号}other{#个斜线符号}}</translation>
+<translation id="4537277403911487429">下一个相似项</translation>
 <translation id="4547556996012970016">下一个5级标题</translation>
 <translation id="4562381607973973258">标头标记</translation>
 <translation id="4569941707103739422">按向上或向下箭头即可浏览;按 Enter 键即可启动。</translation>
diff --git a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb
index ca511fd..3ecd0aa 100644
--- a/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb
+++ b/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb
@@ -327,6 +327,7 @@
 <translation id="3241052487511142956">上一個造訪過的連結</translation>
 <translation id="3241638166094654466">各行儲存格數目:</translation>
 <translation id="3244209481693235975"><ph name="LANGUAGE" />:<ph name="CONTENT" /></translation>
+<translation id="3260949043575829030">上一個相似的項目</translation>
 <translation id="3286372614333682499">縱向</translation>
 <translation id="3286390186030710347">滑桿</translation>
 <translation id="3299925995433437805">沒有下一個造訪過的連結。</translation>
@@ -509,6 +510,7 @@
 <translation id="4517854969512651305">調升值</translation>
 <translation id="4529987814483543472">傳統按鍵對應配置</translation>
 <translation id="4532633738839459153">{COUNT,plural, =1{斜線}other{# 個斜線}}</translation>
+<translation id="4537277403911487429">下一個相似的項目</translation>
 <translation id="4547556996012970016">下一個第 5 階標題</translation>
 <translation id="4562381607973973258">頁首</translation>
 <translation id="4569941707103739422">按下向上鍵或向下鍵即可瀏覽;按下 Enter 鍵則可啟動。</translation>
diff --git a/chrome/browser/resources/chromeos/switch_access/menu_manager.js b/chrome/browser/resources/chromeos/switch_access/menu_manager.js
index e86584e..8895de2 100644
--- a/chrome/browser/resources/chromeos/switch_access/menu_manager.js
+++ b/chrome/browser/resources/chromeos/switch_access/menu_manager.js
@@ -69,12 +69,10 @@
     this.selectionExists_ = false;
 
     /**
-     * Callback for reloading the menu when the text selection has changed.
-     * Bind creates a new function, so this function is saved as a field to
-     * add and remove the selection event listener properly.
-     * @private {function(chrome.automation.AutomationEvent): undefined}
+     * A function to be called when the menu exits.
+     * @private {?function()}
      */
-    this.onSelectionChanged_ = this.reloadMenuForSelectionChange_.bind(this);
+    this.onExitCallback_ = null;
 
     /**
      * Keeps track of when the clipboard is empty.
@@ -150,16 +148,14 @@
     this.closeCurrentMenu_();
     this.inMenu_ = false;
 
-    if (window.switchAccess.improvedTextInputEnabled() &&
-        this.menuOriginNode_) {
-      this.menuOriginNode_.removeEventListener(
-          chrome.automation.EventType.TEXT_SELECTION_CHANGED,
-          this.onSelectionChanged_, false /** Don't use capture. */);
+    if (this.onExitCallback_) {
+      this.onExitCallback_();
+      this.onExitCallback_ = null;
     }
     this.menuOriginNode_ = null;
 
     chrome.accessibilityPrivate.setSwitchAccessMenuState(
-        false /** Hide the menu. */, RectHelper.ZERO_RECT, 0);
+        false /** should_show */, RectHelper.ZERO_RECT, 0);
   }
 
   /**
@@ -205,7 +201,7 @@
     if (!shouldReloadMenu) {
       // Wait for the menu to appear in the panel before highlighting the
       // first available action.
-      this.menuPanelNode().addEventListener(
+      this.menuPanelNode_.addEventListener(
           chrome.automation.EventType.CHILDREN_CHANGED,
           this.onMenuPanelChildrenChanged_, false /** Don't use capture. */);
     }
@@ -227,9 +223,15 @@
 
     this.menuOriginNode_ = navNode;
     if (!shouldReloadMenu && window.switchAccess.improvedTextInputEnabled()) {
+      const callback = this.reloadMenuForSelectionChange_.bind(this);
+
       this.menuOriginNode_.addEventListener(
-          chrome.automation.EventType.TEXT_SELECTION_CHANGED,
-          this.onSelectionChanged_, false /** Don't use capture. */);
+          chrome.automation.EventType.TEXT_SELECTION_CHANGED, callback,
+          false /** use_capture */);
+      this.onExitCallback_ = this.menuOriginNode_.removeEventListener.bind(
+          this.menuOriginNode_,
+          chrome.automation.EventType.TEXT_SELECTION_CHANGED, callback,
+          false /** use_capture */);
     }
 
     if (shouldReloadMenu && actionNode) {
@@ -321,7 +323,7 @@
     // panel, so remove the listener once the callback has been called once.
     // This ensures the first action is not continually highlighted as we
     // navigate through the menu.
-    this.menuPanelNode().removeEventListener(
+    this.menuPanelNode_.removeEventListener(
         chrome.automation.EventType.CHILDREN_CHANGED,
         this.onMenuPanelChildrenChanged_, false /** Don't use capture. */);
   }
@@ -430,28 +432,23 @@
    */
   connectMenuPanel(menuPanel) {
     this.menuPanel_ = menuPanel;
+    this.findMenuPanelNode_();
     return this;
   }
 
   /**
-   * Get the menu panel node. If it's not defined, search for it.
-   * @return {!chrome.automation.AutomationNode}
+   * Searches for the menu panel node.
    */
-  menuPanelNode() {
-    if (this.menuPanelNode_) {
-      return this.menuPanelNode_;
-    }
-
+  findMenuPanelNode_() {
     const treeWalker = new AutomationTreeWalker(
         this.desktop_, constants.Dir.FORWARD,
         SwitchAccessPredicate.switchAccessMenuPanelDiscoveryRestrictions());
     const node = treeWalker.next().node;
-    if (node) {
-      this.menuPanelNode_ = node;
-      return this.menuPanelNode_;
+    if (!node) {
+      setTimeout(this.findMenuPanelNode_.bind(this), 500);
+      return;
     }
-    console.log('Unable to find the Switch Access menu panel.');
-    return this.desktop_;
+    this.menuPanelNode_ = node;
   }
 
   /**
@@ -465,7 +462,7 @@
       return this.menuNode_;
     }
 
-    if (this.menuPanelNode() !== this.desktop_) {
+    if (this.menuPanelNode_) {
       if (this.menuPanelNode_.firstChild) {
         this.menuNode_ = this.menuPanelNode_.firstChild;
         return this.menuNode_;
diff --git a/chrome/browser/resources/local_ntp/customize.js b/chrome/browser/resources/local_ntp/customize.js
index c691b823..d75d7a0 100644
--- a/chrome/browser/resources/local_ntp/customize.js
+++ b/chrome/browser/resources/local_ntp/customize.js
@@ -1984,7 +1984,9 @@
     richerPicker.classList.add(customize.CLASSES.MOUSE_NAV);
   };
   richerPicker.onkeydown = function(event) {
-    richerPicker.classList.remove(customize.CLASSES.MOUSE_NAV);
+    if (Object.values(customize.KEYCODES).includes(event.keyCode)) {
+      richerPicker.classList.remove(customize.CLASSES.MOUSE_NAV);
+    }
 
     if (event.keyCode === customize.KEYCODES.BACKSPACE &&
         customize.richerPicker_selectedSubmenu.menu.id ===
diff --git a/chrome/browser/resources/local_ntp/local_ntp.css b/chrome/browser/resources/local_ntp/local_ntp.css
index 3aa33a8..3e7100ec 100644
--- a/chrome/browser/resources/local_ntp/local_ntp.css
+++ b/chrome/browser/resources/local_ntp/local_ntp.css
@@ -945,7 +945,6 @@
   font-size: 14px;
   height: 32px;
   left: 0;
-  line-height: 32px;
   margin-bottom: 16px;
   outline: none;
   text-align: start;
diff --git a/chrome/browser/resources/ntp4/incognito_tab.css b/chrome/browser/resources/ntp4/incognito_tab.css
index 38d38fd..8561b69 100644
--- a/chrome/browser/resources/ntp4/incognito_tab.css
+++ b/chrome/browser/resources/ntp4/incognito_tab.css
@@ -96,11 +96,28 @@
   }
 }
 
-/** Third-Party Cookie Blocking Box ----------------------------------------- */
+/** Cookie Controls --------------------------------------------------------- */
 
 #cookie-controls {
+  align-items: center;
   background-color: rgb(60, 64, 67); /* --google-grey-800 */
+  border-radius: 4px;
   box-sizing: border-box;
+  display: flex;
+  padding: 12px 20px;
+}
+
+#cookie-controls-description {
+  flex: 1;
+  padding-inline-end: 20px;
+}
+
+#cookie-controls-description em {
+  display: block;
+}
+
+#cookie-controls-toggle {
+  flex: none;
 }
 
 /** Layout ------------------------------------------------------------------ */
@@ -162,15 +179,6 @@
   padding-inline-start: 16px;
 }
 
-#cookie-controls {
-  margin-bottom: 1.5rem;
-  padding: 1.5rem;
-}
-
-#cookie-controls-description {
-  margin-top: 0.5rem;
-}
-
 /* Wide screens. */
 @media (min-width: 720px) {
   .icon,
@@ -183,7 +191,8 @@
   .icon,
   h1,
   #subtitle,
-  .bulletpoints {
+  .bulletpoints,
+  #cookie-controls {
     margin-bottom: 1.5rem;
   }
 
@@ -225,7 +234,8 @@
 
     .learn-more-button,
     .bulletpoints,
-    .icon {
+    .icon,
+    #cookie-controls {
       margin-bottom: 16px;
     }
   }
@@ -246,7 +256,8 @@
   }
 
   .bulletpoints,
-  .learn-more-button {
+  .learn-more-button,
+  #cookie-controls {
     margin-bottom: 1.5rem;
   }
 
@@ -264,7 +275,8 @@
     }
 
     .bulletpoints,
-    .learn-more-button {
+    .learn-more-button,
+    #cookie-controls {
       margin-bottom: 1rem;
     }
   }
diff --git a/chrome/browser/resources/ntp4/incognito_tab.html b/chrome/browser/resources/ntp4/incognito_tab.html
index 63fd80d..6e57d6e57 100644
--- a/chrome/browser/resources/ntp4/incognito_tab.html
+++ b/chrome/browser/resources/ntp4/incognito_tab.html
@@ -31,15 +31,11 @@
     <div class="bulletpoints">$i18nRaw{incognitoTabWarning}</div>
   </div>
   <div id="cookie-controls" $i18n{hiddenIfCookieControlsDisabled}>
-    <div>
-      <cr-toggle id="cookie-controls-toggle"></cr-toggle>
-    </div>
-    <div>
-      <em>$i18n{cookieControlsTitle}</em>
-    </div>
     <div id="cookie-controls-description">
+      <em>$i18n{cookieControlsTitle}</em>
       $i18n{cookieControlsDescription}
     </div>
+    <cr-toggle id="cookie-controls-toggle" dark></cr-toggle>
   </div>
   <a class="learn-more-button" href="$i18n{learnMoreLink}">$i18n{learnMore}</a>
 </div>
diff --git a/chrome/browser/resources/signin/sync_confirmation/sync_disabled_confirmation.html b/chrome/browser/resources/signin/sync_confirmation/sync_disabled_confirmation.html
index 74e0523..524cb04 100644
--- a/chrome/browser/resources/signin/sync_confirmation/sync_disabled_confirmation.html
+++ b/chrome/browser/resources/signin/sync_confirmation/sync_disabled_confirmation.html
@@ -8,7 +8,6 @@
         background-color: var(--md-background-color);
       }
     </style>
-    </custom-style>
     <link rel="import" href="chrome://resources/cr_elements/cr_button/cr_button.html">
     <link rel="import" href="chrome://resources/html/polymer.html">
     <link rel="import" href="chrome://resources/polymer/v1_0/paper-styles/color.html">
diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn
index 5afb23a0..8d5bdf42 100644
--- a/chrome/browser/safe_browsing/BUILD.gn
+++ b/chrome/browser/safe_browsing/BUILD.gn
@@ -256,18 +256,6 @@
         "//components/safe_browsing:buildflags",
         "//components/safe_browsing/android:safe_browsing_mobile",
       ]
-    } else if (safe_browsing_mode == 3) {
-      sources += [
-        "android/file_type_policies.cc",
-        "android/services_delegate_android.cc",
-        "android/services_delegate_android.h",
-        "telemetry/android/android_telemetry_service.cc",
-        "telemetry/android/android_telemetry_service.h",
-      ]
-      deps += [
-        "//chrome/android:jni_headers",
-        "//components/safe_browsing/db:db",
-      ]
     }
   }
 }
diff --git a/chrome/browser/safe_browsing/android/services_delegate_android.cc b/chrome/browser/safe_browsing/android/services_delegate_android.cc
index 38a54fc..d3df6e7b 100644
--- a/chrome/browser/safe_browsing/android/services_delegate_android.cc
+++ b/chrome/browser/safe_browsing/android/services_delegate_android.cc
@@ -7,12 +7,10 @@
 #include "base/logging.h"
 #include "base/memory/ptr_util.h"
 #include "chrome/browser/profiles/profile.h"
-#include "chrome/browser/safe_browsing/safe_browsing_service.h"
 #include "chrome/browser/safe_browsing/telemetry/android/android_telemetry_service.h"
 #include "chrome/browser/safe_browsing/telemetry/telemetry_service.h"
 #include "components/safe_browsing/android/remote_database_manager.h"
 #include "components/safe_browsing/buildflags.h"
-#include "components/safe_browsing/db/v4_local_database_manager.h"
 #include "content/public/browser/browser_context.h"
 #include "content/public/browser/browser_thread.h"
 #include "content/public/browser/download_manager.h"
@@ -55,24 +53,11 @@
 
 void ServicesDelegateAndroid::Initialize() {
   if (!database_manager_set_for_tests_) {
-#if BUILDFLAG(SAFE_BROWSING_DB_REMOTE)
     database_manager_ =
         base::WrapRefCounted(new RemoteSafeBrowsingDatabaseManager());
-#else
-    database_manager_ = V4LocalDatabaseManager::Create(
-        SafeBrowsingService::GetBaseFilename(),
-        base::BindRepeating(
-            &ServicesDelegateAndroid::GetEstimatedExtendedReportingLevel,
-            base::Unretained(this)));
-#endif
   }
 }
 
-ExtendedReportingLevel
-ServicesDelegateAndroid::GetEstimatedExtendedReportingLevel() const {
-  return safe_browsing_service_->estimated_extended_reporting_by_prefs();
-}
-
 void ServicesDelegateAndroid::SetDatabaseManagerForTest(
     SafeBrowsingDatabaseManager* database_manager) {
   database_manager_set_for_tests_ = true;
diff --git a/chrome/browser/safe_browsing/android/services_delegate_android.h b/chrome/browser/safe_browsing/android/services_delegate_android.h
index 59c2d55..4329374 100644
--- a/chrome/browser/safe_browsing/android/services_delegate_android.h
+++ b/chrome/browser/safe_browsing/android/services_delegate_android.h
@@ -60,14 +60,6 @@
 
   std::string GetSafetyNetId() const override;
 
-  // Reports the current extended reporting level. Note that this is an
-  // estimation and may not always be correct. It is possible that the
-  // estimation finds both Scout and legacy extended reporting to be enabled.
-  // This can happen, for instance, if one profile has Scout enabled and another
-  // has legacy extended reporting enabled. In such a case, this method reports
-  // LEGACY as the current level.
-  ExtendedReportingLevel GetEstimatedExtendedReportingLevel() const;
-
   // The telemetry service tied to the current profile.
   std::unique_ptr<AndroidTelemetryService> telemetry_service_;
 
diff --git a/chrome/browser/safe_browsing/chrome_password_protection_service.cc b/chrome/browser/safe_browsing/chrome_password_protection_service.cc
index c81ad14..d42dc762 100644
--- a/chrome/browser/safe_browsing/chrome_password_protection_service.cc
+++ b/chrome/browser/safe_browsing/chrome_password_protection_service.cc
@@ -1450,7 +1450,11 @@
 PasswordProtectionTrigger
 ChromePasswordProtectionService::GetPasswordProtectionWarningTriggerPref(
     ReusedPasswordAccountType password_type) const {
-  if (password_type.account_type() == ReusedPasswordAccountType::GMAIL)
+  if (password_type.account_type() == ReusedPasswordAccountType::GMAIL ||
+      (password_type.account_type() ==
+           ReusedPasswordAccountType::SAVED_PASSWORD &&
+       base::FeatureList::IsEnabled(
+           safe_browsing::kPasswordProtectionForSavedPasswords)))
     return PHISHING_REUSE;
 
   bool is_policy_managed = profile_->GetPrefs()->HasPrefPath(
diff --git a/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.cc b/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.cc
index 58ec6efb..2491583 100644
--- a/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.cc
+++ b/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.cc
@@ -24,9 +24,10 @@
 #include "base/threading/thread_task_runner_handle.h"
 #include "build/branding_buildflags.h"
 #include "build/build_config.h"
-#include "chrome/browser/chrome_notification_types.h"
+#include "chrome/browser/browser_process.h"
 #include "chrome/browser/metrics/chrome_metrics_service_accessor.h"
 #include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/profiles/profile_manager.h"
 #include "chrome/browser/safe_browsing/incident_reporting/environment_data_collection.h"
 #include "chrome/browser/safe_browsing/incident_reporting/extension_data_collection.h"
 #include "chrome/browser/safe_browsing/incident_reporting/incident.h"
@@ -42,7 +43,6 @@
 #include "components/safe_browsing/proto/csd.pb.h"
 #include "content/public/browser/browser_thread.h"
 #include "content/public/browser/download_item_utils.h"
-#include "content/public/browser/notification_service.h"
 #include "services/network/public/cpp/shared_url_loader_factory.h"
 #include "services/preferences/public/mojom/tracked_preference_validation_delegate.mojom.h"
 
@@ -156,11 +156,10 @@
   // The incidents data of which should be cleared.
   std::vector<std::unique_ptr<Incident>> incidents_to_clear;
 
-  // State storage for this profile; null until PROFILE_ADDED notification is
-  // received.
+  // State storage for this profile; null until OnProfileAdded is called.
   std::unique_ptr<StateStore> state_store;
 
-  // False until PROFILE_ADDED notification is received.
+  // False until OnProfileAdded is called.
   bool added;
 
  private:
@@ -321,27 +320,11 @@
 
 IncidentReportingService::IncidentReportingService(
     SafeBrowsingService* safe_browsing_service)
-    : url_loader_factory_(safe_browsing_service
-                              ? safe_browsing_service->GetURLLoaderFactory()
-                              : nullptr),
-      collect_environment_data_fn_(&CollectEnvironmentData),
-      environment_collection_task_runner_(GetBackgroundTaskRunner()),
-      environment_collection_pending_(),
-      collation_timeout_pending_(),
-      collation_timer_(FROM_HERE,
-                       base::TimeDelta::FromMilliseconds(kDefaultUploadDelayMs),
-                       this,
-                       &IncidentReportingService::OnCollationTimeout),
-      delayed_analysis_callbacks_(
+    : IncidentReportingService(
+          safe_browsing_service,
           base::TimeDelta::FromMilliseconds(kDefaultCallbackIntervalMs),
           GetBackgroundTaskRunner()) {
   DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
-  notification_registrar_.Add(this,
-                              chrome::NOTIFICATION_PROFILE_ADDED,
-                              content::NotificationService::AllSources());
-  notification_registrar_.Add(this,
-                              chrome::NOTIFICATION_PROFILE_DESTROYED,
-                              content::NotificationService::AllSources());
   DownloadProtectionService* download_protection_service =
       (safe_browsing_service
            ? safe_browsing_service->download_protection_service()
@@ -364,6 +347,9 @@
   CancelEnvironmentCollection();
   CancelDownloadCollection();
   CancelAllReportUploads();
+
+  if (g_browser_process->profile_manager())
+    g_browser_process->profile_manager()->RemoveObserver(this);
 }
 
 std::unique_ptr<IncidentReceiver>
@@ -406,21 +392,18 @@
     SafeBrowsingService* safe_browsing_service,
     base::TimeDelta delayed_task_interval,
     const scoped_refptr<base::TaskRunner>& delayed_task_runner)
-    : collect_environment_data_fn_(&CollectEnvironmentData),
+    : url_loader_factory_(safe_browsing_service
+                              ? safe_browsing_service->GetURLLoaderFactory()
+                              : nullptr),
+      collect_environment_data_fn_(&CollectEnvironmentData),
       environment_collection_task_runner_(GetBackgroundTaskRunner()),
-      environment_collection_pending_(),
-      collation_timeout_pending_(),
       collation_timer_(FROM_HERE,
                        base::TimeDelta::FromMilliseconds(kDefaultUploadDelayMs),
                        this,
                        &IncidentReportingService::OnCollationTimeout),
       delayed_analysis_callbacks_(delayed_task_interval, delayed_task_runner) {
-  notification_registrar_.Add(this,
-                              chrome::NOTIFICATION_PROFILE_ADDED,
-                              content::NotificationService::AllSources());
-  notification_registrar_.Add(this,
-                              chrome::NOTIFICATION_PROFILE_DESTROYED,
-                              content::NotificationService::AllSources());
+  if (g_browser_process->profile_manager())
+    g_browser_process->profile_manager()->AddObserver(this);
 }
 
 void IncidentReportingService::SetCollectEnvironmentHook(
@@ -441,6 +424,13 @@
 }
 
 void IncidentReportingService::OnProfileAdded(Profile* profile) {
+  // Handle the addition of a new profile to the ProfileManager. Create a new
+  // context for |profile| if one does not exist, drop any received incidents
+  // for the profile if the profile is not participating in safe browsing
+  // extended reporting, and initiate a new search for the most recent download
+  // if a report is being assembled and the most recent has not been found.
+  // Note that |profile| is assumed to outlive |this|.
+
   DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
 
   // Track the addition of all profiles even when no report is being assembled
@@ -449,7 +439,7 @@
   ProfileContext* context = GetOrCreateProfileContext(profile);
   DCHECK(!context->added);
   context->added = true;
-  context->state_store.reset(new StateStore(profile));
+  context->state_store = std::make_unique<StateStore>(profile);
   bool enabled_for_profile = IsEnabledForProfile(profile);
 
   // Drop all incidents associated with this profile that were received prior to
@@ -528,28 +518,6 @@
   return it != profiles_.end() ? it->second.get() : nullptr;
 }
 
-void IncidentReportingService::OnProfileDestroyed(Profile* profile) {
-  DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
-
-  auto it = profiles_.find(profile);
-  if (it == profiles_.end())
-    return;
-
-  // Take ownership of the context.
-  std::unique_ptr<ProfileContext> context = std::move(it->second);
-  it->second = nullptr;
-
-  // TODO(grt): Persist incidents for upload on future profile load.
-
-  // Remove the association with this profile context from all pending uploads.
-  for (const auto& upload : uploads_)
-    upload->profiles_to_state.erase(context.get());
-
-  // Forget about this profile. Incidents not yet sent for upload are lost.
-  // No new incidents will be accepted for it.
-  profiles_.erase(it);
-}
-
 Profile* IncidentReportingService::FindEligibleProfile() const {
   for (const auto& scan : profiles_) {
     // Skip over profiles that have yet to be added to the profile manager.
@@ -1010,26 +978,4 @@
   }
 }
 
-void IncidentReportingService::Observe(
-    int type,
-    const content::NotificationSource& source,
-    const content::NotificationDetails& details) {
-  switch (type) {
-    case chrome::NOTIFICATION_PROFILE_ADDED: {
-      Profile* profile = content::Source<Profile>(source).ptr();
-      if (!profile->IsOffTheRecord())
-        OnProfileAdded(profile);
-      break;
-    }
-    case chrome::NOTIFICATION_PROFILE_DESTROYED: {
-      Profile* profile = content::Source<Profile>(source).ptr();
-      if (!profile->IsOffTheRecord())
-        OnProfileDestroyed(profile);
-      break;
-    }
-    default:
-      break;
-  }
-}
-
 }  // namespace safe_browsing
diff --git a/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.h b/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.h
index 61ef48c1..0c170b3 100644
--- a/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.h
+++ b/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.h
@@ -18,6 +18,7 @@
 #include "base/memory/weak_ptr.h"
 #include "base/time/time.h"
 #include "base/timer/timer.h"
+#include "chrome/browser/profiles/profile_manager_observer.h"
 #include "chrome/browser/safe_browsing/download_protection/download_protection_service.h"
 #include "chrome/browser/safe_browsing/download_protection/download_protection_util.h"
 #include "chrome/browser/safe_browsing/incident_reporting/delayed_analysis_callback.h"
@@ -25,8 +26,6 @@
 #include "chrome/browser/safe_browsing/incident_reporting/download_metadata_manager.h"
 #include "chrome/browser/safe_browsing/incident_reporting/incident_report_uploader.h"
 #include "chrome/browser/safe_browsing/incident_reporting/last_download_finder.h"
-#include "content/public/browser/notification_observer.h"
-#include "content/public/browser/notification_registrar.h"
 
 class Profile;
 
@@ -36,8 +35,6 @@
 
 namespace content {
 class DownloadManager;
-class NotificationDetails;
-class NotificationSource;
 }
 
 namespace network {
@@ -77,7 +74,7 @@
 // the initial incident. Finally, already-reported incidents are pruned and any
 // remaining are uploaded in an incident report.
 // Lives on the UI thread.
-class IncidentReportingService : public content::NotificationObserver {
+class IncidentReportingService : public ProfileManagerObserver {
  public:
   explicit IncidentReportingService(SafeBrowsingService* safe_browsing_service);
 
@@ -107,6 +104,9 @@
   // storage.
   void AddDownloadManager(content::DownloadManager* download_manager);
 
+  // ProfileManagerObserver:
+  void OnProfileAdded(Profile* profile) override;
+
  protected:
   // A pointer to a function that populates a protobuf with environment data.
   typedef void (*CollectEnvironmentDataFn)(
@@ -131,14 +131,6 @@
   virtual void DoExtensionCollection(
       ClientIncidentReport_ExtensionData* extension_data);
 
-  // Handles the addition of a new profile to the ProfileManager. Creates a new
-  // context for |profile| if one does not exist, drops any received incidents
-  // for the profile if the profile is not participating in safe browsing
-  // extended reporting, and initiates a new search for the most recent download
-  // if a report is being assembled and the most recent has not been found.
-  // Overridden by unit tests to inject incidents prior to creation.
-  virtual void OnProfileAdded(Profile* profile);
-
   // Initiates a search for the most recent binary download. Overriden by unit
   // tests to provide a fake finder.
   virtual std::unique_ptr<LastDownloadFinder> CreateDownloadFinder(
@@ -163,10 +155,6 @@
   // Returns the context for |profile|, or NULL if it is unknown.
   ProfileContext* GetProfileContext(Profile* profile);
 
-  // Handles the destruction of a profile. Incidents reported for the profile
-  // but not yet uploaded are dropped.
-  void OnProfileDestroyed(Profile* profile);
-
   // Returns an initialized profile for which incident reporting is enabled.
   Profile* FindEligibleProfile() const;
 
@@ -264,11 +252,6 @@
   void OnClientDownloadRequest(download::DownloadItem* download,
                                const ClientDownloadRequest* request);
 
-  // content::NotificationObserver methods.
-  void Observe(int type,
-               const content::NotificationSource& source,
-               const content::NotificationDetails& details) override;
-
   // Accessor for an URLLoaderFactory with which reports will be sent.
   scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory_;
 
@@ -283,20 +266,17 @@
   // collection task at shutdown if it has not yet started.
   scoped_refptr<base::TaskRunner> environment_collection_task_runner_;
 
-  // Registrar for observing profile lifecycle notifications.
-  content::NotificationRegistrar notification_registrar_;
-
   // A subscription for ClientDownloadRequests, used to persist them for later
   // use.
   ClientDownloadRequestSubscription client_download_request_subscription_;
 
   // True when the asynchronous environment collection task has been fired off
   // but has not yet completed.
-  bool environment_collection_pending_;
+  bool environment_collection_pending_ = false;
 
   // True when an incident has been received and the service is waiting for the
   // collation_timer_ to fire.
-  bool collation_timeout_pending_;
+  bool collation_timeout_pending_ = false;
 
   // A timer upon the firing of which the service will report received
   // incidents.
diff --git a/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service_unittest.cc b/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service_unittest.cc
index c012dc5e8..bd3f715 100644
--- a/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service_unittest.cc
+++ b/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service_unittest.cc
@@ -156,7 +156,7 @@
   };
 
   // A type for specifying the action to be taken by the test fixture during
-  // profile initialization (before NOTIFICATION_PROFILE_ADDED is sent).
+  // profile initialization (before OnProfileAdded is called).
   enum OnProfileAdditionAction {
     ON_PROFILE_ADDITION_NO_ACTION,
     ON_PROFILE_ADDITION_ADD_INCIDENT,  // Add an incident to the service.
@@ -466,7 +466,7 @@
     ProfileProperties() : on_addition_action(ON_PROFILE_ADDITION_NO_ACTION) {}
 
     // The action taken by the test fixture during profile initialization
-    // (before NOTIFICATION_PROFILE_ADDED is sent).
+    // (before OnProfileAdded is called).
     OnProfileAdditionAction on_addition_action;
   };
 
diff --git a/chrome/browser/safe_browsing/ui_manager.cc b/chrome/browser/safe_browsing/ui_manager.cc
index bde0f37..47bfbc1 100644
--- a/chrome/browser/safe_browsing/ui_manager.cc
+++ b/chrome/browser/safe_browsing/ui_manager.cc
@@ -175,7 +175,7 @@
         SafeBrowsingBlockingPage::CreateBlockingPage(this, contents,
                                                      blocked_url, resource);
     SafeBrowsingSubresourceTabHelper::CreateForWebContents(contents);
-    contents->GetController().LoadErrorPage(
+    contents->GetController().LoadPostCommitErrorPage(
         contents->GetMainFrame(), blocked_url, blocking_page->GetHTMLContents(),
         net::ERR_BLOCKED_BY_CLIENT);
     delete blocking_page;
diff --git a/chrome/browser/search/ntp_features.cc b/chrome/browser/search/ntp_features.cc
index d25b449..0f7d2d5 100644
--- a/chrome/browser/search/ntp_features.cc
+++ b/chrome/browser/search/ntp_features.cc
@@ -29,11 +29,6 @@
 const base::Feature kNtpCustomizationMenuV2{"NtpCustomizationMenuV2",
                                             base::FEATURE_DISABLED_BY_DEFAULT};
 
-// If enabled, include a pre-populated Google search shortcut on the NTP during
-// first run.
-const base::Feature kFirstRunDefaultSearchShortcut{
-    "FirstRunDefaultSearchShortcut", base::FEATURE_DISABLED_BY_DEFAULT};
-
 // If enabled, the search box in the middle of the NTP will accept input
 // directly (i.e. not be a "fake" box) and search results will show directly
 // below the non-fake input ("realbox").
diff --git a/chrome/browser/search/ntp_features.h b/chrome/browser/search/ntp_features.h
index c028558..3df58955 100644
--- a/chrome/browser/search/ntp_features.h
+++ b/chrome/browser/search/ntp_features.h
@@ -17,8 +17,6 @@
 extern const base::Feature kGridLayoutForNtpShortcuts;
 extern const base::Feature kNtpCustomizationMenuV2;
 
-extern const base::Feature kFirstRunDefaultSearchShortcut;
-
 // Note: only exposed for about:flags. Use IsNtpRealboxEnabled() instead.
 extern const base::Feature kNtpRealbox;
 
diff --git a/chrome/browser/search_engines/template_url_service_unittest.cc b/chrome/browser/search_engines/template_url_service_unittest.cc
index 4d5116a..bbebe7b1 100644
--- a/chrome/browser/search_engines/template_url_service_unittest.cc
+++ b/chrome/browser/search_engines/template_url_service_unittest.cc
@@ -708,8 +708,8 @@
 
   // Make sure the mappings in the model were updated.
   ASSERT_EQ(t_url, model()->GetTemplateURLForKeyword(new_keyword));
-  ASSERT_TRUE(
-      model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword")) == NULL);
+  ASSERT_EQ(nullptr,
+            model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword")));
 
   std::unique_ptr<TemplateURL> cloned_url(
       std::make_unique<TemplateURL>(t_url->data()));
@@ -723,6 +723,83 @@
   AssertTimesEqual(now, read_url->last_modified());
 }
 
+TEST_F(TemplateURLServiceTest, CreateFromPlayAPI) {
+  test_util()->VerifyLoad();
+  const size_t initial_count = model()->GetTemplateURLs().size();
+
+  const base::string16 short_name = ASCIIToUTF16("google");
+  const base::string16 keyword = ASCIIToUTF16("keyword");
+  const std::string search_url = "http://www.google.com/foo/bar";
+  const std::string favicon_url = "http://favicon.url";
+  TemplateURL* t_url = model()->CreateOrUpdateTemplateURLFromPlayAPIData(
+      short_name, keyword, search_url, favicon_url);
+  ASSERT_EQ(short_name, t_url->short_name());
+  ASSERT_EQ(keyword, t_url->keyword());
+  ASSERT_EQ(search_url, t_url->url());
+  ASSERT_EQ(GURL(favicon_url), t_url->favicon_url());
+  ASSERT_TRUE(t_url->created_from_play_api());
+  ASSERT_EQ(t_url, model()->GetTemplateURLForKeyword(keyword));
+
+  auto cloned_url = std::make_unique<TemplateURL>(t_url->data());
+
+  // Reload the model from the database and make sure the change took.
+  test_util()->ResetModel(true);
+  EXPECT_EQ(initial_count + 1, model()->GetTemplateURLs().size());
+  const TemplateURL* read_url = model()->GetTemplateURLForKeyword(keyword);
+  ASSERT_TRUE(read_url);
+  AssertEquals(*cloned_url, *read_url);
+}
+
+TEST_F(TemplateURLServiceTest, UpdateFromPlayAPI) {
+  base::string16 keyword = ASCIIToUTF16("keyword");
+
+  // Add a new TemplateURL.
+  test_util()->VerifyLoad();
+  const size_t initial_count = model()->GetTemplateURLs().size();
+  TemplateURLData data;
+  data.SetShortName(ASCIIToUTF16("google"));
+  data.SetKeyword(keyword);
+  data.SetURL("http://www.google.com/foo/bar");
+  data.favicon_url = GURL("http://favicon.url");
+  data.date_created = Time::FromTimeT(100);
+  data.last_modified = Time::FromTimeT(100);
+  data.last_visited = Time::FromTimeT(100);
+  TemplateURL* t_url = model()->Add(std::make_unique<TemplateURL>(data));
+
+  VerifyObserverCount(1);
+  base::RunLoop().RunUntilIdle();
+
+  Time now = Time::Now();
+  auto clock = std::make_unique<base::SimpleTestClock>();
+  clock->SetNow(now);
+  model()->set_clock(std::move(clock));
+
+  // Reset the short name and url and make sure it takes.
+  const base::string16 new_short_name = ASCIIToUTF16("new_name");
+  const std::string new_search_url = "new_url";
+  const std::string new_favicon_url = "new_favicon_url";
+  TemplateURL* updated_turl = model()->CreateOrUpdateTemplateURLFromPlayAPIData(
+      new_short_name, keyword, new_search_url, new_favicon_url);
+  ASSERT_EQ(t_url, updated_turl);
+  ASSERT_EQ(new_short_name, t_url->short_name());
+  ASSERT_EQ(keyword, t_url->keyword());
+  ASSERT_EQ(new_search_url, t_url->url());
+  ASSERT_EQ(GURL(new_favicon_url), t_url->favicon_url());
+  ASSERT_TRUE(t_url->created_from_play_api());
+
+  // Make sure the mappings in the model were updated.
+  ASSERT_EQ(t_url, model()->GetTemplateURLForKeyword(keyword));
+
+  auto cloned_url = std::make_unique<TemplateURL>(t_url->data());
+
+  // Reload the model from the database and make sure the change took.
+  test_util()->ResetModel(true);
+  EXPECT_EQ(initial_count + 1, model()->GetTemplateURLs().size());
+  const TemplateURL* read_url = model()->GetTemplateURLForKeyword(keyword);
+  ASSERT_TRUE(read_url);
+  AssertEquals(*cloned_url, *read_url);
+}
+
 TEST_F(TemplateURLServiceTest, DefaultSearchProvider) {
   // Add a new TemplateURL.
   test_util()->VerifyLoad();
diff --git a/chrome/browser/sessions/session_restore_browsertest.cc b/chrome/browser/sessions/session_restore_browsertest.cc
index c692a75..d22da162 100644
--- a/chrome/browser/sessions/session_restore_browsertest.cc
+++ b/chrome/browser/sessions/session_restore_browsertest.cc
@@ -69,7 +69,9 @@
 #include "content/public/test/download_test_observer.h"
 #include "content/public/test/test_navigation_observer.h"
 #include "content/public/test/test_utils.h"
+#include "net/dns/mock_host_resolver.h"
 #include "net/test/embedded_test_server/embedded_test_server.h"
+#include "services/network/public/cpp/features.h"
 #include "ui/base/page_transition_types.h"
 #include "ui/base/ui_base_features.h"
 #include "ui/gfx/color_palette.h"
@@ -1860,3 +1862,104 @@
   EXPECT_EQ(url2_, tab_strip_model->GetWebContentsAt(1)->GetURL());
   EXPECT_EQ(url3_, tab_strip_model->GetWebContentsAt(2)->GetURL());
 }
+
+class SecFetchSiteSessionRestoreTest : public SessionRestoreTest {
+ public:
+  SecFetchSiteSessionRestoreTest()
+      : https_test_server_(net::EmbeddedTestServer::TYPE_HTTPS) {}
+
+  void SetUpOnMainThread() override {
+    SessionRestoreTest::SetUpOnMainThread();
+
+    host_resolver()->AddRule("*", "127.0.0.1");
+
+    https_test_server_.AddDefaultHandlers(GetChromeTestDataDir());
+    https_test_server_.SetSSLConfig(net::EmbeddedTestServer::CERT_OK);
+    ASSERT_TRUE(https_test_server_.Start());
+    ASSERT_TRUE(embedded_test_server()->Start());
+
+    feature_list_.InitWithFeatures(
+        {network::features::kFetchMetadata,
+         network::features::kFetchMetadataDestination},
+        {});
+  }
+
+  content::WebContents* GetTab(Browser* browser, int tab_index) {
+    DCHECK_LT(tab_index, browser->tab_strip_model()->count());
+    return browser->tab_strip_model()->GetWebContentsAt(tab_index);
+  }
+
+  std::string GetContent(Browser* browser, int tab_index) {
+    return EvalJs(GetTab(browser, tab_index), "document.body.innerText")
+        .ExtractString();
+  }
+
+  GURL GetSecFetchUrl() {
+    return GetSameOriginUrl("/echoheader?sec-fetch-site");
+  }
+
+  GURL GetSameOriginUrl(const std::string& path_and_query) {
+    return https_test_server_.GetURL(path_and_query);
+  }
+
+  GURL GetCrossSiteUrl(const std::string& path_and_query) {
+    return embedded_test_server()->GetURL("another.origin.example.com",
+                                          path_and_query);
+  }
+
+ private:
+  net::EmbeddedTestServer https_test_server_;
+  base::test::ScopedFeatureList feature_list_;
+
+  DISALLOW_COPY_AND_ASSIGN(SecFetchSiteSessionRestoreTest);
+};
+
+// Test that Sec-Fetch-Site http request header is correctly replayed during
+// session restore.  This is a regression test for https://crbug.com/976055.
+IN_PROC_BROWSER_TEST_F(SecFetchSiteSessionRestoreTest, Test) {
+  // Tab #1: Same-origin navigation.
+  ui_test_utils::NavigateToURL(browser(), GetSameOriginUrl("/title1.html"));
+  {
+    content::WebContents* tab1 = GetTab(browser(), 0);
+    content::TestNavigationObserver nav_observer(tab1);
+    ASSERT_TRUE(content::ExecJs(
+        tab1, content::JsReplace("location = $1", GetSecFetchUrl())));
+    nav_observer.Wait();
+  }
+
+  // Tab #2: Cross-site navigation.
+  ui_test_utils::NavigateToURLWithDisposition(
+      browser(), GetCrossSiteUrl("/title1.html"),
+      WindowOpenDisposition::NEW_FOREGROUND_TAB,
+      ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
+  {
+    content::WebContents* tab2 = GetTab(browser(), 1);
+    content::TestNavigationObserver nav_observer(tab2);
+    ASSERT_TRUE(content::ExecJs(
+        tab2, content::JsReplace("location = $1", GetSecFetchUrl())));
+    nav_observer.Wait();
+  }
+
+  // Tab #3: Omnibox navigation.
+  ui_test_utils::NavigateToURLWithDisposition(
+      browser(), GetSecFetchUrl(), WindowOpenDisposition::NEW_FOREGROUND_TAB,
+      ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
+
+  // Verify that all the tabs have seen the expected Sec-Fetch-Site header.
+  ASSERT_EQ(3, browser()->tab_strip_model()->count());
+  EXPECT_EQ("same-origin", GetContent(browser(), 0));
+  EXPECT_EQ("cross-site", GetContent(browser(), 1));
+  EXPECT_EQ("none", GetContent(browser(), 2));
+
+  // Kill the original browser then open a new one to trigger a restore.
+  Browser* new_browser = QuitBrowserAndRestore(browser(), 1);
+  ASSERT_EQ(1u, active_browser_list_->size());
+
+  // Verify again (after session restore) that all the tabs have seen the
+  // expected Sec-Fetch-Site header.  This is the main verification for
+  // https://crbug.com/976055.
+  ASSERT_EQ(3, new_browser->tab_strip_model()->count());
+  EXPECT_EQ("same-origin", GetContent(new_browser, 0));
+  EXPECT_EQ("cross-site", GetContent(new_browser, 1));
+  EXPECT_EQ("none", GetContent(new_browser, 2));
+}
diff --git a/chrome/browser/ssl/ssl_browsertest.cc b/chrome/browser/ssl/ssl_browsertest.cc
index 52a31349..6f68a82 100644
--- a/chrome/browser/ssl/ssl_browsertest.cc
+++ b/chrome/browser/ssl/ssl_browsertest.cc
@@ -197,18 +197,11 @@
 #include "components/session_manager/core/session_manager.h"
 #endif  // defined(OS_CHROMEOS)
 
-using namespace ssl_test_util;
-
-using base::ASCIIToUTF16;
-using chrome_browser_interstitials::SecurityInterstitialIDNTest;
-using content::InterstitialPage;
 using content::InterstitialPageDelegate;
-using content::NavigationController;
-using content::NavigationEntry;
-using content::SSLStatus;
 using content::WebContents;
-using security_interstitials::SecurityInterstitialControllerClient;
-using web_modal::WebContentsModalDialogManager;
+using ssl_test_util::CheckSecurityState;
+namespace AuthState = ssl_test_util::AuthState;
+namespace CertError = ssl_test_util::CertError;
 
 namespace {
 
@@ -241,7 +234,7 @@
 // for the given web contents.
 class SSLInterstitialTimerObserver {
  public:
-  explicit SSLInterstitialTimerObserver(content::WebContents* web_contents)
+  explicit SSLInterstitialTimerObserver(WebContents* web_contents)
       : web_contents_(web_contents), message_loop_runner_(new base::RunLoop) {
     callback_ = base::Bind(&SSLInterstitialTimerObserver::OnTimerStarted,
                            base::Unretained(this));
@@ -259,14 +252,14 @@
   bool timer_started() const { return timer_started_; }
 
  private:
-  void OnTimerStarted(content::WebContents* web_contents) {
+  void OnTimerStarted(WebContents* web_contents) {
     timer_started_ = true;
     if (web_contents_ == web_contents)
       message_loop_runner_->Quit();
   }
 
   bool timer_started_ = false;
-  const content::WebContents* web_contents_;
+  const WebContents* web_contents_;
   SSLErrorHandler::TimerStartedCallback callback_;
 
   std::unique_ptr<base::RunLoop> message_loop_runner_;
@@ -364,7 +357,7 @@
   run_loop.Run();
 }
 
-bool IsShowingInterstitial(content::WebContents* tab) {
+bool IsShowingInterstitial(WebContents* tab) {
   security_interstitials::SecurityInterstitialTabHelper* helper =
       security_interstitials::SecurityInterstitialTabHelper::FromWebContents(
           tab);
@@ -379,12 +372,12 @@
 //
 // TODO(crbug.com/752372): This should not be needed for committed
 // interstitials. Replace all call sites directly with the assert.
-void WaitForInterstitial(content::WebContents* tab) {
+void WaitForInterstitial(WebContents* tab) {
   ASSERT_TRUE(IsShowingInterstitial(tab));
   ASSERT_TRUE(WaitForRenderFrameReady(tab->GetMainFrame()));
 }
 
-void ExpectInterstitialElementHidden(content::WebContents* tab,
+void ExpectInterstitialElementHidden(WebContents* tab,
                                      const std::string& element_id,
                                      bool expect_hidden) {
   content::RenderFrameHost* frame = tab->GetMainFrame();
@@ -402,7 +395,7 @@
             result);
 }
 
-void ExpectInterstitialHeading(content::WebContents* tab,
+void ExpectInterstitialHeading(WebContents* tab,
                                const std::string& expected_heading) {
   content::RenderFrameHost* frame = tab->GetMainFrame();
   EXPECT_TRUE(chrome_browser_interstitials::IsInterstitialDisplayingText(
@@ -417,19 +410,19 @@
 // to simply look for the word "security" because that likely shows up on lots
 // of different types of interstitials, not just the type being tested for.
 
-void ExpectCaptivePortalInterstitial(content::WebContents* tab) {
+void ExpectCaptivePortalInterstitial(WebContents* tab) {
   ExpectInterstitialHeading(tab, "Connect to");
 }
 
-void ExpectSSLInterstitial(content::WebContents* tab) {
+void ExpectSSLInterstitial(WebContents* tab) {
   ExpectInterstitialHeading(tab, "Your connection is not private");
 }
 
-void ExpectMITMInterstitial(content::WebContents* tab) {
+void ExpectMITMInterstitial(WebContents* tab) {
   ExpectInterstitialHeading(tab, "An application is stopping");
 }
 
-void ExpectBadClockInterstitial(content::WebContents* tab) {
+void ExpectBadClockInterstitial(WebContents* tab) {
   ExpectInterstitialHeading(tab, "Your clock is");
 }
 
@@ -1188,8 +1181,8 @@
 // navigation completes after calling WaitForSameDocumentNavigation.
 class SameDocumentNavigationObserver : public content::WebContentsObserver {
  public:
-  explicit SameDocumentNavigationObserver(content::WebContents* web_contents)
-      : content::WebContentsObserver(web_contents) {}
+  explicit SameDocumentNavigationObserver(WebContents* web_contents)
+      : WebContentsObserver(web_contents) {}
   ~SameDocumentNavigationObserver() override {}
 
   void WaitForSameDocumentNavigation() { run_loop_.Run(); }
@@ -1215,12 +1208,11 @@
   ASSERT_TRUE(https_server_.Start());
 
   // Navigate to a URL and dynamically load mixed content.
-  content::WebContents* tab =
-      browser()->tab_strip_model()->GetActiveWebContents();
+  WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
   ui_test_utils::NavigateToURL(browser(),
                                https_server_.GetURL("/ssl/google.html"));
   CheckAuthenticatedState(tab, AuthState::NONE);
-  SecurityStateWebContentsObserver observer(tab);
+  ssl_test_util::SecurityStateWebContentsObserver observer(tab);
   ASSERT_TRUE(content::ExecuteScript(tab,
                                      "var i = document.createElement('img');"
                                      "i.src = 'http://example.test';"
@@ -1246,12 +1238,11 @@
   ASSERT_TRUE(https_server_.Start());
 
   // Navigate to a URL and dynamically load mixed content.
-  content::WebContents* tab =
-      browser()->tab_strip_model()->GetActiveWebContents();
+  WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
   ui_test_utils::NavigateToURL(browser(),
                                https_server_.GetURL("/ssl/google.html"));
   CheckAuthenticatedState(tab, AuthState::NONE);
-  SecurityStateWebContentsObserver security_state_observer(tab);
+  ssl_test_util::SecurityStateWebContentsObserver security_state_observer(tab);
   ASSERT_TRUE(content::ExecuteScript(tab,
                                      "var i = document.createElement('img');"
                                      "i.src = 'http://example.test';"
@@ -1289,7 +1280,7 @@
                                  AuthState::SHOWING_INTERSTITIAL);
   ProceedThroughInterstitial(tab);
 
-  NavigationEntry* entry = tab->GetController().GetVisibleEntry();
+  content::NavigationEntry* entry = tab->GetController().GetVisibleEntry();
   ASSERT_TRUE(entry);
   EXPECT_TRUE(entry->GetSSL().content_status &
               content::SSLStatus::DISPLAYED_CONTENT_WITH_CERT_ERRORS);
@@ -1631,7 +1622,7 @@
 
   content::WindowedNotificationObserver observer(
       content::NOTIFICATION_LOAD_STOP,
-      content::Source<NavigationController>(&tab->GetController()));
+      content::Source<content::NavigationController>(&tab->GetController()));
   SendInterstitialCommand(tab, security_interstitials::CMD_DONT_PROCEED);
   observer.Wait();
 
@@ -1948,8 +1939,8 @@
 
   // Setup page title observer.
   WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
-  content::TitleWatcher watcher(tab, ASCIIToUTF16("PASS"));
-  watcher.AlsoWaitForTitle(ASCIIToUTF16("FAIL"));
+  content::TitleWatcher watcher(tab, base::ASCIIToUTF16("PASS"));
+  watcher.AlsoWaitForTitle(base::ASCIIToUTF16("FAIL"));
 
   // Create GURLs to test pages.
   std::string master_url_path = base::StringPrintf(
@@ -1995,8 +1986,8 @@
 
   // Setup page title observer.
   WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
-  content::TitleWatcher watcher(tab, ASCIIToUTF16("PASS"));
-  watcher.AlsoWaitForTitle(ASCIIToUTF16("FAIL"));
+  content::TitleWatcher watcher(tab, base::ASCIIToUTF16("PASS"));
+  watcher.AlsoWaitForTitle(base::ASCIIToUTF16("FAIL"));
 
   // Visit bad HTTPS page.
   GURL::Replacements replacements;
@@ -2026,8 +2017,7 @@
       {{security_state::features::kMarkHttpAsFeatureParameterName,
         security_state::features::kMarkHttpAsParameterDangerous}});
 
-  content::WebContents* contents =
-      browser()->tab_strip_model()->GetActiveWebContents();
+  WebContents* contents = browser()->tab_strip_model()->GetActiveWebContents();
   ASSERT_TRUE(contents);
 
   SecurityStateTabHelper* helper =
@@ -2047,8 +2037,7 @@
       {{security_state::features::kMarkHttpAsFeatureParameterName,
         security_state::features::kMarkHttpAsParameterDangerous}});
 
-  content::WebContents* contents =
-      browser()->tab_strip_model()->GetActiveWebContents();
+  WebContents* contents = browser()->tab_strip_model()->GetActiveWebContents();
   ASSERT_TRUE(contents);
 
   SecurityStateTabHelper* helper =
@@ -2061,8 +2050,7 @@
 
 // Data URLs should always be marked as non-secure.
 IN_PROC_BROWSER_TEST_F(SSLUITest, MarkDataAsNonSecure) {
-  content::WebContents* contents =
-      browser()->tab_strip_model()->GetActiveWebContents();
+  WebContents* contents = browser()->tab_strip_model()->GetActiveWebContents();
   ASSERT_TRUE(contents);
 
   SecurityStateTabHelper* helper =
@@ -2106,8 +2094,7 @@
       {{security_state::features::kMarkHttpAsFeatureParameterName,
         security_state::features::kMarkHttpAsParameterDangerous}});
 
-  content::WebContents* contents =
-      browser()->tab_strip_model()->GetActiveWebContents();
+  WebContents* contents = browser()->tab_strip_model()->GetActiveWebContents();
   ASSERT_TRUE(contents);
 
   SecurityStateTabHelper* helper =
@@ -2182,8 +2169,8 @@
 
   // Setup page title observer.
   WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
-  content::TitleWatcher watcher(tab, ASCIIToUTF16("PASS"));
-  watcher.AlsoWaitForTitle(ASCIIToUTF16("FAIL"));
+  content::TitleWatcher watcher(tab, base::ASCIIToUTF16("PASS"));
+  watcher.AlsoWaitForTitle(base::ASCIIToUTF16("FAIL"));
 
   // Add an entry into AutoSelectCertificateForUrls policy for automatic client
   // cert selection.
@@ -3286,7 +3273,7 @@
   {
     content::WindowedNotificationObserver observer(
         content::NOTIFICATION_LOAD_STOP,
-        content::Source<NavigationController>(&tab->GetController()));
+        content::Source<content::NavigationController>(&tab->GetController()));
     EXPECT_TRUE(content::ExecuteScriptAndExtractBool(
         tab, "window.domAutomationController.send(clickLink('goodHTTPSLink'));",
         &success));
@@ -3301,7 +3288,7 @@
   {
     content::WindowedNotificationObserver observer(
         content::NOTIFICATION_LOAD_STOP,
-        content::Source<NavigationController>(&tab->GetController()));
+        content::Source<content::NavigationController>(&tab->GetController()));
     EXPECT_TRUE(content::ExecuteScriptAndExtractBool(
         tab, "window.domAutomationController.send(clickLink('badHTTPSLink'));",
         &success));
@@ -3327,7 +3314,7 @@
   {
     content::WindowedNotificationObserver observer(
         content::NOTIFICATION_LOAD_STOP,
-        content::Source<NavigationController>(&tab->GetController()));
+        content::Source<content::NavigationController>(&tab->GetController()));
     tab->GetController().GoBack();
     observer.Wait();
   }
@@ -3337,7 +3324,7 @@
   {
     content::WindowedNotificationObserver observer(
         content::NOTIFICATION_LOAD_STOP,
-        content::Source<NavigationController>(&tab->GetController()));
+        content::Source<content::NavigationController>(&tab->GetController()));
     EXPECT_TRUE(content::ExecuteScriptAndExtractBool(
         tab, "window.domAutomationController.send(clickLink('HTTPLink'));",
         &success));
@@ -3356,7 +3343,7 @@
   {
     content::WindowedNotificationObserver observer(
         content::NOTIFICATION_LOAD_STOP,
-        content::Source<NavigationController>(&tab->GetController()));
+        content::Source<content::NavigationController>(&tab->GetController()));
     tab->GetController().GoBack();
     observer.Wait();
   }
@@ -3389,7 +3376,7 @@
   bool success = false;
   content::WindowedNotificationObserver observer(
       content::NOTIFICATION_LOAD_STOP,
-      content::Source<NavigationController>(&tab->GetController()));
+      content::Source<content::NavigationController>(&tab->GetController()));
   EXPECT_TRUE(content::ExecuteScriptAndExtractBool(
       tab, "window.domAutomationController.send(clickLink('goodHTTPSLink'));",
       &success));
@@ -3421,7 +3408,7 @@
     bool success = false;
     content::WindowedNotificationObserver observer(
         content::NOTIFICATION_LOAD_STOP,
-        content::Source<NavigationController>(&tab->GetController()));
+        content::Source<content::NavigationController>(&tab->GetController()));
     EXPECT_TRUE(content::ExecuteScriptAndExtractBool(
         tab, "window.domAutomationController.send(clickLink('goodHTTPSLink'));",
         &success));
@@ -3437,7 +3424,7 @@
     bool success = false;
     content::WindowedNotificationObserver observer(
         content::NOTIFICATION_LOAD_STOP,
-        content::Source<NavigationController>(&tab->GetController()));
+        content::Source<content::NavigationController>(&tab->GetController()));
     EXPECT_TRUE(content::ExecuteScriptAndExtractBool(
         tab, "window.domAutomationController.send(clickLink('badHTTPSLink'));",
         &success));
@@ -4117,8 +4104,8 @@
 
   // Setup page title observer.
   WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
-  content::TitleWatcher watcher(tab, ASCIIToUTF16("PASS"));
-  watcher.AlsoWaitForTitle(ASCIIToUTF16("FAIL"));
+  content::TitleWatcher watcher(tab, base::ASCIIToUTF16("PASS"));
+  watcher.AlsoWaitForTitle(base::ASCIIToUTF16("FAIL"));
 
   // Visit bad HTTPS page.
   GURL::Replacements replacements;
@@ -4144,8 +4131,8 @@
 
   // Setup page title observer.
   WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
-  content::TitleWatcher watcher(tab, ASCIIToUTF16("PASS"));
-  watcher.AlsoWaitForTitle(ASCIIToUTF16("FAIL"));
+  content::TitleWatcher watcher(tab, base::ASCIIToUTF16("PASS"));
+  watcher.AlsoWaitForTitle(base::ASCIIToUTF16("FAIL"));
 
   // Visit bad HTTPS page.
   GURL::Replacements replacements;
@@ -4229,7 +4216,7 @@
 
   content::WindowedNotificationObserver observer(
       content::NOTIFICATION_LOAD_STOP,
-      content::Source<NavigationController>(&tab->GetController()));
+      content::Source<content::NavigationController>(&tab->GetController()));
   const std::string javascript =
       "window.certificateErrorPageController.proceed();";
   EXPECT_TRUE(content::ExecuteScript(tab, javascript));
@@ -4255,7 +4242,7 @@
   ASSERT_NO_FATAL_FAILURE(ExpectSSLInterstitial(tab));
   content::WindowedNotificationObserver observer(
       content::NOTIFICATION_LOAD_STOP,
-      content::Source<NavigationController>(&tab->GetController()));
+      content::Source<content::NavigationController>(&tab->GetController()));
   const std::string javascript =
       "window.certificateErrorPageController.dontProceed();";
   EXPECT_TRUE(content::ExecuteScript(tab, javascript));
@@ -5335,11 +5322,12 @@
   EXPECT_FALSE(contents->IsLoading());
 }
 
-class SSLBlockingPageIDNTest : public SecurityInterstitialIDNTest {
+class SSLBlockingPageIDNTest
+    : public chrome_browser_interstitials::SecurityInterstitialIDNTest {
  protected:
-  // SecurityInterstitialIDNTest implementation
+  // chrome_browser_interstitials::SecurityInterstitialIDNTest:
   security_interstitials::SecurityInterstitialPage* CreateInterstitial(
-      content::WebContents* contents,
+      WebContents* contents,
       const GURL& request_url) const override {
     net::SSLInfo ssl_info;
     ssl_info.cert =
@@ -5387,8 +5375,9 @@
   WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
   CheckAuthenticatedState(tab, AuthState::NONE);
 
-  NavigationEntry* entry = tab->GetController().GetLastCommittedEntry();
-  std::unique_ptr<NavigationEntry> restored_entry =
+  content::NavigationEntry* entry =
+      tab->GetController().GetLastCommittedEntry();
+  std::unique_ptr<content::NavigationEntry> restored_entry =
       content::NavigationController::CreateNavigationEntry(
           url, content::Referrer(), base::nullopt, ui::PAGE_TRANSITION_RELOAD,
           false, std::string(), tab->GetBrowserContext(),
@@ -5401,7 +5390,7 @@
   tab->GetDelegate()->AddNewContents(nullptr, std::move(tab2),
                                      WindowOpenDisposition::NEW_FOREGROUND_TAB,
                                      gfx::Rect(), false, nullptr);
-  std::vector<std::unique_ptr<NavigationEntry>> entries;
+  std::vector<std::unique_ptr<content::NavigationEntry>> entries;
   entries.push_back(std::move(restored_entry));
   content::TestNavigationObserver observer(raw_tab2);
   raw_tab2->GetController().Restore(
@@ -5546,7 +5535,7 @@
   // We also manually check the cert on the NavigationEntry, since in the case
   // of http URLs GetSecurityLevelForRequest will return SecurityLevel::NONE for
   // http URLs.
-  NavigationEntry* entry = tab->GetController().GetVisibleEntry();
+  content::NavigationEntry* entry = tab->GetController().GetVisibleEntry();
   ASSERT_FALSE(!!entry->GetSSL().certificate);
 }
 
@@ -5737,8 +5726,7 @@
 
   ui_test_utils::NavigateToURL(browser(),
                                https_server_.GetURL("/ssl/google.html"));
-  content::WebContents* tab =
-      browser()->tab_strip_model()->GetActiveWebContents();
+  WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
   CheckAuthenticatedState(tab, AuthState::NONE);
 
   content::TestNavigationObserver observer(tab);
@@ -6221,7 +6209,7 @@
   CheckSecurityState(tab, net::CERT_STATUS_DATE_INVALID,
                      security_state::DANGEROUS, AuthState::SHOWING_ERROR);
 
-  NavigationEntry* entry = tab->GetController().GetVisibleEntry();
+  content::NavigationEntry* entry = tab->GetController().GetVisibleEntry();
   EXPECT_EQ(content::PAGE_TYPE_ERROR, entry->GetPageType());
 }
 
diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc
index 35c1fb73..96d7e36 100644
--- a/chrome/browser/themes/theme_service.cc
+++ b/chrome/browser/themes/theme_service.cc
@@ -63,10 +63,6 @@
 #include "extensions/browser/extension_registry_observer.h"
 #endif
 
-using base::UserMetricsAction;
-using content::BrowserThread;
-using extensions::Extension;
-using ui::ResourceBundle;
 using TP = ThemeProperties;
 
 // Helpers --------------------------------------------------------------------
@@ -411,14 +407,14 @@
   }
 }
 
-void ThemeService::SetTheme(const Extension* extension) {
+void ThemeService::SetTheme(const extensions::Extension* extension) {
   DoSetTheme(extension, true);
 }
 
 void ThemeService::RevertToExtensionTheme(const std::string& extension_id) {
-  const Extension* extension = extensions::ExtensionRegistry::Get(profile_)
-                                   ->disabled_extensions()
-                                   .GetByID(extension_id);
+  const auto* extension = extensions::ExtensionRegistry::Get(profile_)
+                              ->disabled_extensions()
+                              .GetByID(extension_id);
   if (extension && extension->is_theme()) {
     extensions::ExtensionService* service =
         extensions::ExtensionSystem::Get(profile_)->extension_service();
@@ -432,7 +428,7 @@
 
 void ThemeService::UseDefaultTheme() {
   if (ready_)
-    base::RecordAction(UserMetricsAction("Themes_Reset"));
+    base::RecordAction(base::UserMetricsAction("Themes_Reset"));
 
   ui::NativeTheme* native_theme = ui::NativeTheme::GetInstanceForNativeUi();
   if (native_theme && native_theme->UsesHighContrastColors()) {
@@ -728,7 +724,7 @@
   }
 
   if (loaded_pack) {
-    base::RecordAction(UserMetricsAction("Themes.Loaded"));
+    base::RecordAction(base::UserMetricsAction("Themes.Loaded"));
     set_ready();
   }
   // Else: wait for the extension service to be ready so that the theme pack
@@ -799,7 +795,7 @@
   return SkColorSetA(separator_color, result.alpha);
 }
 
-void ThemeService::DoSetTheme(const Extension* extension,
+void ThemeService::DoSetTheme(const extensions::Extension* extension,
                               bool suppress_infobar) {
   DCHECK(extension->is_theme());
   DCHECK(extensions::ExtensionSystem::Get(profile_)
@@ -932,7 +928,7 @@
 void ThemeService::MigrateTheme() {
   extensions::ExtensionRegistry* registry =
       extensions::ExtensionRegistry::Get(profile_);
-  const Extension* extension =
+  const extensions::Extension* extension =
       registry ? registry->GetExtensionById(
                      GetThemeID(), extensions::ExtensionRegistry::ENABLED)
                : nullptr;
@@ -945,11 +941,11 @@
         new BrowserThemePack(CustomThemeSupplier::ThemeType::EXTENSION));
     BrowserThemePack::BuildFromExtension(extension, pack.get());
     OnThemeBuiltFromExtension(extension->id(), pack.get(), true);
-    base::RecordAction(UserMetricsAction("Themes.Migrated"));
+    base::RecordAction(base::UserMetricsAction("Themes.Migrated"));
   } else {
     DLOG(ERROR) << "Theme is mysteriously gone.";
     ClearAllThemeData();
-    base::RecordAction(UserMetricsAction("Themes.Gone"));
+    base::RecordAction(base::UserMetricsAction("Themes.Gone"));
   }
 }
 
@@ -962,7 +958,7 @@
     theme_supplier_->StartUsingTheme();
 }
 
-void ThemeService::BuildFromExtension(const Extension* extension,
+void ThemeService::BuildFromExtension(const extensions::Extension* extension,
                                       bool suppress_infobar) {
   build_extension_task_tracker_.TryCancelAll();
   building_extension_id_ = extension->id();
@@ -995,9 +991,9 @@
       extensions::ExtensionSystem::Get(profile_)->extension_service();
   if (!service)
     return;
-  const Extension* extension = extensions::ExtensionRegistry::Get(profile_)
-                                   ->enabled_extensions()
-                                   .GetByID(extension_id);
+  const auto* extension = extensions::ExtensionRegistry::Get(profile_)
+                              ->enabled_extensions()
+                              .GetByID(extension_id);
   if (!extension)
     return;
 
@@ -1022,7 +1018,7 @@
     return;
   }
 
-  base::RecordAction(UserMetricsAction("Themes_Installed"));
+  base::RecordAction(base::UserMetricsAction("Themes_Installed"));
 
   bool can_revert_theme = true;
   if (previous_theme_id.has_value())
@@ -1053,7 +1049,8 @@
   profile_->GetPrefs()->SetString(prefs::kCurrentThemeID, kDefaultThemeID);
 }
 
-void ThemeService::SetThemePrefsForExtension(const Extension* extension) {
+void ThemeService::SetThemePrefsForExtension(
+    const extensions::Extension* extension) {
   ClearThemePrefs();
 
   profile_->GetPrefs()->SetString(prefs::kCurrentThemeID, extension->id());
@@ -1096,8 +1093,6 @@
     int id,
     bool incognito,
     bool* has_custom_color) const {
-  using namespace color_utils;
-
   // |custom| will be set to true if any part of the computation of the
   // color relied on a custom base color from the theme supplier.
   struct OmniboxColor {
@@ -1119,14 +1114,15 @@
   // Some utilities from color_utils are reimplemented here to plumb the custom
   // bit through.
   auto get_color_with_max_contrast = [](OmniboxColor color) -> OmniboxColor {
-    return {GetColorWithMaxContrast(color.value), color.custom};
+    return {color_utils::GetColorWithMaxContrast(color.value), color.custom};
   };
   auto derive_default_icon_color = [](OmniboxColor color) -> OmniboxColor {
-    return {DeriveDefaultIconColor(color.value), color.custom};
+    return {color_utils::DeriveDefaultIconColor(color.value), color.custom};
   };
   auto blend_toward_max_contrast = [](OmniboxColor color,
                                       SkAlpha alpha) -> OmniboxColor {
-    return {BlendTowardMaxContrast(color.value, alpha), color.custom};
+    return {color_utils::BlendTowardMaxContrast(color.value, alpha),
+            color.custom};
   };
   auto blend_for_min_contrast = [&](OmniboxColor fg, OmniboxColor bg,
                                     base::Optional<OmniboxColor> hc_fg =
@@ -1139,15 +1135,15 @@
       hc_fg_arg = hc_fg.value().value;
       custom |= hc_fg.value().custom;
     }
-    return {BlendForMinContrast(
-                fg.value, bg.value, hc_fg_arg,
-                contrast_ratio.value_or(
-                    high_contrast ? 6.0f : kMinimumReadableContrastRatio))
-                .color,
-            custom};
+    const float ratio = contrast_ratio.value_or(
+        high_contrast ? 6.0f : color_utils::kMinimumReadableContrastRatio);
+    return {
+        color_utils::BlendForMinContrast(fg.value, bg.value, hc_fg_arg, ratio)
+            .color,
+        custom};
   };
   auto get_resulting_paint_color = [&](OmniboxColor fg, OmniboxColor bg) {
-    return OmniboxColor{GetResultingPaintColor(fg.value, bg.value),
+    return OmniboxColor{color_utils::GetResultingPaintColor(fg.value, bg.value),
                         fg.custom || bg.custom};
   };
 
@@ -1172,13 +1168,13 @@
     auto invert_color = [&](OmniboxColor fg) -> OmniboxColor {
       const auto bg = get_color_with_max_contrast(fg);
       const auto inverted_bg = get_color_with_max_contrast(bg);
-      const float contrast = GetContrastRatio(fg.value, bg.value);
+      const float contrast = color_utils::GetContrastRatio(fg.value, bg.value);
       return blend_for_min_contrast(fg, inverted_bg, base::nullopt, contrast);
     };
     fg = invert_color(fg);
     bg = invert_color(bg);
   }
-  const bool dark = IsDark(bg.value);
+  const bool dark = color_utils::IsDark(bg.value);
 
   auto results_bg_color = [&]() { return get_color_with_max_contrast(fg); };
   auto bg_hovered_color = [&]() { return blend_toward_max_contrast(bg, 0x0A); };
diff --git a/chrome/browser/touch_to_fill/android/BUILD.gn b/chrome/browser/touch_to_fill/android/BUILD.gn
index d225aec..30e485b 100644
--- a/chrome/browser/touch_to_fill/android/BUILD.gn
+++ b/chrome/browser/touch_to_fill/android/BUILD.gn
@@ -60,7 +60,10 @@
 android_library("test_java") {
   testonly = true
 
-  java_files = [ "javatests/src/org/chromium/chrome/browser/touch_to_fill/TouchToFillViewTest.java" ]
+  java_files = [
+    "javatests/src/org/chromium/chrome/browser/touch_to_fill/TouchToFillIntegrationTest.java",
+    "javatests/src/org/chromium/chrome/browser/touch_to_fill/TouchToFillViewTest.java",
+  ]
 
   deps = [
     ":public_java",
@@ -73,6 +76,7 @@
     "//chrome/test/android:chrome_java_test_support",
     "//content/public/test/android:content_java_test_support",
     "//third_party/android_deps:com_android_support_recyclerview_v7_java",
+    "//third_party/espresso:espresso_all_java",
     "//third_party/hamcrest:hamcrest_java",
     "//third_party/junit",
     "//third_party/mockito:mockito_java",
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ar.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ar.xtb
index 0c68caf..64ed69b2 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ar.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ar.xtb
@@ -1,10 +1,10 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ar">
-<translation id="1717486229951421299">تم فتح قائمة بيانات الاعتماد التي يتم ملؤها باللمس بنصف ارتفاع.</translation>
+<translation id="1717486229951421299">تم فتح قائمة بيانات الاعتماد التي يتم ملؤها باللمس على طول النصف السفلي من الشاشة.</translation>
 <translation id="207576718733492531">تم إغلاق قائمة بيانات الاعتماد التي يتم ملؤها باللمس.</translation>
 <translation id="2410754283952462441">اختيار حساب</translation>
 <translation id="3399357656427473483">قائمة ببيانات الاعتماد التي يتم ملؤها باللمس</translation>
-<translation id="5441504010984421144">تم فتح قائمة بيانات الاعتماد التي يجب ملئها باللمس بارتفاع كامل.</translation>
+<translation id="5441504010984421144">تم فتح قائمة بيانات الاعتماد التي يجب ملؤها باللمس على طول الشاشة.</translation>
 <translation id="5458743933922296641">‏تسجيل الدخول إلى <ph name="SITE_NAME" /> باستخدام Chrome</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ca.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ca.xtb
index 6d448feb..72dcbf3 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ca.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ca.xtb
@@ -1,10 +1,10 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ca">
-<translation id="1717486229951421299">La llista de credencials que s'emplenaran amb un toc ocupa la meitat inferior de la pantalla.</translation>
+<translation id="1717486229951421299">La llista de credencials que s'emplenaran amb un toc està oberta i ocupa la meitat inferior de la pantalla.</translation>
 <translation id="207576718733492531">La llista de credencials que s'emplenaran amb un toc està tancada.</translation>
 <translation id="2410754283952462441">Tria un compte</translation>
 <translation id="3399357656427473483">Llista de credencials que s'emplenaran amb un toc.</translation>
-<translation id="5441504010984421144">La llista de credencials que s'emplenaran amb un toc ocupa tota la pantalla.</translation>
+<translation id="5441504010984421144">La llista de credencials que s'emplenaran amb un toc està oberta i ocupa tota la pantalla.</translation>
 <translation id="5458743933922296641">Inicia la sessió a <ph name="SITE_NAME" /> amb Chrome</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_el.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_el.xtb
index 9c979ee..5e15cc9 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_el.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_el.xtb
@@ -1,10 +1,10 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="el">
-<translation id="1717486229951421299">Η λίστα με τα διαπιστευτήρια για συμπλήρωση μέσω αφής είναι ανοιχτή στο μισό ύψος.</translation>
+<translation id="1717486229951421299">Η λίστα με τα διαπιστευτήρια για συμπλήρωση μέσω αφής είναι ανοιχτή στο κάτω μισό της οθόνης.</translation>
 <translation id="207576718733492531">Η λίστα με τα διαπιστευτήρια για συμπλήρωση μέσω αφής είναι κλειστή.</translation>
 <translation id="2410754283952462441">Επιλέξτε λογαριασμό</translation>
 <translation id="3399357656427473483">Η λίστα με τα διαπιστευτήρια για συμπλήρωση μέσω αφής.</translation>
-<translation id="5441504010984421144">Η λίστα με τα διαπιστευτήρια για συμπλήρωση μέσω αφής είναι ανοιχτή στο πλήρες ύψος.</translation>
+<translation id="5441504010984421144">Η λίστα με τα διαπιστευτήρια για συμπλήρωση μέσω αφής είναι ανοιχτή σε όλη την οθόνη.</translation>
 <translation id="5458743933922296641">Συνδεθείτε στο <ph name="SITE_NAME" /> με το Chrome</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_es-419.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_es-419.xtb
index ac9eca8..381cea7 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_es-419.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_es-419.xtb
@@ -4,7 +4,7 @@
 <translation id="1717486229951421299">La lista de credenciales que se debe tocar para completar está abierta a media altura.</translation>
 <translation id="207576718733492531">La lista de credenciales que se debe tocar para completar está cerrada.</translation>
 <translation id="2410754283952462441">Elegir una cuenta</translation>
-<translation id="3399357656427473483">La lista de credenciales que se debe tocar para completar.</translation>
+<translation id="3399357656427473483">Lista de credenciales que se debe tocar para completar.</translation>
 <translation id="5441504010984421144">La lista de credenciales que se debe tocar para completar está totalmente abierta.</translation>
 <translation id="5458743933922296641">Accede a <ph name="SITE_NAME" /> con Chrome</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_hi.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_hi.xtb
index 479b8cd..bf5b14a39e 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_hi.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_hi.xtb
@@ -1,5 +1,10 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="hi">
+<translation id="1717486229951421299">टच करके भरी जाने वाली क्रेडेंशियल की सूची आधी खुली हुई है.</translation>
+<translation id="207576718733492531">टच करके भरी जाने वाली क्रेडेंशियल की सूची बंद है.</translation>
 <translation id="2410754283952462441">कोई खाता चुनें</translation>
+<translation id="3399357656427473483">टच करके भरी जाने वाली क्रेडेंशियल की सूची.</translation>
+<translation id="5441504010984421144">टच करके भरी जाने वाली क्रेडेंशियल की सूची पूरी खुली हुई है.</translation>
+<translation id="5458743933922296641">Chrome पर <ph name="SITE_NAME" /> में साइन इन करें</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_hr.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_hr.xtb
index c51cd6c..f30dc5e 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_hr.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_hr.xtb
@@ -5,6 +5,6 @@
 <translation id="207576718733492531">Popis vjerodajnica za unos dodirom zatvoren je.</translation>
 <translation id="2410754283952462441">Odabir računa</translation>
 <translation id="3399357656427473483">Popis vjerodajnica za unos dodirom.</translation>
-<translation id="5441504010984421144">Popis vjerodajnica za unos dodirom otvoren je punom visinom.</translation>
+<translation id="5441504010984421144">Popis vjerodajnica za unos dodirom otvoren je preko cijelog zaslona.</translation>
 <translation id="5458743933922296641">Prijavite se na <ph name="SITE_NAME" /> putem Chromea</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_iw.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_iw.xtb
index 3941b3f..81b920c 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_iw.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_iw.xtb
@@ -1,10 +1,10 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="iw">
-<translation id="1717486229951421299">רשימת פרטי הכניסה למילוי בעת מגע פתוחה בחצי מגובה המסך.</translation>
-<translation id="207576718733492531">רשימת פרטי הכניסה למילוי בעת מגע סגורה.</translation>
+<translation id="1717486229951421299">רשימת פרטי הכניסה למילוי במגע פתוחה בחצי מגובה המסך.</translation>
+<translation id="207576718733492531">רשימת פרטי הכניסה למילוי במגע סגורה.</translation>
 <translation id="2410754283952462441">בחירת חשבון</translation>
-<translation id="3399357656427473483">רשימת פרטי הכניסה למילוי בעת מגע.</translation>
-<translation id="5441504010984421144">רשימת פרטי הכניסה למילוי בעת מגע פתוחה בגובה המלא של המסך.</translation>
+<translation id="3399357656427473483">רשימת פרטי הכניסה למילוי במגע.</translation>
+<translation id="5441504010984421144">רשימת פרטי הכניסה למילוי במגע פתוחה בגובה המלא של המסך.</translation>
 <translation id="5458743933922296641">‏כניסה אל <ph name="SITE_NAME" /> בעזרת Chrome</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ml.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ml.xtb
index 1cc020e8..5281679 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ml.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ml.xtb
@@ -1,10 +1,10 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="ml">
-<translation id="1717486229951421299">പകുതി ഉയരത്തിൽ തുറന്ന ടച്ചിൽ പൂരിപ്പിക്കേണ്ട ക്രെഡൻ‍ഷ്യലുകളുടെ ലിസ്‌റ്റ്.</translation>
-<translation id="207576718733492531">ടച്ചിൽ പൂരിപ്പിക്കേണ്ട ക്രെഡൻ‍ഷ്യലുകളുടെ ലിസ്‌റ്റ് അടച്ചു.</translation>
+<translation id="1717486229951421299">ടച്ച് ചെയ്യുമ്പോൾ പൂരിപ്പിക്കേണ്ട ക്രെഡൻഷ്യലുകളുടെ ലിസ്റ്റ് പകുതി ഉയരത്തിൽ തുറന്നിരിക്കുന്നു.</translation>
+<translation id="207576718733492531">ടച്ച് ചെയ്യുമ്പോൾ പൂരിപ്പിക്കേണ്ട ക്രെഡൻഷ്യലുകളുടെ ലിസ്റ്റ് അടച്ചിരിക്കുന്നു.</translation>
 <translation id="2410754283952462441">ഒരു അക്കൗണ്ട് തിരഞ്ഞെടുക്കൂ</translation>
-<translation id="3399357656427473483">ടച്ചിൽ പൂരിപ്പിക്കേണ്ട ക്രെഡൻ‍ഷ്യലുകളുടെ ലിസ്‌റ്റ്.</translation>
-<translation id="5441504010984421144">പൂർണ്ണ ഉയരത്തിൽ തുറന്ന ടച്ചിൽ പൂരിപ്പിക്കേണ്ട ക്രെഡൻ‍ഷ്യലുകളുടെ ലിസ്‌റ്റ്.</translation>
+<translation id="3399357656427473483">ടച്ച് ചെയ്യുമ്പോൾ പൂരിപ്പിക്കേണ്ട ക്രെഡൻ‍ഷ്യലുകളുടെ ലിസ്‌റ്റ്.</translation>
+<translation id="5441504010984421144">ടച്ച് ചെയ്യുമ്പോൾ പൂരിപ്പിക്കേണ്ട ക്രെഡൻഷ്യലുകളുടെ ലിസ്റ്റ് പൂർണ്ണ ഉയരത്തിൽ തുറന്നിരിക്കുന്നു.</translation>
 <translation id="5458743933922296641">Chrome ഉപയോഗിച്ച് <ph name="SITE_NAME" /> എന്നതിൽ സൈൻ ഇൻ ചെയ്യുക</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ta.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ta.xtb
index 929adefd..68305b6 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ta.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_ta.xtb
@@ -2,9 +2,9 @@
 <!DOCTYPE translationbundle>
 <translationbundle lang="ta">
 <translation id="1717486229951421299">தொட்டால் நிரப்பப்பட வேண்டிய அனுமதிச் சான்றுகளின் பட்டியல் பாதித் திரையில் திறக்கப்பட்டுள்ளது.</translation>
-<translation id="207576718733492531">தொட்டால் நிரப்பப்பட வேண்டிய அனுமதிச் சான்றுகள் மூடப்பட்டுள்ளன.</translation>
+<translation id="207576718733492531">தொட்டால் நிரப்பப்பட வேண்டிய அனுமதிச் சான்றுகளின் பட்டியல் மூடப்பட்டுள்ளது.</translation>
 <translation id="2410754283952462441">கணக்கைத் தேர்வு செய்யவும்</translation>
-<translation id="3399357656427473483">தொட்டால் நிரப்பப்பட வேண்டிய அனுமதிச் சான்றுகள்.</translation>
+<translation id="3399357656427473483">தொட்டால் நிரப்பப்பட வேண்டிய அனுமதிச் சான்றுகளின் பட்டியல்.</translation>
 <translation id="5441504010984421144">தொட்டால் நிரப்பப்பட வேண்டிய அனுமதிச் சான்றுகளின் பட்டியல் முழுத் திரையில் திறக்கப்பட்டுள்ளது.</translation>
-<translation id="5458743933922296641">Chromeமைப் பயன்படுத்தி <ph name="SITE_NAME" />மில் உள்நுழையுங்கள்</translation>
+<translation id="5458743933922296641">Chromeமைப் பயன்படுத்தி <ph name="SITE_NAME" />இல் உள்நுழையுங்கள்</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/touch_to_fill/android/javatests/src/org/chromium/chrome/browser/touch_to_fill/TouchToFillIntegrationTest.java b/chrome/browser/touch_to_fill/android/javatests/src/org/chromium/chrome/browser/touch_to_fill/TouchToFillIntegrationTest.java
new file mode 100644
index 0000000..4546368
--- /dev/null
+++ b/chrome/browser/touch_to_fill/android/javatests/src/org/chromium/chrome/browser/touch_to_fill/TouchToFillIntegrationTest.java
@@ -0,0 +1,113 @@
+// Copyright 2019 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.
+
+package org.chromium.chrome.browser.touch_to_fill;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.timeout;
+import static org.mockito.Mockito.verify;
+
+import static org.chromium.content_public.browser.test.util.CriteriaHelper.pollUiThread;
+import static org.chromium.content_public.browser.test.util.TestThreadUtils.runOnUiThreadBlocking;
+
+import android.support.test.espresso.Espresso;
+import android.support.test.filters.MediumTest;
+import android.widget.ListView;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+
+import org.chromium.base.test.util.CommandLineFlags;
+import org.chromium.base.test.util.RetryOnFailure;
+import org.chromium.base.test.util.ScalableTimeout;
+import org.chromium.chrome.browser.ChromeSwitches;
+import org.chromium.chrome.browser.touch_to_fill.data.Credential;
+import org.chromium.chrome.browser.widget.bottomsheet.BottomSheet.SheetState;
+import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
+import org.chromium.chrome.test.ChromeTabbedActivityTestRule;
+import org.chromium.content_public.browser.test.util.CriteriaHelper;
+import org.chromium.content_public.browser.test.util.TouchCommon;
+
+import java.util.Arrays;
+
+/**
+ * Integration tests for the Touch To Fill component check that the calls to the Touch To Fill API
+ * end up rendering a View.
+ */
+@RunWith(ChromeJUnit4ClassRunner.class)
+@RetryOnFailure
+@CommandLineFlags.Add({ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE})
+public class TouchToFillIntegrationTest {
+    private static final String EXAMPLE_URL = "www.example.xyz";
+    private static final String MOBILE_URL = "m.example.xyz";
+    private static final Credential ANA = new Credential("Ana", "S3cr3t", EXAMPLE_URL, false);
+    private static final Credential BOB = new Credential("Bob", "*****", MOBILE_URL, true);
+
+    private final TouchToFillComponent mTouchToFill = new TouchToFillCoordinator();
+
+    @Mock
+    private TouchToFillComponent.Delegate mMockBridge;
+
+    @Rule
+    public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule();
+
+    public TouchToFillIntegrationTest() {
+        MockitoAnnotations.initMocks(this);
+    }
+
+    @Before
+    public void setUp() throws InterruptedException {
+        mActivityTestRule.startMainActivityOnBlankPage();
+        runOnUiThreadBlocking(() -> {
+            mTouchToFill.initialize(mActivityTestRule.getActivity(),
+                    mActivityTestRule.getActivity().getBottomSheetController(), mMockBridge);
+        });
+    }
+
+    @Test
+    @MediumTest
+    public void testClickingSuggestionsTriggersCallback() {
+        runOnUiThreadBlocking(
+                () -> { mTouchToFill.showCredentials(EXAMPLE_URL, Arrays.asList(ANA, BOB)); });
+        pollUiThread(() -> getBottomSheetState() == SheetState.FULL);
+
+        pollUiThread(() -> getCredentials().getChildAt(1) != null);
+        TouchCommon.singleClickView(getCredentials().getChildAt(1));
+
+        waitForEvent(mMockBridge).onCredentialSelected(BOB);
+        verify(mMockBridge, never()).onDismissed();
+    }
+
+    @Test
+    @MediumTest
+    public void testBackDismissesAndCallsCallback() {
+        runOnUiThreadBlocking(
+                () -> { mTouchToFill.showCredentials(EXAMPLE_URL, Arrays.asList(ANA, BOB)); });
+        pollUiThread(() -> getBottomSheetState() == SheetState.FULL);
+
+        Espresso.pressBack();
+
+        waitForEvent(mMockBridge).onDismissed();
+        verify(mMockBridge, never()).onCredentialSelected(any());
+    }
+
+    private ListView getCredentials() {
+        return mActivityTestRule.getActivity().findViewById(R.id.credential_list);
+    }
+
+    public static <T> T waitForEvent(T mock) {
+        return verify(mock,
+                timeout(ScalableTimeout.scaleTimeout(CriteriaHelper.DEFAULT_MAX_TIME_TO_POLL)));
+    }
+
+    private @SheetState int getBottomSheetState() {
+        pollUiThread(() -> mActivityTestRule.getActivity().getBottomSheet() != null);
+        return mActivityTestRule.getActivity().getBottomSheet().getSheetState();
+    }
+}
\ No newline at end of file
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
index 8932185..c8fae10 100644
--- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn
@@ -470,6 +470,7 @@
     "//components/payments/content/icon",
     "//components/payments/core:error_strings",
     "//components/pdf/browser",
+    "//components/performance_manager",
     "//components/policy/core/browser",
     "//components/pref_registry",
     "//components/previews/content",
diff --git a/chrome/browser/ui/ash/keyboard/chrome_keyboard_web_contents.cc b/chrome/browser/ui/ash/keyboard/chrome_keyboard_web_contents.cc
index 4af64d7..cd826d9 100644
--- a/chrome/browser/ui/ash/keyboard/chrome_keyboard_web_contents.cc
+++ b/chrome/browser/ui/ash/keyboard/chrome_keyboard_web_contents.cc
@@ -59,13 +59,20 @@
     return false;
   }
 
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override {
-    return true;
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) override {
+    return false;
   }
 
   void SetContentsBounds(content::WebContents* source,
diff --git a/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc b/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
index f35d157e..a3ea257 100644
--- a/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
+++ b/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
@@ -83,16 +83,6 @@
   if (!obj)
     return;
 
-  // Ignore toplevel window activate and deactivate events. These are causing
-  // issues with ChromeOS accessibility tests and are currently only used on
-  // desktop Linux platforms.
-  // TODO(https://crbug.com/89717): Need to harmonize the firing of
-  // accessibility events between platforms.
-  if (event_type == ax::mojom::Event::kWindowActivated ||
-      event_type == ax::mojom::Event::kWindowDeactivated) {
-    return;
-  }
-
   // Post a task to handle the event at the end of the current call stack.
   // This helps us avoid firing accessibility events for transient changes.
   // because there's a chance that the underlying object being wrapped could
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
index 361c80d0..a86a546 100644
--- a/chrome/browser/ui/browser.cc
+++ b/chrome/browser/ui/browser.cc
@@ -1428,9 +1428,6 @@
   nav_params.tabstrip_add_types = TabStripModel::ADD_NONE;
   if (params.user_gesture)
     nav_params.window_action = NavigateParams::SHOW_WINDOW;
-  nav_params.user_gesture = params.user_gesture;
-  nav_params.blob_url_loader_factory = params.blob_url_loader_factory;
-  nav_params.href_translate = params.href_translate;
   bool is_popup = source && ConsiderForPopupBlocking(params.disposition);
   if (is_popup && MaybeBlockPopup(source, nullptr, &nav_params, &params,
                                   blink::mojom::WindowFeatures())) {
@@ -1611,34 +1608,30 @@
       std::make_unique<RepostFormWarningController>(source), source);
 }
 
-bool Browser::IsWebContentsCreationOverridden(
-    content::SiteInstance* source_site_instance,
-    content::mojom::WindowContainerType window_container_type,
-    const GURL& opener_url,
-    const std::string& frame_name,
-    const GURL& target_url) {
-  return window_container_type ==
-             content::mojom::WindowContainerType::BACKGROUND &&
-         ShouldCreateBackgroundContents(source_site_instance, opener_url,
-                                        frame_name);
-}
-
-WebContents* Browser::CreateCustomWebContents(
+bool Browser::ShouldCreateWebContents(
+    content::WebContents* web_contents,
     content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
-    bool is_new_browsing_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
+    content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
     const GURL& target_url,
     const std::string& partition_id,
     content::SessionStorageNamespace* session_storage_namespace) {
-  BackgroundContents* background_contents = CreateBackgroundContents(
-      source_site_instance, opener, opener_url, is_new_browsing_instance,
-      frame_name, target_url, partition_id, session_storage_namespace);
-  if (background_contents) {
-    return background_contents->web_contents();
-  }
-  return nullptr;
+  if ((window_container_type !=
+       content::mojom::WindowContainerType::BACKGROUND) ||
+      !ShouldCreateBackgroundContents(source_site_instance, opener_url,
+                                      frame_name))
+    return true;
+
+  CreateBackgroundContents(source_site_instance, opener, opener_url, route_id,
+                           main_frame_route_id, main_frame_widget_route_id,
+                           frame_name, target_url, partition_id,
+                           session_storage_namespace);
+  return false;
 }
 
 void Browser::WebContentsCreated(WebContents* source_contents,
@@ -2450,6 +2443,9 @@
   if (!source)
     return;
 
+  if (!SupportsWindowFeature(WindowFeature::FEATURE_TABSTRIP))
+    return;
+
   const int source_index = tab_strip_model_->GetIndexOfWebContents(source);
 
   // If the source tab is pinned, don't create a group.
@@ -2857,7 +2853,9 @@
     content::SiteInstance* source_site_instance,
     content::RenderFrameHost* opener,
     const GURL& opener_url,
-    bool is_new_browsing_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     const std::string& frame_name,
     const GURL& target_url,
     const std::string& partition_id,
@@ -2885,8 +2883,9 @@
   // Passed all the checks, so this should be created as a BackgroundContents.
   if (allow_js_access) {
     return service->CreateBackgroundContents(
-        source_site_instance, opener, is_new_browsing_instance, frame_name,
-        extension->id(), partition_id, session_storage_namespace);
+        source_site_instance, opener, route_id, main_frame_route_id,
+        main_frame_widget_route_id, frame_name, extension->id(), partition_id,
+        session_storage_namespace);
   }
 
   // If script access is not allowed, create the the background contents in a
@@ -2895,8 +2894,8 @@
   // process.
   BackgroundContents* contents = service->CreateBackgroundContents(
       content::SiteInstance::Create(source_site_instance->GetBrowserContext()),
-      nullptr, is_new_browsing_instance, frame_name, extension->id(),
-      partition_id, session_storage_namespace);
+      nullptr, MSG_ROUTING_NONE, MSG_ROUTING_NONE, MSG_ROUTING_NONE, frame_name,
+      extension->id(), partition_id, session_storage_namespace);
 
   // When a separate process is used, the original renderer cannot access the
   // new window later, thus we need to navigate the window now.
diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h
index 9c57ba6e..3f131a82 100644
--- a/chrome/browser/ui/browser.h
+++ b/chrome/browser/ui/browser.h
@@ -707,16 +707,14 @@
                          bool* proceed_to_fire_unload) override;
   bool ShouldFocusLocationBarByDefault(content::WebContents* source) override;
   void ShowRepostFormWarningDialog(content::WebContents* source) override;
-  bool IsWebContentsCreationOverridden(
-      content::SiteInstance* source_site_instance,
-      content::mojom::WindowContainerType window_container_type,
-      const GURL& opener_url,
-      const std::string& frame_name,
-      const GURL& target_url) override;
-  content::WebContents* CreateCustomWebContents(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
       content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
-      bool is_new_browsing_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
+      content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
       const GURL& target_url,
@@ -1004,7 +1002,9 @@
       content::SiteInstance* source_site_instance,
       content::RenderFrameHost* opener,
       const GURL& opener_url,
-      bool is_new_browsing_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       const std::string& frame_name,
       const GURL& target_url,
       const std::string& partition_id,
diff --git a/chrome/browser/ui/browser_navigator_params.cc b/chrome/browser/ui/browser_navigator_params.cc
index 1f10745..78c84af 100644
--- a/chrome/browser/ui/browser_navigator_params.cc
+++ b/chrome/browser/ui/browser_navigator_params.cc
@@ -61,4 +61,7 @@
   this->post_data = params.post_data;
   this->started_from_context_menu = params.started_from_context_menu;
   this->open_pwa_window_if_possible = params.open_app_window_if_possible;
+  this->user_gesture = params.user_gesture;
+  this->blob_url_loader_factory = params.blob_url_loader_factory;
+  this->href_translate = params.href_translate;
 }
diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc
index 43e31eb9..0a4c175 100644
--- a/chrome/browser/ui/browser_ui_prefs.cc
+++ b/chrome/browser/ui/browser_ui_prefs.cc
@@ -127,9 +127,4 @@
   registry->RegisterBooleanPref(prefs::kAllowPopupsDuringPageUnload, false);
   registry->RegisterBooleanPref(prefs::kUserFeedbackAllowed, true);
   registry->RegisterBooleanPref(prefs::kAllowSyncXHRInPageDismissal, false);
-
-#if !defined(OS_ANDROID)
-  registry->RegisterBooleanPref(prefs::kShowFirstRunDefaultSearchShortcut,
-                                false);
-#endif  // !defined(OS_ANDROID)
 }
diff --git a/chrome/browser/ui/libgtkui/gtk_event_loop_x11.cc b/chrome/browser/ui/libgtkui/gtk_event_loop_x11.cc
index f271f5f2..02011d0 100644
--- a/chrome/browser/ui/libgtkui/gtk_event_loop_x11.cc
+++ b/chrome/browser/ui/libgtkui/gtk_event_loop_x11.cc
@@ -60,7 +60,8 @@
   // corresponding key event in the X event queue.  So we have to handle this
   // case.  ibus-gtk is used through gtk-immodule to support IMEs.
 
-  XEvent x_event = {0};
+  XEvent x_event;
+  x_event.xkey = {};
   x_event.xkey.type =
       gdk_event_key.type == GDK_KEY_PRESS ? KeyPress : KeyRelease;
   x_event.xkey.send_event = gdk_event_key.send_event;
diff --git a/chrome/browser/ui/managed_ui_browsertest.cc b/chrome/browser/ui/managed_ui_browsertest.cc
index 4a91ac0..602b6a8 100644
--- a/chrome/browser/ui/managed_ui_browsertest.cc
+++ b/chrome/browser/ui/managed_ui_browsertest.cc
@@ -15,8 +15,6 @@
 #include "components/policy/core/common/mock_configuration_policy_provider.h"
 #include "testing/gmock/include/gmock/gmock.h"
 
-using namespace policy;
-
 class ManagedUiTest : public InProcessBrowserTest {
  public:
   ManagedUiTest() = default;
@@ -25,13 +23,13 @@
   void SetUpInProcessBrowserTestFixture() override {
     EXPECT_CALL(provider_, IsInitializationComplete(testing::_))
         .WillRepeatedly(testing::Return(true));
-    BrowserPolicyConnectorBase::SetPolicyProviderForTesting(&provider_);
+    policy::BrowserPolicyConnectorBase::SetPolicyProviderForTesting(&provider_);
   }
 
-  MockConfigurationPolicyProvider* provider() { return &provider_; }
+  policy::MockConfigurationPolicyProvider* provider() { return &provider_; }
 
  private:
-  MockConfigurationPolicyProvider provider_;
+  policy::MockConfigurationPolicyProvider provider_;
 
   DISALLOW_COPY_AND_ASSIGN(ManagedUiTest);
 };
@@ -41,9 +39,9 @@
 }
 
 IN_PROC_BROWSER_TEST_F(ManagedUiTest, ShouldDisplayManagedUiOnDesktop) {
-  PolicyMap policy_map;
-  policy_map.Set("test-policy", POLICY_LEVEL_MANDATORY, POLICY_SCOPE_MACHINE,
-                 POLICY_SOURCE_PLATFORM,
+  policy::PolicyMap policy_map;
+  policy_map.Set("test-policy", policy::POLICY_LEVEL_MANDATORY,
+                 policy::POLICY_SCOPE_MACHINE, policy::POLICY_SOURCE_PLATFORM,
                  std::make_unique<base::Value>("hello world"), nullptr);
   provider()->UpdateChromePolicy(policy_map);
 
@@ -62,9 +60,9 @@
   builder_with_domain.SetProfileName("foobar@example.com");
   auto profile_with_domain = builder_with_domain.Build();
 
-  EXPECT_EQ(base::UTF8ToUTF16("Managed by your organization"),
+  EXPECT_EQ(base::ASCIIToUTF16("Managed by your organization"),
             chrome::GetManagedUiMenuItemLabel(profile.get()));
-  EXPECT_EQ(base::UTF8ToUTF16("Managed by example.com"),
+  EXPECT_EQ(base::ASCIIToUTF16("Managed by example.com"),
             chrome::GetManagedUiMenuItemLabel(profile_with_domain.get()));
 }
 
@@ -77,23 +75,23 @@
   auto profile_with_domain = builder_with_domain.Build();
 
   EXPECT_EQ(
-      base::UTF8ToUTF16(
+      base::ASCIIToUTF16(
           "Your <a href=\"chrome://management\">browser is managed</a> by your "
           "organization"),
       chrome::GetManagedUiWebUILabel(profile.get()));
   EXPECT_EQ(
-      base::UTF8ToUTF16(
+      base::ASCIIToUTF16(
           "Your <a href=\"chrome://management\">browser is managed</a> by "
           "example.com"),
       chrome::GetManagedUiWebUILabel(profile_with_domain.get()));
 #if defined(OS_CHROMEOS)
-  EXPECT_EQ(base::UTF8ToUTF16("Your <a target=\"_blank\" "
-                              "href=\"chrome://management\">Chrome device is "
-                              "managed</a> by your organization"),
+  EXPECT_EQ(base::ASCIIToUTF16("Your <a target=\"_blank\" "
+                               "href=\"chrome://management\">Chrome device is "
+                               "managed</a> by your organization"),
             chrome::GetDeviceManagedUiWebUILabel(profile.get()));
-  EXPECT_EQ(base::UTF8ToUTF16("Your <a target=\"_blank\" "
-                              "href=\"chrome://management\">Chrome device is "
-                              "managed</a> by example.com"),
+  EXPECT_EQ(base::ASCIIToUTF16("Your <a target=\"_blank\" "
+                               "href=\"chrome://management\">Chrome device is "
+                               "managed</a> by example.com"),
             chrome::GetDeviceManagedUiWebUILabel(profile_with_domain.get()));
 #endif
 }
diff --git a/chrome/browser/ui/media_router/presentation_receiver_window_controller.cc b/chrome/browser/ui/media_router/presentation_receiver_window_controller.cc
index 03ae005..1a5ce1d 100644
--- a/chrome/browser/ui/media_router/presentation_receiver_window_controller.cc
+++ b/chrome/browser/ui/media_router/presentation_receiver_window_controller.cc
@@ -195,14 +195,22 @@
   std::move(callback).Run(false);
 }
 
-bool PresentationReceiverWindowController::IsWebContentsCreationOverridden(
+bool PresentationReceiverWindowController::ShouldCreateWebContents(
+    content::WebContents* web_contents,
+    content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
-    const GURL& target_url) {
+    const GURL& target_url,
+    const std::string& partition_id,
+    content::SessionStorageNamespace* session_storage_namespace) {
+  DCHECK_EQ(web_contents_.get(), web_contents);
   // Disallow creating separate WebContentses.  The WebContents implementation
   // uses this to spawn new windows/tabs, which is also not allowed for
   // local presentations.
-  return true;
+  return false;
 }
diff --git a/chrome/browser/ui/media_router/presentation_receiver_window_controller.h b/chrome/browser/ui/media_router/presentation_receiver_window_controller.h
index 611c041..039725f 100644
--- a/chrome/browser/ui/media_router/presentation_receiver_window_controller.h
+++ b/chrome/browser/ui/media_router/presentation_receiver_window_controller.h
@@ -93,12 +93,19 @@
   void CanDownload(const GURL& url,
                    const std::string& request_method,
                    base::OnceCallback<void(bool)> callback) final;
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override;
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) final;
 
   // The profile used for the presentation.
   std::unique_ptr<IndependentOTRProfileManager::OTRProfileRegistration>
diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/prefs/prefs_tab_helper.cc
index 4db5bb4..1a90fe3 100644
--- a/chrome/browser/ui/prefs/prefs_tab_helper.cc
+++ b/chrome/browser/ui/prefs/prefs_tab_helper.cc
@@ -25,6 +25,7 @@
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/renderer_preferences_util.h"
 #include "chrome/browser/ui/prefs/pref_watcher.h"
+#include "chrome/common/chrome_features.h"
 #include "chrome/common/pref_font_webkit_names.h"
 #include "chrome/common/pref_names.h"
 #include "chrome/common/pref_names_util.h"
@@ -352,7 +353,9 @@
                                 pref_defaults.tabs_to_links);
   registry->RegisterBooleanPref(prefs::kWebKitAllowRunningInsecureContent,
                                 false);
-  registry->RegisterBooleanPref(prefs::kEnableReferrers, true);
+  registry->RegisterBooleanPref(
+      prefs::kEnableReferrers,
+      !base::FeatureList::IsEnabled(features::kNoReferrers));
   registry->RegisterBooleanPref(prefs::kEnableEncryptedMedia, true);
 #if defined(OS_ANDROID)
   registry->RegisterDoublePref(prefs::kWebKitFontScaleFactor, 1.0);
diff --git a/chrome/browser/ui/search/local_ntp_browsertest.cc b/chrome/browser/ui/search/local_ntp_browsertest.cc
index 3ea7e00..c74c1bbe 100644
--- a/chrome/browser/ui/search/local_ntp_browsertest.cc
+++ b/chrome/browser/ui/search/local_ntp_browsertest.cc
@@ -14,7 +14,6 @@
 #include "base/strings/stringprintf.h"
 #include "base/strings/utf_string_conversions.h"
 #include "base/test/metrics/histogram_tester.h"
-#include "base/test/scoped_feature_list.h"
 #include "base/threading/thread_restrictions.h"
 #include "base/threading/thread_task_runner_handle.h"
 #include "build/branding_buildflags.h"
@@ -89,28 +88,8 @@
   return nullptr;
 }
 
-bool ContainsDefaultSearchTile(content::RenderFrameHost* iframe) {
-  int num_search_tiles;
-  EXPECT_TRUE(instant_test_utils::GetIntFromJS(
-      iframe,
-      "document.querySelectorAll(\".md-tile["
-      "href='https://www.google.com/']\").length",
-      &num_search_tiles));
-  return num_search_tiles == 1;
-}
-
 class LocalNTPTest : public InProcessBrowserTest {
  public:
-  LocalNTPTest(const std::vector<base::Feature>& enabled_features,
-               const std::vector<base::Feature>& disabled_features) {
-    feature_list_.InitWithFeatures(enabled_features, disabled_features);
-  }
-
-  LocalNTPTest()
-      : LocalNTPTest(
-            /*enabled_features=*/{},
-            /*disabled_features=*/{features::kFirstRunDefaultSearchShortcut}) {}
-
   void SetUpOnMainThread() override {
     // Some tests depend on the prepopulated most visited tiles coming from
     // TopSites, so make sure they are available before running the tests.
@@ -124,9 +103,6 @@
     instant_service->UpdateMostVisitedInfo();
     mv_observer.WaitForMostVisitedItems(kDefaultMostVisitedItemCount);
   }
-
- private:
-  base::test::ScopedFeatureList feature_list_;
 };
 
 IN_PROC_BROWSER_TEST_F(LocalNTPTest, EmbeddedSearchAPIOnlyAvailableOnNTP) {
@@ -1158,112 +1134,6 @@
   EXPECT_TRUE(search::IsInstantNTP(active_tab));
 }
 
-class LocalNTPNoSearchShortcutTest : public LocalNTPTest {
- public:
-  LocalNTPNoSearchShortcutTest()
-      : LocalNTPTest({}, {features::kFirstRunDefaultSearchShortcut}) {}
-};
-
-IN_PROC_BROWSER_TEST_F(LocalNTPNoSearchShortcutTest, SearchShortcutHidden) {
-  content::WebContents* active_tab =
-      local_ntp_test_utils::OpenNewTab(browser(), GURL("about:blank"));
-
-  local_ntp_test_utils::NavigateToNTPAndWaitUntilLoaded(browser());
-  ASSERT_TRUE(search::IsInstantNTP(active_tab));
-
-  content::RenderFrameHost* iframe = GetIframe(active_tab, "mv-single");
-
-  EXPECT_FALSE(ContainsDefaultSearchTile(iframe));
-}
-
-#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
-class LocalNTPFRESearchShortcutTest : public LocalNTPTest {
- public:
-  LocalNTPFRESearchShortcutTest()
-      : LocalNTPTest({features::kFirstRunDefaultSearchShortcut}, {}) {}
-
-  void SetUpOnMainThread() override {
-    // Make sure TopSites are available before running the tests.
-    InstantService* instant_service =
-        InstantServiceFactory::GetForProfile(browser()->profile());
-    TestInstantServiceObserver mv_observer(instant_service);
-    instant_service->UpdateMostVisitedInfo();
-    mv_observer.WaitForMostVisitedItems(kDefaultMostVisitedItemCount + 1);
-  }
-};
-
-IN_PROC_BROWSER_TEST_F(LocalNTPFRESearchShortcutTest, PRE_SearchShortcutShown) {
-  content::WebContents* active_tab =
-      local_ntp_test_utils::OpenNewTab(browser(), GURL("about:blank"));
-  local_ntp_test_utils::NavigateToNTPAndWaitUntilLoaded(browser());
-  ASSERT_TRUE(search::IsInstantNTP(active_tab));
-
-  content::RenderFrameHost* iframe = GetIframe(active_tab, kMostVisitedIframe);
-
-  EXPECT_TRUE(ContainsDefaultSearchTile(iframe));
-}
-
-IN_PROC_BROWSER_TEST_F(LocalNTPFRESearchShortcutTest, SearchShortcutShown) {
-  content::WebContents* active_tab =
-      local_ntp_test_utils::OpenNewTab(browser(), GURL("about:blank"));
-  local_ntp_test_utils::NavigateToNTPAndWaitUntilLoaded(browser());
-  ASSERT_TRUE(search::IsInstantNTP(active_tab));
-
-  content::RenderFrameHost* iframe = GetIframe(active_tab, kMostVisitedIframe);
-
-  // Search shortcut is retained across browser restart
-  EXPECT_TRUE(ContainsDefaultSearchTile(iframe));
-}
-
-class LocalNTPExistingProfileSearchShortcutTest : public LocalNTPTest {
- public:
-  LocalNTPExistingProfileSearchShortcutTest() : LocalNTPTest({}, {}) {}
-};
-
-IN_PROC_BROWSER_TEST_F(LocalNTPExistingProfileSearchShortcutTest,
-                       PRE_FRESearchShortcutNotAddedForExistingUsers) {
-  TestInstantServiceObserver observer(
-      InstantServiceFactory::GetForProfile(browser()->profile()));
-
-  content::WebContents* active_tab =
-      local_ntp_test_utils::OpenNewTab(browser(), GURL("about:blank"));
-  local_ntp_test_utils::NavigateToNTPAndWaitUntilLoaded(browser());
-  ASSERT_TRUE(search::IsInstantNTP(active_tab));
-  content::RenderFrameHost* iframe = GetIframe(active_tab, kMostVisitedIframe);
-  EXPECT_FALSE(ContainsDefaultSearchTile(iframe));
-
-  // Navigate to a non-NTP URL, which should update most visited tiles.
-  ASSERT_TRUE(embedded_test_server()->Start());
-  GURL url(embedded_test_server()->GetURL("/title2.html"));
-  ui_test_utils::NavigateToURL(browser(), url);
-  ASSERT_FALSE(search::IsInstantNTP(active_tab));
-
-  // Enable the feature to insert the search shortcut for new users.
-  base::test::ScopedFeatureList scoped_feature_list_;
-  scoped_feature_list_.InitAndEnableFeature(
-      features::kFirstRunDefaultSearchShortcut);
-}
-
-IN_PROC_BROWSER_TEST_F(LocalNTPExistingProfileSearchShortcutTest,
-                       FRESearchShortcutNotAddedForExistingUsers) {
-  TestInstantServiceObserver observer(
-      InstantServiceFactory::GetForProfile(browser()->profile()));
-
-  // One new tile (the non-NTP URL "/title2.html") should be added.
-  observer.WaitForMostVisitedItems(kDefaultMostVisitedItemCount + 1);
-
-  content::WebContents* active_tab =
-      local_ntp_test_utils::OpenNewTab(browser(), GURL("about:blank"));
-  local_ntp_test_utils::NavigateToNTPAndWaitUntilLoaded(browser());
-  ASSERT_TRUE(search::IsInstantNTP(active_tab));
-
-  content::RenderFrameHost* iframe = GetIframe(active_tab, kMostVisitedIframe);
-
-  // Search shortcut is not added after browser restart
-  EXPECT_FALSE(ContainsDefaultSearchTile(iframe));
-}
-#endif
-
 // This is a regression test for https://crbug.com/946489 and
 // https://crbug.com/963544 which say that clicking a most-visited link from an
 // NTP should 1) have `Sec-Fetch-Site: none` header and 2) have SameSite
diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
index 2dc559f9..48fb601 100644
--- a/chrome/browser/ui/tab_helpers.cc
+++ b/chrome/browser/ui/tab_helpers.cc
@@ -38,8 +38,6 @@
 #include "chrome/browser/optimization_guide/optimization_guide_web_contents_observer.h"
 #include "chrome/browser/page_load_metrics/page_load_metrics_initialize.h"
 #include "chrome/browser/password_manager/chrome_password_manager_client.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
 #include "chrome/browser/permissions/permission_request_manager.h"
 #include "chrome/browser/plugins/pdf_plugin_placeholder_observer.h"
 #include "chrome/browser/predictors/loading_predictor_factory.h"
@@ -91,6 +89,8 @@
 #include "components/history/core/browser/top_sites.h"
 #include "components/offline_pages/buildflags/buildflags.h"
 #include "components/password_manager/core/browser/password_manager.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/public/performance_manager.h"
 #include "components/subresource_filter/core/browser/subresource_filter_features.h"
 #include "components/tracing/common/tracing_switches.h"
 #include "components/ukm/content/source_url_recorder.h"
diff --git a/chrome/browser/ui/views/autofill/payments/local_card_migration_browsertest.cc b/chrome/browser/ui/views/autofill/payments/local_card_migration_browsertest.cc
index bff03eb..5f55535 100644
--- a/chrome/browser/ui/views/autofill/payments/local_card_migration_browsertest.cc
+++ b/chrome/browser/ui/views/autofill/payments/local_card_migration_browsertest.cc
@@ -82,6 +82,7 @@
 #include "ui/views/bubble/bubble_frame_view.h"
 #include "ui/views/controls/button/button.h"
 #include "ui/views/controls/button/label_button.h"
+#include "ui/views/layout/animating_layout_manager.h"
 #include "ui/views/test/widget_test.h"
 #include "ui/views/window/dialog_client_view.h"
 
@@ -139,6 +140,36 @@
   MOCK_METHOD0(OnPersonalDataChanged, void());
 };
 
+// Helper to wait until the hover card widget is visible.
+class AnimatingLayoutWaiter : public views::AnimatingLayoutManager::Observer {
+ public:
+  explicit AnimatingLayoutWaiter(
+      views::AnimatingLayoutManager* animating_layout)
+      : animating_layout_(animating_layout) {
+    observer_.Add(animating_layout_);
+  }
+
+  void Wait() {
+    if (!animating_layout_->is_animating())
+      return;
+    run_loop_.Run();
+  }
+
+  // views::AnimatingLayoutManager overrides:
+  void OnLayoutIsAnimatingChanged(views::AnimatingLayoutManager* source,
+                                  bool is_animating) override {
+    if (!is_animating)
+      run_loop_.Quit();
+  }
+
+ private:
+  views::AnimatingLayoutManager* const animating_layout_;
+  ScopedObserver<views::AnimatingLayoutManager,
+                 views::AnimatingLayoutManager::Observer>
+      observer_{this};
+  base::RunLoop run_loop_;
+};
+
 class LocalCardMigrationBrowserTest
     : public SyncTest,
       public LocalCardMigrationManager::ObserverForTest {
@@ -323,6 +354,15 @@
          DialogEvent::RECEIVED_GET_UPLOAD_DETAILS_RESPONSE});
     FillAndSubmitFormWithCard(card_number);
     WaitForObservedEvent();
+    if (base::FeatureList::IsEnabled(
+            features::kAutofillEnableToolbarStatusChip)) {
+      AnimatingLayoutWaiter waiter(static_cast<views::AnimatingLayoutManager*>(
+          BrowserView::GetBrowserViewForBrowser(browser())
+              ->toolbar()
+              ->toolbar_account_icon_container()
+              ->GetLayoutManager()));
+      waiter.Wait();
+    }
   }
 
   void ClickOnSaveButtonAndWaitForMigrationResults() {
diff --git a/chrome/browser/ui/views/autofill/payments/save_card_bubble_views_browsertest.cc b/chrome/browser/ui/views/autofill/payments/save_card_bubble_views_browsertest.cc
index ba7c3f4..81c8ebd 100644
--- a/chrome/browser/ui/views/autofill/payments/save_card_bubble_views_browsertest.cc
+++ b/chrome/browser/ui/views/autofill/payments/save_card_bubble_views_browsertest.cc
@@ -77,6 +77,7 @@
 #include "ui/views/controls/combobox/combobox.h"
 #include "ui/views/controls/styled_label.h"
 #include "ui/views/controls/textfield/textfield.h"
+#include "ui/views/layout/animating_layout_manager.h"
 #include "ui/views/test/widget_test.h"
 #include "ui/views/widget/widget.h"
 #include "ui/views/window/dialog_client_view.h"
@@ -123,6 +124,36 @@
 const double kFakeGeolocationLongitude = 4.56;
 }  // namespace
 
+// Helper to wait until the hover card widget is visible.
+class AnimatingLayoutWaiter : public views::AnimatingLayoutManager::Observer {
+ public:
+  explicit AnimatingLayoutWaiter(
+      views::AnimatingLayoutManager* animating_layout)
+      : animating_layout_(animating_layout) {
+    observer_.Add(animating_layout_);
+  }
+
+  void Wait() {
+    if (!animating_layout_->is_animating())
+      return;
+    run_loop_.Run();
+  }
+
+  // views::AnimatingLayoutManager overrides:
+  void OnLayoutIsAnimatingChanged(views::AnimatingLayoutManager* source,
+                                  bool is_animating) override {
+    if (!is_animating)
+      run_loop_.Quit();
+  }
+
+ private:
+  views::AnimatingLayoutManager* const animating_layout_;
+  ScopedObserver<views::AnimatingLayoutManager,
+                 views::AnimatingLayoutManager::Observer>
+      observer_{this};
+  base::RunLoop run_loop_;
+};
+
 namespace autofill {
 
 class SaveCardBubbleViewsFullFormBrowserTest
@@ -349,6 +380,7 @@
     ResetEventWaiterForSequence({DialogEvent::OFFERED_LOCAL_SAVE});
     SubmitForm();
     WaitForObservedEvent();
+    WaitForAnimationToEnd();
     EXPECT_TRUE(FindViewInBubbleById(DialogViewId::MAIN_CONTENT_VIEW_LOCAL)
                     ->GetVisible());
   }
@@ -361,6 +393,7 @@
          DialogEvent::RECEIVED_GET_UPLOAD_DETAILS_RESPONSE});
     SubmitForm();
     WaitForObservedEvent();
+    WaitForAnimationToEnd();
     EXPECT_TRUE(FindViewInBubbleById(DialogViewId::MAIN_CONTENT_VIEW_UPLOAD)
                     ->GetVisible());
     EXPECT_TRUE(
@@ -777,6 +810,18 @@
 
   void WaitForObservedEvent() { event_waiter_->Wait(); }
 
+  void WaitForAnimationToEnd() {
+    if (base::FeatureList::IsEnabled(
+            features::kAutofillEnableToolbarStatusChip)) {
+      AnimatingLayoutWaiter waiter(static_cast<views::AnimatingLayoutManager*>(
+          BrowserView::GetBrowserViewForBrowser(browser())
+              ->toolbar()
+              ->toolbar_account_icon_container()
+              ->GetLayoutManager()));
+      waiter.Wait();
+    }
+  }
+
   network::TestURLLoaderFactory* test_url_loader_factory() {
     return &test_url_loader_factory_;
   }
@@ -2681,7 +2726,6 @@
                        ClickingOnCreditCardIconInStatusChipReshowsBubble) {
   FillForm();
   SubmitFormAndWaitForCardLocalSaveBubble();
-
   ClickOnCloseButton();
   AddEventObserverToController();
   ResetEventWaiterForSequence({DialogEvent::BUBBLE_SHOWN});
diff --git a/chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc b/chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc
index 1ef2be7..91c0181 100644
--- a/chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc
+++ b/chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc
@@ -98,11 +98,11 @@
 #include "ui/views/controls/button/label_button_border.h"
 #include "ui/views/controls/button/menu_button.h"
 #include "ui/views/controls/button/menu_button_controller.h"
+#include "ui/views/controls/highlight_path_generator.h"
 #include "ui/views/controls/label.h"
 #include "ui/views/drag_utils.h"
 #include "ui/views/metrics.h"
 #include "ui/views/style/platform_style.h"
-#include "ui/views/view_class_properties.h"
 #include "ui/views/view_constants.h"
 #include "ui/views/widget/tooltip_manager.h"
 #include "ui/views/widget/widget.h"
@@ -147,16 +147,6 @@
   return ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed(id);
 }
 
-// Set the highlight path for inkdrops and focus rings.
-void SetBookmarkHighlightPath(views::View* host_view) {
-  auto path = std::make_unique<SkPath>();
-  const int radius = ChromeLayoutProvider::Get()->GetCornerRadiusMetric(
-      views::EMPHASIS_MAXIMUM, host_view->size());
-  path->addRoundRect(gfx::RectToSkRect(gfx::Rect(host_view->size())), radius,
-                     radius);
-  host_view->SetProperty(views::kHighlightPathKey, path.release());
-}
-
 std::unique_ptr<views::InkDrop> CreateBookmarkButtonInkDrop(
     std::unique_ptr<views::InkDropImpl> ink_drop) {
   ink_drop->SetShowHighlightOnFocus(!views::PlatformStyle::kPreferFocusRings);
@@ -182,6 +172,7 @@
       : LabelButton(listener, title) {
     SetImageLabelSpacing(ChromeLayoutProvider::Get()->GetDistanceMetric(
         DISTANCE_RELATED_LABEL_HORIZONTAL_LIST));
+    views::InstallPillHighlightPathGenerator(this);
     SetInkDropMode(InkDropMode::ON);
     set_has_ink_drop_action_on_click(true);
     set_ink_drop_visible_opacity(kToolbarInkDropVisibleOpacity);
@@ -207,11 +198,6 @@
   }
 
   // LabelButton:
-  void OnBoundsChanged(const gfx::Rect& previous_bounds) override {
-    SetBookmarkHighlightPath(this);
-    LabelButton::OnBoundsChanged(previous_bounds);
-  }
-
   std::unique_ptr<views::InkDrop> CreateInkDrop() override {
     return CreateBookmarkButtonInkDrop(CreateDefaultFloodFillInkDropImpl());
   }
@@ -318,16 +304,12 @@
       : MenuButton(title, menu_button_listener) {
     SetImageLabelSpacing(ChromeLayoutProvider::Get()->GetDistanceMetric(
         DISTANCE_RELATED_LABEL_HORIZONTAL_LIST));
+    views::InstallPillHighlightPathGenerator(this);
     SetInkDropMode(InkDropMode::ON);
     set_ink_drop_visible_opacity(kToolbarInkDropVisibleOpacity);
   }
 
   // MenuButton:
-  void OnBoundsChanged(const gfx::Rect& previous_bounds) override {
-    SetBookmarkHighlightPath(this);
-    MenuButton::OnBoundsChanged(previous_bounds);
-  }
-
   std::unique_ptr<views::InkDrop> CreateInkDrop() override {
     return CreateBookmarkButtonInkDrop(CreateDefaultFloodFillInkDropImpl());
   }
diff --git a/chrome/browser/ui/views/device_chooser_content_view.cc b/chrome/browser/ui/views/device_chooser_content_view.cc
index 1c083943..7d27c72 100644
--- a/chrome/browser/ui/views/device_chooser_content_view.cc
+++ b/chrome/browser/ui/views/device_chooser_content_view.cc
@@ -37,7 +37,24 @@
 
 }  // namespace
 
-DeviceChooserContentView::BluetoothStatusContainer::BluetoothStatusContainer(
+class BluetoothStatusContainer : public views::View {
+ public:
+  explicit BluetoothStatusContainer(views::ButtonListener* listener);
+
+  void ShowScanningLabelAndThrobber();
+  void ShowReScanButton(bool enabled);
+
+ private:
+  friend class DeviceChooserContentView;
+
+  views::LabelButton* re_scan_button_;
+  views::Throbber* throbber_;
+  views::Label* scanning_label_;
+
+  DISALLOW_COPY_AND_ASSIGN(BluetoothStatusContainer);
+};
+
+BluetoothStatusContainer::BluetoothStatusContainer(
     views::ButtonListener* listener) {
   SetLayoutManager(std::make_unique<views::FillLayout>());
 
@@ -76,16 +93,14 @@
   scanning_label_ = scan_container->AddChildView(std::move(scanning_label));
 }
 
-void DeviceChooserContentView::BluetoothStatusContainer::
-    ShowScanningLabelAndThrobber() {
+void BluetoothStatusContainer::ShowScanningLabelAndThrobber() {
   re_scan_button_->SetVisible(false);
   throbber_->SetVisible(true);
   scanning_label_->SetVisible(true);
   throbber_->Start();
 }
 
-void DeviceChooserContentView::BluetoothStatusContainer::ShowReScanButton(
-    bool enabled) {
+void BluetoothStatusContainer::ShowReScanButton(bool enabled) {
   re_scan_button_->SetVisible(true);
   re_scan_button_->SetEnabled(enabled);
   throbber_->Stop();
@@ -115,7 +130,7 @@
   table_parent_ = AddChildView(
       views::TableView::CreateScrollViewWithTable(std::move(table_view)));
 
-  const auto add_centered_view = [this](auto view) {
+  const auto add_centering_view = [this](auto view) {
     auto* container = AddChildView(std::make_unique<views::View>());
     auto* layout =
         container->SetLayoutManager(std::make_unique<views::BoxLayout>(
@@ -124,24 +139,26 @@
         views::BoxLayout::MainAxisAlignment::kCenter);
     layout->set_cross_axis_alignment(
         views::BoxLayout::CrossAxisAlignment::kCenter);
-    return container->AddChildView(std::move(view));
+    layout->set_inside_border_insets(gfx::Insets(0, 6));
+    container->AddChildView(std::move(view));
+    return container;
   };
 
-  no_options_help_ = add_centered_view(
-      std::make_unique<views::Label>(chooser_controller_->GetNoOptionsText()));
-  no_options_help_->SetMultiLine(true);
+  auto no_options_help =
+      std::make_unique<views::Label>(chooser_controller_->GetNoOptionsText());
+  no_options_help->SetMultiLine(true);
+  no_options_view_ = add_centering_view(std::move(no_options_help));
 
   base::string16 link_text = l10n_util::GetStringUTF16(
       IDS_BLUETOOTH_DEVICE_CHOOSER_TURN_ON_BLUETOOTH_LINK_TEXT);
   size_t offset = 0;
   base::string16 text = l10n_util::GetStringFUTF16(
       IDS_BLUETOOTH_DEVICE_CHOOSER_TURN_ADAPTER_OFF, link_text, &offset);
-  adapter_off_help_ =
-      add_centered_view(std::make_unique<views::StyledLabel>(text, this));
-  adapter_off_help_->AddStyleRange(
+  auto adapter_off_help = std::make_unique<views::StyledLabel>(text, this);
+  adapter_off_help->AddStyleRange(
       gfx::Range(0, link_text.size()),
       views::StyledLabel::RangeStyleInfo::CreateForLink());
-  adapter_off_help_->SetVisible(false);
+  adapter_off_view_ = add_centering_view(std::move(adapter_off_help));
 
   UpdateTableView();
 }
@@ -157,13 +174,6 @@
   return gfx::Size();
 }
 
-void DeviceChooserContentView::OnBoundsChanged(
-    const gfx::Rect& previous_bounds) {
-  constexpr int kMessagePadding = 6;
-  no_options_help_->SizeToFit(width() - 2 * kMessagePadding);
-  adapter_off_help_->SizeToFit(width() - 2 * kMessagePadding);
-}
-
 int DeviceChooserContentView::RowCount() {
   return base::checked_cast<int>(chooser_controller_->NumOptions());
 }
@@ -258,7 +268,6 @@
 void DeviceChooserContentView::StyledLabelLinkClicked(views::StyledLabel* label,
                                                       const gfx::Range& range,
                                                       int event_flags) {
-  DCHECK_EQ(adapter_off_help_, label);
   chooser_controller_->OpenAdapterOffHelpUrl();
 }
 
@@ -349,10 +358,20 @@
 void DeviceChooserContentView::UpdateTableView() {
   bool has_options = adapter_enabled_ && RowCount() > 0;
   table_parent_->SetVisible(has_options);
-  if (chooser_controller_->TableViewAlwaysDisabled())
-    table_view_->SetEnabled(false);
-  else
-    table_view_->SetEnabled(has_options);
-  no_options_help_->SetVisible(!has_options && adapter_enabled_);
-  adapter_off_help_->SetVisible(!adapter_enabled_);
+  table_view_->SetEnabled(has_options &&
+                          !chooser_controller_->TableViewAlwaysDisabled());
+  no_options_view_->SetVisible(!has_options && adapter_enabled_);
+  adapter_off_view_->SetVisible(!adapter_enabled_);
+}
+
+views::LabelButton* DeviceChooserContentView::ReScanButtonForTesting() {
+  return bluetooth_status_container_->re_scan_button_;
+}
+
+views::Throbber* DeviceChooserContentView::ThrobberForTesting() {
+  return bluetooth_status_container_->throbber_;
+}
+
+views::Label* DeviceChooserContentView::ScanningLabelForTesting() {
+  return bluetooth_status_container_->scanning_label_;
 }
diff --git a/chrome/browser/ui/views/device_chooser_content_view.h b/chrome/browser/ui/views/device_chooser_content_view.h
index e6b77e90..a824486 100644
--- a/chrome/browser/ui/views/device_chooser_content_view.h
+++ b/chrome/browser/ui/views/device_chooser_content_view.h
@@ -13,13 +13,13 @@
 #include "ui/base/models/table_model.h"
 #include "ui/gfx/range/range.h"
 #include "ui/views/controls/button/button.h"
-#include "ui/views/controls/label.h"
 #include "ui/views/controls/styled_label_listener.h"
 #include "ui/views/view.h"
 
+class BluetoothStatusContainer;
 namespace views {
+class Label;
 class LabelButton;
-class StyledLabel;
 class TableView;
 class TableViewObserver;
 class Throbber;
@@ -40,7 +40,6 @@
 
   // views::View:
   gfx::Size GetMinimumSize() const override;
-  void OnBoundsChanged(const gfx::Rect& previous_bounds) override;
 
   // ui::TableModel:
   int RowCount() override;
@@ -73,39 +72,23 @@
   void Close();
   void UpdateTableView();
 
+  // Test-only accessors to children.
+  views::TableView* table_view_for_testing() { return table_view_; }
+  views::LabelButton* ReScanButtonForTesting();
+  views::Throbber* ThrobberForTesting();
+  views::Label* ScanningLabelForTesting();
+
  private:
-  friend class ChooserDialogViewTest;
   friend class DeviceChooserContentViewTest;
-  FRIEND_TEST_ALL_PREFIXES(DeviceChooserContentViewTest, ClickRescanLink);
-  FRIEND_TEST_ALL_PREFIXES(DeviceChooserContentViewTest, ClickGetHelpLink);
-
-  class BluetoothStatusContainer : public views::View {
-   public:
-    explicit BluetoothStatusContainer(views::ButtonListener* listener);
-
-    void ShowScanningLabelAndThrobber();
-    void ShowReScanButton(bool enabled);
-
-    views::LabelButton* re_scan_button() { return re_scan_button_; }
-    views::Throbber* throbber() { return throbber_; }
-    views::Label* scanning_label() { return scanning_label_; }
-
-   private:
-    views::LabelButton* re_scan_button_;
-    views::Throbber* throbber_;
-    views::Label* scanning_label_;
-
-    DISALLOW_COPY_AND_ASSIGN(BluetoothStatusContainer);
-  };
 
   std::unique_ptr<ChooserController> chooser_controller_;
 
   bool adapter_enabled_ = true;
 
-  views::TableView* table_view_ = nullptr;
   views::View* table_parent_ = nullptr;
-  views::Label* no_options_help_ = nullptr;
-  views::StyledLabel* adapter_off_help_ = nullptr;
+  views::TableView* table_view_ = nullptr;
+  views::View* no_options_view_ = nullptr;
+  views::View* adapter_off_view_ = nullptr;
   BluetoothStatusContainer* bluetooth_status_container_ = nullptr;
 
   DISALLOW_COPY_AND_ASSIGN(DeviceChooserContentView);
diff --git a/chrome/browser/ui/views/device_chooser_content_view_unittest.cc b/chrome/browser/ui/views/device_chooser_content_view_unittest.cc
index cce955a..cc6a8f1 100644
--- a/chrome/browser/ui/views/device_chooser_content_view_unittest.cc
+++ b/chrome/browser/ui/views/device_chooser_content_view_unittest.cc
@@ -48,7 +48,8 @@
     extra_views_container_ = content_view().CreateExtraView();
 
     ASSERT_NE(nullptr, table_view());
-    ASSERT_NE(nullptr, adapter_off_help_link());
+    ASSERT_NE(nullptr, no_options_view());
+    ASSERT_NE(nullptr, adapter_off_view());
     ASSERT_NE(nullptr, re_scan_button());
     ASSERT_NE(nullptr, throbber());
     ASSERT_NE(nullptr, scanning_label());
@@ -61,21 +62,19 @@
   MockTableViewObserver& table_observer() { return *table_observer_; }
   DeviceChooserContentView& content_view() { return *content_view_; }
 
-  views::TableView* table_view() { return content_view().table_view_; }
+  views::TableView* table_view() {
+    return content_view().table_view_for_testing();
+  }
   views::View* table_parent() { return content_view().table_parent_; }
   ui::TableModel* table_model() { return table_view()->model(); }
-  views::Label* no_options_label() { return content_view().no_options_help_; }
-  views::StyledLabel* adapter_off_help_link() {
-    return content_view().adapter_off_help_;
-  }
+  views::View* no_options_view() { return content_view().no_options_view_; }
+  views::View* adapter_off_view() { return content_view().adapter_off_view_; }
   views::LabelButton* re_scan_button() {
-    return content_view().bluetooth_status_container_->re_scan_button();
+    return content_view().ReScanButtonForTesting();
   }
-  views::Throbber* throbber() {
-    return content_view().bluetooth_status_container_->throbber();
-  }
+  views::Throbber* throbber() { return content_view().ThrobberForTesting(); }
   views::Label* scanning_label() {
-    return content_view().bluetooth_status_container_->scanning_label();
+    return content_view().ScanningLabelForTesting();
   }
 
   void AddUnpairedDevice() {
@@ -105,7 +104,7 @@
   bool IsDeviceSelected() { return !table_view()->selection_model().empty(); }
 
   void ExpectNoDevices() {
-    EXPECT_TRUE(no_options_label()->GetVisible());
+    EXPECT_TRUE(no_options_view()->GetVisible());
     EXPECT_EQ(0, table_view()->GetRowCount());
     // The table should be disabled since there are no (real) options.
     EXPECT_FALSE(table_parent()->GetVisible());
@@ -128,7 +127,7 @@
   EXPECT_CALL(table_observer(), OnSelectionChanged()).Times(0);
 
   ExpectNoDevices();
-  EXPECT_FALSE(adapter_off_help_link()->GetVisible());
+  EXPECT_FALSE(adapter_off_view()->GetVisible());
   EXPECT_FALSE(throbber()->GetVisible());
   EXPECT_FALSE(scanning_label()->GetVisible());
   EXPECT_TRUE(re_scan_button()->GetVisible());
@@ -210,8 +209,8 @@
       FakeBluetoothChooserController::BluetoothStatus::UNAVAILABLE);
 
   EXPECT_FALSE(table_parent()->GetVisible());
-  EXPECT_FALSE(no_options_label()->GetVisible());
-  EXPECT_TRUE(adapter_off_help_link()->GetVisible());
+  EXPECT_FALSE(no_options_view()->GetVisible());
+  EXPECT_TRUE(adapter_off_view()->GetVisible());
   EXPECT_FALSE(throbber()->GetVisible());
   EXPECT_FALSE(scanning_label()->GetVisible());
   EXPECT_TRUE(re_scan_button()->GetVisible());
@@ -221,7 +220,7 @@
   controller()->SetBluetoothStatus(
       FakeBluetoothChooserController::BluetoothStatus::IDLE);
   ExpectNoDevices();
-  EXPECT_FALSE(adapter_off_help_link()->GetVisible());
+  EXPECT_FALSE(adapter_off_view()->GetVisible());
   EXPECT_FALSE(throbber()->GetVisible());
   EXPECT_FALSE(scanning_label()->GetVisible());
   EXPECT_TRUE(re_scan_button()->GetVisible());
@@ -233,7 +232,7 @@
       FakeBluetoothChooserController::BluetoothStatus::SCANNING);
   EXPECT_EQ(0, table_view()->GetRowCount());
   EXPECT_FALSE(table_view()->GetEnabled());
-  EXPECT_FALSE(adapter_off_help_link()->GetVisible());
+  EXPECT_FALSE(adapter_off_view()->GetVisible());
   EXPECT_TRUE(throbber()->GetVisible());
   EXPECT_TRUE(scanning_label()->GetVisible());
   EXPECT_FALSE(re_scan_button()->GetVisible());
@@ -241,7 +240,7 @@
   AddUnpairedDevice();
   EXPECT_EQ(1, table_view()->GetRowCount());
   EXPECT_TRUE(table_view()->GetEnabled());
-  EXPECT_FALSE(adapter_off_help_link()->GetVisible());
+  EXPECT_FALSE(adapter_off_view()->GetVisible());
   EXPECT_TRUE(throbber()->GetVisible());
   EXPECT_TRUE(scanning_label()->GetVisible());
   EXPECT_FALSE(IsDeviceSelected());
@@ -250,7 +249,8 @@
 
 TEST_F(DeviceChooserContentViewTest, ClickAdapterOffHelpLink) {
   EXPECT_CALL(*controller(), OpenAdapterOffHelpUrl()).Times(1);
-  adapter_off_help_link()->LinkClicked(nullptr, 0);
+  static_cast<views::StyledLabel*>(adapter_off_view()->children().front())
+      ->LinkClicked(nullptr, 0);
 }
 
 TEST_F(DeviceChooserContentViewTest, ClickRescanButton) {
diff --git a/chrome/browser/ui/views/extensions/chooser_dialog_view_unittest.cc b/chrome/browser/ui/views/extensions/chooser_dialog_view_unittest.cc
index 28d49ce0..0254529 100644
--- a/chrome/browser/ui/views/extensions/chooser_dialog_view_unittest.cc
+++ b/chrome/browser/ui/views/extensions/chooser_dialog_view_unittest.cc
@@ -63,12 +63,13 @@
   }
 
   views::TableView* table_view() {
-    return dialog_->device_chooser_content_view_for_test()->table_view_;
+    return dialog_->device_chooser_content_view_for_test()
+        ->table_view_for_testing();
   }
 
   views::LabelButton* re_scan_button() {
     return dialog_->device_chooser_content_view_for_test()
-        ->bluetooth_status_container_->re_scan_button();
+        ->ReScanButtonForTesting();
   }
 
   void AddDevice() {
diff --git a/chrome/browser/ui/views/extensions/extensions_menu_view_browsertest.cc b/chrome/browser/ui/views/extensions/extensions_menu_view_browsertest.cc
index ec7d76c..288b419b 100644
--- a/chrome/browser/ui/views/extensions/extensions_menu_view_browsertest.cc
+++ b/chrome/browser/ui/views/extensions/extensions_menu_view_browsertest.cc
@@ -36,9 +36,8 @@
   explicit AnimatingLayoutWaiter(
       views::AnimatingLayoutManager* animating_layout)
       : animating_layout_(animating_layout) {
-    animating_layout_->AddObserver(this);
+    observer_.Add(animating_layout_);
   }
-  ~AnimatingLayoutWaiter() override { animating_layout_->RemoveObserver(this); }
 
   void Wait() {
     if (!animating_layout_->is_animating())
@@ -55,6 +54,9 @@
 
  private:
   views::AnimatingLayoutManager* const animating_layout_;
+  ScopedObserver<views::AnimatingLayoutManager,
+                 views::AnimatingLayoutManager::Observer>
+      observer_{this};
   base::RunLoop run_loop_;
 };
 
@@ -120,11 +122,11 @@
         ->primary_action_button_for_testing()
         ->button_controller()
         ->OnMouseReleased(click_event);
-    AnimatingLayoutWaiter waiter(
+    AnimatingLayoutWaiter waiter(static_cast<views::AnimatingLayoutManager*>(
         BrowserView::GetBrowserViewForBrowser(browser())
             ->toolbar()
             ->extensions_container()
-            ->animating_layout_for_testing());
+            ->GetLayoutManager()));
     waiter.Wait();
   }
 
diff --git a/chrome/browser/ui/views/extensions/extensions_toolbar_container.cc b/chrome/browser/ui/views/extensions/extensions_toolbar_container.cc
index fad09e28..d140207 100644
--- a/chrome/browser/ui/views/extensions/extensions_toolbar_container.cc
+++ b/chrome/browser/ui/views/extensions/extensions_toolbar_container.cc
@@ -13,8 +13,6 @@
 #include "chrome/browser/ui/views/extensions/extensions_toolbar_button.h"
 #include "chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views.h"
 #include "ui/views/layout/animating_layout_manager.h"
-#include "ui/views/layout/flex_layout.h"
-#include "ui/views/view_class_properties.h"
 #include "ui/views/widget/widget_observer.h"
 
 struct ExtensionsToolbarContainer::DropInfo {
@@ -38,15 +36,6 @@
       model_(ToolbarActionsModel::Get(browser_->profile())),
       model_observer_(this),
       extensions_button_(new ExtensionsToolbarButton(browser_, this)) {
-  animating_layout_ =
-      SetLayoutManager(std::make_unique<views::AnimatingLayoutManager>());
-  animating_layout_->SetShouldAnimateBounds(true);
-  auto* flex_layout = animating_layout_->SetTargetLayoutManager(
-      std::make_unique<views::FlexLayout>());
-  flex_layout->SetCollapseMargins(true)
-      .SetIgnoreDefaultMainAxisMargins(true)
-      .SetDefault(views::kMarginsKey,
-                  gfx::Insets(0, GetLayoutConstant(TOOLBAR_ELEMENT_PADDING)));
   model_observer_.Add(model_);
   // Do not flip the Extensions icon in RTL.
   extensions_button_->EnableCanvasFlippingForRTLUI(false);
@@ -140,7 +129,8 @@
   popped_out_action_ = action;
   icons_[popped_out_action_->GetId()]->SetVisible(true);
   ReorderViews();
-  animating_layout_->RunOrQueueAction(closure);
+  static_cast<views::AnimatingLayoutManager*>(GetLayoutManager())
+      ->RunOrQueueAction(closure);
 }
 
 void ExtensionsToolbarContainer::ShowToolbarActionBubble(
@@ -153,10 +143,11 @@
 
   anchor_view->SetVisible(true);
 
-  animating_layout_->RunOrQueueAction(
-      base::BindOnce(&ExtensionsToolbarContainer::ShowActiveBubble,
-                     weak_ptr_factory_.GetWeakPtr(), anchor_view,
-                     base::Passed(std::move(controller))));
+  static_cast<views::AnimatingLayoutManager*>(GetLayoutManager())
+      ->RunOrQueueAction(
+          base::BindOnce(&ExtensionsToolbarContainer::ShowActiveBubble,
+                         weak_ptr_factory_.GetWeakPtr(), anchor_view,
+                         base::Passed(std::move(controller))));
 }
 
 void ExtensionsToolbarContainer::ShowToolbarActionBubbleAsync(
diff --git a/chrome/browser/ui/views/extensions/extensions_toolbar_container.h b/chrome/browser/ui/views/extensions/extensions_toolbar_container.h
index 7ad89820..2b81f8d 100644
--- a/chrome/browser/ui/views/extensions/extensions_toolbar_container.h
+++ b/chrome/browser/ui/views/extensions/extensions_toolbar_container.h
@@ -20,10 +20,6 @@
 class ToolbarActionViewController;
 class ToolbarActionsBarBubbleViews;
 
-namespace views {
-class AnimatingLayoutManager;
-}  // namespace views
-
 // Container for extensions shown in the toolbar. These include pinned
 // extensions and extensions that are 'popped out' transitively to show dialogs
 // or be called out to the user.
@@ -49,10 +45,6 @@
     return active_bubble_;
   }
 
-  views::AnimatingLayoutManager* animating_layout_for_testing() {
-    return animating_layout_;
-  }
-
   // ToolbarIconContainerView:
   void UpdateAllIcons() override;
 
@@ -170,8 +162,6 @@
   // there is none.
   std::unique_ptr<DropInfo> drop_info_;
 
-  views::AnimatingLayoutManager* animating_layout_ = nullptr;
-
   base::WeakPtrFactory<ExtensionsToolbarContainer> weak_ptr_factory_{this};
 
   DISALLOW_COPY_AND_ASSIGN(ExtensionsToolbarContainer);
diff --git a/chrome/browser/ui/views/frame/browser_view.cc b/chrome/browser/ui/views/frame/browser_view.cc
index babcc47..af42012 100644
--- a/chrome/browser/ui/views/frame/browser_view.cc
+++ b/chrome/browser/ui/views/frame/browser_view.cc
@@ -286,12 +286,14 @@
           gfx::Point(view->GetMirroredX(), view->y()));
   PaintBackground(canvas, view->GetThemeProvider(), view->GetLocalBounds(),
                   background_image_offset);
+
   if (view->height() >= toolbar_overlap) {
-    BrowserView::Paint1pxHorizontalLine(
-        canvas,
-        view->GetThemeProvider()->GetColor(
-            ThemeProperties::COLOR_TOOLBAR_CONTENT_AREA_SEPARATOR),
-        view->GetLocalBounds(), true);
+    const SkColor separator_color = view->GetThemeProvider()->GetColor(
+        ThemeProperties::COLOR_TOOLBAR_CONTENT_AREA_SEPARATOR);
+    const gfx::Rect bounds = view->GetLocalBounds();
+    canvas->DrawLine(gfx::Point(bounds.x(), bounds.bottom() - 1),
+                     gfx::Point(bounds.right(), bounds.bottom() - 1),
+                     separator_color);
   }
 }
 
@@ -515,21 +517,6 @@
 }
 
 // static
-void BrowserView::Paint1pxHorizontalLine(gfx::Canvas* canvas,
-                                         SkColor color,
-                                         const gfx::Rect& bounds,
-                                         bool at_bottom) {
-  gfx::ScopedCanvas scoped_canvas(canvas);
-  const float scale = canvas->UndoDeviceScaleFactor();
-  gfx::RectF rect(gfx::ScaleRect(gfx::RectF(bounds), scale));
-  const float inset = rect.height() - 1;
-  rect.Inset(0, at_bottom ? inset : 0, 0, at_bottom ? 0 : inset);
-  cc::PaintFlags flags;
-  flags.setColor(color);
-  canvas->sk_canvas()->drawRect(gfx::RectFToSkRect(rect), flags);
-}
-
-// static
 void BrowserView::SetDisableRevealerDelayForTesting(bool disable) {
   g_disable_revealer_delay_for_testing = disable;
 }
diff --git a/chrome/browser/ui/views/frame/browser_view.h b/chrome/browser/ui/views/frame/browser_view.h
index d2635be..e65eccc8 100644
--- a/chrome/browser/ui/views/frame/browser_view.h
+++ b/chrome/browser/ui/views/frame/browser_view.h
@@ -126,14 +126,6 @@
   // Returns the BrowserView used for the specified Browser.
   static BrowserView* GetBrowserViewForBrowser(const Browser* browser);
 
-  // Paints a 1 device-pixel-thick horizontal line (regardless of device scale
-  // factor) at either the very bottom or very top of the interior of |bounds|,
-  // depending on |at_bottom|.
-  static void Paint1pxHorizontalLine(gfx::Canvas* canvas,
-                                     SkColor color,
-                                     const gfx::Rect& bounds,
-                                     bool at_bottom);
-
   // After calling RevealTabStripIfNeeded(), there is normally a delay before
   // the tabstrip is hidden. Tests can use this function to disable that delay
   // (and hide immediately).
diff --git a/chrome/browser/ui/views/frame/opaque_browser_frame_view.cc b/chrome/browser/ui/views/frame/opaque_browser_frame_view.cc
index 6d26633d1..020cd3a 100644
--- a/chrome/browser/ui/views/frame/opaque_browser_frame_view.cc
+++ b/chrome/browser/ui/views/frame/opaque_browser_frame_view.cc
@@ -711,15 +711,14 @@
 
 void OpaqueBrowserFrameView::PaintClientEdge(gfx::Canvas* canvas) const {
   const bool tabstrip_visible = browser_view()->IsTabStripVisible();
-  gfx::Rect client_bounds =
+  const gfx::Rect client_bounds =
       layout_->CalculateClientAreaBounds(width(), height());
   int y = client_bounds.y();
   // If the toolbar isn't going to draw a top edge for us, draw one ourselves.
   if (!tabstrip_visible) {
-    const gfx::Rect line_bounds(client_bounds.x(), client_bounds.y() - 1,
-                                client_bounds.width(), 1);
-    BrowserView::Paint1pxHorizontalLine(canvas, GetToolbarTopSeparatorColor(),
-                                        line_bounds, true);
+    canvas->DrawLine(gfx::Point(client_bounds.x(), client_bounds.y() - 1),
+                     gfx::Point(client_bounds.right(), client_bounds.y() - 1),
+                     GetToolbarTopSeparatorColor());
   }
 
   // In maximized mode, the only edge to draw is the top one, so we're done.
@@ -733,7 +732,7 @@
   }
 
   // For popup windows, draw location bar sides.
-  SkColor location_bar_border_color =
+  const SkColor location_bar_border_color =
       browser_view()->toolbar()->location_bar()->GetOpaqueBorderColor(
           browser_view()->IsIncognito());
   if (!tabstrip_visible && IsToolbarVisible()) {
diff --git a/chrome/browser/ui/views/hats/hats_browsertest.cc b/chrome/browser/ui/views/hats/hats_browsertest.cc
index 6adb38977..f878a4b 100644
--- a/chrome/browser/ui/views/hats/hats_browsertest.cc
+++ b/chrome/browser/ui/views/hats/hats_browsertest.cc
@@ -51,6 +51,18 @@
     return HatsWebDialog::GetDialogContentURL();
   }
 
+  void OnMainFrameResourceLoadComplete(
+      const content::mojom::ResourceLoadInfo& resource_load_info) {
+    if (resource_load_info.net_error == net::Error::OK &&
+        resource_load_info.url == resource_url_) {
+      // The resource is loaded successfully.
+      resource_loaded_ = true;
+    }
+  }
+
+  void set_resource_url(const GURL& url) { resource_url_ = url; }
+  bool resource_loaded() { return resource_loaded_; }
+
   MOCK_METHOD0(OnWebContentsFinishedLoad, void());
   MOCK_METHOD0(OnLoadTimedOut, void());
 
@@ -61,6 +73,7 @@
 
   base::TimeDelta loading_timeout_;
   GURL content_url_;
+  GURL resource_url_;
 };
 
 class HatsWebDialogBrowserTest : public InProcessBrowserTest {
@@ -104,3 +117,39 @@
       .WillOnce(testing::Invoke(&run_loop, &base::RunLoop::Quit));
   run_loop.Run();
 }
+
+// Test the correct state will be set when the resource fails to load.
+// Load with_inline_js.html which has an inline javascript that points to a
+// nonexistent file.
+IN_PROC_BROWSER_TEST_F(HatsWebDialogBrowserTest, LoadFailureInPreloading) {
+  base::FilePath test_data_dir;
+  base::PathService::Get(chrome::DIR_TEST_DATA, &test_data_dir);
+  std::string contents;
+  {
+    base::ScopedAllowBlockingForTesting allow_blocking;
+    EXPECT_TRUE(base::ReadFileToString(
+        test_data_dir.AppendASCII("hats").AppendASCII("with_inline_js.html"),
+        &contents));
+  }
+
+  ASSERT_TRUE(embedded_test_server()->Start());
+
+  constexpr char kJSPath[] = "/hats/nonexistent.js";
+  constexpr char kSrcPlaceholder[] = "$JS_SRC";
+  GURL url = embedded_test_server()->GetURL(kJSPath);
+  size_t pos = contents.find(kSrcPlaceholder);
+  EXPECT_NE(pos, std::string::npos);
+  contents.replace(pos, strlen(kSrcPlaceholder), url.spec());
+
+  TestHatsWebDialog* dialog =
+      Create(browser(), base::TimeDelta::FromSeconds(100),
+             GURL("data:text/html;charset=utf-8," + contents));
+  dialog->set_resource_url(url);
+  base::RunLoop run_loop;
+  EXPECT_CALL(*dialog, OnWebContentsFinishedLoad)
+      .WillOnce(testing::Invoke([dialog, &run_loop]() {
+        EXPECT_FALSE(dialog->resource_loaded());
+        run_loop.Quit();
+      }));
+  run_loop.Run();
+}
diff --git a/chrome/browser/ui/views/hats/hats_web_dialog.cc b/chrome/browser/ui/views/hats/hats_web_dialog.cc
index c249ef9..fd4e2e8 100644
--- a/chrome/browser/ui/views/hats/hats_web_dialog.cc
+++ b/chrome/browser/ui/views/hats/hats_web_dialog.cc
@@ -36,10 +36,11 @@
 // Placeholder string in html file to be replaced when the file is loaded.
 constexpr char kScriptSrcReplacementToken[] = "scriptSrc";
 
+// Google consumer survey host site.
+constexpr char kSurveyHost[] =
+    "https://www.google.com/insights/consumersurveys";
 // Base URL to fetch the Google consumer survey script.
-constexpr char kBaseFormatUrl[] =
-    "https://www.google.com/insights/consumersurveys/"
-    "async_survey?site=%s&force_https=1&sc=%s";
+constexpr char kBaseFormatUrl[] = "%s/async_survey?site=%s&force_https=1&sc=%s";
 
 // Returns the local HaTS HTML file as a string with the correct Hats script
 // URL.
@@ -53,8 +54,8 @@
       ui::ResourceBundle::GetSharedInstance().GetRawDataResource(
           IDR_DESKTOP_HATS_HTML);
   ui::TemplateReplacements replacements;
-  replacements[kScriptSrcReplacementToken] =
-      base::StringPrintf(kBaseFormatUrl, site_id.c_str(), site_context.c_str());
+  replacements[kScriptSrcReplacementToken] = base::StringPrintf(
+      kBaseFormatUrl, kSurveyHost, site_id.c_str(), site_context.c_str());
   return ui::ReplaceTemplateExpressions(raw_html, replacements);
 }
 
@@ -148,9 +149,36 @@
     return;
   loading_timer_.Stop();
 
-  HatsBubbleView::Show(
-      browser_, base::BindOnce(&HatsWebDialog::Show, weak_factory_.GetWeakPtr(),
-                               preloading_widget_));
+  if (resource_loaded_) {
+    // Only after the confirmation that we have already loaded the resource, we
+    // will proceed with showing the bubble.
+    HatsBubbleView::Show(browser_, base::BindOnce(&HatsWebDialog::Show,
+                                                  weak_factory_.GetWeakPtr(),
+                                                  preloading_widget_));
+  } else {
+    preloading_widget_->Close();
+  }
+}
+
+void HatsWebDialog::OnMainFrameResourceLoadComplete(
+    const content::mojom::ResourceLoadInfo& resource_load_info) {
+  // Due to https://crbug.com/1011433, we don't always get called due to failed
+  // loading for javascript resource. So, We monitor all the resource load,
+  // and explicitly HaTS library code. We only claim |resource_loaded_| is true
+  // if HaTS library code is loaded successfully, thus this function is called,
+  // and there isn't any error for loading other resources.
+  // TODO(weili): once the bug is fixed, we no longer need this check nor
+  // |resource_loaded_|, remove them then.
+  if (resource_load_info.net_error == net::Error::OK) {
+    if (resource_load_info.url.spec().find(kSurveyHost) == 0) {
+      // The resource from survey host is loaded successfully.
+      resource_loaded_ = true;
+    }
+  } else {
+    // Any error indicates some resource failed to load. Exit early.
+    loading_timer_.Stop();
+    preloading_widget_->Close();
+  }
 }
 
 void HatsWebDialog::OnLoadTimedOut() {
diff --git a/chrome/browser/ui/views/hats/hats_web_dialog.h b/chrome/browser/ui/views/hats/hats_web_dialog.h
index 983644a..0ef33a49 100644
--- a/chrome/browser/ui/views/hats/hats_web_dialog.h
+++ b/chrome/browser/ui/views/hats/hats_web_dialog.h
@@ -56,6 +56,8 @@
   bool HandleContextMenu(content::RenderFrameHost* render_frame_host,
                          const content::ContextMenuParams& params) override;
   void OnWebContentsFinishedLoad() override;
+  void OnMainFrameResourceLoadComplete(
+      const content::mojom::ResourceLoadInfo& resource_load_info) override;
 
   // These are virtual for tests.
   virtual void OnLoadTimedOut();
@@ -81,6 +83,9 @@
   // user.
   views::Widget* preloading_widget_{nullptr};
 
+  // Indicate whether HaTS resources were loaded successfully.
+  bool resource_loaded_{false};
+
   base::WeakPtrFactory<HatsWebDialog> weak_factory_{this};
 
   DISALLOW_COPY_AND_ASSIGN(HatsWebDialog);
diff --git a/chrome/browser/ui/views/infobars/infobar_view.cc b/chrome/browser/ui/views/infobars/infobar_view.cc
index b272de0..7054bb0 100644
--- a/chrome/browser/ui/views/infobars/infobar_view.cc
+++ b/chrome/browser/ui/views/infobars/infobar_view.cc
@@ -143,7 +143,7 @@
     const int margin_height = margins ? margins->height() : 0;
     height = std::max(height, child->height() + margin_height);
   }
-  SetTargetHeight(height + GetSeparatorHeightDip());
+  SetTargetHeight(height + GetSeparatorHeight());
 }
 
 void InfoBarView::Layout() {
@@ -214,7 +214,9 @@
   if (ShouldDrawSeparator()) {
     const SkColor color =
         GetColor(ThemeProperties::COLOR_TOOLBAR_CONTENT_AREA_SEPARATOR);
-    BrowserView::Paint1pxHorizontalLine(canvas, color, GetLocalBounds(), false);
+    const gfx::Rect local_bounds = GetLocalBounds();
+    canvas->DrawLine(gfx::Point(local_bounds.x(), local_bounds.y()),
+                     gfx::Point(local_bounds.right(), local_bounds.y()), color);
   }
 }
 
@@ -304,7 +306,7 @@
 }
 
 int InfoBarView::OffsetY(views::View* view) const {
-  return GetSeparatorHeightDip() +
+  return GetSeparatorHeight() +
          std::max((target_height() - view->height()) / 2, 0) -
          (target_height() - height());
 }
@@ -365,24 +367,14 @@
   return parent() && parent()->children().front() != this;
 }
 
-int InfoBarView::GetSeparatorHeightDip() const {
+int InfoBarView::GetSeparatorHeight() const {
   // We only need a separator for infobars after the first; the topmost infobar
   // uses the toolbar as its top separator.
   //
-  // Ideally the separator would take out 1 px in layout, but since we lay out
-  // in DIPs, we reserve 1 DIP below scale factor 2x, and 0 DIPs at 2 or above.
-  // This way the padding above the infobar content will never be more than 1 px
-  // from its ideal value.
-  //
   // This only works because all infobars have padding at the top; if we
   // actually draw all the way to the top, we'd risk drawing a separator atop
   // some infobar content.
-  auto scale_factor = [this]() {
-    auto* widget = GetWidget();
-    // There may be no widget in tests.
-    return widget ? widget->GetCompositor()->device_scale_factor() : 1;
-  };
-  return (ShouldDrawSeparator() && (scale_factor() < 2)) ? 1 : 0;
+  return ShouldDrawSeparator() ? 1 : 0;
 }
 
 SkColor InfoBarView::GetColor(int id) const {
diff --git a/chrome/browser/ui/views/infobars/infobar_view.h b/chrome/browser/ui/views/infobars/infobar_view.h
index 78738b68..2eb006a 100644
--- a/chrome/browser/ui/views/infobars/infobar_view.h
+++ b/chrome/browser/ui/views/infobars/infobar_view.h
@@ -98,9 +98,9 @@
   // Returns whether this infobar should draw a 1 px separator at its top.
   bool ShouldDrawSeparator() const;
 
-  // Returns how many DIPs the container should reserve for a separator between
+  // Returns how much space the container should reserve for a separator between
   // infobars, in addition to the height of the infobars themselves.
-  int GetSeparatorHeightDip() const;
+  int GetSeparatorHeight() const;
 
   // Returns the current color for the theme property |id|.  Will return the
   // wrong value if no theme provider is available.
diff --git a/chrome/browser/ui/views/layout/interpolating_layout_manager_unittest.cc b/chrome/browser/ui/views/layout/interpolating_layout_manager_unittest.cc
index a07b075..fa88f44 100644
--- a/chrome/browser/ui/views/layout/interpolating_layout_manager_unittest.cc
+++ b/chrome/browser/ui/views/layout/interpolating_layout_manager_unittest.cc
@@ -11,26 +11,24 @@
 #include "ui/views/test/test_views.h"
 #include "ui/views/view.h"
 
-using namespace views;
-
 namespace {
 
-class TestLayout : public LayoutManagerBase {
+class TestLayout : public views::LayoutManagerBase {
  public:
   explicit TestLayout(int size = 0) : size_(size) {}
 
   int num_layouts_generated() const { return num_layouts_generated_; }
 
-  ProposedLayout CalculateProposedLayout(
-      const SizeBounds& size_bounds) const override {
+  views::ProposedLayout CalculateProposedLayout(
+      const views::SizeBounds& size_bounds) const override {
     ++num_layouts_generated_;
-    ProposedLayout layout;
+    views::ProposedLayout layout;
     int x = size_;
     for (auto it = host_view()->children().begin();
          it != host_view()->children().end(); ++it) {
       if (!IsChildIncludedInLayout(*it))
         continue;
-      ChildLayout child_layout;
+      views::ChildLayout child_layout;
       child_layout.child_view = *it;
       child_layout.visible = true;
       child_layout.bounds = gfx::Rect(x, 1, size_, size_);
@@ -46,8 +44,8 @@
   mutable int num_layouts_generated_ = 0;
 };
 
-void CompareProposedLayouts(const ProposedLayout& left,
-                            const ProposedLayout& right) {
+void CompareProposedLayouts(const views::ProposedLayout& left,
+                            const views::ProposedLayout& right) {
   EXPECT_EQ(left.host_size, right.host_size);
   EXPECT_EQ(left.child_layouts.size(), right.child_layouts.size());
   for (auto left_it = left.child_layouts.begin(),
@@ -67,17 +65,17 @@
 class InterpolatingLayoutManagerTest : public testing::Test {
  public:
   void SetUp() override {
-    host_view_ = std::make_unique<View>();
+    host_view_ = std::make_unique<views::View>();
     layout_manager_ = host_view_->SetLayoutManager(
         std::make_unique<InterpolatingLayoutManager>());
   }
 
   InterpolatingLayoutManager* layout_manager() { return layout_manager_; }
-  View* host_view() { return host_view_.get(); }
+  views::View* host_view() { return host_view_.get(); }
 
  private:
   InterpolatingLayoutManager* layout_manager_ = nullptr;
-  std::unique_ptr<View> host_view_;
+  std::unique_ptr<views::View> host_view_;
 };
 
 TEST_F(InterpolatingLayoutManagerTest, AddLayout) {
@@ -191,7 +189,7 @@
       layout_manager()->AddLayout(std::make_unique<TestLayout>());
   TestLayout* const second_layout =
       layout_manager()->AddLayout(std::make_unique<TestLayout>(), {4, 2});
-  layout_manager()->SetOrientation(LayoutOrientation::kVertical);
+  layout_manager()->SetOrientation(views::LayoutOrientation::kVertical);
   EXPECT_EQ(0, first_layout->num_layouts_generated());
   EXPECT_EQ(0, second_layout->num_layouts_generated());
   layout_manager()->GetProposedLayout({2, 6});
@@ -237,7 +235,7 @@
 }
 
 TEST_F(InterpolatingLayoutManagerTest, GetPreferredHeightForWidth_Vertical) {
-  layout_manager()->SetOrientation(LayoutOrientation::kVertical);
+  layout_manager()->SetOrientation(views::LayoutOrientation::kVertical);
   layout_manager()->AddLayout(std::make_unique<TestLayout>(5));
   TestLayout* const second_layout =
       layout_manager()->AddLayout(std::make_unique<TestLayout>(10), {5, 5});
@@ -252,7 +250,7 @@
 }
 
 TEST_F(InterpolatingLayoutManagerTest, GetPreferredHeightForWidth_Horizontal) {
-  layout_manager()->SetOrientation(LayoutOrientation::kHorizontal);
+  layout_manager()->SetOrientation(views::LayoutOrientation::kHorizontal);
   TestLayout* const first_layout =
       layout_manager()->AddLayout(std::make_unique<TestLayout>(5));
   TestLayout* const second_layout =
@@ -274,7 +272,8 @@
 }
 
 TEST_F(InterpolatingLayoutManagerTest, GetProposedLayout) {
-  View* const child_view = host_view()->AddChildView(std::make_unique<View>());
+  views::View* const child_view =
+      host_view()->AddChildView(std::make_unique<views::View>());
   TestLayout* const first_layout =
       layout_manager()->AddLayout(std::make_unique<TestLayout>(5));
   TestLayout* const second_layout =
@@ -284,9 +283,9 @@
   constexpr gfx::Size kLargeSize{11, 10};
   constexpr gfx::Size kOneThirdSize{7, 10};
   constexpr gfx::Size kOneHalfSize{8, 10};
-  const ProposedLayout expected_default =
+  const views::ProposedLayout expected_default =
       first_layout->GetProposedLayout(kSmallSize);
-  const ProposedLayout expected_other =
+  const views::ProposedLayout expected_other =
       second_layout->GetProposedLayout(kLargeSize);
 
   CompareProposedLayouts(expected_default,
@@ -294,13 +293,14 @@
   CompareProposedLayouts(expected_other,
                          layout_manager()->GetProposedLayout(kLargeSize));
 
-  ProposedLayout actual = layout_manager()->GetProposedLayout(kOneThirdSize);
+  views::ProposedLayout actual =
+      layout_manager()->GetProposedLayout(kOneThirdSize);
   EXPECT_EQ(gfx::Tween::SizeValueBetween(0.3333, expected_default.host_size,
                                          expected_other.host_size),
             actual.host_size);
   ASSERT_EQ(1U, actual.child_layouts.size());
   EXPECT_EQ(child_view, actual.child_layouts[0].child_view);
-  EXPECT_EQ(true, actual.child_layouts[0].visible);
+  EXPECT_TRUE(actual.child_layouts[0].visible);
   EXPECT_EQ(gfx::Tween::RectValueBetween(
                 0.3333, expected_default.child_layouts[0].bounds,
                 expected_other.child_layouts[0].bounds),
@@ -312,7 +312,7 @@
             actual.host_size);
   ASSERT_EQ(1U, actual.child_layouts.size());
   EXPECT_EQ(child_view, actual.child_layouts[0].child_view);
-  EXPECT_EQ(true, actual.child_layouts[0].visible);
+  EXPECT_TRUE(actual.child_layouts[0].visible);
   EXPECT_EQ(gfx::Tween::RectValueBetween(
                 0.5, expected_default.child_layouts[0].bounds,
                 expected_other.child_layouts[0].bounds),
diff --git a/chrome/browser/ui/views/location_bar/custom_tab_bar_view.cc b/chrome/browser/ui/views/location_bar/custom_tab_bar_view.cc
index 8503659..1fed40bb 100644
--- a/chrome/browser/ui/views/location_bar/custom_tab_bar_view.cc
+++ b/chrome/browser/ui/views/location_bar/custom_tab_bar_view.cc
@@ -36,6 +36,7 @@
 #include "ui/views/background.h"
 #include "ui/views/controls/button/image_button.h"
 #include "ui/views/controls/button/image_button_factory.h"
+#include "ui/views/controls/highlight_path_generator.h"
 #include "ui/views/controls/menu/menu_runner.h"
 #include "ui/views/layout/flex_layout.h"
 #include "ui/views/layout/flex_layout_types.h"
@@ -77,10 +78,7 @@
       gfx::Insets(GetLayoutConstant(LOCATION_BAR_CHILD_INTERIOR_PADDING))));
   close_button->SizeToPreferredSize();
 
-  // Use a circular ink drop.
-  auto highlight_path = std::make_unique<SkPath>();
-  highlight_path->addOval(gfx::RectToSkRect(gfx::Rect(close_button->size())));
-  close_button->SetProperty(views::kHighlightPathKey, highlight_path.release());
+  views::InstallCircleHighlightPathGenerator(close_button.get());
 
   return close_button;
 }
diff --git a/chrome/browser/ui/views/location_bar/location_bar_view.cc b/chrome/browser/ui/views/location_bar/location_bar_view.cc
index 83d2384d..499a0b90 100644
--- a/chrome/browser/ui/views/location_bar/location_bar_view.cc
+++ b/chrome/browser/ui/views/location_bar/location_bar_view.cc
@@ -1021,8 +1021,11 @@
 
   gfx::Rect bounds(GetContentsBounds());
   const SkColor border_color = GetOpaqueBorderColor(profile_->IsOffTheRecord());
-  BrowserView::Paint1pxHorizontalLine(canvas, border_color, bounds, false);
-  BrowserView::Paint1pxHorizontalLine(canvas, border_color, bounds, true);
+  canvas->DrawLine(gfx::PointF(bounds.x(), bounds.y()),
+                   gfx::PointF(bounds.right(), bounds.y()), border_color);
+  canvas->DrawLine(gfx::PointF(bounds.x(), bounds.bottom() - 1),
+                   gfx::PointF(bounds.right(), bounds.bottom() - 1),
+                   border_color);
 }
 
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/chrome/browser/ui/views/location_bar/selected_keyword_view.cc b/chrome/browser/ui/views/location_bar/selected_keyword_view.cc
index 110a39d..b25913a 100644
--- a/chrome/browser/ui/views/location_bar/selected_keyword_view.cc
+++ b/chrome/browser/ui/views/location_bar/selected_keyword_view.cc
@@ -40,6 +40,10 @@
                                  GetTextColor()));
 }
 
+void SelectedKeywordView::OnBoundsChanged(const gfx::Rect& previous_bounds) {
+  SetLabelForCurrentWidth();
+}
+
 SkColor SelectedKeywordView::GetTextColor() const {
   return location_bar_->GetColor(OmniboxPart::LOCATION_BAR_SELECTED_KEYWORD);
 }
@@ -58,18 +62,6 @@
   return GetSizeForLabelWidth(0);
 }
 
-void SelectedKeywordView::Layout() {
-  // Keep showing the full label as long as there's more than enough width for
-  // the partial label. Otherwise there will be empty space displayed next to
-  // the partial label.
-  bool use_full_label =
-      width() >
-      GetSizeForLabelWidth(partial_label_.GetPreferredSize().width()).width();
-  SetLabel(use_full_label ? full_label_.GetText() : partial_label_.GetText());
-
-  IconLabelBubbleView::Layout();
-}
-
 void SelectedKeywordView::SetKeyword(const base::string16& keyword) {
   keyword_ = keyword;
   if (keyword.empty())
@@ -88,13 +80,12 @@
           ? short_name
           : l10n_util::GetStringFUTF16(IDS_OMNIBOX_KEYWORD_TEXT_MD, short_name);
   full_label_.SetText(full_name);
-
   partial_label_.SetText(short_name);
 
   // Update the label now so ShouldShowLabel() works correctly when the parent
   // class is calculating the preferred size. It will be updated again in
   // Layout(), taking into account how much space has actually been allotted.
-  SetLabel(full_name);
+  SetLabelForCurrentWidth();
 }
 
 int SelectedKeywordView::GetExtraInternalSpacing() const {
@@ -105,3 +96,13 @@
 const char* SelectedKeywordView::GetClassName() const {
   return "SelectedKeywordView";
 }
+
+void SelectedKeywordView::SetLabelForCurrentWidth() {
+  // Keep showing the full label as long as there's more than enough width for
+  // the partial label. Otherwise there will be empty space displayed next to
+  // the partial label.
+  bool use_full_label =
+      width() >
+      GetSizeForLabelWidth(partial_label_.GetPreferredSize().width()).width();
+  SetLabel(use_full_label ? full_label_.GetText() : partial_label_.GetText());
+}
diff --git a/chrome/browser/ui/views/location_bar/selected_keyword_view.h b/chrome/browser/ui/views/location_bar/selected_keyword_view.h
index 4490015..f4a4334 100644
--- a/chrome/browser/ui/views/location_bar/selected_keyword_view.h
+++ b/chrome/browser/ui/views/location_bar/selected_keyword_view.h
@@ -34,13 +34,10 @@
   void ResetImage();
 
   // IconLabelBubbleView:
-  SkColor GetTextColor() const override;
-  SkColor GetInkDropBaseColor() const override;
-
-  // views::View:
   gfx::Size CalculatePreferredSize() const override;
   gfx::Size GetMinimumSize() const override;
-  void Layout() override;
+  SkColor GetTextColor() const override;
+  SkColor GetInkDropBaseColor() const override;
 
   // The current keyword, or an empty string if no keyword is displayed.
   void SetKeyword(const base::string16& keyword);
@@ -50,9 +47,12 @@
 
  private:
   // IconLabelBubbleView:
+  void OnBoundsChanged(const gfx::Rect& previous_bounds) override;
   int GetExtraInternalSpacing() const override;
   const char* GetClassName() const override;
 
+  void SetLabelForCurrentWidth();
+
   LocationBarView* location_bar_;
 
   // The keyword we're showing. If empty, no keyword is selected.
diff --git a/chrome/browser/ui/views/location_bar/zoom_bubble_view.cc b/chrome/browser/ui/views/location_bar/zoom_bubble_view.cc
index 31a5d81..49094286 100644
--- a/chrome/browser/ui/views/location_bar/zoom_bubble_view.cc
+++ b/chrome/browser/ui/views/location_bar/zoom_bubble_view.cc
@@ -5,6 +5,7 @@
 #include "chrome/browser/ui/views/location_bar/zoom_bubble_view.h"
 
 #include <cmath>
+#include <memory>
 
 #include "base/auto_reset.h"
 #include "base/i18n/number_formatting.h"
@@ -44,6 +45,7 @@
 #include "ui/views/controls/button/image_button.h"
 #include "ui/views/controls/button/image_button_factory.h"
 #include "ui/views/controls/button/md_text_button.h"
+#include "ui/views/controls/highlight_path_generator.h"
 #include "ui/views/controls/separator.h"
 #include "ui/views/layout/box_layout.h"
 #include "ui/views/layout/fill_layout.h"
@@ -62,18 +64,32 @@
 constexpr base::TimeDelta kBubbleCloseDelayLong =
     base::TimeDelta::FromMilliseconds(5000);
 
-// Creates an ImageButton using vector |icon|, sets a tooltip with |tooltip_id|.
-// Returns the button.
-std::unique_ptr<views::Button> CreateZoomButton(views::ButtonListener* listener,
-                                                const gfx::VectorIcon& icon,
-                                                int tooltip_id) {
-  std::unique_ptr<views::ImageButton> button(
-      views::CreateVectorImageButton(listener));
-  views::SetImageFromVectorIcon(button.get(), icon);
-  button->SetFocusForPlatform();
-  button->SetTooltipText(l10n_util::GetStringUTF16(tooltip_id));
-  return std::move(button);
-}
+class ZoomButtonHighlightPathGenerator : public views::HighlightPathGenerator {
+ public:
+  ZoomButtonHighlightPathGenerator() = default;
+
+  SkPath GetHighlightPath(const views::View* view) override {
+    constexpr int kCircleRadiusDp = 24 / 2;
+    const gfx::Point center = view->GetLocalBounds().CenterPoint();
+    return SkPath().addCircle(center.x(), center.y(), kCircleRadiusDp);
+  }
+};
+
+class ZoomButton : public views::ImageButton {
+ public:
+  explicit ZoomButton(views::ButtonListener* listener,
+                      const gfx::VectorIcon& icon,
+                      int tooltip_id)
+      : ImageButton(listener) {
+    views::ConfigureVectorImageButton(this);
+    views::SetImageFromVectorIcon(this, icon);
+    SetFocusForPlatform();
+    SetTooltipText(l10n_util::GetStringUTF16(tooltip_id));
+    views::HighlightPathGenerator::Install(
+        this, std::make_unique<ZoomButtonHighlightPathGenerator>());
+  }
+  ~ZoomButton() override = default;
+};
 
 class ZoomValue : public views::Label {
  public:
@@ -349,6 +365,7 @@
 
 void ZoomBubbleView::Init() {
   // Set up the layout of the zoom bubble.
+  constexpr int kPercentLabelPadding = 64;
   const ChromeLayoutProvider* provider = ChromeLayoutProvider::Get();
   const int spacing =
       provider->GetDistanceMetric(DISTANCE_UNRELATED_CONTROL_HORIZONTAL);
@@ -364,9 +381,9 @@
   // Calculate child views margins in |this| client view.
   const int label_vertical_spacing =
       provider->GetDistanceMetric(DISTANCE_TOAST_LABEL_VERTICAL);
-  const gfx::Insets label_vertical_margin(
-      label_vertical_spacing - margins().top(), 0,
-      label_vertical_spacing - margins().bottom(), 0);
+  const gfx::Insets label_margin(label_vertical_spacing - margins().top(), 0,
+                                 label_vertical_spacing - margins().bottom(),
+                                 kPercentLabelPadding - spacing);
 
   // Account for the apparent margins that vector buttons have around icons.
   const int control_vertical_spacing =
@@ -381,43 +398,33 @@
   // If this zoom change was initiated by an extension, that extension will be
   // attributed by showing its icon in the zoom bubble.
   if (extension_info_.icon_image) {
-    image_button_ = new views::ImageButton(this);
-    image_button_->SetTooltipText(
+    auto image_button = std::make_unique<views::ImageButton>(this);
+    image_button->SetTooltipText(
         l10n_util::GetStringFUTF16(IDS_TOOLTIP_ZOOM_EXTENSION_ICON,
                                    base::UTF8ToUTF16(extension_info_.name)));
-    image_button_->SetImage(views::Button::STATE_NORMAL,
-                            &extension_info_.icon_image->image_skia());
-    AddChildView(image_button_);
+    image_button->SetImage(views::Button::STATE_NORMAL,
+                           &extension_info_.icon_image->image_skia());
+    image_button_ = AddChildView(std::move(image_button));
   }
 
   // Add zoom label with the new zoom percent.
-  label_ = new ZoomValue(web_contents());
+  auto label = std::make_unique<ZoomValue>(web_contents());
+  label->SetProperty(views::kMarginsKey, gfx::Insets(label_margin));
+  label_ = label.get();
   UpdateZoomPercent();
-  label_->SetProperty(views::kMarginsKey, gfx::Insets(label_vertical_margin));
-  AddChildView(label_);
-
-  // Add extra padding between the zoom percent label and the buttons.
-  constexpr int kPercentLabelPadding = 64;
-  auto* label_padding_view = new views::View();
-  label_padding_view->SetPreferredSize(gfx::Size(
-      kPercentLabelPadding - spacing * 2, label_->GetPreferredSize().height()));
-  AddChildView(label_padding_view);
+  AddChildView(std::move(label));
 
   // Add Zoom Out ("-") button.
-  std::unique_ptr<views::Button> zoom_out_button =
-      CreateZoomButton(this, kRemoveIcon, IDS_ACCNAME_ZOOM_MINUS2);
-  zoom_out_button_ = zoom_out_button.get();
+  zoom_out_button_ = AddChildView(
+      std::make_unique<ZoomButton>(this, kRemoveIcon, IDS_ACCNAME_ZOOM_MINUS2));
   zoom_out_button_->SetProperty(views::kMarginsKey,
                                 gfx::Insets(vector_button_margin));
-  AddChildView(zoom_out_button.release());
 
   // Add Zoom In ("+") button.
-  std::unique_ptr<views::Button> zoom_in_button =
-      CreateZoomButton(this, kAddIcon, IDS_ACCNAME_ZOOM_PLUS2);
-  zoom_in_button_ = zoom_in_button.get();
+  zoom_in_button_ = AddChildView(
+      std::make_unique<ZoomButton>(this, kAddIcon, IDS_ACCNAME_ZOOM_PLUS2));
   zoom_in_button_->SetProperty(views::kMarginsKey,
                                gfx::Insets(vector_button_margin));
-  AddChildView(zoom_in_button.release());
 
   // Add "Reset" button.
   auto reset_button = views::MdTextButton::CreateSecondaryUiButton(
@@ -454,21 +461,6 @@
   LocationBarBubbleDelegateView::CloseBubble();
 }
 
-void ZoomBubbleView::Layout() {
-  View::Layout();
-
-  for (auto* button : {zoom_in_button_, zoom_out_button_}) {
-    constexpr int kCircleDiameterDp = 24;
-    auto highlight_path = std::make_unique<SkPath>();
-    // Use a centered circular shape for inkdrops and focus rings.
-    gfx::Rect circle_rect(button->GetLocalBounds());
-    circle_rect.ClampToCenteredSize(
-        gfx::Size(kCircleDiameterDp, kCircleDiameterDp));
-    highlight_path->addOval(gfx::RectToSkRect(circle_rect));
-    button->SetProperty(views::kHighlightPathKey, highlight_path.release());
-  }
-}
-
 void ZoomBubbleView::ButtonPressed(views::Button* sender,
                                    const ui::Event& event) {
   // No button presses in this dialog should cause the dialog to close,
diff --git a/chrome/browser/ui/views/location_bar/zoom_bubble_view.h b/chrome/browser/ui/views/location_bar/zoom_bubble_view.h
index f88f3d6..6c2a8dd 100644
--- a/chrome/browser/ui/views/location_bar/zoom_bubble_view.h
+++ b/chrome/browser/ui/views/location_bar/zoom_bubble_view.h
@@ -103,16 +103,15 @@
   void Init() override;
   void WindowClosing() override;
   void CloseBubble() override;
-  void Layout() override;
 
-  // views::ButtonListener:
+  // views::ButtonListener
   void ButtonPressed(views::Button* sender, const ui::Event& event) override;
 
-  // ImmersiveModeController::Observer:
+  // ImmersiveModeController::Observer
   void OnImmersiveRevealStarted() override;
   void OnImmersiveModeControllerDestroyed() override;
 
-  // extensions::IconImage::Observer:
+  // extensions::IconImage::Observer
   void OnExtensionIconImageChanged(extensions::IconImage* /* image */) override;
 
   // Sets information about the extension that initiated the zoom change.
diff --git a/chrome/browser/ui/views/profiles/profile_menu_view_browsertest.cc b/chrome/browser/ui/views/profiles/profile_menu_view_browsertest.cc
index c689e55..493e9e50 100644
--- a/chrome/browser/ui/views/profiles/profile_menu_view_browsertest.cc
+++ b/chrome/browser/ui/views/profiles/profile_menu_view_browsertest.cc
@@ -876,8 +876,9 @@
 
 IN_PROC_BROWSER_TEST_P(ProfileMenuClickTest_WithUnconsentedPrimaryAccount,
                        SetupAndRunTest) {
-  secondary_account_helper::SignInSecondaryAccount(
-      browser()->profile(), &test_url_loader_factory_, "user@example.com");
+  signin::MakeAccountAvailableWithCookies(identity_manager(),
+                                          &test_url_loader_factory_,
+                                          "user@example.com", "gaia_id");
   // Check that the setup was successful.
   ASSERT_FALSE(identity_manager()->HasPrimaryAccount());
   ASSERT_TRUE(identity_manager()->HasUnconsentedPrimaryAccount());
diff --git a/chrome/browser/ui/views/sharing/sharing_dialog_view_unittest.cc b/chrome/browser/ui/views/sharing/sharing_dialog_view_unittest.cc
index 128d9ff..576ad26 100644
--- a/chrome/browser/ui/views/sharing/sharing_dialog_view_unittest.cc
+++ b/chrome/browser/ui/views/sharing/sharing_dialog_view_unittest.cc
@@ -25,8 +25,6 @@
 #include "testing/gtest/include/gtest/gtest.h"
 #include "ui/events/event_utils.h"
 
-using namespace testing;
-
 namespace {
 
 class ClickToCallUiControllerMock : public ClickToCallUiController {
diff --git a/chrome/browser/ui/views/toolbar/toolbar_icon_container_view.cc b/chrome/browser/ui/views/toolbar/toolbar_icon_container_view.cc
index 4b3122a..42d9fd0 100644
--- a/chrome/browser/ui/views/toolbar/toolbar_icon_container_view.cc
+++ b/chrome/browser/ui/views/toolbar/toolbar_icon_container_view.cc
@@ -11,17 +11,21 @@
 #include "chrome/browser/ui/views/toolbar/toolbar_ink_drop_util.h"
 #include "ui/native_theme/native_theme.h"
 #include "ui/views/background.h"
+#include "ui/views/layout/animating_layout_manager.h"
 #include "ui/views/layout/flex_layout.h"
 #include "ui/views/view_class_properties.h"
 
 ToolbarIconContainerView::ToolbarIconContainerView(bool uses_highlight)
     : uses_highlight_(uses_highlight) {
-  auto layout_manager = std::make_unique<views::FlexLayout>();
-  layout_manager->SetCollapseMargins(true)
+  views::AnimatingLayoutManager* animating_layout =
+      SetLayoutManager(std::make_unique<views::AnimatingLayoutManager>());
+  animating_layout->SetShouldAnimateBounds(true);
+  auto* flex_layout = animating_layout->SetTargetLayoutManager(
+      std::make_unique<views::FlexLayout>());
+  flex_layout->SetCollapseMargins(true)
       .SetIgnoreDefaultMainAxisMargins(true)
       .SetDefault(views::kMarginsKey,
                   gfx::Insets(0, GetLayoutConstant(TOOLBAR_ELEMENT_PADDING)));
-  SetLayoutManager(std::move(layout_manager));
 }
 
 ToolbarIconContainerView::~ToolbarIconContainerView() = default;
@@ -39,10 +43,8 @@
 void ToolbarIconContainerView::OnHighlightChanged(
     views::Button* observed_button,
     bool highlighted) {
-  if (highlighted) {
+  if (highlighted)
     DCHECK(observed_button);
-    DCHECK(observed_button->GetVisible());
-  }
 
   // TODO(crbug.com/932818): Pass observed button type to container.
   highlighted_button_ = highlighted ? observed_button : nullptr;
diff --git a/chrome/browser/ui/views/toolbar/toolbar_view.cc b/chrome/browser/ui/views/toolbar/toolbar_view.cc
index 6930256..8a34e6b 100644
--- a/chrome/browser/ui/views/toolbar/toolbar_view.cc
+++ b/chrome/browser/ui/views/toolbar/toolbar_view.cc
@@ -656,10 +656,12 @@
   }
 
   // Toolbar/content separator.
-  BrowserView::Paint1pxHorizontalLine(
-      canvas,
-      tp->GetColor(ThemeProperties::COLOR_TOOLBAR_CONTENT_AREA_SEPARATOR),
-      GetLocalBounds(), true);
+  const SkColor separator_color =
+      tp->GetColor(ThemeProperties::COLOR_TOOLBAR_CONTENT_AREA_SEPARATOR);
+  const gfx::Rect local_bounds = GetLocalBounds();
+  canvas->DrawLine(gfx::Point(local_bounds.x(), local_bounds.bottom() - 1),
+                   gfx::Point(local_bounds.right(), local_bounds.bottom() - 1),
+                   separator_color);
 }
 
 void ToolbarView::OnThemeChanged() {
diff --git a/chrome/browser/ui/webui/discards/discards_ui.cc b/chrome/browser/ui/webui/discards/discards_ui.cc
index 62430df..e37e9df 100644
--- a/chrome/browser/ui/webui/discards/discards_ui.cc
+++ b/chrome/browser/ui/webui/discards/discards_ui.cc
@@ -14,7 +14,6 @@
 #include "build/build_config.h"
 #include "chrome/browser/browser_process.h"
 #include "chrome/browser/engagement/site_engagement_service.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/resource_coordinator/lifecycle_unit.h"
 #include "chrome/browser/resource_coordinator/lifecycle_unit_state.mojom.h"
@@ -31,6 +30,7 @@
 #include "chrome/common/webui_url_constants.h"
 #include "chrome/grit/browser_resources.h"
 #include "components/favicon_base/favicon_url_parser.h"
+#include "components/performance_manager/public/performance_manager.h"
 #include "content/public/browser/navigation_controller.h"
 #include "content/public/browser/navigation_entry.h"
 #include "content/public/browser/url_data_source.h"
diff --git a/chrome/browser/ui/webui/discards/graph_dump_impl.cc b/chrome/browser/ui/webui/discards/graph_dump_impl.cc
index 9e19520..76662a2a 100644
--- a/chrome/browser/ui/webui/discards/graph_dump_impl.cc
+++ b/chrome/browser/ui/webui/discards/graph_dump_impl.cc
@@ -14,13 +14,13 @@
 #include "base/task/post_task.h"
 #include "base/threading/sequenced_task_runner_handle.h"
 #include "chrome/browser/favicon/favicon_service_factory.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/ui/webui/discards/discards.mojom.h"
 #include "components/favicon/core/favicon_service.h"
 #include "components/favicon_base/favicon_callback.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/performance_manager.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
 #include "content/public/browser/web_contents.h"
diff --git a/chrome/browser/ui/webui/discards/graph_dump_impl.h b/chrome/browser/ui/webui/discards/graph_dump_impl.h
index 5a242e8..b973761 100644
--- a/chrome/browser/ui/webui/discards/graph_dump_impl.h
+++ b/chrome/browser/ui/webui/discards/graph_dump_impl.h
@@ -10,11 +10,11 @@
 #include "base/memory/ref_counted_memory.h"
 #include "base/memory/weak_ptr.h"
 #include "base/sequence_checker.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
 #include "chrome/browser/ui/webui/discards/discards.mojom.h"
+#include "components/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
 #include "mojo/public/cpp/bindings/pending_receiver.h"
 #include "mojo/public/cpp/bindings/pending_remote.h"
 #include "mojo/public/cpp/bindings/receiver.h"
@@ -75,10 +75,10 @@
   void OnIsAdFrameChanged(
       const performance_manager::FrameNode* frame_node) override {}
   // Ignored.
-  void OnFrameHoldsWebLockChanged(
+  void OnFrameIsHoldingWebLockChanged(
       const performance_manager::FrameNode* frame_node) override {}
   // Ignored.
-  void OnFrameHoldsIndexedDBLockChanged(
+  void OnFrameIsHoldingIndexedDBLockChanged(
       const performance_manager::FrameNode* frame_node) override {}
   // Ignored.
   void OnNonPersistentNotificationCreated(
@@ -105,6 +105,12 @@
   // Ignored.
   void OnPageOriginTrialFreezePolicyChanged(
       const performance_manager::PageNode* page_node) override {}
+  // Ignored.
+  void OnPageIsHoldingWebLockChanged(
+      const performance_manager::PageNode* page_node) override {}
+  // Ignored.
+  void OnPageIsHoldingIndexedDBLockChanged(
+      const performance_manager::PageNode* page_node) override {}
   void OnMainFrameUrlChanged(
       const performance_manager::PageNode* page_node) override;
   // Ignored.
diff --git a/chrome/browser/ui/webui/discards/graph_dump_impl_unittest.cc b/chrome/browser/ui/webui/discards/graph_dump_impl_unittest.cc
index f94ebf2..8cdbbdd 100644
--- a/chrome/browser/ui/webui/discards/graph_dump_impl_unittest.cc
+++ b/chrome/browser/ui/webui/discards/graph_dump_impl_unittest.cc
@@ -12,10 +12,9 @@
 #include "base/stl_util.h"
 #include "base/test/bind_test_util.h"
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/test_support/graph_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
 #include "chrome/browser/ui/webui/discards/discards.mojom.h"
+#include "components/performance_manager/test_support/graph_impl.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "content/public/test/browser_task_environment.h"
 #include "mojo/public/cpp/bindings/interface_request.h"
 #include "mojo/public/cpp/bindings/pending_remote.h"
diff --git a/chrome/browser/ui/webui/print_preview/pdf_printer_handler.cc b/chrome/browser/ui/webui/print_preview/pdf_printer_handler.cc
index 00cf109..f0033a7e 100644
--- a/chrome/browser/ui/webui/print_preview/pdf_printer_handler.cc
+++ b/chrome/browser/ui/webui/print_preview/pdf_printer_handler.cc
@@ -72,38 +72,41 @@
 }
 
 base::Value GetPdfCapabilities(const std::string& locale) {
-  cloud_devices::CloudDeviceDescription description;
-  using namespace cloud_devices::printer;
+  using cloud_devices::printer::MediaType;
 
-  OrientationCapability orientation;
+  cloud_devices::CloudDeviceDescription description;
+  cloud_devices::printer::OrientationCapability orientation;
   orientation.AddOption(cloud_devices::printer::OrientationType::PORTRAIT);
   orientation.AddOption(cloud_devices::printer::OrientationType::LANDSCAPE);
-  orientation.AddDefaultOption(OrientationType::AUTO_ORIENTATION, true);
+  orientation.AddDefaultOption(
+      cloud_devices::printer::OrientationType::AUTO_ORIENTATION, true);
   orientation.SaveTo(&description);
 
-  ColorCapability color;
+  cloud_devices::printer::ColorCapability color;
   {
-    Color standard_color(ColorType::STANDARD_COLOR);
+    cloud_devices::printer::Color standard_color(
+        cloud_devices::printer::ColorType::STANDARD_COLOR);
     standard_color.vendor_id = base::NumberToString(COLOR);
     color.AddDefaultOption(standard_color, true);
   }
   color.SaveTo(&description);
 
-  static const cloud_devices::printer::MediaType kPdfMedia[] = {
+  static const MediaType kPdfMedia[] = {
       MediaType::ISO_A0,   MediaType::ISO_A1,    MediaType::ISO_A2,
       MediaType::ISO_A3,   MediaType::ISO_A4,    MediaType::ISO_A5,
       MediaType::NA_LEGAL, MediaType::NA_LETTER, MediaType::NA_LEDGER};
   const gfx::Size default_media_size = GetDefaultPdfMediaSizeMicrons();
-  Media default_media("", "", default_media_size.width(),
-                      default_media_size.height());
+  cloud_devices::printer::Media default_media(std::string(), std::string(),
+                                              default_media_size.width(),
+                                              default_media_size.height());
   if (!default_media.MatchBySize() ||
       !base::Contains(kPdfMedia, default_media.type)) {
-    default_media =
-        Media(locale == "en-US" ? MediaType::NA_LETTER : MediaType::ISO_A4);
+    default_media = cloud_devices::printer::Media(
+        locale == "en-US" ? MediaType::NA_LETTER : MediaType::ISO_A4);
   }
-  MediaCapability media;
+  cloud_devices::printer::MediaCapability media;
   for (const auto& pdf_media : kPdfMedia) {
-    Media media_option(pdf_media);
+    cloud_devices::printer::Media media_option(pdf_media);
     media.AddDefaultOption(media_option,
                            default_media.type == media_option.type);
   }
diff --git a/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper.cc b/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper.cc
index 2bdfb2a..34f1ff07 100644
--- a/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper.cc
+++ b/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper.cc
@@ -20,6 +20,8 @@
 #include "chrome/browser/browser_process.h"
 #include "chrome/browser/policy/cloud/user_policy_signin_service.h"
 #include "chrome/browser/policy/cloud/user_policy_signin_service_factory.h"
+#include "chrome/browser/policy/policy_conversions.h"
+#include "chrome/browser/policy/profile_policy_connector.h"
 #include "chrome/browser/profiles/profile_attributes_storage.h"
 #include "chrome/browser/profiles/profile_avatar_icon_util.h"
 #include "chrome/browser/profiles/profile_manager.h"
@@ -32,6 +34,7 @@
 #include "chrome/browser/unified_consent/unified_consent_service_factory.h"
 #include "components/keyed_service/content/browser_context_keyed_service_shutdown_notifier_factory.h"
 #include "components/policy/core/browser/browser_policy_connector.h"
+#include "components/policy/core/common/cloud/user_cloud_policy_manager.h"
 #include "components/prefs/pref_service.h"
 #include "components/signin/public/base/signin_metrics.h"
 #include "components/signin/public/base/signin_pref_names.h"
@@ -348,9 +351,29 @@
   // PrimaryAccountMutator::ClearPrimaryAccount() here instead.
   DLOG_IF(ERROR, !success) << "Error fetching policy for user";
   DVLOG_IF(1, success) << "Policy fetch successful - completing signin";
+  if (VLOG_IS_ON(2)) {
+    // User cloud policies have been fetched from the server. Dump all policy
+    // values into log once these new policies are merged.
+    profile_->GetProfilePolicyConnector()
+        ->policy_service()
+        ->AddProviderUpdateObserver(this);
+  }
   SigninAndShowSyncConfirmationUI();
 }
 
+void DiceTurnSyncOnHelper::OnProviderUpdatePropagated(
+    policy::ConfigurationPolicyProvider* provider) {
+  if (provider != profile_->GetUserCloudPolicyManager())
+    return;
+  VLOG(2) << "Policies after sign in:";
+  VLOG(2) << policy::DictionaryPolicyConversions()
+                 .WithBrowserContext(profile_)
+                 .ToJSON();
+  profile_->GetProfilePolicyConnector()
+      ->policy_service()
+      ->RemoveProviderUpdateObserver(this);
+}
+
 void DiceTurnSyncOnHelper::CreateNewSignedInProfile() {
   // Create a new profile and have it call back when done so we can start the
   // signin flow.
diff --git a/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper.h b/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper.h
index 59e334d..20a9dfd 100644
--- a/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper.h
+++ b/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper.h
@@ -16,6 +16,7 @@
 #include "chrome/browser/sync/sync_startup_tracker.h"
 #include "chrome/browser/ui/webui/signin/login_ui_service.h"
 #include "components/keyed_service/core/keyed_service_shutdown_notifier.h"
+#include "components/policy/core/common/policy_service.h"
 #include "components/signin/public/base/signin_metrics.h"
 #include "components/signin/public/identity_manager/account_info.h"
 
@@ -32,7 +33,9 @@
 
 // Handles details of setting the primary account with IdentityManager and
 // turning on sync for an account for which there is already a refresh token.
-class DiceTurnSyncOnHelper : public SyncStartupTracker::Observer {
+class DiceTurnSyncOnHelper
+    : public SyncStartupTracker::Observer,
+      public policy::PolicyService::ProviderUpdateObserver {
  public:
   // Behavior when the signin is aborted (by an error or cancelled by the user).
   enum class SigninAbortedMode {
@@ -160,6 +163,10 @@
   // true if policy was successfully fetched.
   void OnPolicyFetchComplete(bool success);
 
+  // policy::PolicyService::ProviderUpdateObserver
+  void OnProviderUpdatePropagated(
+      policy::ConfigurationPolicyProvider* provider) override;
+
   // Called to create a new profile, which is then signed in with the
   // in-progress auth credentials currently stored in this object.
   void CreateNewSignedInProfile();
diff --git a/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper_unittest.cc b/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper_unittest.cc
index ba4e132..876f3b3 100644
--- a/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper_unittest.cc
+++ b/chrome/browser/ui/webui/signin/dice_turn_sync_on_helper_unittest.cc
@@ -46,8 +46,6 @@
 using ::testing::AtLeast;
 using ::testing::Return;
 
-using namespace unified_consent;
-
 class DiceTurnSyncOnHelperTestBase;
 
 namespace {
@@ -442,12 +440,13 @@
     : public DiceTurnSyncOnHelperTestBase {
  public:
   DiceTurnSyncOnHelperTestWithUnifiedConsent()
-      : scoped_unified_consent_(UnifiedConsentFeatureState::kEnabled) {}
+      : scoped_unified_consent_(
+            unified_consent::UnifiedConsentFeatureState::kEnabled) {}
   ~DiceTurnSyncOnHelperTestWithUnifiedConsent() override {}
 
  private:
   ScopedAccountConsistencyDice scoped_dice_;
-  ScopedUnifiedConsent scoped_unified_consent_;
+  unified_consent::ScopedUnifiedConsent scoped_unified_consent_;
 };
 
 // TestDiceTurnSyncOnHelperDelegate implementation.
@@ -742,7 +741,7 @@
 // Tests that the user enabled unified consent,
 TEST_F(DiceTurnSyncOnHelperTestWithUnifiedConsent,
        ShowSyncDialogForEndConsumerAccount_UnifiedConsentEnabled) {
-  ASSERT_TRUE(IsUnifiedConsentFeatureEnabled());
+  ASSERT_TRUE(unified_consent::IsUnifiedConsentFeatureEnabled());
   // Set expectations.
   expected_sync_confirmation_shown_ = true;
   sync_confirmation_result_ = LoginUIService::SyncConfirmationUIClosedResult::
@@ -753,11 +752,12 @@
       SetFirstSetupComplete(syncer::SyncFirstSetupCompleteSource::BASIC_FLOW))
       .Times(1);
   PrefService* pref_service = profile()->GetPrefs();
-  std::unique_ptr<UrlKeyedDataCollectionConsentHelper>
-      url_keyed_collection_helper = UrlKeyedDataCollectionConsentHelper::
-          NewAnonymizedDataCollectionConsentHelper(
-              pref_service,
-              ProfileSyncServiceFactory::GetForProfile(profile()));
+  std::unique_ptr<unified_consent::UrlKeyedDataCollectionConsentHelper>
+      url_keyed_collection_helper =
+          unified_consent::UrlKeyedDataCollectionConsentHelper::
+              NewAnonymizedDataCollectionConsentHelper(
+                  pref_service,
+                  ProfileSyncServiceFactory::GetForProfile(profile()));
   EXPECT_FALSE(url_keyed_collection_helper->IsEnabled());
 
   // Signin flow.
diff --git a/chrome/browser/ui/webui/snippets_internals/snippets_internals.mojom b/chrome/browser/ui/webui/snippets_internals/snippets_internals.mojom
index 1ce7954..4f37896 100644
--- a/chrome/browser/ui/webui/snippets_internals/snippets_internals.mojom
+++ b/chrome/browser/ui/webui/snippets_internals/snippets_internals.mojom
@@ -26,7 +26,8 @@
 };
 
 interface PageHandlerFactory {
-  CreatePageHandler(Page page) => (PageHandler handler);
+  CreatePageHandler(pending_remote<Page> page) =>
+      (pending_remote<PageHandler> handler);
 };
 
 // Browser interface.
diff --git a/chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.cc b/chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.cc
index 2bcda35..46a0bbc 100644
--- a/chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.cc
+++ b/chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.cc
@@ -15,6 +15,7 @@
 #include "base/strings/string_number_conversions.h"
 #include "base/strings/stringprintf.h"
 #include "base/strings/utf_string_conversions.h"
+#include "chrome/browser/ui/webui/snippets_internals/snippets_internals.mojom.h"
 #include "chrome/common/pref_names.h"
 #include "components/ntp_snippets/category_info.h"
 #include "components/ntp_snippets/features.h"
@@ -106,11 +107,11 @@
 
 // TODO: Add browser tests.
 SnippetsInternalsPageHandler::SnippetsInternalsPageHandler(
-    snippets_internals::mojom::PageHandlerRequest request,
-    snippets_internals::mojom::PagePtr page,
+    mojo::PendingReceiver<snippets_internals::mojom::PageHandler> receiver,
+    mojo::PendingRemote<snippets_internals::mojom::Page> page,
     ntp_snippets::ContentSuggestionsService* content_suggestions_service,
     PrefService* pref_service)
-    : binding_(this, std::move(request)),
+    : receiver_(this, std::move(receiver)),
       content_suggestions_service_observer_(this),
       content_suggestions_service_(content_suggestions_service),
       remote_suggestions_provider_(
diff --git a/chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.h b/chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.h
index 7702050..bf02e04c 100644
--- a/chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.h
+++ b/chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.h
@@ -15,7 +15,10 @@
 #include "components/ntp_snippets/content_suggestions_service.h"
 #include "components/ntp_snippets/remote/remote_suggestions_provider.h"
 #include "components/prefs/pref_service.h"
-#include "mojo/public/cpp/bindings/binding.h"
+#include "mojo/public/cpp/bindings/pending_receiver.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
+#include "mojo/public/cpp/bindings/receiver.h"
+#include "mojo/public/cpp/bindings/remote.h"
 
 // TODO: Write tests for this.
 class SnippetsInternalsPageHandler
@@ -23,8 +26,8 @@
       public ntp_snippets::ContentSuggestionsService::Observer {
  public:
   explicit SnippetsInternalsPageHandler(
-      snippets_internals::mojom::PageHandlerRequest request,
-      snippets_internals::mojom::PagePtr,
+      mojo::PendingReceiver<snippets_internals::mojom::PageHandler> receiver,
+      mojo::PendingRemote<snippets_internals::mojom::Page> page,
       ntp_snippets::ContentSuggestionsService* content_suggestions_service,
       PrefService* pref_service);
   ~SnippetsInternalsPageHandler() override;
@@ -67,8 +70,8 @@
       GetSuggestionsByCategoryCallback callback,
       std::vector<ntp_snippets::ContentSuggestion> suggestions);
 
-  // Binding from the mojo interface to concrete impl.
-  mojo::Binding<snippets_internals::mojom::PageHandler> binding_;
+  // Receiver from the mojo interface to concrete impl.
+  mojo::Receiver<snippets_internals::mojom::PageHandler> receiver_;
 
   // Observer to notify frontend of dirty data.
   ScopedObserver<ntp_snippets::ContentSuggestionsService,
@@ -90,7 +93,7 @@
   base::OneShotTimer suggestion_fetch_timer_;
 
   // Handle back to the page by which we can update.
-  snippets_internals::mojom::PagePtr page_;
+  mojo::Remote<snippets_internals::mojom::Page> page_;
 
   base::WeakPtrFactory<SnippetsInternalsPageHandler> weak_ptr_factory_{this};
 
diff --git a/chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.cc b/chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.cc
index 89f7230..7df1460 100644
--- a/chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.cc
+++ b/chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.cc
@@ -4,20 +4,25 @@
 
 #include "chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.h"
 
+#include <memory>
+#include <utility>
+
 #include "base/bind.h"
 #include "chrome/browser/ntp_snippets/content_suggestions_service_factory.h"
 #include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/ui/webui/snippets_internals/snippets_internals.mojom.h"
 #include "chrome/browser/ui/webui/snippets_internals/snippets_internals_page_handler.h"
 #include "chrome/common/url_constants.h"
 #include "chrome/grit/browser_resources.h"
 #include "content/public/browser/web_ui_data_source.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
 
 #if defined(OS_ANDROID)
 #include "chrome/browser/android/chrome_feature_list.h"
 #endif
 
 SnippetsInternalsUI::SnippetsInternalsUI(content::WebUI* web_ui)
-    : ui::MojoWebUIController(web_ui), binding_(this) {
+    : ui::MojoWebUIController(web_ui) {
   content::WebUIDataSource* source =
       content::WebUIDataSource::Create(chrome::kChromeUISnippetsInternalsHost);
   source->OverrideContentSecurityPolicyScriptSrc(
@@ -41,20 +46,20 @@
 SnippetsInternalsUI::~SnippetsInternalsUI() {}
 
 void SnippetsInternalsUI::BindSnippetsInternalsPageHandlerFactory(
-    snippets_internals::mojom::PageHandlerFactoryRequest request) {
-  if (binding_.is_bound())
-    binding_.Unbind();
+    mojo::PendingReceiver<snippets_internals::mojom::PageHandlerFactory>
+        receiver) {
+  receiver_.reset();
 
-  binding_.Bind(std::move(request));
+  receiver_.Bind(std::move(receiver));
 }
 
 void SnippetsInternalsUI::CreatePageHandler(
-    snippets_internals::mojom::PagePtr page,
+    mojo::PendingRemote<snippets_internals::mojom::Page> page,
     CreatePageHandlerCallback callback) {
   DCHECK(page);
-  snippets_internals::mojom::PageHandlerPtr handler;
+  mojo::PendingRemote<snippets_internals::mojom::PageHandler> handler;
   page_handler_ = std::make_unique<SnippetsInternalsPageHandler>(
-      mojo::MakeRequest(&handler), std::move(page),
+      handler.InitWithNewPipeAndPassReceiver(), std::move(page),
       content_suggestions_service_, pref_service_);
 
   std::move(callback).Run(std::move(handler));
diff --git a/chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.h b/chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.h
index 6ed63699..524b74f 100644
--- a/chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.h
+++ b/chrome/browser/ui/webui/snippets_internals/snippets_internals_ui.h
@@ -10,7 +10,9 @@
 #include "chrome/browser/ui/webui/snippets_internals/snippets_internals.mojom.h"
 #include "components/ntp_snippets/content_suggestions_service.h"
 #include "components/prefs/pref_service.h"
-#include "mojo/public/cpp/bindings/binding.h"
+#include "mojo/public/cpp/bindings/pending_receiver.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
+#include "mojo/public/cpp/bindings/receiver.h"
 #include "ui/webui/mojo_web_ui_controller.h"
 
 class SnippetsInternalsPageHandler;
@@ -23,19 +25,21 @@
   explicit SnippetsInternalsUI(content::WebUI* web_ui);
   ~SnippetsInternalsUI() override;
 
-  void CreatePageHandler(snippets_internals::mojom::PagePtr page,
-                         CreatePageHandlerCallback callback) override;
+  void CreatePageHandler(
+      mojo::PendingRemote<snippets_internals::mojom::Page> page,
+      CreatePageHandlerCallback callback) override;
 
  private:
   void BindSnippetsInternalsPageHandlerFactory(
-      snippets_internals::mojom::PageHandlerFactoryRequest request);
+      mojo::PendingReceiver<snippets_internals::mojom::PageHandlerFactory>
+          receiver);
 
   std::unique_ptr<SnippetsInternalsPageHandler> page_handler_;
   ntp_snippets::ContentSuggestionsService* content_suggestions_service_;
   PrefService* pref_service_;
 
-  // Binding from the mojo interface to concrete impl.
-  mojo::Binding<snippets_internals::mojom::PageHandlerFactory> binding_;
+  // Receiver from the mojo interface to concrete impl.
+  mojo::Receiver<snippets_internals::mojom::PageHandlerFactory> receiver_{this};
 
   DISALLOW_COPY_AND_ASSIGN(SnippetsInternalsUI);
 };
diff --git a/chrome/browser/vr/BUILD.gn b/chrome/browser/vr/BUILD.gn
index 46b0cf6..ef657e95 100644
--- a/chrome/browser/vr/BUILD.gn
+++ b/chrome/browser/vr/BUILD.gn
@@ -194,7 +194,7 @@
     "//skia",
   ]
 
-  if (use_native_modules && modularize_vr_native) {
+  if (use_native_partitions) {
     # Mark symbols in this library as belonging to the VR partition. Only
     # exported symbols (module entrypoints) are affected.
     cflags = [ "-fsymbol-partition=libvr.so" ]
diff --git a/chrome/browser/vr/service/vr_service_impl.cc b/chrome/browser/vr/service/vr_service_impl.cc
index 18006eb..6f74d32 100644
--- a/chrome/browser/vr/service/vr_service_impl.cc
+++ b/chrome/browser/vr/service/vr_service_impl.cc
@@ -299,6 +299,7 @@
     session->enabled_features.push_back(feature);
   }
 
+  client->OnVisibilityStateChanged(visibility_state_);
   session_clients_.Add(std::move(client));
 
   std::move(callback).Run(
@@ -581,6 +582,7 @@
 
 void VRServiceImpl::OnVisibilityStateChanged(
     device::mojom::XRVisibilityState visiblity_state) {
+  visibility_state_ = visiblity_state;
   for (auto& client : session_clients_)
     client->OnVisibilityStateChanged(visiblity_state);
 }
diff --git a/chrome/browser/vr/service/vr_service_impl.h b/chrome/browser/vr/service/vr_service_impl.h
index 9322d78..535695c 100644
--- a/chrome/browser/vr/service/vr_service_impl.h
+++ b/chrome/browser/vr/service/vr_service_impl.h
@@ -157,6 +157,8 @@
   content::RenderFrameHost* render_frame_host_;
   mojo::SelfOwnedReceiverRef<VRService> receiver_;
   InterfaceSet<device::mojom::XRSessionControllerPtr> magic_window_controllers_;
+  device::mojom::XRVisibilityState visibility_state_ =
+      device::mojom::XRVisibilityState::VISIBLE;
 
   // List of callbacks to run when initialization is completed.
   std::vector<base::OnceCallback<void()>> pending_requests_;
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
index af5c5c4..31eca9aa2 100644
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -513,13 +513,6 @@
                                          base::FEATURE_ENABLED_BY_DEFAULT};
 #endif  // BUILDFLAG(ENABLE_NATIVE_NOTIFICATIONS)
 
-#if defined(OS_ANDROID)
-// Changes the net error page UI by adding suggested offline content
-// on the dino page.
-const base::Feature kNewNetErrorPageUI{"NewNetErrorPageUI",
-                                       base::FEATURE_ENABLED_BY_DEFAULT};
-#endif  // OS_ANDROID
-
 // When kNoReferrers is enabled, most HTTP requests will provide empty
 // referrers instead of their ordinary behavior.
 const base::Feature kNoReferrers{"NoReferrers",
diff --git a/chrome/common/chrome_features.h b/chrome/common/chrome_features.h
index 692b6fe..5d891cc 100644
--- a/chrome/common/chrome_features.h
+++ b/chrome/common/chrome_features.h
@@ -331,10 +331,6 @@
 extern const base::Feature kNativeNotifications;
 #endif
 
-#if defined(OS_ANDROID)
-COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kNewNetErrorPageUI;
-#endif
-
 COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kNoReferrers;
 
 #if defined(OS_WIN)
diff --git a/chrome/common/chrome_switches.cc b/chrome/common/chrome_switches.cc
index 55b37e7..294c2c6 100644
--- a/chrome/common/chrome_switches.cc
+++ b/chrome/common/chrome_switches.cc
@@ -251,9 +251,6 @@
 
 const char kDnsLogDetails[]                 = "dns-log-details";
 
-// Enables new UI for net-error page.
-const char kNewNetErrorPageUI[] = "new-net-error-page-ui";
-
 // Requests that a running browser process dump its collected histograms to a
 // given file. The file is overwritten if it exists.
 const char kDumpBrowserHistograms[]         = "dump-browser-histograms";
diff --git a/chrome/common/chrome_switches.h b/chrome/common/chrome_switches.h
index d3f29dd..d1885bb3 100644
--- a/chrome/common/chrome_switches.h
+++ b/chrome/common/chrome_switches.h
@@ -127,7 +127,6 @@
 extern const char kNativeMessagingConnectHost[];
 extern const char kNativeMessagingConnectExtension[];
 extern const char kNativeMessagingConnectId[];
-extern const char kNewNetErrorPageUI[];
 extern const char kNoDefaultBrowserCheck[];
 extern const char kNoExperiments[];
 extern const char kNoFirstRun[];
diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
index 54b9981..6db1886 100644
--- a/chrome/common/pref_names.cc
+++ b/chrome/common/pref_names.cc
@@ -1462,11 +1462,6 @@
 #if !defined(OS_ANDROID)
 // Whether or not this profile has been shown the Welcome page.
 const char kHasSeenWelcomePage[] = "browser.has_seen_welcome_page";
-
-// A boolean specifying whether the default search shortcut should be shown on
-// the New Tab Page after it has been initialized during first run.
-const char kShowFirstRunDefaultSearchShortcut[] =
-    "profile.show_first_run_default_search_shortcut";
 #endif
 
 #if defined(OS_WIN)
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
index 8dd7464..820bffe 100644
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -475,7 +475,6 @@
 
 #if !defined(OS_ANDROID)
 extern const char kHasSeenWelcomePage[];
-extern const char kShowFirstRunDefaultSearchShortcut[];
 #endif
 
 #if defined(OS_WIN)
diff --git a/chrome/installer/mac/keystone_install.sh b/chrome/installer/mac/keystone_install.sh
index ea5f1073..15c162a 100755
--- a/chrome/installer/mac/keystone_install.sh
+++ b/chrome/installer/mac/keystone_install.sh
@@ -608,6 +608,8 @@
   readonly VERSIONS_DIR_OLD="${CONTENTS_DIR}/Versions"
   readonly UNROOTED_BRAND_PLIST="Library/Google/Google Chrome Brand"
   readonly UNROOTED_DEBUG_FILE="Library/Google/Google Chrome Updater Debug"
+  readonly UNROOTED_KS_BUNDLE_DIR=\
+"Library/Google/GoogleSoftwareUpdate/GoogleSoftwareUpdate.bundle"
 
   readonly APP_VERSION_KEY="CFBundleShortVersionString"
   readonly APP_BUNDLEID_KEY="CFBundleIdentifier"
@@ -875,12 +877,12 @@
   fi
   note "system_ticket = ${system_ticket}"
 
-  # If this script is being driven by a user ticket, but a system ticket is
-  # also present, there's a potential for the two to collide.  Both ticket
-  # types might be present if another user on the system promoted the ticket
-  # to system: the other user could not have removed this user's user ticket.
-  # Handle that case here by deleting the user ticket and exiting early with
-  # a discrete exit code.
+  # If this script is being driven by a user ticket, but a system ticket is also
+  # present and system Keystone is installed, there's a potential for the two
+  # tickets to collide.  Both ticket types might be present if another user on
+  # the system promoted the ticket to system: the other user could not have
+  # removed this user's user ticket.  Handle that case here by deleting the user
+  # ticket and exiting early with a discrete exit code.
   #
   # Current versions of ksadmin will exit 1 (false) when asked to print tickets
   # and given a specific product ID to print.  Older versions of ksadmin would
@@ -893,6 +895,7 @@
   # something is eventually able to remove it.
   if [[ -z "${GOOGLE_CHROME_UPDATER_TEST_PATH}" ]] &&
      [[ -z "${system_ticket}" ]] &&
+     [[ -d "/${UNROOTED_KS_BUNDLE_DIR}" ]] &&
      ksadmin -S --print-tickets --productid "${product_id}" >& /dev/null; then
     ksadmin --delete --productid "${product_id}" || true
     err "can't update on a user ticket when a system ticket is also present"
diff --git a/chrome/renderer/net/net_error_helper.cc b/chrome/renderer/net/net_error_helper.cc
index b30123e..70a69dd 100644
--- a/chrome/renderer/net/net_error_helper.cc
+++ b/chrome/renderer/net/net_error_helper.cc
@@ -98,8 +98,7 @@
 
 #if defined(OS_ANDROID)
 bool IsOfflineContentOnNetErrorFeatureEnabled() {
-  return offline_pages::IsOfflinePagesEnabled() &&
-         base::FeatureList::IsEnabled(features::kNewNetErrorPageUI);
+  return true;
 }
 #else   // OS_ANDROID
 bool IsOfflineContentOnNetErrorFeatureEnabled() {
@@ -109,8 +108,7 @@
 
 #if defined(OS_ANDROID)
 bool IsAutoFetchFeatureEnabled() {
-  return base::FeatureList::IsEnabled(features::kAutoFetchOnNetErrorPage) &&
-         offline_pages::IsOfflinePagesEnabled();
+  return base::FeatureList::IsEnabled(features::kAutoFetchOnNetErrorPage);
 }
 #else   // OS_ANDROID
 bool IsAutoFetchFeatureEnabled() {
diff --git a/chrome/services/cups_proxy/ipp_attribute_validator.cc b/chrome/services/cups_proxy/ipp_attribute_validator.cc
index 16da792..cfc156b 100644
--- a/chrome/services/cups_proxy/ipp_attribute_validator.cc
+++ b/chrome/services/cups_proxy/ipp_attribute_validator.cc
@@ -75,9 +75,11 @@
       {"job-priority-default", {false, ValueType::INTEGER}},
       {"job-priority-supported", {false, ValueType::INTEGER}},
       {"job-quota-period", {false, ValueType::INTEGER}},
-      {"job-sheets", {false, ValueType::STRING}},
-      {"job-sheets-default", {false, ValueType::STRING}},
-      {"job-sheets-supported", {true, ValueType::STRING}},
+      // TODO(crbug.com/1010629): Removed these attributes so they get dropped
+      // from incoming requests, rather than being validated.
+      // {"job-sheets", {false, ValueType::STRING}},
+      // {"job-sheets-default", {false, ValueType::STRING}},
+      // {"job-sheets-supported", {true, ValueType::STRING}},
       {"job-state", {false, ValueType::INTEGER}},
       {"job-state-reasons", {true, ValueType::STRING}},
       {"job-uri", {false, ValueType::STRING}},
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index 53c93f2b..e37561a 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -164,7 +164,6 @@
 
     #"//chrome/app/theme:theme_resources",
     "//chrome/browser:test_support",
-    "//chrome/browser/performance_manager/test_support",
     "//chrome/child",
     "//chrome/common:test_support",
     "//chrome/renderer",
@@ -185,6 +184,7 @@
     "//components/omnibox/browser:test_support",
     "//components/password_manager/core/browser:test_support",
     "//components/payments/core:test_support",
+    "//components/performance_manager/test_support",
     "//components/prefs:test_support",
     "//components/rappor:test_support",
     "//components/safe_browsing/db:v4_test_util",
@@ -872,6 +872,7 @@
       "../browser/devtools/device/usb/android_usb_browsertest.cc",
       "../browser/devtools/devtools_sanity_browsertest.cc",
       "../browser/devtools/global_confirm_info_bar_browsertest.cc",
+      "../browser/devtools/protocol/devtools_protocol_browsertest.cc",
       "../browser/dom_distiller/distillable_page_utils_browsertest.cc",
       "../browser/dom_distiller/dom_distiller_viewer_source_browsertest.cc",
       "../browser/dom_distiller/tab_utils_browsertest.cc",
@@ -3093,32 +3094,12 @@
     "../browser/performance_manager/decorators/page_aggregator_unittest.cc",
     "../browser/performance_manager/decorators/page_almost_idle_decorator_unittest.cc",
     "../browser/performance_manager/decorators/process_metrics_decorator_unittest.cc",
-    "../browser/performance_manager/frame_priority/frame_priority_unittest.cc",
-    "../browser/performance_manager/frame_priority/max_vote_aggregator_unittest.cc",
-    "../browser/performance_manager/frame_priority/override_vote_aggregator_unittest.cc",
-    "../browser/performance_manager/frame_priority/unittest_util.cc",
-    "../browser/performance_manager/frame_priority/unittest_util.h",
-    "../browser/performance_manager/graph/frame_node_impl_unittest.cc",
-    "../browser/performance_manager/graph/graph_impl_operations_unittest.cc",
-    "../browser/performance_manager/graph/graph_impl_unittest.cc",
-    "../browser/performance_manager/graph/graph_operations_unittest.cc",
-    "../browser/performance_manager/graph/node_attached_data_unittest.cc",
-    "../browser/performance_manager/graph/node_base_unittest.cc",
-    "../browser/performance_manager/graph/page_node_impl_unittest.cc",
     "../browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux_unittest.cc",
     "../browser/performance_manager/graph/policies/working_set_trimmer_policy_chromeos_unittest.cc",
     "../browser/performance_manager/graph/policies/working_set_trimmer_policy_unittest.cc",
-    "../browser/performance_manager/graph/process_node_impl_unittest.cc",
-    "../browser/performance_manager/graph/properties_unittest.cc",
-    "../browser/performance_manager/graph/system_node_impl_unittest.cc",
-    "../browser/performance_manager/graph/worker_node_impl_unittest.cc",
     "../browser/performance_manager/mechanisms/working_set_trimmer_win_unittest.cc",
     "../browser/performance_manager/observers/isolation_context_metrics_unittest.cc",
     "../browser/performance_manager/observers/metrics_collector_unittest.cc",
-    "../browser/performance_manager/performance_manager_impl_unittest.cc",
-    "../browser/performance_manager/performance_manager_tab_helper_unittest.cc",
-    "../browser/performance_manager/performance_manager_test_harness.cc",
-    "../browser/performance_manager/performance_manager_test_harness.h",
     "../browser/performance_manager/persistence/site_data/exponential_moving_average_unittest.cc",
     "../browser/performance_manager/persistence/site_data/leveldb_site_data_store_unittest.cc",
     "../browser/performance_manager/persistence/site_data/non_recording_site_data_cache_unittest.cc",
@@ -3131,7 +3112,6 @@
     "../browser/performance_manager/persistence/site_data/unittest_utils.cc",
     "../browser/performance_manager/persistence/site_data/unittest_utils.h",
     "../browser/performance_manager/render_process_host_proxy_unittest.cc",
-    "../browser/performance_manager/web_contents_proxy_unittest.cc",
     "../browser/performance_monitor/metric_evaluator_helper_win_unittest.cc",
     "../browser/performance_monitor/system_monitor_unittest.cc",
     "../browser/permissions/chooser_context_base_mock_permission_observer.cc",
@@ -3601,15 +3581,11 @@
       "//components/offline_pages/core/background:test_support",
       "//components/offline_pages/core/prefetch:test_support",
     ]
-    if (defined(notouch_build) && notouch_build) {
-      defines += [ "DISABLE_OFFLINE_PAGES_TOUCHLESS" ]
-    } else {
-      sources += [
-        "../browser/offline_pages/offline_page_request_handler_unittest.cc",
-        "../browser/offline_pages/offline_page_utils_unittest.cc",
-        "../browser/offline_pages/prefetch/prefetch_instance_id_proxy_unittest.cc",
-      ]
-    }
+    sources += [
+      "../browser/offline_pages/offline_page_request_handler_unittest.cc",
+      "../browser/offline_pages/offline_page_utils_unittest.cc",
+      "../browser/offline_pages/prefetch/prefetch_instance_id_proxy_unittest.cc",
+    ]
   }
 
   if (enable_feed_in_chrome) {
diff --git a/chrome/test/base/ui_test_utils.cc b/chrome/test/base/ui_test_utils.cc
index fbeda56..1b974c3 100644
--- a/chrome/test/base/ui_test_utils.cc
+++ b/chrome/test/base/ui_test_utils.cc
@@ -517,10 +517,9 @@
     base::RunLoop loop;
     auto* storage_partition =
         contents->GetMainFrame()->GetProcess()->GetStoragePartition();
-    net::CookieOptions options;
     net::CookieList cookie_list;
     storage_partition->GetCookieManagerForBrowserProcess()->GetCookieList(
-        url, options,
+        url, net::CookieOptions::MakeAllInclusive(),
         base::BindOnce(GetCookieCallback, loop.QuitClosure(), &cookie_list));
     loop.Run();
 
diff --git a/chrome/test/data/hats/with_inline_js.html b/chrome/test/data/hats/with_inline_js.html
new file mode 100644
index 0000000..1cb04b3
--- /dev/null
+++ b/chrome/test/data/hats/with_inline_js.html
@@ -0,0 +1,7 @@
+<!doctype html>
+<html>
+<head>
+  <script src="$JS_SRC"></script>
+</head>
+<body></body>
+</html>
\ No newline at end of file
diff --git a/chrome/test/data/policy/policy_test_cases.json b/chrome/test/data/policy/policy_test_cases.json
index 79335b6..6ee7351 100644
--- a/chrome/test/data/policy/policy_test_cases.json
+++ b/chrome/test/data/policy/policy_test_cases.json
@@ -1599,6 +1599,22 @@
     "note": "This policy is retired, see https://crbug.com/568184."
   },
 
+  "LegacySameSiteCookieBehaviorEnabled": {
+    "os": ["win", "linux", "mac", "chromeos"],
+    "test_policy": { "LegacySameSiteCookieBehaviorEnabled": 1 },
+    "pref_mappings": [
+      { "pref": "profile.managed_default_content_settings.legacy_cookie_access" }
+    ]
+  },
+
+  "LegacySameSiteCookieBehaviorEnabledForDomainList": {
+    "os": ["win", "linux", "mac", "chromeos"],
+    "test_policy": { "LegacySameSiteCookieBehaviorEnabledForDomainList": ["[*.]google.com"] },
+    "pref_mappings": [
+      { "pref": "profile.managed_legacy_cookie_access_allowed_for_domains" }
+    ]
+  },
+
   "DefaultPluginsSetting": {
     "os": ["win", "linux", "mac", "chromeos"],
     "test_policy": { "DefaultPluginsSetting": 2 },
diff --git a/chrome/test/data/previews/search_results_page.html b/chrome/test/data/previews/search_results_page.html
new file mode 100644
index 0000000..d001c49
--- /dev/null
+++ b/chrome/test/data/previews/search_results_page.html
@@ -0,0 +1,15 @@
+<html>
+  <head>
+  </head>
+  <body>
+    <a id="google" href="https://foo.com/">Google</a>
+    <a id="example" href="https://foo.com/simple_page_with_anchors.html">Same page</a>
+    <a id="example" href="https://foo.com/simple_page_with_anchors.html#">Same page</a>
+    <a id="example" href="https://foo.com/simple_page_with_anchors.html#foobar">Same page</a>
+    <a id="imageSameHref" href="https://foo.com"><img height="1" width="1"></a>
+    <a id="diffHref" href="https://example.com/foo.html">diff</a>
+    <a id="diffHref" href="https://example.com/bar.html">diff</a>
+    <a id="diffHref" href="https://example.com/baz.html">diff</a>
+    <a id="diffHref" href="https://example2.com/foo.html">diff</a>
+  </body>
+</html>
\ No newline at end of file
diff --git a/chrome/test/data/referrer_policy/logo.gif b/chrome/test/data/referrer_policy/logo.gif
new file mode 100644
index 0000000..afa22bc6
--- /dev/null
+++ b/chrome/test/data/referrer_policy/logo.gif
Binary files differ
diff --git a/chrome/test/data/referrer_policy/referrer-policy-subresource.html b/chrome/test/data/referrer_policy/referrer-policy-subresource.html
new file mode 100644
index 0000000..fae33a6
--- /dev/null
+++ b/chrome/test/data/referrer_policy/referrer-policy-subresource.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function run() {
+  const kPolicy = 1;
+  const kRedirect = 2;
+  const re = new RegExp("policy=(.*)&redirect=(.*)");
+  const matches = re.exec(document.location.search);
+
+  if (matches == null) {
+    document.body.innerText = "Could not parse parameters!";
+    return;
+  }
+
+  if (matches[kPolicy] != "no-meta") {
+    const meta = document.createElement("meta");
+    meta.name = "referrer";
+    meta.content = matches[kPolicy];
+    document.head.appendChild(meta);
+  }
+
+  const destination = matches[kRedirect];
+
+  const image = document.createElement("img");
+  image.src = destination;
+  image.onload = function() { document.title = 'loaded'; };
+}
+</script>
+</head>
+<body onload="run()">
+</body>
+</html>
diff --git a/chrome/test/data/webui/BUILD.gn b/chrome/test/data/webui/BUILD.gn
index a4c2fad..0b72161f 100644
--- a/chrome/test/data/webui/BUILD.gn
+++ b/chrome/test/data/webui/BUILD.gn
@@ -54,9 +54,6 @@
   sources = [
     "../../../browser/ui/webui/identity_internals_ui_browsertest.js",
     "../../../browser/ui/webui/sync_internals_browsertest.js",
-    "//third_party/axe-core/axe.js",
-    "a11y/accessibility_audit_rules.js",
-    "a11y/accessibility_test.js",
     "about_invalidations_browsertest.js",
     "assertions.js",
     "async_gen.js",
@@ -79,7 +76,6 @@
     "net_internals/main.js",
     "net_internals/net_internals_test.js",
     "ntp4.js",
-    "polymer_browser_test_base.js",
     "resources/webui_resources_browsertest.js",
     "sandboxstatus_browsertest.js",
     "settings/a11y/about_a11y_test.js",
@@ -87,18 +83,29 @@
     "settings/a11y/basic_a11y_test.js",
     "settings/a11y/edit_dictionary_a11y_test.js",
     "settings/a11y/passwords_a11y_test.js",
-    "settings/a11y/settings_accessibility_test.js",
     "settings/advanced_page_browsertest.js",
     "settings/basic_page_browsertest.js",
     "settings/cr_settings_browsertest.js",
     "settings/help_page_browsertest.js",
     "settings/settings_idle_load_browsertest.js",
-    "settings/settings_page_browsertest.js",
     "settings/site_settings_page_browsertest.js",
     "text_defaults_browsertest.js",
     "webui_resource_async_browsertest.js",
   ]
 
+  gen_include_files = [
+    "a11y/accessibility_audit_rules.js",
+    "a11y/accessibility_test.js",
+    "polymer_browser_test_base.js",
+    "settings/a11y/settings_accessibility_test.js",
+    "settings/settings_page_browsertest.js",
+    "//third_party/axe-core/axe.js",
+  ]
+
+  if (is_chromeos) {
+    gen_include_files += [ "settings/a11y/crostini_accessibility_test.js" ]
+  }
+
   extra_js_files = [
     "test_browser_proxy.js",
     "settings/test_password_manager_proxy.js",
@@ -115,7 +122,6 @@
       "../chromeos/oobe_webui_browsertest.js",
       "certificate_viewer_dialog_test.js",
       "set_time_dialog_browsertest.js",
-      "settings/a11y/crostini_accessibility_test.js",
       "settings/a11y/crostini_settings_details_a11y_test.js",
       "settings/a11y/crostini_settings_export_import_a11y_test.js",
       "settings/a11y/crostini_settings_shared_paths_a11y_test.js",
diff --git a/chrome/test/data/webui/a11y/accessibility_test.js b/chrome/test/data/webui/a11y/accessibility_test.js
index 7a91f31a..ad3d0164 100644
--- a/chrome/test/data/webui/a11y/accessibility_test.js
+++ b/chrome/test/data/webui/a11y/accessibility_test.js
@@ -6,7 +6,7 @@
 
 GEN_INCLUDE([
   'accessibility_audit_rules.js',
-  '../../../../../third_party/axe-core/axe.js',
+  '//third_party/axe-core/axe.js',
 ]);
 
 /**
diff --git a/chromecast/graphics/BUILD.gn b/chromecast/graphics/BUILD.gn
index d6d28fc..bb74cb5 100644
--- a/chromecast/graphics/BUILD.gn
+++ b/chromecast/graphics/BUILD.gn
@@ -12,6 +12,8 @@
     "cast_window_manager.h",
     "gestures/cast_gesture_handler.cc",
     "gestures/cast_gesture_handler.h",
+    "rounded_window_corners.cc",
+    "rounded_window_corners.h",
   ]
 
   deps = [
@@ -63,6 +65,7 @@
       "gestures/multiple_tap_detector.h",
       "gestures/side_swipe_detector.cc",
       "gestures/side_swipe_detector.h",
+      "rounded_window_corners_aura.cc",
     ]
 
     deps += [
@@ -77,6 +80,7 @@
     sources += [
       "cast_window_manager_default.cc",
       "cast_window_manager_default.h",
+      "rounded_window_corners.h",
     ]
   }
 
diff --git a/chromecast/graphics/rounded_window_corners.cc b/chromecast/graphics/rounded_window_corners.cc
new file mode 100644
index 0000000..b801f80
--- /dev/null
+++ b/chromecast/graphics/rounded_window_corners.cc
@@ -0,0 +1,13 @@
+// Copyright 2019 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 "chromecast/graphics/rounded_window_corners.h"
+
+namespace chromecast {
+
+RoundedWindowCorners::RoundedWindowCorners() {}
+
+RoundedWindowCorners::~RoundedWindowCorners() {}
+
+}  // namespace chromecast
diff --git a/chromecast/graphics/rounded_window_corners.h b/chromecast/graphics/rounded_window_corners.h
new file mode 100644
index 0000000..e2239f4
--- /dev/null
+++ b/chromecast/graphics/rounded_window_corners.h
@@ -0,0 +1,28 @@
+// Copyright 2019 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 CHROMECAST_GRAPHICS_ROUNDED_WINDOW_CORNERS_H_
+#define CHROMECAST_GRAPHICS_ROUNDED_WINDOW_CORNERS_H_
+
+#include <memory>
+
+namespace chromecast {
+
+class CastWindowManager;
+
+// A class that draws rounded borders on the corners of the screen.
+class RoundedWindowCorners {
+ public:
+  static std::unique_ptr<RoundedWindowCorners> Create(
+      CastWindowManager* window_manager);
+
+  RoundedWindowCorners();
+  virtual ~RoundedWindowCorners();
+
+  virtual void SetColorInversion(bool enable) = 0;
+};
+
+}  // namespace chromecast
+
+#endif  // CHROMECAST_GRAPHICS_ROUNDED_WINDOW_CORNERS_H_
diff --git a/chromecast/graphics/rounded_window_corners_aura.cc b/chromecast/graphics/rounded_window_corners_aura.cc
new file mode 100644
index 0000000..4838c71f
--- /dev/null
+++ b/chromecast/graphics/rounded_window_corners_aura.cc
@@ -0,0 +1,130 @@
+// Copyright 2019 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 "chromecast/graphics/rounded_window_corners.h"
+
+#include <vector>
+
+#include "base/threading/thread_checker.h"
+#include "chromecast/graphics/cast_window_manager.h"
+#include "ui/aura/window.h"
+#include "ui/gfx/canvas.h"
+#include "ui/views/layout/layout_provider.h"
+#include "ui/views/view.h"
+#include "ui/views/widget/widget.h"
+
+namespace chromecast {
+namespace {
+
+const int kCornerRadius = 10;
+
+// A view that draws a black rounded corner. One should be used for each corner
+// of the main view.
+class BlackCornerView : public views::View {
+ public:
+  BlackCornerView(int radius, bool on_right, bool on_top)
+      : radius_(radius), on_right_(on_right), on_top_(on_top) {}
+
+  ~BlackCornerView() override {}
+
+  void SetColorInversion(bool enable) {
+    // In order to show as black we need to paint white when inversion is on.
+    color_ = enable ? SK_ColorWHITE : SK_ColorBLACK;
+    SchedulePaint();
+  }
+
+ private:
+  void OnPaint(gfx::Canvas* canvas) override {
+    // Draw a black rectangle over everything.
+    canvas->DrawColor(color_);
+    // Then clear out the inner corner.
+    cc::PaintFlags flags;
+    flags.setStrokeWidth(0);
+    flags.setColor(color_);
+    flags.setStyle(cc::PaintFlags::kFill_Style);
+    flags.setAntiAlias(true);
+    flags.setBlendMode(SkBlendMode::kClear);
+    gfx::PointF center_point(on_right_ ? radius_ : 0, on_top_ ? radius_ : 0);
+    canvas->DrawCircle(center_point, radius_, flags);
+  }
+
+  void Layout() override {
+    int x = on_right_ ? 0 : parent()->width() - radius_;
+    int y = on_top_ ? 0 : parent()->height() - radius_;
+    SetBounds(x, y, radius_, radius_);
+  }
+
+  SkColor color_ = SK_ColorBLACK;
+  int radius_;
+  bool on_right_;
+  bool on_top_;
+};
+
+// Aura based implementation of RoundedWindowCorners.
+class RoundedWindowCornersAura : public RoundedWindowCorners {
+ public:
+  explicit RoundedWindowCornersAura(CastWindowManager* window_manager);
+  ~RoundedWindowCornersAura() override;
+
+  void SetColorInversion(bool enable) override;
+
+ private:
+  std::unique_ptr<views::Widget> widget_;
+  views::LayoutProvider layout_provider_;
+
+  std::vector<BlackCornerView*> corners_;
+
+  THREAD_CHECKER(thread_checker_);
+
+  DISALLOW_COPY_AND_ASSIGN(RoundedWindowCornersAura);
+};
+
+RoundedWindowCornersAura::RoundedWindowCornersAura(
+    CastWindowManager* window_manager) {
+  auto main_view = std::make_unique<views::View>();
+  auto add_view = [this, &main_view](int radius, bool on_right, bool on_top) {
+    BlackCornerView* view = new BlackCornerView(radius, on_right, on_top);
+    main_view->AddChildView(view);
+    corners_.push_back(view);
+  };
+  add_view(kCornerRadius, false, false);
+  add_view(kCornerRadius, true, false);
+  add_view(kCornerRadius, false, true);
+  add_view(kCornerRadius, true, true);
+
+  widget_.reset(new views::Widget);
+  views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
+  params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
+  params.context = window_manager->GetRootWindow();
+  params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW;
+  params.bounds = window_manager->GetRootWindow()->GetBoundsInRootWindow();
+  params.accept_events = false;
+  widget_->Init(std::move(params));
+  widget_->SetContentsView(main_view.release());
+  widget_->GetNativeWindow()->SetName("RoundCorners");
+
+  window_manager->SetWindowId(widget_->GetNativeView(),
+                              CastWindowManager::CORNERS_OVERLAY);
+
+  widget_->Show();
+}
+
+RoundedWindowCornersAura::~RoundedWindowCornersAura() {
+  DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+}
+
+void RoundedWindowCornersAura::SetColorInversion(bool enable) {
+  for (auto* view : corners_)
+    view->SetColorInversion(enable);
+}
+
+}  // namespace
+
+// static
+std::unique_ptr<RoundedWindowCorners> RoundedWindowCorners::Create(
+    CastWindowManager* window_manager) {
+  return std::make_unique<RoundedWindowCornersAura>(window_manager);
+}
+
+}  // namespace chromecast
diff --git a/chromecast/graphics/rounded_window_corners_default.cc b/chromecast/graphics/rounded_window_corners_default.cc
new file mode 100644
index 0000000..bdf21ce
--- /dev/null
+++ b/chromecast/graphics/rounded_window_corners_default.cc
@@ -0,0 +1,33 @@
+// Copyright 2019 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 "chromecast/graphics/rounded_window_corners.h"
+
+#include "base/macros.h"
+
+namespace chromecast {
+
+namespace {
+
+// A no-op default implementation of RoundedWindowCorners.
+class RoundedWindowCornersDefault : public RoundedWindowCorners {
+ public:
+  RoundedWindowCornersDefault() {}
+  ~RoundedWindowCornersDefault() override {}
+
+  void SetColorInversion(bool enable) override {}
+
+ private:
+  DISALLOW_COPY_AND_ASSIGN(RoundedWindowCornersDefault);
+};
+
+}  // namespace
+
+// static
+std::unique_ptr<RoundedWindowCorners> RoundedWindowCorners::Create(
+    CastWindowManager* window_manager) {
+  return std::make_unique<RoundedWindowCornersDefault>();
+}
+
+}  // namespace chromecast
diff --git a/chromeos/CHROMEOS_LKGM b/chromeos/CHROMEOS_LKGM
index 34639115..72356e04 100644
--- a/chromeos/CHROMEOS_LKGM
+++ b/chromeos/CHROMEOS_LKGM
@@ -1 +1 @@
-12573.0.0
\ No newline at end of file
+12574.0.0
\ No newline at end of file
diff --git a/chromeos/services/assistant/assistant_manager_service_impl.cc b/chromeos/services/assistant/assistant_manager_service_impl.cc
index 73ec821..4d18717 100644
--- a/chromeos/services/assistant/assistant_manager_service_impl.cc
+++ b/chromeos/services/assistant/assistant_manager_service_impl.cc
@@ -321,6 +321,8 @@
 }
 
 void AssistantManagerServiceImpl::EnableListening(bool enable) {
+  if (!assistant_manager_)
+    return;
   assistant_manager_->EnableListening(enable);
 }
 
diff --git a/chromeos/services/assistant/service.cc b/chromeos/services/assistant/service.cc
index 489ab433..3468381 100644
--- a/chromeos/services/assistant/service.cc
+++ b/chromeos/services/assistant/service.cc
@@ -69,7 +69,7 @@
 
 class Service::Context : public ServiceContext {
  public:
-  Context(Service* parent) : parent_(parent) {}
+  explicit Context(Service* parent) : parent_(parent) {}
   ~Context() override = default;
 
   // ServiceContext:
@@ -233,12 +233,19 @@
   DCHECK(client_);
   session_active_ = activated;
 
-  if (assistant_manager_service_->GetState() !=
-      AssistantManagerService::State::RUNNING) {
-    return;
+  bool is_assistant_running;
+  switch (assistant_manager_service_->GetState()) {
+    case AssistantManagerService::State::STOPPED:
+    case AssistantManagerService::State::STARTING:
+      is_assistant_running = false;
+      break;
+    case AssistantManagerService::State::STARTED:
+    case AssistantManagerService::State::RUNNING:
+      is_assistant_running = true;
+      break;
   }
-
-  client_->OnAssistantStatusChanged(activated /* running */);
+  client_->OnAssistantStatusChanged(is_assistant_running &&
+                                    activated /* running */);
   UpdateListeningState();
 }
 
@@ -513,11 +520,6 @@
 void Service::UpdateListeningState() {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
 
-  if (assistant_manager_service_->GetState() !=
-      AssistantManagerService::State::RUNNING) {
-    return;
-  }
-
   bool should_listen =
       !locked_ &&
       !assistant_state_.locked_full_screen_enabled().value_or(false) &&
diff --git a/components/BUILD.gn b/components/BUILD.gn
index 00a2ab4..9ba9f3b 100644
--- a/components/BUILD.gn
+++ b/components/BUILD.gn
@@ -246,6 +246,7 @@
       "//components/password_manager/content/browser:unit_tests",
       "//components/payments/content:unit_tests",
       "//components/payments/content/utility:unit_tests",
+      "//components/performance_manager:unit_tests",
       "//components/policy/content:unit_tests",
       "//components/policy/core/browser:unit_tests",
       "//components/policy/core/common:unit_tests",
@@ -390,8 +391,6 @@
     ]
   } else if (safe_browsing_mode == 2) {
     deps += [ "//components/safe_browsing/android:unit_tests_mobile" ]
-  } else if (safe_browsing_mode == 3) {
-    deps += [ "//components/safe_browsing/db:unit_tests_desktop" ]
   }
 
   if (!is_ios) {
diff --git a/components/OWNERS b/components/OWNERS
index 753dbd5..4656d0e 100644
--- a/components/OWNERS
+++ b/components/OWNERS
@@ -17,7 +17,6 @@
 per-file management_strings.grdp=file://docs/privacy/OWNERS
 per-file media_message_center_strings.grdp=file://components/media_message_center/OWNERS
 per-file ntp_snippets_strings.grdp=file://components/ntp_snippets/OWNERS
-per-file ntp_tiles_strings.grdp=file://components/ntp_tiles/OWNERS
 per-file omnibox_strings.grdp=file://components/omnibox/OWNERS
 per-file page_info_strings.grdp=file://chrome/browser/ui/page_info/OWNERS
 per-file password_manager_strings.grdp=file://components/password_manager/OWNERS
diff --git a/components/components_strings.grd b/components/components_strings.grd
index c4bf49a..e7afc91 100644
--- a/components/components_strings.grd
+++ b/components/components_strings.grd
@@ -210,7 +210,6 @@
       <part file="media_message_center_strings.grdp" />
       <part file="new_or_sad_tab_strings.grdp" />
       <part file="ntp_snippets_strings.grdp" />
-      <part file="ntp_tiles_strings.grdp" />
       <part file="omnibox_strings.grdp" />
       <part file="page_info_strings.grdp" />
       <part file="password_manager_strings.grdp" />
diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.cc b/components/embedder_support/android/delegate/web_contents_delegate_android.cc
index 5316b98..3ba63a1 100644
--- a/components/embedder_support/android/delegate/web_contents_delegate_android.cc
+++ b/components/embedder_support/android/delegate/web_contents_delegate_android.cc
@@ -189,20 +189,27 @@
   Java_WebContentsDelegateAndroid_rendererResponsive(env, obj);
 }
 
-bool WebContentsDelegateAndroid::IsWebContentsCreationOverridden(
+bool WebContentsDelegateAndroid::ShouldCreateWebContents(
+    content::WebContents* web_contents,
+    content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
-    const GURL& target_url) {
+    const GURL& target_url,
+    const std::string& partition_id,
+    content::SessionStorageNamespace* session_storage_namespace) {
   JNIEnv* env = AttachCurrentThread();
   ScopedJavaLocalRef<jobject> obj = GetJavaDelegate(env);
   if (obj.is_null())
-    return false;
+    return true;
   ScopedJavaLocalRef<jstring> java_url =
       ConvertUTF8ToJavaString(env, target_url.spec());
-  return !Java_WebContentsDelegateAndroid_shouldCreateWebContents(env, obj,
-                                                                  java_url);
+  return Java_WebContentsDelegateAndroid_shouldCreateWebContents(env, obj,
+                                                                 java_url);
 }
 
 void WebContentsDelegateAndroid::WebContentsCreated(
diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.h b/components/embedder_support/android/delegate/web_contents_delegate_android.h
index 3127006a..62ccbc2 100644
--- a/components/embedder_support/android/delegate/web_contents_delegate_android.h
+++ b/components/embedder_support/android/delegate/web_contents_delegate_android.h
@@ -76,12 +76,19 @@
                           const std::string& frame_name,
                           const GURL& target_url,
                           content::WebContents* new_contents) override;
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override;
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) override;
   void CloseContents(content::WebContents* source) override;
   void SetContentsBounds(content::WebContents* source,
                          const gfx::Rect& bounds) override;
diff --git a/components/error_page/common/localized_error.cc b/components/error_page/common/localized_error.cc
index ec5ca75..17848be 100644
--- a/components/error_page/common/localized_error.cc
+++ b/components/error_page/common/localized_error.cc
@@ -1036,7 +1036,7 @@
   if (!is_post && !result.reload_button_shown && !is_incognito &&
       failed_url.is_valid() && failed_url.SchemeIsHTTPOrHTTPS() &&
       IsOfflineError(error_domain, error_code)) {
-    if (!auto_fetch_feature_enabled && offline_pages::IsOfflinePagesEnabled()) {
+    if (!auto_fetch_feature_enabled) {
       result.download_button_shown = true;
       result.strings.SetPath({"downloadButton", "msg"},
                              base::Value(l10n_util::GetStringUTF16(
diff --git a/components/history/core/browser/history_database.h b/components/history/core/browser/history_database.h
index 8a73ede..6c552c4 100644
--- a/components/history/core/browser/history_database.h
+++ b/components/history/core/browser/history_database.h
@@ -30,14 +30,7 @@
 class FilePath;
 }
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_InMemoryURLIndexTest DISABLED_InMemoryURLIndexTest
-#else
-#define MAYBE_InMemoryURLIndexTest InMemoryURLIndexTest
-#endif
-
-class MAYBE_InMemoryURLIndexTest;
+class InMemoryURLIndexTest;
 
 namespace history {
 
@@ -173,8 +166,7 @@
   friend class AndroidProviderBackend;
   FRIEND_TEST_ALL_PREFIXES(AndroidURLsMigrationTest, MigrateToVersion22);
 #endif
-
-  friend class ::MAYBE_InMemoryURLIndexTest;
+  friend class ::InMemoryURLIndexTest;
 
   // Overridden from URLDatabase, DownloadDatabase, VisitDatabase,
   // VisitSegmentDatabase and TypedURLSyncMetadataDatabase.
diff --git a/components/history/core/browser/history_service.h b/components/history/core/browser/history_service.h
index e359f84..481c140 100644
--- a/components/history/core/browser/history_service.h
+++ b/components/history/core/browser/history_service.h
@@ -39,24 +39,10 @@
 #include "sql/init_status.h"
 #include "ui/base/page_transition_types.h"
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_HistoryQuickProviderTest DISABLED_HistoryQuickProviderTest
-#else
-#define MAYBE_HistoryQuickProviderTest HistoryQuickProviderTest
-#endif
-
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_HistoryQuickProviderTest DISABLED_HistoryQuickProviderTest
-#else
-#define MAYBE_HistoryQuickProviderTest HistoryQuickProviderTest
-#endif
-
 class GURL;
-class MAYBE_HistoryQuickProviderTest;
+class HistoryQuickProviderTest;
 class HistoryURLProvider;
-class MAYBE_InMemoryURLIndexTest;
+class InMemoryURLIndexTest;
 class SkBitmap;
 class SyncBookmarkDataTypeControllerTest;
 class TestingProfile;
@@ -557,11 +543,11 @@
   friend class favicon::FaviconServiceImpl;
   friend class HistoryBackend;
   friend class HistoryQueryTest;
-  friend class ::MAYBE_HistoryQuickProviderTest;
+  friend class ::HistoryQuickProviderTest;
   friend class HistoryServiceTest;
   friend class ::HistoryURLProvider;
   friend class HQPPerfTestOnePopularURL;
-  friend class ::MAYBE_InMemoryURLIndexTest;
+  friend class ::InMemoryURLIndexTest;
   friend class ::SyncBookmarkDataTypeControllerTest;
   friend class ::TestingProfile;
   friend std::unique_ptr<HistoryService> CreateHistoryService(
diff --git a/components/metrics/file_metrics_provider.cc b/components/metrics/file_metrics_provider.cc
index 8217c95f..91aeaf8 100644
--- a/components/metrics/file_metrics_provider.cc
+++ b/components/metrics/file_metrics_provider.cc
@@ -208,9 +208,8 @@
   // |prefs_key| may be empty if the caller does not wish to persist the
   // state across instances of the program.
   if (pref_service_ && !params.prefs_key.empty()) {
-    source->last_seen = base::Time::FromInternalValue(
-        pref_service_->GetInt64(metrics::prefs::kMetricsLastSeenPrefix +
-                                source->prefs_key));
+    source->last_seen = pref_service_->GetTime(
+        metrics::prefs::kMetricsLastSeenPrefix + source->prefs_key);
   }
 
   switch (params.association) {
@@ -696,9 +695,9 @@
   // Persistently record the "last seen" timestamp of the source file to
   // ensure that the file is never read again unless it is modified again.
   if (pref_service_ && !source->prefs_key.empty()) {
-    pref_service_->SetInt64(
+    pref_service_->SetTime(
         metrics::prefs::kMetricsLastSeenPrefix + source->prefs_key,
-        source->last_seen.ToInternalValue());
+        source->last_seen);
   }
 }
 
diff --git a/components/module_installer/android/BUILD.gn b/components/module_installer/android/BUILD.gn
index 26e07b6..da60bc96c 100644
--- a/components/module_installer/android/BUILD.gn
+++ b/components/module_installer/android/BUILD.gn
@@ -83,11 +83,12 @@
   deps = [
     ":jni_headers",
     "//base",
+    "//ui/base",
   ]
 
   # The method used to load and register JNI for native libraries depends
   # heavily on build type.
-  if (use_native_modules) {
+  if (use_native_partitions) {
     defines = [ "LOAD_FROM_PARTITIONS" ]
   } else if (is_component_build) {
     defines = [ "LOAD_FROM_COMPONENTS" ]
diff --git a/components/module_installer/android/DEPS b/components/module_installer/android/DEPS
index dd7bee2..3151176e 100644
--- a/components/module_installer/android/DEPS
+++ b/components/module_installer/android/DEPS
@@ -1,3 +1,4 @@
 include_rules = [
   "+components/crash/android",
+  "+ui/base/resource",
 ]
diff --git a/components/module_installer/android/java/src/org/chromium/components/module_installer/builder/Module.java b/components/module_installer/android/java/src/org/chromium/components/module_installer/builder/Module.java
index 5a25b1c..3b85d5a 100644
--- a/components/module_installer/android/java/src/org/chromium/components/module_installer/builder/Module.java
+++ b/components/module_installer/android/java/src/org/chromium/components/module_installer/builder/Module.java
@@ -14,6 +14,7 @@
 
 import java.util.HashSet;
 import java.util.Set;
+import java.util.TreeSet;
 
 /**
  * Represents a feature module. Can be used to install the module, access its interface, etc. See
@@ -24,16 +25,27 @@
  */
 @JNINamespace("module_installer")
 public class Module<T> {
+    private static final Set<String> sInitializedModules = new HashSet<>();
+    private static Set<String> sPendingNativeRegistrations = new TreeSet<>();
+
     private final String mName;
     private final Class<T> mInterfaceClass;
     private final String mImplClassName;
-
     private T mImpl;
-
     private InstallEngine mInstaller;
 
-    private static boolean sNativeInitialized;
-    private static final Set<String> sPendingNativeRegistrations = new HashSet<>();
+    /**
+     * To be called after the main native library has been loaded. Any module instances created
+     * before the native library is loaded have their native component queued for loading and
+     * registration. Calling this methed completes that process.
+     */
+    public static void doDeferredNativeRegistrations() {
+        if (sPendingNativeRegistrations == null) return;
+        for (String name : sPendingNativeRegistrations) {
+            loadNative(name);
+        }
+        sPendingNativeRegistrations = null;
+    }
 
     /**
      * Instantiates a module.
@@ -98,52 +110,51 @@
      */
     public T getImpl() {
         try (Timer timer = new Timer()) {
-            assert isInstalled();
-            if (mImpl == null) {
-                // Accessing classes in the module may cause its DEX file to be loaded. And on some
-                // devices that causes a read mode violation.
-                try (StrictModeContext ignored = StrictModeContext.allowDiskReads()) {
-                    mImpl = mInterfaceClass.cast(Class.forName(mImplClassName).newInstance());
-                } catch (ClassNotFoundException | InstantiationException | IllegalAccessException
-                        | IllegalArgumentException e) {
-                    throw new RuntimeException(e);
-                }
+            if (mImpl != null) return mImpl;
 
-                // Load the module's native library if there's one present, and the Chrome native
-                // library itself has been loaded.
-                if (sNativeInitialized) {
-                    loadNativeLibrary(mName);
-                } else {
-                    sPendingNativeRegistrations.add(mName);
-                }
+            assert isInstalled();
+            // Accessing classes in the module may cause its DEX file to be loaded. And on some
+            // devices that causes a read mode violation.
+            try (StrictModeContext ignored = StrictModeContext.allowDiskReads()) {
+                mImpl = mInterfaceClass.cast(Class.forName(mImplClassName).newInstance());
+            } catch (ClassNotFoundException | InstantiationException | IllegalAccessException
+                    | IllegalArgumentException e) {
+                throw new RuntimeException(e);
+            }
+
+            // Load the module's native code and/or resources if they are present, and the Chrome
+            // native library itself has been loaded.
+            if (sPendingNativeRegistrations == null) {
+                loadNative(mName);
+            } else {
+                // We have to defer native initialization because VR is calling getImpl in early
+                // startup. As soon as VR stops doing that we want to deprecate deferred native
+                // initialization.
+                sPendingNativeRegistrations.add(mName);
             }
             return mImpl;
         }
     }
 
-    private static void loadNativeLibrary(String name) {
-        // TODO(https://crbug.com/870055): Whitelist modules, until each module explicitly indicates
-        // its need for library loading through this system.
-        if (!"test_dummy".equals(name)) return;
-
-        ModuleJni.get().loadNativeLibrary(name);
-    }
-
-    /**
-     * To be called after the main native library has been loaded. Any module instances
-     * created before the native library is loaded have their native component queued
-     * for loading and registration. Calling this methed completes that process.
-     **/
-    public static void doDeferredNativeRegistrations() {
-        for (String name : sPendingNativeRegistrations) {
-            loadNativeLibrary(name);
+    private static void loadNative(String name) {
+        // Can only initialize native once per lifetime of Chrome.
+        if (sInitializedModules.contains(name)) return;
+        // TODO(crbug.com/870055, crbug.com/986960): Automatically determine if module has native
+        // code or resources instead of whitelisting.
+        boolean loadLibrary = false;
+        boolean loadResources = false;
+        if ("test_dummy".equals(name)) {
+            loadLibrary = true;
+            loadResources = true;
         }
-        sPendingNativeRegistrations.clear();
-        sNativeInitialized = true;
+        if (loadLibrary || loadResources) {
+            ModuleJni.get().loadNative(name, loadLibrary, loadResources);
+        }
+        sInitializedModules.add(name);
     }
 
     @NativeMethods
     interface Natives {
-        void loadNativeLibrary(String name);
+        void loadNative(String name, boolean loadLibrary, boolean loadResources);
     }
 }
diff --git a/components/module_installer/android/module.cc b/components/module_installer/android/module.cc
index 3c78b93..4608bc0 100644
--- a/components/module_installer/android/module.cc
+++ b/components/module_installer/android/module.cc
@@ -3,13 +3,16 @@
 // found in the LICENSE file.
 
 #include <dlfcn.h>
+#include <string>
 
 #include "base/android/bundle_utils.h"
 #include "base/android/jni_android.h"
 #include "base/android/jni_string.h"
 #include "base/logging.h"
 #include "base/strings/utf_string_conversions.h"
+#include "base/threading/thread_restrictions.h"
 #include "components/module_installer/android/jni_headers/Module_jni.h"
+#include "ui/base/resource/resource_bundle_android.h"
 
 using base::android::BundleUtils;
 
@@ -28,14 +31,29 @@
 
 namespace module_installer {
 
+// Allows memory mapping module PAK files on the main thread.
+//
+// We expect the memory mapping step to be quick. All it does is retrieve a
+// region from the APK file that should already be memory mapped and read the
+// PAK file header. Most of the disk IO is happening when accessing a resource.
+// And this traditionally happens synchronously on the main thread.
+//
+// This class needs to be a friend of base::ScopedAllowBlocking and so cannot be
+// in the unnamed namespace.
+class ScopedAllowModulePakLoad {
+ public:
+  ScopedAllowModulePakLoad() {}
+  ~ScopedAllowModulePakLoad() {}
+
+ private:
+  base::ScopedAllowBlocking allow_blocking_;
+};
+
+namespace {
+
 typedef bool JniRegistrationFunction(JNIEnv* env);
 
-static void JNI_Module_LoadNativeLibrary(
-    JNIEnv* env,
-    const base::android::JavaParamRef<jstring>& jtext) {
-  std::string library_name;
-  base::android::ConvertJavaStringToUTF8(env, jtext, &library_name);
-
+void LoadLibrary(JNIEnv* env, const std::string& library_name) {
   JniRegistrationFunction* registration_function = nullptr;
 
 #if defined(LOAD_FROM_PARTITIONS) || defined(LOAD_FROM_COMPONENTS)
@@ -61,8 +79,8 @@
                            << dlerror();
   registration_function = reinterpret_cast<JniRegistrationFunction*>(symbol);
 #else   // defined(LOAD_FROM_PARTITIONS) || defined(LOAD_FROM_COMPONENTS)
-  // TODO(https://crbug.com/870055): Similar to the declarations above, this map
-  // could be auto-generated.
+  // TODO(https://crbug.com/1011834): Remove this code path (and anything
+  // associated with it) once there's confidence partitions will stay enabled.
   const std::map<std::string, JniRegistrationFunction*> modules = {
       {"test_dummy", JNI_OnLoad_test_dummy}};
   registration_function = modules.at(library_name);
@@ -72,4 +90,26 @@
       << "JNI registration failed: " << library_name;
 }
 
+void LoadResources(const std::string& name) {
+  module_installer::ScopedAllowModulePakLoad scoped_allow_module_pak_load;
+  ui::LoadPackFileFromApk("assets/" + name + "_resources.pak");
+}
+
+}  // namespace
+
+static void JNI_Module_LoadNative(
+    JNIEnv* env,
+    const base::android::JavaParamRef<jstring>& jname,
+    jboolean load_library,
+    jboolean load_resources) {
+  std::string name;
+  base::android::ConvertJavaStringToUTF8(env, jname, &name);
+  if (load_library) {
+    LoadLibrary(env, name);
+  }
+  if (load_resources) {
+    LoadResources(name);
+  }
+}
+
 }  // namespace module_installer
diff --git a/components/nacl/common/nacl.mojom b/components/nacl/common/nacl.mojom
index 70b12869..a1d6e47 100644
--- a/components/nacl/common/nacl.mojom
+++ b/components/nacl/common/nacl.mojom
@@ -18,7 +18,7 @@
   [Sync]
   ReportLoadStatus(NaClErrorCode load_status) => ();
 
-  ProvideExitControl(NaClExitControl exit_control);
+  ProvideExitControl(pending_remote<NaClExitControl> exit_control);
 };
 
 // When this interface is closed, it indicates that the NaCl loader process
diff --git a/components/nacl/loader/nacl_listener.cc b/components/nacl/loader/nacl_listener.cc
index f78eeffe..083dd5aa 100644
--- a/components/nacl/loader/nacl_listener.cc
+++ b/components/nacl/loader/nacl_listener.cc
@@ -36,6 +36,7 @@
 #include "ipc/ipc_channel_handle.h"
 #include "ipc/ipc_sync_channel.h"
 #include "ipc/ipc_sync_message_filter.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
 #include "native_client/src/public/chrome_main.h"
 #include "native_client/src/public/nacl_app.h"
 #include "native_client/src/public/nacl_desc.h"
@@ -332,10 +333,10 @@
       base::Bind(&NaClListener::ResolveFileToken, base::Unretained(this)),
       base::Bind(&NaClListener::OnOpenResource, base::Unretained(this)));
 
-  nacl::mojom::NaClRendererHostPtr renderer_host;
+  mojo::PendingRemote<nacl::mojom::NaClRendererHost> renderer_host;
   if (!Send(new NaClProcessHostMsg_PpapiChannelsCreated(
           browser_handle, ppapi_renderer_handle,
-          MakeRequest(&renderer_host).PassMessagePipe().release(),
+          renderer_host.InitWithNewPipeAndPassReceiver().PassPipe().release(),
           manifest_service_handle, ro_shmem_region)))
     LOG(FATAL) << "Failed to send IPC channel handle to NaClProcessHost.";
 
diff --git a/components/nacl/loader/nacl_trusted_listener.cc b/components/nacl/loader/nacl_trusted_listener.cc
index 4c8e659..c2c60b586 100644
--- a/components/nacl/loader/nacl_trusted_listener.cc
+++ b/components/nacl/loader/nacl_trusted_listener.cc
@@ -10,7 +10,8 @@
 #include "base/bind.h"
 #include "base/single_thread_task_runner.h"
 #include "build/build_config.h"
-#include "mojo/public/cpp/bindings/strong_binding.h"
+#include "mojo/public/cpp/bindings/pending_receiver.h"
+#include "mojo/public/cpp/bindings/self_owned_receiver.h"
 #include "native_client/src/public/chrome_main.h"
 
 namespace {
@@ -36,24 +37,25 @@
   }
 };
 
-void CreateExitControl(nacl::mojom::NaClExitControlRequest request) {
-  mojo::MakeStrongBinding(std::make_unique<NaClExitControlImpl>(),
-                          std::move(request));
+void CreateExitControl(
+    mojo::PendingReceiver<nacl::mojom::NaClExitControl> receiver) {
+  mojo::MakeSelfOwnedReceiver(std::make_unique<NaClExitControlImpl>(),
+                              std::move(receiver));
 }
 
 }  // namespace
 
 NaClTrustedListener::NaClTrustedListener(
-    nacl::mojom::NaClRendererHostPtr renderer_host,
+    mojo::PendingRemote<nacl::mojom::NaClRendererHost> renderer_host,
     base::SingleThreadTaskRunner* io_task_runner)
     : renderer_host_(std::move(renderer_host)) {
-  nacl::mojom::NaClExitControlPtr exit_control;
+  mojo::PendingRemote<nacl::mojom::NaClExitControl> exit_control;
   // The exit control binding must run on the IO thread. The main thread used
   // by NaClListener is busy in NaClChromeMainAppStart(), so it can't be used
   // for servicing messages.
   io_task_runner->PostTask(
-      FROM_HERE,
-      base::BindOnce(&CreateExitControl, mojo::MakeRequest(&exit_control)));
+      FROM_HERE, base::BindOnce(&CreateExitControl,
+                                exit_control.InitWithNewPipeAndPassReceiver()));
   renderer_host_->ProvideExitControl(std::move(exit_control));
 }
 
diff --git a/components/nacl/loader/nacl_trusted_listener.h b/components/nacl/loader/nacl_trusted_listener.h
index 27a9b24..423076d 100644
--- a/components/nacl/loader/nacl_trusted_listener.h
+++ b/components/nacl/loader/nacl_trusted_listener.h
@@ -7,6 +7,8 @@
 
 #include "base/macros.h"
 #include "components/nacl/common/nacl.mojom.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
+#include "mojo/public/cpp/bindings/remote.h"
 
 namespace base {
 class SingleThreadTaskRunner;
@@ -14,8 +16,9 @@
 
 class NaClTrustedListener {
  public:
-  NaClTrustedListener(nacl::mojom::NaClRendererHostPtr renderer_host,
-                      base::SingleThreadTaskRunner* io_task_runner);
+  NaClTrustedListener(
+      mojo::PendingRemote<nacl::mojom::NaClRendererHost> renderer_host,
+      base::SingleThreadTaskRunner* io_task_runner);
   ~NaClTrustedListener();
 
   nacl::mojom::NaClRendererHost* renderer_host() {
@@ -23,7 +26,7 @@
   }
 
  private:
-  nacl::mojom::NaClRendererHostPtr renderer_host_;
+  mojo::Remote<nacl::mojom::NaClRendererHost> renderer_host_;
 
   DISALLOW_COPY_AND_ASSIGN(NaClTrustedListener);
 };
diff --git a/components/nacl/loader/nonsfi/nonsfi_listener.cc b/components/nacl/loader/nonsfi/nonsfi_listener.cc
index b6ca289..e0041901 100644
--- a/components/nacl/loader/nonsfi/nonsfi_listener.cc
+++ b/components/nacl/loader/nonsfi/nonsfi_listener.cc
@@ -24,6 +24,7 @@
 #include "ipc/ipc_channel.h"
 #include "ipc/ipc_channel_handle.h"
 #include "ipc/ipc_sync_channel.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
 #include "native_client/src/public/nonsfi/irt_random.h"
 #include "ppapi/nacl_irt/irt_manifest.h"
 #include "ppapi/nacl_irt/plugin_startup.h"
@@ -106,10 +107,10 @@
   ppapi::StartUpPlugin();
 
   trusted_listener_ = std::make_unique<NaClTrustedListener>(
-      mojo::MakeProxy(nacl::mojom::NaClRendererHostPtrInfo(
+      mojo::PendingRemote<nacl::mojom::NaClRendererHost>(
           mojo::ScopedMessagePipeHandle(
               params.trusted_service_channel_handle.mojo_handle),
-          nacl::mojom::NaClRendererHost::Version_)),
+          nacl::mojom::NaClRendererHost::Version_),
       io_thread_.task_runner().get());
 
   // Ensure that the validation cache key (used as an extra input to the
diff --git a/components/nacl/renderer/ppb_nacl_private_impl.cc b/components/nacl/renderer/ppb_nacl_private_impl.cc
index 7e516c5..4b8e01d 100644
--- a/components/nacl/renderer/ppb_nacl_private_impl.cc
+++ b/components/nacl/renderer/ppb_nacl_private_impl.cc
@@ -51,6 +51,7 @@
 #include "content/public/renderer/render_thread.h"
 #include "content/public/renderer/render_view.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
+#include "mojo/public/cpp/bindings/pending_receiver.h"
 #include "net/base/data_url.h"
 #include "net/base/net_errors.h"
 #include "net/http/http_util.h"
@@ -533,8 +534,9 @@
   std::unique_ptr<TrustedPluginChannel> trusted_plugin_channel(
       new TrustedPluginChannel(
           load_manager,
-          mojom::NaClRendererHostRequest(mojo::ScopedMessagePipeHandle(
-              launch_result.trusted_ipc_channel_handle.mojo_handle)),
+          mojo::PendingReceiver<mojom::NaClRendererHost>(
+              mojo::ScopedMessagePipeHandle(
+                  launch_result.trusted_ipc_channel_handle.mojo_handle)),
           is_helper_nexe));
   load_manager->set_trusted_plugin_channel(std::move(trusted_plugin_channel));
 
diff --git a/components/nacl/renderer/trusted_plugin_channel.cc b/components/nacl/renderer/trusted_plugin_channel.cc
index ff851da..d2bb3e0 100644
--- a/components/nacl/renderer/trusted_plugin_channel.cc
+++ b/components/nacl/renderer/trusted_plugin_channel.cc
@@ -16,12 +16,12 @@
 
 TrustedPluginChannel::TrustedPluginChannel(
     NexeLoadManager* nexe_load_manager,
-    mojom::NaClRendererHostRequest request,
+    mojo::PendingReceiver<mojom::NaClRendererHost> receiver,
     bool is_helper_nexe)
     : nexe_load_manager_(nexe_load_manager),
-      binding_(this, std::move(request)),
+      receiver_(this, std::move(receiver)),
       is_helper_nexe_(is_helper_nexe) {
-  binding_.set_connection_error_handler(base::BindOnce(
+  receiver_.set_disconnect_handler(base::BindOnce(
       &TrustedPluginChannel::OnChannelError, base::Unretained(this)));
 }
 
@@ -64,8 +64,8 @@
 }
 
 void TrustedPluginChannel::ProvideExitControl(
-    mojom::NaClExitControlPtr exit_control) {
-  exit_control_ = std::move(exit_control);
+    mojo::PendingRemote<mojom::NaClExitControl> exit_control) {
+  exit_control_.Bind(std::move(exit_control));
 }
 
 }  // namespace nacl
diff --git a/components/nacl/renderer/trusted_plugin_channel.h b/components/nacl/renderer/trusted_plugin_channel.h
index f562f89..4353829 100644
--- a/components/nacl/renderer/trusted_plugin_channel.h
+++ b/components/nacl/renderer/trusted_plugin_channel.h
@@ -10,7 +10,10 @@
 #include "base/callback.h"
 #include "base/macros.h"
 #include "components/nacl/common/nacl.mojom.h"
-#include "mojo/public/cpp/bindings/binding.h"
+#include "mojo/public/cpp/bindings/pending_receiver.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
+#include "mojo/public/cpp/bindings/receiver.h"
+#include "mojo/public/cpp/bindings/remote.h"
 #include "native_client/src/trusted/service_runtime/nacl_error_code.h"
 #include "ppapi/c/pp_instance.h"
 
@@ -20,7 +23,7 @@
 class TrustedPluginChannel : public mojom::NaClRendererHost {
  public:
   TrustedPluginChannel(NexeLoadManager* nexe_load_manager,
-                       mojom::NaClRendererHostRequest request,
+                       mojo::PendingReceiver<mojom::NaClRendererHost> receiver,
                        bool is_helper_nexe);
   ~TrustedPluginChannel() override;
 
@@ -32,13 +35,14 @@
                         ReportExitStatusCallback callback) override;
   void ReportLoadStatus(NaClErrorCode load_status,
                         ReportLoadStatusCallback callback) override;
-  void ProvideExitControl(mojom::NaClExitControlPtr exit_control) override;
+  void ProvideExitControl(
+      mojo::PendingRemote<mojom::NaClExitControl> exit_control) override;
 
   // Non-owning pointer. This is safe because the TrustedPluginChannel is owned
   // by the NexeLoadManager pointed to here.
   NexeLoadManager* nexe_load_manager_;
-  mojo::Binding<mojom::NaClRendererHost> binding_;
-  mojom::NaClExitControlPtr exit_control_;
+  mojo::Receiver<mojom::NaClRendererHost> receiver_;
+  mojo::Remote<mojom::NaClExitControl> exit_control_;
   const bool is_helper_nexe_;
 
   DISALLOW_COPY_AND_ASSIGN(TrustedPluginChannel);
diff --git a/components/neterror/resources/images/default_100_percent/offline/100-offline-instruction.png b/components/neterror/resources/images/default_100_percent/offline/100-offline-instruction.png
deleted file mode 100644
index 33d4f27..0000000
--- a/components/neterror/resources/images/default_100_percent/offline/100-offline-instruction.png
+++ /dev/null
Binary files differ
diff --git a/components/neterror/resources/neterror.html b/components/neterror/resources/neterror.html
index 705793b..8412900 100644
--- a/components/neterror/resources/neterror.html
+++ b/components/neterror/resources/neterror.html
@@ -131,11 +131,6 @@
     <div id="sub-frame-error-details" jsselect="summary" jsvalues=".innerHTML:msg"></div>
   </div>
 
-<if expr="SHOW_INSTRUCTIONS_FOR_DINO_PAGE">
-  <div id="offline-instruction" class="hidden">
-    <img src="images/default_100_percent/offline/100-offline-instruction.png"/>
-  </div>
-</if>
   <div id="offline-resources">
     <img id="offline-resources-1x" src="images/default_100_percent/offline/100-offline-sprite.png">
     <img id="offline-resources-2x" src="images/default_200_percent/offline/200-offline-sprite.png">
diff --git a/components/neterror/resources/neterror.js b/components/neterror/resources/neterror.js
index 9776a16..19aec6c 100644
--- a/components/neterror/resources/neterror.js
+++ b/components/neterror/resources/neterror.js
@@ -323,14 +323,6 @@
       loadTimeData.getValue('downloadButton').msg;
   var detailsButton = document.getElementById('details-button');
 
-// <if expr="HIDE_ERROR_MESSAGE_FOR_DINO_PAGE">
-  if ('chrome://dino/' == document.title) {
-    // If the user explicitly loads the dino page, don't show offline
-    // information as it's not accurate.
-    document.getElementById('main-message').classList.add(HIDDEN_CLASS);
-  }
-// </if>
-
   // If offline content suggestions will be visible, the usual buttons will not
   // be presented.
   var offlineContentVisible =
diff --git a/components/neterror/resources/offline.js b/components/neterror/resources/offline.js
index 3cdea7d..c8072fd 100644
--- a/components/neterror/resources/offline.js
+++ b/components/neterror/resources/offline.js
@@ -393,14 +393,6 @@
 
     this.outerContainerEl.appendChild(this.containerEl);
 
-// <if expr="SHOW_INSTRUCTIONS_FOR_DINO_PAGE">
-    if (this.isArcadeMode()) {
-      document.querySelector('#offline-instruction').classList
-          .remove(HIDDEN_CLASS);
-      this.containerEl.style.top = '50px'
-    }
-// </if>
-
     this.startListening();
     this.update();
 
@@ -487,12 +479,6 @@
       this.playingIntro = true;
       this.tRex.playingIntro = true;
 
-// <if expr="SHOW_INSTRUCTIONS_FOR_DINO_PAGE">
-      if (this.isArcadeMode()) {
-        document.querySelector('#offline-instruction').classList
-            .add(HIDDEN_CLASS);
-      }
-// </if>
       // CSS animation definition.
       var keyframes = '@-webkit-keyframes intro { ' +
             'from { width:' + Trex.config.WIDTH + 'px }' +
@@ -967,10 +953,6 @@
         Runner.config.ARCADE_MODE_INITIAL_TOP_POSITION) *
         Runner.config.ARCADE_MODE_TOP_POSITION_PERCENT)) *
         window.devicePixelRatio;
-// <if expr="SHOW_INSTRUCTIONS_FOR_DINO_PAGE">
-    // We add top padding in Runner#init, no need to do it here.
-    translateY = 0;
-// </if>
     this.containerEl.style.transform = 'scale(' + scale + ') translateY(' +
         translateY + 'px)';
   },
diff --git a/components/ntp_tiles_strings.grdp b/components/ntp_tiles_strings.grdp
deleted file mode 100644
index 6500dc8d..0000000
--- a/components/ntp_tiles_strings.grdp
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<grit-part>
-  <if expr="not is_android">
-      <!-- The title for the Google Search shortcut. -->
-      <message name="IDS_NTP_DEFAULT_SEARCH_TITLE" translateable="false" desc="The label for the default Search shortcut on the New Tab Page.">
-        Google
-      </message>
-
-      <!-- The URL for the Google Search shortcut. -->
-      <message name="IDS_NTP_DEFAULT_SEARCH_URL" translateable="false">
-        https://www.google.com
-      </message>
-  </if>
-</grit-part>
diff --git a/components/offline_pages/content/background_loader/background_loader_contents.cc b/components/offline_pages/content/background_loader/background_loader_contents.cc
index 030e61f..b0b86f1 100644
--- a/components/offline_pages/content/background_loader/background_loader_contents.cc
+++ b/components/offline_pages/content/background_loader/background_loader_contents.cc
@@ -76,14 +76,21 @@
   }
 }
 
-bool BackgroundLoaderContents::IsWebContentsCreationOverridden(
+bool BackgroundLoaderContents::ShouldCreateWebContents(
+    content::WebContents* web_contents,
+    content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
-    const GURL& target_url) {
+    const GURL& target_url,
+    const std::string& partition_id,
+    content::SessionStorageNamespace* session_storage_namespace) {
   // Background pages should not create other webcontents/tabs.
-  return true;
+  return false;
 }
 
 void BackgroundLoaderContents::AddNewContents(
diff --git a/components/offline_pages/content/background_loader/background_loader_contents.h b/components/offline_pages/content/background_loader/background_loader_contents.h
index cac688e..77638f0 100644
--- a/components/offline_pages/content/background_loader/background_loader_contents.h
+++ b/components/offline_pages/content/background_loader/background_loader_contents.h
@@ -56,12 +56,19 @@
                    const std::string& request_method,
                    base::OnceCallback<void(bool)> callback) override;
 
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override;
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) override;
 
   void AddNewContents(content::WebContents* source,
                       std::unique_ptr<content::WebContents> new_contents,
diff --git a/components/offline_pages/content/background_loader/background_loader_contents_unittest.cc b/components/offline_pages/content/background_loader/background_loader_contents_unittest.cc
index 0a0aec9..7e22d0e 100644
--- a/components/offline_pages/content/background_loader/background_loader_contents_unittest.cc
+++ b/components/offline_pages/content/background_loader/background_loader_contents_unittest.cc
@@ -134,11 +134,14 @@
 }
 
 TEST_F(BackgroundLoaderContentsTest, ShouldNotCreateWebContents) {
-  ASSERT_TRUE(contents()->IsWebContentsCreationOverridden(
-      nullptr /* source_site_instance */,
+  ASSERT_FALSE(contents()->ShouldCreateWebContents(
+      nullptr /* contents */, nullptr /* opener */,
+      nullptr /* source_site_instance */, 0 /* route_id */,
+      0 /* main_frame_route_id */, 0 /* main_frame_widget_route_id */,
       content::mojom::WindowContainerType::NORMAL /* window_container_type */,
       GURL() /* opener_url */, "foo" /* frame_name */,
-      GURL::EmptyGURL() /* target_url */));
+      GURL::EmptyGURL() /* target_url */, "bar" /* partition_id */,
+      nullptr /* session_storage_namespace */));
 }
 
 TEST_F(BackgroundLoaderContentsTest, ShouldNotAddNewContents) {
diff --git a/components/offline_pages/core/BUILD.gn b/components/offline_pages/core/BUILD.gn
index 6340993e..5ff892f 100644
--- a/components/offline_pages/core/BUILD.gn
+++ b/components/offline_pages/core/BUILD.gn
@@ -141,11 +141,6 @@
     "//base",
     "//components/version_info",
   ]
-
-  defines = []
-  if (defined(notouch_build) && notouch_build) {
-    defines += [ "DISABLE_OFFLINE_PAGES_TOUCHLESS" ]
-  }
 }
 
 source_set("unit_tests") {
diff --git a/components/offline_pages/core/client_policy_controller_unittest.cc b/components/offline_pages/core/client_policy_controller_unittest.cc
index d8b10aee..b828e30e 100644
--- a/components/offline_pages/core/client_policy_controller_unittest.cc
+++ b/components/offline_pages/core/client_policy_controller_unittest.cc
@@ -175,7 +175,7 @@
   EXPECT_EQ(policy.name_space, kSuggestedArticlesNamespace);
   EXPECT_TRUE(isTemporary(policy));
   ExpectTemporary(kSuggestedArticlesNamespace);
-  ExpectDownloadSupport(kSuggestedArticlesNamespace, IsOfflinePagesEnabled());
+  ExpectDownloadSupport(kSuggestedArticlesNamespace, true);
   ExpectRestrictedToTabFromClientId(kSuggestedArticlesNamespace, false);
   ExpectRequiresSpecificUserSettings(kSuggestedArticlesNamespace, false);
 }
diff --git a/components/offline_pages/core/offline_page_client_policy_unittest.cc b/components/offline_pages/core/offline_page_client_policy_unittest.cc
index e7ab113..fab56c4 100644
--- a/components/offline_pages/core/offline_page_client_policy_unittest.cc
+++ b/components/offline_pages/core/offline_page_client_policy_unittest.cc
@@ -173,7 +173,7 @@
   EXPECT_EQ(policy.name_space, kSuggestedArticlesNamespace);
   EXPECT_TRUE(isTemporary(policy));
   ExpectTemporary(kSuggestedArticlesNamespace);
-  ExpectDownloadSupport(kSuggestedArticlesNamespace, IsOfflinePagesEnabled());
+  ExpectDownloadSupport(kSuggestedArticlesNamespace, true);
   ExpectRestrictedToTabFromClientId(kSuggestedArticlesNamespace, false);
   ExpectRequiresSpecificUserSettings(kSuggestedArticlesNamespace, false);
 }
diff --git a/components/offline_pages/core/offline_page_feature.cc b/components/offline_pages/core/offline_page_feature.cc
index b6c93de..a21206a 100644
--- a/components/offline_pages/core/offline_page_feature.cc
+++ b/components/offline_pages/core/offline_page_feature.cc
@@ -83,8 +83,7 @@
 }
 
 bool IsPrefetchingOfflinePagesEnabled() {
-  return IsOfflinePagesEnabled() &&
-         base::FeatureList::IsEnabled(kPrefetchingOfflinePagesFeature);
+  return base::FeatureList::IsEnabled(kPrefetchingOfflinePagesFeature);
 }
 
 bool IsOfflinePagesLoadSignalCollectingEnabled() {
@@ -141,8 +140,7 @@
 }
 
 bool IsOfflineIndicatorFeatureEnabled() {
-  return IsOfflinePagesEnabled() &&
-         base::FeatureList::IsEnabled(kOfflineIndicatorFeature);
+  return base::FeatureList::IsEnabled(kOfflineIndicatorFeature);
 }
 
 bool IsOfflineIndicatorAlwaysHttpProbeEnabled() {
@@ -153,12 +151,4 @@
   return base::FeatureList::IsEnabled(kOnTheFlyMhtmlHashComputationFeature);
 }
 
-bool IsOfflinePagesEnabled() {
-#if defined(DISABLE_OFFLINE_PAGES_TOUCHLESS)
-  return false;
-#else
-  return true;
-#endif  // defined(DISABLE_OFFLINE_PAGES_TOUCHLESS)
-}
-
 }  // namespace offline_pages
diff --git a/components/offline_pages/core/offline_page_feature.h b/components/offline_pages/core/offline_page_feature.h
index 0897ce49..4ca41a8 100644
--- a/components/offline_pages/core/offline_page_feature.h
+++ b/components/offline_pages/core/offline_page_feature.h
@@ -101,9 +101,6 @@
 // calculating their content digests in one step.
 bool IsOnTheFlyMhtmlHashComputationEnabled();
 
-// Returns true if offline pages as a whole is enabled.
-bool IsOfflinePagesEnabled();
-
 }  // namespace offline_pages
 
 #endif  // COMPONENTS_OFFLINE_PAGES_OFFLINE_PAGE_FEATURE_H_
diff --git a/components/offline_pages/core/offline_page_feature_unittest.cc b/components/offline_pages/core/offline_page_feature_unittest.cc
index bac928a..cdaf1f0 100644
--- a/components/offline_pages/core/offline_page_feature_unittest.cc
+++ b/components/offline_pages/core/offline_page_feature_unittest.cc
@@ -44,8 +44,7 @@
 
 TEST(OfflinePageFeatureTest, OfflinePagesPrefetching) {
   // Enabled by default.
-  EXPECT_EQ(offline_pages::IsOfflinePagesEnabled(),
-            offline_pages::IsPrefetchingOfflinePagesEnabled());
+  EXPECT_TRUE(offline_pages::IsPrefetchingOfflinePagesEnabled());
 
   // Check if helper method works correctly when the features is disabled.
   base::test::ScopedFeatureList scoped_feature_list;
diff --git a/components/offline_pages/core/prefetch/BUILD.gn b/components/offline_pages/core/prefetch/BUILD.gn
index 385ed002..7afee46 100644
--- a/components/offline_pages/core/prefetch/BUILD.gn
+++ b/components/offline_pages/core/prefetch/BUILD.gn
@@ -275,14 +275,8 @@
     "//url",
   ]
 
-  defines = []
-
-  if (defined(notouch_build) && notouch_build) {
-    defines += [ "DISABLE_OFFLINE_PAGES_TOUCHLESS" ]
-  } else {
-    sources += [
-      "prefetch_dispatcher_impl_unittest.cc",
-      "prefetch_download_flow_unittest.cc",
-    ]
-  }
+  sources += [
+    "prefetch_dispatcher_impl_unittest.cc",
+    "prefetch_download_flow_unittest.cc",
+  ]
 }
diff --git a/components/offline_pages/core/prefetch/prefetch_prefs_unittest.cc b/components/offline_pages/core/prefetch/prefetch_prefs_unittest.cc
index 732783f..f77ba0f7 100644
--- a/components/offline_pages/core/prefetch/prefetch_prefs_unittest.cc
+++ b/components/offline_pages/core/prefetch/prefetch_prefs_unittest.cc
@@ -28,12 +28,7 @@
   prefetch_prefs::RegisterPrefs(prefs()->registry());
 }
 
-#if defined(DISABLE_OFFLINE_PAGES_TOUCHLESS)
-#define MAYBE_PrefetchingEnabled DISABLED_PrefetchingEnabled
-#else
-#define MAYBE_PrefetchingEnabled PrefetchingEnabled
-#endif
-TEST_F(PrefetchPrefsTest, MAYBE_PrefetchingEnabled) {
+TEST_F(PrefetchPrefsTest, PrefetchingEnabled) {
   base::test::ScopedFeatureList feature_list;
   feature_list.InitAndEnableFeature(kPrefetchingOfflinePagesFeature);
   EXPECT_FALSE(prefetch_prefs::IsEnabled(prefs()));
@@ -110,12 +105,7 @@
   EXPECT_FALSE(prefetch_prefs::IsEnabledByServer(prefs()));
 }
 
-#if defined(DISABLE_OFFLINE_PAGES_TOUCHLESS)
-#define MAYBE_ForbiddenCheck DISABLED_ForbiddenCheck
-#else
-#define MAYBE_ForbiddenCheck ForbiddenCheck
-#endif
-TEST_F(PrefetchPrefsTest, MAYBE_ForbiddenCheck) {
+TEST_F(PrefetchPrefsTest, ForbiddenCheck) {
   base::test::ScopedFeatureList feature_list;
   feature_list.InitAndEnableFeature(kPrefetchingOfflinePagesFeature);
 
@@ -146,12 +136,7 @@
   EXPECT_FALSE(prefetch_prefs::IsForbiddenCheckDue(prefs()));
 }
 
-#if defined(DISABLE_OFFLINE_PAGES_TOUCHLESS)
-#define MAYBE_FirstForbiddenCheck DISABLED_FirstForbiddenCheck
-#else
-#define MAYBE_FirstForbiddenCheck FirstForbiddenCheck
-#endif
-TEST_F(PrefetchPrefsTest, MAYBE_FirstForbiddenCheck) {
+TEST_F(PrefetchPrefsTest, FirstForbiddenCheck) {
   base::test::ScopedFeatureList feature_list;
   feature_list.InitAndEnableFeature(kPrefetchingOfflinePagesFeature);
 
diff --git a/components/offline_pages/core/renovations/page_renovation_loader.cc b/components/offline_pages/core/renovations/page_renovation_loader.cc
index 2bd6397..3569051f 100644
--- a/components/offline_pages/core/renovations/page_renovation_loader.cc
+++ b/components/offline_pages/core/renovations/page_renovation_loader.cc
@@ -85,7 +85,7 @@
   // Our script file is stored in the resource bundle. Get this script.
   ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
   combined_source_ = base::UTF8ToUTF16(
-      rb.GetRawDataResource(IDR_OFFLINE_PAGES_RENOVATIONS_JS).as_string());
+      rb.DecompressDataResource(IDR_OFFLINE_PAGES_RENOVATIONS_JS));
 
   // If built correctly, IDR_OFFLINE_PAGES_RENOVATIONS_JS should
   // always exist in the resource pack and loading should never fail.
diff --git a/components/omnibox/browser/autocomplete_controller.h b/components/omnibox/browser/autocomplete_controller.h
index 40da2fc..0d4104475 100644
--- a/components/omnibox/browser/autocomplete_controller.h
+++ b/components/omnibox/browser/autocomplete_controller.h
@@ -147,13 +147,6 @@
     return last_time_default_match_changed_;
   }
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_OmniboxPopupModelTest DISABLED_OmniboxPopupModelTest
-#else
-#define MAYBE_OmniboxPopupModelTest OmniboxPopupModelTest
-#endif
-
  private:
   friend class AutocompleteProviderTest;
   FRIEND_TEST_ALL_PREFIXES(AutocompleteProviderTest,
@@ -169,9 +162,9 @@
 #if defined(OS_WIN)
   FRIEND_TEST_ALL_PREFIXES(OmniboxViewViewsUIATest, AccessibleOmnibox);
 #endif  // OS_WIN
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_OmniboxPopupModelTest, SetSelectedLine);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_OmniboxPopupModelTest, TestFocusFixing);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_OmniboxPopupModelTest, PopupPositionChanging);
+  FRIEND_TEST_ALL_PREFIXES(OmniboxPopupModelTest, SetSelectedLine);
+  FRIEND_TEST_ALL_PREFIXES(OmniboxPopupModelTest, TestFocusFixing);
+  FRIEND_TEST_ALL_PREFIXES(OmniboxPopupModelTest, PopupPositionChanging);
   FRIEND_TEST_ALL_PREFIXES(OmniboxPopupContentsViewTest,
                            EmitSelectedChildrenChangedAccessibilityEvent);
 
diff --git a/components/omnibox/browser/autocomplete_provider.cc b/components/omnibox/browser/autocomplete_provider.cc
index 3864c2c..c749bf6d 100644
--- a/components/omnibox/browser/autocomplete_provider.cc
+++ b/components/omnibox/browser/autocomplete_provider.cc
@@ -40,6 +40,8 @@
       return "Bookmark";
     case TYPE_BUILTIN:
       return "Builtin";
+    case TYPE_CLIPBOARD:
+      return "Clipboard";
     case TYPE_DOCUMENT:
       return "Document";
     case TYPE_HISTORY_QUICK:
@@ -48,16 +50,14 @@
       return "HistoryURL";
     case TYPE_KEYWORD:
       return "Keyword";
+    case TYPE_ON_DEVICE_HEAD:
+      return "OnDeviceHead";
     case TYPE_SEARCH:
       return "Search";
     case TYPE_SHORTCUTS:
       return "Shortcuts";
     case TYPE_ZERO_SUGGEST:
       return "ZeroSuggest";
-    case TYPE_CLIPBOARD:
-      return "Clipboard";
-    case TYPE_ON_DEVICE_HEAD:
-      return "OnDeviceHead";
     case TYPE_ZERO_SUGGEST_LOCAL_HISTORY:
       return "LocalHistoryZeroSuggest";
     default:
@@ -110,6 +110,8 @@
       return metrics::OmniboxEventProto::BOOKMARK;
     case TYPE_BUILTIN:
       return metrics::OmniboxEventProto::BUILTIN;
+    case TYPE_CLIPBOARD:
+      return metrics::OmniboxEventProto::CLIPBOARD;
     case TYPE_DOCUMENT:
       return metrics::OmniboxEventProto::DOCUMENT;
     case TYPE_HISTORY_QUICK:
@@ -118,14 +120,14 @@
       return metrics::OmniboxEventProto::HISTORY_URL;
     case TYPE_KEYWORD:
       return metrics::OmniboxEventProto::KEYWORD;
+    case TYPE_ON_DEVICE_HEAD:
+      return metrics::OmniboxEventProto::ON_DEVICE_HEAD;
     case TYPE_SEARCH:
       return metrics::OmniboxEventProto::SEARCH;
     case TYPE_SHORTCUTS:
       return metrics::OmniboxEventProto::SHORTCUTS;
     case TYPE_ZERO_SUGGEST:
       return metrics::OmniboxEventProto::ZERO_SUGGEST;
-    case TYPE_CLIPBOARD:
-      return metrics::OmniboxEventProto::CLIPBOARD;
     case TYPE_ZERO_SUGGEST_LOCAL_HISTORY:
       return metrics::OmniboxEventProto::ZERO_SUGGEST_LOCAL_HISTORY;
     default:
diff --git a/components/omnibox/browser/autocomplete_result.h b/components/omnibox/browser/autocomplete_result.h
index 4c31cb4..b59b4b4 100644
--- a/components/omnibox/browser/autocomplete_result.h
+++ b/components/omnibox/browser/autocomplete_result.h
@@ -146,13 +146,6 @@
       const AutocompleteResult& old_result,
       const AutocompleteResult& new_result);
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_HistoryURLProviderTest DISABLED_HistoryURLProviderTest
-#else
-#define MAYBE_HistoryURLProviderTest HistoryURLProviderTest
-#endif
-
  private:
   FRIEND_TEST_ALL_PREFIXES(AutocompleteResultTest, ConvertsOpenTabsCorrectly);
   FRIEND_TEST_ALL_PREFIXES(AutocompleteResultTest,
@@ -161,7 +154,7 @@
                            TestGroupSuggestionsBySearchVsURL);
   FRIEND_TEST_ALL_PREFIXES(AutocompleteResultTest,
                            DemoteOnDeviceSearchSuggestions);
-  friend class MAYBE_HistoryURLProviderTest;
+  friend class HistoryURLProviderTest;
 
   typedef std::map<AutocompleteProvider*, ACMatches> ProviderToMatches;
 
diff --git a/components/omnibox/browser/history_quick_provider.h b/components/omnibox/browser/history_quick_provider.h
index 18d1cd82..8609f13 100644
--- a/components/omnibox/browser/history_quick_provider.h
+++ b/components/omnibox/browser/history_quick_provider.h
@@ -42,25 +42,18 @@
   static void set_disabled(bool disabled) { disabled_ = disabled; }
 
  private:
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_HistoryQuickProviderTest DISABLED_HistoryQuickProviderTest
-#else
-#define MAYBE_HistoryQuickProviderTest HistoryQuickProviderTest
-#endif
-
-  friend class MAYBE_HistoryQuickProviderTest;
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryQuickProviderTest, Spans);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryQuickProviderTest, Relevance);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryQuickProviderTest, DoTrimHttpScheme);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryQuickProviderTest,
+  friend class HistoryQuickProviderTest;
+  FRIEND_TEST_ALL_PREFIXES(HistoryQuickProviderTest, Spans);
+  FRIEND_TEST_ALL_PREFIXES(HistoryQuickProviderTest, Relevance);
+  FRIEND_TEST_ALL_PREFIXES(HistoryQuickProviderTest, DoTrimHttpScheme);
+  FRIEND_TEST_ALL_PREFIXES(HistoryQuickProviderTest,
                            DontTrimHttpSchemeIfInputHasScheme);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryQuickProviderTest,
+  FRIEND_TEST_ALL_PREFIXES(HistoryQuickProviderTest,
                            DontTrimHttpSchemeIfInputMatches);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryQuickProviderTest,
+  FRIEND_TEST_ALL_PREFIXES(HistoryQuickProviderTest,
                            DontTrimHttpsSchemeIfInputHasScheme);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryQuickProviderTest, DoTrimHttpsScheme);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryQuickProviderTest,
+  FRIEND_TEST_ALL_PREFIXES(HistoryQuickProviderTest, DoTrimHttpsScheme);
+  FRIEND_TEST_ALL_PREFIXES(HistoryQuickProviderTest,
                            CorrectAutocompleteWithTrailingSlash);
 
   ~HistoryQuickProvider() override;
diff --git a/components/omnibox/browser/history_quick_provider_unittest.cc b/components/omnibox/browser/history_quick_provider_unittest.cc
index d5b59d46..b082587 100644
--- a/components/omnibox/browser/history_quick_provider_unittest.cc
+++ b/components/omnibox/browser/history_quick_provider_unittest.cc
@@ -110,15 +110,9 @@
 
 }  // namespace
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_HistoryQuickProviderTest DISABLED_HistoryQuickProviderTest
-#else
-#define MAYBE_HistoryQuickProviderTest HistoryQuickProviderTest
-#endif
-class MAYBE_HistoryQuickProviderTest : public testing::Test {
+class HistoryQuickProviderTest : public testing::Test {
  public:
-  MAYBE_HistoryQuickProviderTest() = default;
+  HistoryQuickProviderTest() = default;
 
  protected:
   struct TestURLInfo {
@@ -193,10 +187,10 @@
 
   scoped_refptr<HistoryQuickProvider> provider_;
 
-  DISALLOW_COPY_AND_ASSIGN(MAYBE_HistoryQuickProviderTest);
+  DISALLOW_COPY_AND_ASSIGN(HistoryQuickProviderTest);
 };
 
-void MAYBE_HistoryQuickProviderTest::SetUp() {
+void HistoryQuickProviderTest::SetUp() {
   client_ = std::make_unique<FakeAutocompleteProviderClient>();
   ASSERT_TRUE(client_->GetHistoryService());
   ASSERT_NO_FATAL_FAILURE(FillData());
@@ -216,14 +210,14 @@
   provider_ = new HistoryQuickProvider(client_.get());
 }
 
-void MAYBE_HistoryQuickProviderTest::TearDown() {
+void HistoryQuickProviderTest::TearDown() {
   provider_ = nullptr;
   client_.reset();
   task_environment_.RunUntilIdle();
 }
 
-std::vector<MAYBE_HistoryQuickProviderTest::TestURLInfo>
-MAYBE_HistoryQuickProviderTest::GetTestData() {
+std::vector<HistoryQuickProviderTest::TestURLInfo>
+HistoryQuickProviderTest::GetTestData() {
   return {
       {"http://www.google.com/", "Google", 3, 3, 0},
       {"http://slashdot.org/favorite_page.html", "Favorite page", 200, 100, 0},
@@ -276,7 +270,7 @@
   };
 }
 
-void MAYBE_HistoryQuickProviderTest::FillData() {
+void HistoryQuickProviderTest::FillData() {
   for (const auto& info : GetTestData()) {
     history::URLRow row{GURL(info.url)};
     ASSERT_TRUE(row.url().is_valid());
@@ -290,19 +284,19 @@
   }
 }
 
-MAYBE_HistoryQuickProviderTest::SetShouldContain::SetShouldContain(
+HistoryQuickProviderTest::SetShouldContain::SetShouldContain(
     const ACMatches& matched_urls) {
   for (auto iter = matched_urls.begin(); iter != matched_urls.end(); ++iter)
     matches_.insert(iter->destination_url.spec());
 }
 
-void MAYBE_HistoryQuickProviderTest::SetShouldContain::operator()(
+void HistoryQuickProviderTest::SetShouldContain::operator()(
     const std::string& expected) {
   EXPECT_EQ(1U, matches_.erase(expected))
       << "Results did not contain '" << expected << "' but should have.";
 }
 
-void MAYBE_HistoryQuickProviderTest::RunTest(
+void HistoryQuickProviderTest::RunTest(
     const base::string16 text,
     bool prevent_inline_autocomplete,
     std::vector<std::string> expected_urls,
@@ -314,7 +308,7 @@
                     expected_fill_into_edit, expected_autocompletion);
 }
 
-void MAYBE_HistoryQuickProviderTest::RunTestWithCursor(
+void HistoryQuickProviderTest::RunTestWithCursor(
     const base::string16 text,
     const size_t cursor_position,
     bool prevent_inline_autocomplete,
@@ -376,7 +370,7 @@
   EXPECT_EQ(expected_fill_into_edit, ac_matches_[0].fill_into_edit);
 }
 
-bool MAYBE_HistoryQuickProviderTest::GetURLProxy(const GURL& url) {
+bool HistoryQuickProviderTest::GetURLProxy(const GURL& url) {
   base::CancelableTaskTracker task_tracker;
   bool result = false;
   client_->GetHistoryService()->ScheduleDBTask(
@@ -389,7 +383,7 @@
   return result;
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, SimpleSingleMatch) {
+TEST_F(HistoryQuickProviderTest, SimpleSingleMatch) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://slashdot.org/favorite_page.html");
   RunTest(ASCIIToUTF16("slashdot"), false, expected_urls, true,
@@ -397,7 +391,7 @@
                   ASCIIToUTF16(".org/favorite_page.html"));
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, SingleMatchWithCursor) {
+TEST_F(HistoryQuickProviderTest, SingleMatchWithCursor) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://slashdot.org/favorite_page.html");
   // With cursor after "slash", we should retrieve the desired result but it
@@ -408,7 +402,7 @@
                     base::string16());
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, MatchWithAndWithoutCursorWordBreak) {
+TEST_F(HistoryQuickProviderTest, MatchWithAndWithoutCursorWordBreak) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("https://twitter.com/fungoodtimes");
   // With cursor after "good", we should retrieve the desired result but it
@@ -418,14 +412,14 @@
                     base::string16());
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, WordBoundariesWithPunctuationMatch) {
+TEST_F(HistoryQuickProviderTest, WordBoundariesWithPunctuationMatch) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://popularsitewithpathonly.com/moo");
   RunTest(ASCIIToUTF16("/moo"), false, expected_urls, false,
           ASCIIToUTF16("popularsitewithpathonly.com/moo"), base::string16());
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, MultiTermTitleMatch) {
+TEST_F(HistoryQuickProviderTest, MultiTermTitleMatch) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back(
       "http://cda.com/Dogs%20Cats%20Gorillas%20Sea%20Slugs%20and%20Mice");
@@ -434,7 +428,7 @@
           base::string16());
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, NonWordLastCharacterMatch) {
+TEST_F(HistoryQuickProviderTest, NonWordLastCharacterMatch) {
   std::string expected_url("http://slashdot.org/favorite_page.html");
   std::vector<std::string> expected_urls;
   expected_urls.push_back(expected_url);
@@ -443,7 +437,7 @@
                        ASCIIToUTF16("favorite_page.html"));
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, MultiMatch) {
+TEST_F(HistoryQuickProviderTest, MultiMatch) {
   std::vector<std::string> expected_urls;
   // Scores high because of typed_count.
   expected_urls.push_back("http://foo.com/");
@@ -455,7 +449,7 @@
           ASCIIToUTF16("foo.com"), ASCIIToUTF16(".com"));
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, StartRelativeMatch) {
+TEST_F(HistoryQuickProviderTest, StartRelativeMatch) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://xyzabcdefghijklmnopqrstuvw.com/a");
   RunTest(ASCIIToUTF16("xyza"), false, expected_urls, true,
@@ -463,7 +457,7 @@
               ASCIIToUTF16("bcdefghijklmnopqrstuvw.com/a"));
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, EncodingMatch) {
+TEST_F(HistoryQuickProviderTest, EncodingMatch) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://spaces.com/path%20with%20spaces/foo.html");
   RunTest(ASCIIToUTF16("path with spaces"), false, expected_urls, false,
@@ -471,7 +465,7 @@
           base::string16());
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, ContentsClass) {
+TEST_F(HistoryQuickProviderTest, ContentsClass) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back(
       "http://ja.wikipedia.org/wiki/%E7%AC%AC%E4%BA%8C%E6%AC%A1%E4%B8%96%E7"
@@ -503,7 +497,7 @@
     EXPECT_EQ(expected_offsets[i], contents_class[i].offset);
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, VisitCountMatches) {
+TEST_F(HistoryQuickProviderTest, VisitCountMatches) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://visitedest.com/y/a");
   expected_urls.push_back("http://visitedest.com/y/b");
@@ -513,7 +507,7 @@
                     ASCIIToUTF16(".com/y/a"));
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, TypedCountMatches) {
+TEST_F(HistoryQuickProviderTest, TypedCountMatches) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://typeredest.com/y/a");
   expected_urls.push_back("http://typeredest.com/y/b");
@@ -523,7 +517,7 @@
                     ASCIIToUTF16(".com/y/a"));
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, DaysAgoMatches) {
+TEST_F(HistoryQuickProviderTest, DaysAgoMatches) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://daysagoest.com/y/a");
   expected_urls.push_back("http://daysagoest.com/y/b");
@@ -533,7 +527,7 @@
                     ASCIIToUTF16(".com/y/a"));
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, EncodingLimitMatch) {
+TEST_F(HistoryQuickProviderTest, EncodingLimitMatch) {
   std::vector<std::string> expected_urls;
   std::string url(
       "http://cda.com/Dogs%20Cats%20Gorillas%20Sea%20Slugs%20and%20Mice");
@@ -561,7 +555,7 @@
     EXPECT_LT(diter->offset, page_title.length());
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, Spans) {
+TEST_F(HistoryQuickProviderTest, Spans) {
   // Test SpansFromTermMatch
   TermMatches matches_a;
   // Simulates matches: '.xx.xxx..xx...xxxxx..' which will test no match at
@@ -612,7 +606,7 @@
             spans_b[2].style);
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, DeleteMatch) {
+TEST_F(HistoryQuickProviderTest, DeleteMatch) {
   GURL test_url("http://slashdot.org/favorite_page.html");
   std::vector<std::string> expected_urls;
   expected_urls.push_back(test_url.spec());
@@ -640,7 +634,7 @@
           ASCIIToUTF16("NONE EXPECTED"), base::string16());
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, PreventBeatingURLWhatYouTypedMatch) {
+TEST_F(HistoryQuickProviderTest, PreventBeatingURLWhatYouTypedMatch) {
   std::vector<std::string> expected_urls;
 
   expected_urls.clear();
@@ -712,7 +706,7 @@
             HistoryURLProvider::kScoreForBestInlineableResult);
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, PreventInlineAutocomplete) {
+TEST_F(HistoryQuickProviderTest, PreventInlineAutocomplete) {
   std::vector<std::string> expected_urls;
   expected_urls.push_back("http://popularsitewithroot.com/");
 
@@ -739,7 +733,7 @@
           ASCIIToUTF16("popularsitewithroot.com"), base::string16());
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, DoesNotProvideMatchesOnFocus) {
+TEST_F(HistoryQuickProviderTest, DoesNotProvideMatchesOnFocus) {
   AutocompleteInput input(ASCIIToUTF16("popularsite"),
                           metrics::OmniboxEventProto::OTHER,
                           TestSchemeClassifier());
@@ -756,7 +750,7 @@
 }
 
 // Trim the http:// scheme from the contents in the general case.
-TEST_F(MAYBE_HistoryQuickProviderTest, DoTrimHttpScheme) {
+TEST_F(HistoryQuickProviderTest, DoTrimHttpScheme) {
   AutocompleteInput input(ASCIIToUTF16("face"),
                           metrics::OmniboxEventProto::OTHER,
                           TestSchemeClassifier());
@@ -770,7 +764,7 @@
 
 // Don't trim the http:// scheme from the match contents if
 // the user input included a scheme.
-TEST_F(MAYBE_HistoryQuickProviderTest, DontTrimHttpSchemeIfInputHasScheme) {
+TEST_F(HistoryQuickProviderTest, DontTrimHttpSchemeIfInputHasScheme) {
   AutocompleteInput input(ASCIIToUTF16("http://face"),
                           metrics::OmniboxEventProto::OTHER,
                           TestSchemeClassifier());
@@ -784,7 +778,7 @@
 
 // Don't trim the http:// scheme from the match contents if
 // the user input matched it.
-TEST_F(MAYBE_HistoryQuickProviderTest, DontTrimHttpSchemeIfInputMatches) {
+TEST_F(HistoryQuickProviderTest, DontTrimHttpSchemeIfInputMatches) {
   AutocompleteInput input(ASCIIToUTF16("ht"), metrics::OmniboxEventProto::OTHER,
                           TestSchemeClassifier());
   provider().Start(input, false);
@@ -798,7 +792,7 @@
 
 // Don't trim the https:// scheme from the match contents if the user input
 // included a scheme.
-TEST_F(MAYBE_HistoryQuickProviderTest, DontTrimHttpsSchemeIfInputHasScheme) {
+TEST_F(HistoryQuickProviderTest, DontTrimHttpsSchemeIfInputHasScheme) {
   AutocompleteInput input(ASCIIToUTF16("https://face"),
                           metrics::OmniboxEventProto::OTHER,
                           TestSchemeClassifier());
@@ -811,7 +805,7 @@
 }
 
 // Trim the https:// scheme from the match contents if nothing prevents it.
-TEST_F(MAYBE_HistoryQuickProviderTest, DoTrimHttpsScheme) {
+TEST_F(HistoryQuickProviderTest, DoTrimHttpsScheme) {
   AutocompleteInput input(ASCIIToUTF16("face"),
                           metrics::OmniboxEventProto::OTHER,
                           TestSchemeClassifier());
@@ -823,7 +817,7 @@
   EXPECT_EQ(ASCIIToUTF16("facebook.com"), match.contents);
 }
 
-TEST_F(MAYBE_HistoryQuickProviderTest, CorrectAutocompleteWithTrailingSlash) {
+TEST_F(HistoryQuickProviderTest, CorrectAutocompleteWithTrailingSlash) {
   provider().autocomplete_input_ = AutocompleteInput(
       base::ASCIIToUTF16("cr/"), metrics::OmniboxEventProto::OTHER,
       TestSchemeClassifier());
@@ -841,7 +835,7 @@
 
 // HQPOrderingTest -------------------------------------------------------------
 
-class HQPOrderingTest : public MAYBE_HistoryQuickProviderTest {
+class HQPOrderingTest : public HistoryQuickProviderTest {
  public:
   HQPOrderingTest() = default;
 
@@ -852,7 +846,7 @@
   DISALLOW_COPY_AND_ASSIGN(HQPOrderingTest);
 };
 
-std::vector<MAYBE_HistoryQuickProviderTest::TestURLInfo>
+std::vector<HistoryQuickProviderTest::TestURLInfo>
 HQPOrderingTest::GetTestData() {
   return {
       {"http://www.teamliquid.net/tlpd/korean/games/21648_bisu_vs_iris", "", 6,
diff --git a/components/omnibox/browser/history_url_provider.h b/components/omnibox/browser/history_url_provider.h
index d4dfe9c..b8e9d39 100644
--- a/components/omnibox/browser/history_url_provider.h
+++ b/components/omnibox/browser/history_url_provider.h
@@ -228,22 +228,15 @@
                      history::URLDatabase* db);
 
  private:
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_HistoryURLProviderTest DISABLED_HistoryURLProviderTest
-#else
-#define MAYBE_HistoryURLProviderTest HistoryURLProviderTest
-#endif
-
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryURLProviderTest, HUPScoringExperiment);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryURLProviderTest, DoTrimHttpScheme);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryURLProviderTest,
+  FRIEND_TEST_ALL_PREFIXES(HistoryURLProviderTest, HUPScoringExperiment);
+  FRIEND_TEST_ALL_PREFIXES(HistoryURLProviderTest, DoTrimHttpScheme);
+  FRIEND_TEST_ALL_PREFIXES(HistoryURLProviderTest,
                            DontTrimHttpSchemeIfInputHasScheme);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryURLProviderTest,
+  FRIEND_TEST_ALL_PREFIXES(HistoryURLProviderTest,
                            DontTrimHttpSchemeIfInputMatchesInScheme);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryURLProviderTest,
+  FRIEND_TEST_ALL_PREFIXES(HistoryURLProviderTest,
                            DontTrimHttpsSchemeIfInputMatchesInScheme);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_HistoryURLProviderTest, DoTrimHttpsScheme);
+  FRIEND_TEST_ALL_PREFIXES(HistoryURLProviderTest, DoTrimHttpsScheme);
 
   enum MatchType {
     NORMAL,
diff --git a/components/omnibox/browser/history_url_provider_unittest.cc b/components/omnibox/browser/history_url_provider_unittest.cc
index dd10733..8094c4f3 100644
--- a/components/omnibox/browser/history_url_provider_unittest.cc
+++ b/components/omnibox/browser/history_url_provider_unittest.cc
@@ -176,25 +176,20 @@
 
 }  // namespace
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_MAYBE_HistoryURLProviderTest DISABLED_HistoryURLProviderTest
-#else
-#define MAYBE_HistoryURLProviderTest HistoryURLProviderTest
-#endif
-class MAYBE_HistoryURLProviderTest : public testing::Test,
-                                     public AutocompleteProviderListener {
+class HistoryURLProviderTest : public testing::Test,
+                               public AutocompleteProviderListener {
  public:
   struct UrlAndLegalDefault {
     std::string url;
     bool allowed_to_be_default_match;
   };
 
-  MAYBE_HistoryURLProviderTest() : sort_matches_(false) {
+  HistoryURLProviderTest()
+      : sort_matches_(false) {
     HistoryQuickProvider::set_disabled(true);
   }
 
-  ~MAYBE_HistoryURLProviderTest() override {
+  ~HistoryURLProviderTest() override {
     HistoryQuickProvider::set_disabled(false);
   }
 
@@ -249,34 +244,33 @@
   bool sort_matches_;
 
  private:
-  DISALLOW_COPY_AND_ASSIGN(MAYBE_HistoryURLProviderTest);
+  DISALLOW_COPY_AND_ASSIGN(HistoryURLProviderTest);
 };
 
-class HistoryURLProviderTestNoDB : public MAYBE_HistoryURLProviderTest {
+class HistoryURLProviderTestNoDB : public HistoryURLProviderTest {
  protected:
   void SetUp() override { ASSERT_TRUE(SetUpImpl(false)); }
 };
 
-class HistoryURLProviderTestNoSearchProvider
-    : public MAYBE_HistoryURLProviderTest {
+class HistoryURLProviderTestNoSearchProvider : public HistoryURLProviderTest {
  protected:
   void SetUp() override {
     DefaultSearchManager::SetFallbackSearchEnginesDisabledForTesting(true);
-    MAYBE_HistoryURLProviderTest::SetUp();
+    HistoryURLProviderTest::SetUp();
   }
 
   void TearDown() override {
-    MAYBE_HistoryURLProviderTest::TearDown();
+    HistoryURLProviderTest::TearDown();
     DefaultSearchManager::SetFallbackSearchEnginesDisabledForTesting(false);
   }
 };
 
-void MAYBE_HistoryURLProviderTest::OnProviderUpdate(bool updated_matches) {
+void HistoryURLProviderTest::OnProviderUpdate(bool updated_matches) {
   if (autocomplete_->done())
     base::RunLoop::QuitCurrentWhenIdleDeprecated();
 }
 
-bool MAYBE_HistoryURLProviderTest::SetUpImpl(bool create_history_db) {
+bool HistoryURLProviderTest::SetUpImpl(bool create_history_db) {
   client_ = std::make_unique<FakeAutocompleteProviderClient>(create_history_db);
   if (!client_->GetHistoryService())
     return false;
@@ -285,13 +279,13 @@
   return true;
 }
 
-void MAYBE_HistoryURLProviderTest::TearDown() {
+void HistoryURLProviderTest::TearDown() {
   autocomplete_ = nullptr;
   client_.reset();
   task_environment_.RunUntilIdle();
 }
 
-void MAYBE_HistoryURLProviderTest::FillData() {
+void HistoryURLProviderTest::FillData() {
   // Most visits are a long time ago (some tests require this since we do some
   // special logic for things visited very recently). Note that this time must
   // be more recent than the "expire history" threshold for the data to be kept
@@ -311,7 +305,7 @@
   }
 }
 
-void MAYBE_HistoryURLProviderTest::RunTest(
+void HistoryURLProviderTest::RunTest(
     const base::string16& text,
     const std::string& desired_tld,
     bool prevent_inline_autocomplete,
@@ -348,7 +342,7 @@
   }
 }
 
-void MAYBE_HistoryURLProviderTest::ExpectFormattedFullMatch(
+void HistoryURLProviderTest::ExpectFormattedFullMatch(
     const std::string& input_text,
     const wchar_t* expected_match_contents,
     size_t expected_match_location,
@@ -397,7 +391,7 @@
   }
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, PromoteShorterURLs) {
+TEST_F(HistoryURLProviderTest, PromoteShorterURLs) {
   // Test that hosts get synthesized below popular pages.
   const UrlAndLegalDefault expected_nonsynth[] = {
     { "http://slashdot.org/favorite_page.html", false },
@@ -532,7 +526,7 @@
           base::size(short_5b));
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, CullRedirects) {
+TEST_F(HistoryURLProviderTest, CullRedirects) {
   // URLs we will be using, plus the visit counts they will initially get
   // (the redirect set below will also increment the visit counts). We want
   // the results to be in A,B,C order. Note also that our visit counts are
@@ -605,7 +599,7 @@
           base::size(results_2));
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, WhatYouTyped) {
+TEST_F(HistoryURLProviderTest, WhatYouTyped) {
   // Make sure we suggest a What You Typed match at the right times.
   RunTest(ASCIIToUTF16("wytmatch"), std::string(), false, nullptr, 0);
   RunTest(ASCIIToUTF16("wytmatch foo bar"), std::string(), false, nullptr, 0);
@@ -650,7 +644,7 @@
           base::size(results_6));
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, Fixup) {
+TEST_F(HistoryURLProviderTest, Fixup) {
   // Test for various past crashes we've had.
   RunTest(ASCIIToUTF16("\\"), std::string(), false, nullptr, 0);
   RunTest(ASCIIToUTF16("#"), std::string(), false, nullptr, 0);
@@ -712,7 +706,7 @@
 
 // Make sure the results for the input 'p' don't change between the first and
 // second passes.
-TEST_F(MAYBE_HistoryURLProviderTest, EmptyVisits) {
+TEST_F(HistoryURLProviderTest, EmptyVisits) {
   // Wait for history to create the in memory DB.
   history::BlockUntilHistoryProcessesPendingRequests(
       client_->GetHistoryService());
@@ -756,7 +750,7 @@
   RunTest(ASCIIToUTF16("this is a query"), std::string(), false, nullptr, 0);
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, AutocompleteOnTrailingWhitespace) {
+TEST_F(HistoryURLProviderTest, AutocompleteOnTrailingWhitespace) {
   struct AutocompletionExpectation {
     std::string fill_into_edit;
     std::string inline_autocompletion;
@@ -839,7 +833,7 @@
                      });
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, TreatEmailsAsSearches) {
+TEST_F(HistoryURLProviderTest, TreatEmailsAsSearches) {
   // Visiting foo.com should not make this string be treated as a navigation.
   // That means the result should not be allowed to be default, and it should
   // be scored around 1200 rather than 1400+.
@@ -852,7 +846,7 @@
   EXPECT_LT(matches_[0].relevance, 1210);
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, IntranetURLsWithPaths) {
+TEST_F(HistoryURLProviderTest, IntranetURLsWithPaths) {
   struct TestCase {
     const char* input;
     int relevance;
@@ -889,7 +883,7 @@
 
 // Makes sure autocompletion happens for intranet sites that have been
 // previoulsy visited.
-TEST_F(MAYBE_HistoryURLProviderTest, IntranetURLCompletion) {
+TEST_F(HistoryURLProviderTest, IntranetURLCompletion) {
   sort_matches_ = true;
 
   const UrlAndLegalDefault expected1[] = {
@@ -956,7 +950,7 @@
                                   false, expected8, base::size(expected8)));
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, CrashDueToFixup) {
+TEST_F(HistoryURLProviderTest, CrashDueToFixup) {
   // This test passes if we don't crash.  The results don't matter.
   const char* const test_cases[] = {
     "//c",
@@ -973,7 +967,7 @@
   }
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, DoesNotProvideMatchesOnFocus) {
+TEST_F(HistoryURLProviderTest, DoesNotProvideMatchesOnFocus) {
   AutocompleteInput input(ASCIIToUTF16("foo"),
                           metrics::OmniboxEventProto::OTHER,
                           TestSchemeClassifier());
@@ -982,7 +976,7 @@
   EXPECT_TRUE(autocomplete_->matches().empty());
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, DoesNotInlinePunycodeMatches) {
+TEST_F(HistoryURLProviderTest, DoesNotInlinePunycodeMatches) {
   // A URL that matches due to a match in the punycode URL is allowed to be the
   // default match if the URL doesn't get rendered as international characters.
   const UrlAndLegalDefault expected1_true[] = {
@@ -1032,7 +1026,7 @@
           expected2_true, base::size(expected2_true));
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, CullSearchResults) {
+TEST_F(HistoryURLProviderTest, CullSearchResults) {
   // Set up a default search engine.
   TemplateURLData data;
   data.SetShortName(ASCIIToUTF16("TestEngine"));
@@ -1080,7 +1074,7 @@
           base::size(expected_when_searching_site));
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, SuggestExactInput) {
+TEST_F(HistoryURLProviderTest, SuggestExactInput) {
   const size_t npos = std::string::npos;
   struct TestCase {
     // Inputs:
@@ -1164,7 +1158,7 @@
   }
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, HUPScoringExperiment) {
+TEST_F(HistoryURLProviderTest, HUPScoringExperiment) {
   HUPScoringParams max_2000_no_time_decay;
   max_2000_no_time_decay.typed_count_buckets.buckets().push_back(
       std::make_pair(0.0, 2000));
@@ -1269,7 +1263,7 @@
   }
 }
 
-TEST_F(MAYBE_HistoryURLProviderTest, MatchURLFormatting) {
+TEST_F(HistoryURLProviderTest, MatchURLFormatting) {
   // Sanity check behavior under default flags.
   ExpectFormattedFullMatch("abc", L"www.abc.def.com/path", 4, 3);
   ExpectFormattedFullMatch("hij", L"hij.com/path", 0, 3);
@@ -1322,7 +1316,7 @@
 }
 
 // Make sure "http://" scheme is generally trimmed.
-TEST_F(MAYBE_HistoryURLProviderTest, DoTrimHttpScheme) {
+TEST_F(HistoryURLProviderTest, DoTrimHttpScheme) {
   auto params =
       BuildHistoryURLProviderParams("face", "http://www.facebook.com", false);
 
@@ -1331,7 +1325,7 @@
 }
 
 // Make sure "http://" scheme is not trimmed if input has a scheme too.
-TEST_F(MAYBE_HistoryURLProviderTest, DontTrimHttpSchemeIfInputHasScheme) {
+TEST_F(HistoryURLProviderTest, DontTrimHttpSchemeIfInputHasScheme) {
   auto params = BuildHistoryURLProviderParams("http://face",
                                               "http://www.facebook.com", false);
 
@@ -1340,7 +1334,7 @@
 }
 
 // Make sure "http://" scheme is not trimmed if input matches in scheme.
-TEST_F(MAYBE_HistoryURLProviderTest, DontTrimHttpSchemeIfInputMatchesInScheme) {
+TEST_F(HistoryURLProviderTest, DontTrimHttpSchemeIfInputMatchesInScheme) {
   auto params =
       BuildHistoryURLProviderParams("ht face", "http://www.facebook.com", true);
 
@@ -1349,8 +1343,7 @@
 }
 
 // Make sure "https://" scheme is not trimmed if the input has a scheme.
-TEST_F(MAYBE_HistoryURLProviderTest,
-       DontTrimHttpsSchemeIfInputMatchesInScheme) {
+TEST_F(HistoryURLProviderTest, DontTrimHttpsSchemeIfInputMatchesInScheme) {
   auto params = BuildHistoryURLProviderParams(
       "https://face", "https://www.facebook.com", false);
 
@@ -1359,7 +1352,7 @@
 }
 
 // Make sure "https://" scheme is trimmed if nothing prevents it.
-TEST_F(MAYBE_HistoryURLProviderTest, DoTrimHttpsScheme) {
+TEST_F(HistoryURLProviderTest, DoTrimHttpsScheme) {
   auto params =
       BuildHistoryURLProviderParams("face", "https://www.facebook.com", false);
 
diff --git a/components/omnibox/browser/in_memory_url_index.h b/components/omnibox/browser/in_memory_url_index.h
index d951ddd..73cde25 100644
--- a/components/omnibox/browser/in_memory_url_index.h
+++ b/components/omnibox/browser/in_memory_url_index.h
@@ -29,15 +29,8 @@
 #include "components/omnibox/browser/scored_history_match.h"
 #include "components/search_engines/template_url_service.h"
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_HistoryQuickProviderTest DISABLED_HistoryQuickProviderTest
-#else
-#define MAYBE_HistoryQuickProviderTest HistoryQuickProviderTest
-#endif
-
 class FakeAutocompleteProviderClient;
-class MAYBE_HistoryQuickProviderTest;
+class HistoryQuickProviderTest;
 
 namespace base {
 class SequencedTaskRunner;
@@ -152,19 +145,12 @@
   }
 
  private:
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_InMemoryURLIndexTest DISABLED_InMemoryURLIndexTest
-#else
-#define MAYBE_InMemoryURLIndexTest InMemoryURLIndexTest
-#endif
-
   friend class ::FakeAutocompleteProviderClient;
-  friend class ::MAYBE_HistoryQuickProviderTest;
+  friend class ::HistoryQuickProviderTest;
   friend class history::HQPPerfTestOnePopularURL;
-  friend class MAYBE_InMemoryURLIndexTest;
+  friend class InMemoryURLIndexTest;
   friend class InMemoryURLIndexCacheTest;
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, ExpireRow);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, ExpireRow);
   FRIEND_TEST_ALL_PREFIXES(LimitedInMemoryURLIndexTest, Initialization);
 
   // HistoryDBTask used to rebuild our private data from the history database.
diff --git a/components/omnibox/browser/in_memory_url_index_unittest.cc b/components/omnibox/browser/in_memory_url_index_unittest.cc
index f74f1a9..539df385 100644
--- a/components/omnibox/browser/in_memory_url_index_unittest.cc
+++ b/components/omnibox/browser/in_memory_url_index_unittest.cc
@@ -122,15 +122,9 @@
 
 // -----------------------------------------------------------------------------
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_InMemoryURLIndexTest DISABLED_InMemoryURLIndexTest
-#else
-#define MAYBE_InMemoryURLIndexTest InMemoryURLIndexTest
-#endif
-class MAYBE_InMemoryURLIndexTest : public testing::Test {
+class InMemoryURLIndexTest : public testing::Test {
  public:
-  MAYBE_InMemoryURLIndexTest() = default;
+  InMemoryURLIndexTest() = default;
 
  protected:
   // Test setup.
@@ -183,59 +177,57 @@
   std::unique_ptr<InMemoryURLIndex> url_index_;
 };
 
-sql::Database& MAYBE_InMemoryURLIndexTest::GetDB() {
+sql::Database& InMemoryURLIndexTest::GetDB() {
   return history_database_->GetDB();
 }
 
-URLIndexPrivateData* MAYBE_InMemoryURLIndexTest::GetPrivateData() const {
+URLIndexPrivateData* InMemoryURLIndexTest::GetPrivateData() const {
   DCHECK(url_index_->private_data());
   return url_index_->private_data();
 }
 
-base::CancelableTaskTracker* MAYBE_InMemoryURLIndexTest::GetPrivateDataTracker()
+base::CancelableTaskTracker* InMemoryURLIndexTest::GetPrivateDataTracker()
     const {
   DCHECK(url_index_->private_data_tracker());
   return url_index_->private_data_tracker();
 }
 
-void MAYBE_InMemoryURLIndexTest::ClearPrivateData() {
+void InMemoryURLIndexTest::ClearPrivateData() {
   return url_index_->ClearPrivateData();
 }
 
-void MAYBE_InMemoryURLIndexTest::set_history_dir(
-    const base::FilePath& dir_path) {
+void InMemoryURLIndexTest::set_history_dir(const base::FilePath& dir_path) {
   return url_index_->set_history_dir(dir_path);
 }
 
-bool MAYBE_InMemoryURLIndexTest::GetCacheFilePath(
-    base::FilePath* file_path) const {
+bool InMemoryURLIndexTest::GetCacheFilePath(base::FilePath* file_path) const {
   DCHECK(file_path);
   return url_index_->GetCacheFilePath(file_path);
 }
 
-void MAYBE_InMemoryURLIndexTest::PostRestoreFromCacheFileTask() {
+void InMemoryURLIndexTest::PostRestoreFromCacheFileTask() {
   url_index_->PostRestoreFromCacheFileTask();
 }
 
-void MAYBE_InMemoryURLIndexTest::PostSaveToCacheFileTask() {
+void InMemoryURLIndexTest::PostSaveToCacheFileTask() {
   url_index_->PostSaveToCacheFileTask();
 }
 
-const SchemeSet& MAYBE_InMemoryURLIndexTest::scheme_whitelist() {
+const SchemeSet& InMemoryURLIndexTest::scheme_whitelist() {
   return url_index_->scheme_whitelist();
 }
 
-bool MAYBE_InMemoryURLIndexTest::UpdateURL(const history::URLRow& row) {
+bool InMemoryURLIndexTest::UpdateURL(const history::URLRow& row) {
   return GetPrivateData()->UpdateURL(
       history_service_.get(), row, url_index_->scheme_whitelist_,
       GetPrivateDataTracker());
 }
 
-bool MAYBE_InMemoryURLIndexTest::DeleteURL(const GURL& url) {
+bool InMemoryURLIndexTest::DeleteURL(const GURL& url) {
   return GetPrivateData()->DeleteURL(url);
 }
 
-void MAYBE_InMemoryURLIndexTest::SetUp() {
+void InMemoryURLIndexTest::SetUp() {
   // We cannot access the database until the backend has been loaded.
   if (history_dir_.CreateUniqueTempDir())
     history_service_ =
@@ -295,7 +287,7 @@
     InitializeInMemoryURLIndex();
 }
 
-void MAYBE_InMemoryURLIndexTest::TearDown() {
+void InMemoryURLIndexTest::TearDown() {
   // Ensure that the InMemoryURLIndex no longer observes HistoryService before
   // it is destroyed in order to prevent HistoryService calling dead observer.
   if (url_index_)
@@ -303,15 +295,15 @@
   task_environment_.RunUntilIdle();
 }
 
-base::FilePath::StringType MAYBE_InMemoryURLIndexTest::TestDBName() const {
+base::FilePath::StringType InMemoryURLIndexTest::TestDBName() const {
   return FILE_PATH_LITERAL("in_memory_url_index_test.sql");
 }
 
-bool MAYBE_InMemoryURLIndexTest::InitializeInMemoryURLIndexInSetUp() const {
+bool InMemoryURLIndexTest::InitializeInMemoryURLIndexInSetUp() const {
   return true;
 }
 
-void MAYBE_InMemoryURLIndexTest::InitializeInMemoryURLIndex() {
+void InMemoryURLIndexTest::InitializeInMemoryURLIndex() {
   DCHECK(!url_index_);
 
   SchemeSet client_schemes_to_whitelist;
@@ -323,7 +315,7 @@
   url_index_->RebuildFromHistory(history_database_);
 }
 
-void MAYBE_InMemoryURLIndexTest::CheckTerm(
+void InMemoryURLIndexTest::CheckTerm(
     const URLIndexPrivateData::SearchTermCacheMap& cache,
     base::string16 term) const {
   auto cache_iter(cache.find(term));
@@ -334,7 +326,7 @@
       << "Cache item '" << term << "' should be marked as being in use.";
 }
 
-void MAYBE_InMemoryURLIndexTest::ExpectPrivateDataNotEmpty(
+void InMemoryURLIndexTest::ExpectPrivateDataNotEmpty(
     const URLIndexPrivateData& data) {
   EXPECT_FALSE(data.word_list_.empty());
   // available_words_ will be empty since we have freshly built the
@@ -347,7 +339,7 @@
   EXPECT_FALSE(data.history_info_map_.empty());
 }
 
-void MAYBE_InMemoryURLIndexTest::ExpectPrivateDataEmpty(
+void InMemoryURLIndexTest::ExpectPrivateDataEmpty(
     const URLIndexPrivateData& data) {
   EXPECT_TRUE(data.word_list_.empty());
   EXPECT_TRUE(data.available_words_.empty());
@@ -377,7 +369,7 @@
   }
 }
 
-void MAYBE_InMemoryURLIndexTest::ExpectPrivateDataEqual(
+void InMemoryURLIndexTest::ExpectPrivateDataEqual(
     const URLIndexPrivateData& expected,
     const URLIndexPrivateData& actual) {
   EXPECT_EQ(expected.word_list_.size(), actual.word_list_.size());
@@ -449,29 +441,21 @@
 
 //------------------------------------------------------------------------------
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_LimitedInMemoryURLIndexTest DISABLED_LimitedInMemoryURLIndexTest
-#else
-#define MAYBE_LimitedInMemoryURLIndexTest LimitedInMemoryURLIndexTest
-#endif
-class MAYBE_LimitedInMemoryURLIndexTest : public MAYBE_InMemoryURLIndexTest {
+class LimitedInMemoryURLIndexTest : public InMemoryURLIndexTest {
  protected:
   base::FilePath::StringType TestDBName() const override;
   bool InitializeInMemoryURLIndexInSetUp() const override;
 };
 
-base::FilePath::StringType MAYBE_LimitedInMemoryURLIndexTest::TestDBName()
-    const {
+base::FilePath::StringType LimitedInMemoryURLIndexTest::TestDBName() const {
   return FILE_PATH_LITERAL("in_memory_url_index_test_limited.sql");
 }
 
-bool MAYBE_LimitedInMemoryURLIndexTest::InitializeInMemoryURLIndexInSetUp()
-    const {
+bool LimitedInMemoryURLIndexTest::InitializeInMemoryURLIndexInSetUp() const {
   return false;
 }
 
-TEST_F(MAYBE_LimitedInMemoryURLIndexTest, Initialization) {
+TEST_F(LimitedInMemoryURLIndexTest, Initialization) {
   // Verify that the database contains the expected number of items, which
   // is the pre-filtered count, i.e. all of the items.
   sql::Statement statement(GetDB().GetUniqueStatement("SELECT * FROM urls;"));
@@ -489,7 +473,7 @@
   EXPECT_EQ(17U, private_data.word_map_.size());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, HiddenURLRowsAreIgnored) {
+TEST_F(InMemoryURLIndexTest, HiddenURLRowsAreIgnored) {
   history::URLID new_row_id = 87654321;  // Arbitrarily chosen large new row id.
   history::URLRow new_row =
       history::URLRow(GURL("http://hidden.com/"), new_row_id++);
@@ -504,7 +488,7 @@
               .size());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, DISABLED_Retrieval) {
+TEST_F(InMemoryURLIndexTest, DISABLED_Retrieval) {
   // See if a very specific term gives a single result.
   ScoredHistoryMatches matches = url_index_->HistoryItemsForTerms(
       ASCIIToUTF16("DrudgeReport"), base::string16::npos, kProviderMaxMatches);
@@ -597,7 +581,7 @@
             matches[0].url_info.title());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, CursorPositionRetrieval) {
+TEST_F(InMemoryURLIndexTest, CursorPositionRetrieval) {
   // See if a very specific term with no cursor gives an empty result.
   ScoredHistoryMatches matches = url_index_->HistoryItemsForTerms(
       ASCIIToUTF16("DrudReport"), base::string16::npos, kProviderMaxMatches);
@@ -640,7 +624,7 @@
             matches[0].url_info.title());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, URLPrefixMatching) {
+TEST_F(InMemoryURLIndexTest, URLPrefixMatching) {
   // "drudgere" - found
   ScoredHistoryMatches matches = url_index_->HistoryItemsForTerms(
       ASCIIToUTF16("drudgere"), base::string16::npos, kProviderMaxMatches);
@@ -694,7 +678,7 @@
   EXPECT_EQ(0U, matches.size());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, ProperStringMatching) {
+TEST_F(InMemoryURLIndexTest, ProperStringMatching) {
   // Search for the following with the expected results:
   // "atdmt view" - found
   // "atdmt.view" - not found
@@ -710,7 +694,7 @@
   EXPECT_EQ(1U, matches.size());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, TrimHistoryIds) {
+TEST_F(InMemoryURLIndexTest, TrimHistoryIds) {
   // Constants ---------------------------------------------------------------
 
   constexpr size_t kItemsToScoreLimit = 500;
@@ -810,7 +794,7 @@
       << "broken after: " << error_position - std::begin(item_groups);
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, HugeResultSet) {
+TEST_F(InMemoryURLIndexTest, HugeResultSet) {
   // Create a huge set of qualifying history items.
   for (history::URLID row_id = 5000; row_id < 6000; ++row_id) {
     history::URLRow new_row(GURL("http://www.brokeandaloneinmanitoba.com/"),
@@ -824,7 +808,7 @@
   EXPECT_EQ(kProviderMaxMatches, matches.size());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, TitleSearch) {
+TEST_F(InMemoryURLIndexTest, TitleSearch) {
   // Signal if someone has changed the test DB.
   EXPECT_EQ(30U, GetPrivateData()->history_info_map_.size());
 
@@ -843,7 +827,7 @@
       matches[0].url_info.title());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, TitleChange) {
+TEST_F(InMemoryURLIndexTest, TitleChange) {
   // Verify current title terms retrieves desired item.
   base::string16 original_terms =
       ASCIIToUTF16("lebronomics could high taxes influence");
@@ -881,7 +865,7 @@
   EXPECT_EQ(0U, matches.size());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, NonUniqueTermCharacterSets) {
+TEST_F(InMemoryURLIndexTest, NonUniqueTermCharacterSets) {
   // The presence of duplicate characters should succeed. Exercise by cycling
   // through a string with several duplicate characters.
   ScoredHistoryMatches matches = url_index_->HistoryItemsForTerms(
@@ -912,7 +896,7 @@
   EXPECT_EQ(28, matches[0].url_info.id());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, TypedCharacterCaching) {
+TEST_F(InMemoryURLIndexTest, TypedCharacterCaching) {
   // Verify that match results for previously typed characters are retained
   // (in the term_char_word_set_cache_) and reused, if possible, in future
   // autocompletes.
@@ -972,7 +956,7 @@
   CheckTerm(cache, ASCIIToUTF16("rec"));
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, DISABLED_AddNewRows) {
+TEST_F(InMemoryURLIndexTest, DISABLED_AddNewRows) {
   // Verify that the row we're going to add does not already exist.
   history::URLID new_row_id = 87654321;
   // Newly created history::URLRows get a last_visit time of 'right now' so it
@@ -1012,7 +996,7 @@
   EXPECT_FALSE(UpdateURL(new_row));
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, DeleteRows) {
+TEST_F(InMemoryURLIndexTest, DeleteRows) {
   ScoredHistoryMatches matches = url_index_->HistoryItemsForTerms(
       ASCIIToUTF16("DrudgeReport"), base::string16::npos, kProviderMaxMatches);
   ASSERT_EQ(1U, matches.size());
@@ -1030,7 +1014,7 @@
   EXPECT_FALSE(DeleteURL(url));
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, ExpireRow) {
+TEST_F(InMemoryURLIndexTest, ExpireRow) {
   ScoredHistoryMatches matches = url_index_->HistoryItemsForTerms(
       ASCIIToUTF16("DrudgeReport"), base::string16::npos, kProviderMaxMatches);
   ASSERT_EQ(1U, matches.size());
@@ -1048,7 +1032,7 @@
                   .empty());
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, WhitelistedURLs) {
+TEST_F(InMemoryURLIndexTest, WhitelistedURLs) {
   std::string client_whitelisted_url =
       base::StringPrintf("%s://foo", kClientWhitelistedScheme);
   struct TestData {
@@ -1132,13 +1116,13 @@
   }
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, ReadVisitsFromHistory) {
+TEST_F(InMemoryURLIndexTest, ReadVisitsFromHistory) {
   const HistoryInfoMap& history_info_map = GetPrivateData()->history_info_map_;
 
   // Check (for URL with id 1) that the number of visits and their
   // transition types are what we expect.  We don't bother checking
   // the timestamps because it's too much trouble.  (The timestamps go
-  // through a transformation in MAYBE_InMemoryURLIndexTest::SetUp().  We
+  // through a transformation in InMemoryURLIndexTest::SetUp().  We
   // assume that if the count and transitions show up with the right
   // information, we're getting the right information from the history
   // database file.)
@@ -1174,7 +1158,7 @@
   }
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, DISABLED_CacheSaveRestore) {
+TEST_F(InMemoryURLIndexTest, DISABLED_CacheSaveRestore) {
   base::ScopedTempDir temp_directory;
   ASSERT_TRUE(temp_directory.CreateUniqueTempDir());
   set_history_dir(temp_directory.GetPath());
@@ -1243,7 +1227,7 @@
   ExpectPrivateDataEqual(*old_data, new_data);
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, RebuildFromHistoryIfCacheOld) {
+TEST_F(InMemoryURLIndexTest, RebuildFromHistoryIfCacheOld) {
   base::ScopedTempDir temp_directory;
   ASSERT_TRUE(temp_directory.CreateUniqueTempDir());
   set_history_dir(temp_directory.GetPath());
@@ -1320,7 +1304,7 @@
   ExpectPrivateDataEqual(*old_data, new_data);
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, CalculateWordStartsOffsets) {
+TEST_F(InMemoryURLIndexTest, CalculateWordStartsOffsets) {
   const struct {
     const char* search_string;
     size_t cursor_position;
@@ -1397,7 +1381,7 @@
   }
 }
 
-TEST_F(MAYBE_InMemoryURLIndexTest, CalculateWordStartsOffsetsUnderscore) {
+TEST_F(InMemoryURLIndexTest, CalculateWordStartsOffsetsUnderscore) {
   const struct {
     const char* search_string;
     size_t cursor_position;
diff --git a/components/omnibox/browser/keyword_provider_unittest.cc b/components/omnibox/browser/keyword_provider_unittest.cc
index 53264ed..e54922e 100644
--- a/components/omnibox/browser/keyword_provider_unittest.cc
+++ b/components/omnibox/browser/keyword_provider_unittest.cc
@@ -46,13 +46,7 @@
 
 }  // namespace
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_KeywordProviderTest DISABLED_KeywordProviderTest
-#else
-#define MAYBE_KeywordProviderTest KeywordProviderTest
-#endif
-class MAYBE_KeywordProviderTest : public testing::Test {
+class KeywordProviderTest : public testing::Test {
  protected:
   template<class ResultType>
   struct MatchType {
@@ -67,7 +61,7 @@
     const MatchType<ResultType> output[3];
   };
 
-  MAYBE_KeywordProviderTest() : kw_provider_(nullptr) {
+  KeywordProviderTest() : kw_provider_(nullptr) {
     // Destroy the existing FieldTrialList before creating a new one to avoid
     // a DCHECK.
     field_trial_list_.reset();
@@ -75,7 +69,7 @@
         std::make_unique<variations::SHA1EntropyProvider>("foo")));
     variations::testing::ClearAllVariationParams();
   }
-  ~MAYBE_KeywordProviderTest() override {}
+  ~KeywordProviderTest() override {}
 
   // Should be called at least once during a test case.  This is a separate
   // function from SetUp() because the client may want to set parameters
@@ -100,7 +94,7 @@
 };
 
 // static
-const TemplateURLService::Initializer MAYBE_KeywordProviderTest::kTestData[] = {
+const TemplateURLService::Initializer KeywordProviderTest::kTestData[] = {
     {"aa", "aa.com?foo={searchTerms}", "aa"},
     {"aaaa", "http://aaaa/?aaaa=1&b={searchTerms}&c", "aaaa"},
     {"aaaaa", "{searchTerms}", "aaaaa"},
@@ -136,22 +130,22 @@
      "clean v8 slash"},
 };
 
-void MAYBE_KeywordProviderTest::SetUpClientAndKeywordProvider() {
+void KeywordProviderTest::SetUpClientAndKeywordProvider() {
   client_.reset(new MockAutocompleteProviderClient());
   client_->set_template_url_service(
       std::make_unique<TemplateURLService>(kTestData, base::size(kTestData)));
   kw_provider_ = new KeywordProvider(client_.get(), nullptr);
 }
 
-void MAYBE_KeywordProviderTest::TearDown() {
+void KeywordProviderTest::TearDown() {
   client_.reset();
   kw_provider_ = nullptr;
 }
 
-template <class ResultType>
-void MAYBE_KeywordProviderTest::RunTest(TestData<ResultType>* keyword_cases,
-                                        int num_cases,
-                                        ResultType AutocompleteMatch::*member) {
+template<class ResultType>
+void KeywordProviderTest::RunTest(TestData<ResultType>* keyword_cases,
+                                  int num_cases,
+                                  ResultType AutocompleteMatch::* member) {
   ACMatches matches;
   for (int i = 0; i < num_cases; ++i) {
     SCOPED_TRACE(keyword_cases[i].input);
@@ -170,7 +164,7 @@
   }
 }
 
-TEST_F(MAYBE_KeywordProviderTest, Edit) {
+TEST_F(KeywordProviderTest, Edit) {
   const MatchType<base::string16> kEmptyMatch = { base::string16(), false };
   TestData<base::string16> edit_cases[] = {
       // Searching for a nonexistent prefix should give nothing.
@@ -277,7 +271,7 @@
                           &AutocompleteMatch::fill_into_edit);
 }
 
-TEST_F(MAYBE_KeywordProviderTest, DomainMatches) {
+TEST_F(KeywordProviderTest, DomainMatches) {
   const MatchType<base::string16> kEmptyMatch = { base::string16(), false };
   TestData<base::string16> edit_cases[] = {
     // Searching for a nonexistent prefix should give nothing.
@@ -328,7 +322,7 @@
                           &AutocompleteMatch::fill_into_edit);
 }
 
-TEST_F(MAYBE_KeywordProviderTest, IgnoreRegistryForScoring) {
+TEST_F(KeywordProviderTest, IgnoreRegistryForScoring) {
   const MatchType<base::string16> kEmptyMatch = { base::string16(), false };
   TestData<base::string16> edit_cases[] = {
     // Matches should be limited to three and sorted in quality order.
@@ -373,7 +367,7 @@
                           &AutocompleteMatch::fill_into_edit);
 }
 
-TEST_F(MAYBE_KeywordProviderTest, DISABLED_URL) {
+TEST_F(KeywordProviderTest, DISABLED_URL) {
   const MatchType<GURL> kEmptyMatch = { GURL(), false };
   TestData<GURL> url_cases[] = {
       // No query input -> empty destination URL.
@@ -411,7 +405,7 @@
                 &AutocompleteMatch::destination_url);
 }
 
-TEST_F(MAYBE_KeywordProviderTest, Contents) {
+TEST_F(KeywordProviderTest, Contents) {
   const MatchType<base::string16> kEmptyMatch = { base::string16(), false };
   TestData<base::string16> contents_cases[] = {
       // No query input -> substitute "<Type search term>" into contents.
@@ -462,7 +456,7 @@
                           &AutocompleteMatch::contents);
 }
 
-TEST_F(MAYBE_KeywordProviderTest, AddKeyword) {
+TEST_F(KeywordProviderTest, AddKeyword) {
   SetUpClientAndKeywordProvider();
   TemplateURLData data;
   data.SetShortName(ASCIIToUTF16("Test"));
@@ -476,7 +470,7 @@
       client_->GetTemplateURLService()->GetTemplateURLForKeyword(keyword));
 }
 
-TEST_F(MAYBE_KeywordProviderTest, RemoveKeyword) {
+TEST_F(KeywordProviderTest, RemoveKeyword) {
   SetUpClientAndKeywordProvider();
   TemplateURLService* template_url_service = client_->GetTemplateURLService();
   base::string16 url(ASCIIToUTF16("http://aaaa/?aaaa=1&b={searchTerms}&c"));
@@ -486,7 +480,7 @@
                   ASCIIToUTF16("aaaa")) == nullptr);
 }
 
-TEST_F(MAYBE_KeywordProviderTest, GetKeywordForInput) {
+TEST_F(KeywordProviderTest, GetKeywordForInput) {
   SetUpClientAndKeywordProvider();
   EXPECT_EQ(ASCIIToUTF16("aa"),
       kw_provider_->GetKeywordForText(ASCIIToUTF16("aa")));
@@ -541,7 +535,7 @@
             kw_provider_->GetKeywordForText(ASCIIToUTF16("cleantestv8")));
 }
 
-TEST_F(MAYBE_KeywordProviderTest, GetSubstitutingTemplateURLForInput) {
+TEST_F(KeywordProviderTest, GetSubstitutingTemplateURLForInput) {
   struct {
     const std::string text;
     const size_t cursor_position;
@@ -602,7 +596,7 @@
 
 // If extra query params are specified on the command line, they should be
 // reflected (only) in the default search provider's destination URL.
-TEST_F(MAYBE_KeywordProviderTest, ExtraQueryParams) {
+TEST_F(KeywordProviderTest, ExtraQueryParams) {
   base::CommandLine::ForCurrentProcess()->AppendSwitchASCII(
       switches::kExtraSearchQueryParams, "a=b");
 
@@ -618,7 +612,7 @@
                 &AutocompleteMatch::destination_url);
 }
 
-TEST_F(MAYBE_KeywordProviderTest, DoesNotProvideMatchesOnFocus) {
+TEST_F(KeywordProviderTest, DoesNotProvideMatchesOnFocus) {
   SetUpClientAndKeywordProvider();
   AutocompleteInput input(ASCIIToUTF16("aaa"),
                           metrics::OmniboxEventProto::OTHER,
diff --git a/components/omnibox/browser/local_history_zero_suggest_provider_unittest.cc b/components/omnibox/browser/local_history_zero_suggest_provider_unittest.cc
index bf14023..d4ffc06 100644
--- a/components/omnibox/browser/local_history_zero_suggest_provider_unittest.cc
+++ b/components/omnibox/browser/local_history_zero_suggest_provider_unittest.cc
@@ -52,37 +52,34 @@
 
 }  // namespace
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_LocalHistoryZeroSuggestProviderTest \
-  DISABLED_LocalHistoryZeroSuggestProviderTest
-#else
-#define MAYBE_LocalHistoryZeroSuggestProviderTest \
-  LocalHistoryZeroSuggestProviderTest
-#endif
-class MAYBE_LocalHistoryZeroSuggestProviderTest
+class LocalHistoryZeroSuggestProviderTest
     : public testing::Test,
       public AutocompleteProviderListener {
  public:
-  MAYBE_LocalHistoryZeroSuggestProviderTest()
-      : client_(std::make_unique<FakeAutocompleteProviderClient>()),
-        provider_(base::WrapRefCounted(
-            LocalHistoryZeroSuggestProvider::Create(client_.get(), this))) {
-    SetZeroSuggestVariant(
-        metrics::OmniboxEventProto::NTP_REALBOX,
-        LocalHistoryZeroSuggestProvider::kZeroSuggestLocalVariant);
-  }
-  ~MAYBE_LocalHistoryZeroSuggestProviderTest() override {}
+  LocalHistoryZeroSuggestProviderTest() = default;
+  ~LocalHistoryZeroSuggestProviderTest() override = default;
 
  protected:
   // testing::Test
   void SetUp() override {
+    client_ = std::make_unique<FakeAutocompleteProviderClient>();
+    provider_ = base::WrapRefCounted(
+        LocalHistoryZeroSuggestProvider::Create(client_.get(), this));
+
+    SetZeroSuggestVariant(
+        metrics::OmniboxEventProto::NTP_REALBOX,
+        LocalHistoryZeroSuggestProvider::kZeroSuggestLocalVariant);
+
     // Verify that Google is the default search provider.
     ASSERT_EQ(SEARCH_ENGINE_GOOGLE,
               default_search_provider()->GetEngineType(
                   client_->GetTemplateURLService()->search_terms_data()));
   }
-  void TearDown() override { task_environment_.RunUntilIdle(); }
+  void TearDown() override {
+    provider_ = nullptr;
+    client_.reset();
+    task_environment_.RunUntilIdle();
+  }
 
   // AutocompleteProviderListener
   void OnProviderUpdate(bool updated_matches) override;
@@ -118,10 +115,10 @@
   scoped_refptr<LocalHistoryZeroSuggestProvider> provider_;
 
  private:
-  DISALLOW_COPY_AND_ASSIGN(MAYBE_LocalHistoryZeroSuggestProviderTest);
+  DISALLOW_COPY_AND_ASSIGN(LocalHistoryZeroSuggestProviderTest);
 };
 
-void MAYBE_LocalHistoryZeroSuggestProviderTest::SetZeroSuggestVariant(
+void LocalHistoryZeroSuggestProviderTest::SetZeroSuggestVariant(
     PageClassification page_classification,
     std::string zero_suggest_variant_value) {
   scoped_feature_list_ = std::make_unique<base::test::ScopedFeatureList>();
@@ -132,7 +129,7 @@
         zero_suggest_variant_value}});
 }
 
-void MAYBE_LocalHistoryZeroSuggestProviderTest::LoadURLs(
+void LocalHistoryZeroSuggestProviderTest::LoadURLs(
     std::vector<TestURLData> url_data_list) {
   const Time now = Time::Now();
   history::URLRows rows;
@@ -157,7 +154,7 @@
   WaitForHistoryService();
 }
 
-void MAYBE_LocalHistoryZeroSuggestProviderTest::WaitForHistoryService() {
+void LocalHistoryZeroSuggestProviderTest::WaitForHistoryService() {
   history::BlockUntilHistoryProcessesPendingRequests(
       client_->GetHistoryService());
 
@@ -166,7 +163,7 @@
   BlockUntilInMemoryURLIndexIsRefreshed(client_->GetInMemoryURLIndex());
 }
 
-void MAYBE_LocalHistoryZeroSuggestProviderTest::StartProviderAndWaitUntilDone(
+void LocalHistoryZeroSuggestProviderTest::StartProviderAndWaitUntilDone(
     const std::string& text = "",
     bool from_omnibox_focus = true,
     PageClassification page_classification =
@@ -182,13 +179,13 @@
   }
 }
 
-void MAYBE_LocalHistoryZeroSuggestProviderTest::OnProviderUpdate(
+void LocalHistoryZeroSuggestProviderTest::OnProviderUpdate(
     bool updated_matches) {
   if (provider_->done() && provider_run_loop_)
     provider_run_loop_->Quit();
 }
 
-void MAYBE_LocalHistoryZeroSuggestProviderTest::ExpectMatches(
+void LocalHistoryZeroSuggestProviderTest::ExpectMatches(
     std::vector<TestMatchData> match_data_list) {
   ASSERT_EQ(match_data_list.size(), provider_->matches().size());
   size_t index = 0;
@@ -203,7 +200,7 @@
 }
 
 // Tests that suggestions are returned only if when input is empty and focused.
-TEST_F(MAYBE_LocalHistoryZeroSuggestProviderTest, Input) {
+TEST_F(LocalHistoryZeroSuggestProviderTest, Input) {
   LoadURLs({
       {default_search_provider(), "hello world", "&foo=bar", 1},
   });
@@ -220,7 +217,7 @@
 
 // Tests that suggestions are returned only if ZeroSuggestVariant is configured
 // to return local history suggestions in the NTP.
-TEST_F(MAYBE_LocalHistoryZeroSuggestProviderTest, ZeroSuggestVariant) {
+TEST_F(LocalHistoryZeroSuggestProviderTest, ZeroSuggestVariant) {
   LoadURLs({
       {default_search_provider(), "hello world", "&foo=bar", 1},
   });
@@ -256,7 +253,7 @@
 
 // Tests that search terms are extracted from the default search provider's
 // search history only and only when Google is the default search provider.
-TEST_F(MAYBE_LocalHistoryZeroSuggestProviderTest, DefaultSearchProvider) {
+TEST_F(LocalHistoryZeroSuggestProviderTest, DefaultSearchProvider) {
   auto* template_url_service = client_->GetTemplateURLService();
   auto* other_search_provider = template_url_service->Add(
       std::make_unique<TemplateURL>(*GenerateDummyTemplateURLData("other")));
@@ -282,7 +279,7 @@
 // Tests that search terms are extracted with the correct encoding, whitespaces
 // are collapsed, search terms are lowercased and duplicated, and empty searches
 // are ignored.
-TEST_F(MAYBE_LocalHistoryZeroSuggestProviderTest, SearchTerms) {
+TEST_F(LocalHistoryZeroSuggestProviderTest, SearchTerms) {
   LoadURLs({
       {default_search_provider(), "hello world", "&foo=bar", 1},
       {default_search_provider(), "hello   world", "&foo=bar", 1},
@@ -298,7 +295,7 @@
 }
 
 // Tests that the suggestions are ordered by recency.
-TEST_F(MAYBE_LocalHistoryZeroSuggestProviderTest, Suggestions_Recency) {
+TEST_F(LocalHistoryZeroSuggestProviderTest, Suggestions_Recency) {
   LoadURLs({
       {default_search_provider(), "less recent search", "&foo=bar", 2},
       {default_search_provider(), "more recent search", "&foo=bar", 1},
@@ -309,7 +306,7 @@
 }
 
 // Tests that suggestions are created from fresh search histories only.
-TEST_F(MAYBE_LocalHistoryZeroSuggestProviderTest, Suggestions_Freshness) {
+TEST_F(LocalHistoryZeroSuggestProviderTest, Suggestions_Freshness) {
   int fresh = (Time::Now() - history::AutocompleteAgeThreshold()).InDays() - 1;
   int stale = (Time::Now() - history::AutocompleteAgeThreshold()).InDays() + 1;
   LoadURLs({
@@ -323,7 +320,7 @@
 
 // Tests that all the search URLs that would produce a given suggestion get
 // deleted when the autocomplete match is deleted.
-TEST_F(MAYBE_LocalHistoryZeroSuggestProviderTest, DISABLED_Delete) {
+TEST_F(LocalHistoryZeroSuggestProviderTest, DISABLED_Delete) {
   LoadURLs({
       {default_search_provider(), "hello   world", "&foo=bar&aqs=1", 1},
       {default_search_provider(), "HELLO WORLD", "&foo=bar&aqs=12", 1},
diff --git a/components/omnibox/browser/location_bar_model_impl_unittest.cc b/components/omnibox/browser/location_bar_model_impl_unittest.cc
index 44f75a9..32fdc79c 100644
--- a/components/omnibox/browser/location_bar_model_impl_unittest.cc
+++ b/components/omnibox/browser/location_bar_model_impl_unittest.cc
@@ -77,18 +77,12 @@
   bool connection_info_initialized_ = true;
 };
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_LocationBarModelImplTest DISABLED_LocationBarModelImplTest
-#else
-#define MAYBE_LocationBarModelImplTest LocationBarModelImplTest
-#endif
-class MAYBE_LocationBarModelImplTest : public testing::Test {
+class LocationBarModelImplTest : public testing::Test {
  protected:
   const GURL kValidSearchResultsPage =
       GURL("https://www.google.com/search?q=foo+query");
 
-  MAYBE_LocationBarModelImplTest() : model_(&delegate_, 1024) {}
+  LocationBarModelImplTest() : model_(&delegate_, 1024) {}
 
   FakeLocationBarModelDelegate* delegate() { return &delegate_; }
 
@@ -100,7 +94,7 @@
   LocationBarModelImpl model_;
 };
 
-TEST_F(MAYBE_LocationBarModelImplTest,
+TEST_F(LocationBarModelImplTest,
        DisplayUrlAppliesFormattedStringWithEquivalentMeaning) {
   base::test::ScopedFeatureList feature_list;
   feature_list.InitWithFeatures({omnibox::kHideSteadyStateUrlScheme,
@@ -124,7 +118,7 @@
 #else
 #define MAYBE_PreventElisionWorks PreventElisionWorks
 #endif
-TEST_F(MAYBE_LocationBarModelImplTest, MAYBE_PreventElisionWorks) {
+TEST_F(LocationBarModelImplTest, MAYBE_PreventElisionWorks) {
   base::test::ScopedFeatureList feature_list;
   feature_list.InitWithFeatures(
       {omnibox::kHideSteadyStateUrlScheme,
@@ -143,7 +137,7 @@
   EXPECT_FALSE(model()->GetDisplaySearchTerms(nullptr));
 }
 
-TEST_F(MAYBE_LocationBarModelImplTest, QueryInOmniboxFeatureFlagWorks) {
+TEST_F(LocationBarModelImplTest, QueryInOmniboxFeatureFlagWorks) {
   delegate()->SetURL(kValidSearchResultsPage);
   delegate()->SetSecurityLevel(security_state::SecurityLevel::SECURE);
 
@@ -155,7 +149,7 @@
   EXPECT_TRUE(model()->GetDisplaySearchTerms(nullptr));
 }
 
-TEST_F(MAYBE_LocationBarModelImplTest, QueryInOmniboxSecurityLevel) {
+TEST_F(LocationBarModelImplTest, QueryInOmniboxSecurityLevel) {
   base::test::ScopedFeatureList scoped_feature_list;
   scoped_feature_list.InitAndEnableFeature(omnibox::kQueryInOmnibox);
 
@@ -180,7 +174,7 @@
   EXPECT_TRUE(model()->GetDisplaySearchTerms(nullptr));
 }
 
-TEST_F(MAYBE_LocationBarModelImplTest,
+TEST_F(LocationBarModelImplTest,
        QueryInOmniboxDefaultSearchProviderWithAndWithoutQuery) {
   base::test::ScopedFeatureList scoped_feature_list;
   scoped_feature_list.InitAndEnableFeature(omnibox::kQueryInOmnibox);
@@ -199,7 +193,7 @@
   EXPECT_EQ(base::string16(), result);
 }
 
-TEST_F(MAYBE_LocationBarModelImplTest, QueryInOmniboxNonDefaultSearchProvider) {
+TEST_F(LocationBarModelImplTest, QueryInOmniboxNonDefaultSearchProvider) {
   base::test::ScopedFeatureList scoped_feature_list;
   scoped_feature_list.InitAndEnableFeature(omnibox::kQueryInOmnibox);
 
@@ -213,7 +207,7 @@
   EXPECT_EQ(base::string16(), result);
 }
 
-TEST_F(MAYBE_LocationBarModelImplTest, QueryInOmniboxLookalikeURL) {
+TEST_F(LocationBarModelImplTest, QueryInOmniboxLookalikeURL) {
   base::test::ScopedFeatureList scoped_feature_list;
   scoped_feature_list.InitAndEnableFeature(omnibox::kQueryInOmnibox);
 
diff --git a/components/omnibox/browser/omnibox_controller_unittest.cc b/components/omnibox/browser/omnibox_controller_unittest.cc
index 769b77be3..a7902f9 100644
--- a/components/omnibox/browser/omnibox_controller_unittest.cc
+++ b/components/omnibox/browser/omnibox_controller_unittest.cc
@@ -16,16 +16,10 @@
 #include "components/sessions/core/session_id.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_OmniboxControllerTest DISABLED_OmniboxControllerTest
-#else
-#define MAYBE_OmniboxControllerTest OmniboxControllerTest
-#endif
-class MAYBE_OmniboxControllerTest : public testing::Test {
+class OmniboxControllerTest : public testing::Test {
  protected:
-  MAYBE_OmniboxControllerTest();
-  ~MAYBE_OmniboxControllerTest() override;
+  OmniboxControllerTest();
+  ~OmniboxControllerTest() override;
 
   void CreateController();
   void AssertProviders(int expected_providers);
@@ -43,14 +37,14 @@
   std::unique_ptr<TestOmniboxClient> omnibox_client_;
   std::unique_ptr<OmniboxController> omnibox_controller_;
 
-  DISALLOW_COPY_AND_ASSIGN(MAYBE_OmniboxControllerTest);
+  DISALLOW_COPY_AND_ASSIGN(OmniboxControllerTest);
 };
 
-MAYBE_OmniboxControllerTest::MAYBE_OmniboxControllerTest() {}
+OmniboxControllerTest::OmniboxControllerTest() {}
 
-MAYBE_OmniboxControllerTest::~MAYBE_OmniboxControllerTest() {}
+OmniboxControllerTest::~OmniboxControllerTest() {}
 
-void MAYBE_OmniboxControllerTest::CreateController() {
+void OmniboxControllerTest::CreateController() {
   DCHECK(omnibox_client_);
   omnibox_controller_ =
       std::make_unique<OmniboxController>(nullptr, omnibox_client_.get());
@@ -58,7 +52,7 @@
 
 // Checks that the list of autocomplete providers used by the OmniboxController
 // matches the one in the |expected_providers| bit field.
-void MAYBE_OmniboxControllerTest::AssertProviders(int expected_providers) {
+void OmniboxControllerTest::AssertProviders(int expected_providers) {
   const AutocompleteController::Providers& providers =
       GetAutocompleteProviders();
 
@@ -75,16 +69,16 @@
   ASSERT_EQ(0, expected_providers);
 }
 
-void MAYBE_OmniboxControllerTest::SetUp() {
+void OmniboxControllerTest::SetUp() {
   omnibox_client_ = std::make_unique<TestOmniboxClient>();
 }
 
-void MAYBE_OmniboxControllerTest::TearDown() {
+void OmniboxControllerTest::TearDown() {
   omnibox_controller_.reset();
   omnibox_client_.reset();
 }
 
-TEST_F(MAYBE_OmniboxControllerTest, CheckDefaultAutocompleteProviders) {
+TEST_F(OmniboxControllerTest, CheckDefaultAutocompleteProviders) {
   CreateController();
   // First collect the basic providers.
   int observed_providers = 0;
diff --git a/components/omnibox/browser/omnibox_edit_model.cc b/components/omnibox/browser/omnibox_edit_model.cc
index b649e89..8d6b2fc 100644
--- a/components/omnibox/browser/omnibox_edit_model.cc
+++ b/components/omnibox/browser/omnibox_edit_model.cc
@@ -1179,7 +1179,7 @@
     // we should revert the temporary text same as what pressing escape would
     // have done.
     const size_t line_no = GetNewSelectedLine(count);
-    if (has_temporary_text_ && line_no == 0) {
+    if (has_temporary_text_ && user_input_in_progress_ && line_no == 0) {
       RevertTemporaryText(true);
     } else {
       popup_model()->MoveTo(line_no);
diff --git a/components/omnibox/browser/omnibox_edit_model.h b/components/omnibox/browser/omnibox_edit_model.h
index 7df8869..1a18435c 100644
--- a/components/omnibox/browser/omnibox_edit_model.h
+++ b/components/omnibox/browser/omnibox_edit_model.h
@@ -379,20 +379,11 @@
 
   OmniboxView* view() { return view_; }
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_OmniboxEditModelTest DISABLED_OmniboxEditModelTest
-#else
-#define MAYBE_OmniboxEditModelTest OmniboxEditModelTest
-#endif
-
  private:
-  friend class MAYBE_OmniboxControllerTest;
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_OmniboxEditModelTest, ConsumeCtrlKey);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_OmniboxEditModelTest,
-                           ConsumeCtrlKeyOnRequestFocus);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_OmniboxEditModelTest,
-                           ConsumeCtrlKeyOnCtrlAction);
+  friend class OmniboxControllerTest;
+  FRIEND_TEST_ALL_PREFIXES(OmniboxEditModelTest, ConsumeCtrlKey);
+  FRIEND_TEST_ALL_PREFIXES(OmniboxEditModelTest, ConsumeCtrlKeyOnRequestFocus);
+  FRIEND_TEST_ALL_PREFIXES(OmniboxEditModelTest, ConsumeCtrlKeyOnCtrlAction);
 
   enum PasteState {
     NONE,           // Most recent edit was not a paste.
diff --git a/components/omnibox/browser/omnibox_edit_model_unittest.cc b/components/omnibox/browser/omnibox_edit_model_unittest.cc
index 04b7cbd..a6a8a8b 100644
--- a/components/omnibox/browser/omnibox_edit_model_unittest.cc
+++ b/components/omnibox/browser/omnibox_edit_model_unittest.cc
@@ -28,13 +28,7 @@
 
 using metrics::OmniboxEventProto;
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_OmniboxEditModelTest DISABLED_OmniboxEditModelTest
-#else
-#define MAYBE_OmniboxEditModelTest OmniboxEditModelTest
-#endif
-class MAYBE_OmniboxEditModelTest : public testing::Test {
+class OmniboxEditModelTest : public testing::Test {
  public:
   void SetUp() override {
     controller_ = std::make_unique<TestOmniboxEditController>();
@@ -58,7 +52,7 @@
 };
 
 // Tests various permutations of AutocompleteModel::AdjustTextForCopy.
-TEST_F(MAYBE_OmniboxEditModelTest, AdjustTextForCopy) {
+TEST_F(OmniboxEditModelTest, AdjustTextForCopy) {
   struct Data {
     const char* url_for_editing;
     const int sel_start;
@@ -198,14 +192,7 @@
 
 // Tests that AdjustTextForCopy behaves properly with Query in Omnibox enabled.
 // For more general tests of copy adjustment, see the AdjustTextForCopy test.
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_AdjustTextForCopyQueryInOmnibox \
-  DISABLED_AdjustTextForCopyQueryInOmnibox
-#else
-#define MAYBE_AdjustTextForCopyQueryInOmnibox AdjustTextForCopyQueryInOmnibox
-#endif
-TEST_F(MAYBE_OmniboxEditModelTest, MAYBE_AdjustTextForCopyQueryInOmnibox) {
+TEST_F(OmniboxEditModelTest, AdjustTextForCopyQueryInOmnibox) {
   location_bar_model()->set_url(GURL("https://www.example.com/"));
   location_bar_model()->set_url_for_display(base::ASCIIToUTF16("example.com"));
   location_bar_model()->set_display_search_terms(base::ASCIIToUTF16("foobar"));
@@ -236,7 +223,7 @@
   }
 }
 
-TEST_F(MAYBE_OmniboxEditModelTest, DISABLED_InlineAutocompleteText) {
+TEST_F(OmniboxEditModelTest, DISABLED_InlineAutocompleteText) {
   // Test if the model updates the inline autocomplete text in the view.
   EXPECT_EQ(base::string16(), view()->inline_autocomplete_text());
   model()->SetUserText(base::ASCIIToUTF16("he"));
@@ -273,7 +260,7 @@
 
 // iOS doesn't use elisions in the Omnibox textfield.
 #if !defined(OS_IOS)
-TEST_F(MAYBE_OmniboxEditModelTest, RespectUnelisionInZeroSuggest) {
+TEST_F(OmniboxEditModelTest, RespectUnelisionInZeroSuggest) {
   location_bar_model()->set_url(GURL("https://www.example.com/"));
   location_bar_model()->set_url_for_display(base::ASCIIToUTF16("example.com"));
 
@@ -302,7 +289,7 @@
 // The failure was due to erroneously trying to strip the scheme from the
 // resulting fill_into_edit.  Alternate nav matches are never shown, so there's
 // no need to ever try and strip this scheme.
-TEST_F(MAYBE_OmniboxEditModelTest, AlternateNavHasHTTP) {
+TEST_F(OmniboxEditModelTest, AlternateNavHasHTTP) {
   const TestOmniboxClient* client =
       static_cast<TestOmniboxClient*>(model()->client());
   const AutocompleteMatch match(
@@ -324,13 +311,7 @@
       client->alternate_nav_match().fill_into_edit));
 }
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_CurrentMatch DISABLED_CurrentMatch
-#else
-#define MAYBE_CurrentMatch CurrentMatch
-#endif
-TEST_F(MAYBE_OmniboxEditModelTest, MAYBE_CurrentMatch) {
+TEST_F(OmniboxEditModelTest, CurrentMatch) {
   location_bar_model()->set_url(GURL("http://localhost/"));
   location_bar_model()->set_url_for_display(base::ASCIIToUTF16("localhost"));
   model()->ResetDisplayTexts();
@@ -357,7 +338,7 @@
   }
 }
 
-TEST_F(MAYBE_OmniboxEditModelTest, DisplayText) {
+TEST_F(OmniboxEditModelTest, DisplayText) {
   location_bar_model()->set_url(GURL("https://www.example.com/"));
   location_bar_model()->set_url_for_display(base::ASCIIToUTF16("example.com"));
 
@@ -394,13 +375,7 @@
   EXPECT_FALSE(model()->ShouldShowCurrentPageIcon());
 }
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_DisplayAndExitQueryInOmnibox DISABLED_DisplayAndExitQueryInOmnibox
-#else
-#define MAYBE_DisplayAndExitQueryInOmnibox DisplayAndExitQueryInOmnibox
-#endif
-TEST_F(MAYBE_OmniboxEditModelTest, MAYBE_DisplayAndExitQueryInOmnibox) {
+TEST_F(OmniboxEditModelTest, DisplayAndExitQueryInOmnibox) {
   location_bar_model()->set_url(GURL("https://www.example.com/"));
   location_bar_model()->set_url_for_display(base::ASCIIToUTF16("example.com"));
   location_bar_model()->set_display_search_terms(base::ASCIIToUTF16("foobar"));
@@ -426,7 +401,7 @@
   EXPECT_FALSE(model()->ShouldShowCurrentPageIcon());
 }
 
-TEST_F(MAYBE_OmniboxEditModelTest, UnelideDoesNothingWhenFullURLAlreadyShown) {
+TEST_F(OmniboxEditModelTest, UnelideDoesNothingWhenFullURLAlreadyShown) {
   location_bar_model()->set_url(GURL("https://www.example.com/"));
   location_bar_model()->set_url_for_display(
       base::ASCIIToUTF16("https://www.example.com/"));
@@ -449,7 +424,7 @@
 
 // The tab-switching system sometimes focuses the Omnibox even if it was not
 // previously focused. In those cases, ignore the saved focus state.
-TEST_F(MAYBE_OmniboxEditModelTest, IgnoreInvalidSavedFocusStates) {
+TEST_F(OmniboxEditModelTest, IgnoreInvalidSavedFocusStates) {
   // The Omnibox starts out unfocused. Save that state.
   ASSERT_FALSE(model()->has_focus());
   OmniboxEditModel::State state = model()->GetStateForTabSwitch();
@@ -466,7 +441,7 @@
 
 // Tests ConsumeCtrlKey() consumes ctrl key when down, but does not affect ctrl
 // state otherwise.
-TEST_F(MAYBE_OmniboxEditModelTest, ConsumeCtrlKey) {
+TEST_F(OmniboxEditModelTest, ConsumeCtrlKey) {
   model()->control_key_state_ = TestOmniboxEditModel::UP;
   model()->ConsumeCtrlKey();
   EXPECT_EQ(model()->control_key_state_, TestOmniboxEditModel::UP);
@@ -480,7 +455,7 @@
 }
 
 // Tests ctrl_key_state_ is set consumed if the ctrl key is down on focus.
-TEST_F(MAYBE_OmniboxEditModelTest, ConsumeCtrlKeyOnRequestFocus) {
+TEST_F(OmniboxEditModelTest, ConsumeCtrlKeyOnRequestFocus) {
   model()->control_key_state_ = TestOmniboxEditModel::DOWN;
   model()->OnSetFocus(false);
   EXPECT_EQ(model()->control_key_state_, TestOmniboxEditModel::UP);
@@ -490,7 +465,7 @@
 }
 
 // Tests the ctrl key is consumed on a ctrl-action (e.g. ctrl-c to copy)
-TEST_F(MAYBE_OmniboxEditModelTest, ConsumeCtrlKeyOnCtrlAction) {
+TEST_F(OmniboxEditModelTest, ConsumeCtrlKeyOnCtrlAction) {
   model()->control_key_state_ = TestOmniboxEditModel::DOWN;
   OmniboxView::StateChanges state_changes{nullptr, nullptr, 0,     0,
                                           false,   false,   false, false};
@@ -499,7 +474,7 @@
             TestOmniboxEditModel::DOWN_AND_CONSUMED);
 }
 
-TEST_F(MAYBE_OmniboxEditModelTest, KeywordModePreservesInlineAutocompleteText) {
+TEST_F(OmniboxEditModelTest, KeywordModePreservesInlineAutocompleteText) {
   // Set the edit model into an inline autocompletion state.
   view()->SetUserText(base::UTF8ToUTF16("user"));
   view()->OnInlineAutocompleteTextMaybeChanged(base::UTF8ToUTF16("user text"),
@@ -525,7 +500,7 @@
   }
 }
 
-TEST_F(MAYBE_OmniboxEditModelTest, KeywordModePreservesTemporaryText) {
+TEST_F(OmniboxEditModelTest, KeywordModePreservesTemporaryText) {
   // Set the edit model into a temporary text state.
   view()->SetUserText(base::UTF8ToUTF16("user text"));
   GURL destination_url("http://example.com");
diff --git a/components/omnibox/browser/omnibox_pedal_implementations_unittest.cc b/components/omnibox/browser/omnibox_pedal_implementations_unittest.cc
index 2d207bc..35913e5 100644
--- a/components/omnibox/browser/omnibox_pedal_implementations_unittest.cc
+++ b/components/omnibox/browser/omnibox_pedal_implementations_unittest.cc
@@ -13,13 +13,6 @@
 #include "components/omnibox/browser/test_omnibox_edit_controller.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_OmniboxPedalImplementationsTest \
-  DISABLED_OmniboxPedalImplementationsTest
-#else
-#define MAYBE_OmniboxPedalImplementationsTest OmniboxPedalImplementationsTest
-#endif
 class OmniboxPedalImplementationsTest : public testing::Test {
  protected:
   OmniboxPedalImplementationsTest()
diff --git a/components/omnibox/browser/omnibox_popup_model_unittest.cc b/components/omnibox/browser/omnibox_popup_model_unittest.cc
index 56248ed6..5c1ea279 100644
--- a/components/omnibox/browser/omnibox_popup_model_unittest.cc
+++ b/components/omnibox/browser/omnibox_popup_model_unittest.cc
@@ -48,15 +48,9 @@
 
 }  // namespace
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_OmniboxPopupModelTest DISABLED_OmniboxPopupModelTest
-#else
-#define MAYBE_OmniboxPopupModelTest OmniboxPopupModelTest
-#endif
-class MAYBE_OmniboxPopupModelTest : public ::testing::Test {
+class OmniboxPopupModelTest : public ::testing::Test {
  public:
-  MAYBE_OmniboxPopupModelTest()
+  OmniboxPopupModelTest()
       : view_(&controller_),
         model_(&view_, &controller_, std::make_unique<TestOmniboxClient>()),
         popup_model_(&popup_view_, &model_) {}
@@ -72,13 +66,13 @@
   TestOmniboxPopupView popup_view_;
   OmniboxPopupModel popup_model_;
 
-  DISALLOW_COPY_AND_ASSIGN(MAYBE_OmniboxPopupModelTest);
+  DISALLOW_COPY_AND_ASSIGN(OmniboxPopupModelTest);
 };
 
 // This verifies that the new treatment of the user's selected match in
 // |SetSelectedLine()| with removed |AutocompleteResult::Selection::empty()|
 // is correct in the face of various replacement versions of |empty()|.
-TEST_F(MAYBE_OmniboxPopupModelTest, SetSelectedLine) {
+TEST_F(OmniboxPopupModelTest, SetSelectedLine) {
   ACMatches matches;
   for (size_t i = 0; i < 2; ++i) {
     AutocompleteMatch match(nullptr, 1000, false,
@@ -101,7 +95,7 @@
   EXPECT_TRUE(popup_model()->has_selected_match());
 }
 
-TEST_F(MAYBE_OmniboxPopupModelTest, PopupPositionChanging) {
+TEST_F(OmniboxPopupModelTest, PopupPositionChanging) {
   ACMatches matches;
   for (size_t i = 0; i < 3; ++i) {
     AutocompleteMatch match(nullptr, 1000, false,
@@ -130,7 +124,7 @@
   }
 }
 
-TEST_F(MAYBE_OmniboxPopupModelTest, ComputeMatchMaxWidths) {
+TEST_F(OmniboxPopupModelTest, ComputeMatchMaxWidths) {
   int contents_max_width, description_max_width;
   const int separator_width = 10;
   const int kMinimumContentsWidth = 300;
@@ -268,7 +262,7 @@
 // Makes sure focus remains on the tab switch button when nothing changes,
 // and leaves when it does. Exercises the ratcheting logic in
 // OmniboxPopupModel::OnResultChanged().
-TEST_F(MAYBE_OmniboxPopupModelTest, TestFocusFixing) {
+TEST_F(OmniboxPopupModelTest, TestFocusFixing) {
   ACMatches matches;
   AutocompleteMatch match(nullptr, 1000, false,
                           AutocompleteMatchType::URL_WHAT_YOU_TYPED);
diff --git a/components/omnibox/browser/url_index_private_data.h b/components/omnibox/browser/url_index_private_data.h
index 2e008a2..c61b2c22 100644
--- a/components/omnibox/browser/url_index_private_data.h
+++ b/components/omnibox/browser/url_index_private_data.h
@@ -20,13 +20,7 @@
 #include "components/omnibox/browser/in_memory_url_index_types.h"
 #include "components/omnibox/browser/scored_history_match.h"
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_HistoryQuickProviderTest DISABLED_HistoryQuickProviderTest
-#else
-#define MAYBE_HistoryQuickProviderTest HistoryQuickProviderTest
-#endif
-class MAYBE_HistoryQuickProviderTest;
+class HistoryQuickProviderTest;
 class TemplateURLService;
 
 namespace bookmarks {
@@ -156,37 +150,21 @@
   friend class base::RefCountedThreadSafe<URLIndexPrivateData>;
   ~URLIndexPrivateData();
 
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_InMemoryURLIndexTest DISABLED_InMemoryURLIndexTest
-#else
-#define MAYBE_InMemoryURLIndexTest InMemoryURLIndexTest
-#endif
-
-// Flaky leaks on ASAN LSAN (crbug.com/1010691).
-#if defined(ADDRESS_SANITIZER)
-#define MAYBE_LimitedInMemoryURLIndexTest DISABLED_LimitedInMemoryURLIndexTest
-#else
-#define MAYBE_LimitedInMemoryURLIndexTest LimitedInMemoryURLIndexTest
-#endif
-
-  friend class ::MAYBE_HistoryQuickProviderTest;
-  friend class MAYBE_InMemoryURLIndexTest;
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, CacheSaveRestore);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest,
-                           CalculateWordStartsOffsets);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest,
+  friend class ::HistoryQuickProviderTest;
+  friend class InMemoryURLIndexTest;
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, CacheSaveRestore);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, CalculateWordStartsOffsets);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest,
                            CalculateWordStartsOffsetsUnderscore);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, HugeResultSet);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, ReadVisitsFromHistory);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest,
-                           RebuildFromHistoryIfCacheOld);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, Scoring);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, TitleSearch);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, TrimHistoryIds);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, TypedCharacterCaching);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_InMemoryURLIndexTest, WhitelistedURLs);
-  FRIEND_TEST_ALL_PREFIXES(MAYBE_LimitedInMemoryURLIndexTest, Initialization);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, HugeResultSet);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, ReadVisitsFromHistory);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, RebuildFromHistoryIfCacheOld);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, Scoring);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, TitleSearch);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, TrimHistoryIds);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, TypedCharacterCaching);
+  FRIEND_TEST_ALL_PREFIXES(InMemoryURLIndexTest, WhitelistedURLs);
+  FRIEND_TEST_ALL_PREFIXES(LimitedInMemoryURLIndexTest, Initialization);
 
   // Support caching of term results so that we can optimize searches which
   // build upon a previous search. Each entry in this map represents one
diff --git a/components/optimization_guide/hints_fetcher.cc b/components/optimization_guide/hints_fetcher.cc
index 11f4de3..d8dd5e68 100644
--- a/components/optimization_guide/hints_fetcher.cc
+++ b/components/optimization_guide/hints_fetcher.cc
@@ -103,6 +103,8 @@
   if (url_loader_)
     return false;
 
+  hints_fetch_start_time_ = base::TimeTicks::Now();
+
   request_context_ = request_context;
 
   get_hints_request_ = std::make_unique<proto::GetHintsRequest>();
@@ -184,6 +186,8 @@
 void HintsFetcher::HandleResponse(const std::string& get_hints_response_data,
                                   int net_status,
                                   int response_code) {
+  SEQUENCE_CHECKER(sequence_checker_);
+
   std::unique_ptr<proto::GetHintsResponse> get_hints_response =
       std::make_unique<proto::GetHintsResponse>();
 
@@ -201,6 +205,9 @@
     UMA_HISTOGRAM_COUNTS_100(
         "OptimizationGuide.HintsFetcher.GetHintsRequest.HintCount",
         get_hints_response->hints_size());
+    UMA_HISTOGRAM_MEDIUM_TIMES(
+        "OptimizationGuide.HintsFetcher.GetHintsRequest.FetchLatency",
+        base::TimeTicks::Now() - hints_fetch_start_time_);
     UpdateHostsSuccessfullyFetched();
     std::move(hints_fetched_callback_)
         .Run(request_context_, std::move(get_hints_response));
@@ -261,6 +268,8 @@
 
 void HintsFetcher::OnURLLoadComplete(
     std::unique_ptr<std::string> response_body) {
+  SEQUENCE_CHECKER(sequence_checker_);
+
   int response_code = -1;
   if (url_loader_->ResponseInfo() && url_loader_->ResponseInfo()->headers) {
     response_code = url_loader_->ResponseInfo()->headers->response_code();
diff --git a/components/optimization_guide/hints_fetcher.h b/components/optimization_guide/hints_fetcher.h
index 113c7cd6..f9a6720 100644
--- a/components/optimization_guide/hints_fetcher.h
+++ b/components/optimization_guide/hints_fetcher.h
@@ -15,6 +15,7 @@
 #include "base/optional.h"
 #include "base/sequence_checker.h"
 #include "base/time/clock.h"
+#include "base/time/time.h"
 #include "components/optimization_guide/proto/hints.pb.h"
 #include "url/gurl.h"
 
@@ -52,7 +53,9 @@
   // not already in progress. Returns whether a new request was issued.
   // |hints_fetched_callback| is run, passing a GetHintsResponse object, if a
   // fetch was successful or passes nullopt if the fetch fails. Virtualized for
-  // testing.
+  // testing. Hints fetcher may fetch hints for only a subset of the provided
+  // |hosts|. |hosts| should be an ordered list in descending order of
+  // probability that the hints are needed for that host.
   virtual bool FetchOptimizationGuideServiceHints(
       const std::vector<std::string>& hosts,
       optimization_guide::proto::RequestContext request_context,
@@ -122,6 +125,10 @@
   // Used for creating a |url_loader_| when needed for request hints.
   scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory_;
 
+  // The start time of the current hints fetch, used to determine the latency in
+  // retrieving hints from the remote Optimization Guide Service.
+  base::TimeTicks hints_fetch_start_time_;
+
   SEQUENCE_CHECKER(sequence_checker_);
 
   DISALLOW_COPY_AND_ASSIGN(HintsFetcher);
diff --git a/components/optimization_guide/hints_fetcher_unittest.cc b/components/optimization_guide/hints_fetcher_unittest.cc
index f49455f8..2c0b70b2 100644
--- a/components/optimization_guide/hints_fetcher_unittest.cc
+++ b/components/optimization_guide/hints_fetcher_unittest.cc
@@ -150,11 +150,16 @@
 };
 
 TEST_F(HintsFetcherTest, FetchOptimizationGuideServiceHints) {
+  base::HistogramTester histogram_tester;
+
   std::string response_content;
   EXPECT_TRUE(FetchHints(std::vector<std::string>()));
   VerifyHasPendingFetchRequests();
   EXPECT_TRUE(SimulateResponse(response_content, net::HTTP_OK));
   EXPECT_TRUE(hints_fetched());
+
+  histogram_tester.ExpectTotalCount(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.FetchLatency", 1);
 }
 
 // Tests to ensure that multiple hint fetches by the same object cannot be in
@@ -173,6 +178,8 @@
 
 // Tests 404 response from request.
 TEST_F(HintsFetcherTest, FetchReturned404) {
+  base::HistogramTester histogram_tester;
+
   std::string response_content;
 
   EXPECT_TRUE(FetchHints(std::vector<std::string>()));
@@ -180,27 +187,46 @@
   // Send a 404 to HintsFetcher.
   SimulateResponse(response_content, net::HTTP_NOT_FOUND);
   EXPECT_FALSE(hints_fetched());
+
+  // Make sure histogram not recorded on bad response.
+  histogram_tester.ExpectTotalCount(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.FetchLatency", 0);
 }
 
 TEST_F(HintsFetcherTest, FetchReturnBadResponse) {
+  base::HistogramTester histogram_tester;
+
   std::string response_content = "not proto";
   EXPECT_TRUE(FetchHints(std::vector<std::string>()));
   VerifyHasPendingFetchRequests();
   EXPECT_TRUE(SimulateResponse(response_content, net::HTTP_OK));
   EXPECT_FALSE(hints_fetched());
+
+  // Make sure histogram not recorded on bad response.
+  histogram_tester.ExpectTotalCount(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.FetchLatency", 0);
 }
 
 TEST_F(HintsFetcherTest, FetchAttemptWhenNetworkOffline) {
+  base::HistogramTester histogram_tester;
+
   SetConnectionOffline();
   std::string response_content;
   EXPECT_FALSE(FetchHints(std::vector<std::string>()));
   EXPECT_FALSE(hints_fetched());
 
+  // Make sure histogram not recorded on bad response.
+  histogram_tester.ExpectTotalCount(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.FetchLatency", 0);
+
   SetConnectionOnline();
   EXPECT_TRUE(FetchHints(std::vector<std::string>()));
   VerifyHasPendingFetchRequests();
   EXPECT_TRUE(SimulateResponse(response_content, net::HTTP_OK));
   EXPECT_TRUE(hints_fetched());
+
+  histogram_tester.ExpectTotalCount(
+      "OptimizationGuide.HintsFetcher.GetHintsRequest.FetchLatency", 1);
 }
 
 TEST_F(HintsFetcherTest, HintsFetchSuccessfulHostsRecorded) {
diff --git a/components/optimization_guide/optimization_guide_switches.cc b/components/optimization_guide/optimization_guide_switches.cc
index e8cf4534..f9fb814 100644
--- a/components/optimization_guide/optimization_guide_switches.cc
+++ b/components/optimization_guide/optimization_guide_switches.cc
@@ -43,6 +43,9 @@
 // fresh data.
 const char kPurgeHintCacheStore[] = "purge_hint_cache_store";
 
+const char kDisableFetchingHintsAtNavigationStartForTesting[] =
+    "disable-fetching-hints-at-navigation-start";
+
 bool IsHintComponentProcessingDisabled() {
   return base::CommandLine::ForCurrentProcess()->HasSwitch(kHintsProtoOverride);
 }
@@ -105,5 +108,11 @@
   return proto_configuration;
 }
 
+bool DisableFetchingHintsAtNavigationStartForTesting() {
+  base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
+  return command_line->HasSwitch(
+      switches::kDisableFetchingHintsAtNavigationStartForTesting);
+}
+
 }  // namespace switches
 }  // namespace optimization_guide
diff --git a/components/optimization_guide/optimization_guide_switches.h b/components/optimization_guide/optimization_guide_switches.h
index d181ee0a..ce18d37 100644
--- a/components/optimization_guide/optimization_guide_switches.h
+++ b/components/optimization_guide/optimization_guide_switches.h
@@ -24,6 +24,7 @@
 extern const char kOptimizationGuideServiceURL[];
 extern const char kOptimizationGuideServiceAPIKey[];
 extern const char kPurgeHintCacheStore[];
+extern const char kDisableFetchingHintsAtNavigationStartForTesting[];
 
 // Returns whether the hint component should be processed.
 // Available hint components are only processed if a proto override isn't being
@@ -50,6 +51,10 @@
 std::unique_ptr<optimization_guide::proto::Configuration>
 ParseComponentConfigFromCommandLine();
 
+// Returns true if fetching of hints in real-time at the time of navigation
+// start should be disabled. Returns true only in tests.
+bool DisableFetchingHintsAtNavigationStartForTesting();
+
 }  // namespace switches
 }  // namespace optimization_guide
 
diff --git a/components/page_info_strings.grdp b/components/page_info_strings.grdp
index ce5891d..a18c7a2d 100644
--- a/components/page_info_strings.grdp
+++ b/components/page_info_strings.grdp
@@ -424,8 +424,7 @@
           You could lose access to your Google Account. Chrome recommends changing your password now. You'll be asked to sign in.
         </message>
         <message name="IDS_PAGE_INFO_CHANGE_PASSWORD_DETAILS_SAVED" desc="A short paragraph explaining to a Chrome user that they have reused their saved password on the current website.">
-          Chrome has detected that you have just entered your password into a site that is
-          suspicious. Please reset your password now!
+          Chrome has detected that you have just entered your password into a site that is suspicious. Please reset your password now!
         </message>
         <message name="IDS_PAGE_INFO_CHANGE_PASSWORD_DETAILS_SYNC" desc="A short paragraph explaining to a Chrome sync user that they have reused their Google password on the current website.">
           Chrome can help you protect your Google Account and change your password.
diff --git a/components/payments/content/android/java/src/org/chromium/components/payments/PaymentDetailsConverter.java b/components/payments/content/android/java/src/org/chromium/components/payments/PaymentDetailsConverter.java
index d48bdb2..6c6f9e6 100644
--- a/components/payments/content/android/java/src/org/chromium/components/payments/PaymentDetailsConverter.java
+++ b/components/payments/content/android/java/src/org/chromium/components/payments/PaymentDetailsConverter.java
@@ -41,12 +41,14 @@
      * sent to the payment handler.
      * @param details       The pre-validated payment details update from the merchant. Should not
      *                      be null.
+     * @param handlesShipping The shipping related information should get redacted when
+     *         handlesShipping is false.
      * @param methodChecker The object that can check whether the invoked payment instrument is
      *                      valid for the given payment method identifier. Should not be null.
      * @return The data structure that can be sent to the invoked payment handler.
      */
     public static PaymentMethodChangeResponse convertToPaymentMethodChangeResponse(
-            PaymentDetails details, MethodChecker methodChecker) {
+            PaymentDetails details, boolean handlesShipping, MethodChecker methodChecker) {
         // Keep in sync with components/payments/content/payment_details_converter.cc.
         assert details != null;
         assert methodChecker != null;
@@ -54,7 +56,7 @@
         PaymentMethodChangeResponse response = new PaymentMethodChangeResponse();
         response.error = details.error;
         response.stringifiedPaymentMethodErrors = details.stringifiedPaymentMethodErrors;
-        response.shippingAddressErrors = details.shippingAddressErrors;
+        if (handlesShipping) response.shippingAddressErrors = details.shippingAddressErrors;
 
         if (details.total != null) response.total = details.total.amount;
 
@@ -83,7 +85,7 @@
             response.modifiers = modifiers.toArray(new PaymentHandlerModifier[modifiers.size()]);
         }
 
-        if (details.shippingOptions != null) {
+        if (handlesShipping && details.shippingOptions != null) {
             ArrayList<PaymentShippingOption> options = new ArrayList<>();
             for (int i = 0; i < details.shippingOptions.length; i++) {
                 PaymentShippingOption option = new PaymentShippingOption();
diff --git a/components/payments/content/payment_details_converter.cc b/components/payments/content/payment_details_converter.cc
index dd46ec9d..b1de5f8 100644
--- a/components/payments/content/payment_details_converter.cc
+++ b/components/payments/content/payment_details_converter.cc
@@ -16,6 +16,7 @@
 mojom::PaymentMethodChangeResponsePtr
 PaymentDetailsConverter::ConvertToPaymentMethodChangeResponse(
     const mojom::PaymentDetailsPtr& details,
+    bool handles_shipping,
     const MethodChecker& method_checker) {
   DCHECK(details);
 
@@ -23,7 +24,7 @@
   response->error = details->error;
   response->stringified_payment_method_errors =
       details->stringified_payment_method_errors;
-  if (details->shipping_address_errors) {
+  if (handles_shipping && details->shipping_address_errors) {
     response->shipping_address_errors =
         details->shipping_address_errors.Clone();
   }
@@ -54,7 +55,7 @@
     }
   }
 
-  if (details->shipping_options) {
+  if (handles_shipping && details->shipping_options) {
     response->shipping_options = std::vector<mojom::PaymentShippingOptionPtr>();
     for (const auto& option : *details->shipping_options)
       response->shipping_options->emplace_back(option.Clone());
diff --git a/components/payments/content/payment_details_converter.h b/components/payments/content/payment_details_converter.h
index 42f39d0..62fa241 100644
--- a/components/payments/content/payment_details_converter.h
+++ b/components/payments/content/payment_details_converter.h
@@ -24,11 +24,12 @@
   // call into a data structure that can be sent to the payment handler.
   //
   // The |details| should not be null.
-  //
+  // Shipping related information is redacted when |handles_shipping| is false.
   // The |method_checker| is not saved. It is used only for the duration of this
   // call.
   static mojom::PaymentMethodChangeResponsePtr
   ConvertToPaymentMethodChangeResponse(const mojom::PaymentDetailsPtr& details,
+                                       bool handles_shipping,
                                        const MethodChecker& method_checker);
 
  private:
diff --git a/components/payments/content/payment_request.cc b/components/payments/content/payment_request.cc
index 3d75a590..1266a41 100644
--- a/components/payments/content/payment_request.cc
+++ b/components/payments/content/payment_request.cc
@@ -345,9 +345,10 @@
       payment_handler_host_.is_changing()) {
     payment_handler_host_.UpdateWith(
         PaymentDetailsConverter::ConvertToPaymentMethodChangeResponse(
-            details, base::BindRepeating(
-                         &PaymentInstrument::IsValidForPaymentMethodIdentifier,
-                         state()->selected_instrument()->AsWeakPtr())));
+            details, state()->selected_instrument()->HandlesShippingAddress(),
+            base::BindRepeating(
+                &PaymentInstrument::IsValidForPaymentMethodIdentifier,
+                state()->selected_instrument()->AsWeakPtr())));
   }
 
   bool is_resolving_promise_passed_into_show_method = !spec_->IsInitialized();
diff --git a/components/performance_manager/BUILD.gn b/components/performance_manager/BUILD.gn
new file mode 100644
index 0000000..b8a73fe
--- /dev/null
+++ b/components/performance_manager/BUILD.gn
@@ -0,0 +1,113 @@
+# Copyright 2019 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.
+
+static_library("performance_manager") {
+  sources = [
+    "frame_priority/frame_priority.cc",
+    "frame_priority/max_vote_aggregator.cc",
+    "frame_priority/override_vote_aggregator.cc",
+    "graph/frame_node.cc",
+    "graph/frame_node_impl.cc",
+    "graph/frame_node_impl.h",
+    "graph/graph.cc",
+    "graph/graph_impl.cc",
+    "graph/graph_impl.h",
+    "graph/graph_impl_operations.cc",
+    "graph/graph_impl_operations.h",
+    "graph/graph_operations.cc",
+    "graph/node.cc",
+    "graph/node_attached_data.cc",
+    "graph/node_attached_data.h",
+    "graph/node_attached_data_impl.h",
+    "graph/node_base.cc",
+    "graph/node_base.h",
+    "graph/node_type.h",
+    "graph/page_node.cc",
+    "graph/page_node_impl.cc",
+    "graph/page_node_impl.h",
+    "graph/process_node.cc",
+    "graph/process_node_impl.cc",
+    "graph/process_node_impl.h",
+    "graph/properties.h",
+    "graph/system_node.cc",
+    "graph/system_node_impl.cc",
+    "graph/system_node_impl.h",
+    "graph/worker_node.cc",
+    "graph/worker_node_impl.cc",
+    "graph/worker_node_impl.h",
+    "performance_manager.cc",
+    "performance_manager_impl.cc",
+    "performance_manager_impl.h",
+    "performance_manager_lock_observer.cc",
+    "performance_manager_lock_observer.h",
+    "performance_manager_tab_helper.cc",
+    "performance_manager_tab_helper.h",
+    "public/frame_priority/frame_priority.h",
+    "public/frame_priority/max_vote_aggregator.h",
+    "public/frame_priority/override_vote_aggregator.h",
+    "public/graph/frame_node.h",
+    "public/graph/graph.h",
+    "public/graph/graph_operations.h",
+    "public/graph/node.h",
+    "public/graph/node_attached_data.h",
+    "public/graph/page_node.h",
+    "public/graph/process_node.h",
+    "public/graph/system_node.h",
+    "public/graph/worker_node.h",
+    "public/performance_manager.h",
+    "public/render_process_host_proxy.h",
+    "public/web_contents_proxy.h",
+    "render_process_host_proxy.cc",
+    "render_process_user_data.cc",
+    "render_process_user_data.h",
+    "web_contents_proxy.cc",
+    "web_contents_proxy_impl.cc",
+    "web_contents_proxy_impl.h",
+  ]
+  public_deps = [
+    "//base",
+    "//base/allocator:buildflags",
+    "//content/public/browser",
+    "//services/metrics/public/cpp:metrics_cpp",
+    "//services/resource_coordinator/public/mojom",
+    "//url",
+  ]
+}
+
+source_set("unit_tests") {
+  testonly = true
+
+  sources = [
+    "frame_priority/frame_priority_unittest.cc",
+    "frame_priority/max_vote_aggregator_unittest.cc",
+    "frame_priority/override_vote_aggregator_unittest.cc",
+    "frame_priority/unittest_util.cc",
+    "frame_priority/unittest_util.h",
+    "graph/frame_node_impl_unittest.cc",
+    "graph/graph_impl_operations_unittest.cc",
+    "graph/graph_impl_unittest.cc",
+    "graph/graph_operations_unittest.cc",
+    "graph/node_attached_data_unittest.cc",
+    "graph/node_base_unittest.cc",
+    "graph/page_node_impl_unittest.cc",
+    "graph/process_node_impl_unittest.cc",
+    "graph/properties_unittest.cc",
+    "graph/system_node_impl_unittest.cc",
+    "graph/worker_node_impl_unittest.cc",
+    "performance_manager_impl_unittest.cc",
+    "performance_manager_tab_helper_unittest.cc",
+    "performance_manager_test_harness.cc",
+    "performance_manager_test_harness.h",
+    "web_contents_proxy_unittest.cc",
+  ]
+
+  deps = [
+    ":performance_manager",
+    "test_support",
+    "//base/test:test_support",
+    "//content/test:test_support",
+    "//testing/gmock",
+    "//testing/gtest",
+  ]
+}
diff --git a/components/performance_manager/DEPS b/components/performance_manager/DEPS
new file mode 100644
index 0000000..2da3809
--- /dev/null
+++ b/components/performance_manager/DEPS
@@ -0,0 +1,8 @@
+include_rules = [
+  "+content/public/common",
+  "+content/public/browser",
+  "+content/public/test",
+  "+mojo/public",
+  "+services/metrics/public/cpp",
+  "+services/resource_coordinator/public",
+]
diff --git a/components/performance_manager/OWNERS b/components/performance_manager/OWNERS
new file mode 100644
index 0000000..969f30f
--- /dev/null
+++ b/components/performance_manager/OWNERS
@@ -0,0 +1,10 @@
+chrisha@chromium.org
+fdoray@chromium.org
+siggi@chromium.org
+
+# For IPC security review
+per-file *.mojom=set noparent
+per-file *.mojom=file://ipc/SECURITY_OWNERS
+
+# TEAM: catan-team@chromium.org
+# COMPONENT: Internals>ResourceCoordinator
diff --git a/components/performance_manager/README.md b/components/performance_manager/README.md
new file mode 100644
index 0000000..b28d143
--- /dev/null
+++ b/components/performance_manager/README.md
@@ -0,0 +1,9 @@
+# Performance Manager Overview
+
+The Performance Manager centralizes policy for data-driven resource management
+and planning. Central to this is the [graph](graph/graph_impl.h) which is
+comprised of nodes that reflect a the course structure of a browser at the
+level of [pages](graph/page_node_impl.h), [frames](graph/frame_node_impl.h)
+[processes](graph/process_node_impl.h) and so forth. Each node is adorned with
+relationships and properties sufficient to allow performance management policy
+to reason about such things as resource usage and prioritization.
diff --git a/chrome/browser/performance_manager/frame_priority/frame_priority.cc b/components/performance_manager/frame_priority/frame_priority.cc
similarity index 98%
rename from chrome/browser/performance_manager/frame_priority/frame_priority.cc
rename to components/performance_manager/frame_priority/frame_priority.cc
index 830b6e6..119b2874 100644
--- a/chrome/browser/performance_manager/frame_priority/frame_priority.cc
+++ b/components/performance_manager/frame_priority/frame_priority.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/frame_priority/frame_priority.h"
+#include "components/performance_manager/public/frame_priority/frame_priority.h"
 
 #include <cstring>
 #include <utility>
diff --git a/chrome/browser/performance_manager/frame_priority/frame_priority_unittest.cc b/components/performance_manager/frame_priority/frame_priority_unittest.cc
similarity index 97%
rename from chrome/browser/performance_manager/frame_priority/frame_priority_unittest.cc
rename to components/performance_manager/frame_priority/frame_priority_unittest.cc
index 1def08e..05a23301 100644
--- a/chrome/browser/performance_manager/frame_priority/frame_priority_unittest.cc
+++ b/components/performance_manager/frame_priority/frame_priority_unittest.cc
@@ -2,9 +2,9 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/frame_priority/frame_priority.h"
+#include "components/performance_manager/public/frame_priority/frame_priority.h"
 
-#include "chrome/browser/performance_manager/frame_priority/unittest_util.h"
+#include "components/performance_manager/frame_priority/unittest_util.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/frame_priority/max_vote_aggregator.cc b/components/performance_manager/frame_priority/max_vote_aggregator.cc
similarity index 98%
rename from chrome/browser/performance_manager/frame_priority/max_vote_aggregator.cc
rename to components/performance_manager/frame_priority/max_vote_aggregator.cc
index 31215078..90f4917 100644
--- a/chrome/browser/performance_manager/frame_priority/max_vote_aggregator.cc
+++ b/components/performance_manager/frame_priority/max_vote_aggregator.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/frame_priority/max_vote_aggregator.h"
+#include "components/performance_manager/public/frame_priority/max_vote_aggregator.h"
 
 #include <algorithm>
 #include <tuple>
diff --git a/chrome/browser/performance_manager/frame_priority/max_vote_aggregator_unittest.cc b/components/performance_manager/frame_priority/max_vote_aggregator_unittest.cc
similarity index 98%
rename from chrome/browser/performance_manager/frame_priority/max_vote_aggregator_unittest.cc
rename to components/performance_manager/frame_priority/max_vote_aggregator_unittest.cc
index b1e6c70..db07363 100644
--- a/chrome/browser/performance_manager/frame_priority/max_vote_aggregator_unittest.cc
+++ b/components/performance_manager/frame_priority/max_vote_aggregator_unittest.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/frame_priority/max_vote_aggregator.h"
+#include "components/performance_manager/public/frame_priority/max_vote_aggregator.h"
 
 #include "base/rand_util.h"
-#include "chrome/browser/performance_manager/frame_priority/unittest_util.h"
+#include "components/performance_manager/frame_priority/unittest_util.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/frame_priority/override_vote_aggregator.cc b/components/performance_manager/frame_priority/override_vote_aggregator.cc
similarity index 97%
rename from chrome/browser/performance_manager/frame_priority/override_vote_aggregator.cc
rename to components/performance_manager/frame_priority/override_vote_aggregator.cc
index f37cbdc..74dba9e 100644
--- a/chrome/browser/performance_manager/frame_priority/override_vote_aggregator.cc
+++ b/components/performance_manager/frame_priority/override_vote_aggregator.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/frame_priority/override_vote_aggregator.h"
+#include "components/performance_manager/public/frame_priority/override_vote_aggregator.h"
 
 namespace performance_manager {
 namespace frame_priority {
diff --git a/chrome/browser/performance_manager/frame_priority/override_vote_aggregator_unittest.cc b/components/performance_manager/frame_priority/override_vote_aggregator_unittest.cc
similarity index 97%
rename from chrome/browser/performance_manager/frame_priority/override_vote_aggregator_unittest.cc
rename to components/performance_manager/frame_priority/override_vote_aggregator_unittest.cc
index 2949c90..3dfbd85 100644
--- a/chrome/browser/performance_manager/frame_priority/override_vote_aggregator_unittest.cc
+++ b/components/performance_manager/frame_priority/override_vote_aggregator_unittest.cc
@@ -2,9 +2,9 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/frame_priority/override_vote_aggregator.h"
+#include "components/performance_manager/public/frame_priority/override_vote_aggregator.h"
 
-#include "chrome/browser/performance_manager/frame_priority/unittest_util.h"
+#include "components/performance_manager/frame_priority/unittest_util.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/frame_priority/unittest_util.cc b/components/performance_manager/frame_priority/unittest_util.cc
similarity index 97%
rename from chrome/browser/performance_manager/frame_priority/unittest_util.cc
rename to components/performance_manager/frame_priority/unittest_util.cc
index d888e1df..bc2db91 100644
--- a/chrome/browser/performance_manager/frame_priority/unittest_util.cc
+++ b/components/performance_manager/frame_priority/unittest_util.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/frame_priority/unittest_util.h"
+#include "components/performance_manager/frame_priority/unittest_util.h"
 
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/frame_priority/unittest_util.h b/components/performance_manager/frame_priority/unittest_util.h
similarity index 87%
rename from chrome/browser/performance_manager/frame_priority/unittest_util.h
rename to components/performance_manager/frame_priority/unittest_util.h
index 3f25c255e..1891c229 100644
--- a/chrome/browser/performance_manager/frame_priority/unittest_util.h
+++ b/components/performance_manager/frame_priority/unittest_util.h
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_FRAME_PRIORITY_UNITTEST_UTIL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_FRAME_PRIORITY_UNITTEST_UTIL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_FRAME_PRIORITY_UNITTEST_UTIL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_FRAME_PRIORITY_UNITTEST_UTIL_H_
 
-#include "chrome/browser/performance_manager/public/frame_priority/frame_priority.h"
+#include "components/performance_manager/public/frame_priority/frame_priority.h"
 
 #include "base/macros.h"
 
@@ -72,4 +72,4 @@
 }  // namespace frame_priority
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_FRAME_PRIORITY_UNITTEST_UTIL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_FRAME_PRIORITY_UNITTEST_UTIL_H_
diff --git a/chrome/browser/performance_manager/graph/frame_node.cc b/components/performance_manager/graph/frame_node.cc
similarity index 79%
rename from chrome/browser/performance_manager/graph/frame_node.cc
rename to components/performance_manager/graph/frame_node.cc
index fda0f77..f31954e 100644
--- a/chrome/browser/performance_manager/graph/frame_node.cc
+++ b/components/performance_manager/graph/frame_node.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/public/graph/frame_node.h"
 
 #include "base/logging.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/frame_node_impl.cc b/components/performance_manager/graph/frame_node_impl.cc
similarity index 92%
rename from chrome/browser/performance_manager/graph/frame_node_impl.cc
rename to components/performance_manager/graph/frame_node_impl.cc
index b42cbe8..303556e 100644
--- a/chrome/browser/performance_manager/graph/frame_node_impl.cc
+++ b/components/performance_manager/graph/frame_node_impl.cc
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
 
 #include <utility>
 
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/worker_node_impl.h"
-#include "chrome/browser/performance_manager/public/frame_priority/frame_priority.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/worker_node_impl.h"
+#include "components/performance_manager/public/frame_priority/frame_priority.h"
 
 namespace performance_manager {
 
@@ -167,14 +167,14 @@
   return is_ad_frame_.value();
 }
 
-bool FrameNodeImpl::holds_web_lock() const {
+bool FrameNodeImpl::is_holding_weblock() const {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  return holds_web_lock_.value();
+  return is_holding_weblock_.value();
 }
 
-bool FrameNodeImpl::holds_indexed_db_lock() const {
+bool FrameNodeImpl::is_holding_indexeddb_lock() const {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  return holds_indexed_db_lock_.value();
+  return is_holding_indexeddb_lock_.value();
 }
 
 const base::flat_set<WorkerNodeImpl*>& FrameNodeImpl::child_worker_nodes()
@@ -214,16 +214,16 @@
 #endif
 }
 
-void FrameNodeImpl::SetHoldsWebLock(bool holds_web_lock) {
+void FrameNodeImpl::SetIsHoldingWebLock(bool is_holding_weblock) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  DCHECK_NE(holds_web_lock, holds_web_lock_.value());
-  holds_web_lock_.SetAndMaybeNotify(this, holds_web_lock);
+  DCHECK_NE(is_holding_weblock, is_holding_weblock_.value());
+  is_holding_weblock_.SetAndMaybeNotify(this, is_holding_weblock);
 }
 
-void FrameNodeImpl::SetHoldsIndexedDBLock(bool holds_indexed_db_lock) {
+void FrameNodeImpl::SetIsHoldingIndexedDBLock(bool is_holding_indexeddb_lock) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  DCHECK_NE(holds_indexed_db_lock, holds_indexed_db_lock_.value());
-  holds_indexed_db_lock_.SetAndMaybeNotify(this, holds_indexed_db_lock);
+  DCHECK_NE(is_holding_indexeddb_lock, is_holding_indexeddb_lock_.value());
+  is_holding_indexeddb_lock_.SetAndMaybeNotify(this, is_holding_indexeddb_lock);
 }
 
 void FrameNodeImpl::OnNavigationCommitted(const GURL& url, bool same_document) {
@@ -361,14 +361,14 @@
   return is_ad_frame();
 }
 
-bool FrameNodeImpl::HoldsWebLock() const {
+bool FrameNodeImpl::IsHoldingWebLock() const {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  return holds_web_lock();
+  return is_holding_weblock();
 }
 
-bool FrameNodeImpl::HoldsIndexedDBLock() const {
+bool FrameNodeImpl::IsHoldingIndexedDBLock() const {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  return holds_indexed_db_lock();
+  return is_holding_indexeddb_lock();
 }
 
 const base::flat_set<const WorkerNode*> FrameNodeImpl::GetChildWorkerNodes()
diff --git a/chrome/browser/performance_manager/graph/frame_node_impl.h b/components/performance_manager/graph/frame_node_impl.h
similarity index 92%
rename from chrome/browser/performance_manager/graph/frame_node_impl.h
rename to components/performance_manager/graph/frame_node_impl.h
index 7341720f..c4ea1c0 100644
--- a/chrome/browser/performance_manager/graph/frame_node_impl.h
+++ b/components/performance_manager/graph/frame_node_impl.h
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_FRAME_NODE_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_FRAME_NODE_IMPL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_FRAME_NODE_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_FRAME_NODE_IMPL_H_
 
 #include <memory>
 
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
 #include "base/unguessable_token.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/public/graph/frame_node.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/public/graph/frame_node.h"
 #include "mojo/public/cpp/bindings/pending_receiver.h"
 #include "mojo/public/cpp/bindings/receiver.h"
 #include "url/gurl.h"
@@ -101,15 +101,15 @@
   bool is_current() const;
   bool network_almost_idle() const;
   bool is_ad_frame() const;
-  bool holds_web_lock() const;
-  bool holds_indexed_db_lock() const;
+  bool is_holding_weblock() const;
+  bool is_holding_indexeddb_lock() const;
   const base::flat_set<WorkerNodeImpl*>& child_worker_nodes() const;
   const PriorityAndReason& priority_and_reason() const;
 
   // Setters are not thread safe.
   void SetIsCurrent(bool is_current);
-  void SetHoldsWebLock(bool holds_web_lock);
-  void SetHoldsIndexedDBLock(bool holds_indexed_db_lock);
+  void SetIsHoldingWebLock(bool is_holding_weblock);
+  void SetIsHoldingIndexedDBLock(bool is_holding_indexeddb_lock);
 
   // Invoked when a navigation is committed in the frame.
   void OnNavigationCommitted(const GURL& url, bool same_document);
@@ -142,8 +142,8 @@
   bool IsCurrent() const override;
   bool GetNetworkAlmostIdle() const override;
   bool IsAdFrame() const override;
-  bool HoldsWebLock() const override;
-  bool HoldsIndexedDBLock() const override;
+  bool IsHoldingWebLock() const override;
+  bool IsHoldingIndexedDBLock() const override;
   const base::flat_set<const WorkerNode*> GetChildWorkerNodes() const override;
   const PriorityAndReason& GetPriorityAndReason() const override;
 
@@ -230,12 +230,12 @@
   // subsystems after a navigation for locks to be released).
   ObservedProperty::NotifiesOnlyOnChanges<
       bool,
-      &FrameNodeObserver::OnFrameHoldsWebLockChanged>
-      holds_web_lock_{false};
+      &FrameNodeObserver::OnFrameIsHoldingWebLockChanged>
+      is_holding_weblock_{false};
   ObservedProperty::NotifiesOnlyOnChanges<
       bool,
-      &FrameNodeObserver::OnFrameHoldsIndexedDBLockChanged>
-      holds_indexed_db_lock_{false};
+      &FrameNodeObserver::OnFrameIsHoldingIndexedDBLockChanged>
+      is_holding_indexeddb_lock_{false};
 
   ObservedProperty::
       NotifiesOnlyOnChanges<bool, &FrameNodeObserver::OnIsCurrentChanged>
@@ -262,4 +262,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_FRAME_NODE_IMPL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_FRAME_NODE_IMPL_H_
diff --git a/chrome/browser/performance_manager/graph/frame_node_impl_unittest.cc b/components/performance_manager/graph/frame_node_impl_unittest.cc
similarity index 89%
rename from chrome/browser/performance_manager/graph/frame_node_impl_unittest.cc
rename to components/performance_manager/graph/frame_node_impl_unittest.cc
index 2832a05..e7f3a98 100644
--- a/chrome/browser/performance_manager/graph/frame_node_impl_unittest.cc
+++ b/components/performance_manager/graph/frame_node_impl_unittest.cc
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
 
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
@@ -132,8 +132,8 @@
                     const resource_coordinator::mojom::InterventionPolicy&));
   MOCK_METHOD2(OnURLChanged, void(const FrameNode*, const GURL&));
   MOCK_METHOD1(OnIsAdFrameChanged, void(const FrameNode*));
-  MOCK_METHOD1(OnFrameHoldsWebLockChanged, void(const FrameNode*));
-  MOCK_METHOD1(OnFrameHoldsIndexedDBLockChanged, void(const FrameNode*));
+  MOCK_METHOD1(OnFrameIsHoldingWebLockChanged, void(const FrameNode*));
+  MOCK_METHOD1(OnFrameIsHoldingIndexedDBLockChanged, void(const FrameNode*));
   MOCK_METHOD1(OnNonPersistentNotificationCreated, void(const FrameNode*));
   MOCK_METHOD1(OnPriorityAndReasonChanged, void(const FrameNode*));
 
@@ -225,7 +225,7 @@
   graph()->RemoveFrameNodeObserver(&obs);
 }
 
-TEST_F(FrameNodeImplTest, HoldsWebLock) {
+TEST_F(FrameNodeImplTest, IsHoldingWebLock) {
   auto process = CreateNode<ProcessNodeImpl>();
   auto page = CreateNode<PageNodeImpl>();
   auto frame_node = CreateFrameNodeAutoId(process.get(), page.get());
@@ -233,18 +233,18 @@
   MockObserver obs;
   graph()->AddFrameNodeObserver(&obs);
 
-  EXPECT_FALSE(frame_node->holds_web_lock());
-  EXPECT_CALL(obs, OnFrameHoldsWebLockChanged(frame_node.get()));
-  frame_node->SetHoldsWebLock(true);
-  EXPECT_TRUE(frame_node->holds_web_lock());
-  EXPECT_CALL(obs, OnFrameHoldsWebLockChanged(frame_node.get()));
-  frame_node->SetHoldsWebLock(false);
-  EXPECT_FALSE(frame_node->holds_web_lock());
+  EXPECT_FALSE(frame_node->is_holding_weblock());
+  EXPECT_CALL(obs, OnFrameIsHoldingWebLockChanged(frame_node.get()));
+  frame_node->SetIsHoldingWebLock(true);
+  EXPECT_TRUE(frame_node->is_holding_weblock());
+  EXPECT_CALL(obs, OnFrameIsHoldingWebLockChanged(frame_node.get()));
+  frame_node->SetIsHoldingWebLock(false);
+  EXPECT_FALSE(frame_node->is_holding_weblock());
 
   graph()->RemoveFrameNodeObserver(&obs);
 }
 
-TEST_F(FrameNodeImplTest, HoldsIndexedDBLock) {
+TEST_F(FrameNodeImplTest, IsHoldingIndexedDBLock) {
   auto process = CreateNode<ProcessNodeImpl>();
   auto page = CreateNode<PageNodeImpl>();
   auto frame_node = CreateFrameNodeAutoId(process.get(), page.get());
@@ -252,13 +252,12 @@
   MockObserver obs;
   graph()->AddFrameNodeObserver(&obs);
 
-  EXPECT_FALSE(frame_node->holds_indexed_db_lock());
-  EXPECT_CALL(obs, OnFrameHoldsIndexedDBLockChanged(frame_node.get()));
-  frame_node->SetHoldsIndexedDBLock(true);
-  EXPECT_TRUE(frame_node->holds_indexed_db_lock());
-  EXPECT_CALL(obs, OnFrameHoldsIndexedDBLockChanged(frame_node.get()));
-  frame_node->SetHoldsIndexedDBLock(false);
-  EXPECT_FALSE(frame_node->holds_indexed_db_lock());
+  EXPECT_CALL(obs, OnFrameIsHoldingIndexedDBLockChanged(frame_node.get()));
+  frame_node->SetIsHoldingIndexedDBLock(true);
+  EXPECT_TRUE(frame_node->is_holding_indexeddb_lock());
+  EXPECT_CALL(obs, OnFrameIsHoldingIndexedDBLockChanged(frame_node.get()));
+  frame_node->SetIsHoldingIndexedDBLock(false);
+  EXPECT_FALSE(frame_node->is_holding_indexeddb_lock());
 
   graph()->RemoveFrameNodeObserver(&obs);
 }
@@ -353,9 +352,10 @@
   EXPECT_EQ(frame_node->network_almost_idle(),
             public_frame_node->GetNetworkAlmostIdle());
   EXPECT_EQ(frame_node->is_ad_frame(), public_frame_node->IsAdFrame());
-  EXPECT_EQ(frame_node->holds_web_lock(), public_frame_node->HoldsWebLock());
-  EXPECT_EQ(frame_node->holds_indexed_db_lock(),
-            public_frame_node->HoldsIndexedDBLock());
+  EXPECT_EQ(frame_node->is_holding_weblock(),
+            public_frame_node->IsHoldingWebLock());
+  EXPECT_EQ(frame_node->is_holding_indexeddb_lock(),
+            public_frame_node->IsHoldingIndexedDBLock());
 }
 
 }  // namespace performance_manager
diff --git a/chrome/browser/performance_manager/graph/graph.cc b/components/performance_manager/graph/graph.cc
similarity index 89%
rename from chrome/browser/performance_manager/graph/graph.cc
rename to components/performance_manager/graph/graph.cc
index ce08169..c838d14 100644
--- a/chrome/browser/performance_manager/graph/graph.cc
+++ b/components/performance_manager/graph/graph.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/graph.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/graph_impl.cc b/components/performance_manager/graph/graph_impl.cc
similarity index 96%
rename from chrome/browser/performance_manager/graph/graph_impl.cc
rename to components/performance_manager/graph/graph_impl.cc
index ab05788..70e6525 100644
--- a/chrome/browser/performance_manager/graph/graph_impl.cc
+++ b/components/performance_manager/graph/graph_impl.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
 
 #include <algorithm>
 #include <utility>
@@ -13,12 +13,12 @@
 #include "base/logging.h"
 #include "base/macros.h"
 #include "base/stl_util.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
-#include "chrome/browser/performance_manager/graph/worker_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/worker_node_impl.h"
 
 namespace ukm {
 class UkmEntryBuilder;
diff --git a/chrome/browser/performance_manager/graph/graph_impl.h b/components/performance_manager/graph/graph_impl.h
similarity index 95%
rename from chrome/browser/performance_manager/graph/graph_impl.h
rename to components/performance_manager/graph/graph_impl.h
index 3c26094..f2b7c70 100644
--- a/chrome/browser/performance_manager/graph/graph_impl.h
+++ b/components/performance_manager/graph/graph_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_H_
 
 #include <stdint.h>
 
@@ -18,8 +18,8 @@
 #include "base/macros.h"
 #include "base/process/process_handle.h"
 #include "base/sequence_checker.h"
-#include "chrome/browser/performance_manager/public/graph/graph.h"
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/public/graph/graph.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
 #include "services/metrics/public/cpp/ukm_recorder.h"
 
 namespace performance_manager {
@@ -198,4 +198,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_H_
diff --git a/chrome/browser/performance_manager/graph/graph_impl_operations.cc b/components/performance_manager/graph/graph_impl_operations.cc
similarity index 92%
rename from chrome/browser/performance_manager/graph/graph_impl_operations.cc
rename to components/performance_manager/graph/graph_impl_operations.cc
index 7332ef4..affb085 100644
--- a/chrome/browser/performance_manager/graph/graph_impl_operations.cc
+++ b/components/performance_manager/graph/graph_impl_operations.cc
@@ -2,9 +2,9 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
 
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/graph_impl_operations.h b/components/performance_manager/graph/graph_impl_operations.h
similarity index 90%
rename from chrome/browser/performance_manager/graph/graph_impl_operations.h
rename to components/performance_manager/graph/graph_impl_operations.h
index ae68ee1..5b60865 100644
--- a/chrome/browser/performance_manager/graph/graph_impl_operations.h
+++ b/components/performance_manager/graph/graph_impl_operations.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_OPERATIONS_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_OPERATIONS_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_OPERATIONS_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_OPERATIONS_H_
 
 #include "base/callback_forward.h"
 #include "base/containers/flat_set.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
 
 namespace performance_manager {
 
@@ -96,4 +96,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_OPERATIONS_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_GRAPH_IMPL_OPERATIONS_H_
diff --git a/chrome/browser/performance_manager/graph/graph_impl_operations_unittest.cc b/components/performance_manager/graph/graph_impl_operations_unittest.cc
similarity index 96%
rename from chrome/browser/performance_manager/graph/graph_impl_operations_unittest.cc
rename to components/performance_manager/graph/graph_impl_operations_unittest.cc
index bcd5353..7701f1e 100644
--- a/chrome/browser/performance_manager/graph/graph_impl_operations_unittest.cc
+++ b/components/performance_manager/graph/graph_impl_operations_unittest.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
 
 #include <algorithm>
 
 #include "base/bind.h"
 #include "base/stl_util.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/graph_impl_unittest.cc b/components/performance_manager/graph/graph_impl_unittest.cc
similarity index 94%
rename from chrome/browser/performance_manager/graph/graph_impl_unittest.cc
rename to components/performance_manager/graph/graph_impl_unittest.cc
index bcfa913..23d5849f 100644
--- a/chrome/browser/performance_manager/graph/graph_impl_unittest.cc
+++ b/components/performance_manager/graph/graph_impl_unittest.cc
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
 
 #include "base/memory/ptr_util.h"
 #include "base/process/process.h"
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/graph_operations.cc b/components/performance_manager/graph/graph_operations.cc
similarity index 88%
rename from chrome/browser/performance_manager/graph/graph_operations.cc
rename to components/performance_manager/graph/graph_operations.cc
index 9092dac..1151a1f 100644
--- a/chrome/browser/performance_manager/graph/graph_operations.cc
+++ b/components/performance_manager/graph/graph_operations.cc
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/graph_operations.h"
+#include "components/performance_manager/public/graph/graph_operations.h"
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/graph_operations_unittest.cc b/components/performance_manager/graph/graph_operations_unittest.cc
similarity index 96%
rename from chrome/browser/performance_manager/graph/graph_operations_unittest.cc
rename to components/performance_manager/graph/graph_operations_unittest.cc
index e1e462ba..95f97b8 100644
--- a/chrome/browser/performance_manager/graph/graph_operations_unittest.cc
+++ b/components/performance_manager/graph/graph_operations_unittest.cc
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/graph_operations.h"
+#include "components/performance_manager/public/graph/graph_operations.h"
 
 #include <algorithm>
 
 #include "base/bind.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/node.cc b/components/performance_manager/graph/node.cc
similarity index 82%
rename from chrome/browser/performance_manager/graph/node.cc
rename to components/performance_manager/graph/node.cc
index 4a25e74a..d28fcc4 100644
--- a/chrome/browser/performance_manager/graph/node.cc
+++ b/components/performance_manager/graph/node.cc
@@ -2,9 +2,9 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/node.h"
+#include "components/performance_manager/public/graph/node.h"
 
-#include "chrome/browser/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/node_base.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/node_attached_data.cc b/components/performance_manager/graph/node_attached_data.cc
similarity index 90%
rename from chrome/browser/performance_manager/graph/node_attached_data.cc
rename to components/performance_manager/graph/node_attached_data.cc
index cc626fe..98bb41aa 100644
--- a/chrome/browser/performance_manager/graph/node_attached_data.cc
+++ b/components/performance_manager/graph/node_attached_data.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/node_attached_data.h"
+#include "components/performance_manager/graph/node_attached_data.h"
 
 #include <utility>
 
 #include "base/logging.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/public/graph/node.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/public/graph/node.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/node_attached_data.h b/components/performance_manager/graph/node_attached_data.h
similarity index 83%
rename from chrome/browser/performance_manager/graph/node_attached_data.h
rename to components/performance_manager/graph/node_attached_data.h
index d14de41..6256f16 100644
--- a/chrome/browser/performance_manager/graph/node_attached_data.h
+++ b/components/performance_manager/graph/node_attached_data.h
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_H_
 
 #include <memory>
 
 #include "base/logging.h"
 #include "base/macros.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
 
 namespace performance_manager {
 
@@ -62,4 +62,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_H_
diff --git a/chrome/browser/performance_manager/graph/node_attached_data_impl.h b/components/performance_manager/graph/node_attached_data_impl.h
similarity index 97%
rename from chrome/browser/performance_manager/graph/node_attached_data_impl.h
rename to components/performance_manager/graph/node_attached_data_impl.h
index 103b269..f3134c01 100644
--- a/chrome/browser/performance_manager/graph/node_attached_data_impl.h
+++ b/components/performance_manager/graph/node_attached_data_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_IMPL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_IMPL_H_
 
 #include <memory>
 #include <type_traits>
@@ -11,7 +11,7 @@
 
 #include "base/logging.h"
 #include "base/memory/ptr_util.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data.h"
+#include "components/performance_manager/graph/node_attached_data.h"
 
 namespace performance_manager {
 
@@ -375,4 +375,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_IMPL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_ATTACHED_DATA_IMPL_H_
diff --git a/chrome/browser/performance_manager/graph/node_attached_data_unittest.cc b/components/performance_manager/graph/node_attached_data_unittest.cc
similarity index 93%
rename from chrome/browser/performance_manager/graph/node_attached_data_unittest.cc
rename to components/performance_manager/graph/node_attached_data_unittest.cc
index 4dd3287..43846d9 100644
--- a/chrome/browser/performance_manager/graph/node_attached_data_unittest.cc
+++ b/components/performance_manager/graph/node_attached_data_unittest.cc
@@ -2,21 +2,21 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/node_attached_data.h"
+#include "components/performance_manager/public/graph/node_attached_data.h"
 
 #include <utility>
 
 #include "base/test/gtest_util.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data_impl.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
-#include "chrome/browser/performance_manager/public/graph/node.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/node_attached_data_impl.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/public/graph/node.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/node_base.cc b/components/performance_manager/graph/node_base.cc
similarity index 88%
rename from chrome/browser/performance_manager/graph/node_base.cc
rename to components/performance_manager/graph/node_base.cc
index 7255e64c..314e325 100644
--- a/chrome/browser/performance_manager/graph/node_base.cc
+++ b/components/performance_manager/graph/node_base.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/node_base.h"
 
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/public/graph/node.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/public/graph/node.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/node_base.h b/components/performance_manager/graph/node_base.h
similarity index 88%
rename from chrome/browser/performance_manager/graph/node_base.h
rename to components/performance_manager/graph/node_base.h
index 82085f1..562926bf 100644
--- a/chrome/browser/performance_manager/graph/node_base.h
+++ b/components/performance_manager/graph/node_base.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_BASE_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_BASE_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_BASE_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_BASE_H_
 
 #include <stdint.h>
 #include <map>
@@ -13,9 +13,9 @@
 #include "base/callback.h"
 #include "base/macros.h"
 #include "base/sequence_checker.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/node_type.h"
-#include "chrome/browser/performance_manager/graph/properties.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/node_type.h"
+#include "components/performance_manager/graph/properties.h"
 #include "mojo/public/cpp/bindings/binding.h"
 #include "mojo/public/cpp/bindings/interface_request.h"
 #include "mojo/public/cpp/bindings/strong_binding.h"
@@ -110,14 +110,11 @@
   }
 };
 
-template <class NodeImplClass,
-          class NodeClass,
-          class NodeObserverClass>
+template <class NodeImplClass, class NodeClass, class NodeObserverClass>
 class TypedNodeBase : public NodeBase {
  public:
-  using ObservedProperty = ObservedPropertyImpl<NodeImplClass,
-                                                NodeClass,
-                                                NodeObserverClass>;
+  using ObservedProperty =
+      ObservedPropertyImpl<NodeImplClass, NodeClass, NodeObserverClass>;
 
   explicit TypedNodeBase(GraphImpl* graph)
       : NodeBase(NodeImplClass::Type(), graph) {}
@@ -161,4 +158,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_BASE_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_BASE_H_
diff --git a/chrome/browser/performance_manager/graph/node_base_unittest.cc b/components/performance_manager/graph/node_base_unittest.cc
similarity index 91%
rename from chrome/browser/performance_manager/graph/node_base_unittest.cc
rename to components/performance_manager/graph/node_base_unittest.cc
index f4f39e6a..4e39b6c 100644
--- a/chrome/browser/performance_manager/graph/node_base_unittest.cc
+++ b/components/performance_manager/graph/node_base_unittest.cc
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/node_type.h b/components/performance_manager/graph/node_type.h
similarity index 66%
rename from chrome/browser/performance_manager/graph/node_type.h
rename to components/performance_manager/graph/node_type.h
index 1831289..032be3c 100644
--- a/chrome/browser/performance_manager/graph/node_type.h
+++ b/components/performance_manager/graph/node_type.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_TYPE_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_TYPE_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_TYPE_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_TYPE_H_
 
 #include <stdint.h>
 
@@ -20,4 +20,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_NODE_TYPE_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_NODE_TYPE_H_
diff --git a/chrome/browser/performance_manager/graph/page_node.cc b/components/performance_manager/graph/page_node.cc
similarity index 79%
rename from chrome/browser/performance_manager/graph/page_node.cc
rename to components/performance_manager/graph/page_node.cc
index b8f9a6ab..84b44f40 100644
--- a/chrome/browser/performance_manager/graph/page_node.cc
+++ b/components/performance_manager/graph/page_node.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/graph/page_node.h"
 
 #include "base/logging.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/page_node_impl.cc b/components/performance_manager/graph/page_node_impl.cc
similarity index 89%
rename from chrome/browser/performance_manager/graph/page_node_impl.cc
rename to components/performance_manager/graph/page_node_impl.cc
index ff6b5e45..b9a4c4d 100644
--- a/chrome/browser/performance_manager/graph/page_node_impl.cc
+++ b/components/performance_manager/graph/page_node_impl.cc
@@ -2,17 +2,17 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
 
 #include <memory>
 
 #include "base/logging.h"
 #include "base/stl_util.h"
 #include "base/time/default_tick_clock.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 namespace performance_manager {
 
@@ -195,6 +195,16 @@
   return origin_trial_freeze_policy_.value();
 }
 
+bool PageNodeImpl::is_holding_weblock() const {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  return is_holding_weblock_.value();
+}
+
+bool PageNodeImpl::is_holding_indexeddb_lock() const {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  return is_holding_indexeddb_lock_.value();
+}
+
 const base::flat_set<FrameNodeImpl*>& PageNodeImpl::main_frame_nodes() const {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   return main_frame_nodes_;
@@ -319,6 +329,16 @@
   return origin_trial_freeze_policy();
 }
 
+bool PageNodeImpl::IsHoldingWebLock() const {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  return is_holding_weblock();
+}
+
+bool PageNodeImpl::IsHoldingIndexedDBLock() const {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  return is_holding_indexeddb_lock();
+}
+
 int64_t PageNodeImpl::GetNavigationID() const {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   return navigation_id();
@@ -364,4 +384,14 @@
   origin_trial_freeze_policy_.SetAndMaybeNotify(this, policy);
 }
 
+void PageNodeImpl::SetIsHoldingWebLock(bool is_holding_weblock) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  is_holding_weblock_.SetAndMaybeNotify(this, is_holding_weblock);
+}
+
+void PageNodeImpl::SetIsHoldingIndexedDBLock(bool is_holding_indexeddb_lock) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  is_holding_indexeddb_lock_.SetAndMaybeNotify(this, is_holding_indexeddb_lock);
+}
+
 }  // namespace performance_manager
diff --git a/chrome/browser/performance_manager/graph/page_node_impl.h b/components/performance_manager/graph/page_node_impl.h
similarity index 88%
rename from chrome/browser/performance_manager/graph/page_node_impl.h
rename to components/performance_manager/graph/page_node_impl.h
index eb65d00..706d8a5 100644
--- a/chrome/browser/performance_manager/graph/page_node_impl.h
+++ b/components/performance_manager/graph/page_node_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PAGE_NODE_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PAGE_NODE_IMPL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PAGE_NODE_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PAGE_NODE_IMPL_H_
 
 #include <memory>
 #include <string>
@@ -12,10 +12,10 @@
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
+#include "components/performance_manager/graph/node_attached_data.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 #include "url/gurl.h"
 
 namespace performance_manager {
@@ -81,6 +81,8 @@
   ukm::SourceId ukm_source_id() const;
   LifecycleState lifecycle_state() const;
   InterventionPolicy origin_trial_freeze_policy() const;
+  bool is_holding_weblock() const;
+  bool is_holding_indexeddb_lock() const;
   const base::flat_set<FrameNodeImpl*>& main_frame_nodes() const;
   base::TimeTicks usage_estimate_time() const;
   base::TimeDelta cumulative_cpu_usage_estimate() const;
@@ -120,6 +122,8 @@
   ukm::SourceId GetUkmSourceID() const override;
   LifecycleState GetLifecycleState() const override;
   InterventionPolicy GetOriginTrialFreezePolicy() const override;
+  bool IsHoldingWebLock() const override;
+  bool IsHoldingIndexedDBLock() const override;
   int64_t GetNavigationID() const override;
   base::TimeDelta GetTimeSinceLastNavigation() const override;
   const FrameNode* GetMainFrameNode() const override;
@@ -135,6 +139,8 @@
   void SetPageAlmostIdle(bool page_almost_idle);
   void SetLifecycleState(LifecycleState lifecycle_state);
   void SetOriginTrialFreezePolicy(InterventionPolicy policy);
+  void SetIsHoldingWebLock(bool is_holding_weblock);
+  void SetIsHoldingIndexedDBLock(bool is_holding_indexeddb_lock);
 
   // The WebContentsProxy associated with this page.
   const WebContentsProxy contents_proxy_;
@@ -224,6 +230,17 @@
       InterventionPolicy,
       &PageNodeObserver::OnPageOriginTrialFreezePolicyChanged>
       origin_trial_freeze_policy_{InterventionPolicy::kDefault};
+  // Indicates if at least one frame of the page is currently holding a WebLock.
+  ObservedProperty::NotifiesOnlyOnChanges<
+      bool,
+      &PageNodeObserver::OnPageIsHoldingWebLockChanged>
+      is_holding_weblock_{false};
+  // Indicates if at least one frame of the page is currently holding an
+  // IndexedDB lock.
+  ObservedProperty::NotifiesOnlyOnChanges<
+      bool,
+      &PageNodeObserver::OnPageIsHoldingIndexedDBLockChanged>
+      is_holding_indexeddb_lock_{false};
 
   // Storage for PageAlmostIdle user data.
   std::unique_ptr<NodeAttachedData> page_almost_idle_data_;
@@ -232,11 +249,11 @@
   InternalNodeAttachedDataStorage<sizeof(uintptr_t) + 8> frozen_frame_data_;
 
   // Inline storage for PageAggregatorAccess user data.
-  InternalNodeAttachedDataStorage<sizeof(uintptr_t) + 16> page_aggregator_data_;
+  InternalNodeAttachedDataStorage<sizeof(uintptr_t) + 24> page_aggregator_data_;
 
   DISALLOW_COPY_AND_ASSIGN(PageNodeImpl);
 };
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PAGE_NODE_IMPL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PAGE_NODE_IMPL_H_
diff --git a/chrome/browser/performance_manager/graph/page_node_impl_unittest.cc b/components/performance_manager/graph/page_node_impl_unittest.cc
similarity index 94%
rename from chrome/browser/performance_manager/graph/page_node_impl_unittest.cc
rename to components/performance_manager/graph/page_node_impl_unittest.cc
index 6a49e1c0d..cd94fcf9 100644
--- a/chrome/browser/performance_manager/graph/page_node_impl_unittest.cc
+++ b/components/performance_manager/graph/page_node_impl_unittest.cc
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
 
 #include "base/stl_util.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/public/graph/page_node.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/public/graph/page_node.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
@@ -198,6 +198,8 @@
   MOCK_METHOD1(OnUkmSourceIdChanged, void(const PageNode*));
   MOCK_METHOD1(OnPageLifecycleStateChanged, void(const PageNode*));
   MOCK_METHOD1(OnPageOriginTrialFreezePolicyChanged, void(const PageNode*));
+  MOCK_METHOD1(OnPageIsHoldingWebLockChanged, void(const PageNode*));
+  MOCK_METHOD1(OnPageIsHoldingIndexedDBLockChanged, void(const PageNode*));
   MOCK_METHOD1(OnMainFrameUrlChanged, void(const PageNode*));
   MOCK_METHOD1(OnPageAlmostIdleChanged, void(const PageNode*));
   MOCK_METHOD1(OnMainFrameDocumentChanged, void(const PageNode*));
diff --git a/chrome/browser/performance_manager/graph/process_node.cc b/components/performance_manager/graph/process_node.cc
similarity index 79%
rename from chrome/browser/performance_manager/graph/process_node.cc
rename to components/performance_manager/graph/process_node.cc
index df489e6..9ab1081 100644
--- a/chrome/browser/performance_manager/graph/process_node.cc
+++ b/components/performance_manager/graph/process_node.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/graph/process_node.h"
 
 #include "base/logging.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/process_node_impl.cc b/components/performance_manager/graph/process_node_impl.cc
similarity index 96%
rename from chrome/browser/performance_manager/graph/process_node_impl.cc
rename to components/performance_manager/graph/process_node_impl.cc
index 7e75698..1d47ed6 100644
--- a/chrome/browser/performance_manager/graph/process_node_impl.cc
+++ b/components/performance_manager/graph/process_node_impl.cc
@@ -2,14 +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/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 #include <utility>
 
 #include "base/logging.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/process_node_impl.h b/components/performance_manager/graph/process_node_impl.h
similarity index 90%
rename from chrome/browser/performance_manager/graph/process_node_impl.h
rename to components/performance_manager/graph/process_node_impl.h
index 511d98b..4515a64 100644
--- a/chrome/browser/performance_manager/graph/process_node_impl.h
+++ b/components/performance_manager/graph/process_node_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PROCESS_NODE_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PROCESS_NODE_IMPL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PROCESS_NODE_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PROCESS_NODE_IMPL_H_
 
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
@@ -11,11 +11,11 @@
 #include "base/process/process.h"
 #include "base/process/process_handle.h"
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/graph/node_attached_data.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/graph/properties.h"
-#include "chrome/browser/performance_manager/public/graph/process_node.h"
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/graph/node_attached_data.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/properties.h"
+#include "components/performance_manager/public/graph/process_node.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
 #include "mojo/public/cpp/bindings/pending_receiver.h"
 #include "mojo/public/cpp/bindings/receiver.h"
 
@@ -37,9 +37,7 @@
 // 4. Back to 2.
 class ProcessNodeImpl
     : public PublicNodeImpl<ProcessNodeImpl, ProcessNode>,
-      public TypedNodeBase<ProcessNodeImpl,
-                           ProcessNode,
-                           ProcessNodeObserver>,
+      public TypedNodeBase<ProcessNodeImpl, ProcessNode, ProcessNodeObserver>,
       public resource_coordinator::mojom::ProcessCoordinationUnit {
  public:
   static constexpr NodeTypeEnum Type() { return NodeTypeEnum::kProcess; }
@@ -191,4 +189,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PROCESS_NODE_IMPL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PROCESS_NODE_IMPL_H_
diff --git a/chrome/browser/performance_manager/graph/process_node_impl_unittest.cc b/components/performance_manager/graph/process_node_impl_unittest.cc
similarity index 96%
rename from chrome/browser/performance_manager/graph/process_node_impl_unittest.cc
rename to components/performance_manager/graph/process_node_impl_unittest.cc
index 6425737..04523ae 100644
--- a/chrome/browser/performance_manager/graph/process_node_impl_unittest.cc
+++ b/components/performance_manager/graph/process_node_impl_unittest.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 #include "base/process/process.h"
 #include "base/test/bind_test_util.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/properties.h b/components/performance_manager/graph/properties.h
similarity index 93%
rename from chrome/browser/performance_manager/graph/properties.h
rename to components/performance_manager/graph/properties.h
index d3f966b..44d5715 100644
--- a/chrome/browser/performance_manager/graph/properties.h
+++ b/components/performance_manager/graph/properties.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PROPERTIES_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PROPERTIES_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PROPERTIES_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PROPERTIES_H_
 
 #include <utility>
 
@@ -17,9 +17,7 @@
 // function "observers()" that returns an iterable collection of
 // ObserverType pointers. This is templated on the observer type to allow
 // easy testing.
-template <typename NodeImplType,
-          typename NodeType,
-          typename ObserverType>
+template <typename NodeImplType, typename NodeType, typename ObserverType>
 class ObservedPropertyImpl {
  public:
   // Helper class for node properties that represent measurements that are taken
@@ -123,4 +121,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_PROPERTIES_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_PROPERTIES_H_
diff --git a/chrome/browser/performance_manager/graph/properties_unittest.cc b/components/performance_manager/graph/properties_unittest.cc
similarity index 98%
rename from chrome/browser/performance_manager/graph/properties_unittest.cc
rename to components/performance_manager/graph/properties_unittest.cc
index 5641b17..124c822 100644
--- a/chrome/browser/performance_manager/graph/properties_unittest.cc
+++ b/components/performance_manager/graph/properties_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/properties.h"
+#include "components/performance_manager/graph/properties.h"
 
 #include "base/observer_list.h"
 #include "testing/gmock/include/gmock/gmock.h"
diff --git a/chrome/browser/performance_manager/graph/system_node.cc b/components/performance_manager/graph/system_node.cc
similarity index 79%
rename from chrome/browser/performance_manager/graph/system_node.cc
rename to components/performance_manager/graph/system_node.cc
index 809a95f..2ca6801 100644
--- a/chrome/browser/performance_manager/graph/system_node.cc
+++ b/components/performance_manager/graph/system_node.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/system_node.h"
+#include "components/performance_manager/public/graph/system_node.h"
 
 #include "base/logging.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/system_node_impl.cc b/components/performance_manager/graph/system_node_impl.cc
similarity index 64%
rename from chrome/browser/performance_manager/graph/system_node_impl.cc
rename to components/performance_manager/graph/system_node_impl.cc
index 416e806..13c7e1e8 100644
--- a/chrome/browser/performance_manager/graph/system_node_impl.cc
+++ b/components/performance_manager/graph/system_node_impl.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
 
 #include <algorithm>
 #include <iterator>
@@ -10,11 +10,11 @@
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
 #include "base/process/process_handle.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/components/performance_manager/graph/system_node_impl.h b/components/performance_manager/graph/system_node_impl.h
new file mode 100644
index 0000000..90580e7
--- /dev/null
+++ b/components/performance_manager/graph/system_node_impl.h
@@ -0,0 +1,39 @@
+// Copyright 2018 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_PERFORMANCE_MANAGER_GRAPH_SYSTEM_NODE_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_SYSTEM_NODE_IMPL_H_
+
+#include <cstdint>
+#include <memory>
+#include <vector>
+
+#include "base/macros.h"
+#include "base/process/process_handle.h"
+#include "base/time/time.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/public/graph/system_node.h"
+
+namespace performance_manager {
+
+class SystemNodeImpl
+    : public PublicNodeImpl<SystemNodeImpl, SystemNode>,
+      public TypedNodeBase<SystemNodeImpl, SystemNode, SystemNodeObserver> {
+ public:
+  static constexpr NodeTypeEnum Type() { return NodeTypeEnum::kSystem; }
+
+  explicit SystemNodeImpl(GraphImpl* graph);
+  ~SystemNodeImpl() override;
+
+  // This should be called after refreshing the memory usage data of the process
+  // nodes.
+  void OnProcessMemoryMetricsAvailable();
+
+ private:
+  DISALLOW_COPY_AND_ASSIGN(SystemNodeImpl);
+};
+
+}  // namespace performance_manager
+
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_SYSTEM_NODE_IMPL_H_
diff --git a/chrome/browser/performance_manager/graph/system_node_impl_unittest.cc b/components/performance_manager/graph/system_node_impl_unittest.cc
similarity index 85%
rename from chrome/browser/performance_manager/graph/system_node_impl_unittest.cc
rename to components/performance_manager/graph/system_node_impl_unittest.cc
index fc1d5d3..c641f92 100644
--- a/chrome/browser/performance_manager/graph/system_node_impl_unittest.cc
+++ b/components/performance_manager/graph/system_node_impl_unittest.cc
@@ -2,14 +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/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
diff --git a/chrome/browser/performance_manager/graph/worker_node.cc b/components/performance_manager/graph/worker_node.cc
similarity index 79%
rename from chrome/browser/performance_manager/graph/worker_node.cc
rename to components/performance_manager/graph/worker_node.cc
index d0303d7b..8778e2a 100644
--- a/chrome/browser/performance_manager/graph/worker_node.cc
+++ b/components/performance_manager/graph/worker_node.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/graph/worker_node.h"
+#include "components/performance_manager/public/graph/worker_node.h"
 
 #include "base/logging.h"
-#include "chrome/browser/performance_manager/graph/worker_node_impl.h"
+#include "components/performance_manager/graph/worker_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/worker_node_impl.cc b/components/performance_manager/graph/worker_node_impl.cc
similarity index 96%
rename from chrome/browser/performance_manager/graph/worker_node_impl.cc
rename to components/performance_manager/graph/worker_node_impl.cc
index 0ccb7b0..0220350 100644
--- a/chrome/browser/performance_manager/graph/worker_node_impl.cc
+++ b/components/performance_manager/graph/worker_node_impl.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/worker_node_impl.h"
+#include "components/performance_manager/graph/worker_node_impl.h"
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/graph/worker_node_impl.h b/components/performance_manager/graph/worker_node_impl.h
similarity index 85%
rename from chrome/browser/performance_manager/graph/worker_node_impl.h
rename to components/performance_manager/graph/worker_node_impl.h
index 37a49ed..f0af60ab 100644
--- a/chrome/browser/performance_manager/graph/worker_node_impl.h
+++ b/components/performance_manager/graph/worker_node_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_WORKER_NODE_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_WORKER_NODE_IMPL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_GRAPH_WORKER_NODE_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_GRAPH_WORKER_NODE_IMPL_H_
 
 #include <memory>
 #include <string>
@@ -12,8 +12,8 @@
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
 #include "base/unguessable_token.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/public/graph/worker_node.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/public/graph/worker_node.h"
 #include "url/gurl.h"
 
 namespace performance_manager {
@@ -21,10 +21,9 @@
 class FrameNodeImpl;
 class ProcessNodeImpl;
 
-class WorkerNodeImpl : public PublicNodeImpl<WorkerNodeImpl, WorkerNode>,
-                       public TypedNodeBase<WorkerNodeImpl,
-                                            WorkerNode,
-                                            WorkerNodeObserver> {
+class WorkerNodeImpl
+    : public PublicNodeImpl<WorkerNodeImpl, WorkerNode>,
+      public TypedNodeBase<WorkerNodeImpl, WorkerNode, WorkerNodeObserver> {
  public:
   static constexpr NodeTypeEnum Type() { return NodeTypeEnum::kWorker; }
 
@@ -108,4 +107,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_GRAPH_WORKER_NODE_IMPL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_GRAPH_WORKER_NODE_IMPL_H_
diff --git a/chrome/browser/performance_manager/graph/worker_node_impl_unittest.cc b/components/performance_manager/graph/worker_node_impl_unittest.cc
similarity index 96%
rename from chrome/browser/performance_manager/graph/worker_node_impl_unittest.cc
rename to components/performance_manager/graph/worker_node_impl_unittest.cc
index 0fc2b456..3ae0967 100644
--- a/chrome/browser/performance_manager/graph/worker_node_impl_unittest.cc
+++ b/components/performance_manager/graph/worker_node_impl_unittest.cc
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/graph/worker_node_impl.h"
+#include "components/performance_manager/graph/worker_node_impl.h"
 
 #include "base/containers/flat_map.h"
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/performance_manager.cc b/components/performance_manager/performance_manager.cc
similarity index 92%
rename from chrome/browser/performance_manager/performance_manager.cc
rename to components/performance_manager/performance_manager.cc
index 01482e36..0ecf1ae 100644
--- a/chrome/browser/performance_manager/performance_manager.cc
+++ b/components/performance_manager/performance_manager.cc
@@ -2,9 +2,9 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/performance_manager.h"
+#include "components/performance_manager/public/performance_manager.h"
 
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/performance_manager_impl.cc b/components/performance_manager/performance_manager_impl.cc
similarity index 95%
rename from chrome/browser/performance_manager/performance_manager_impl.cc
rename to components/performance_manager/performance_manager_impl.cc
index 9606c1e..6a66f2b 100644
--- a/chrome/browser/performance_manager/performance_manager_impl.cc
+++ b/components/performance_manager/performance_manager_impl.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
 
 #include <atomic>
 #include <memory>
@@ -14,11 +14,11 @@
 #include "base/memory/ptr_util.h"
 #include "base/task/post_task.h"
 #include "base/task/task_traits.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
-#include "chrome/browser/performance_manager/graph/worker_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/worker_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/performance_manager_impl.h b/components/performance_manager/performance_manager_impl.h
similarity index 90%
rename from chrome/browser/performance_manager/performance_manager_impl.h
rename to components/performance_manager/performance_manager_impl.h
index 21ae1fa..b2c38fc1 100644
--- a/chrome/browser/performance_manager/performance_manager_impl.h
+++ b/components/performance_manager/performance_manager_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_IMPL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_IMPL_H_
 
 #include <memory>
 #include <string>
@@ -16,12 +16,12 @@
 #include "base/sequence_checker.h"
 #include "base/sequenced_task_runner.h"
 #include "base/task_runner_util.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_lock_observer.h"
-#include "chrome/browser/performance_manager/public/graph/worker_node.h"
-#include "chrome/browser/performance_manager/public/performance_manager.h"
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/performance_manager_lock_observer.h"
+#include "components/performance_manager/public/graph/worker_node.h"
+#include "components/performance_manager/public/performance_manager.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 
 class GURL;
 
@@ -189,4 +189,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_IMPL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_IMPL_H_
diff --git a/chrome/browser/performance_manager/performance_manager_impl_unittest.cc b/components/performance_manager/performance_manager_impl_unittest.cc
similarity index 94%
rename from chrome/browser/performance_manager/performance_manager_impl_unittest.cc
rename to components/performance_manager/performance_manager_impl_unittest.cc
index e124bf3..38e008c 100644
--- a/chrome/browser/performance_manager/performance_manager_impl_unittest.cc
+++ b/components/performance_manager/performance_manager_impl_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
 
 #include <utility>
 
@@ -11,10 +11,10 @@
 #include "base/run_loop.h"
 #include "base/test/bind_test_util.h"
 #include "base/test/task_environment.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/performance_manager_lock_observer.cc b/components/performance_manager/performance_manager_lock_observer.cc
similarity index 63%
rename from chrome/browser/performance_manager/performance_manager_lock_observer.cc
rename to components/performance_manager/performance_manager_lock_observer.cc
index 7f2187e3..6fbe537 100644
--- a/chrome/browser/performance_manager/performance_manager_lock_observer.cc
+++ b/components/performance_manager/performance_manager_lock_observer.cc
@@ -2,24 +2,24 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/performance_manager_lock_observer.h"
+#include "components/performance_manager/performance_manager_lock_observer.h"
 
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "content/public/browser/lock_observer.h"
 
 namespace performance_manager {
 
 namespace {
 
-void SetHoldsWebLock(int render_process_id,
-                     int render_frame_id,
-                     bool holds_web_lock,
-                     GraphImpl* graph) {
+void SetIsHoldingWebLock(int render_process_id,
+                         int render_frame_id,
+                         bool is_holding_web_lock,
+                         GraphImpl* graph) {
   FrameNodeImpl* frame_node =
       graph->GetFrameNodeById(render_process_id, render_frame_id);
   if (frame_node)
-    frame_node->SetHoldsWebLock(holds_web_lock);
+    frame_node->SetIsHoldingWebLock(is_holding_web_lock);
 }
 
 }  // namespace
@@ -31,7 +31,7 @@
     int render_process_id,
     int render_frame_id) {
   PerformanceManagerImpl::CallOnGraphImpl(
-      FROM_HERE, base::BindOnce(&SetHoldsWebLock, render_process_id,
+      FROM_HERE, base::BindOnce(&SetIsHoldingWebLock, render_process_id,
                                 render_frame_id, true));
 }
 
@@ -39,7 +39,7 @@
     int render_process_id,
     int render_frame_id) {
   PerformanceManagerImpl::CallOnGraphImpl(
-      FROM_HERE, base::BindOnce(&SetHoldsWebLock, render_process_id,
+      FROM_HERE, base::BindOnce(&SetIsHoldingWebLock, render_process_id,
                                 render_frame_id, false));
 }
 
diff --git a/chrome/browser/performance_manager/performance_manager_lock_observer.h b/components/performance_manager/performance_manager_lock_observer.h
similarity index 74%
rename from chrome/browser/performance_manager/performance_manager_lock_observer.h
rename to components/performance_manager/performance_manager_lock_observer.h
index eadb9b4..766f479 100644
--- a/chrome/browser/performance_manager/performance_manager_lock_observer.h
+++ b/components/performance_manager/performance_manager_lock_observer.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_LOCK_OBSERVER_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_LOCK_OBSERVER_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_LOCK_OBSERVER_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_LOCK_OBSERVER_H_
 
 #include "content/public/browser/lock_observer.h"
 
@@ -23,4 +23,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_LOCK_OBSERVER_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_LOCK_OBSERVER_H_
diff --git a/chrome/browser/performance_manager/performance_manager_tab_helper.cc b/components/performance_manager/performance_manager_tab_helper.cc
similarity index 96%
rename from chrome/browser/performance_manager/performance_manager_tab_helper.cc
rename to components/performance_manager/performance_manager_tab_helper.cc
index d79df9e..d75b7f5 100644
--- a/chrome/browser/performance_manager/performance_manager_tab_helper.cc
+++ b/components/performance_manager/performance_manager_tab_helper.cc
@@ -2,18 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
 
 #include <type_traits>
 #include <vector>
 
 #include "base/bind.h"
 #include "base/stl_util.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/render_process_user_data.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/render_process_user_data.h"
 #include "content/public/browser/browser_context.h"
 #include "content/public/browser/navigation_handle.h"
 #include "content/public/browser/render_frame_host.h"
diff --git a/chrome/browser/performance_manager/performance_manager_tab_helper.h b/components/performance_manager/performance_manager_tab_helper.h
similarity index 93%
rename from chrome/browser/performance_manager/performance_manager_tab_helper.h
rename to components/performance_manager/performance_manager_tab_helper.h
index 5ff5d4e..b6dd0c1 100644
--- a/chrome/browser/performance_manager/performance_manager_tab_helper.h
+++ b/components/performance_manager/performance_manager_tab_helper.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TAB_HELPER_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TAB_HELPER_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TAB_HELPER_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TAB_HELPER_H_
 
 #include <map>
 #include <memory>
@@ -12,7 +12,7 @@
 
 #include "base/macros.h"
 #include "base/memory/weak_ptr.h"
-#include "chrome/browser/performance_manager/web_contents_proxy_impl.h"
+#include "components/performance_manager/web_contents_proxy_impl.h"
 #include "content/public/browser/web_contents_observer.h"
 #include "content/public/browser/web_contents_user_data.h"
 #include "services/metrics/public/cpp/ukm_source_id.h"
@@ -118,4 +118,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TAB_HELPER_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TAB_HELPER_H_
diff --git a/chrome/browser/performance_manager/performance_manager_tab_helper_unittest.cc b/components/performance_manager/performance_manager_tab_helper_unittest.cc
similarity index 94%
rename from chrome/browser/performance_manager/performance_manager_tab_helper_unittest.cc
rename to components/performance_manager/performance_manager_tab_helper_unittest.cc
index bba3d63..4c05c66f 100644
--- a/chrome/browser/performance_manager/performance_manager_tab_helper_unittest.cc
+++ b/components/performance_manager/performance_manager_tab_helper_unittest.cc
@@ -2,18 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
 
 #include <set>
 
 #include "base/run_loop.h"
 #include "base/stl_util.h"
 #include "base/test/bind_test_util.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl_operations.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_test_harness.h"
-#include "chrome/browser/performance_manager/render_process_user_data.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/performance_manager_test_harness.h"
+#include "components/performance_manager/render_process_user_data.h"
 #include "content/public/browser/render_process_host.h"
 #include "content/public/test/navigation_simulator.h"
 #include "content/public/test/web_contents_tester.h"
diff --git a/chrome/browser/performance_manager/performance_manager_test_harness.cc b/components/performance_manager/performance_manager_test_harness.cc
similarity index 86%
rename from chrome/browser/performance_manager/performance_manager_test_harness.cc
rename to components/performance_manager/performance_manager_test_harness.cc
index 5f96c9e..9f72fe0 100644
--- a/chrome/browser/performance_manager/performance_manager_test_harness.cc
+++ b/components/performance_manager/performance_manager_test_harness.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/performance_manager_test_harness.h"
+#include "components/performance_manager/performance_manager_test_harness.h"
 
 #include "base/bind_helpers.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/performance_manager_test_harness.h b/components/performance_manager/performance_manager_test_harness.h
similarity index 67%
rename from chrome/browser/performance_manager/performance_manager_test_harness.h
rename to components/performance_manager/performance_manager_test_harness.h
index c0cf1da..9436dbe 100644
--- a/chrome/browser/performance_manager/performance_manager_test_harness.h
+++ b/components/performance_manager/performance_manager_test_harness.h
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TEST_HARNESS_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TEST_HARNESS_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TEST_HARNESS_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TEST_HARNESS_H_
 
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/test/base/chrome_render_view_host_test_harness.h"
+#include "components/performance_manager/performance_manager_impl.h"
 #include "content/public/browser/web_contents.h"
+#include "content/public/test/test_renderer_host.h"
 
 namespace performance_manager {
 
@@ -15,9 +15,10 @@
 // RenderViewHost harness. Allows for creating full WebContents, and their
 // accompanying structures in the graph. The task environment is accessed
 // via content::RenderViewHostTestHarness::test_bundle().
-class PerformanceManagerTestHarness : public ChromeRenderViewHostTestHarness {
+class PerformanceManagerTestHarness
+    : public content::RenderViewHostTestHarness {
  public:
-  using Super = ChromeRenderViewHostTestHarness;
+  using Super = content::RenderViewHostTestHarness;
 
   PerformanceManagerTestHarness();
   ~PerformanceManagerTestHarness() override;
@@ -38,4 +39,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TEST_HARNESS_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PERFORMANCE_MANAGER_TEST_HARNESS_H_
diff --git a/components/performance_manager/public/DEPS b/components/performance_manager/public/DEPS
new file mode 100644
index 0000000..f1973c8
--- /dev/null
+++ b/components/performance_manager/public/DEPS
@@ -0,0 +1,5 @@
+# The public includes shouldn't depend on anything not public.
+include_rules = [
+  "-components/performance_manager",
+  "+components/performance_manager/public",
+]
diff --git a/chrome/browser/performance_manager/public/frame_priority/frame_priority.h b/components/performance_manager/public/frame_priority/frame_priority.h
similarity index 98%
rename from chrome/browser/performance_manager/public/frame_priority/frame_priority.h
rename to components/performance_manager/public/frame_priority/frame_priority.h
index ea9ab1c..259352d 100644
--- a/chrome/browser/performance_manager/public/frame_priority/frame_priority.h
+++ b/components/performance_manager/public/frame_priority/frame_priority.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_FRAME_PRIORITY_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_FRAME_PRIORITY_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_FRAME_PRIORITY_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_FRAME_PRIORITY_H_
 
 // Declares the various structures and formats associated with the frame
 // priority voting system.
@@ -429,4 +429,4 @@
 }  // namespace frame_priority
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_FRAME_PRIORITY_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_FRAME_PRIORITY_H_
diff --git a/chrome/browser/performance_manager/public/frame_priority/max_vote_aggregator.h b/components/performance_manager/public/frame_priority/max_vote_aggregator.h
similarity index 93%
rename from chrome/browser/performance_manager/public/frame_priority/max_vote_aggregator.h
rename to components/performance_manager/public/frame_priority/max_vote_aggregator.h
index 00d10fa4..102b08b4 100644
--- a/chrome/browser/performance_manager/public/frame_priority/max_vote_aggregator.h
+++ b/components/performance_manager/public/frame_priority/max_vote_aggregator.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_MAX_VOTE_AGGREGATOR_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_MAX_VOTE_AGGREGATOR_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_MAX_VOTE_AGGREGATOR_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_MAX_VOTE_AGGREGATOR_H_
 
 #include <map>
 #include <utility>
 
 #include "base/containers/intrusive_heap.h"
-#include "chrome/browser/performance_manager/public/frame_priority/frame_priority.h"
+#include "components/performance_manager/public/frame_priority/frame_priority.h"
 
 namespace performance_manager {
 namespace frame_priority {
@@ -145,4 +145,4 @@
 }  // namespace frame_priority
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_MAX_VOTE_AGGREGATOR_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_MAX_VOTE_AGGREGATOR_H_
diff --git a/chrome/browser/performance_manager/public/frame_priority/override_vote_aggregator.h b/components/performance_manager/public/frame_priority/override_vote_aggregator.h
similarity index 88%
rename from chrome/browser/performance_manager/public/frame_priority/override_vote_aggregator.h
rename to components/performance_manager/public/frame_priority/override_vote_aggregator.h
index ca59bde..ca9238a 100644
--- a/chrome/browser/performance_manager/public/frame_priority/override_vote_aggregator.h
+++ b/components/performance_manager/public/frame_priority/override_vote_aggregator.h
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_OVERRIDE_VOTE_AGGREGATOR_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_OVERRIDE_VOTE_AGGREGATOR_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_OVERRIDE_VOTE_AGGREGATOR_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_OVERRIDE_VOTE_AGGREGATOR_H_
 
 #include <map>
 
-#include "chrome/browser/performance_manager/public/frame_priority/frame_priority.h"
+#include "components/performance_manager/public/frame_priority/frame_priority.h"
 
 namespace performance_manager {
 namespace frame_priority {
@@ -88,4 +88,4 @@
 }  // namespace frame_priority
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_OVERRIDE_VOTE_AGGREGATOR_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_FRAME_PRIORITY_OVERRIDE_VOTE_AGGREGATOR_H_
diff --git a/chrome/browser/performance_manager/public/graph/frame_node.h b/components/performance_manager/public/graph/frame_node.h
similarity index 91%
rename from chrome/browser/performance_manager/public/graph/frame_node.h
rename to components/performance_manager/public/graph/frame_node.h
index b5f4493..1116ec07 100644
--- a/chrome/browser/performance_manager/public/graph/frame_node.h
+++ b/components/performance_manager/public/graph/frame_node.h
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_FRAME_NODE_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_FRAME_NODE_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_FRAME_NODE_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_FRAME_NODE_H_
 
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
-#include "chrome/browser/performance_manager/public/frame_priority/frame_priority.h"
-#include "chrome/browser/performance_manager/public/graph/node.h"
+#include "components/performance_manager/public/frame_priority/frame_priority.h"
+#include "components/performance_manager/public/graph/node.h"
 #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h"
 #include "services/resource_coordinator/public/mojom/lifecycle.mojom.h"
 
@@ -132,11 +132,11 @@
   virtual bool IsAdFrame() const = 0;
 
   // Returns true if this frame holds at least one Web Lock.
-  virtual bool HoldsWebLock() const = 0;
+  virtual bool IsHoldingWebLock() const = 0;
 
   // Returns true if this frame holds at least one IndexedDB lock. An IndexedDB
   // lock is held by an active transaction or an active DB open request.
-  virtual bool HoldsIndexedDBLock() const = 0;
+  virtual bool IsHoldingIndexedDBLock() const = 0;
 
   // Returns the child workers of this frame. These are either dedicated workers
   // or shared workers created by this frame, or a service worker that handles
@@ -192,11 +192,11 @@
   // Invoked when the IsAdFrame property changes.
   virtual void OnIsAdFrameChanged(const FrameNode* frame_node) = 0;
 
-  // Invoked when the HoldsWebLock() property changes.
-  virtual void OnFrameHoldsWebLockChanged(const FrameNode* frame_node) = 0;
+  // Invoked when the IsHoldingWebLock() property changes.
+  virtual void OnFrameIsHoldingWebLockChanged(const FrameNode* frame_node) = 0;
 
-  // Invoked when the HoldsIndexedDBLock() property changes.
-  virtual void OnFrameHoldsIndexedDBLockChanged(
+  // Invoked when the IsHoldingIndexedDBLock() property changes.
+  virtual void OnFrameIsHoldingIndexedDBLockChanged(
       const FrameNode* frame_node) = 0;
 
   // Invoked when the frame priority and reason changes.
@@ -232,8 +232,9 @@
   void OnURLChanged(const FrameNode* frame_node,
                     const GURL& previous_value) override {}
   void OnIsAdFrameChanged(const FrameNode* frame_node) override {}
-  void OnFrameHoldsWebLockChanged(const FrameNode* frame_node) override {}
-  void OnFrameHoldsIndexedDBLockChanged(const FrameNode* frame_node) override {}
+  void OnFrameIsHoldingWebLockChanged(const FrameNode* frame_node) override {}
+  void OnFrameIsHoldingIndexedDBLockChanged(
+      const FrameNode* frame_node) override {}
   void OnNonPersistentNotificationCreated(
       const FrameNode* frame_node) override {}
   void OnPriorityAndReasonChanged(const FrameNode* frame_node) override {}
@@ -244,4 +245,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_FRAME_NODE_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_FRAME_NODE_H_
diff --git a/chrome/browser/performance_manager/public/graph/graph.h b/components/performance_manager/public/graph/graph.h
similarity index 95%
rename from chrome/browser/performance_manager/public/graph/graph.h
rename to components/performance_manager/public/graph/graph.h
index 241a620..37cd408 100644
--- a/chrome/browser/performance_manager/public/graph/graph.h
+++ b/components/performance_manager/public/graph/graph.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_H_
 
 #include <cstdint>
 #include <memory>
@@ -144,4 +144,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_H_
diff --git a/chrome/browser/performance_manager/public/graph/graph_operations.h b/components/performance_manager/public/graph/graph_operations.h
similarity index 89%
rename from chrome/browser/performance_manager/public/graph/graph_operations.h
rename to components/performance_manager/public/graph/graph_operations.h
index e3567df0..8f5d549 100644
--- a/chrome/browser/performance_manager/public/graph/graph_operations.h
+++ b/components/performance_manager/public/graph/graph_operations.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_OPERATIONS_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_OPERATIONS_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_OPERATIONS_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_OPERATIONS_H_
 
 #include "base/callback_forward.h"
 #include "base/containers/flat_set.h"
@@ -51,4 +51,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_OPERATIONS_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_GRAPH_OPERATIONS_H_
diff --git a/chrome/browser/performance_manager/public/graph/node.h b/components/performance_manager/public/graph/node.h
similarity index 86%
rename from chrome/browser/performance_manager/public/graph/node.h
rename to components/performance_manager/public/graph/node.h
index 0a29cb2..ae76e363 100644
--- a/chrome/browser/performance_manager/public/graph/node.h
+++ b/components/performance_manager/public/graph/node.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_H_
 
 #include <cstdint>
 
@@ -43,4 +43,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_H_
diff --git a/chrome/browser/performance_manager/public/graph/node_attached_data.h b/components/performance_manager/public/graph/node_attached_data.h
similarity index 94%
rename from chrome/browser/performance_manager/public/graph/node_attached_data.h
rename to components/performance_manager/public/graph/node_attached_data.h
index ab13ff4..88e9561 100644
--- a/chrome/browser/performance_manager/public/graph/node_attached_data.h
+++ b/components/performance_manager/public/graph/node_attached_data.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_ATTACHED_DATA_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_ATTACHED_DATA_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_ATTACHED_DATA_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_ATTACHED_DATA_H_
 
 #include <memory>
 
@@ -134,4 +134,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_ATTACHED_DATA_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_NODE_ATTACHED_DATA_H_
diff --git a/chrome/browser/performance_manager/public/graph/page_node.h b/components/performance_manager/public/graph/page_node.h
similarity index 87%
rename from chrome/browser/performance_manager/public/graph/page_node.h
rename to components/performance_manager/public/graph/page_node.h
index 1e82e2e9..41bcd1e9 100644
--- a/chrome/browser/performance_manager/public/graph/page_node.h
+++ b/components/performance_manager/public/graph/page_node.h
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PAGE_NODE_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PAGE_NODE_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PAGE_NODE_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PAGE_NODE_H_
 
 #include <string>
 
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
-#include "chrome/browser/performance_manager/public/graph/node.h"
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
+#include "components/performance_manager/public/graph/node.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 #include "services/metrics/public/cpp/ukm_source_id.h"
 #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h"
 #include "services/resource_coordinator/public/mojom/lifecycle.mojom.h"
@@ -71,6 +71,14 @@
   // Returns the freeze policy set via origin trial.
   virtual InterventionPolicy GetOriginTrialFreezePolicy() const = 0;
 
+  // Returns true if at least one of the frame in this page is currently
+  // holding a WebLock.
+  virtual bool IsHoldingWebLock() const = 0;
+
+  // Returns true if at least one of the frame in this page is currently
+  // holding an IndexedDB lock.
+  virtual bool IsHoldingIndexedDBLock() const = 0;
+
   // Returns the navigation ID associated with the last committed navigation
   // event for the main frame of this page.
   // See PageNodeObserver::OnMainFrameNavigationCommitted.
@@ -140,6 +148,13 @@
   virtual void OnPageOriginTrialFreezePolicyChanged(
       const PageNode* page_node) = 0;
 
+  // Invoked when the IsHoldingWebLock property changes.
+  virtual void OnPageIsHoldingWebLockChanged(const PageNode* page_node) = 0;
+
+  // Invoked when the IsHoldingIndexedDBLock property changes.
+  virtual void OnPageIsHoldingIndexedDBLockChanged(
+      const PageNode* page_node) = 0;
+
   // Invoked when the MainFrameUrl property changes.
   virtual void OnMainFrameUrlChanged(const PageNode* page_node) = 0;
 
@@ -183,6 +198,9 @@
   void OnPageLifecycleStateChanged(const PageNode* page_node) override {}
   void OnPageOriginTrialFreezePolicyChanged(
       const PageNode* page_node) override {}
+  void OnPageIsHoldingWebLockChanged(const PageNode* page_node) override {}
+  void OnPageIsHoldingIndexedDBLockChanged(const PageNode* page_node) override {
+  }
   void OnPageAlmostIdleChanged(const PageNode* page_node) override {}
   void OnMainFrameUrlChanged(const PageNode* page_node) override {}
   void OnMainFrameDocumentChanged(const PageNode* page_node) override {}
@@ -195,4 +213,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PAGE_NODE_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PAGE_NODE_H_
diff --git a/chrome/browser/performance_manager/public/graph/process_node.h b/components/performance_manager/public/graph/process_node.h
similarity index 95%
rename from chrome/browser/performance_manager/public/graph/process_node.h
rename to components/performance_manager/public/graph/process_node.h
index 41c3d4d..0ae476aa 100644
--- a/chrome/browser/performance_manager/public/graph/process_node.h
+++ b/components/performance_manager/public/graph/process_node.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PROCESS_NODE_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PROCESS_NODE_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PROCESS_NODE_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PROCESS_NODE_H_
 
 #include "base/callback_forward.h"
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
 #include "base/process/process.h"
-#include "chrome/browser/performance_manager/public/graph/node.h"
+#include "components/performance_manager/public/graph/node.h"
 
 namespace base {
 class Process;
@@ -167,4 +167,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PROCESS_NODE_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_PROCESS_NODE_H_
diff --git a/chrome/browser/performance_manager/public/graph/system_node.h b/components/performance_manager/public/graph/system_node.h
similarity index 87%
rename from chrome/browser/performance_manager/public/graph/system_node.h
rename to components/performance_manager/public/graph/system_node.h
index d6dd6a1..dacf1f0 100644
--- a/chrome/browser/performance_manager/public/graph/system_node.h
+++ b/components/performance_manager/public/graph/system_node.h
@@ -2,11 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_SYSTEM_NODE_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_SYSTEM_NODE_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_SYSTEM_NODE_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_SYSTEM_NODE_H_
 
 #include "base/macros.h"
-#include "chrome/browser/performance_manager/public/graph/node.h"
+#include "components/performance_manager/public/graph/node.h"
 
 namespace performance_manager {
 
@@ -69,4 +69,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_SYSTEM_NODE_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_SYSTEM_NODE_H_
diff --git a/chrome/browser/performance_manager/public/graph/worker_node.h b/components/performance_manager/public/graph/worker_node.h
similarity index 95%
rename from chrome/browser/performance_manager/public/graph/worker_node.h
rename to components/performance_manager/public/graph/worker_node.h
index bce36c6..7c7d476 100644
--- a/chrome/browser/performance_manager/public/graph/worker_node.h
+++ b/components/performance_manager/public/graph/worker_node.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_WORKER_NODE_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_WORKER_NODE_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_WORKER_NODE_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_WORKER_NODE_H_
 
 #include <string>
 
 #include "base/containers/flat_set.h"
 #include "base/macros.h"
-#include "chrome/browser/performance_manager/public/graph/node.h"
+#include "components/performance_manager/public/graph/node.h"
 
 class GURL;
 
@@ -168,4 +168,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_GRAPH_WORKER_NODE_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_GRAPH_WORKER_NODE_H_
diff --git a/chrome/browser/performance_manager/public/performance_manager.h b/components/performance_manager/public/performance_manager.h
similarity index 88%
rename from chrome/browser/performance_manager/public/performance_manager.h
rename to components/performance_manager/public/performance_manager.h
index e080c08..89bb227 100644
--- a/chrome/browser/performance_manager/public/performance_manager.h
+++ b/components/performance_manager/public/performance_manager.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_PERFORMANCE_MANAGER_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_PERFORMANCE_MANAGER_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_PERFORMANCE_MANAGER_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_PERFORMANCE_MANAGER_H_
 
 #include "base/callback.h"
 #include "base/location.h"
@@ -53,4 +53,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_PERFORMANCE_MANAGER_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_PERFORMANCE_MANAGER_H_
diff --git a/chrome/browser/performance_manager/public/render_process_host_proxy.h b/components/performance_manager/public/render_process_host_proxy.h
similarity index 87%
rename from chrome/browser/performance_manager/public/render_process_host_proxy.h
rename to components/performance_manager/public/render_process_host_proxy.h
index da951cb..803dcd9 100644
--- a/chrome/browser/performance_manager/public/render_process_host_proxy.h
+++ b/components/performance_manager/public/render_process_host_proxy.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_RENDER_PROCESS_HOST_PROXY_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_RENDER_PROCESS_HOST_PROXY_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_RENDER_PROCESS_HOST_PROXY_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_RENDER_PROCESS_HOST_PROXY_H_
 
 #include "content/public/common/child_process_host.h"
 
@@ -48,4 +48,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_RENDER_PROCESS_HOST_PROXY_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_RENDER_PROCESS_HOST_PROXY_H_
diff --git a/chrome/browser/performance_manager/public/web_contents_proxy.h b/components/performance_manager/public/web_contents_proxy.h
similarity index 88%
rename from chrome/browser/performance_manager/public/web_contents_proxy.h
rename to components/performance_manager/public/web_contents_proxy.h
index a7fb633c..45cf541 100644
--- a/chrome/browser/performance_manager/public/web_contents_proxy.h
+++ b/components/performance_manager/public/web_contents_proxy.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_WEB_CONTENTS_PROXY_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_WEB_CONTENTS_PROXY_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_WEB_CONTENTS_PROXY_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_WEB_CONTENTS_PROXY_H_
 
 #include "base/memory/weak_ptr.h"
 
@@ -53,4 +53,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_PUBLIC_WEB_CONTENTS_PROXY_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_PUBLIC_WEB_CONTENTS_PROXY_H_
diff --git a/chrome/browser/performance_manager/render_process_host_proxy.cc b/components/performance_manager/render_process_host_proxy.cc
similarity index 91%
rename from chrome/browser/performance_manager/render_process_host_proxy.cc
rename to components/performance_manager/render_process_host_proxy.cc
index 82e25423..87507b4 100644
--- a/chrome/browser/performance_manager/render_process_host_proxy.cc
+++ b/components/performance_manager/render_process_host_proxy.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
 
 #include "content/public/browser/render_process_host.h"
 
diff --git a/chrome/browser/performance_manager/render_process_user_data.cc b/components/performance_manager/render_process_user_data.cc
similarity index 91%
rename from chrome/browser/performance_manager/render_process_user_data.cc
rename to components/performance_manager/render_process_user_data.cc
index 2534dbb..d12e161 100644
--- a/chrome/browser/performance_manager/render_process_user_data.cc
+++ b/components/performance_manager/render_process_user_data.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/render_process_user_data.h"
+#include "components/performance_manager/render_process_user_data.h"
 
 #include <memory>
 #include <utility>
@@ -12,13 +12,12 @@
 #include "base/logging.h"
 #include "base/memory/ptr_util.h"
 #include "build/build_config.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_impl.h"
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/performance_manager_impl.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
 #include "content/public/browser/child_process_termination_info.h"
 #include "content/public/browser/render_process_host.h"
 #include "content/public/common/content_switches.h"
-#include "services/service_manager/public/cpp/connector.h"
 
 namespace performance_manager {
 namespace {
diff --git a/chrome/browser/performance_manager/render_process_user_data.h b/components/performance_manager/render_process_user_data.h
similarity index 90%
rename from chrome/browser/performance_manager/render_process_user_data.h
rename to components/performance_manager/render_process_user_data.h
index f3b4d162..2045be66 100644
--- a/chrome/browser/performance_manager/render_process_user_data.h
+++ b/components/performance_manager/render_process_user_data.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_RENDER_PROCESS_USER_DATA_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_RENDER_PROCESS_USER_DATA_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_RENDER_PROCESS_USER_DATA_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_RENDER_PROCESS_USER_DATA_H_
 
 #include <memory>
 
@@ -65,4 +65,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_RENDER_PROCESS_USER_DATA_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_RENDER_PROCESS_USER_DATA_H_
diff --git a/chrome/browser/performance_manager/test_support/BUILD.gn b/components/performance_manager/test_support/BUILD.gn
similarity index 82%
rename from chrome/browser/performance_manager/test_support/BUILD.gn
rename to components/performance_manager/test_support/BUILD.gn
index 03c495d..729e16f 100644
--- a/chrome/browser/performance_manager/test_support/BUILD.gn
+++ b/components/performance_manager/test_support/BUILD.gn
@@ -2,8 +2,6 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-import("//chrome/common/features.gni")
-
 # Expose the graph implementation, test fixtures and test support through
 # this test only target.
 source_set("test_support") {
@@ -17,7 +15,9 @@
     "mock_graphs.h",
   ]
   deps = [
-    "//chrome/browser",
+    "//base/test:test_support",
+    "//components/performance_manager",
+    "//content/test:test_support",
     "//testing/gmock",
     "//testing/gtest",
   ]
diff --git a/components/performance_manager/test_support/graph_impl.h b/components/performance_manager/test_support/graph_impl.h
new file mode 100644
index 0000000..9ac8352
--- /dev/null
+++ b/components/performance_manager/test_support/graph_impl.h
@@ -0,0 +1,21 @@
+// Copyright 2019 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_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_IMPL_H_
+
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/graph_impl_operations.h"
+#include "components/performance_manager/graph/node_attached_data.h"
+#include "components/performance_manager/graph/node_attached_data_impl.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/node_type.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/properties.h"
+#include "components/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/worker_node_impl.h"
+
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_IMPL_H_
diff --git a/chrome/browser/performance_manager/test_support/graph_test_harness.cc b/components/performance_manager/test_support/graph_test_harness.cc
similarity index 93%
rename from chrome/browser/performance_manager/test_support/graph_test_harness.cc
rename to components/performance_manager/test_support/graph_test_harness.cc
index 86e151e..91ae71380 100644
--- a/chrome/browser/performance_manager/test_support/graph_test_harness.cc
+++ b/components/performance_manager/test_support/graph_test_harness.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 
 #include "base/bind.h"
 #include "base/run_loop.h"
diff --git a/chrome/browser/performance_manager/test_support/graph_test_harness.h b/components/performance_manager/test_support/graph_test_harness.h
similarity index 89%
rename from chrome/browser/performance_manager/test_support/graph_test_harness.h
rename to components/performance_manager/test_support/graph_test_harness.h
index 1c77693..b0f49f2 100644
--- a/chrome/browser/performance_manager/test_support/graph_test_harness.h
+++ b/components/performance_manager/test_support/graph_test_harness.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_TEST_HARNESS_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_TEST_HARNESS_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_TEST_HARNESS_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_TEST_HARNESS_H_
 
 #include <stdint.h>
 #include <memory>
@@ -11,14 +11,14 @@
 #include <utility>
 
 #include "base/test/task_environment.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/graph_impl.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
-#include "chrome/browser/performance_manager/graph/worker_node_impl.h"
-#include "chrome/browser/performance_manager/public/render_process_host_proxy.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/graph_impl.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/worker_node_impl.h"
+#include "components/performance_manager/public/render_process_host_proxy.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 namespace performance_manager {
@@ -234,4 +234,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_TEST_HARNESS_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_GRAPH_TEST_HARNESS_H_
diff --git a/chrome/browser/performance_manager/test_support/mock_graphs.cc b/components/performance_manager/test_support/mock_graphs.cc
similarity index 88%
rename from chrome/browser/performance_manager/test_support/mock_graphs.cc
rename to components/performance_manager/test_support/mock_graphs.cc
index 8ca558a..833a36e9 100644
--- a/chrome/browser/performance_manager/test_support/mock_graphs.cc
+++ b/components/performance_manager/test_support/mock_graphs.cc
@@ -2,17 +2,17 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/test_support/mock_graphs.h"
 
 #include <string>
 
 #include "base/process/process.h"
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/graph/frame_node_impl.h"
-#include "chrome/browser/performance_manager/graph/node_base.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/graph/system_node_impl.h"
+#include "components/performance_manager/graph/frame_node_impl.h"
+#include "components/performance_manager/graph/node_base.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/graph/system_node_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/test_support/mock_graphs.h b/components/performance_manager/test_support/mock_graphs.h
similarity index 89%
rename from chrome/browser/performance_manager/test_support/mock_graphs.h
rename to components/performance_manager/test_support/mock_graphs.h
index a35e3fd..cc3c9d1 100644
--- a/chrome/browser/performance_manager/test_support/mock_graphs.h
+++ b/components/performance_manager/test_support/mock_graphs.h
@@ -2,11 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_MOCK_GRAPHS_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_MOCK_GRAPHS_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_MOCK_GRAPHS_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_MOCK_GRAPHS_H_
 
-#include "chrome/browser/performance_manager/graph/process_node_impl.h"
-#include "chrome/browser/performance_manager/test_support/graph_test_harness.h"
+#include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/test_support/graph_test_harness.h"
 
 namespace performance_manager {
 
@@ -119,4 +119,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_MOCK_GRAPHS_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_MOCK_GRAPHS_H_
diff --git a/chrome/browser/performance_manager/web_contents_proxy.cc b/components/performance_manager/web_contents_proxy.cc
similarity index 88%
rename from chrome/browser/performance_manager/web_contents_proxy.cc
rename to components/performance_manager/web_contents_proxy.cc
index da115f7..a2b7f5e 100644
--- a/chrome/browser/performance_manager/web_contents_proxy.cc
+++ b/components/performance_manager/web_contents_proxy.cc
@@ -2,9 +2,9 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 
-#include "chrome/browser/performance_manager/web_contents_proxy_impl.h"
+#include "components/performance_manager/web_contents_proxy_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/web_contents_proxy_impl.cc b/components/performance_manager/web_contents_proxy_impl.cc
similarity index 82%
rename from chrome/browser/performance_manager/web_contents_proxy_impl.cc
rename to components/performance_manager/web_contents_proxy_impl.cc
index 1d11c1f..6b25ec20 100644
--- a/chrome/browser/performance_manager/web_contents_proxy_impl.cc
+++ b/components/performance_manager/web_contents_proxy_impl.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/web_contents_proxy_impl.h"
+#include "components/performance_manager/web_contents_proxy_impl.h"
 
 namespace performance_manager {
 
diff --git a/chrome/browser/performance_manager/web_contents_proxy_impl.h b/components/performance_manager/web_contents_proxy_impl.h
similarity index 85%
rename from chrome/browser/performance_manager/web_contents_proxy_impl.h
rename to components/performance_manager/web_contents_proxy_impl.h
index e8c8cf2..2448af6 100644
--- a/chrome/browser/performance_manager/web_contents_proxy_impl.h
+++ b/components/performance_manager/web_contents_proxy_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_WEB_CONTENTS_PROXY_IMPL_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_WEB_CONTENTS_PROXY_IMPL_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_WEB_CONTENTS_PROXY_IMPL_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_WEB_CONTENTS_PROXY_IMPL_H_
 
 #include <cstdint>
 
@@ -41,4 +41,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_WEB_CONTENTS_PROXY_IMPL_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_WEB_CONTENTS_PROXY_IMPL_H_
diff --git a/chrome/browser/performance_manager/web_contents_proxy_unittest.cc b/components/performance_manager/web_contents_proxy_unittest.cc
similarity index 91%
rename from chrome/browser/performance_manager/web_contents_proxy_unittest.cc
rename to components/performance_manager/web_contents_proxy_unittest.cc
index 9ca220d6..038e9017 100644
--- a/chrome/browser/performance_manager/web_contents_proxy_unittest.cc
+++ b/components/performance_manager/web_contents_proxy_unittest.cc
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/public/web_contents_proxy.h"
+#include "components/performance_manager/public/web_contents_proxy.h"
 
 #include "base/run_loop.h"
 #include "base/task/post_task.h"
 #include "base/task/task_traits.h"
 #include "base/test/bind_test_util.h"
-#include "chrome/browser/performance_manager/graph/page_node_impl.h"
-#include "chrome/browser/performance_manager/performance_manager_tab_helper.h"
-#include "chrome/browser/performance_manager/performance_manager_test_harness.h"
+#include "components/performance_manager/graph/page_node_impl.h"
+#include "components/performance_manager/performance_manager_tab_helper.h"
+#include "components/performance_manager/performance_manager_test_harness.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
 
diff --git a/components/policy/core/common/schema.cc b/components/policy/core/common/schema.cc
index c9413d1..dc8fde0 100644
--- a/components/policy/core/common/schema.cc
+++ b/components/policy/core/common/schema.cc
@@ -221,28 +221,14 @@
                                  kSchemaTypesToValueTypesEnd, value_type);
 }
 
-bool StrategyAllowInvalidOnTopLevel(SchemaOnErrorStrategy strategy) {
-  return strategy == SCHEMA_ALLOW_INVALID ||
-         strategy == SCHEMA_ALLOW_INVALID_TOPLEVEL ||
-         strategy == SCHEMA_ALLOW_INVALID_TOPLEVEL_AND_ALLOW_UNKNOWN;
+bool StrategyAllowInvalid(SchemaOnErrorStrategy strategy) {
+  return strategy == SCHEMA_ALLOW_INVALID;
 }
 
-bool StrategyAllowUnknownOnTopLevel(SchemaOnErrorStrategy strategy) {
+bool StrategyAllowUnknown(SchemaOnErrorStrategy strategy) {
   return strategy != SCHEMA_STRICT;
 }
 
-SchemaOnErrorStrategy StrategyForNextLevel(SchemaOnErrorStrategy strategy) {
-  static SchemaOnErrorStrategy next_level_strategy[] = {
-      SCHEMA_STRICT,         // SCHEMA_STRICT
-      SCHEMA_STRICT,         // SCHEMA_ALLOW_UNKNOWN_TOPLEVEL
-      SCHEMA_ALLOW_UNKNOWN,  // SCHEMA_ALLOW_UNKNOWN
-      SCHEMA_STRICT,         // SCHEMA_ALLOW_INVALID_TOPLEVEL
-      SCHEMA_ALLOW_UNKNOWN,  // SCHEMA_ALLOW_INVALID_TOPLEVEL_AND_ALLOW_UNKNOWN
-      SCHEMA_ALLOW_INVALID,  // SCHEMA_ALLOW_INVALID
-  };
-  return next_level_strategy[static_cast<int>(strategy)];
-}
-
 void SchemaErrorFound(std::string* error_path,
                       std::string* error,
                       const std::string& msg) {
@@ -1230,15 +1216,14 @@
         // Unknown property was detected.
         SchemaErrorFound(error_path, error,
                          "Unknown property: " + dict_item.first);
-        if (!StrategyAllowUnknownOnTopLevel(strategy))
+        if (!StrategyAllowUnknown(strategy))
           return false;
       } else {
         bool all_subschemas_are_valid = true;
         for (const auto& subschema : schema_list) {
           std::string new_error;
           const bool validation_result = subschema.Validate(
-              dict_item.second, StrategyForNextLevel(strategy), error_path,
-              &new_error);
+              dict_item.second, strategy, error_path, &new_error);
           if (!new_error.empty()) {
             AddDictKeyPrefixToPath(dict_item.first, error_path);
             *error = std::move(new_error);
@@ -1246,7 +1231,7 @@
           if (!validation_result) {
             // Invalid property was detected.
             all_subschemas_are_valid = false;
-            if (!StrategyAllowInvalidOnTopLevel(strategy))
+            if (!StrategyAllowInvalid(strategy))
               return false;
           }
         }
@@ -1268,13 +1253,13 @@
     for (size_t index = 0; index < value.GetList().size(); ++index) {
       const base::Value& list_item = value.GetList()[index];
       std::string new_error;
-      const bool validation_result = GetItems().Validate(
-          list_item, StrategyForNextLevel(strategy), error_path, &new_error);
+      const bool validation_result =
+          GetItems().Validate(list_item, strategy, error_path, &new_error);
       if (!new_error.empty()) {
         AddListIndexPrefixToPath(index, error_path);
         *error = std::move(new_error);
       }
-      if (!validation_result && !StrategyAllowInvalidOnTopLevel(strategy))
+      if (!validation_result && !StrategyAllowInvalid(strategy))
         return false;  // Invalid list item was detected.
     }
   } else if (value.is_int()) {
@@ -1325,7 +1310,7 @@
         // Unknown property was detected.
         SchemaErrorFound(error_path, error,
                          "Unknown property: " + dict_item.first);
-        if (!StrategyAllowUnknownOnTopLevel(strategy))
+        if (!StrategyAllowUnknown(strategy))
           return false;
         drop_list.push_back(dict_item.first);
       } else {
@@ -1333,8 +1318,7 @@
         for (const auto& subschema : schema_list) {
           std::string new_error;
           const bool normalization_result = subschema.Normalize(
-              &dict_item.second, StrategyForNextLevel(strategy), error_path,
-              &new_error, changed);
+              &dict_item.second, strategy, error_path, &new_error, changed);
           if (!new_error.empty()) {
             AddDictKeyPrefixToPath(dict_item.first, error_path);
             *error = std::move(new_error);
@@ -1342,7 +1326,7 @@
           if (!normalization_result) {
             // Invalid property was detected.
             all_subschemas_are_valid = false;
-            if (!StrategyAllowInvalidOnTopLevel(strategy))
+            if (!StrategyAllowInvalid(strategy))
               return false;
             drop_list.push_back(dict_item.first);
             break;
@@ -1378,16 +1362,15 @@
     for (size_t index = 0; index < list.size(); ++index) {
       base::Value& list_item = list[index];
       std::string new_error;
-      const bool normalization_result =
-          GetItems().Normalize(&list_item, StrategyForNextLevel(strategy),
-                               error_path, &new_error, changed);
+      const bool normalization_result = GetItems().Normalize(
+          &list_item, strategy, error_path, &new_error, changed);
       if (!new_error.empty()) {
         AddListIndexPrefixToPath(index, error_path);
         *error = new_error;
       }
       if (!normalization_result) {
         // Invalid list item was detected.
-        if (!StrategyAllowInvalidOnTopLevel(strategy))
+        if (!StrategyAllowInvalid(strategy))
           return false;
       } else {
         if (write_index != index)
diff --git a/components/policy/core/common/schema.h b/components/policy/core/common/schema.h
index a94cb50..f25e4137 100644
--- a/components/policy/core/common/schema.h
+++ b/components/policy/core/common/schema.h
@@ -39,15 +39,8 @@
   // don't know newField). Prefer to use |SCHEMA_ALLOW_UNKNOWN| for policies
   // instead.
   SCHEMA_STRICT = 0,
-  // Unknown properties in the top-level dictionary will be ignored.
-  SCHEMA_ALLOW_UNKNOWN_TOPLEVEL,
   // Unknown properties in any dictionary will be ignored.
   SCHEMA_ALLOW_UNKNOWN,
-  // Mismatched values will be ignored at the toplevel.
-  SCHEMA_ALLOW_INVALID_TOPLEVEL,
-  // Mismatched values will be ignored at the top-level value.
-  // Unknown properties in any dictionary will be ignored.
-  SCHEMA_ALLOW_INVALID_TOPLEVEL_AND_ALLOW_UNKNOWN,
   // Mismatched values will be ignored.
   SCHEMA_ALLOW_INVALID,
 };
diff --git a/components/policy/core/common/schema_unittest.cc b/components/policy/core/common/schema_unittest.cc
index d65815b..4db8d08 100644
--- a/components/policy/core/common/schema_unittest.cc
+++ b/components/policy/core/common/schema_unittest.cc
@@ -787,7 +787,6 @@
   // Unknown top level property.
   bundle.SetString("boom", "bang");
   TestSchemaValidation(schema, bundle, SCHEMA_STRICT, false);
-  TestSchemaValidation(schema, bundle, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, true);
   TestSchemaValidation(schema, bundle, SCHEMA_ALLOW_UNKNOWN, true);
   TestSchemaValidationWithPath(schema, bundle, "");
   bundle.Remove("boom", nullptr);
@@ -795,7 +794,6 @@
   // Invalid top level property.
   bundle.SetInteger("Boolean", 12345);
   TestSchemaValidation(schema, bundle, SCHEMA_STRICT, false);
-  TestSchemaValidation(schema, bundle, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
   TestSchemaValidation(schema, bundle, SCHEMA_ALLOW_INVALID, true);
   TestSchemaValidationWithPath(schema, bundle, "Boolean");
   bundle.SetBoolean("Boolean", true);
@@ -809,9 +807,7 @@
     // Unknown property.
     root.SetBoolean("Object.three", false);
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, true);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, true);
     TestSchemaValidationWithPath(subschema, root, "Object");
     root.Remove("Object.three", nullptr);
@@ -819,9 +815,7 @@
     // Invalid property.
     root.SetInteger("Object.one", 12345);
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, true);
     TestSchemaValidationWithPath(subschema, root, "Object.one");
     root.Remove("Object.one", nullptr);
@@ -839,9 +833,7 @@
     dict_value->SetBoolean("three", true);
     root.Append(std::move(dict_value));
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, true);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, true);
     TestSchemaValidationWithPath(subschema, root, "items[0]");
     root.Remove(root.GetSize() - 1, nullptr);
@@ -851,9 +843,7 @@
     dict_value->SetBoolean("two", true);
     root.Append(std::move(dict_value));
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, true);
     TestSchemaValidationWithPath(subschema, root, "items[0].two");
     root.Remove(root.GetSize() - 1, nullptr);
@@ -871,17 +861,13 @@
     // Test that there are not errors here.
     list_value->AppendInteger(12345);
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, true);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, true);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, true);
 
     // Invalid list item.
     list_value->AppendString("blabla");
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, true);
     TestSchemaValidationWithPath(subschema, root, "List.items[1]");
   }
@@ -900,17 +886,13 @@
     // Test that there are not errors here.
     list_value->AppendString("blabla");
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, true);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, true);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, true);
 
     // Invalid list item.
     list_value->AppendInteger(12345);
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, true);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, true);
     TestSchemaValidationWithPath(subschema, root, "items[0].List.items[1]");
   }
@@ -989,17 +971,13 @@
     root.SetInteger("Integer", 1);
     root.SetDouble("Number", 3.14);
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, false);
 
     // Invalid required property.
     root.SetInteger("String", 123);
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, false);
     root.SetString("String", "a string");
 
@@ -1012,16 +990,12 @@
     // required properties is invalid.
     root.SetInteger("Integer", 2);
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, false);
 
     root.SetInteger("Integer", 3);
     TestSchemaValidation(subschema, root, SCHEMA_STRICT, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_UNKNOWN, false);
-    TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID_TOPLEVEL, false);
     TestSchemaValidation(subschema, root, SCHEMA_ALLOW_INVALID, false);
   }
 
diff --git a/components/policy/resources/policy_templates.json b/components/policy/resources/policy_templates.json
index 7938a01..71415b0 100644
--- a/components/policy/resources/policy_templates.json
+++ b/components/policy/resources/policy_templates.json
@@ -511,6 +511,8 @@
         'JavaScriptBlockedForUrls',
         'KeygenAllowedForUrls',
         'KeygenBlockedForUrls',
+        'LegacySameSiteCookieBehaviorEnabled',
+        'LegacySameSiteCookieBehaviorEnabledForDomainList',
         'PluginsAllowedForUrls',
         'PluginsBlockedForUrls',
         'PopupsAllowedForUrls',
@@ -5449,6 +5451,72 @@
           If this policy is left not set the global default value will be used for all sites either from the 'DefaultKeygenSetting' policy if it is set, or the user's personal configuration otherwise.''',
     },
     {
+      'name': 'LegacySameSiteCookieBehaviorEnabled',
+      'future': True,
+      'owners': [ 'chlily@chromium.org', ],
+      'type': 'int-enum',
+      'schema': {
+        'type': 'integer',
+        'enum': [ 1, 2, ],
+      },
+      'items': [
+        {
+          'name': 'DefaultToLegacySameSiteCookieBehavior',
+          'value': 1,
+          'caption': '''Revert to legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior for cookies on all sites''',
+        },
+        {
+          'name': 'DefaultToSameSiteByDefaultCookieBehavior',
+          'value': 2,
+          'caption': '''Use <ph name="FEATURE_NAME_SAMESITE_BY_DEFAULT_COOKIES">SameSite-by-default</ph> behavior for cookies on all sites''',
+        },
+      ],
+      'supported_on': [
+        'chrome.*:79-',
+        'chrome_os:79-',
+        'android:79-',
+      ],
+      'features': {
+        'dynamic_refresh': True,
+        'per_profile': True,
+      },
+      'example_value': 1,
+      'id': 623,
+      'caption': '''Default legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> cookie behavior setting''',
+      'tags': [],
+      'desc': '''Allows you to revert all cookies to legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior. Reverting to legacy behavior causes cookies that don't specify a <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> attribute to be treated as if they were "<ph name="ATTRIBUTE_VALUE_SAMESITE_NONE">SameSite=None</ph>", and removes the requirement for "<ph name="ATTRIBUTE_VALUE_SAMESITE_NONE">SameSite=None</ph>" cookies to carry the "<ph name="ATTRIBUTE_SECURE_NAME">Secure</ph>" attribute. See https://www.chromium.org/administrators/policy-list-3/cookie-legacy-samesite-policies for full description.
+
+          When this policy is not set, the default <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior for cookies that don't specify a <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> attribute will depend on the user's personal configuration for the <ph name="FEATURE_NAME_SAMESITE_BY_DEFAULT_COOKIES">SameSite-by-default</ph> feature, which may be set by a field trial or by enabling or disabling the flag <ph name="FLAG_NAME_SAMESITE_BY_DEFAULT_COOKIES">same-site-by-default-cookies</ph> flag.''',
+    },
+    {
+      'name': 'LegacySameSiteCookieBehaviorEnabledForDomainList',
+      'future': True,
+      'owners': [ 'chlily@chromium.org', ],
+      'type': 'list',
+      'schema': {
+        'type': 'array',
+        'items': { 'type': 'string' },
+      },
+      'supported_on': [
+        'chrome.*:79-',
+        'chrome_os:79-',
+        'android:79-',
+      ],
+      'features': {
+        'dynamic_refresh': True,
+        'per_profile': True,
+      },
+      'example_value': ['www.example.com', '[*.]example.edu'],
+      'id': 624,
+      'caption': '''Revert to legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior for cookies on these sites''',
+      'tags': [],
+      'desc': '''Cookies set for domains matching these patterns will revert to legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> behavior. Reverting to legacy behavior causes cookies that don't specify a <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> attribute to be treated as if they were "<ph name="ATTRIBUTE_VALUE_SAMESITE_NONE">SameSite=None</ph>", and removes the requirement for "<ph name="ATTRIBUTE_VALUE_SAMESITE_NONE">SameSite=None</ph>" cookies to carry the "<ph name="ATTRIBUTE_SECURE_NAME">Secure</ph>" attribute. See https://www.chromium.org/administrators/policy-list-3/cookie-legacy-samesite-policies for full description.
+
+          For cookies on domains not covered by the patterns specified here, or for all cookies if this policy is not set, the global default value will be used either from the <ph name="LEGACY_SAMESITE_COOKIE_BEHAVIOR_ENABLED_POLICY_NAME">LegacySameSiteCookieBehaviorEnabled</ph> policy, if it is set, or the user's personal configuration otherwise.
+
+          Note that patterns you list here are treated as domains, not URLs, so you should not specify a scheme or port.''',
+    },
+    {
       'name': 'PluginsAllowedForUrls',
       'owners': ['file://components/policy/resources/OWNERS'],
       'type': 'list',
@@ -19035,9 +19103,18 @@
         'DeviceAuthDataCacheLifetime',
       ]
     },
+    {
+      'id': 38,
+      'name': 'LegacySameSiteCookieBehaviorSettings',
+      'caption': '''Legacy <ph name="ATTRIBUTE_SAMESITE_NAME">SameSite</ph> cookie behavior settings''',
+      'policies': [
+        'LegacySameSiteCookieBehaviorEnabled',
+        'LegacySameSiteCookieBehaviorEnabledForDomainList',
+      ],
+    },
   ],
   'placeholders': [],
   'deleted_policy_ids': [412, 546, 562, 569],
-  'highest_id_currently_used': 622,
-  'highest_atomic_group_id_currently_used': 37
+  'highest_id_currently_used': 624,
+  'highest_atomic_group_id_currently_used': 38
 }
diff --git a/components/prefs/json_pref_store.cc b/components/prefs/json_pref_store.cc
index 0dcdb176..a12e5cb2 100644
--- a/components/prefs/json_pref_store.cc
+++ b/components/prefs/json_pref_store.cc
@@ -269,8 +269,9 @@
 
   // Weakly binds the read task so that it doesn't kick in during shutdown.
   base::PostTaskAndReplyWithResult(
-      file_task_runner_.get(), FROM_HERE, base::Bind(&ReadPrefsFromDisk, path_),
-      base::Bind(&JsonPrefStore::OnFileRead, AsWeakPtr()));
+      file_task_runner_.get(), FROM_HERE,
+      base::BindOnce(&ReadPrefsFromDisk, path_),
+      base::BindOnce(&JsonPrefStore::OnFileRead, AsWeakPtr()));
 }
 
 void JsonPrefStore::CommitPendingWrite(
@@ -324,37 +325,37 @@
 
   has_pending_write_reply_ = false;
   if (!on_next_successful_write_reply_.is_null()) {
-    base::Closure on_successful_write =
+    base::OnceClosure on_successful_write =
         std::move(on_next_successful_write_reply_);
     if (write_success) {
-      on_successful_write.Run();
+      std::move(on_successful_write).Run();
     } else {
-      RegisterOnNextSuccessfulWriteReply(on_successful_write);
+      RegisterOnNextSuccessfulWriteReply(std::move(on_successful_write));
     }
   }
 }
 
 // static
 void JsonPrefStore::PostWriteCallback(
-    const base::Callback<void(bool success)>& on_next_write_callback,
-    const base::Callback<void(bool success)>& on_next_write_reply,
+    base::OnceCallback<void(bool success)> on_next_write_callback,
+    base::OnceCallback<void(bool success)> on_next_write_reply,
     scoped_refptr<base::SequencedTaskRunner> reply_task_runner,
     bool write_success) {
   if (!on_next_write_callback.is_null())
-    on_next_write_callback.Run(write_success);
+    std::move(on_next_write_callback).Run(write_success);
 
   // We can't run |on_next_write_reply| on the current thread. Bounce back to
   // the |reply_task_runner| which is the correct sequenced thread.
   reply_task_runner->PostTask(
-      FROM_HERE, base::BindOnce(on_next_write_reply, write_success));
+      FROM_HERE, base::BindOnce(std::move(on_next_write_reply), write_success));
 }
 
 void JsonPrefStore::RegisterOnNextSuccessfulWriteReply(
-    const base::Closure& on_next_successful_write_reply) {
+    base::OnceClosure on_next_successful_write_reply) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   DCHECK(on_next_successful_write_reply_.is_null());
 
-  on_next_successful_write_reply_ = on_next_successful_write_reply;
+  on_next_successful_write_reply_ = std::move(on_next_successful_write_reply);
 
   // If there are pending callbacks, avoid erasing them; the reply will be used
   // as we set |on_next_successful_write_reply_|. Otherwise, setup a reply with
@@ -362,11 +363,12 @@
   if (!has_pending_write_reply_) {
     has_pending_write_reply_ = true;
     writer_.RegisterOnNextWriteCallbacks(
-        base::Closure(),
-        base::Bind(
-            &PostWriteCallback, base::Callback<void(bool success)>(),
-            base::Bind(&JsonPrefStore::RunOrScheduleNextSuccessfulWriteCallback,
-                       AsWeakPtr()),
+        base::OnceClosure(),
+        base::BindOnce(
+            &PostWriteCallback, base::OnceCallback<void(bool success)>(),
+            base::BindOnce(
+                &JsonPrefStore::RunOrScheduleNextSuccessfulWriteCallback,
+                AsWeakPtr()),
             base::SequencedTaskRunnerHandle::Get()));
   }
 }
@@ -378,11 +380,12 @@
   has_pending_write_reply_ = true;
 
   writer_.RegisterOnNextWriteCallbacks(
-      callbacks.first,
-      base::Bind(
-          &PostWriteCallback, callbacks.second,
-          base::Bind(&JsonPrefStore::RunOrScheduleNextSuccessfulWriteCallback,
-                     AsWeakPtr()),
+      std::move(callbacks.first),
+      base::BindOnce(
+          &PostWriteCallback, std::move(callbacks.second),
+          base::BindOnce(
+              &JsonPrefStore::RunOrScheduleNextSuccessfulWriteCallback,
+              AsWeakPtr()),
           base::SequencedTaskRunnerHandle::Get()));
 }
 
@@ -465,7 +468,7 @@
     OnWriteCallbackPair callbacks =
         pref_filter_->FilterSerializeData(prefs_.get());
     if (!callbacks.first.is_null() || !callbacks.second.is_null())
-      RegisterOnNextWriteSynchronousCallbacks(callbacks);
+      RegisterOnNextWriteSynchronousCallbacks(std::move(callbacks));
   }
 
   JSONStringValueSerializer serializer(output);
diff --git a/components/prefs/json_pref_store.h b/components/prefs/json_pref_store.h
index 089ce0b6..163df0f7 100644
--- a/components/prefs/json_pref_store.h
+++ b/components/prefs/json_pref_store.h
@@ -48,7 +48,7 @@
   // A pair of callbacks to call before and after the preference file is written
   // to disk.
   using OnWriteCallbackPair =
-      std::pair<base::Closure, base::Callback<void(bool success)>>;
+      std::pair<base::OnceClosure, base::OnceCallback<void(bool success)>>;
 
   // |pref_filename| is the path to the file to read prefs from. It is incorrect
   // to create multiple JsonPrefStore with the same |pref_filename|.
@@ -113,7 +113,7 @@
   // |on_next_successful_write_reply| will be called on the thread from which
   // this method is called and does not need to be thread safe.
   void RegisterOnNextSuccessfulWriteReply(
-      const base::Closure& on_next_successful_write_reply);
+      base::OnceClosure on_next_successful_write_reply);
 
   void ClearMutableValues() override;
 
@@ -134,8 +134,8 @@
   // |on_next_write_callback| on the current thread and posts
   // |on_next_write_reply| on |reply_task_runner|.
   static void PostWriteCallback(
-      const base::Callback<void(bool success)>& on_next_write_callback,
-      const base::Callback<void(bool success)>& on_next_write_reply,
+      base::OnceCallback<void(bool success)> on_next_write_callback,
+      base::OnceCallback<void(bool success)> on_next_write_reply,
       scoped_refptr<base::SequencedTaskRunner> reply_task_runner,
       bool write_success);
 
@@ -193,7 +193,7 @@
   std::set<std::string> keys_need_empty_value_;
 
   bool has_pending_write_reply_ = true;
-  base::Closure on_next_successful_write_reply_;
+  base::OnceClosure on_next_successful_write_reply_;
 
   SEQUENCE_CHECKER(sequence_checker_);
 
diff --git a/components/prefs/json_pref_store_unittest.cc b/components/prefs/json_pref_store_unittest.cc
index c747c36..1842f45 100644
--- a/components/prefs/json_pref_store_unittest.cc
+++ b/components/prefs/json_pref_store_unittest.cc
@@ -73,7 +73,7 @@
   void FilterUpdate(const std::string& path) override {}
   OnWriteCallbackPair FilterSerializeData(
       base::DictionaryValue* pref_store_contents) override {
-    return on_write_callback_pair_;
+    return std::move(on_write_callback_pair_);
   }
   void OnStoreDeletionFromDisk() override {}
 
@@ -95,7 +95,7 @@
 
 InterceptingPrefFilter::InterceptingPrefFilter(
     OnWriteCallbackPair callback_pair) {
-  on_write_callback_pair_ = callback_pair;
+  on_write_callback_pair_ = std::move(callback_pair);
 }
 
 InterceptingPrefFilter::~InterceptingPrefFilter() {}
diff --git a/components/prefs/pref_filter.h b/components/prefs/pref_filter.h
index 3d52136..aabcdc2 100644
--- a/components/prefs/pref_filter.h
+++ b/components/prefs/pref_filter.h
@@ -22,7 +22,7 @@
  public:
   // A pair of pre-write and post-write callbacks.
   using OnWriteCallbackPair =
-      std::pair<base::Closure, base::Callback<void(bool success)>>;
+      std::pair<base::OnceClosure, base::OnceCallback<void(bool success)>>;
 
   // A callback to be invoked when |prefs| have been read (and possibly
   // pre-modified) and are now ready to be handed back to this callback's
diff --git a/components/previews/core/previews_experiments.cc b/components/previews/core/previews_experiments.cc
index 86d3d6f..6f9382a 100644
--- a/components/previews/core/previews_experiments.cc
+++ b/components/previews/core/previews_experiments.cc
@@ -266,6 +266,12 @@
       features::kLitePageServerPreviews, "should_probe_origin", false);
 }
 
+bool LitePageRedirectTriggerOnAPITransition() {
+  return base::GetFieldTrialParamByFeatureAsBool(
+      features::kLitePageServerPreviews, "should_trigger_on_api_transitions",
+      false);
+}
+
 base::TimeDelta LitePageRedirectPreviewOriginProbeTimeout() {
   return base::TimeDelta::FromMilliseconds(
       base::GetFieldTrialParamByFeatureAsInt(features::kLitePageServerPreviews,
diff --git a/components/previews/core/previews_experiments.h b/components/previews/core/previews_experiments.h
index 63bc68b..557f488 100644
--- a/components/previews/core/previews_experiments.h
+++ b/components/previews/core/previews_experiments.h
@@ -142,6 +142,9 @@
 // successfully.
 bool LitePageRedirectOnlyTriggerOnSuccessfulProbe();
 
+// Whether the preview should trigger on API page transitions.
+bool LitePageRedirectTriggerOnAPITransition();
+
 // The URL to probe on the lite pages server.
 GURL LitePageRedirectProbeURL();
 
diff --git a/components/resources/BUILD.gn b/components/resources/BUILD.gn
index e608270..31d3b78d 100644
--- a/components/resources/BUILD.gn
+++ b/components/resources/BUILD.gn
@@ -39,13 +39,6 @@
     "enable_print_preview=$enable_print_preview",
   ]
 
-  if (is_android && notouch_build) {
-    defines += [
-      "HIDE_ERROR_MESSAGE_FOR_DINO_PAGE",
-      "SHOW_INSTRUCTIONS_FOR_DINO_PAGE",
-    ]
-  }
-
   deps = [
     ":about_credits",
   ]
diff --git a/components/resources/offline_pages_resources.grdp b/components/resources/offline_pages_resources.grdp
index 28388ee..3179830 100644
--- a/components/resources/offline_pages_resources.grdp
+++ b/components/resources/offline_pages_resources.grdp
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <grit-part>
-  <include name="IDR_OFFLINE_PAGES_RENOVATIONS_JS" file="../offline_pages/resources/renovations.js" type="BINDATA" />
+  <include name="IDR_OFFLINE_PAGES_RENOVATIONS_JS" file="../offline_pages/resources/renovations.js" type="BINDATA" compress="gzip" />
 </grit-part>
diff --git a/components/safe_browsing/BUILD.gn b/components/safe_browsing/BUILD.gn
index 28598087..3d7d1bf 100644
--- a/components/safe_browsing/BUILD.gn
+++ b/components/safe_browsing/BUILD.gn
@@ -25,11 +25,6 @@
     flags += [ "SAFE_BROWSING_CSD=0" ]
     flags += [ "SAFE_BROWSING_DB_LOCAL=0" ]
     flags += [ "SAFE_BROWSING_DB_REMOTE=1" ]
-  } else if (safe_browsing_mode == 3) {
-    flags += [ "FULL_SAFE_BROWSING=0" ]
-    flags += [ "SAFE_BROWSING_CSD=0" ]
-    flags += [ "SAFE_BROWSING_DB_LOCAL=1" ]
-    flags += [ "SAFE_BROWSING_DB_REMOTE=0" ]
   }
 }
 
diff --git a/components/safe_browsing/base_blocking_page.cc b/components/safe_browsing/base_blocking_page.cc
index ff2d754..5045a583 100644
--- a/components/safe_browsing/base_blocking_page.cc
+++ b/components/safe_browsing/base_blocking_page.cc
@@ -54,7 +54,8 @@
       ui_manager_(ui_manager),
       main_frame_url_(main_frame_url),
       navigation_entry_index_to_remove_(
-          IsMainPageLoadBlocked(unsafe_resources)
+          IsMainPageLoadBlocked(unsafe_resources) ||
+                  base::FeatureList::IsEnabled(kCommittedSBInterstitials)
               ? -1
               : web_contents->GetController().GetLastCommittedEntryIndex()),
       unsafe_resources_(unsafe_resources),
diff --git a/components/safe_browsing/buildflags.gni b/components/safe_browsing/buildflags.gni
index fba0e03..48e74db 100644
--- a/components/safe_browsing/buildflags.gni
+++ b/components/safe_browsing/buildflags.gni
@@ -10,16 +10,12 @@
 declare_args() {
   # Variable safe_browsing is used to control the build time configuration for
   # safe browsing feature. Safe browsing can be compiled in 3 different levels:
-  # 0 disables it, 1 enables it fully, 2 enables mobile protection via an
-  # external API, and 3 enables mobile protection via internal API.
+  # 0 disables it, 1 enables it fully, and 2 enables mobile protection via an
+  # external API.
   if (is_ios || is_chromecast) {
     safe_browsing_mode = 0
   } else if (is_android) {
-    if (notouch_build) {
-      safe_browsing_mode = 3
-    } else {
-      safe_browsing_mode = 2
-    }
+    safe_browsing_mode = 2
   } else {
     safe_browsing_mode = 1
   }
diff --git a/components/safe_browsing/db/v4_update_protocol_manager.cc b/components/safe_browsing/db/v4_update_protocol_manager.cc
index 84325c7..2e2058e6 100644
--- a/components/safe_browsing/db/v4_update_protocol_manager.cc
+++ b/components/safe_browsing/db/v4_update_protocol_manager.cc
@@ -21,10 +21,6 @@
 #include "services/network/public/cpp/shared_url_loader_factory.h"
 #include "services/network/public/cpp/simple_url_loader.h"
 
-#if !BUILDFLAG(FULL_SAFE_BROWSING)
-#include "base/system/sys_info.h"
-#endif
-
 using base::Time;
 using base::TimeDelta;
 
@@ -78,15 +74,6 @@
 // Maximum time, in seconds, to wait for a response to an update request.
 static const int kV4TimerUpdateWaitSecMax = 15 * 60;  // 15 minutes
 
-// The default number of entries, per threat type, in the safe browsing
-// database on low end (low RAM) devices. This value is also used as the default
-// for GMS Safe Browsing on low end devices.
-static const int kLowEndDefaultDBEntryCount = 1 << 10;
-
-// Malware threat DB coverage drops off too much below 4096 entries, so we use
-// this values instead of the default above.
-static const int kLowEndMalwareDBEntryCount = 1 << 12;
-
 ChromeClientInfo::SafeBrowsingReportingPopulation GetReportingLevelProtoValue(
     ExtendedReportingLevel reporting_level) {
   switch (reporting_level) {
@@ -252,13 +239,6 @@
     list_update_request->mutable_constraints()->add_supported_compressions(RAW);
     list_update_request->mutable_constraints()->add_supported_compressions(
         RICE);
-
-#if !BUILDFLAG(FULL_SAFE_BROWSING)
-    if (base::SysInfo::IsLowEndDevice()) {
-      list_update_request->mutable_constraints()->set_max_database_entries(
-          GetLowEndDBEntryCount(list_update_request->threat_type()));
-    }
-#endif
   }
 
   if (!extended_reporting_level_callback_.is_null()) {
@@ -277,15 +257,6 @@
   return req_base64;
 }
 
-int V4UpdateProtocolManager::GetLowEndDBEntryCount(ThreatType threat_type) {
-  switch (threat_type) {
-    case ThreatType::MALWARE_THREAT:
-      return kLowEndMalwareDBEntryCount;
-    default:
-      return kLowEndDefaultDBEntryCount;
-  }
-}
-
 bool V4UpdateProtocolManager::ParseUpdateResponse(
     const std::string& data,
     ParsedServerResponse* parsed_server_response) {
diff --git a/components/safe_browsing/db/v4_update_protocol_manager.h b/components/safe_browsing/db/v4_update_protocol_manager.h
index b0eba38..dc54a89 100644
--- a/components/safe_browsing/db/v4_update_protocol_manager.h
+++ b/components/safe_browsing/db/v4_update_protocol_manager.h
@@ -153,10 +153,6 @@
   // Get the next update interval, considering whether we are in backoff.
   base::TimeDelta GetNextUpdateInterval(bool back_off);
 
-  // Returns the entry count to be used for the DB for the threat type. Should
-  // only be used on low end devices (with very little RAM).
-  int GetLowEndDBEntryCount(ThreatType threat_type);
-
   // The factory that controls the creation of V4UpdateProtocolManager.
   // This is used by tests.
   static V4UpdateProtocolManagerFactory* factory_;
diff --git a/components/search_engines/android/template_url_service_android.cc b/components/search_engines/android/template_url_service_android.cc
index 6782b5d..d9ac6045 100644
--- a/components/search_engines/android/template_url_service_android.cc
+++ b/components/search_engines/android/template_url_service_android.cc
@@ -256,28 +256,14 @@
 
   base::string16 keyword =
       base::android::ConvertJavaStringToUTF16(env, jkeyword);
-  const TemplateURL* existing_turl =
-      template_url_service_->GetTemplateURLForKeyword(keyword);
-  if (existing_turl) {
-    // TODO(crbug/1002271): Implement merging Play API search engine with
-    // existing prepopulated or autogenerated search engine.
-    return false;
-  }
+  base::string16 name = base::android::ConvertJavaStringToUTF16(env, jname);
+  std::string search_url = base::android::ConvertJavaStringToUTF8(jsearch_url);
+  std::string favicon_url =
+      base::android::ConvertJavaStringToUTF8(jfavicon_url);
 
-  TemplateURLData data;
-  data.SetShortName(base::android::ConvertJavaStringToUTF16(env, jname));
-  data.SetKeyword(keyword);
-  data.SetURL(base::android::ConvertJavaStringToUTF8(jsearch_url));
-  data.favicon_url = GURL(base::android::ConvertJavaStringToUTF8(jfavicon_url));
-  data.safe_for_autoreplace = true;
-  data.created_from_play_api = true;
   TemplateURL* t_url =
-      template_url_service_->Add(std::make_unique<TemplateURL>(data));
-  if (!t_url) {
-    // TODO(crbug/1002271): Investigate and handle cases when
-    // TemplateURLService::Add() might return false.
-    return false;
-  }
+      template_url_service_->CreateOrUpdateTemplateURLFromPlayAPIData(
+          name, keyword, search_url, favicon_url);
 
   if (template_url_service_->CanMakeDefault(t_url))
     template_url_service_->SetUserSelectedDefaultSearchProvider(t_url);
diff --git a/components/search_engines/keyword_web_data_service.cc b/components/search_engines/keyword_web_data_service.cc
index 07de4b1..fd0df74 100644
--- a/components/search_engines/keyword_web_data_service.cc
+++ b/components/search_engines/keyword_web_data_service.cc
@@ -7,6 +7,7 @@
 #include "base/bind.h"
 #include "base/location.h"
 #include "base/single_thread_task_runner.h"
+#include "build/build_config.h"
 #include "components/search_engines/keyword_table.h"
 #include "components/search_engines/template_url_data.h"
 #include "components/webdata/common/web_data_results.h"
@@ -152,8 +153,16 @@
     DCHECK(batch_mode_level_);
     --batch_mode_level_;
     if (!batch_mode_level_ && !queued_keyword_operations_.empty() &&
-        !timer_.IsRunning())
+        !timer_.IsRunning()) {
+      // When killing an app on Android/iOS, shutdown isn't guaranteed to be
+      // called. Finishing this task immediately ensures the table is fully
+      // populated even if the app is killed before the timer expires.
+#if defined(OS_ANDROID) || defined(OS_IOS)
+      CommitQueuedOperations();
+#else
       timer_.Reset();
+#endif
+    }
   }
 }
 
diff --git a/components/search_engines/template_url_data.cc b/components/search_engines/template_url_data.cc
index 81fa539..6a9635ec 100644
--- a/components/search_engines/template_url_data.cc
+++ b/components/search_engines/template_url_data.cc
@@ -49,6 +49,9 @@
 
 TemplateURLData::TemplateURLData(const TemplateURLData& other) = default;
 
+TemplateURLData& TemplateURLData::operator=(const TemplateURLData& other) =
+    default;
+
 TemplateURLData::TemplateURLData(const base::string16& name,
                                  const base::string16& keyword,
                                  base::StringPiece search_url,
@@ -96,8 +99,7 @@
   }
 }
 
-TemplateURLData::~TemplateURLData() {
-}
+TemplateURLData::~TemplateURLData() = default;
 
 void TemplateURLData::SetShortName(const base::string16& short_name) {
   // Remove tabs, carriage returns, and the like, as they can corrupt
diff --git a/components/search_engines/template_url_data.h b/components/search_engines/template_url_data.h
index 5fc02577..6d41992 100644
--- a/components/search_engines/template_url_data.h
+++ b/components/search_engines/template_url_data.h
@@ -23,6 +23,7 @@
 struct TemplateURLData {
   TemplateURLData();
   TemplateURLData(const TemplateURLData& other);
+  TemplateURLData& operator=(const TemplateURLData& other);
 
   // Creates a TemplateURLData suitable for prepopulated engines.
   // Note that unlike in the default constructor, |safe_for_autoreplace| will
diff --git a/components/search_engines/template_url_service.cc b/components/search_engines/template_url_service.cc
index 59ccc3fc..c3af678 100644
--- a/components/search_engines/template_url_service.cc
+++ b/components/search_engines/template_url_service.cc
@@ -617,6 +617,30 @@
   Update(url, TemplateURL(data));
 }
 
+TemplateURL* TemplateURLService::CreateOrUpdateTemplateURLFromPlayAPIData(
+    const base::string16& title,
+    const base::string16& keyword,
+    const std::string& search_url,
+    const std::string& favicon_url) {
+  TemplateURL* existing_turl = FindNonExtensionTemplateURLForKeyword(keyword);
+  TemplateURLData data;
+  if (existing_turl)
+    data = existing_turl->data();
+  data.SetShortName(title);
+  data.SetKeyword(keyword);
+  data.SetURL(search_url);
+  data.favicon_url = GURL(favicon_url);
+  data.safe_for_autoreplace = true;
+  data.created_from_play_api = true;
+  if (existing_turl) {
+    Update(existing_turl, TemplateURL(data));
+  } else {
+    existing_turl = Add(std::make_unique<TemplateURL>(data));
+    DCHECK(existing_turl);
+  }
+  return existing_turl;
+}
+
 void TemplateURLService::UpdateProviderFavicons(
     const GURL& potential_search_url,
     const GURL& favicon_url) {
diff --git a/components/search_engines/template_url_service.h b/components/search_engines/template_url_service.h
index ffaf93b..87befe2 100644
--- a/components/search_engines/template_url_service.h
+++ b/components/search_engines/template_url_service.h
@@ -254,6 +254,15 @@
                         const base::string16& keyword,
                         const std::string& search_url);
 
+  // Creates TemplateURL, populating it with data from Play API. If TemplateURL
+  // with matching keyword already exists then merges Play API data into it.
+  // Sets |created_from_play_api| flag.
+  TemplateURL* CreateOrUpdateTemplateURLFromPlayAPIData(
+      const base::string16& title,
+      const base::string16& keyword,
+      const std::string& search_url,
+      const std::string& favicon_url);
+
   // Updates any search providers matching |potential_search_url| with the new
   // favicon location |favicon_url|.
   void UpdateProviderFavicons(const GURL& potential_search_url,
diff --git a/components/search_engines/template_url_service_util_unittest.cc b/components/search_engines/template_url_service_util_unittest.cc
index ce0faed..1726626 100644
--- a/components/search_engines/template_url_service_util_unittest.cc
+++ b/components/search_engines/template_url_service_util_unittest.cc
@@ -107,25 +107,28 @@
   local_turls.push_back(CreatePrepopulateTemplateURL(0, "play", 1, true));
 
   // Test that prepopulated search engine with matching keyword is merged with
-  // Play API search engine.
+  // Play API search engine. Search URL should come from Play API search engine.
+  const std::string prepopulated_search_url = "http://prepopulated.url";
   prepopulated_turls.push_back(CreatePrepopulateTemplateURLData(1, "play"));
+  prepopulated_turls.back()->SetURL(prepopulated_search_url);
   MergeEnginesFromPrepopulateData(nullptr, &prepopulated_turls, &local_turls,
                                   nullptr, nullptr);
   ASSERT_EQ(local_turls.size(), 1U);
   // Merged search engine should have both Play API flag and valid
   // prepopulate_id.
   EXPECT_TRUE(local_turls[0]->created_from_play_api());
-  EXPECT_EQ(local_turls[0]->prepopulate_id(), 1);
+  EXPECT_EQ(1, local_turls[0]->prepopulate_id());
+  EXPECT_NE(prepopulated_search_url, local_turls[0]->url());
 
   // Test that merging prepopulated search engine with matching prepopulate_id
-  // updates keyword of Play API search engine.
+  // preserves keyword of Play API search engine.
   prepopulated_turls.clear();
   prepopulated_turls.push_back(CreatePrepopulateTemplateURLData(1, "play2"));
   MergeEnginesFromPrepopulateData(nullptr, &prepopulated_turls, &local_turls,
                                   nullptr, nullptr);
   ASSERT_EQ(local_turls.size(), 1U);
   EXPECT_TRUE(local_turls[0]->created_from_play_api());
-  EXPECT_EQ(local_turls[0]->keyword(), base::ASCIIToUTF16("play2"));
+  EXPECT_EQ(local_turls[0]->keyword(), base::ASCIIToUTF16("play"));
 
   // Test that removing search engine from prepopulated list doesn't delete Play
   // API search engine record.
diff --git a/components/search_engines/util.cc b/components/search_engines/util.cc
index cd3448b..9f73ffe 100644
--- a/components/search_engines/util.cc
+++ b/components/search_engines/util.cc
@@ -184,10 +184,22 @@
                                      TemplateURLData* prepopulated_url) {
   DCHECK(original_turl->prepopulate_id() == 0 ||
          original_turl->prepopulate_id() == prepopulated_url->prepopulate_id);
-  if (!original_turl->safe_for_autoreplace()) {
-    prepopulated_url->safe_for_autoreplace = false;
-    prepopulated_url->SetKeyword(original_turl->keyword());
+  // When the user modified search engine's properties or search engine is
+  // imported from Play API data we need to preserve certain search engine
+  // properties from overriding with prepopulated data.
+  if (!original_turl->safe_for_autoreplace() ||
+      original_turl->created_from_play_api()) {
+    prepopulated_url->safe_for_autoreplace =
+        original_turl->safe_for_autoreplace();
     prepopulated_url->SetShortName(original_turl->short_name());
+    prepopulated_url->SetKeyword(original_turl->keyword());
+    if (original_turl->created_from_play_api()) {
+      // TODO(crbug/1002271): Search url from Play API might contain attribution
+      // info and therefore should be preserved through prepopulated data
+      // update. In the future we might decide to take different approach to
+      // pass attribution info to search providers.
+      prepopulated_url->SetURL(original_turl->url());
+    }
   }
   prepopulated_url->id = original_turl->id();
   prepopulated_url->sync_guid = original_turl->sync_guid();
diff --git a/components/strings/components_google_chrome_strings_ml.xtb b/components/strings/components_google_chrome_strings_ml.xtb
index 54c270f5..78b0fa92 100644
--- a/components/strings/components_google_chrome_strings_ml.xtb
+++ b/components/strings/components_google_chrome_strings_ml.xtb
@@ -19,13 +19,15 @@
           &gt;
           <ph name="PROXIES_TITLE" />
           ഒപ്പം നിങ്ങളുടെ കോൺഫിഗറേഷൻ ''പ്രോക്‌സി അല്ല'' അല്ലെങ്കിൽ ''നേരിട്ട്'' എന്നതിലേക്ക് സജ്ജമാക്കിയിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക.</translation>
-<translation id="6341737370356890233">Chrome മെനു &gt;
+<translation id="6341737370356890233">ഇനിപ്പറയുന്നതിലേക്ക് പോകുക
+          Chrome മെനു &gt;
           <ph name="SETTINGS_TITLE" />
           &gt;
           <ph name="ADVANCED_TITLE" /> എന്നതിലേക്ക് പോയി
-          "<ph name="NO_PREFETCH_DESCRIPTION" />" തിരഞ്ഞെടുത്തത് മാറ്റുക.
-          ഇത് പ്രശ്‌നം പരിഹരിക്കുന്നില്ലെങ്കിൽ, മെച്ചപ്പെട്ട പ്രകടനത്തിനായി ഈ ഓപ്‌ഷൻ വീണ്ടും തിരഞ്ഞെടുക്കുന്നതിനായി ഞങ്ങൾ ശുപാർശചെയ്യുന്നു.</translation>
-<translation id="6855094794438142393">Chrome മെനു &gt;
+          "<ph name="NO_PREFETCH_DESCRIPTION" />" തിരഞ്ഞെടുത്തത് മാറ്റുക.          
+   ഇത് പ്രശ്‌നം പരിഹരിക്കുന്നില്ലെങ്കിൽ, മെച്ചപ്പെട്ട പ്രകടനത്തിനായി ഈ ഓപ്‌ഷൻ വീണ്ടും തിരഞ്ഞെടുക്കുന്നതിനായി ഞങ്ങൾ ശുപാർശ ചെയ്യുന്നു.</translation>
+<translation id="6855094794438142393">Chrome മെനു
+          എന്നതിലേക്ക് പോകുക &gt;
           <ph name="SETTINGS_TITLE" />
           &gt;
           <ph name="ADVANCED_TITLE" />
diff --git a/components/strings/components_strings_am.xtb b/components/strings/components_strings_am.xtb
index 970c5a9..3e18ff6 100644
--- a/components/strings/components_strings_am.xtb
+++ b/components/strings/components_strings_am.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">የመነሻ ገጾችን ክፈት</translation>
 <translation id="1883255238294161206">ዝርዝር ሰብስብ</translation>
 <translation id="1898423065542865115">በማጣራት ላይ</translation>
+<translation id="1901443836186977402">{1,plural, =1{ይህ አገልጋይ <ph name="DOMAIN" /> መሆኑን ማረጋገጥ አልቻለም፤ የደህንነት እውቅና ማረጋገጫው ባለፈው ቀን ነው ጊዜ ያበቃው። ይሄ በተሳሳተ አወቃቀር ወይም አንድ አጥቂ ግንኙነትዎን በመጥለፉ የተከሰተ ሊሆን ይችላል። የኮምፒውተርዎ ሰዓት በአሁኑ ጊዜ ወደ <ph name="CURRENT_DATE" /> ተቀናብሯል። ይህ ልክ ይመስላል? ትክክል ካልሆነ የስርዓትዎን ሰዓት ማስተካከል እና ይህንን ገጽ ማደስ አለብዎት።}one{ይህ አገልጋይ <ph name="DOMAIN" /> መሆኑን ማረጋገጥ አልቻለም፤ የደህንነት ዕውቅና ማረጋገጫው ከ# ቀኖች በፊት ጊዜው አብቅቷል። ይህ በተሳሳተ ውቅረት ወይም የእርስዎን ግንኙነት በሚጠልፍ አጥቂ ምክንያት የተፈጠረ ሊሆን ይችላል። የእርስዎ ኮምፒውተር ሰዓት አሁን ወደ <ph name="CURRENT_DATE" /> ተዋቅሯል። ትክክል ይመስላል? ካልሆነ የሥርዓትዎን ሰዓት ማስተካከልና ከዚያ ይህን ገጽ ማደስ ይኖርብዎታል።}other{ይህ አገልጋይ <ph name="DOMAIN" /> መሆኑን ማረጋገጥ አልቻለም፤ የደህንነት ዕውቅና ማረጋገጫው ከ# ቀኖች በፊት ጊዜው አብቅቷል። ይህ በተሳሳተ ውቅረት ወይም የእርስዎን ግንኙነት በሚጠልፍ አጥቂ ምክንያት የተፈጠረ ሊሆን ይችላል። የእርስዎ ኮምፒውተር ሰዓት አሁን ወደ <ph name="CURRENT_DATE" /> ተዋቅሯል። ትክክል ይመስላል? ካልሆነ የሥርዓትዎን ሰዓት ማስተካከልና ከዚያ ይህን ገጽ ማደስ ይኖርብዎታል።}}</translation>
 <translation id="1914326953223720820">አገልግሎትን በትን</translation>
 <translation id="1915697529809968049">ከCVC ይልቅ የንክኪ መታወቂያ ይጠቀሙ?</translation>
 <translation id="1916770123977586577">የተዘመኑ ቅንብሮችዎን በዚህ ጣቢያ ላይ ለመተግበር ይህን ገጽ እንደገና ይጫኑት</translation>
@@ -441,6 +442,7 @@
 <translation id="3116158981186517402">አሽግ</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />የግንኙነት መመርመሪያን አሂደው ይሞክሩ<ph name="END_LINK" /></translation>
+<translation id="3121994479408824897">ወደ <ph name="DOMAIN" /> ሂድ</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{ምንም}=1{የ1 መለያ የመለያ መግቢያ ውሂብ}one{የ# መለያዎች የመለያ መግቢያ ውሂብ}other{የ# መለያዎች የመለያ መግቢያ ውሂብ}}</translation>
 <translation id="3145945101586104090">ምላሹን መግለጥ አልተሳካም</translation>
 <translation id="3150653042067488994">ጊዜያዊ የአገልጋይ ስህተት</translation>
@@ -822,6 +824,7 @@
 <translation id="5043480802608081735">የቀዱት አገናኝ</translation>
 <translation id="5045550434625856497">ትክክል ያልሆነ የይለፍ ቃል</translation>
 <translation id="5056549851600133418">ለእርስዎ የሚሆኑ ጽሑፎች</translation>
+<translation id="5061227663725596739"><ph name="LOOKALIKE_DOMAIN" /> ለማለት ፈልገው ነው?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 ጥቅም ላይ ያለ)}one{(# ጥቅም ላይ ያለ)}other{(# ጥቅም ላይ ያለ)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />የወኪሉን አድራሻ መፈተሽ<ph name="END_LINK" /></translation>
@@ -875,6 +878,7 @@
 <translation id="5284909709419567258">የአውታረ መረብ አድራሻዎች</translation>
 <translation id="5285570108065881030">ሁሉንም የተቀመጡ የይለፍ ቃላት አሳይ</translation>
 <translation id="5287240709317226393">ኩኪዎችን አሳይ</translation>
+<translation id="5287456746628258573">ይህ ጣቢያ ጊዜ ያለፈበት የደህንነት ውቅረትን ይጠቀማል፣ ይህ ወደዚህ ጣቢያ ሲላክ መረጃዎን (ለምሳሌ፦ የይለፍ ቃላት ወይም የክሬዲት ካርድ ቁጥሮች) ሊያጋልጥ ይችላል።</translation>
 <translation id="5288108484102287882">የመመሪያ እሴቶችን ማረጋገጥ ማስጠንቀቂያዎችን አስነስቷል</translation>
 <translation id="5299298092464848405">መምሪያን መተንተን ላይ ስህተት</translation>
 <translation id="5300589172476337783">አሳይ</translation>
@@ -1002,6 +1006,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" />ን በመክፈት ላይ…</translation>
 <translation id="5947933617628957894">አዎ አክል</translation>
 <translation id="5951495562196540101">በሸማች መለያ መመዝገብ አይቻልም (የጥቅል ፈቃድ ይገኛል)።</translation>
+<translation id="5966900314707961320">ሲበራ ጣቢያዎች እርስዎን በመላው ድር ላይ የሚከታተሉ ኩኪዎችን መጠቀም አይችሉም</translation>
 <translation id="5967592137238574583">የዕውቂያ መረጃን ያርትዑ</translation>
 <translation id="5967867314010545767">ከታሪክ አስወግድ</translation>
 <translation id="5975083100439434680">አሳንስ</translation>
@@ -1084,6 +1089,7 @@
 <translation id="6383221683286411806">ሊሆኑ የሚችሉ ክፍያ መጠየቂያዎች እየመጡ ነው።</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 ሌላ የአስተያየት ጥቆማ}one{# ሌሎች የአስተያየት ጥቆማዎች}other{# ሌሎች የአስተያየት ጥቆማዎች}}</translation>
 <translation id="6387754724289022810">በሚቀጥለው ጊዜ በበለጠ ፍጥነት ለመክፈል ካርድዎን እና የማስከፈያ አድራሻዎን በGoogle መለያዎ እና በዚህ መሣሪያ ላይ ያስቀምጡ።</translation>
+<translation id="6389470377220713856">በካርድ ላይ ያለ ስም</translation>
 <translation id="6390200185239044127">Z-እጥፋት ግማሽ</translation>
 <translation id="6390662030813198813">ምሕንድስና-E</translation>
 <translation id="6401136357288658127">ይህ መመሪያ ተቋርጧል። በምትኩ የ<ph name="NEW_POLICY" /> መመሪያውን መጠቀም አለብዎት።</translation>
@@ -1262,7 +1268,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">ከዚህ ጋር ግንኙነት አለው፦</translation>
 <translation id="7349430561505560861">A4-ተጨማሪ</translation>
-<translation id="7352902249897488700">ከዚህ ጣቢያ ውጣ</translation>
 <translation id="7353601530677266744">የትእዛዝ መስመር</translation>
 <translation id="7372973238305370288">የፍለጋ ውጤት</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1435,6 +1440,7 @@
 <translation id="8131740175452115882">አረጋግጥ</translation>
 <translation id="8149426793427495338">የእርስዎ ኮምፒውተ ተኝቷል።</translation>
 <translation id="8150722005171944719"><ph name="URL" /> ላይ ያለው ፋይል የሚነበብ አይደለም።  ተወግዶ፣ ተወስዶ ወይም የፋይል ፍቃዶቹ መዳረሻ እየከለከሉ ሊሆኑ ይችላሉ።</translation>
+<translation id="8157295877370077682">ከጣቢያ ውጣ</translation>
 <translation id="8163866351304776260">በግራ በኩል አራቴ ብሳ</translation>
 <translation id="8175796834047840627">እርስዎ በመለያ ስለገቡ Chrome ወደ የእርስዎ የGoogle መለያ ለማስቀመጥ አማራጭ እያቀረበ ነው። ይህን ባህሪ በቅንብሮች ውስጥ መለወጥ ይችላሉ።</translation>
 <translation id="8184538546369750125">ሁለንተናዊ ነባሪውን ተጠቀም (ፍቀድ)</translation>
diff --git a/components/strings/components_strings_ar.xtb b/components/strings/components_strings_ar.xtb
index 2269267..0e2d304 100644
--- a/components/strings/components_strings_ar.xtb
+++ b/components/strings/components_strings_ar.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">فتح صفحات بدء التشغيل</translation>
 <translation id="1883255238294161206">تصغير القائمة</translation>
 <translation id="1898423065542865115">التصفية</translation>
+<translation id="1901443836186977402">{1,plural, =1{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />، انتهت صلاحية شهادة الأمان في آخر يوم. يمكن أن يكون سبب ذلك خطأ في الضبط أو مهاجمًا يعترض اتصالك. تم ضبط ساعة الكمبيوتر حاليًا على <ph name="CURRENT_DATE" />. هل تبدو الساعة صحيحة؟ إذا لم تكن كذلك، يجب تصحيح ساعة النظام، ثم إعادة تحميل هذه الصفحة.}zero{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />، بل إنه شهادة أمان منتهية الصلاحية منذ # يوم. ويمكن أن يكون سبب ذلك خطأ في الضبط أو مهاجمًا يعترض الاتصال. تم ضبط ساعة الكمبيوتر حاليًا على <ph name="CURRENT_DATE" />. هل تبدو الساعة صحيحة؟ إذا لم تكن كذلك، يجب تصحيح ساعة النظام، ثم إعادة تحميل هذه الصفحة.}two{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />، بل إنه شهادة أمان منتهية الصلاحية منذ يومَين (#). ويمكن أن يكون سبب ذلك خطأ في الضبط أو مهاجمًا يعترض الاتصال. تم ضبط ساعة الكمبيوتر حاليًا على <ph name="CURRENT_DATE" />. هل تبدو الساعة صحيحة؟ إذا لم تكن كذلك، يجب تصحيح ساعة النظام، ثم إعادة تحميل هذه الصفحة.}few{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />، بل إنه شهادة أمان منتهية الصلاحية منذ (#) أيام. ويمكن أن يكون سبب ذلك خطأ في الضبط أو مهاجمًا يعترض الاتصال. تم ضبط ساعة الكمبيوتر حاليًا على <ph name="CURRENT_DATE" />. هل تبدو الساعة صحيحة؟ إذا لم تكن كذلك، يجب تصحيح ساعة النظام، ثم إعادة تحميل هذه الصفحة.}many{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />، بل إنه شهادة أمان منتهية الصلاحية منذ (#) يومًا. ويمكن أن يكون سبب ذلك خطأ في الضبط أو مهاجمًا يعترض الاتصال. تم ضبط ساعة الكمبيوتر حاليًا على <ph name="CURRENT_DATE" />. هل تبدو الساعة صحيحة؟ إذا لم تكن كذلك، يجب تصحيح ساعة النظام، ثم إعادة تحميل هذه الصفحة.}other{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />، بل إنه شهادة أمان منتهية الصلاحية منذ (#) يومًا. ويمكن أن يكون سبب ذلك خطأ في الضبط أو مهاجمًا يعترض الاتصال. تم ضبط ساعة الكمبيوتر حاليًا على <ph name="CURRENT_DATE" />. هل تبدو الساعة صحيحة؟ إذا لم تكن كذلك، يجب تصحيح ساعة النظام، ثم إعادة تحميل هذه الصفحة.}}</translation>
 <translation id="1914326953223720820">خدمة "فك الضغط"</translation>
 <translation id="1915697529809968049">‏هل تريد استخدام رقم التعريف باللمس بدلاً من رمز التحقق من البطاقة (CVC)؟</translation>
 <translation id="1916770123977586577">لتطبيق الإعدادات المُحدَّثة على موقع الويب هذا، أعِد تحميل هذه الصفحة</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">تغليف</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />تجربة تشغيل بيانات تشخيص الاتصال<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">الانتقال إلى <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{بدون بيانات تسجيل دخول}=1{بيانات تسجيل الدخول لحساب واحد}two{بيانات تسجيل الدخول لحسابين (#)}few{بيانات تسجيل الدخول لـ # حسابات}many{بيانات تسجيل الدخول لـ # حسابًا}other{بيانات تسجيل الدخول لـ # حساب}}</translation>
 <translation id="3145945101586104090">تعذّر فك تشفير الاستجابة</translation>
 <translation id="3150653042067488994">خطأ مؤقت في الخادم</translation>
@@ -542,7 +544,7 @@
 <translation id="362276910939193118">عرض السجلّ بكامله</translation>
 <translation id="3630155396527302611">إذا تم بالفعل إدراج صفحة الويب كبرنامج مسموح له بالدخول إلى الشبكة، فجرّب
         إزالتها من القائمة وإضافتها مرةً أخرى.</translation>
-<translation id="3631244953324577188">مقاييس حيوية</translation>
+<translation id="3631244953324577188">المقاييس الحيوية</translation>
 <translation id="3640766068866876100">Index-4x6-Ext</translation>
 <translation id="3650584904733503804">تم التحقق بنجاح</translation>
 <translation id="3655670868607891010">إذا تكرّر هذا الأمر، ننصحك بالاطّلاع على هذه <ph name="HELP_LINK" />.</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">الرابط الذي نسخته</translation>
 <translation id="5045550434625856497">كلمة مرور غير صحيحة</translation>
 <translation id="5056549851600133418">مقالات لك</translation>
+<translation id="5061227663725596739">هل كنت تقصد <ph name="LOOKALIKE_DOMAIN" />؟</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(ملف تعريف ارتباط واحد قيد الاستخدام)}zero{(ما من ملفات تعريف ارتباط قيد الاستخدام)}two{(ملفا تعريف ارتباط (#) قيد الاستخدام)}few{(# ملفات تعريف ارتباط قيد الاستخدام)}many{(# ملف تعريف ارتباط قيد الاستخدام)}other{(# ملف تعريف ارتباط قيد الاستخدام)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />التحقق من عنوان الخادم الوكيل<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">عناوين الشبكة</translation>
 <translation id="5285570108065881030">عرض جميع كلمات المرور المحفوظة</translation>
 <translation id="5287240709317226393">عرض ملفات تعريف الارتباط</translation>
+<translation id="5287456746628258573">يستخدم هذا الموقع الإلكتروني ضبط الأمان القديم، الذي يمكن أن يكشف عن معلوماتك (مثلاً، كلمات المرور أو أرقام بطاقة الائتمان) عند إرسالها إلى هذا الموقع الإلكتروني.</translation>
 <translation id="5288108484102287882">لقد أدى التحقُّق من قيم السياسة إلى ظهور تحذيرات.</translation>
 <translation id="5299298092464848405">خطأ في تحليل السياسة</translation>
 <translation id="5300589172476337783">عرض</translation>
@@ -1009,6 +1013,7 @@
 <translation id="5946937721014915347">جارٍ فتح <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">نعم، إضافة</translation>
 <translation id="5951495562196540101">لا يمكن التسجيل باستخدام حساب المستهلك (الترخيص المجمّع متوفّر).</translation>
+<translation id="5966900314707961320">عند التفعيل، لا يمكن للمواقع الإلكترونية استخدام ملفات تعريف الارتباط التي تتبع خطواتك على الويب.</translation>
 <translation id="5967592137238574583">تعديل معلومات الاتصال</translation>
 <translation id="5967867314010545767">إزالة من السجل</translation>
 <translation id="5975083100439434680">تصغير</translation>
@@ -1091,6 +1096,7 @@
 <translation id="6383221683286411806">رسوم محتملة في انتظارك.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{اقتراح واحد آخر}zero{# اقتراح آخر}two{اقتراحان آخران (#)}few{# اقتراحات أخرى}many{# اقتراحًا آخر}other{# اقتراح آخر}}</translation>
 <translation id="6387754724289022810">‏للدفع بشكلٍ أسرع في المرة القادمة، يجب حفظ تفاصيل البطاقة المصرفية وعنوان إرسال الفواتير في حسابك على Google وعلى هذا الجهاز.</translation>
+<translation id="6389470377220713856">الاسم كما في البطاقة</translation>
 <translation id="6390200185239044127">‏الطي إلى نصفَين على شكل حرف Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">تم إيقاف هذه السياسة. يمكنك استخدام السياسة <ph name="NEW_POLICY" /> بدلاً من ذلك.</translation>
@@ -1269,7 +1275,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">تابع إلى:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">مغادرة هذا الموقع الإلكتروني</translation>
 <translation id="7353601530677266744">سطر الأوامر</translation>
 <translation id="7372973238305370288">نتيجة البحث</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" />‏ - <ph name="FULL_DATE" /></translation>
@@ -1442,6 +1447,7 @@
 <translation id="8131740175452115882">التأكيد</translation>
 <translation id="8149426793427495338">خضع جهاز الكمبيوتر إلى وضع السكون.</translation>
 <translation id="8150722005171944719">الملف الموجود على <ph name="URL" /> غير قابل للقراءة. ربما تمت إزالته، أو ربما تكون أذونات الملف هي التي تمنع الدخول.</translation>
+<translation id="8157295877370077682">مغادرة الموقع الإلكتروني</translation>
 <translation id="8163866351304776260">عمل أربعة ثقوب يسارًا</translation>
 <translation id="8175796834047840627">‏يتيح لك Chrome حفظ بطاقاتك في حسابك على Google لأنك سجَّلت الدخول. يمكنك تغيير هذا السلوك في الإعدادات.</translation>
 <translation id="8184538546369750125">استخدام الإعداد التلقائي العمومي (سماح)</translation>
diff --git a/components/strings/components_strings_bg.xtb b/components/strings/components_strings_bg.xtb
index 9b1e149a..4d3b4bf 100644
--- a/components/strings/components_strings_bg.xtb
+++ b/components/strings/components_strings_bg.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Отваряне на страниците при стартиране</translation>
 <translation id="1883255238294161206">Свиване на списъка</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>
 <translation id="1914326953223720820">Услуга за разкомпресиране</translation>
 <translation id="1915697529809968049">Искате ли да използвате Touch ID вместо код за проверка?</translation>
 <translation id="1916770123977586577">Презаредете страницата, за да приложите актуализираните си настройки към този сайт</translation>
@@ -443,6 +444,7 @@
 <translation id="3116158981186517402">Ламиниране</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Опитайте да стартирате диагностика на свързаността<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Към <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Няма}=1{данни за вход за 1 профил}other{данни за вход за # профила}}</translation>
 <translation id="3145945101586104090">Декодирането на отговора не бе успешно</translation>
 <translation id="3150653042067488994">Временна грешка в сървъра</translation>
@@ -827,6 +829,7 @@
 <translation id="5043480802608081735">Копирана от вас връзка</translation>
 <translation id="5045550434625856497">Грешна парола</translation>
 <translation id="5056549851600133418">Статии за вас</translation>
+<translation id="5061227663725596739">Може би имахте предвид <ph name="LOOKALIKE_DOMAIN" />?</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>
@@ -880,6 +883,7 @@
 <translation id="5284909709419567258">Мрежовите адреси</translation>
 <translation id="5285570108065881030">Показване на всички запазени пароли</translation>
 <translation id="5287240709317226393">Показване на „бисквитките“</translation>
+<translation id="5287456746628258573">Този сайт използва остаряла конфигурация за сигурност, която може да разкрие информацията ви (например пароли или номера на кредитни карти) при изпращането ѝ до него.</translation>
 <translation id="5288108484102287882">При проверката на стойностите на правилата възникнаха предупреждения</translation>
 <translation id="5299298092464848405">Грешка при синтактичния анализ на правилото</translation>
 <translation id="5300589172476337783">Показване</translation>
@@ -1007,6 +1011,7 @@
 <translation id="5946937721014915347">Отваря се <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Да, искам</translation>
 <translation id="5951495562196540101">Не е възможно регистриране с профил на потребител (налице е лиценз в пакет).</translation>
+<translation id="5966900314707961320">Когато тази функция е включена, сайтовете не могат да използват „бисквитки“, които проследяват активността ви в мрежата</translation>
 <translation id="5967592137238574583">Редактиране на информацията за връзка</translation>
 <translation id="5967867314010545767">Премахване от историята</translation>
 <translation id="5975083100439434680">Намаляване на мащаба</translation>
@@ -1089,6 +1094,7 @@
 <translation id="6383221683286411806">Възможно е таксуване.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{още 1 предложение}other{още # предложения}}</translation>
 <translation id="6387754724289022810">За да платите по-бързо следващия път, запазете картата и адреса си за фактуриране в профила си в Google и на това устройство.</translation>
+<translation id="6389470377220713856">Име върху картата</translation>
 <translation id="6390200185239044127">Двойно Z-образно сгъване</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Това правило е оттеглено. Вместо него използвайте <ph name="NEW_POLICY" />.</translation>
@@ -1267,7 +1273,6 @@
 <translation id="734600844861828519">11 x 15</translation>
 <translation id="7346048084945669753">Потребителят е вътрешен:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Напускане на този сайт</translation>
 <translation id="7353601530677266744">Команден ред</translation>
 <translation id="7372973238305370288">резултат от търсенето</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1440,6 +1445,7 @@
 <translation id="8131740175452115882">Потвърждаване</translation>
 <translation id="8149426793427495338">Компютърът ви премина в спящ режим.</translation>
 <translation id="8150722005171944719">Файлът на адрес <ph name="URL" /> не може да бъде прочетен.  Възможно е да е премахнат, преместен или разрешенията му да предотвратяват достъпа.</translation>
+<translation id="8157295877370077682">Напускане на сайта</translation>
 <translation id="8163866351304776260">Четворно перфориране отляво</translation>
 <translation id="8175796834047840627">Chrome предлага да запази картите ви в профила ви в Google, защото сте влезли в него. Можете да промените това поведение от настройките.</translation>
 <translation id="8184538546369750125">Използване на глобалната стандартна стойност (разрешаване)</translation>
diff --git a/components/strings/components_strings_bn.xtb b/components/strings/components_strings_bn.xtb
index 908fdfe..3f24732 100644
--- a/components/strings/components_strings_bn.xtb
+++ b/components/strings/components_strings_bn.xtb
@@ -203,6 +203,7 @@
 <translation id="187918866476621466">শুরুর পৃষ্ঠাগুলি খুলুন</translation>
 <translation id="1883255238294161206">তালিকা সঙ্কুচিত করুন</translation>
 <translation id="1898423065542865115">ফিল্টার হচ্ছে</translation>
+<translation id="1901443836186977402">{1,plural, =1{এই সার্ভার প্রমাণ করতে পারেনি যে এটি <ph name="DOMAIN" />; গতকাল এর সিকিউরিটি সার্টিফিকেটের মেয়াদ শেষ হয়ে গেছে। কোনও ভুল কনফিগারেশনের কারণে বা কোনও আক্রমণকারী আপনার কানেকশন ইন্টারসেপ্ট করার চেষ্টা করলে এমন হতে পারে। বর্তমানে আপনার কম্পিউটারের ঘড়ি <ph name="CURRENT_DATE" />-এ সেট করা আছে। এটি কি সঠিকভাবে সেট করা আছে? এটি ভুল থাকলে, আপনার সিস্টেমের ঘড়িতে সঠিক সময় সেট করুন এবং পরে এই পৃষ্ঠাটি রিফ্রেশ করুন।}one{এই সার্ভার প্রমাণ করতে পারেনি যে এটি <ph name="DOMAIN" />; এর সিকিউরিটি সার্টিফিকেটের মেয়াদ # দিন আগে শেষ হয়ে গেছে। কোনও ভুল কনফিগারেশনের কারণে বা কোনও আক্রমণকারী আপনার কানেকশন ইন্টারসেপ্ট করার চেষ্টা করলে এমন হতে পারে। বর্তমানে আপনার কম্পিউটারের ঘড়ি <ph name="CURRENT_DATE" />-এ সেট করা আছে। এটি কি সঠিকভাবে সেট করা আছে? এটি ভুল থাকলে, আপনার সিস্টেমের ঘড়িতে সঠিক সময় সেট করুন এবং পরে এই পৃষ্ঠাটি রিফ্রেশ করুন।}other{এই সার্ভার প্রমাণ করতে পারেনি যে এটি <ph name="DOMAIN" />; এর সিকিউরিটি সার্টিফিকেটের মেয়াদ # দিন আগে শেষ হয়ে গেছে। কোনও ভুল কনফিগারেশনের কারণে বা কোনও আক্রমণকারী আপনার কানেকশন ইন্টারসেপ্ট করার চেষ্টা করলে এমন হতে পারে। বর্তমানে আপনার কম্পিউটারের ঘড়ি <ph name="CURRENT_DATE" />-এ সেট করা আছে। এটি কি সঠিকভাবে সেট করা আছে? এটি ভুল থাকলে, আপনার সিস্টেমের ঘড়িতে সঠিক সময় সেট করুন এবং পরে এই পৃষ্ঠাটি রিফ্রেশ করুন।}}</translation>
 <translation id="1914326953223720820">পরিষেবা আনজিপ করুন</translation>
 <translation id="1915697529809968049">সিভিসি কোডের পরিবর্তে টাচ আইডি ব্যবহার করবেন?</translation>
 <translation id="1916770123977586577">আপডেট করা সেটিংস এই সাইটে প্রয়োগ করতে পৃষ্ঠাটি আবার লোড করুন</translation>
@@ -446,6 +447,7 @@
 <translation id="3116158981186517402">ল্যামিনেট করুন</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />সংযোগের ডায়গনিস্টিক্স চালিয়ে দেখুন<ph name="END_LINK" />।</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" />-এ যান</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{কোনও ডেটা নেই}=1{১টি অ্যাকাউন্টের জন্য সাইন-ইন ডেটা}one{#টি অ্যাকাউন্টের জন্য সাইন-ইন ডেটা}other{#টি অ্যাকাউন্টের জন্য সাইন-ইন ডেটা}}</translation>
 <translation id="3145945101586104090">প্রতিক্রিয়া ডিকোড করতে ব্যর্থ হয়েছে</translation>
 <translation id="3150653042067488994">সাময়িক সার্ভার ত্রুটি</translation>
@@ -830,6 +832,7 @@
 <translation id="5043480802608081735">আপনার কপি করা লিঙ্ক</translation>
 <translation id="5045550434625856497">ভুল পাসওয়ার্ড</translation>
 <translation id="5056549851600133418">আপনার জন্য নিবন্ধগুলি</translation>
+<translation id="5061227663725596739">আপনি কি <ph name="LOOKALIKE_DOMAIN" /> ডোমেনের কথা বলছেন?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(১টি ব্যবহার করা হচ্ছে)}one{(#টি ব্যবহার করা হচ্ছে)}other{(#টি ব্যবহার করা হচ্ছে)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />প্রক্সি ঠিকানা পরীক্ষা করে দেখুন<ph name="END_LINK" /></translation>
@@ -883,6 +886,7 @@
 <translation id="5284909709419567258">নেটওয়ার্ক ঠিকানা</translation>
 <translation id="5285570108065881030">সেভ করা সমস্ত পাসওয়ার্ড দেখান</translation>
 <translation id="5287240709317226393">কুকিজ দেখান</translation>
+<translation id="5287456746628258573">এই সাইটটি পুরনো সিকিউরিটি কনফিগারেশন ব্যবহার করে তাই আপনার সংবেদনশীল তথ্য (যেমন, পাসওয়ার্ড বা ক্রেডিট কার্ডের নম্বর) এই সাইটে পাঠানোর সময় এইসব তথ্যের নিরাপত্তা বিঘ্নিত হতে পারে।</translation>
 <translation id="5288108484102287882">নীতির মূল্য যাচাইকরণ থেকে সতর্কতা পাওয়া গেছে</translation>
 <translation id="5299298092464848405">নীতি বিশ্লেষণ করার সময় ত্রুটি</translation>
 <translation id="5300589172476337783">দেখান</translation>
@@ -1011,6 +1015,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> খুলছে…</translation>
 <translation id="5947933617628957894">হ্যাঁ, সেভ করে রাখুন</translation>
 <translation id="5951495562196540101">ক্রেতার অ্যাকাউন্টের মাধ্যমে এনরোল করা যাচ্ছে না (প্যাকেজ লাইসেন্স পাওয়া যাবে)৷</translation>
+<translation id="5966900314707961320">এটি চালু করা থাকলে যেসব কুকি ওয়েব জুড়ে আপনার অ্যাক্টিভিটি ট্র্যাক করে সেগুলি সাইট ব্যবহার করতে পারবে না</translation>
 <translation id="5967592137238574583">পরিচিতির তথ্য সম্পাদনা করুন</translation>
 <translation id="5967867314010545767">ইতিহাস থেকে সরান</translation>
 <translation id="5975083100439434680">ছোট করুন</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">চালিয়ে গেলে চার্জ দিতে হতে পারে।</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{আরও ১টি প্রস্তাব}one{অন্যান্য #টি প্রস্তাব}other{অন্যান্য #টি প্রস্তাব}}</translation>
 <translation id="6387754724289022810">পরের বার আরও দ্রুত পেমেন্ট করা জন্য আপনার এই কার্ড এবং বিলিং ঠিকানাটি Google অ্যাকাউন্টে এবং এই ডিভাইসে সেভ করে রাখুন।</translation>
+<translation id="6389470377220713856">কার্ডে থাকা নাম</translation>
 <translation id="6390200185239044127">অর্ধেক জেড-ফোল্ড</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">এই নীতি বন্ধ করে দেওয়া হয়েছে। পরিবর্তে আপনাকে <ph name="NEW_POLICY" /> নীতি ব্যবহার করতে হবে।</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">অ্যাফিলিয়েট কিনা:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">এই সাইট থেকে বেরিয়ে আসুন</translation>
 <translation id="7353601530677266744">কম্যান্ড লাইন</translation>
 <translation id="7372973238305370288">ফলাফল খুঁজুন</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1443,6 +1448,7 @@
 <translation id="8131740175452115882">নিশ্চিত হন</translation>
 <translation id="8149426793427495338">আপনার কম্পিউটারটি নিদ্রা মোডে গিয়েছে।</translation>
 <translation id="8150722005171944719"><ph name="URL" />এ ফাইলটি পাঠযোগ্য নয়৷ এটা মুছে ফেলা হয়েছে পারে, সরিয়ে দেওয়া হয়েছে, অথবা ফাইল অনুমতি প্রবেশাধিকার প্রতিরোধ করতে পারে৷</translation>
+<translation id="8157295877370077682">সাইট থেকে বেরিয়ে আসুন</translation>
 <translation id="8163866351304776260">বাঁদিকে কোয়াড পাঞ্চ</translation>
 <translation id="8175796834047840627">আপনি সাইন-ইন করে রয়েছেন বলে, Chrome আপনার কার্ডগুলি আপনার Google অ্যাকাউন্টে সেভ করার অফার করছে। সেটিংসে গিয়ে এই আচরণটি পরিবর্তন করতে পারেন।</translation>
 <translation id="8184538546369750125">বিশ্বব্যাপী ডিফল্ট ব্যবহার করুন (অনুমতি দিন)</translation>
diff --git a/components/strings/components_strings_ca.xtb b/components/strings/components_strings_ca.xtb
index 28d10c5f5..7e6692f 100644
--- a/components/strings/components_strings_ca.xtb
+++ b/components/strings/components_strings_ca.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Obre les pàgines d'inici</translation>
 <translation id="1883255238294161206">Redueix la llista</translation>
 <translation id="1898423065542865115">Filtratge</translation>
+<translation id="1901443836186977402">{1,plural, =1{El servidor no ha pogut comprovar que sigui <ph name="DOMAIN" /> perquè el seu certificat de seguretat va caducar l'últim dia. Això pot ser a causa d'una configuració incorrecta o d'un atacant que ha interceptat la teva connexió. Actualment, el rellotge del teu ordinador està configurat amb la data <ph name="CURRENT_DATE" />. És correcta? Si no ho és, corregeix el rellotge del sistema i, a continuació, actualitza aquesta pàgina.}other{Aquest servidor no ha pogut demostrar que és <ph name="DOMAIN" /> perquè el seu certificat de seguretat va caducar fa # dies. Això pot ser a causa d'una configuració incorrecta o d'un atacant que ha interceptat la teva connexió. Actualment, el rellotge del teu ordinador està configurat amb la data <ph name="CURRENT_DATE" />. És correcta? Si no ho és, corregeix el rellotge del sistema i, a continuació, actualitza aquesta pàgina.}}</translation>
 <translation id="1914326953223720820">Descomprimeix el servei</translation>
 <translation id="1915697529809968049">Vols utilitzar Touch ID en lloc del CVC?</translation>
 <translation id="1916770123977586577">Per aplicar la configuració actualitzada a aquest lloc web, torna a carregar la pàgina</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">Laminat</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Proveu d'executar el Diagnòstic de connectivitat<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Ves a <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Cap}=1{dades d'inici de sessió per a 1 compte}other{dades d'inici de sessió per a # comptes}}</translation>
 <translation id="3145945101586104090">No s'ha pogut descodificar la resposta</translation>
 <translation id="3150653042067488994">Error temporal del servidor</translation>
@@ -813,6 +815,7 @@
 <translation id="5043480802608081735">Enllaç que has copiat</translation>
 <translation id="5045550434625856497">Contrasenya incorrecta</translation>
 <translation id="5056549851600133418">Articles que et poden interessar</translation>
+<translation id="5061227663725596739">Volies dir <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 en ús)}other{(# en ús)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Comproveu l'adreça del servidor intermediari<ph name="END_LINK" /></translation>
@@ -866,6 +869,7 @@
 <translation id="5284909709419567258">Adreces de xarxa</translation>
 <translation id="5285570108065881030">Mostra totes les contrasenyes desades</translation>
 <translation id="5287240709317226393">Mostra les galetes</translation>
+<translation id="5287456746628258573">Aquest lloc web utilitza una configuració de seguretat obsoleta i, per tant, la informació que hi enviïs podria quedar exposada (per exemple, les contrasenyes o els números de les targetes de crèdit).</translation>
 <translation id="5288108484102287882">La validació dels valors de la política ha generat advertiments</translation>
 <translation id="5299298092464848405">S'ha produït un error en analitzar la política</translation>
 <translation id="5300589172476337783">Mostra</translation>
@@ -993,6 +997,7 @@
 <translation id="5946937721014915347">S'està obrint <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Sí, afegeix</translation>
 <translation id="5951495562196540101">El dispositiu no es pot inscriure amb un compte de consumidor (hi ha una llicència associada disponible).</translation>
+<translation id="5966900314707961320">Quan està activada, els llocs web no poden utilitzar galetes que facin un seguiment de la teva activitat al web</translation>
 <translation id="5967592137238574583">Edita la informació de contacte</translation>
 <translation id="5967867314010545767">Elimina de l'historial</translation>
 <translation id="5975083100439434680">Redueix</translation>
@@ -1075,6 +1080,7 @@
 <translation id="6383221683286411806">Aquest lloc web et pot fer càrrecs.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 suggeriment més}other{# suggeriments més}}</translation>
 <translation id="6387754724289022810">Perquè la propera vegada puguis pagar més ràpidament, desa la targeta i l'adreça de facturació al compte de Google i en aquest dispositiu.</translation>
+<translation id="6389470377220713856">Titular de la targeta</translation>
 <translation id="6390200185239044127">Plegat en Z fins a la meitat</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Aquesta política es considera obsoleta. Hauries de fer servir la política <ph name="NEW_POLICY" />.</translation>
@@ -1253,7 +1259,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Està afiliat:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Surt d'aquest lloc web</translation>
 <translation id="7353601530677266744">Línia d'ordres</translation>
 <translation id="7372973238305370288">resultat de la cerca</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1426,6 +1431,7 @@
 <translation id="8131740175452115882">Confirma</translation>
 <translation id="8149426793427495338">L'ordinador ha entrat en mode de repòs.</translation>
 <translation id="8150722005171944719">El fitxer de <ph name="URL" /> no es pot llegir. Pot ser que s'hagi eliminat, que s'hagi traslladat o que els permisos del fitxer n'impedeixin l'accés.</translation>
+<translation id="8157295877370077682">Surt del lloc web</translation>
 <translation id="8163866351304776260">Encunyació quàdruple a l'esquerra</translation>
 <translation id="8175796834047840627">Chrome t'està oferint desar les targetes al Compte de Google perquè tens la sessió iniciada. Pots canviar aquest comportament a la configuració.</translation>
 <translation id="8184538546369750125">Utilitza l'opció predeterminada global (Permet)</translation>
diff --git a/components/strings/components_strings_cs.xtb b/components/strings/components_strings_cs.xtb
index 1fd7d41..1c611b3 100644
--- a/components/strings/components_strings_cs.xtb
+++ b/components/strings/components_strings_cs.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Otevřít počáteční stránky</translation>
 <translation id="1883255238294161206">Sbalit seznam</translation>
 <translation id="1898423065542865115">Filtrování</translation>
+<translation id="1901443836186977402">{1,plural, =1{Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Platnost jeho bezpečnostního certifikátu včera vypršela. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník. Hodiny ve vašem počítači jsou aktuálně nastaveny na <ph name="CURRENT_DATE" />. Je to správně? Pokud ne, měli byste hodiny systému nastavit správně a poté tuto stránku načíst znovu.}few{Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Platnost jeho bezpečnostního certifikátu vypršela před # dny. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník. Hodiny ve vašem počítači jsou aktuálně nastaveny na <ph name="CURRENT_DATE" />. Je to správně? Pokud ne, měli byste hodiny systému nastavit správně a poté tuto stránku načíst znovu.}many{Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Platnost jeho bezpečnostního certifikátu vypršela před # dne. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník. Hodiny ve vašem počítači jsou aktuálně nastaveny na <ph name="CURRENT_DATE" />. Je to správně? Pokud ne, měli byste hodiny systému nastavit správně a poté tuto stránku načíst znovu.}other{Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Platnost jeho bezpečnostního certifikátu vypršela před # dny. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník. Hodiny ve vašem počítači jsou aktuálně nastaveny na <ph name="CURRENT_DATE" />. Je to správně? Pokud ne, měli byste hodiny systému nastavit správně a poté tuto stránku načíst znovu.}}</translation>
 <translation id="1914326953223720820">Služba rozbalování souborů ZIP</translation>
 <translation id="1915697529809968049">Použít Touch ID namísto CVC?</translation>
 <translation id="1916770123977586577">Chcete-li pro tento web použít aktualizovaná nastavení, načtěte tuto stránku znovu</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">Laminování</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Zkuste spustit Diagnostiku připojení<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Přejít na web <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Žádné}=1{přihlašovací údaje pro 1 účet}few{přihlašovací údaje pro # účty}many{přihlašovací údaje pro # účtu}other{přihlašovací údaje pro # účtů}}</translation>
 <translation id="3145945101586104090">Dekódování odpovědi se nezdařilo</translation>
 <translation id="3150653042067488994">Dočasná chyba serveru</translation>
@@ -809,6 +811,7 @@
 <translation id="5043480802608081735">Zkopírovaný odkaz</translation>
 <translation id="5045550434625856497">Nesprávné heslo</translation>
 <translation id="5056549851600133418">Články pro vás</translation>
+<translation id="5061227663725596739">Měli jste na mysli <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(používá se 1)}few{(používají se #)}many{(používá se #)}other{(používá se #)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Zkontrolovat adresu proxy serveru<ph name="END_LINK" /></translation>
@@ -862,6 +865,7 @@
 <translation id="5284909709419567258">Síťové adresy</translation>
 <translation id="5285570108065881030">Zobrazit všechna uložená hesla</translation>
 <translation id="5287240709317226393">Zobrazit soubory cookie</translation>
+<translation id="5287456746628258573">Tento web používá zastaralou konfiguraci zabezpečení, která vaše informace odesílané na tento web (například hesla nebo čísla kreditních karet) vystavuje riziku odhalení.</translation>
 <translation id="5288108484102287882">Ověření hodnot zásad vygenerovalo upozornění</translation>
 <translation id="5299298092464848405">Při analýze zásady došlo k chybě</translation>
 <translation id="5300589172476337783">Zobrazit</translation>
@@ -989,6 +993,7 @@
 <translation id="5946937721014915347">Otevírání webu <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Ano, přidat</translation>
 <translation id="5951495562196540101">Pomocí běžného uživatelského účtu se nelze zaregistrovat (je k dispozici licence v balíčku).</translation>
+<translation id="5966900314707961320">Když je tato možnost zapnutá, weby vás na internetu nemohou sledovat pomocí souborů cookie</translation>
 <translation id="5967592137238574583">Úprava kontaktních údajů</translation>
 <translation id="5967867314010545767">Odstranit z historie</translation>
 <translation id="5975083100439434680">Oddálit</translation>
@@ -1070,6 +1075,7 @@
 <translation id="6383221683286411806">Pozor na možné poplatky na webu, který se chystáte navštívit</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 další návrh}few{# další návrhy}many{# dalšího návrhu}other{# dalších návrhů}}</translation>
 <translation id="6387754724289022810">Abyste příště mohli zaplatit rychleji, uložte si kartu a fakturační adresu do účtu Google a do tohoto zařízení.</translation>
+<translation id="6389470377220713856">Jméno na kartě</translation>
 <translation id="6390200185239044127">Přeložení napůl do Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Podpora této zásady byla ukončena. Měli byste místo ní používat zásadu <ph name="NEW_POLICY" />.</translation>
@@ -1247,7 +1253,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Je přidružený:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Opustit tento web</translation>
 <translation id="7353601530677266744">Příkazový řádek</translation>
 <translation id="7372973238305370288">výsledek vyhledávání</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1420,6 +1425,7 @@
 <translation id="8131740175452115882">Potvrdit</translation>
 <translation id="8149426793427495338">Počítač přešel do režimu spánku.</translation>
 <translation id="8150722005171944719">Soubor na adrese <ph name="URL" /> nelze načíst. Možná byl odstraněn, přesunut nebo mohou přístupu bránit oprávnění souboru.</translation>
+<translation id="8157295877370077682">Opustit web</translation>
 <translation id="8163866351304776260">Čtyři díry vlevo</translation>
 <translation id="8175796834047840627">Chrome vám nabízí uložení karet do účtu Google, protože jste přihlášeni. Toto chování můžete změnit v Nastavení.</translation>
 <translation id="8184538546369750125">Použít výchozí globální hodnotu (Povolit)</translation>
diff --git a/components/strings/components_strings_da.xtb b/components/strings/components_strings_da.xtb
index a54e33e..2bd2a83 100644
--- a/components/strings/components_strings_da.xtb
+++ b/components/strings/components_strings_da.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Åbn opstartssider</translation>
 <translation id="1883255238294161206">Skjul liste</translation>
 <translation id="1898423065542865115">Filtrering</translation>
+<translation id="1901443836186977402">{1,plural, =1{Denne server kunne ikke bevise, at den er <ph name="DOMAIN" />, da sikkerhedscertifikatet udløb inden for det seneste døgn. Dette kan skyldes en fejlkonfiguration, eller at en hacker har opfanget din forbindelse. Din computers ur er i øjeblikket indstillet til <ph name="CURRENT_DATE" />. Er det korrekt? Hvis ikke, skal du indstille uret korrekt og derefter opdatere denne side.}one{Denne server kunne ikke bevise, at den er <ph name="DOMAIN" />, da sikkerhedscertifikatet udløb for # dag siden. Dette kan skyldes en fejlkonfiguration, eller at en hacker har opfanget din forbindelse. Uret på din computer er indstillet til <ph name="CURRENT_DATE" />. Er det korrekt? Hvis ikke, skal du indstille uret korrekt og opdatere denne side.}other{Denne server kunne ikke bevise, at den er <ph name="DOMAIN" />, da sikkerhedscertifikatet udløb for # dage siden. Dette kan skyldes en fejlkonfiguration, eller at en hacker har opfanget din forbindelse. Uret på din computer er indstillet til <ph name="CURRENT_DATE" />. Er det korrekt? Hvis ikke, skal du indstille uret korrekt og opdatere denne side.}}</translation>
 <translation id="1914326953223720820">Udpakningstjeneste</translation>
 <translation id="1915697529809968049">Vil du bruge Touch ID i stedet for kontrolkoden?</translation>
 <translation id="1916770123977586577">Genindlæs denne side for at anvende dine opdaterede indstillinger på dette website</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminering</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Prøv at køre Diagnosticering af forbindelse<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Gå til <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Ingen}=1{logindata for en konto}one{logindata for # konto}other{logindata for # konti}}</translation>
 <translation id="3145945101586104090">Svaret kunne ikke afkodes</translation>
 <translation id="3150653042067488994">Midlertidig serverfejl</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Link, du har kopieret</translation>
 <translation id="5045550434625856497">Ugyldig adgangskode</translation>
 <translation id="5056549851600133418">Artikler til dig</translation>
+<translation id="5061227663725596739">Mente du <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 i brug)}one{(# i brug)}other{(# i brug)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Tjekke proxy-adressen<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Netværksadresser</translation>
 <translation id="5285570108065881030">Se alle gemte adgangskoder</translation>
 <translation id="5287240709317226393">Vis cookies</translation>
+<translation id="5287456746628258573">Dette website benytter en forældet sikkerhedskonfiguration, der muligvis afslører dine oplysninger (f.eks. adgangskoder eller betalingskortnumre), når de sendes til dette website.</translation>
 <translation id="5288108484102287882">Validering af politikværdier har genereret advarsler</translation>
 <translation id="5299298092464848405">Der opstod en fejl ved parsing af politik</translation>
 <translation id="5300589172476337783">Vis</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">Åbner <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Ja, tilføj</translation>
 <translation id="5951495562196540101">Det er ikke muligt at tilmelde sig med en forbrugerkonto (mulighed for tilknyttet licens ).</translation>
+<translation id="5966900314707961320">Når denne indstilling er aktiveret, kan websites ikke anvende cookies, der sporer din aktivitet på nettet</translation>
 <translation id="5967592137238574583">Rediger kontaktoplysninger</translation>
 <translation id="5967867314010545767">Fjern fra historik</translation>
 <translation id="5975083100439434680">Zoom ud</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">Potentielle debiteringer forude</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 andet forslag}one{# andet forslag}other{# andre forslag}}</translation>
 <translation id="6387754724289022810">Gem dit kort og din faktureringsadresse på din Google-konto og denne enhed for at betale hurtigere næste gang.</translation>
+<translation id="6389470377220713856">Navn på kort</translation>
 <translation id="6390200185239044127">Z-fals halvt</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Denne politik er udfaset. Du bør bruge politikken <ph name="NEW_POLICY" /> i stedet.</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Er tilknyttet:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Forlad dette website</translation>
 <translation id="7353601530677266744">Kommandolinje</translation>
 <translation id="7372973238305370288">søgeresultat</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1443,6 +1448,7 @@
 <translation id="8131740175452115882">Bekræft</translation>
 <translation id="8149426793427495338">Din computer gik i dvale.</translation>
 <translation id="8150722005171944719">Filen i <ph name="URL" /> kan ikke læses. Den kan være blevet fjernet, flyttet, eller også forhindrer filtilladelser muligvis adgangen.</translation>
+<translation id="8157295877370077682">Forlad website</translation>
 <translation id="8163866351304776260">Fire huller i venstre side</translation>
 <translation id="8175796834047840627">Chrome tilbyder at gemme dine kort på din Google-konto, fordi du er logget ind. Du kan ændre dette i indstillingerne.</translation>
 <translation id="8184538546369750125">Brug global standard (tillad)</translation>
diff --git a/components/strings/components_strings_de.xtb b/components/strings/components_strings_de.xtb
index 609ee34..243bfdc7 100644
--- a/components/strings/components_strings_de.xtb
+++ b/components/strings/components_strings_de.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">"Beim Start"-Seiten öffnen</translation>
 <translation id="1883255238294161206">Liste ausblenden</translation>
 <translation id="1898423065542865115">Filtern</translation>
+<translation id="1901443836186977402">{1,plural, =1{Dieser Server konnte nicht beweisen, dass er <ph name="DOMAIN" /> ist. Sein Sicherheitszertifikat ist in den letzten 24 Stunden abgelaufen. Mögliche Gründe sind eine fehlerhafte Konfiguration oder ein Angreifer, der Ihre Verbindung abfängt. Die Uhr Ihres Computers ist derzeit auf <ph name="CURRENT_DATE" /> eingestellt. Ist das korrekt? Falls nicht, stellen Sie die Uhr Ihres Systems richtig ein und aktualisieren Sie anschließend diese Seite.}other{Dieser Server konnte nicht beweisen, dass er <ph name="DOMAIN" /> ist. Sein Sicherheitszertifikat ist vor # Tagen abgelaufen. Mögliche Gründe sind eine fehlerhafte Konfiguration oder ein Angreifer, der Ihre Verbindung abfängt. Die Uhr Ihres Computers ist momentan auf <ph name="CURRENT_DATE" /> eingestellt. Ist das richtig? Wenn nicht, korrigieren Sie die Uhrzeit Ihres Systems und aktualisieren Sie dann diese Seite.}}</translation>
 <translation id="1914326953223720820">Dienst entpacken</translation>
 <translation id="1915697529809968049">Touch ID anstelle des CVCs verwenden?</translation>
 <translation id="1916770123977586577">Laden Sie diese Seite neu, um die aktualisierten Einstellungen für diese Website zu übernehmen</translation>
@@ -439,6 +440,7 @@
 <translation id="3116158981186517402">Laminieren</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Versuchen Sie, die Verbindungsdiagnose auszuführen.<ph name="END_LINK" /></translation>
+<translation id="3121994479408824897">Zu <ph name="DOMAIN" /> wechseln</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Keine}=1{Anmeldedaten für 1 Konto}other{Anmeldedaten für # Konten}}</translation>
 <translation id="3145945101586104090">Fehler beim Dekodieren der Antwort</translation>
 <translation id="3150653042067488994">Vorübergehender Serverfehler</translation>
@@ -818,6 +820,7 @@
 <translation id="5043480802608081735">Von Ihnen kopierter Link</translation>
 <translation id="5045550434625856497">Falsches Passwort</translation>
 <translation id="5056549851600133418">Artikel für mich</translation>
+<translation id="5061227663725596739">Meinten Sie <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 wird verwendet)}other{(# werden verwendet)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Proxyadresse prüfen<ph name="END_LINK" /></translation>
@@ -871,6 +874,7 @@
 <translation id="5284909709419567258">Netzwerkadressen</translation>
 <translation id="5285570108065881030">Alle gespeicherten Passwörter anzeigen</translation>
 <translation id="5287240709317226393">Cookies anzeigen</translation>
+<translation id="5287456746628258573">Diese Website nutzt eine veraltete Sicherheitskonfiguration. Hierdurch können Informationen wie etwa Passwörter oder Kreditkartennummern, die an diese Website gesendet werden, in die Hände Unbefugter gelangen.</translation>
 <translation id="5288108484102287882">Die Validierung der Richtlinienwerte hat Warnungen ergeben</translation>
 <translation id="5299298092464848405">Fehler beim Parsen der Richtlinie</translation>
 <translation id="5300589172476337783">Anzeigen</translation>
@@ -998,6 +1002,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> wird geöffnet…</translation>
 <translation id="5947933617628957894">Ja, hinzufügen</translation>
 <translation id="5951495562196540101">Registrierung mit Kundenkonto nicht möglich (Paketlizenz verfügbar).</translation>
+<translation id="5966900314707961320">Bei Aktivierung der Funktion können Websites keine Cookies verwenden, die Sie im gesamten Web nachverfolgen</translation>
 <translation id="5967592137238574583">Kontaktdaten bearbeiten</translation>
 <translation id="5967867314010545767">Aus Verlauf entfernen</translation>
 <translation id="5975083100439434680">Verkleinern</translation>
@@ -1080,6 +1085,7 @@
 <translation id="6383221683286411806">Warnung vor möglichen Kosten.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 weiterer Vorschlag}other{# weitere Vorschläge}}</translation>
 <translation id="6387754724289022810">Damit Zahlungen zukünftig schneller abgewickelt werden können, speichern Sie Ihre Kreditkartendaten und Ihre Rechnungsadresse in Ihrem Google-Konto und auf diesem Gerät.</translation>
+<translation id="6389470377220713856">Name auf Karte</translation>
 <translation id="6390200185239044127">Halbierte Z-Faltung</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Diese Richtlinie ist veraltet. Verwenden Sie stattdessen die Richtlinie "<ph name="NEW_POLICY" />".</translation>
@@ -1258,7 +1264,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Ist verknüpft:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Diese Website verlassen</translation>
 <translation id="7353601530677266744">Befehlszeile</translation>
 <translation id="7372973238305370288">Suchergebnis</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1431,6 +1436,7 @@
 <translation id="8131740175452115882">Bestätigen</translation>
 <translation id="8149426793427495338">Ihr Computer ist im Ruhemodus.</translation>
 <translation id="8150722005171944719">Die Datei unter <ph name="URL" /> kann nicht gelesen werden. Sie wurde möglicherweise entfernt oder verschoben oder die Dateiberechtigungen verhindern den Zugriff.</translation>
+<translation id="8157295877370077682">Website verlassen</translation>
 <translation id="8163866351304776260">Vierfache Lochung links</translation>
 <translation id="8175796834047840627">Chrome bietet Ihnen die Möglichkeit, die Karten in Ihrem Google-Konto zu speichern, weil Sie angemeldet sind. Sie können dies in den Einstellungen ändern.</translation>
 <translation id="8184538546369750125">Globalen Standard verwenden (Zulassen)</translation>
diff --git a/components/strings/components_strings_el.xtb b/components/strings/components_strings_el.xtb
index 72e09e8..3b51f55 100644
--- a/components/strings/components_strings_el.xtb
+++ b/components/strings/components_strings_el.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Άνοιγμα σελίδων εκκίνησης</translation>
 <translation id="1883255238294161206">Σύμπτυξη λίστας</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>
 <translation id="1914326953223720820">Υπηρεσία αποσυμπίεσης</translation>
 <translation id="1915697529809968049">Χρήση Touch ID αντί του CVC;</translation>
 <translation id="1916770123977586577">Προκειμένου να εφαρμοστούν οι ενημερωμένες ρυθμίσεις σας σε αυτόν τον ιστότοπο, επαναλάβετε τη φόρτωση αυτής της σελίδες</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Πλαστικοποίηση</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Δοκιμάστε να εκτελέσετε τα Διαγνωστικά στοιχεία συνδεσιμότητας<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Μετάβαση σε <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Κανένα}=1{δεδομένα σύνδεσης για 1 λογαριασμό}other{δεδομένα σύνδεσης για # λογαριασμούς}}</translation>
 <translation id="3145945101586104090">Αποτυχία αποκωδικοποίησης απόκρισης</translation>
 <translation id="3150653042067488994">Προσωρινό σφάλμα διακομιστή</translation>
@@ -830,6 +832,7 @@
 <translation id="5043480802608081735">Σύνδεσμος που αντιγράψατε</translation>
 <translation id="5045550434625856497">Λανθασμένος κωδικός πρόσβασης</translation>
 <translation id="5056549851600133418">Άρθρα για εσάς</translation>
+<translation id="5061227663725596739">Μήπως εννοούσατε <ph name="LOOKALIKE_DOMAIN" />;</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>
@@ -883,6 +886,7 @@
 <translation id="5284909709419567258">Διευθύνσεις δικτύου</translation>
 <translation id="5285570108065881030">Εμφάνιση όλων των αποθηκευμένων κωδικών πρόσβασης</translation>
 <translation id="5287240709317226393">Εμφάνιση cookie</translation>
+<translation id="5287456746628258573">Αυτός ο ιστότοπος χρησιμοποιεί μια παρωχημένη διαμόρφωση ασφαλείας, η οποία μπορεί να εκθέσει τις πληροφορίες σας (για παράδειγμα, τους κωδικούς πρόσβασης ή τα στοιχεία των πιστωτικών σας καρτών) κατά την αποστολή της σε αυτόν τον ιστότοπο.</translation>
 <translation id="5288108484102287882">Η επικύρωση των τιμών πολιτικής είχε ως αποτέλεσμα την εμφάνιση προειδοποιήσεων</translation>
 <translation id="5299298092464848405">Σφάλμα ανάλυσης πολιτικής</translation>
 <translation id="5300589172476337783">Εμφάνιση</translation>
@@ -1011,6 +1015,7 @@
 <translation id="5946937721014915347">Άνοιγμα <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Ναι, να προστεθεί</translation>
 <translation id="5951495562196540101">Δεν είναι δυνατή η εγγραφή με λογαριασμό καταναλωτή (διατίθεται σχετική άδεια).</translation>
+<translation id="5966900314707961320">Όταν είναι ενεργοποιημένο, οι ιστότοποι δεν μπορούν να χρησιμοποιήσουν cookie που σας παρακολουθούν στο ιστό.</translation>
 <translation id="5967592137238574583">Επεξεργασία στοιχείων επικοινωνίας</translation>
 <translation id="5967867314010545767">Κατάργηση από το ιστορικό</translation>
 <translation id="5975083100439434680">Σμίκρυνση</translation>
@@ -1093,6 +1098,7 @@
 <translation id="6383221683286411806">Ακολουθούν πιθανές χρεώσεις.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 πρόταση ακόμα}other{# προτάσεις ακόμα}}</translation>
 <translation id="6387754724289022810">Για πιο γρήγορες πληρωμές, αποθηκεύστε τα στοιχεία της κάρτας και τη διεύθυνση χρέωσης στον Λογαριασμό σας Google και σε αυτήν τη συσκευή.</translation>
+<translation id="6389470377220713856">Όνομα σε κάρτα</translation>
 <translation id="6390200185239044127">Δίπλωμα Z στη μέση</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Αυτή η πολιτική έχει καταργηθεί. Θα πρέπει να χρησιμοποιήσετε εναλλακτικά την πολιτική <ph name="NEW_POLICY" />.</translation>
@@ -1271,7 +1277,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Είναι συνδεδεμένος:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Αποχώρηση από αυτόν τον ιστότοπο</translation>
 <translation id="7353601530677266744">Γραμμή εντολών</translation>
 <translation id="7372973238305370288">αποτέλεσμα αναζήτησης</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1444,6 +1449,7 @@
 <translation id="8131740175452115882">Επιβεβαίωση</translation>
 <translation id="8149426793427495338">Ο υπολογιστής σας τέθηκε σε αδράνεια.</translation>
 <translation id="8150722005171944719">Δεν είναι δυνατή η ανάγνωση του αρχείου στη διεύθυνση <ph name="URL" />. Ενδέχεται να καταργήθηκε, να μετακινήθηκε ή τα δικαιώματα αρχείου μπορεί να μην επιτρέπουν την πρόσβαση.</translation>
+<translation id="8157295877370077682">Αποχώρηση από τον ιστότοπο</translation>
 <translation id="8163866351304776260">Τετραπλό τρύπημα στα αριστερά</translation>
 <translation id="8175796834047840627">Το Chrome προσφέρεται να αποθηκεύσει τις κάρτες σας στον Λογαριασμό σας Google επειδή έχετε συνδεθεί. Μπορείτε να αλλάξετε αυτήν τη συμπεριφορά στις ρυθμίσεις.</translation>
 <translation id="8184538546369750125">Χρήση καθολικής προεπιλεγμένης ρύθμισης (Επιτρέπεται)</translation>
diff --git a/components/strings/components_strings_en-GB.xtb b/components/strings/components_strings_en-GB.xtb
index 1a442c2..a7bae3b 100644
--- a/components/strings/components_strings_en-GB.xtb
+++ b/components/strings/components_strings_en-GB.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Open startup pages</translation>
 <translation id="1883255238294161206">Collapse list</translation>
 <translation id="1898423065542865115">Filtering</translation>
+<translation id="1901443836186977402">{1,plural, =1{This server could not prove that it is <ph name="DOMAIN" />; its security certificate expired in the last day. This may be caused by a misconfiguration or an attacker intercepting your connection. Your computer's clock is currently set to <ph name="CURRENT_DATE" />. Does that look right? If not, you should correct your system's clock and then refresh this page.}other{This server could not prove that it is <ph name="DOMAIN" />; its security certificate expired # days ago. This may be caused by a misconfiguration or an attacker intercepting your connection. Your computer's clock is currently set to <ph name="CURRENT_DATE" />. Does that look right? If not, you should correct your system's clock and then refresh this page.}}</translation>
 <translation id="1914326953223720820">Unzip Service</translation>
 <translation id="1915697529809968049">Use touch ID instead of CVC?</translation>
 <translation id="1916770123977586577">To apply your updated settings to this site, reload this page</translation>
@@ -437,6 +438,7 @@
 <translation id="3116158981186517402">Laminate</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Try running Connectivity Diagnostics<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Go to <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{None}=1{sign-in data for 1 account}other{sign-in data for # accounts}}</translation>
 <translation id="3145945101586104090">Failed to decode response</translation>
 <translation id="3150653042067488994">Temporary server error</translation>
@@ -815,6 +817,7 @@
 <translation id="5043480802608081735">Link that you copied</translation>
 <translation id="5045550434625856497">Incorrect password</translation>
 <translation id="5056549851600133418">Articles for you</translation>
+<translation id="5061227663725596739">Did you mean <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 in use)}other{(# in use)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Checking the proxy address<ph name="END_LINK" /></translation>
@@ -868,6 +871,7 @@
 <translation id="5284909709419567258">Network addresses</translation>
 <translation id="5285570108065881030">Show all saved passwords</translation>
 <translation id="5287240709317226393">Show cookies</translation>
+<translation id="5287456746628258573">This site uses an outdated security configuration, which may expose your information (for example, passwords or credit card numbers) when it is sent to this site.</translation>
 <translation id="5288108484102287882">Validation of policy values has raised warnings</translation>
 <translation id="5299298092464848405">Error parsing policy</translation>
 <translation id="5300589172476337783">Show</translation>
@@ -996,6 +1000,7 @@
 <translation id="5946937721014915347">Opening <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Yes, add</translation>
 <translation id="5951495562196540101">Can't enrol with consumer account (packaged licence available).</translation>
+<translation id="5966900314707961320">When turned on, sites can’t use cookies that track you across the web</translation>
 <translation id="5967592137238574583">Edit Contact Info</translation>
 <translation id="5967867314010545767">Remove from history</translation>
 <translation id="5975083100439434680">Zoom out</translation>
@@ -1078,6 +1083,7 @@
 <translation id="6383221683286411806">Potential charges ahead.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 other suggestion}other{# other suggestions}}</translation>
 <translation id="6387754724289022810">To pay faster next time, save your card and billing address to your Google Account and to this device.</translation>
+<translation id="6389470377220713856">Name on Card</translation>
 <translation id="6390200185239044127">Z-fold half</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">This policy is deprecated. You should use the <ph name="NEW_POLICY" /> policy instead.</translation>
@@ -1256,7 +1262,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Is affiliated:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Leave this site</translation>
 <translation id="7353601530677266744">Command Line</translation>
 <translation id="7372973238305370288">search result</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1429,6 +1434,7 @@
 <translation id="8131740175452115882">Confirm</translation>
 <translation id="8149426793427495338">Your computer went to sleep.</translation>
 <translation id="8150722005171944719">The file at <ph name="URL" /> is not readable.  It may have been removed, moved or file permissions may be preventing access.</translation>
+<translation id="8157295877370077682">Leave site</translation>
 <translation id="8163866351304776260">Quad punch left</translation>
 <translation id="8175796834047840627">Chrome is offering to save your cards in your Google Account because you are signed in. You can change this behaviour in settings.</translation>
 <translation id="8184538546369750125">Use global default (Allow)</translation>
diff --git a/components/strings/components_strings_es-419.xtb b/components/strings/components_strings_es-419.xtb
index 58066d2..52ff762 100644
--- a/components/strings/components_strings_es-419.xtb
+++ b/components/strings/components_strings_es-419.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Abrir páginas de inicio</translation>
 <translation id="1883255238294161206">Ocultar lista</translation>
 <translation id="1898423065542865115">Filtrado</translation>
+<translation id="1901443836186977402">{1,plural, =1{Este servidor no puedo probar que su dominio sea <ph name="DOMAIN" />; su certificado de seguridad venció en el último día. Es posible que se deba a una configuración incorrecta o a que un atacante haya interceptado tu conexión. El reloj de la computadora actualmente está configurado en la siguiente fecha: <ph name="CURRENT_DATE" />. ¿Es correcto? De no ser así, corrige el reloj del sistema y, luego, actualiza esta página.}other{Este servidor no pudo probar que su dominio sea <ph name="DOMAIN" />; el certificado de seguridad venció hace # días. Es posible que esto se deba a una configuración incorrecta o a que un atacante haya interceptado tu conexión. El reloj de la computadora actualmente está configurado en la siguiente fecha: <ph name="CURRENT_DATE" />. ¿Es correcto? De no ser así, corrige el reloj del sistema y, luego, actualiza la página.}}</translation>
 <translation id="1914326953223720820">Servicio de descompresión</translation>
 <translation id="1915697529809968049">¿Deseas usar Touch ID en lugar de CVC?</translation>
 <translation id="1916770123977586577">Para aplicar la configuración actualizada en este sitio, vuelve a cargar la página</translation>
@@ -443,6 +444,7 @@
 <translation id="3116158981186517402">Laminado</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Intenta ejecutar el Diagnóstico de conectividad<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Ir a <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Ninguno}=1{Datos de acceso para 1 cuenta}other{Datos de acceso para # cuentas}}</translation>
 <translation id="3145945101586104090">Se produjo un error al decodificar respuesta.</translation>
 <translation id="3150653042067488994">Error temporal del servidor</translation>
@@ -828,6 +830,7 @@
 <translation id="5043480802608081735">Vínculo que copiaste</translation>
 <translation id="5045550434625856497">Contraseña incorrecta</translation>
 <translation id="5056549851600133418">Artículos para ti</translation>
+<translation id="5061227663725596739">¿Quisiste decir <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 en uso)}other{(# en uso)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Comprobar la dirección de proxy<ph name="END_LINK" />.</translation>
@@ -881,6 +884,7 @@
 <translation id="5284909709419567258">Direcciones de red</translation>
 <translation id="5285570108065881030">Mostrar todas las contraseñas guardadas</translation>
 <translation id="5287240709317226393">Mostrar cookies</translation>
+<translation id="5287456746628258573">Este sitio usa una configuración de seguridad obsoleta. Si envías información (p. ej., contraseñas o números de tarjetas de crédito) a este sitio, es posible que se filtre.</translation>
 <translation id="5288108484102287882">La validación de los valores de la política generó advertencias</translation>
 <translation id="5299298092464848405">Error al analizar la política</translation>
 <translation id="5300589172476337783">Mostrar</translation>
@@ -1008,6 +1012,7 @@
 <translation id="5946937721014915347">Abriendo <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Sí, agregar</translation>
 <translation id="5951495562196540101">No se puede realizar la inscripción con una cuenta personal (licencia de paquete disponible).</translation>
+<translation id="5966900314707961320">Cuando esta opción está activada, los sitios no pueden usar cookies que te rastreen en la Web</translation>
 <translation id="5967592137238574583">Editar la información de contacto</translation>
 <translation id="5967867314010545767">Eliminar del historial</translation>
 <translation id="5975083100439434680">Alejar</translation>
@@ -1090,6 +1095,7 @@
 <translation id="6383221683286411806">Es posible que se cobren cargos.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 sugerencia más}other{# sugerencias más}}</translation>
 <translation id="6387754724289022810">Para realizar pagos de forma más rápida la próxima vez, guarda tu tarjeta y dirección de facturación en tu cuenta de Google y en este dispositivo.</translation>
+<translation id="6389470377220713856">Nombre en tarj.</translation>
 <translation id="6390200185239044127">Plegado en Z a la mitad</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Esta política es obsoleta. En su lugar, debes usar la política <ph name="NEW_POLICY" />.</translation>
@@ -1268,7 +1274,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Se afilió:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Salir de este sitio</translation>
 <translation id="7353601530677266744">Línea de comandos</translation>
 <translation id="7372973238305370288">resultado de búsqueda</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1441,6 +1446,7 @@
 <translation id="8131740175452115882">Confirmar</translation>
 <translation id="8149426793427495338">La computadora se suspendió.</translation>
 <translation id="8150722005171944719">El archivo de <ph name="URL" /> no se puede leer. Es posible que se haya eliminado o movido o que se impida el acceso a los permisos del archivo.</translation>
+<translation id="8157295877370077682">Salir del sitio</translation>
 <translation id="8163866351304776260">Perforación cuádruple a la izquierda</translation>
 <translation id="8175796834047840627">Como accediste a tu cuenta, Chrome te ofrece guardar tus tarjetas en tu Cuenta de Google. Puedes modificar este comportamiento en la configuración.</translation>
 <translation id="8184538546369750125">Usar configuración global predeterminada (Permitir)</translation>
diff --git a/components/strings/components_strings_es.xtb b/components/strings/components_strings_es.xtb
index 687a23e..83d1e08 100644
--- a/components/strings/components_strings_es.xtb
+++ b/components/strings/components_strings_es.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Abrir páginas de inicio</translation>
 <translation id="1883255238294161206">Contraer lista</translation>
 <translation id="1898423065542865115">Filtrado</translation>
+<translation id="1901443836186977402">{1,plural, =1{Este servidor no ha podido demostrar que es <ph name="DOMAIN" />; su certificado de seguridad caducó en el último día. Este problema puede deberse a una configuración incorrecta o a que un atacante ha interceptado la conexión. El reloj de tu ordenador está establecido actualmente en las <ph name="CURRENT_DATE" />. ¿Es correcto? Si no lo es, corrige el reloj del sistema y, a continuación, actualiza esta página.}other{Este servidor no ha podido demostrar que es <ph name="DOMAIN" />; su certificado de seguridad caducó hace # días. Este problema puede deberse a una configuración incorrecta o a que un atacante ha interceptado la conexión. El reloj de tu ordenador está establecido actualmente en las <ph name="CURRENT_DATE" />. ¿Es correcto? Si no lo es, corrige el reloj del sistema y, a continuación, actualiza esta página.}}</translation>
 <translation id="1914326953223720820">Servicio de descompresión</translation>
 <translation id="1915697529809968049">¿Usar Touch ID en lugar de CVC?</translation>
 <translation id="1916770123977586577">Vuelve a cargar esta página para aplicar la configuración actualizada a este sitio web</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Plastificar</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Prueba a ejecutar Diagnóstico de conectividad<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Ir a <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Ninguno}=1{datos de inicio de sesión para 1 cuenta}other{datos de inicio de sesión para # cuentas}}</translation>
 <translation id="3145945101586104090">Error al decodificar respuesta</translation>
 <translation id="3150653042067488994">Error de servidor temporal</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Enlace copiado</translation>
 <translation id="5045550434625856497">Contraseña incorrecta</translation>
 <translation id="5056549851600133418">Artículos recomendados para ti</translation>
+<translation id="5061227663725596739">¿Querías decir <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 en uso)}other{(# en uso)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Comprobar la dirección del proxy<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Direcciones de red</translation>
 <translation id="5285570108065881030">Mostrar todas las contraseñas guardadas</translation>
 <translation id="5287240709317226393">Mostrar cookies</translation>
+<translation id="5287456746628258573">Este sitio web usa una configuración de seguridad obsoleta y puede que exponga tu información (por ejemplo, las contraseñas o los números de las tarjetas de crédito) cuando se envíe a este sitio web.</translation>
 <translation id="5288108484102287882">La validación de los valores de las políticas ha generado advertencias</translation>
 <translation id="5299298092464848405">Error al analizar la política</translation>
 <translation id="5300589172476337783">Mostrar</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">Abriendo <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Sí, añadir</translation>
 <translation id="5951495562196540101">No te puedes registrar con una cuenta de consumidor (hay una licencia asociada disponible).</translation>
+<translation id="5966900314707961320">Si activas esta opción, los sitios web no podrán usar cookies para hacer un seguimiento de tu actividad en la web</translation>
 <translation id="5967592137238574583">Edita la información de contacto</translation>
 <translation id="5967867314010545767">Eliminar del historial</translation>
 <translation id="5975083100439434680">Reducir</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">Es posible que se cobren cargos en el futuro.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{Una sugerencia más}other{# sugerencias más}}</translation>
 <translation id="6387754724289022810">Para pagar más rápido la próxima vez, guarda tu tarjeta y tu dirección de facturación en tu cuenta de Google y en este dispositivo.</translation>
+<translation id="6389470377220713856">Nombre de la tarjeta</translation>
 <translation id="6390200185239044127">Plegado al medio en Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Esta política está obsoleta. Deberías usar la política <ph name="NEW_POLICY" /> en su lugar.</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Se ha afiliado:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Salir de este sitio web</translation>
 <translation id="7353601530677266744">Línea de comandos</translation>
 <translation id="7372973238305370288">resultado de búsqueda</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1443,6 +1448,7 @@
 <translation id="8131740175452115882">Confirmar</translation>
 <translation id="8149426793427495338">El ordenador se ha suspendido.</translation>
 <translation id="8150722005171944719">El archivo que se encuentra en <ph name="URL" /> no se puede leer. Puede que se haya eliminado o movido o que los permisos del archivo impidan acceder a él.</translation>
+<translation id="8157295877370077682">Salir del sitio web</translation>
 <translation id="8163866351304776260">Perforado cuádruple en la parte izquierda</translation>
 <translation id="8175796834047840627">Chrome te ofrece guardar las tarjetas en tu cuenta de Google porque has iniciado sesión. Puedes cambiar esta opción en los ajustes.</translation>
 <translation id="8184538546369750125">Utilizar valor predeterminado global (Permitir)</translation>
diff --git a/components/strings/components_strings_et.xtb b/components/strings/components_strings_et.xtb
index 8eb257b..7493505 100644
--- a/components/strings/components_strings_et.xtb
+++ b/components/strings/components_strings_et.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Ava käivitamisel avatavad lehed</translation>
 <translation id="1883255238294161206">Ahenda loend</translation>
 <translation id="1898423065542865115">Filtreerimine</translation>
+<translation id="1901443836186977402">{1,plural, =1{See server ei suutnud tõestada, et tegemist on domeeniga <ph name="DOMAIN" />. Selle turvasertifikaat aegus viimasel päeval. Selle põhjuseks võib olla vale seadistus või teie ühendust segav ründaja. Teie arvuti kell on praegu seatud kuupäevale <ph name="CURRENT_DATE" />. Kas see on õige? Kui ei, seadke süsteemi kell õigeks ja värskendage seda lehte.}other{See server ei suutnud tõestada, et tegemist on domeeniga <ph name="DOMAIN" />. Selle turvasertifikaat on aegus # päeva tagasi. Selle põhjuseks võib olla vale seadistus või teie ühendust segav ründaja. Teie arvuti kell on praegu seatud kuupäevale <ph name="CURRENT_DATE" />. Kas see on õige? Kui ei, seadke süsteemi kell õigeks ja värskendage seda lehte.}}</translation>
 <translation id="1914326953223720820">Lahtipakkimisteenus</translation>
 <translation id="1915697529809968049">Kas kasutada CVC asemel Touch ID-d?</translation>
 <translation id="1916770123977586577">Laadige leht uuesti, et rakendada värskendatud seaded saidile</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Lamineeri</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Proovige käitada ühenduvusdiagnostikat<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Ava <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Mitte ühtki}=1{sisselogimisandmete üksus 1 konto kohta}other{sisselogimisandmete üksust # konto kohta}}</translation>
 <translation id="3145945101586104090">Vastuse dekodeerimine ebaõnnestus</translation>
 <translation id="3150653042067488994">Serveris ilmnes ajutine viga</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Teie kopeeritud link</translation>
 <translation id="5045550434625856497">Vale salasõna</translation>
 <translation id="5056549851600133418">Teile soovitatud artiklid</translation>
+<translation id="5061227663725596739">Kas mõtlesite domeeni <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 on kasutusel)}other{(# on kasutusel)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Kontrollige puhverserveri aadressi<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Võrguaadressid</translation>
 <translation id="5285570108065881030">Kuva kõik salvestatud paroolid</translation>
 <translation id="5287240709317226393">Kuva küpsised</translation>
+<translation id="5287456746628258573">See sait kasutab vananenud turvaseadistust, mis võib paljastada teie teabe (näiteks paroolid või krediitkaardinumbrid), kui see saadetakse sellele saidile.</translation>
 <translation id="5288108484102287882">Reegli väärtuste valideerimisel ilmnesid hoiatused</translation>
 <translation id="5299298092464848405">Reegli sõelumisel ilmnes viga</translation>
 <translation id="5300589172476337783">Kuva</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">Saidi <ph name="SITE_NAME" /> avamine …</translation>
 <translation id="5947933617628957894">Jah, lisa</translation>
 <translation id="5951495562196540101">Tarbijakontoga ei saa registreeruda (paketipõhine litsents on saadaval).</translation>
+<translation id="5966900314707961320">Kui see on sisse lülitatud, ei saa saidid kasutada küpsisefaile, mis jälgivad teid kogu veebis</translation>
 <translation id="5967592137238574583">Kontaktteabe muutmine</translation>
 <translation id="5967867314010545767">Eemalda ajaloost</translation>
 <translation id="5975083100439434680">Suumib välja</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">Jätkamisega võivad kaasneda tasud.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{veel 1 soovitus}other{veel # soovitust}}</translation>
 <translation id="6387754724289022810">Kui soovite järgmisel korral kiiremini maksta, salvestage kaart ja arveldusaadress oma Google'i kontole ja sellesse seadmesse.</translation>
+<translation id="6389470377220713856">Nimi kaardil</translation>
 <translation id="6390200185239044127">Z-kujuliselt volditud poolleht</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Selle reegli tugi on katkestatud. Peaksite selle asemel kasutama reeglit <ph name="NEW_POLICY" />.</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">On seotud:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Lahku sellelt saidilt</translation>
 <translation id="7353601530677266744">Käsurida</translation>
 <translation id="7372973238305370288">otsingutulemus</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1443,6 +1448,7 @@
 <translation id="8131740175452115882">Kinnita</translation>
 <translation id="8149426793427495338">Teie arvuti lülitus unerežiimile.</translation>
 <translation id="8150722005171944719">Fail <ph name="URL" /> ei ole loetav. Võimalik, et see on eemaldatud, teisaldatud või faili load takistavad juurdepääsu.</translation>
+<translation id="8157295877370077682">Lahku saidilt</translation>
 <translation id="8163866351304776260">Neli auku vasakul</translation>
 <translation id="8175796834047840627">Chrome pakub võimalust salvestada kaardid teie Google'i kontole, kuna olete sisse logitud. Seda käitumist saab seadetes muuta.</translation>
 <translation id="8184538546369750125">Kasuta globaalset vaikeseadet (luba)</translation>
diff --git a/components/strings/components_strings_fa.xtb b/components/strings/components_strings_fa.xtb
index 1a12417..e06e56a 100644
--- a/components/strings/components_strings_fa.xtb
+++ b/components/strings/components_strings_fa.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">باز کردن صفحه‌های شروع</translation>
 <translation id="1883255238294161206">کوچک کردن فهرست</translation>
 <translation id="1898423065542865115">فیلتر کردن</translation>
+<translation id="1901443836186977402">{1,plural, =1{این سرور نتوانست اثبات کند که <ph name="DOMAIN" /> است؛ گواهی امنیتی آن روز گذشته منقضی شده است. ممکن است علت این موضوع پیکربندی اشتباه باشد یا مهاجمی درحال رهگیری اتصالتان باشد. ساعت رایانه‌تان درحال‌حاضر روی <ph name="CURRENT_DATE" /> تنظیم شده است. آیا درست است؟ اگر نه، باید ساعت سیستم را درست کنید و سپس این صفحه را بازخوانی کنید.}one{این سرور نتوانست اثبات کند که <ph name="DOMAIN" /> است؛ گواهینامه امنیتی آن # روز پیش منقضی شده است. ممکن است علت این موضوع پیکربندی اشتباه باشد یا مهاجمی درحال رهگیری اتصالتان باشد. ساعت رایانه‌تان درحال‌حاضر روی <ph name="CURRENT_DATE" /> تنظیم شده است. آیا درست است؟ اگر نه، باید ساعت سیستم را درست کنید و سپس این صفحه را بازخوانی کنید.}other{این سرور نتوانست اثبات کند که <ph name="DOMAIN" /> است؛ گواهینامه امنیتی آن # روز پیش منقضی شده است. ممکن است علت این موضوع پیکربندی اشتباه باشد یا مهاجمی درحال رهگیری اتصالتان باشد. ساعت رایانه‌تان درحال‌حاضر روی <ph name="CURRENT_DATE" /> تنظیم شده است. آیا درست است؟ اگر نه، باید ساعت سیستم را درست کنید و سپس این صفحه را بازخوانی کنید.}}</translation>
 <translation id="1914326953223720820">سرویس خارج کردن از فشرده‌سازی</translation>
 <translation id="1915697529809968049">‏به‌جای CVC از شناسه لمسی استفاده شود؟</translation>
 <translation id="1916770123977586577">برای اعمال کردن تنظیمات به‌روزرسانی‌شده خود در این سایت، این صفحه را تازه‌سازی کنید</translation>
@@ -444,6 +445,7 @@
 <translation id="3116158981186517402">روکش‌دار کردن</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />عیب‌یابی اتصال را اجرا کنید<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">رفتن به <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{هیچ‌کدام}=1{داده‌های ورود به سیستم برای ۱ حساب}one{داده‌های ورود به سیستم برای # حساب}other{داده‌های ورود به سیستم برای # حساب}}</translation>
 <translation id="3145945101586104090">رمزگشایی پاسخ انجام نشد</translation>
 <translation id="3150653042067488994">خطای موقت سرور</translation>
@@ -611,7 +613,7 @@
 <translation id="3964661563329879394">{COUNT,plural, =0{هیچ‌کدام}=1{از ۱ سایت }one{از # سایت }other{از # سایت }}</translation>
 <translation id="397105322502079400">در حال محاسبه…</translation>
 <translation id="3973234410852337861"><ph name="HOST_NAME" /> مسدود شده است</translation>
-<translation id="3981540111851280311">‏<ph name="ENROLLMENT_DOMAIN" /> «محافظت از خطرات تهدیدکننده Chrome Enterprise» را در مرورگرتان فعال کرده است. «محافظت از خطرات تهدیدکننده Chrome Enterprise» به برخی داده‌هایتان دسترسی دارد.</translation>
+<translation id="3981540111851280311">‏<ph name="ENROLLMENT_DOMAIN" /> «محافظت از تهدیدهای شرکتی در Chrome» را در مرورگرتان فعال کرده است. «محافظت از تهدیدهای شرکتی در Chrome» به برخی داده‌هایتان دسترسی دارد.</translation>
 <translation id="3987940399970879459">کمتر از ۱ مگابایت</translation>
 <translation id="3990250421422698716">‏آفست Z شکل</translation>
 <translation id="40103911065039147">{URL_count,plural, =1{ ۱ صفحه وب در این نزدیکی است}one{ # صفحه وب در این نزدیکی است}other{ # صفحه وب در این نزدیکی است}}</translation>
@@ -828,6 +830,7 @@
 <translation id="5043480802608081735">پیوندی که کپی کرده‌اید</translation>
 <translation id="5045550434625856497">گذرواژه نادرست</translation>
 <translation id="5056549851600133418">مقالاتی برای شما</translation>
+<translation id="5061227663725596739">منظورتان <ph name="LOOKALIKE_DOMAIN" /> بود؟</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(۱ کوکی درحال استفاده)}one{(# کوکی درحال استفاده)}other{(# کوکی درحال استفاده)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />بررسی آدرس پروکسی<ph name="END_LINK" /></translation>
@@ -881,6 +884,7 @@
 <translation id="5284909709419567258">نشانی‌های شبکه</translation>
 <translation id="5285570108065881030">نمایش همه گذرواژه‌های ذخیره‌شده</translation>
 <translation id="5287240709317226393">نمایش کوکی‌ها</translation>
+<translation id="5287456746628258573">پیکربندی امنیتی این سایت قدیمی است و ممکن است اطلاعاتتان (برای مثال، گذرواژه‌ها یا شماره کارت‌های اعتباری) را هنگام ارسال به این سایت افشا کند.</translation>
 <translation id="5288108484102287882">اعتبارسنجی مقادیر خط‌مشی با چند هشدار به پایان رسید</translation>
 <translation id="5299298092464848405">خطا در تجزیه خط‌‌مشی</translation>
 <translation id="5300589172476337783">نمایش</translation>
@@ -1009,6 +1013,7 @@
 <translation id="5946937721014915347">درحال باز کردن <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">بله، اضافه شود</translation>
 <translation id="5951495562196540101">نمی‌توان با حساب مصرف‌کننده ثبت‌نام کرد (مجوز بسته‌بندی دردسترس است).</translation>
+<translation id="5966900314707961320">وقتی روشن باشد، سایت‌ها نمی‌توانند از کوکی‌هایی استفاده کنند که شما را در وب ردیابی می‌کند</translation>
 <translation id="5967592137238574583">ویرایش اطلاعات تماس</translation>
 <translation id="5967867314010545767">حذف از سابقه</translation>
 <translation id="5975083100439434680">دورنمایی کردن</translation>
@@ -1091,6 +1096,7 @@
 <translation id="6383221683286411806">احتمالاً هزینه‌هایی اعمال می‌شود.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{۱ پیشنهاد دیگر}one{# پیشنهاد دیگر}other{# پیشنهاد دیگر}}</translation>
 <translation id="6387754724289022810">‏برای اینکه دفعات بعد پرداخت سریع‌تری داشته باشید، اطلاعات کارت و نشانی صورت‌حسابتان را در حساب Google خود و این دستگاه ذخیره کنید.</translation>
+<translation id="6389470377220713856">نام روی کارت</translation>
 <translation id="6390200185239044127">‏تاخوردگی Z شکل از وسط</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">این خط‌مشی منسوخ شده است. درعوض، باید از خط‌مشی <ph name="NEW_POLICY" /> استفاده کنید.</translation>
@@ -1103,7 +1109,7 @@
 <translation id="6433490469411711332">ویرایش اطلاعات تماس</translation>
 <translation id="6433595998831338502"><ph name="HOST_NAME" /> از اتصال خودداری کرد.</translation>
 <translation id="6434309073475700221">رد کردن</translation>
-<translation id="6435221585574090192">‏داده‌های مربوط به رویدادهای امنیتی‌ای را که «محافظت از خطرات تهدیدکننده Chrome Enterprise» پرچم‌گذاری کرده‌ است، با «سرپرست» به اشتراک بگذارید. این کار ممکن است شامل نشانی وب صفحه‌ها، نام فایل و فراداده فایل، نام کاربری دستگاه، و نام کاربری Chrome باشد.</translation>
+<translation id="6435221585574090192">‏داده‌های مربوط به رویدادهای امنیتی‌ای را که «محافظت از تهدیدهای شرکتی در Chrome» پرچم‌گذاری کرده‌ است، با «سرپرست» به اشتراک بگذارید. این کار ممکن است شامل نشانی وب صفحه‌ها، نام فایل و فراداده فایل، نام کاربری دستگاه، و نام کاربری Chrome باشد.</translation>
 <translation id="6440503408713884761">نادیده گرفته شد</translation>
 <translation id="6446163441502663861">Kahu (Envelope)</translation>
 <translation id="6446608382365791566">افزودن اطلاعات بیشتر</translation>
@@ -1269,7 +1275,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">وابسته است:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">خارج شدن از این سایت</translation>
 <translation id="7353601530677266744">خط فرمان</translation>
 <translation id="7372973238305370288">نتیجه جستجو</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1335,7 +1340,7 @@
 <translation id="7610193165460212391">مقدار خارج از محدوده <ph name="VALUE" /> است.</translation>
 <translation id="7613889955535752492">انقضا: <ph name="EXPIRATION_MONTH" />/<ph name="EXPIRATION_YEAR" /></translation>
 <translation id="7615602087246926389">‏شما در حال حاضر داده‌هایی دارید که با استفاده از نسخه دیگری از گذرواژه حساب Google شما رمزگذاری شده‌اند. لطفاً آن را در زیر وارد کنید.</translation>
-<translation id="7625784245512586808">‏محافظت از خطرات تهدیدکننده Chrome Enterprise</translation>
+<translation id="7625784245512586808">‏محافظت از تهدیدهای شرکتی در Chrome</translation>
 <translation id="7633909222644580952">داده‌های عملکرد و گزارش‌های خرابی</translation>
 <translation id="7637571805876720304">‏کارت اعتباری از Chromium پاک شود؟</translation>
 <translation id="7638605456503525968">درگاه‌های سریال</translation>
@@ -1442,6 +1447,7 @@
 <translation id="8131740175452115882">تأیید</translation>
 <translation id="8149426793427495338">رایانه‌تان به خواب رفته است.</translation>
 <translation id="8150722005171944719">این فایل در <ph name="URL" /> قابل خواندن نیست. ممکن است حذف شده، جابجا شده باشد و یا مجوزهای فایل از دسترسی جلوگیری می‌کنند.</translation>
+<translation id="8157295877370077682">خروج از سایت</translation>
 <translation id="8163866351304776260">چهار سوراخ در چپ</translation>
 <translation id="8175796834047840627">‏چون به سیستم وارد شده‌اید، Chrome پیشنهاد می‌کند کارت‌ها را در حساب Google ذخیره کنید. در تنظیمات می‌توانید این رفتار را تغییر دهید.</translation>
 <translation id="8184538546369750125">استفاده از پیش‌فرض جهانی (مجاز)</translation>
@@ -1454,7 +1460,7 @@
 <translation id="8211406090763984747">اتصال امن است</translation>
 <translation id="8218327578424803826">مکان اختصاص یافته:</translation>
 <translation id="8220146938470311105">C7/C6 (Envelope)</translation>
-<translation id="8220639454292072926">‏گزارش Enterprise</translation>
+<translation id="8220639454292072926">گزارش خطای شرکتی</translation>
 <translation id="8225771182978767009">شخصی که این رایانه را راه‌اندازی کرده این سایت را مسدود کرده است.</translation>
 <translation id="822964464349305906"><ph name="TYPE_1" />،‏ <ph name="TYPE_2" /></translation>
 <translation id="8238581221633243064">صفحه را در برگه «ناشناس» جدیدی باز کنید</translation>
@@ -1610,7 +1616,7 @@
 <translation id="9080712759204168376">خلاصه سفارش</translation>
 <translation id="9089260154716455634">خط‌مشی ساعت‌های خاموشی:</translation>
 <translation id="9095388113577226029">زبان‌های بیشتر...</translation>
-<translation id="9098981495403789647">‏سرپرست «محافظت از خطرات تهدیدکننده Chrome Enterprise» در مرورگرتان فعال شده است. «محافظت از خطرات تهدیدکننده Chrome Enterprise» به برخی داده‌هایتان دسترسی دارد.</translation>
+<translation id="9098981495403789647">‏سرپرست «محافظت از تهدیدهای شرکتی در Chrome» در مرورگرتان فعال شده است. «محافظت از تهدیدهای شرکتی در Chrome» به برخی داده‌هایتان دسترسی دارد.</translation>
 <translation id="9103872766612412690">‏<ph name="SITE" /> معمولاً برای محافظت از اطلاعات شما از رمزگذاری استفاده می‌کند. اما این بار که Chromium تلاش کرد به <ph name="SITE" /> متصل شود، وب‌سایت اعتبارنامه‌ای نامعمول و نادرست را برگرداند. ممکن است مهاجمی در تلاش باشد خود را به‌جای <ph name="SITE" /> معرفی کند یا یک صفحه ورود به سیستم Wi-Fi در ارتباط اختلال ایجاد کرده باشد. اطلاعات شما همچنان ایمن است، زیرا Chromium قبل از هرگونه تبادل داده، اتصال را متوقف کرد.</translation>
 <translation id="9106062320799175032">افزودن نشانی صورت‌حساب</translation>
 <translation id="9114524666733003316">درحال تأیید کردن کارت…</translation>
diff --git a/components/strings/components_strings_fi.xtb b/components/strings/components_strings_fi.xtb
index 3420e1c3..27ccda2 100644
--- a/components/strings/components_strings_fi.xtb
+++ b/components/strings/components_strings_fi.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Avaa aloitussivut</translation>
 <translation id="1883255238294161206">Tiivistä luettelo</translation>
 <translation id="1898423065542865115">Suodatus</translation>
+<translation id="1901443836186977402">{1,plural, =1{Palvelin ei voinut todistaa olevansa <ph name="DOMAIN" />; sen suojausvarmenne vanheni viimeisen päivän aikana. Tämä voi johtua määritysvirheestä tai yhteytesi siepanneesta hyökkääjästä. Tietokoneesi aika on tällä hetkellä <ph name="CURRENT_DATE" />. Onko se oikein? Jos ei, korjaa järjestelmän aika ja päivitä sivu.}other{Palvelin ei voinut todistaa olevansa <ph name="DOMAIN" />; sen suojausvarmenne on vanhentunut # päivää sitten. Tämä voi johtua määritysvirheestä tai yhteytesi siepanneesta hyökkääjästä. Tietokoneesi aika on tällä hetkellä <ph name="CURRENT_DATE" />. Onko se oikein? Jos ei, päivitä sivu.}}</translation>
 <translation id="1914326953223720820">Purkupalvelu</translation>
 <translation id="1915697529809968049">Käytetäänkö Touch ID:tä CVC:n sijaan?</translation>
 <translation id="1916770123977586577">Päivitä tämä sivu, niin päivitetyt asetuksesi otetaan käyttöön tällä sivustolla.</translation>
@@ -338,7 +339,7 @@
 <translation id="2587730715158995865">Julkaisijalta <ph name="ARTICLE_PUBLISHER" />. Lue tämä ja <ph name="OTHER_ARTICLE_COUNT" /> muuta tarinaa.</translation>
 <translation id="2587841377698384444">Hakemistosovellusliittymän tunnus:</translation>
 <translation id="2595719060046994702">Yritys tai muu organisaatio ei ylläpidä tätä laitetta tai tiliä.</translation>
-<translation id="2597378329261239068">Tämä asiakirja on suojattu salasanalla. Anna salasana.</translation>
+<translation id="2597378329261239068">Tämä asiakirja on suojattu salasanalla. Lisää salasana.</translation>
 <translation id="2609632851001447353">Muunnelmat</translation>
 <translation id="2618023639789766142">C10 (kirjekuori)</translation>
 <translation id="2625385379895617796">Kellosi edistää</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminointi</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Kokeile yhteysdiagnostiikkaa<ph name="END_LINK" /></translation>
+<translation id="3121994479408824897">Avaa <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Ei mitään}=1{1 tilin kirjautumistiedot}other{# tilin kirjautumistiedot}}</translation>
 <translation id="3145945101586104090">Vastauksen purkaminen epäonnistui</translation>
 <translation id="3150653042067488994">Tilapäinen palvelinvirhe</translation>
@@ -830,6 +832,7 @@
 <translation id="5043480802608081735">Kopioimasi linkki</translation>
 <translation id="5045550434625856497">Väärä salasana</translation>
 <translation id="5056549851600133418">Sinulle valitut artikkelit</translation>
+<translation id="5061227663725596739">Tarkoititko: <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 käytössä)}other{(# käytössä)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Tarkista välityspalvelimen osoite.<ph name="END_LINK" /></translation>
@@ -883,6 +886,7 @@
 <translation id="5284909709419567258">Verkko-osoitteet</translation>
 <translation id="5285570108065881030">Näytä kaikki tallennetut salasanat</translation>
 <translation id="5287240709317226393">Näytä evästeet</translation>
+<translation id="5287456746628258573">Tämä sivusto käyttää vanhentunutta tietoturvamääritystä, joka voi paljastaa tietosi (esim. salasanat tai credit-korttien numerot), kun ne lähetetään sivustolle.</translation>
 <translation id="5288108484102287882">Käytäntöarvojen vahvistus aiheutti varoituksia</translation>
 <translation id="5299298092464848405">Virhe jäsennettäessä käytäntöä</translation>
 <translation id="5300589172476337783">Näytä</translation>
@@ -1011,6 +1015,7 @@
 <translation id="5946937721014915347">Avataan <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Kyllä, lisää</translation>
 <translation id="5951495562196540101">Liittyminen kuluttajatilillä ei onnistu (pakettilisenssi saatavilla).</translation>
+<translation id="5966900314707961320">Kun tämä on käytössä, sivustot eivät voi seurata sinua verkossa evästeiden avulla</translation>
 <translation id="5967592137238574583">Muokkaa yhteystietoja</translation>
 <translation id="5967867314010545767">Poista historiasta</translation>
 <translation id="5975083100439434680">Loitonna</translation>
@@ -1093,6 +1098,7 @@
 <translation id="6383221683286411806">Tästä voi seurata kuluja</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 muu ehdotus}other{# muuta ehdotusta}}</translation>
 <translation id="6387754724289022810">Jos haluat maksaa nopeammin ensi kerralla, tallenna kortti ja laskutusosoite Google-tilillesi ja tälle laitteelle.</translation>
+<translation id="6389470377220713856">Nimi kortissa</translation>
 <translation id="6390200185239044127">Kolmoistaite puoliksi</translation>
 <translation id="6390662030813198813">Insinööri-E</translation>
 <translation id="6401136357288658127">Tämä käytäntö on vanhentunut. Käytä <ph name="NEW_POLICY" /> ‑käytäntöä sen sijaan.</translation>
@@ -1271,7 +1277,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">On yhdistetty:</translation>
 <translation id="7349430561505560861">A4-ekstra</translation>
-<translation id="7352902249897488700">Poistu tältä sivustolta</translation>
 <translation id="7353601530677266744">Komentorivi</translation>
 <translation id="7372973238305370288">hakutulos</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1444,6 +1449,7 @@
 <translation id="8131740175452115882">Vahvista</translation>
 <translation id="8149426793427495338">Tietokoneesi siirtyi virransäästötilaan.</translation>
 <translation id="8150722005171944719">Tiedosto osoitteessa <ph name="URL" /> ei ole luettavissa. Se on voitu poistaa tai siirtää, tai tiedoston käyttöluvat voivat estää sen käytön.</translation>
+<translation id="8157295877370077682">Poistu sivustolta</translation>
 <translation id="8163866351304776260">Neljä reikää vasemmalla</translation>
 <translation id="8175796834047840627">Chrome tarjoaa korttien tallentamista Google-tilillesi, koska olet kirjautuneena sisään. Voit muuttaa tätä koska tahansa asetuksista.</translation>
 <translation id="8184538546369750125">Käytä yleistä oletusasetusta (salli)</translation>
diff --git a/components/strings/components_strings_fil.xtb b/components/strings/components_strings_fil.xtb
index 0fd1901..19bd0ca 100644
--- a/components/strings/components_strings_fil.xtb
+++ b/components/strings/components_strings_fil.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Buksan ang mga page sa pagsisimula</translation>
 <translation id="1883255238294161206">Tiklupin ang listahan</translation>
 <translation id="1898423065542865115">Pagfi-filter</translation>
+<translation id="1901443836186977402">{1,plural, =1{Hindi mapatunayan ng server na ito na <ph name="DOMAIN" /> ito; nag-expire ang panseguridad na certificate nito noong nakaraang araw. Posibleng sanhi ito ng maling pag-configure o ng panghihimasok ng isang nang-aatake sa iyong koneksyon. Kasalukuyang nakatakda ang orasan ng iyong computer sa <ph name="CURRENT_DATE" />. Mukha bang tama ito? Kung hindi, dapat mong itama ang orasan ng iyong system at pagkatapos ay i-refresh ang page na ito.}one{Hindi mapatunayan ng server na ito na <ph name="DOMAIN" /> ito; nag-expire ang panseguridad na certificate nito # araw na ang nakalipas. Posibleng sanhi ito ng maling pag-configure o ng panghihimasok ng isang nang-aatake sa iyong koneksyon. Kasalukuyang nakatakda ang orasan ng iyong computer sa <ph name="CURRENT_DATE" />. Mukha bang tama ito? Kung hindi, dapat mong itama ang orasan ng iyong system at pagkatapos ay i-refresh ang page na ito.}other{Hindi mapatunayan ng server na ito na <ph name="DOMAIN" /> ito; nag-expire ang panseguridad na certificate nito # araw na ang nakalipas. Posibleng sanhi ito ng maling pag-configure o ng panghihimasok ng isang nang-aatake sa iyong koneksyon. Kasalukuyang nakatakda ang orasan ng iyong computer sa <ph name="CURRENT_DATE" />. Mukha bang tama ito? Kung hindi, dapat mong itama ang orasan ng iyong system at pagkatapos ay i-refresh ang page na ito.}}</translation>
 <translation id="1914326953223720820">I-unzip ang Serbisyo</translation>
 <translation id="1915697529809968049">Gamitin ang Touch ID sa halip na CVC?</translation>
 <translation id="1916770123977586577">Upang ilapat ang iyong mga na-update na setting sa site na ito, i-reload ang page</translation>
@@ -437,6 +438,7 @@
 <translation id="3116158981186517402">Laminate</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Subukang magpatakbo ng Connectivity Diagnostics<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Pumunta sa <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Wala}=1{data ng pag-sign in para sa 1 account}one{data ng pag-sign in para sa # account}other{data ng pag-sign in para sa # na account}}</translation>
 <translation id="3145945101586104090">Nabigong i-decode ang tugon</translation>
 <translation id="3150653042067488994">Pansamantalang error sa server</translation>
@@ -815,6 +817,7 @@
 <translation id="5043480802608081735">Link na Kinopya Mo</translation>
 <translation id="5045550434625856497">Hindi wastong password</translation>
 <translation id="5056549851600133418">Mga artikulo para sa iyo</translation>
+<translation id="5061227663725596739">Ang ibig mo bang sabihin ay <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 ang ginagamit)}one{(# ang ginagamit)}other{(# ang ginagamit)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Suriin ang proxy address<ph name="END_LINK" /></translation>
@@ -868,6 +871,7 @@
 <translation id="5284909709419567258">Mga address ng network</translation>
 <translation id="5285570108065881030">Ipakita ang lahat ng naka-save na password</translation>
 <translation id="5287240709317226393">Ipakita ang cookies</translation>
+<translation id="5287456746628258573">Gumagamit ang site na ito ng lumang configuration sa seguridad, na posibleng maglantad ng iyong impormasyon (halimbawa, mga password o numero ng credit card) kapag ipinadala ito sa site na ito.</translation>
 <translation id="5288108484102287882">Na-validate ang mga value ng patakaran at nagkaroon ng mga babala</translation>
 <translation id="5299298092464848405">Error sa pag-parse ng patakaran</translation>
 <translation id="5300589172476337783">Ipakita</translation>
@@ -996,6 +1000,7 @@
 <translation id="5946937721014915347">Binubuksan ang <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Oo, idagdag</translation>
 <translation id="5951495562196540101">Hindi maka-enroll gamit ang account ng consumer (may available na naka-package na lisensya).</translation>
+<translation id="5966900314707961320">Kapag naka-on, hindi makakagamit ang mga site ng cookies na sumusubaybay sa iyo sa buong web</translation>
 <translation id="5967592137238574583">I-edit ang Impormasyon ng Contact</translation>
 <translation id="5967867314010545767">Alisin sa history</translation>
 <translation id="5975083100439434680">Mag-zoom out</translation>
@@ -1078,6 +1083,7 @@
 <translation id="6383221683286411806">Maaaring magkaroon ng singil.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 pang suhestyon}one{# pang suhestyon}other{# pang suhestyon}}</translation>
 <translation id="6387754724289022810">Para mas mabilis na makapagbayad sa susunod, i-save ang iyong card at billing address sa Google Account mo at sa device na ito.</translation>
+<translation id="6389470377220713856">Pangalan sa Card</translation>
 <translation id="6390200185239044127">Z-fold half</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Hindi na ginagamit ang patakarang ito. Dapat mong gamitin ang patakarang <ph name="NEW_POLICY" /> sa halip.</translation>
@@ -1256,7 +1262,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Naka-affiliate:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Umalis sa site na ito</translation>
 <translation id="7353601530677266744">Command Line</translation>
 <translation id="7372973238305370288">resulta ng paghahanap</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1429,6 +1434,7 @@
 <translation id="8131740175452115882">Kumpirmahin</translation>
 <translation id="8149426793427495338">Nag-sleep ang iyong computer.</translation>
 <translation id="8150722005171944719">Hindi nababasa ang file sa <ph name="URL" />. Maaaring ito ay naalis, nalipat, o maaaring pinipigilan ng mga pagpapahintulot ng file ang access.</translation>
+<translation id="8157295877370077682">Umalis sa site</translation>
 <translation id="8163866351304776260">Quad punch left</translation>
 <translation id="8175796834047840627">Nag-aalok ang Chrome na i-save ang iyong mga card sa Google Account mo dahil naka-sign in ka. Maaari mong baguhin ang gawing ito sa mga setting.</translation>
 <translation id="8184538546369750125">Gamitin ang pangkalahatang default (Payagan)</translation>
diff --git a/components/strings/components_strings_fr.xtb b/components/strings/components_strings_fr.xtb
index 097fd6a..2876a5f 100644
--- a/components/strings/components_strings_fr.xtb
+++ b/components/strings/components_strings_fr.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Ouvrir les pages de démarrage</translation>
 <translation id="1883255238294161206">Réduire la liste</translation>
 <translation id="1898423065542865115">Filtrage</translation>
+<translation id="1901443836186977402">{1,plural, =1{Impossible de vérifier que ce serveur est bien <ph name="DOMAIN" />, car son certificat de sécurité est arrivé à expiration au cours des dernières 24 heures. Cela peut être dû à une mauvaise configuration ou à l'interception de votre connexion par un pirate informatique. L'horloge de votre ordinateur indique actuellement <ph name="CURRENT_DATE" />. Cela vous semble-t-il correct ? Si ce n'est pas le cas, vous devez corriger l'horloge de votre système, puis actualiser la page.}one{Impossible de vérifier que ce serveur est bien <ph name="DOMAIN" />, car son certificat de sécurité est arrivé à expiration il y a # jour. Cela peut être dû à une mauvaise configuration ou à l'interception de votre connexion par un pirate informatique. L'horloge de votre ordinateur indique actuellement <ph name="CURRENT_DATE" />. Cela vous semble-t-il correct ? Si ce n'est pas le cas, vous devez corriger l'horloge de votre système, puis actualiser la page.}other{Impossible de vérifier que ce serveur est bien <ph name="DOMAIN" />, car son certificat de sécurité est arrivé à expiration il y a # jours. Cela peut être dû à une mauvaise configuration ou à l'interception de votre connexion par un pirate informatique. L'horloge de votre ordinateur indique actuellement <ph name="CURRENT_DATE" />. Cela vous semble-t-il correct ? Si ce n'est pas le cas, vous devez corriger l'horloge de votre système, puis actualiser la page.}}</translation>
 <translation id="1914326953223720820">Service de décompression de fichier</translation>
 <translation id="1915697529809968049">Utiliser Touch ID au lieu du code CVC ?</translation>
 <translation id="1916770123977586577">Pour appliquer vos paramètres mis à jour à ce site, actualisez la page</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">Plastifier</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Essayez d'exécuter les diagnostics de connectivité<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Accéder à <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Aucun}=1{données de connexion pour 1 compte}one{données de connexion pour # compte}other{données de connexion pour # comptes}}</translation>
 <translation id="3145945101586104090">Échec du décodage de la réponse.</translation>
 <translation id="3150653042067488994">Erreur temporaire du serveur.</translation>
@@ -813,6 +815,7 @@
 <translation id="5043480802608081735">Lien copié</translation>
 <translation id="5045550434625856497">Mot de passe incorrect</translation>
 <translation id="5056549851600133418">Articles pour vous</translation>
+<translation id="5061227663725596739">Essayez avec <ph name="LOOKALIKE_DOMAIN" /></translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 en cours d'utilisation)}one{(# en cours d'utilisation)}other{(# en cours d'utilisation)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Vérifier l'adresse du proxy<ph name="END_LINK" /></translation>
@@ -866,6 +869,7 @@
 <translation id="5284909709419567258">Adresses réseau</translation>
 <translation id="5285570108065881030">Afficher tous les mots de passe enregistrés</translation>
 <translation id="5287240709317226393">Afficher les cookies</translation>
+<translation id="5287456746628258573">La configuration de sécurité obsolète de ce site peut exposer vos informations, comme vos mots de passe ou vos numéros de carte de crédit, lorsqu'elles lui sont transmises.</translation>
 <translation id="5288108484102287882">La validation des valeurs de règle a renvoyé des avertissements</translation>
 <translation id="5299298092464848405">Erreur d'analyse de la règle.</translation>
 <translation id="5300589172476337783">Afficher</translation>
@@ -993,6 +997,7 @@
 <translation id="5946937721014915347">Ouverture du site <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Oui, ajouter</translation>
 <translation id="5951495562196540101">Impossible d'enregistrer votre appareil avec un compte personnel (licence associée disponible).</translation>
+<translation id="5966900314707961320">Lorsque cette option est activée, les sites ne peuvent pas utiliser de cookies pour suivre votre activité sur le Web</translation>
 <translation id="5967592137238574583">Modifier les coordonnées</translation>
 <translation id="5967867314010545767">Supprimer de l'historique</translation>
 <translation id="5975083100439434680">Zoom arrière</translation>
@@ -1075,6 +1080,7 @@
 <translation id="6383221683286411806">Des frais peuvent vous être facturés</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 autre suggestion}one{# autre suggestion}other{# autres suggestions}}</translation>
 <translation id="6387754724289022810">Pour régler plus rapidement vos achats la prochaine fois, enregistrez votre carte et votre adresse de facturation dans votre compte Google et sur cet appareil.</translation>
+<translation id="6389470377220713856">Nom sur la carte</translation>
 <translation id="6390200185239044127">Demi-feuille de pli en Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Cette règle est obsolète. Vous devez utiliser la règle "<ph name="NEW_POLICY" />" à la place.</translation>
@@ -1253,7 +1259,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Affilié :</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Quitter ce site</translation>
 <translation id="7353601530677266744">Ligne de commande</translation>
 <translation id="7372973238305370288">résultat de recherche</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1426,6 +1431,7 @@
 <translation id="8131740175452115882">Confirmer</translation>
 <translation id="8149426793427495338">Votre ordinateur s'est mis en veille.</translation>
 <translation id="8150722005171944719">Le fichier disponible à l'adresse <ph name="URL" /> n'est pas lisible. Il est possible qu'il ait été supprimé ou déplacé, ou que les autorisations associées empêchent d'y accéder.</translation>
+<translation id="8157295877370077682">Quitter le site</translation>
 <translation id="8163866351304776260">Quadruple perforation à gauche</translation>
 <translation id="8175796834047840627">Chrome propose d'enregistrer vos cartes dans votre compte Google, car vous êtes connecté. Vous pouvez modifier ce comportement dans les paramètres.</translation>
 <translation id="8184538546369750125">Utiliser le paramètre global par défaut ("Autoriser")</translation>
diff --git a/components/strings/components_strings_gu.xtb b/components/strings/components_strings_gu.xtb
index 2f11ce3..a5c791e 100644
--- a/components/strings/components_strings_gu.xtb
+++ b/components/strings/components_strings_gu.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">સ્ટાર્ટઅપ પૃષ્ઠો ખોલો</translation>
 <translation id="1883255238294161206">સૂચિ સંકુચિત કરો</translation>
 <translation id="1898423065542865115">ફિલ્ટરિંગ</translation>
+<translation id="1901443836186977402">{1,plural, =1{આ સર્વર સાબિત કરી શક્યું નથી કે તે <ph name="DOMAIN" /> છે, એના સુરક્ષા પ્રમાણપત્રની સમયસીમા છેલ્લા દિવસે સમાપ્ત થઈ ગઈ. આ કદાચ કોઈ ખોટી ગોઠવણી અથવા કોઈ હુમલાખોરે તમારા કનેક્શનને અટકાવવાને કારણે થયું હોઈ શકે છે. તમારા કમ્પ્યુટરની ઘડિયાળ હાલમાં <ph name="CURRENT_DATE" /> પર સેટ છે. શું તે બરાબર છે? જો યોગ્ય લાગતી ન હોય, તો તમારે તમારા સિસ્ટમની ઘડિયાળને ઠીક કરવી જોઈએ અને પછી આ પેજ રિફ્રેશ કરવું જોઈએ.}one{આ સર્વર સાબિત કરી શક્યું નથી કે તે <ph name="DOMAIN" /> છે, એના સુરક્ષા પ્રમાણપત્રની સમયસીમા # દિવસ પહેલાં સમાપ્ત થઈ છે. આ કદાચ કોઈ ખોટી ગોઠવણી અથવા કોઈ હુમલાખોરે તમારા કનેક્શનને અટકાવવાને કારણે થયું હોઈ શકે છે. તમારા કમ્પ્યુટરની ઘડિયાળ હાલમાં <ph name="CURRENT_DATE" /> પર સેટ છે. શું તે બરાબર છે? જો યોગ્ય લાગતી ન હોય, તો તમારે તમારા સિસ્ટમની ઘડિયાળને ઠીક કરવી જોઈએ અને પછી આ પેજ રિફ્રેશ કરવું જોઈએ.}other{આ સર્વર સાબિત કરી શક્યું નથી કે તે <ph name="DOMAIN" /> છે, એના સુરક્ષા પ્રમાણપત્રની સમયસીમા # દિવસ પહેલાં સમાપ્ત થઈ છે. આ કદાચ કોઈ ખોટી ગોઠવણી અથવા કોઈ હુમલાખોરે તમારા કનેક્શનને અટકાવવાને કારણે થયું હોઈ શકે છે. તમારા કમ્પ્યુટરની ઘડિયાળ હાલમાં <ph name="CURRENT_DATE" /> પર સેટ છે. શું તે બરાબર છે? જો યોગ્ય લાગતી ન હોય, તો તમારે તમારા સિસ્ટમની ઘડિયાળને ઠીક કરવી જોઈએ અને પછી આ પેજ રિફ્રેશ કરવું જોઈએ.}}</translation>
 <translation id="1914326953223720820">સેવાને અનઝિપ કરો</translation>
 <translation id="1915697529809968049">CVCને બદલે Touch IDનો ઉપયોગ કરીએ?</translation>
 <translation id="1916770123977586577">આ સાઇટ પર તમારી અપડેટ કરેલ સેટિંગ્સ લાગુ પાડવા માટે, આ પેજને ફરીથી લોડ કરો</translation>
@@ -443,6 +444,7 @@
 <translation id="3116158981186517402">લૅમિનેટ કરો</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />કનેક્ટિવિટી ડાયગ્નોસ્ટિક્સ ચલાવવાનો પ્રયાસ કરો<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" /> પર જાઓ</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{કોઈ નહીં}=1{1 એકાઉન્ટ માટેનો સાઇન-ઇન ડેટા}one{# એકાઉન્ટ માટેનો સાઇન-ઇન ડેટા}other{# એકાઉન્ટ માટેનો સાઇન-ઇન ડેટા}}</translation>
 <translation id="3145945101586104090">પ્રતિક્રિયા ડિકોડ કરવી નિષ્ફળ થઇ</translation>
 <translation id="3150653042067488994">અસ્થાયી સર્વર ભૂલ</translation>
@@ -824,6 +826,7 @@
 <translation id="5043480802608081735">તમે કૉપિ કરેલી લિંક</translation>
 <translation id="5045550434625856497">ખોટો પાસવર્ડ</translation>
 <translation id="5056549851600133418">તમારા માટે લેખ</translation>
+<translation id="5061227663725596739">શું તમારો અર્થ <ph name="LOOKALIKE_DOMAIN" /> હતો?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 ઉપયોગમાં છે)}one{(# ઉપયોગમાં છે)}other{(# ઉપયોગમાં છે)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />પ્રૉક્સી ઍડ્રેસ ચેક કરવાનો પ્રયાસ કરો<ph name="END_LINK" /></translation>
@@ -877,6 +880,7 @@
 <translation id="5284909709419567258">નેટવર્ક ઍડ્રેસ</translation>
 <translation id="5285570108065881030">બધા સાચવેલા પાસવર્ડ બતાવો</translation>
 <translation id="5287240709317226393">કુકી બતાવો</translation>
+<translation id="5287456746628258573">આ સાઇટ હજી પણ જૂના સુરક્ષા કન્ફિગ્યુરેશનનો ઉપયોગ કરે છે, જેને લીધે તમારી માહિતી (ઉદાહરણ તરીકે, પાસવર્ડ અથવા ક્રેડિટ કાર્ડ નંબર) જ્યારે આ સાઇટને મોકલવામાં આવે, ત્યારે તે જોખમમાં આવી શકે છે.</translation>
 <translation id="5288108484102287882">નીતિ મૂલ્યોની માન્યતા ચેતવણીઓનું કારણ બની છે</translation>
 <translation id="5299298092464848405">ભૂલ વિશ્લેષણ નીતિ</translation>
 <translation id="5300589172476337783">બતાવો</translation>
@@ -1005,6 +1009,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> ખોલી રહ્યાં છે…</translation>
 <translation id="5947933617628957894">હા, ઉમેરો</translation>
 <translation id="5951495562196540101">ઉપભોક્તા એકાઉન્ટ સાથે નોંધણી કરાવી શકાતી નથી (પૅકેજમાં લાઇસન્સ ઉપલબ્ધ છે).</translation>
+<translation id="5966900314707961320">જ્યારે ચાલુ કરવામાં આવે, ત્યારે સાઇટ તમને વેબ પર બધે ટ્રૅક કરી શકે એવી કુકીનો ઉપયોગ કરી શકશે નહીં</translation>
 <translation id="5967592137238574583">સંપર્ક માહિતીમાં ફેરફાર કરો</translation>
 <translation id="5967867314010545767">ઇતિહાસમાંથી દૂર કરો</translation>
 <translation id="5975083100439434680">ઝૂમ ઘટાડો</translation>
@@ -1087,6 +1092,7 @@
 <translation id="6383221683286411806">આગળ ઉપર શુલ્ક લાગવાની શક્યતા.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 અન્ય સૂચન}one{# અન્ય સૂચન}other{# અન્ય સૂચન}}</translation>
 <translation id="6387754724289022810">આગલી વખતે વધુ ઝડપથી ચુકવણી કરવા માટે, તમારા કાર્ડ અને બિલિંગ સરનામાંને તમારા Google એકાઉન્ટ અને આ ડિવાઇસ પર સાચવો.</translation>
+<translation id="6389470377220713856">કાર્ડ પરનું નામ</translation>
 <translation id="6390200185239044127">અડધું Z-ફોલ્ડ</translation>
 <translation id="6390662030813198813">એન્જિનિયરિંગ-E</translation>
 <translation id="6401136357288658127">આ પૉલિસી ટાળવામાં આવી છે. તેના બદલે તમારે <ph name="NEW_POLICY" /> પૉલિસીનો ઉપયોગ કરવો જોઈએ.</translation>
@@ -1265,7 +1271,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">સંકળાયેલા છે:</translation>
 <translation id="7349430561505560861">A4-અતિરિક્ત</translation>
-<translation id="7352902249897488700">આ સાઇટ છોડી દો</translation>
 <translation id="7353601530677266744">આદેશ પંક્તિ</translation>
 <translation id="7372973238305370288">શોધ પરિણામ</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1438,6 +1443,7 @@
 <translation id="8131740175452115882">પુષ્ટિ કરો</translation>
 <translation id="8149426793427495338">તમારું કમ્પ્યુટર નિષ્ક્રિય થઈ ગયું હતું.</translation>
 <translation id="8150722005171944719"><ph name="URL" /> પરની ફાઇલ વાંચનયોગ્ય નથી. તે દૂર કરવામાં, ખસેડવામાં આવી હોઈ શકે છે અથવા ફાઇલ પરવાનગીઓ ઍક્સેસ કરવાથી અટકાવતી હોઈ શકે છે.</translation>
+<translation id="8157295877370077682">સાઇટ છોડી દો</translation>
 <translation id="8163866351304776260">ડાબી બાજુએ ચતુષ્કોણ કાણું પાડો</translation>
 <translation id="8175796834047840627">તમે સાઇન ઇન કરેલું છે તેથી Chrome તમને તમારા કાર્ડ તમારા Google એકાઉન્ટમાં સાચવવાની ઑફર કરે છે. તમે સેટિંગમાં આ વર્તણૂકને બદલી શકો છો.</translation>
 <translation id="8184538546369750125">વૈશ્વિક ડિફોલ્ટનો ઉપયોગ કરો (મંજૂરી આપો)</translation>
diff --git a/components/strings/components_strings_hi.xtb b/components/strings/components_strings_hi.xtb
index dc1df961..1c02c152 100644
--- a/components/strings/components_strings_hi.xtb
+++ b/components/strings/components_strings_hi.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">शुरुआती पन्ना खोलें</translation>
 <translation id="1883255238294161206">सूची छोटी करें</translation>
 <translation id="1898423065542865115">फ़िल्टर किया जा रहा है</translation>
+<translation id="1901443836186977402">{1,plural, =1{यह सर्वर पुष्टि नहीं कर सका कि यह <ph name="DOMAIN" /> है; इसका सुरक्षा सर्टिफ़िकेट कल खत्म हो गया था. ऐसा गलत कॉन्फ़िगरेशन या किसी हमलावर के ज़रिए आपके कनेक्शन में छेड़छाड़ करने की वजह से हो सकता है. अभी आपके कंप्यूटर की घड़ी <ph name="CURRENT_DATE" /> पर सेट है. क्या यह सही तारीख है? अगर नहीं, तो आपको सिस्टम की घड़ी सही करके, इस पेज को रीफ़्रेश करना चाहिए.}one{यह सर्वर पुष्टि नहीं कर सका कि यह <ph name="DOMAIN" /> है; इसका सुरक्षा सर्टिफ़िकेट # दिन पहले खत्म हो गया था. ऐसा गलत कॉन्फ़िगरेशन या किसी हमलावर के ज़रिए आपके कनेक्शन में छेड़छाड़ करने की वजह से हो सकता है. अभी आपके कंप्यूटर की घड़ी <ph name="CURRENT_DATE" /> पर सेट है. क्या यह सही तारीख है? अगर नहीं, तो आपको सिस्टम की घड़ी सही करके, इस पेज को रीफ़्रेश करना चाहिए.}other{यह सर्वर पुष्टि नहीं कर सका कि यह <ph name="DOMAIN" /> है; इसका सुरक्षा सर्टिफ़िकेट # दिन पहले खत्म हो गया था. ऐसा गलत कॉन्फ़िगरेशन या किसी हमलावर के ज़रिए आपके कनेक्शन में छेड़छाड़ करने की वजह से हो सकता है. अभी आपके कंप्यूटर की घड़ी <ph name="CURRENT_DATE" /> पर सेट है. क्या यह सही तारीख है? अगर नहीं, तो आपको सिस्टम की घड़ी सही करके, इस पेज को रीफ़्रेश करना चाहिए.}}</translation>
 <translation id="1914326953223720820">अनज़िप सेवा</translation>
 <translation id="1915697529809968049">क्या आप कार्ड वेरीफ़िकेशन कोड (सीवीसी) के बजाय टच आईडी का इस्तेमाल करना चाहते हैं?</translation>
 <translation id="1916770123977586577">इस साइट पर अपनी अपडेट की गई सेटिंग लागू करने के लिए, इस पेज को फिर से लोड करें</translation>
@@ -443,6 +444,7 @@
 <translation id="3116158981186517402">लैमनेट</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />कनेक्टिविटी निदान चलाकर देखें<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" /> पर जाएं</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{कोई नहीं}=1{एक खाते का साइन-इन डेटा}one{# खातों का साइन-इन डेटा}other{# खातों का साइन-इन डेटा}}</translation>
 <translation id="3145945101586104090">उत्तर डीकोड करने में विफल</translation>
 <translation id="3150653042067488994">अस्थायी सर्वर गड़बड़ी</translation>
@@ -460,6 +462,7 @@
 <translation id="320323717674993345">भुगतान रद्द करें</translation>
 <translation id="3207960819495026254">बुकमार्क किया गया</translation>
 <translation id="3209034400446768650">पेज पर शुल्क लिया जा सकता है</translation>
+<translation id="3209080785413271048">अपने सेव किए गए पैसे चुकाने के तरीकों की पुष्टि करने के लिए Windows Hello का इस्तेमाल करें.</translation>
 <translation id="3215092763954878852">WebAuthn का इस्तेमाल नहीं किया जा सका</translation>
 <translation id="3225919329040284222">सर्वर द्वारा कोई प्रमाणपत्र प्रस्‍तुत किया गया, जो बिल्‍ट-इन अपेक्षाओं से मिलान नहीं करता. इन अपेक्षाओं को आपकी सुरक्षा करने के लिए कुछ, उच्‍च-सुरक्षा वेबसाइटों के लिए शामिल किया गया है.</translation>
 <translation id="3226128629678568754">पेज को लोड करने के लिए ज़रूरी डेटा फिर सबमिट करने के लिए 'फिर लोड करें' बटन दबाएं.</translation>
@@ -470,6 +473,7 @@
 <translation id="3234666976984236645">इस साइट पर हमेशा महत्‍वपूर्ण सामग्री का पता लगाएं</translation>
 <translation id="3270847123878663523">&amp;पुन: क्रमित करना वापस लाएं</translation>
 <translation id="3274521967729236597">पा-काई</translation>
+<translation id="3281668902344226640">अपने सेव किए गए पैसे चुकाने के तरीकों की पुष्टि करने के लिए टच आईडी का इस्तेमाल करें.</translation>
 <translation id="3282497668470633863">कार्ड पर नाम जोड़ें</translation>
 <translation id="3287510313208355388">ऑनलाइन होने पर डाउनलोड करें</translation>
 <translation id="3293642807462928945"><ph name="POLICY_NAME" /> नीति के बारे में ज़्यादा जानें</translation>
@@ -537,6 +541,7 @@
 <translation id="362276910939193118">पूरा इतिहास दिखाएं</translation>
 <translation id="3630155396527302611">अगर वह नेटवर्क एक्सेस करने की अनुमति पाए हुए प्रोग्राम के रूप में पहले से ही सूची में शामिल है, तो
       उसे सूची से हटाने और फिर से जोड़ने की कोशिश करें.</translation>
+<translation id="3631244953324577188">बायोमेट्रिक्स</translation>
 <translation id="3640766068866876100">इंडेक्स-4x6-एक्स्ट्रा</translation>
 <translation id="3650584904733503804">मान्यकरण सफल</translation>
 <translation id="3655670868607891010">अगर आपको यह बार-बार दिखाई दे रहा हो, तो इन <ph name="HELP_LINK" /> को आज़माएं.</translation>
@@ -617,6 +622,7 @@
 <translation id="4067947977115446013">मान्य पता जोड़ें</translation>
 <translation id="4072486802667267160">आपका आदेश संसाधित करते समय गड़बड़ी हुई. कृपया फिर से कोशिश करें.</translation>
 <translation id="4075732493274867456">क्लाइंट और सर्वर, सामान्य SSL प्रोटोकॉल वर्शन या सिफ़र सुइट का समर्थन नहीं करते हैं.</translation>
+<translation id="4075941231477579656">टच आईडी</translation>
 <translation id="4079302484614802869">प्रॉक्‍सी कॉन्‍फ़िगरेशन को .pac स्‍क्रिप्‍ट यूआरएल का उपयोग करने के लिए सेट किया जाता है, फ़िक्‍स्‍ड प्रॉक्‍सी सर्वर के लिए नहीं.</translation>
 <translation id="4082393374666368382">सेटिंग - प्रबंधन</translation>
 <translation id="4098354747657067197">आगे भ्रामक साइट है</translation>
@@ -700,6 +706,7 @@
 <translation id="4372948949327679948">अपेक्षित <ph name="VALUE_TYPE" /> मान.</translation>
 <translation id="4377125064752653719">आपने <ph name="DOMAIN" /> तक पहुंचने की कोशिश की, लेकिन सर्वर से मिले प्रमाणपत्र को उसके जारीकर्ता ने रद्द कर दिया है. इसका मतलब है कि सर्वर से मिली सुरक्षा प्रमाणिकता पर पूरी तरह भरोसा नहीं करना चाहिए. हो सकता है कि आप किसी हमलावर से बातचीत कर रहे हों.</translation>
 <translation id="4378154925671717803">फ़ोन</translation>
+<translation id="4398334096870680409">यह सुविधा आपके डिवाइस पर उपलब्ध नहीं है.</translation>
 <translation id="4406896451731180161">खोज नतीजे</translation>
 <translation id="4408413947728134509"><ph name="NUM_COOKIES" /> कुकी</translation>
 <translation id="4415426530740016218">पिकअप का पता</translation>
@@ -749,6 +756,7 @@
 <translation id="4691835149146451662">आर्किटेक्चर-ए (एन्वेलप)</translation>
 <translation id="4701488924964507374"><ph name="SENTENCE1" /> <ph name="SENTENCE2" /></translation>
 <translation id="4708268264240856090">आपका कनेक्शन बाधित था</translation>
+<translation id="4712404868219726379">Windows Hello</translation>
 <translation id="4722547256916164131"><ph name="BEGIN_LINK" />Windows नेटवर्क निदान चलाकर देखें<ph name="END_LINK" /></translation>
 <translation id="4725851834065990915">आप जो साइट या ऐप्लिकेशन इस्तेमाल करते हैं उसमें डेटा का उल्लंघन होने पर आपका पासवर्ड उजागर हो सकता है. Chrome सुझाव देता है कि आप अपने सेव किए हुए पासवर्ड की अभी जांच करें.</translation>
 <translation id="4726672564094551039">नीतियां फिर से लोड करें</translation>
@@ -820,6 +828,7 @@
 <translation id="5043480802608081735">आपका कॉपी किया हुआ लिंक</translation>
 <translation id="5045550434625856497">ग़लत पासवर्ड</translation>
 <translation id="5056549851600133418">आपके लिए लेख</translation>
+<translation id="5061227663725596739">क्या आपका मतलब <ph name="LOOKALIKE_DOMAIN" /> से है?</translation>
 <translation id="5068524481479508725">ए10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 कुकी इस्तेमाल में है)}one{(# कुकी इस्तेमाल में हैं)}other{(# कुकी इस्तेमाल में हैं)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />प्रॉक्सी पते की जाँच करें<ph name="END_LINK" /></translation>
@@ -873,6 +882,7 @@
 <translation id="5284909709419567258">नेटवर्क के पते</translation>
 <translation id="5285570108065881030">सेव किए गए सभी पासवर्ड दिखाएं</translation>
 <translation id="5287240709317226393">कुकी दिखाएं</translation>
+<translation id="5287456746628258573">यह साइट एक पुराने सुरक्षा कॉन्फ़िगरेशन का इस्तेमाल करती है. इस वजह से, साइट पर भेजी जाने वाली आपकी जानकारी (उदाहरण के लिए, पासवर्ड या क्रेडिट कार्ड नंबर वगैरह) को कोई और देख सकता है.</translation>
 <translation id="5288108484102287882">नीति मानों की पुष्टि से चेतावनियां मिली हैं</translation>
 <translation id="5299298092464848405">नीति पार्स करने में गड़बड़ी</translation>
 <translation id="5300589172476337783">दिखाएं</translation>
@@ -1000,6 +1010,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> को खोला जा रहा है…</translation>
 <translation id="5947933617628957894">हां, जोड़ें</translation>
 <translation id="5951495562196540101">उपभोक्ता खाते (पैकेज किया गया लाइसेंस मौजूद है) के साथ नामांकन नहीं कर सकते.</translation>
+<translation id="5966900314707961320">इसके चालू होने पर साइटें उन कुकी का इस्तेमाल नहीं कर सकतीं जो आपको वेब पर ट्रैक करती हैं</translation>
 <translation id="5967592137238574583">संपर्क जानकारी में बदलाव करें</translation>
 <translation id="5967867314010545767">इतिहास से निकालें</translation>
 <translation id="5975083100439434680">ज़ूम आउट</translation>
@@ -1082,6 +1093,7 @@
 <translation id="6383221683286411806">आगे शुल्क लग सकते हैं.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 अन्‍य सुझाव}one{# अन्‍य सुझाव}other{# अन्‍य सुझाव}}</translation>
 <translation id="6387754724289022810">अगली बार तेज़ी से भुगतान करने के लिए, अपने कार्ड और बिलिंग पते को अपने Google खाते में और इस डिवाइस में सेव करें.</translation>
+<translation id="6389470377220713856">कार्ड पर नाम</translation>
 <translation id="6390200185239044127">ज़ी-फ़ोल्ड हाल्फ़</translation>
 <translation id="6390662030813198813">इंजीनियरिंग-ई</translation>
 <translation id="6401136357288658127">यह नीति हटा दी गई है. आपको इसके बजाय, इस <ph name="NEW_POLICY" /> नीति का इस्तेमाल करना चाहिए.</translation>
@@ -1260,7 +1272,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">जुड़ा हुआ है या नहीं:</translation>
 <translation id="7349430561505560861">ए4-एक्स्ट्रा</translation>
-<translation id="7352902249897488700">इस साइट का इस्तेमाल न करें</translation>
 <translation id="7353601530677266744">कमांड लाइन</translation>
 <translation id="7372973238305370288">खोज नतीजे</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1293,6 +1304,7 @@
 <translation id="7460618730930299168">यह स्क्रीनिंग आपकी चुनी गई स्क्रीनिंग से अलग है. क्या आप जारी रखना चाहते हैं?</translation>
 <translation id="7473891865547856676">नहीं, रहने दें</translation>
 <translation id="7481312909269577407">आगे जाएं</translation>
+<translation id="748406663033922918">अपने सेव किए गए पैसे चुकाने के तरीकों की पुष्टि करने के लिए स्क्रीन लॉक का इस्तेमाल करें.</translation>
 <translation id="7485870689360869515">कोई डेटा नहीं मिला</translation>
 <translation id="7498234416455752244">बदलाव करना जारी रखें</translation>
 <translation id="7508255263130623398">वापस लौटाया हुआ नीति डिवाइस आईडी खाली है या उसका मिलान वर्तमान डिवाइस आईडी से नहीं होता है</translation>
@@ -1432,6 +1444,7 @@
 <translation id="8131740175452115882">दुबारा पूछें</translation>
 <translation id="8149426793427495338">आपका कंप्यूटर निष्क्रिय हो गया है.</translation>
 <translation id="8150722005171944719"><ph name="URL" /> पर मौजूद फ़ाइल पढ़ने के लायक नहीं है.  हो सकता है कि इसे हटा दिया गया हो, कहीं ले जाया गया हो, या फ़ाइल की अनुमतियां एक्सेस को रोक रही हों.</translation>
+<translation id="8157295877370077682">साइट छोड़ें</translation>
 <translation id="8163866351304776260">बाईं ओर क्वाड पंच</translation>
 <translation id="8175796834047840627">आपके साइन इन किए होने की वजह से Chrome आपको Google खाते में कार्ड सेव करने की सुविधा देता है. आप सेटिंग में जाकर इसे बदल सकते हैं.</translation>
 <translation id="8184538546369750125">वैश्विक डिफ़ॉल्ट का उपयोग करें (अनुमति दें)</translation>
diff --git a/components/strings/components_strings_hr.xtb b/components/strings/components_strings_hr.xtb
index de3361c..94184f4 100644
--- a/components/strings/components_strings_hr.xtb
+++ b/components/strings/components_strings_hr.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Otvori polazne stranice</translation>
 <translation id="1883255238294161206">Sažmi popis</translation>
 <translation id="1898423065542865115">Filtriranje</translation>
+<translation id="1901443836186977402">{1,plural, =1{Poslužitelj nije mogao dokazati da je <ph name="DOMAIN" />; njegov sigurnosni certifikat istekao je od jučer. Razlog može biti pogrešna konfiguracija ili napad na vašu vezu. Sat vašeg računala trenutačno je postavljen na <ph name="CURRENT_DATE" />. Je li to u redu? Ako nije, ispravite vrijeme na satu sustava, a zatim osvježite ovu stranicu.}one{Poslužitelj nije mogao dokazati da je <ph name="DOMAIN" />; njegov sigurnosni certifikat istekao je prije # dan. To može biti uzrokovano pogrešnom konfiguracijom ili napadom na vašu vezu. Sat vašeg računala trenutačno je postavljen na <ph name="CURRENT_DATE" />. Je li to točno? Ako nije, postavite sat sustava na točno vrijeme i osvježite stranicu.}few{Poslužitelj nije mogao dokazati da je <ph name="DOMAIN" />; njegov sigurnosni certifikat istekao je prije # dana. To može biti uzrokovano pogrešnom konfiguracijom ili napadom na vašu vezu. Sat vašeg računala trenutačno je postavljen na <ph name="CURRENT_DATE" />. Je li to točno? Ako nije, postavite sat sustava na točno vrijeme i osvježite stranicu.}other{Poslužitelj nije mogao dokazati da je <ph name="DOMAIN" />; njegov sigurnosni certifikat istekao je prije # dana. To može biti uzrokovano pogrešnom konfiguracijom ili napadom na vašu vezu. Sat vašeg računala trenutačno je postavljen na <ph name="CURRENT_DATE" />. Je li to točno? Ako nije, postavite sat sustava na točno vrijeme i osvježite stranicu.}}</translation>
 <translation id="1914326953223720820">Usluga raspakiravanja</translation>
 <translation id="1915697529809968049">Želite li koristiti Touch ID umjesto CVC-a?</translation>
 <translation id="1916770123977586577">Ponovo učitajte stranicu da bi se ažurirane postavke primijenile na ovu web-lokaciju</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminiranje</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Pokušajte pokrenuti Dijagnostiku povezivosti<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Otvorite <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Nijedan}=1{podaci o prijavi za jedan račun}one{podaci o prijavi za # račun}few{podaci o prijavi za # računa}other{podaci o prijavi za # računa}}</translation>
 <translation id="3145945101586104090">Dekodiranje odgovora nije uspjelo</translation>
 <translation id="3150653042067488994">Privremena pogreška poslužitelja</translation>
@@ -828,6 +830,7 @@
 <translation id="5043480802608081735">Veza koju ste kopirali</translation>
 <translation id="5045550434625856497">Pogrešna zaporka</translation>
 <translation id="5056549851600133418">Preporučeni članci</translation>
+<translation id="5061227663725596739">Jeste li mislili <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(jedan u upotrebi)}one{(# u upotrebi)}few{(# u upotrebi)}other{(# u upotrebi)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />provjerite proxy adresu<ph name="END_LINK" /></translation>
@@ -881,6 +884,7 @@
 <translation id="5284909709419567258">Mrežne adrese</translation>
 <translation id="5285570108065881030">Prikaži sve spremljene zaporke</translation>
 <translation id="5287240709317226393">Pokaži kolačiće</translation>
+<translation id="5287456746628258573">Ta web-lokacija upotrebljava zastarjelu sigurnosnu konfiguraciju, pa bi vaši podaci (na primjer zaporke ili brojevi kreditnih kartica) mogli biti otkriveni kad se šalju na nju.</translation>
 <translation id="5288108484102287882">Potvrđivanje vrijednosti pravila rezultiralo je upozorenjima</translation>
 <translation id="5299298092464848405">Pogreška u pravilu analize</translation>
 <translation id="5300589172476337783">Prikaži</translation>
@@ -1009,6 +1013,7 @@
 <translation id="5946937721014915347">Otvaranje web-lokacije <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Da, dodaj</translation>
 <translation id="5951495562196540101">Prijava s računom potrošača nije moguća (dostupna je paketna licenca).</translation>
+<translation id="5966900314707961320">Kad je ta značajka uključena, web-lokacije ne mogu upotrebljavati kolačiće koji vas prate na webu</translation>
 <translation id="5967592137238574583">Uredite podatke za kontakt</translation>
 <translation id="5967867314010545767">Ukloni iz povijesti</translation>
 <translation id="5975083100439434680">Smanji</translation>
@@ -1091,6 +1096,7 @@
 <translation id="6383221683286411806">Ako nastavite, moguća je naplata.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 drugi prijedlog}one{# drugi prijedlog}few{# druga prijedloga}other{# drugih prijedloga}}</translation>
 <translation id="6387754724289022810">Da biste sljedeći put platili brže, karticu i adresu za naplatu spremite na svoj Google račun i na ovaj uređaj.</translation>
+<translation id="6389470377220713856">Ime na kartici</translation>
 <translation id="6390200185239044127">Cik-cak presavijanje napola</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Pravilo je ukinuto. Trebali biste koristiti pravilo <ph name="NEW_POLICY" />.</translation>
@@ -1269,7 +1275,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Korisnik je povezan:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Napusti ovu web-lokaciju</translation>
 <translation id="7353601530677266744">Naredbeni redak</translation>
 <translation id="7372973238305370288">rezultat pretraživanja</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1442,6 +1447,7 @@
 <translation id="8131740175452115882">Potvrdi</translation>
 <translation id="8149426793427495338">Računalo je u stanju mirovanja.</translation>
 <translation id="8150722005171944719">Datoteka na adresi <ph name="URL" /> nije čitljiva. Možda je uklonjena ili premještena ili dozvole datoteka sprječavaju pristup.</translation>
+<translation id="8157295877370077682">Napusti web-lokaciju</translation>
 <translation id="8163866351304776260">Četverostruko bušenje s lijeve strane</translation>
 <translation id="8175796834047840627">Chrome vam nudi spremanje vaših kartica na vaš Google račun jer ste prijavljeni. To ponašanje možete promijeniti u postavkama.</translation>
 <translation id="8184538546369750125">Upotrijebi globalnu zadanu vrijednost (dopusti)</translation>
diff --git a/components/strings/components_strings_hu.xtb b/components/strings/components_strings_hu.xtb
index eb4341a..4f94265 100644
--- a/components/strings/components_strings_hu.xtb
+++ b/components/strings/components_strings_hu.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Kezdőoldalak megnyitása</translation>
 <translation id="1883255238294161206">Lista bezárása</translation>
 <translation id="1898423065542865115">Szűrés</translation>
+<translation id="1901443836186977402">{1,plural, =1{A szerver nem tudta bizonyítani, hogy valóban a(z) <ph name="DOMAIN" /> domainbe tartozik; a biztonsági tanúsítványa a tegnapi nappal lejárt. Ezt okozhatja konfigurációs hiba, vagy az, hogy egy támadó eltérítette az Ön kapcsolatát. Számítógépének órája jelenleg a következőre van állítva: <ph name="CURRENT_DATE" />. Ez megfelelőnek tűnik? Ha nem, állítsa be megfelelően a rendszer óráját, majd frissítse az oldalt.}other{A szerver nem tudta bizonyítani, hogy valóban a(z) <ph name="DOMAIN" /> domainbe tartozik; biztonsági tanúsítványa lejárt # nappal ezelőtt. Ezt okozhatja konfigurációs hiba, vagy az, hogy egy támadó eltérítette el az Ön kapcsolatát. Számítógépének órája jelenleg a következőre van állítva: <ph name="CURRENT_DATE" />. Ez megfelelőnek tűnik? Ha nem, állítsa be megfelelően a rendszer óráját, majd frissítse az oldalt.}}</translation>
 <translation id="1914326953223720820">Kicsomagolási szolgáltatás</translation>
 <translation id="1915697529809968049">A Touch ID funkciót szeretné használni a CVC helyett?</translation>
 <translation id="1916770123977586577">A frissített beállításoknak a webhelyen történő alkalmazásához töltse be újra az oldalt</translation>
@@ -443,6 +444,7 @@
 <translation id="3116158981186517402">Laminálás</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Próbálkozzon a kapcsolódási diagnosztika futtatásával<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Ugrás ide: <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Nincs}=1{bejelentkezési adat 1 fiókhoz}other{bejelentkezési adat # fiókhoz}}</translation>
 <translation id="3145945101586104090">Nem sikerült dekódolni a választ</translation>
 <translation id="3150653042067488994">Átmeneti szerverhiba</translation>
@@ -825,6 +827,7 @@
 <translation id="5043480802608081735">Vágólapra másolt link</translation>
 <translation id="5045550434625856497">Helytelen jelszó</translation>
 <translation id="5056549851600133418">Cikkek Önnek</translation>
+<translation id="5061227663725596739">Erre gondolt: <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 van használatban)}other{(# van használatban)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />A proxy címének ellenőrzése<ph name="END_LINK" /></translation>
@@ -878,6 +881,7 @@
 <translation id="5284909709419567258">Hálózati címek</translation>
 <translation id="5285570108065881030">Az összes mentett jelszó megjelenítése</translation>
 <translation id="5287240709317226393">Cookie-k megjelenítése</translation>
+<translation id="5287456746628258573">Ez a webhely elavult biztonsági konfigurációt használ, ezért előfordulhat, hogy mások látják az Ön adatait (például jelszavait vagy hitelkártyaszámait), amikor elküldi őket a webhelynek.</translation>
 <translation id="5288108484102287882">A házirendértékek ellenőrzése során figyelmeztetések merültek fel</translation>
 <translation id="5299298092464848405">Irányelv-előfeldolgozási hiba</translation>
 <translation id="5300589172476337783">Megjelenítés</translation>
@@ -1005,6 +1009,7 @@
 <translation id="5946937721014915347">A(z) <ph name="SITE_NAME" /> megnyitása…</translation>
 <translation id="5947933617628957894">Igen, hozzáadom</translation>
 <translation id="5951495562196540101">Fogyasztói fiókkal nem lehet regisztrálni (a csomaghoz tartozik licenc is).</translation>
+<translation id="5966900314707961320">Bekapcsolt állapotban a webhelyek nem tudnak cookie-kat használni, amelyek nyomon követik tevékenységeit az interneten</translation>
 <translation id="5967592137238574583">Kapcsolattartási adatok szerkesztése</translation>
 <translation id="5967867314010545767">Eltávolítás az előzmények közül</translation>
 <translation id="5975083100439434680">Kicsinyítés</translation>
@@ -1087,6 +1092,7 @@
 <translation id="6383221683286411806">Itt fizetésre próbálhatják rávenni.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 egyéb javaslat}other{# egyéb javaslat}}</translation>
 <translation id="6387754724289022810">A következő alkalommal gyorsabban fizethet, ha kártyáját és számlázási címét elmenti Google-fiókjába és az eszközre.</translation>
+<translation id="6389470377220713856">A kártyán szereplő név</translation>
 <translation id="6390200185239044127">Félbehajtás Z-hajtással</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Ez a házirend megszűnt. Használja helyette a(z) <ph name="NEW_POLICY" /> házirendet.</translation>
@@ -1265,7 +1271,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Társult felhasználó:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Webhely elhagyása</translation>
 <translation id="7353601530677266744">Parancssor</translation>
 <translation id="7372973238305370288">keresési találat</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1438,6 +1443,7 @@
 <translation id="8131740175452115882">Megerősítés</translation>
 <translation id="8149426793427495338">Számítógépe alvó üzemmódba váltott.</translation>
 <translation id="8150722005171944719">A fájl (<ph name="URL" />) nem olvasható. Lehet, hogy eltávolították, áthelyezték, vagy a fájlengedélyek megakadályozzák a hozzáférést.</translation>
+<translation id="8157295877370077682">Webhely elhagyása</translation>
 <translation id="8163866351304776260">Négy lyuk a bal oldalon</translation>
 <translation id="8175796834047840627">A Chrome felajánlja a kártyák mentését az Ön Google-fiókjába, mert be van jelentkezve. A beállítások között ezt bármikor módosíthatja.</translation>
 <translation id="8184538546369750125">Globális alapértelmezés használata (Engedélyezés)</translation>
diff --git a/components/strings/components_strings_id.xtb b/components/strings/components_strings_id.xtb
index 191c9f4..7fa5c4c 100644
--- a/components/strings/components_strings_id.xtb
+++ b/components/strings/components_strings_id.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Buka halaman awal</translation>
 <translation id="1883255238294161206">Ciutkan daftar</translation>
 <translation id="1898423065542865115">Pemfilteran</translation>
+<translation id="1901443836186977402">{1,plural, =1{Server ini tidak dapat membuktikan bahwa ini adalah <ph name="DOMAIN" />; masa berlaku sertifikat keamanannya telah habis beberapa hari yang lalu. Hal ini mungkin disebabkan oleh kesalahan konfigurasi, atau ada penyerang yang menginterupsi sambungan Anda. Saat ini jam komputer Anda disetel ke <ph name="CURRENT_DATE" />. Apakah sudah sesuai? Jika belum, sebaiknya perbaiki jam sistem dan muat ulang halaman ini.}other{Server ini tidak dapat membuktikan bahwa ini adalah <ph name="DOMAIN" />; masa berlaku sertifikat keamanannya telah habis # hari yang lalu. Hal ini mungkin disebabkan oleh kesalahan konfigurasi, atau ada penyerang yang menginterupsi sambungan Anda. Saat ini jam komputer Anda disetel ke <ph name="CURRENT_DATE" />. Apakah sudah benar? Jika belum, sebaiknya perbaiki jam sistem dan muat ulang halaman ini.}}</translation>
 <translation id="1914326953223720820">Layanan Ekstraksi File</translation>
 <translation id="1915697529809968049">Gunakan Touch ID dan bukan CVC?</translation>
 <translation id="1916770123977586577">Untuk menerapkan setelan yang telah diupdate pada situs ini, muat ulang halaman ini</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminasi</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Coba jalankan Diagnostik Konektivitas<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Buka <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Tidak ada}=1{data login untuk 1 akun}other{data login untuk # akun}}</translation>
 <translation id="3145945101586104090">Gagal mendekodekan tanggapan</translation>
 <translation id="3150653042067488994">Kesalahan server sementara</translation>
@@ -828,6 +830,7 @@
 <translation id="5043480802608081735">Link yang Anda Salin</translation>
 <translation id="5045550434625856497">Sandi salah</translation>
 <translation id="5056549851600133418">Artikel untuk Anda</translation>
+<translation id="5061227663725596739">Mungkin maksud Anda <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 terpakai)}other{(# terpakai)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Periksa alamat proxy<ph name="END_LINK" /></translation>
@@ -881,6 +884,7 @@
 <translation id="5284909709419567258">Alamat jaringan</translation>
 <translation id="5285570108065881030">Tampilkan semua sandi tersimpan</translation>
 <translation id="5287240709317226393">Tampilkan cookie</translation>
+<translation id="5287456746628258573">Situs ini menggunakan konfigurasi keamanan yang telah habis masa berlakunya, yang dapat mengekspos informasi Anda (misalnya, sandi atau nomor kartu kredit) saat dikirimkan ke situs ini.</translation>
 <translation id="5288108484102287882">Validasi nilai kebijakan telah memunculkan peringatan</translation>
 <translation id="5299298092464848405">Kebijakan kesalahan penguraian</translation>
 <translation id="5300589172476337783">Tampilkan</translation>
@@ -1009,6 +1013,7 @@
 <translation id="5946937721014915347">Membuka <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Ya, tambahkan</translation>
 <translation id="5951495562196540101">Tidak dapat mendaftar dengan akun konsumen (tersedia paket lisensi).</translation>
+<translation id="5966900314707961320">Saat diaktifkan, situs tidak dapat menggunakan cookie yang akan memantau Anda di seluruh web</translation>
 <translation id="5967592137238574583">Edit Info Kontak</translation>
 <translation id="5967867314010545767">Hapus dari histori</translation>
 <translation id="5975083100439434680">Perkecil</translation>
@@ -1091,6 +1096,7 @@
 <translation id="6383221683286411806">Kemungkinan mengenakan tagihan di awal.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 saran lain}other{# saran lain}}</translation>
 <translation id="6387754724289022810">Untuk membayar lebih cepat di pembelian berikutnya, simpan kartu dan alamat penagihan ke akun Google Anda.</translation>
+<translation id="6389470377220713856">Nama di Kartu</translation>
 <translation id="6390200185239044127">Lipatan Z setengah</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Kebijakan ini tidak digunakan lagi. Sebaiknya Anda menggunakan kebijakan <ph name="NEW_POLICY" />.</translation>
@@ -1267,7 +1273,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Berafiliasi:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Keluar dari situs ini</translation>
 <translation id="7353601530677266744">Baris Perintah</translation>
 <translation id="7372973238305370288">hasil penelusuran</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1440,6 +1445,7 @@
 <translation id="8131740175452115882">Konfirmasi</translation>
 <translation id="8149426793427495338">Komputer Anda sedang dalam mode tidur.</translation>
 <translation id="8150722005171944719">File pada <ph name="URL" /> tidak dapat dibaca.  File mungkin telah dihapus, dipindahkan, atau izin file mungkin mencegah akses.</translation>
+<translation id="8157295877370077682">Keluar dari situs</translation>
 <translation id="8163866351304776260">Empat lubang di kiri</translation>
 <translation id="8175796834047840627">Chrome menawarkan untuk menyimpan informasi kartu ke Akun Google Anda karena Anda sedang login. Anda dapat mengubah perilaku ini di setelan.</translation>
 <translation id="8184538546369750125">Gunakan default global (Izinkan)</translation>
diff --git a/components/strings/components_strings_it.xtb b/components/strings/components_strings_it.xtb
index 60d6330..a2d9e90 100644
--- a/components/strings/components_strings_it.xtb
+++ b/components/strings/components_strings_it.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Apri pagine iniziali</translation>
 <translation id="1883255238294161206">Comprimi elenco</translation>
 <translation id="1898423065542865115">Filtri</translation>
+<translation id="1901443836186977402">{1,plural, =1{Questo server non è riuscito a dimostrare che si tratta di <ph name="DOMAIN" />; il relativo certificato di sicurezza è scaduto meno di un giorno fa. Il problema potrebbe essere dovuto a un'errata configurazione o a un malintenzionato che intercetta la connessione. L'orologio del computer è attualmente impostato su <ph name="CURRENT_DATE" />. È corretto? Se è sbagliato, devi regolare l'orologio di sistema e aggiornare la pagina.}other{Questo server non è riuscito a verificare che si tratti di <ph name="DOMAIN" />; il relativo certificato di sicurezza è scaduto # giorni fa. Il problema potrebbe essere dovuto a un'errata configurazione o a un malintenzionato che intercetta la connessione. L'orologio del computer è attualmente impostato su <ph name="CURRENT_DATE" />. È corretto? Se è sbagliato, devi regolare l'orologio di sistema e aggiornare la pagina.}}</translation>
 <translation id="1914326953223720820">Servizio di decompressione</translation>
 <translation id="1915697529809968049">Usare Touch ID anziché CVC?</translation>
 <translation id="1916770123977586577">Ricarica la pagina per applicare le impostazioni aggiornate a questo sito</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Plastificazione</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Prova a eseguire lo strumento Diagnostica della connettività<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Vai al link: <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Nessuno}=1{dati di accesso per 1 account}other{dati di accesso per # account}}</translation>
 <translation id="3145945101586104090">Decodifica della risposta non riuscita</translation>
 <translation id="3150653042067488994">Errore temporaneo del server</translation>
@@ -826,6 +828,7 @@
 <translation id="5043480802608081735">Link copiato</translation>
 <translation id="5045550434625856497">Password non corretta</translation>
 <translation id="5056549851600133418">Articoli per te</translation>
+<translation id="5061227663725596739">Forse cercavi: <ph name="LOOKALIKE_DOMAIN" /></translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 in uso)}other{(# in uso)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Controllare l'indirizzo proxy<ph name="END_LINK" /></translation>
@@ -879,6 +882,7 @@
 <translation id="5284909709419567258">Indirizzi di rete</translation>
 <translation id="5285570108065881030">Mostra tutte le password salvate</translation>
 <translation id="5287240709317226393">Mostra cookie</translation>
+<translation id="5287456746628258573">Le tue informazioni (ad esempio password o numeri di carte di credito) potrebbero essere a rischio, poiché questo sito utilizza una configurazione di sicurezza obsoleta.</translation>
 <translation id="5288108484102287882">La convalida dei valori della norma ha generato degli avvisi</translation>
 <translation id="5299298092464848405">Errore durante l'analisi del criterio</translation>
 <translation id="5300589172476337783">Mostra</translation>
@@ -1007,6 +1011,7 @@
 <translation id="5946937721014915347">Apertura di <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Sì, aggiungi</translation>
 <translation id="5951495562196540101">Impossibile effettuare la registrazione con l'account consumer (è disponibile la licenza inclusa).</translation>
+<translation id="5966900314707961320">Se attivo, i siti non possono usare i cookie che tengono traccia della tua navigazione sul Web</translation>
 <translation id="5967592137238574583">Modifica informazioni di contatto</translation>
 <translation id="5967867314010545767">Rimuovi da cronologia</translation>
 <translation id="5975083100439434680">Diminuisci lo zoom</translation>
@@ -1088,6 +1093,7 @@
 <translation id="6383221683286411806">Potrebbe essere applicato un addebito.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 altro suggerimento}other{# altri suggerimenti}}</translation>
 <translation id="6387754724289022810">Per pagare più velocemente la prossima volta, salva la carta e l'indirizzo di fatturazione sul tuo Account Google e su questo dispositivo.</translation>
+<translation id="6389470377220713856">Nome sulla carta</translation>
 <translation id="6390200185239044127">Piegatura a Z a metà</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Questa norma è obsoleta. Dovresti usare invece la norma <ph name="NEW_POLICY" />.</translation>
@@ -1266,7 +1272,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Con affiliazione:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Esci da questo sito</translation>
 <translation id="7353601530677266744">Riga di comando</translation>
 <translation id="7372973238305370288">risultato della ricerca</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1439,6 +1444,7 @@
 <translation id="8131740175452115882">Conferma</translation>
 <translation id="8149426793427495338">Il computer è entrato in modalità sospensione.</translation>
 <translation id="8150722005171944719">Il file all'indirizzo <ph name="URL" /> non è leggibile. Potrebbe essere stato rimosso, spostato oppure delle autorizzazioni del file potrebbero impedire l'accesso.</translation>
+<translation id="8157295877370077682">Esci dal sito</translation>
 <translation id="8163866351304776260">Perforatura quadrupla a sinistra</translation>
 <translation id="8175796834047840627">Chrome chiede se vuoi salvare le tue carte nel tuo Account Google perché hai eseguito l'accesso. Puoi modificare questo comportamento nelle impostazioni.</translation>
 <translation id="8184538546369750125">Usa predefinita globale (Consenti)</translation>
diff --git a/components/strings/components_strings_iw.xtb b/components/strings/components_strings_iw.xtb
index 2938ff7f..2240d2f 100644
--- a/components/strings/components_strings_iw.xtb
+++ b/components/strings/components_strings_iw.xtb
@@ -1095,6 +1095,7 @@
 <translation id="6383221683286411806">ייתכנו חיובים באתר.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{הצעה אחת נוספת}two{שתי הצעות נוספות}many{# הצעות נוספות}other{# הצעות נוספות}}</translation>
 <translation id="6387754724289022810">‏כדי לשלם מהר יותר בפעם הבאה, אפשר לשמור בחשבון Google ובמכשיר הזה את פרטי הכרטיס ואת הכתובת לחיוב.</translation>
+<translation id="6389470377220713856">שם על הכרטיס</translation>
 <translation id="6390200185239044127">‏קיפול Z עד האמצע</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">המדיניות הזו הוצאה משימוש. במקומה יש להשתמש במדיניות <ph name="NEW_POLICY" />.</translation>
@@ -1273,7 +1274,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">משויך:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">יציאה מהאתר הזה</translation>
 <translation id="7353601530677266744">שורת פקודה </translation>
 <translation id="7372973238305370288">תוצאת חיפוש</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
diff --git a/components/strings/components_strings_ja.xtb b/components/strings/components_strings_ja.xtb
index 45abe2e..c2e6266 100644
--- a/components/strings/components_strings_ja.xtb
+++ b/components/strings/components_strings_ja.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">起動ページを開く</translation>
 <translation id="1883255238294161206">リストを折りたたむ</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>
 <translation id="1914326953223720820">解凍サービス</translation>
 <translation id="1915697529809968049">CVC の代わりに Touch ID を使用しますか?</translation>
 <translation id="1916770123977586577">更新後の設定をこのサイトに適用するには、このページを再読み込みしてください</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">ラミネート</translation>
 <translation id="3120730422813725195">ELO</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />接続診断ツールを実行してみてください<ph name="END_LINK" />。</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" /> に移動</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{なし}=1{1 件のアカウントのログインデータ}other{# 件のアカウントのログインデータ}}</translation>
 <translation id="3145945101586104090">応答をデコードできませんでした</translation>
 <translation id="3150653042067488994">一時的なサーバー エラーです</translation>
@@ -813,6 +815,7 @@
 <translation id="5043480802608081735">コピーしたリンク</translation>
 <translation id="5045550434625856497">パスワードが正しくありません</translation>
 <translation id="5056549851600133418">おすすめの記事</translation>
+<translation id="5061227663725596739">もしかして: <ph name="LOOKALIKE_DOMAIN" /></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>
@@ -866,6 +869,7 @@
 <translation id="5284909709419567258">ネットワーク アドレス</translation>
 <translation id="5285570108065881030">保存したパスワードをすべて表示</translation>
 <translation id="5287240709317226393">Cookie を表示</translation>
+<translation id="5287456746628258573">このサイトでは古いセキュリティ設定を使用しています。このサイトにパスワードやクレジット カード番号などの情報を送信すると流出する恐れがあります。</translation>
 <translation id="5288108484102287882">ポリシー値の検証で警告が返されました</translation>
 <translation id="5299298092464848405">ポリシーの解析中にエラーが発生しました</translation>
 <translation id="5300589172476337783">表示</translation>
@@ -993,6 +997,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> を開いています…</translation>
 <translation id="5947933617628957894">はい、追加します</translation>
 <translation id="5951495562196540101">一般ユーザー向けアカウントでは登録できません(ライセンス パッケージが利用可能です)。</translation>
+<translation id="5966900314707961320">オンにすると、サイトは Cookie を使用してあなたをウェブ上でトラッキングできなくなります</translation>
 <translation id="5967592137238574583">連絡先情報の編集</translation>
 <translation id="5967867314010545767">履歴から削除</translation>
 <translation id="5975083100439434680">縮小する</translation>
@@ -1022,7 +1027,7 @@
 <translation id="6047927260846328439">アクセス先のコンテンツは、ユーザーをだましてソフトウェアをインストールさせようとしたり、個人情報を危険にさらしたりする可能性があります。<ph name="BEGIN_LINK" />危険性を理解したうえで表示する<ph name="END_LINK" /></translation>
 <translation id="6051221802930200923"><ph name="SITE" /> では証明書ピンニングが使用されているため、現在アクセスできません。通常、ネットワーク エラーやネットワークへの攻撃は一時的なものです。しばらくするとページにアクセスできるようになります。</translation>
 <translation id="6052284303005792909">•</translation>
-<translation id="6058977677006700226">お使いのどのデバイスでも同じカードを使用できるようにしかすか?</translation>
+<translation id="6058977677006700226">お使いのどのデバイスでも同じカードを使用できるようにしますか?</translation>
 <translation id="6059925163896151826">USB デバイス</translation>
 <translation id="6060009363608157444">無効な DnsOverHttps モードです。</translation>
 <translation id="6064217302520318294">画面ロック</translation>
@@ -1075,6 +1080,7 @@
 <translation id="6383221683286411806">続行すると料金が請求される可能性があります。</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{他 1 件の候補}other{他 # 件の候補}}</translation>
 <translation id="6387754724289022810">カードと請求先住所を Google アカウントとこのデバイスに保存すると、次回のお支払いが簡単になります。</translation>
+<translation id="6389470377220713856">カード名義人(半角英文字)</translation>
 <translation id="6390200185239044127">2 つ折り直角 Z 折り</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">このポリシーはサポートが終了したため、代わりに <ph name="NEW_POLICY" /> ポリシーを使用してください。</translation>
@@ -1253,7 +1259,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">外部のユーザーかどうか:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">このサイトから離れる</translation>
 <translation id="7353601530677266744">コマンドライン</translation>
 <translation id="7372973238305370288">検索結果</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1426,6 +1431,7 @@
 <translation id="8131740175452115882">確認</translation>
 <translation id="8149426793427495338">パソコンがスリープ状態です。</translation>
 <translation id="8150722005171944719"><ph name="URL" /> のファイルを読むことができません。削除されたか移動された可能性があります。ファイルに対するアクセス権がない場合もあります。</translation>
+<translation id="8157295877370077682">このサイトから離れる</translation>
 <translation id="8163866351304776260">4 穴パンチ(左)</translation>
 <translation id="8175796834047840627">ログインしている場合は、その Google アカウントにカードを保存できます。この動作は設定で変更できます。</translation>
 <translation id="8184538546369750125">グローバルのデフォルト値([許可])を使用</translation>
diff --git a/components/strings/components_strings_kn.xtb b/components/strings/components_strings_kn.xtb
index 48dd426..20383e4 100644
--- a/components/strings/components_strings_kn.xtb
+++ b/components/strings/components_strings_kn.xtb
@@ -201,6 +201,7 @@
 <translation id="187918866476621466">ಆರಂಭಿಕ ಪುಟಗಳನ್ನು ತೆರೆಯಿರಿ</translation>
 <translation id="1883255238294161206">ಪಟ್ಟಿಯನ್ನು ಸಂಕುಚಿಸಿ</translation>
 <translation id="1898423065542865115">ಫಿಲ್ಟರಿಂಗ್</translation>
+<translation id="1901443836186977402">{1,plural, =1{ಈ ಸರ್ವರ್ <ph name="DOMAIN" /> ಆಗಿದೆ ಎಂಬುದನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಅದಕ್ಕೆ ಸಾಧ್ಯವಾಗಲಿಲ್ಲ; ಹಿಂದಿನ ದಿನವೇ ಅದರ ಸುರಕ್ಷತಾ ಪ್ರಮಾಣಪತ್ರದ ಅವಧಿ ಮುಗಿದಿದೆ. ಇದು ತಪ್ಪು ಕಾನ್ಫಿಗರೇಶನ್‌ನಿಂದ ಅಥವಾ ದಾಳಿಕೋರರು ನಿಮ್ಮ ಕನೆಕ್ಷನ್‌ಗೆ ಅಡ್ಡಿಪಡಿಸಿರುವುದರಿಂದ ಉಂಟಾಗಿರಬಹುದು. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನ ಗಡಿಯಾರವನ್ನು ಪ್ರಸ್ತುತ <ph name="CURRENT_DATE" /> ಕ್ಕೆ ಹೊಂದಿಸಲಾಗಿದೆ. ಅದು ಸರಿಯಾಗಿದೆಯೇ? ಇಲ್ಲದಿದ್ದರೆ, ನಿಮ್ಮ ಸಿಸ್ಟಂನ ಗಡಿಯಾರವನ್ನು ನೀವು ಸರಿಪಡಿಸಬೇಕು ಹಾಗೂ ನಂತರ ಈ ಪುಟವನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಬೇಕು.}one{ಈ ಸರ್ವರ್ <ph name="DOMAIN" /> ಆಗಿದೆ ಎಂಬುದನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಅದಕ್ಕೆ ಸಾಧ್ಯವಾಗಲಿಲ್ಲ; ಅದರ ಸುರಕ್ಷತಾ ಪ್ರಮಾಣಪತ್ರದ ಅವಧಿ # ದಿನಗಳ ಹಿಂದೆಯೇ ಮುಗಿದಿದೆ. ಇದು ತಪ್ಪು ಕಾನ್ಫಿಗರೇಶನ್‌ನಿಂದ ಅಥವಾ ದಾಳಿಕೋರರು ನಿಮ್ಮ ಕನೆಕ್ಷನ್‌ಗೆ ಅಡ್ಡಿಪಡಿಸಿರುವುದರಿಂದ ಉಂಟಾಗಿರಬಹುದು. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನ ಗಡಿಯಾರವನ್ನು ಪ್ರಸ್ತುತ <ph name="CURRENT_DATE" /> ಕ್ಕೆ ಹೊಂದಿಸಲಾಗಿದೆ. ಅದು ಸರಿಯಾಗಿದೆಯೇ? ಇಲ್ಲದಿದ್ದರೆ, ನಿಮ್ಮ ಸಿಸ್ಟಮ್‌ನ ಗಡಿಯಾರವನ್ನು ನೀವು ಸರಿಪಡಿಸಬೇಕು ಹಾಗೂ ನಂತರ ಈ ಪುಟವನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಬೇಕು.}other{ಈ ಸರ್ವರ್ <ph name="DOMAIN" /> ಆಗಿದೆ ಎಂಬುದನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಅದಕ್ಕೆ ಸಾಧ್ಯವಾಗಲಿಲ್ಲ; ಅದರ ಸುರಕ್ಷತಾ ಪ್ರಮಾಣಪತ್ರದ ಅವಧಿ # ದಿನಗಳ ಹಿಂದೆಯೇ ಮುಗಿದಿದೆ. ಇದು ತಪ್ಪು ಕಾನ್ಫಿಗರೇಶನ್‌ನಿಂದ ಅಥವಾ ದಾಳಿಕೋರರು ನಿಮ್ಮ ಕನೆಕ್ಷನ್‌ಗೆ ಅಡ್ಡಿಪಡಿಸಿರುವುದರಿಂದ ಉಂಟಾಗಿರಬಹುದು. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನ ಗಡಿಯಾರವನ್ನು ಪ್ರಸ್ತುತ <ph name="CURRENT_DATE" /> ಕ್ಕೆ ಹೊಂದಿಸಲಾಗಿದೆ. ಅದು ಸರಿಯಾಗಿದೆಯೇ? ಇಲ್ಲದಿದ್ದರೆ, ನಿಮ್ಮ ಸಿಸ್ಟಮ್‌ನ ಗಡಿಯಾರವನ್ನು ನೀವು ಸರಿಪಡಿಸಬೇಕು ಹಾಗೂ ನಂತರ ಈ ಪುಟವನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಬೇಕು.}}</translation>
 <translation id="1914326953223720820">ಸೇವೆಯನ್ನು ಅನ್ ಜಿಪ್ ಮಾಡಿ</translation>
 <translation id="1915697529809968049">CVC ಬದಲಿಗೆ ಸ್ಪರ್ಶ ಐಡಿಯನ್ನು ಬಳಸುವಿರಾ?</translation>
 <translation id="1916770123977586577">ನಿಮ್ಮ ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲಾದ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಈ ಸೈಟ್‌ಗೆ ಅನ್ವಯಿಸಲು, ಈ ಪುಟವನ್ನು ಪುನಃ ಲೋಡ್‌ ಮಾಡಿ</translation>
@@ -434,6 +435,7 @@
 <translation id="3116158981186517402">ಲ್ಯಾಮಿನೇಟ್ ಮಾಡಿ</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />ಸಂಪರ್ಕ ಡಯಾಗ್ನಾಸ್ಟಿಕ್ಸ್ ರನ್ ಮಾಡಲು ಪ್ರಯತ್ನಿಸಿ‌<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" /> ಗೆ ಹೋಗಿ</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{ಯಾವುದೂ ಇಲ್ಲ}=1{1 ಖಾತೆಯ ಸೈನ್ ಇನ್ ಡೇಟಾ}one{# ಖಾತೆಗಳ ಸೈನ್ ಇನ್ ಡೇಟಾ}other{# ಖಾತೆಗಳ ಸೈನ್ ಇನ್ ಡೇಟಾ}}</translation>
 <translation id="3145945101586104090">ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಡೀಕೋಡ್ ಮಾಡಲು ವಿಫಲವಾಗಿದೆ</translation>
 <translation id="3150653042067488994">ತಾತ್ಕಾಲಿಕ ಸರ್ವರ್  ದೋಷ</translation>
@@ -809,6 +811,7 @@
 <translation id="5043480802608081735">ನೀವು ನಕಲಿಸಿದ ಲಿಂಕ್</translation>
 <translation id="5045550434625856497">ತಪ್ಪು ಪಾಸ್‌ವರ್ಡ್</translation>
 <translation id="5056549851600133418">ನಿಮಗಾಗಿ ಲೇಖನಗಳು</translation>
+<translation id="5061227663725596739">ನೀವು ಹುಡುಕುತ್ತಿರುವುದು <ph name="LOOKALIKE_DOMAIN" /> ತಾನೇ?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 ಬಳಕೆಯಲ್ಲಿದೆ)}one{(# ಬಳಕೆಯಲ್ಲಿದೆ)}other{(# ಬಳಕೆಯಲ್ಲಿದೆ)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />ಪ್ರಾಕ್ಸಿ ವಿಳಾಸವನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ<ph name="END_LINK" /></translation>
@@ -862,6 +865,7 @@
 <translation id="5284909709419567258">ನೆಟ್‌ವರ್ಕ್ ವಿಳಾಸಗಳು</translation>
 <translation id="5285570108065881030">ಉಳಿಸಿದ ಎಲ್ಲ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ತೋರಿಸಿ</translation>
 <translation id="5287240709317226393">ಕುಕೀಸ್ ಅನ್ನು ತೋರಿಸಿ</translation>
+<translation id="5287456746628258573">ಈ ಸೈಟ್ ಹಳೆಯ ಸುರಕ್ಷತಾ ಕಾನ್ಫಿಗರೇಶನ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಇದು ನಿಮ್ಮ ಮಾಹಿತಿಯನ್ನು ಈ ಸೈಟ್‌ಗೆ ಕಳುಹಿಸಿದಾಗ ಅದನ್ನು (ಉದಾಹರಣೆಗೆ, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ಅಥವಾ ಕ್ರೆಡಿಟ್ ಕಾರ್ಡ್ ಸಂಖ್ಯೆಗಳು) ಬಹಿರಂಗಪಡಿಸಬಹುದು.</translation>
 <translation id="5288108484102287882">ಕಾರ್ಯನೀತಿ ಮೌಲ್ಯಗಳ ಮೌಲ್ಯೀಕರಣ ಪ್ರಕ್ರಿಯೆಯು ಎಚ್ಚರಿಕೆಯ ಸಂದೇಶಗಳನ್ನು ತೋರಿಸುತ್ತಿದೆ</translation>
 <translation id="5299298092464848405">ನೀತಿಯ ಪಾರ್ಸಿಂಗ್‌ನಲ್ಲಿ ದೋಷ</translation>
 <translation id="5300589172476337783">ಪ್ರದರ್ಶಿಸಿ</translation>
@@ -990,6 +994,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> ತೆರೆಯಲಾಗುತ್ತಿದೆ…</translation>
 <translation id="5947933617628957894">ಹೌದು, ಸೇರಿಸಿ</translation>
 <translation id="5951495562196540101">ಗ್ರಾಹಕರ ಖಾತೆಯ ಮೂಲಕ ನೋಂದಣಿ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ (ಪ್ಯಾಕೇಜ್ ಮಾಡಲಾದ ಪರವಾನಗಿ ಲಭ್ಯವಿದೆ).</translation>
+<translation id="5966900314707961320">ಆನ್ ಮಾಡಿದಾಗ, ನಿಮ್ಮನ್ನು ವೆಬ್‌ನಾದ್ಯಂತ ಟ್ರ್ಯಾಕ್ ಮಾಡುವ ಕುಕೀಗಳನ್ನು ಬಳಸಲು ಸೈಟ್‌ಗಳಿಗೆ ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ</translation>
 <translation id="5967592137238574583">ಸಂಪರ್ಕ ಮಾಹಿತಿಯನ್ನು ಎಡಿಟ್ ಮಾಡಿ</translation>
 <translation id="5967867314010545767">ಇತಿಹಾಸದಿಂದ ತೆಗೆದುಹಾಕಿ</translation>
 <translation id="5975083100439434680">ಝೂಮ್ ಔಟ್</translation>
@@ -1071,6 +1076,7 @@
 <translation id="6383221683286411806">ಮುಂದಕ್ಕೆ ಶುಲ್ಕವಿರುವ ಸಾಧ್ಯತೆಗಳಿವೆ</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 ಇತರ ಸಲಹೆ}one{# ಇತರ ಸಲಹೆಗಳು}other{# ಇತರ ಸಲಹೆಗಳು}}</translation>
 <translation id="6387754724289022810">ಮುಂದಿನ ಬಾರಿ ವೇಗವಾಗಿ ಪಾವತಿಸಲು, ನಿಮ್ಮ ಕಾರ್ಡ್‌ ಮತ್ತು ನಿಮ್ಮ ಬಿಲ್ಲಿಂಗ್ ವಿಳಾಸವನ್ನು Google ಖಾತೆಯಲ್ಲಿ ಮತ್ತು ಈ ಸಾಧನದಲ್ಲಿ ಉಳಿಸಿ.</translation>
+<translation id="6389470377220713856">ಕಾರ್ಡ್‌ನಲ್ಲಿರುವ ಹೆಸರು</translation>
 <translation id="6390200185239044127">ಅರ್ಧ ಝೆಡ್ ಮಾದರಿಯಲ್ಲಿ ಮಡಿಸಿ</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">ಈ ಕಾರ್ಯನೀತಿಯನ್ನು ತಡೆಹಿಡಿಯಲಾಗಿದೆ. ಇದರ ಬದಲಿಗೆ, ನೀವು <ph name="NEW_POLICY" /> ಕಾರ್ಯನೀತಿಯನ್ನು ಬಳಸಬೇಕು.</translation>
@@ -1249,7 +1255,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">ಸಂಯೋಜಿತವಾಗಿದ್ದಾರೆ:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">ಈ ಸೈಟ್‌ ಅನ್ನು ತೊರೆಯಿರಿ</translation>
 <translation id="7353601530677266744">ಕಮಾಂಡ್ ಸಾಲು</translation>
 <translation id="7372973238305370288">ಹುಡುಕಾಟ ಫಲಿತಾಂಶ</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1421,6 +1426,7 @@
 <translation id="8131740175452115882">ದೃಢೀಕರಿಸು</translation>
 <translation id="8149426793427495338">ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ ನಿದ್ರಾವಸ್ಥೆಗೆ ಹೋಗಿದೆ.</translation>
 <translation id="8150722005171944719"><ph name="URL" /> ನಲ್ಲಿನ ಫೈಲ್ ಓದುವಂತಿರುವುದಿಲ್ಲ. ಇದನ್ನು ತೆಗೆದುಹಾಕಬಹುದು, ಚಲಿಸಬಹುದು, ಅಥವಾ ಫೈಲ್ ಅನುಮತಿಗಳು ಪ್ರವೇಶವನ್ನು ತಡೆಗಟ್ಟುತ್ತಿರಬಹುದು.</translation>
+<translation id="8157295877370077682">ಸೈಟ್‌ ಅನ್ನು ತೊರೆಯಿರಿ</translation>
 <translation id="8163866351304776260">ಎಡಭಾಗದಲ್ಲಿ ನಾಲ್ಕು ತೂತುಗಳನ್ನು ಮಾಡಿ</translation>
 <translation id="8175796834047840627">ನೀವು ಸೈನ್ ಇನ್ ಮಾಡಿರುವ ಕಾರಣದಿಂದಾಗಿ, ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ನಿಮ್ಮ ಕಾರ್ಡ್‌ಗಳನ್ನು ಉಳಿಸಲು Chrome ಅವಕಾಶ ನೀಡುತ್ತಿದೆ. ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ನೀವು ಈ ವರ್ತನೆಯನ್ನು ಬದಲಿಸಬಹುದು.</translation>
 <translation id="8184538546369750125">ಜಾಗತಿಕ ಡಿಫಾಲ್ಟ್ ಬಳಸಿ (ಅನುಮತಿಸಿ)</translation>
diff --git a/components/strings/components_strings_ko.xtb b/components/strings/components_strings_ko.xtb
index 565d618e..f1ee5ba 100644
--- a/components/strings/components_strings_ko.xtb
+++ b/components/strings/components_strings_ko.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">시작 페이지 열기</translation>
 <translation id="1883255238294161206">접기 목록</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>
 <translation id="1914326953223720820">압축 해제 서비스</translation>
 <translation id="1915697529809968049">CVC 대신 Touch ID를 사용하시겠습니까?</translation>
 <translation id="1916770123977586577">이 사이트에 업데이트된 설정을 적용하려면 이 페이지를 다시 로드하세요.</translation>
@@ -443,6 +444,7 @@
 <translation id="3116158981186517402">라미네이트</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />연결 진단 프로그램을 실행<ph name="END_LINK" />해 보세요.</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" />(으)로 이동</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{없음}=1{계정 1개의 로그인 데이터}other{계정 #개의 로그인 데이터}}</translation>
 <translation id="3145945101586104090">응답 디코딩 실패</translation>
 <translation id="3150653042067488994">일시적인 서버 오류</translation>
@@ -827,6 +829,7 @@
 <translation id="5043480802608081735">복사한 링크</translation>
 <translation id="5045550434625856497">비밀번호가 잘못되었습니다.</translation>
 <translation id="5056549851600133418">추천 기사</translation>
+<translation id="5061227663725596739"><ph name="LOOKALIKE_DOMAIN" />을(를) 찾으셨나요?</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>
@@ -880,6 +883,7 @@
 <translation id="5284909709419567258">네트워크 주소</translation>
 <translation id="5285570108065881030">저장된 비밀번호 모두 표시</translation>
 <translation id="5287240709317226393">쿠키 표시</translation>
+<translation id="5287456746628258573">이 사이트에서는 오래된 보안 구성을 사용하므로 정보(예: 비밀번호나 신용카드 번호)를 이 사이트로 전송할 경우 정보가 유출될 수도 있습니다.</translation>
 <translation id="5288108484102287882">정책 값 유효성 검사 결과 경고가 발생했습니다.</translation>
 <translation id="5299298092464848405">정책을 파싱하는 중 오류 발생</translation>
 <translation id="5300589172476337783">표시</translation>
@@ -1007,6 +1011,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> 여는 중…</translation>
 <translation id="5947933617628957894">예, 추가합니다</translation>
 <translation id="5951495562196540101">일반 계정으로 등록할 수 없습니다(패키지 라이선스 사용 가능).</translation>
+<translation id="5966900314707961320">사용 설정하면 사이트가 웹 전반에서 사용자를 추적하는 쿠키를 사용할 수 없습니다.</translation>
 <translation id="5967592137238574583">연락처 정보 수정</translation>
 <translation id="5967867314010545767">기록에서 삭제</translation>
 <translation id="5975083100439434680">축소</translation>
@@ -1089,6 +1094,7 @@
 <translation id="6383221683286411806">해당 사이트에서 비용이 청구될 수 있음</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{그 외 제안 1건}other{그 외 제안 #건}}</translation>
 <translation id="6387754724289022810">다음번에 더 빠르게 결제할 수 있도록 Google 계정과 기기에 카드와 청구서 수신 주소를 저장하세요.</translation>
+<translation id="6389470377220713856">카드 명의</translation>
 <translation id="6390200185239044127">Z 폴드 하프</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">지원 중단된 정책입니다. <ph name="NEW_POLICY" /> 정책을 대신 사용해야 합니다.</translation>
@@ -1267,7 +1273,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">연결됨:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">사이트에서 나가기</translation>
 <translation id="7353601530677266744">명령줄</translation>
 <translation id="7372973238305370288">검색결과</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1439,6 +1444,7 @@
 <translation id="8131740175452115882">확인</translation>
 <translation id="8149426793427495338">컴퓨터가 절전 모드 상태입니다.</translation>
 <translation id="8150722005171944719"><ph name="URL" />의 파일을 읽을 수 없습니다. 삭제 또는 이동되었거나 파일 사용 권한이 액세스를 차단할 수도 있습니다.</translation>
+<translation id="8157295877370077682">사이트에서 나가기</translation>
 <translation id="8163866351304776260">왼쪽 4공 펀칭</translation>
 <translation id="8175796834047840627">로그인되어 있는 경우 Chrome에서 Google 계정에 카드를 저장할지 묻는 메시지가 표시됩니다. 설정에서 이 동작을 변경할 수 있습니다.</translation>
 <translation id="8184538546369750125">전체 기본값 사용(허용)</translation>
diff --git a/components/strings/components_strings_lt.xtb b/components/strings/components_strings_lt.xtb
index 2a3f97c4..800a7f71 100644
--- a/components/strings/components_strings_lt.xtb
+++ b/components/strings/components_strings_lt.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Atidaryti paleidimo puslapius</translation>
 <translation id="1883255238294161206">Sutraukti sąrašą</translation>
 <translation id="1898423065542865115">Filtravimas</translation>
+<translation id="1901443836186977402">{1,plural, =1{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi pastarąją dieną. Taip gali būti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuolėjo. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar šis laikas tinkamas? Jeigu ne, pakoreguokite sistemos laikrodį ir atnaujinkite šį puslapį.}one{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi prieš # dieną. Taip gali būti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuolėjo. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar šis laikas tinkamas? Jeigu ne, pakoreguokite sistemos laikrodį ir atnaujinkite šį puslapį.}few{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi prieš # dienas. Taip gali būti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuolėjo. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar šis laikas tinkamas? Jeigu ne, pakoreguokite sistemos laikrodį ir atnaujinkite šį puslapį.}many{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi prieš # dienos. Taip gali būti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuolėjo. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar šis laikas tinkamas? Jeigu ne, pakoreguokite sistemos laikrodį ir atnaujinkite šį puslapį.}other{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi prieš # dienų. Taip gali būti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuolėjo. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar šis laikas tinkamas? Jeigu ne, pakoreguokite sistemos laikrodį ir atnaujinkite šį puslapį.}}</translation>
 <translation id="1914326953223720820">Išpakavimo paslauga</translation>
 <translation id="1915697529809968049">Naudoti „Touch ID“ vietoj CVC?</translation>
 <translation id="1916770123977586577">Kad pritaikytumėte atnaujintus nustatymus šioje svetainėje, iš naujo įkelkite šį puslapį</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminavimas</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Pabandykite paleisti ryšio diagnostikos įrankį<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Eiti į <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Nėra}=1{1 paskyros prisijungimo duomenys}one{# paskyros prisijungimo duomenys}few{# paskyrų prisijungimo duomenys}many{# paskyros prisijungimo duomenys}other{# paskyrų prisijungimo duomenys}}</translation>
 <translation id="3145945101586104090">Iššifruojant atsakymą įvyko klaida</translation>
 <translation id="3150653042067488994">Laikina serverio klaida</translation>
@@ -830,6 +832,7 @@
 <translation id="5043480802608081735">Nukopijuota nuoroda</translation>
 <translation id="5045550434625856497">Neteisingas slaptažodis</translation>
 <translation id="5056549851600133418">Jums skirti straipsniai</translation>
+<translation id="5061227663725596739">Turėjote omenyje <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(naudojamas 1)}one{(naudojamas #)}few{(naudojami #)}many{(naudojama #)}other{(naudojama #)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Patikrinti tarpinio serverio adresą<ph name="END_LINK" /></translation>
@@ -883,6 +886,7 @@
 <translation id="5284909709419567258">Tinklų adresai</translation>
 <translation id="5285570108065881030">Rodyti visus išsaugotus slaptažodžius</translation>
 <translation id="5287240709317226393">Rodyti slapukus</translation>
+<translation id="5287456746628258573">Šioje svetainėje naudojama pasenusi saugos konfigūracija, todėl gali būti atskleista į šią svetainę siunčiama informacija (pvz., slaptažodžiai ar kredito kortelių numeriai).</translation>
 <translation id="5288108484102287882">Patvirtinant politikos vertes pateikta įspėjimų</translation>
 <translation id="5299298092464848405">Analizuojant politiką įvyko klaida</translation>
 <translation id="5300589172476337783">Rodyti</translation>
@@ -1011,6 +1015,7 @@
 <translation id="5946937721014915347">Atidaroma „<ph name="SITE_NAME" />“…</translation>
 <translation id="5947933617628957894">Taip, pridėti</translation>
 <translation id="5951495562196540101">Nepavyko prisiregistruoti su kliento paskyra (galima įsigyti licencijos paketą).</translation>
+<translation id="5966900314707961320">Įjungus svetainės negalės naudoti slapukų, kurie stebi jūsų veiklą žiniatinklyje</translation>
 <translation id="5967592137238574583">Kontaktinės informacijos redagavimas</translation>
 <translation id="5967867314010545767">Pašalinti iš istorijos</translation>
 <translation id="5975083100439434680">Tolinti</translation>
@@ -1093,6 +1098,7 @@
 <translation id="6383221683286411806">Galimi apmokestinimai.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{Dar 1 pasiūlymas}one{Dar # pasiūlymas}few{Dar # pasiūlymai}many{Dar # pasiūlymo}other{Dar # pasiūlymų}}</translation>
 <translation id="6387754724289022810">Kad kitą kartą galėtumėte greičiau atlikti mokėjimą, išsaugokite kortelę ir atsiskaitymo adresą „Google“ paskyroje ir šiame įrenginyje.</translation>
+<translation id="6389470377220713856">Vardas kortel.</translation>
 <translation id="6390200185239044127">Z formos perlenkimas pusiau</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Ši politika nebenaudojama. Vietoj jos turėtumėte naudoti politiką „<ph name="NEW_POLICY" />“.</translation>
@@ -1271,7 +1277,6 @@
 <translation id="734600844861828519">11 x 15</translation>
 <translation id="7346048084945669753">Susietas:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Išeiti iš šios svetainės</translation>
 <translation id="7353601530677266744">Komandos eilutė</translation>
 <translation id="7372973238305370288">paieškos rezultatas</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1444,6 +1449,7 @@
 <translation id="8131740175452115882">Patvirtinti</translation>
 <translation id="8149426793427495338">Įjungta kompiuterio miego būsena.</translation>
 <translation id="8150722005171944719"><ph name="URL" /> nurodyto failo negalima skaityti. Gali būti, kad jis pašalintas, perkeltas arba neleidžiama prieiga prie jo dėl failo leidimų.</translation>
+<translation id="8157295877370077682">Išeiti iš svetainės</translation>
 <translation id="8163866351304776260">Keturios skylės kairėje</translation>
 <translation id="8175796834047840627">„Chrome“ siūlo išsaugoti korteles „Google“ paskyroje, nes esate prisijungę. Šią elgseną galite pakeisti nustatymuose.</translation>
 <translation id="8184538546369750125">Naudoti visuotinį numatytąjį nustatymą (leisti)</translation>
diff --git a/components/strings/components_strings_lv.xtb b/components/strings/components_strings_lv.xtb
index 229e8e8..f6600ce 100644
--- a/components/strings/components_strings_lv.xtb
+++ b/components/strings/components_strings_lv.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Atvērt sākumlapas</translation>
 <translation id="1883255238294161206">Sakļaut sarakstu</translation>
 <translation id="1898423065542865115">Filtrēšana</translation>
+<translation id="1901443836186977402">{1,plural, =1{Šis serveris nevarēja pierādīt, ka šī ir vietne <ph name="DOMAIN" />. Tās drošības sertifikāta derīguma termiņš beidzās pēdējās dienas laikā. Šī problēma var rasties nepareizas konfigurācijas dēļ vai tādēļ, ka kāds uzbrucējs ir pārtvēris jūsu savienojumu. Jūsu datora pulkstenī pašlaik ir iestatīts šāds datums: <ph name="CURRENT_DATE" />. Vai tas ir pareizs? Ja datums nav pareizs, mainiet sistēmas pulksteni un pēc tam atsvaidziniet šo lapu.}zero{Šis serveris nevarēja pierādīt, ka šī ir vietne <ph name="DOMAIN" />. Tās drošības sertifikāta derīguma termiņš beidzās pirms # dienām. Šī problēma var rasties nepareizas konfigurācijas dēļ vai tādēļ, ka kāds uzbrucējs ir pārtvēris jūsu savienojumu. Jūsu datora pulkstenī pašlaik ir iestatīts šāds datums: <ph name="CURRENT_DATE" />. Vai tas ir pareizs? Ja datums nav pareizs, mainiet sistēmas pulksteni un pēc tam atsvaidziniet šo lapu.}one{Šis serveris nevarēja pierādīt, ka šī ir vietne <ph name="DOMAIN" />. Tās drošības sertifikāta derīguma termiņš beidzās pirms # dienas. Šī problēma var rasties nepareizas konfigurācijas dēļ vai tādēļ, ka kāds uzbrucējs ir pārtvēris jūsu savienojumu. Jūsu datora pulkstenī pašlaik ir iestatīts šāds datums: <ph name="CURRENT_DATE" />. Vai tas ir pareizs? Ja datums nav pareizs, mainiet sistēmas pulksteni un pēc tam atsvaidziniet šo lapu.}other{Šis serveris nevarēja pierādīt, ka šī ir vietne <ph name="DOMAIN" />. Tās drošības sertifikāta derīguma termiņš beidzās pirms # dienām. Šī problēma var rasties nepareizas konfigurācijas dēļ vai tādēļ, ka kāds uzbrucējs ir pārtvēris jūsu savienojumu. Jūsu datora pulkstenī pašlaik ir iestatīts šāds datums: <ph name="CURRENT_DATE" />. Vai tas ir pareizs? Ja datums nav pareizs, mainiet sistēmas pulksteni un pēc tam atsvaidziniet šo lapu.}}</translation>
 <translation id="1914326953223720820">Pakalpojums failu izgūšanai no arhīva</translation>
 <translation id="1915697529809968049">Vai vēlaties izmantot Touch ID, nevis CVC?</translation>
 <translation id="1916770123977586577">Lai lietotu atjauninātos iestatījumus šai vietnei, atkārtoti ielādējiet šo lapu</translation>
@@ -443,6 +444,7 @@
 <translation id="3116158981186517402">Laminēšana</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Mēģiniet palaist savienojamības diagnostiku<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Pāriet uz <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Nav}=1{1 konta pierakstīšanās dati}zero{# kontu pierakstīšanās dati}one{# konta pierakstīšanās dati}other{# kontu pierakstīšanās dati}}</translation>
 <translation id="3145945101586104090">Neizdevās atšifrēt atbildi.</translation>
 <translation id="3150653042067488994">Īslaicīga servera kļūda</translation>
@@ -826,6 +828,7 @@
 <translation id="5043480802608081735">Jūsu kopētā saite</translation>
 <translation id="5045550434625856497">Nepareiza parole</translation>
 <translation id="5056549851600133418">Jums piemeklēti raksti</translation>
+<translation id="5061227663725596739">Vai domājāt <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(viens tiek lietots)}zero{(# tiek lietoti)}one{(# tiek lietots)}other{(# tiek lietoti)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Pārbaudiet starpniekservera adresi<ph name="END_LINK" />.</translation>
@@ -879,6 +882,7 @@
 <translation id="5284909709419567258">Tīkla adreses</translation>
 <translation id="5285570108065881030">Rādīt visas saglabātās paroles</translation>
 <translation id="5287240709317226393">Rādīt sīkfailus</translation>
+<translation id="5287456746628258573">Šajā vietnē tiek izmantota novecojusi drošības konfigurācija, tādēļ var tikt atklāta jūsu informācija (piemēram, paroles vai kredītkaršu numuri), kad tā tiek nosūtīta uz šo vietni.</translation>
 <translation id="5288108484102287882">Validējot politikas vērtības, tika konstatētas kļūdas</translation>
 <translation id="5299298092464848405">Parsējot politiku, radās kļūda.</translation>
 <translation id="5300589172476337783">Rādīt</translation>
@@ -1006,6 +1010,7 @@
 <translation id="5946937721014915347">Notiek vietnes <ph name="SITE_NAME" /> atvēršana...</translation>
 <translation id="5947933617628957894">Jā, pievienot</translation>
 <translation id="5951495562196540101">Neizdevās reģistrēt, izmantojot patērētāja kontu (pieejama komplektā iekļauta licence).</translation>
+<translation id="5966900314707961320">Kad ir ieslēgta šī opcija, vietnes nevar izmantot sīkfailus, lai izsekotu jūsu darbības tīmeklī.</translation>
 <translation id="5967592137238574583">Kontaktinformācijas rediģēšana</translation>
 <translation id="5967867314010545767">Noņemt no vēstures</translation>
 <translation id="5975083100439434680">Tālināt</translation>
@@ -1088,6 +1093,7 @@
 <translation id="6383221683286411806">Iespējams, tiks pieprasīta maksa.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{vēl 1 ieteikums}zero{vēl # ieteikumi}one{vēl # ieteikums}other{vēl # ieteikumi}}</translation>
 <translation id="6387754724289022810">Lai nākamreiz veiktu maksājumu ātrāk, saglabājiet kartes datus un norēķinu adresi savā Google kontā un šajā ierīcē.</translation>
+<translation id="6389470377220713856">Vārds un uzvārds uz kartes</translation>
 <translation id="6390200185239044127">Z-veida locījums uz pusēm</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Šī politika ir novecojusi. Tās vietā jums vajadzētu izmantot <ph name="NEW_POLICY" /> politiku.</translation>
@@ -1266,7 +1272,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Ir saistīts:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Pamest šo vietni</translation>
 <translation id="7353601530677266744">Komandrinda</translation>
 <translation id="7372973238305370288">meklēšanas rezultāts</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1439,6 +1444,7 @@
 <translation id="8131740175452115882">Apstiprināt</translation>
 <translation id="8149426793427495338">Dators tika pārslēgts miega režīmā.</translation>
 <translation id="8150722005171944719">Vietnē <ph name="URL" /> esošo failu nevar nolasīt. Iespējams, tas ir noņemts vai pārvietots vai piekļuvei nepieciešamas atļaujas.</translation>
+<translation id="8157295877370077682">Pamest vietni</translation>
 <translation id="8163866351304776260">Četri caurumi kreisajā malā</translation>
 <translation id="8175796834047840627">Pārlūkprogrammā Chrome tiek piedāvāts saglabāt jūsu kartes Google kontā, jo esat pierakstījies. Varat mainīt šo darbību iestatījumos.</translation>
 <translation id="8184538546369750125">Izmantot globālo noklusējumu (Atļaut)</translation>
diff --git a/components/strings/components_strings_ml.xtb b/components/strings/components_strings_ml.xtb
index 41869c14..82691925 100644
--- a/components/strings/components_strings_ml.xtb
+++ b/components/strings/components_strings_ml.xtb
@@ -136,9 +136,9 @@
 <translation id="155039086686388498">എഞ്ചിനീയറിംഗ്-D</translation>
 <translation id="1555130319947370107">നീല</translation>
 <translation id="1559528461873125649">അത്തരത്തിലുള്ള ഫയലോ ഡയറക്റ്ററിയോ ഇല്ല</translation>
-<translation id="1559572115229829303">&lt;p&gt;നിങ്ങളുടെ ഉപകരണത്തിന്റെ തീയതിയും സമയവും (<ph name="DATE_AND_TIME" />) തെറ്റായതിനാൽ <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> എന്നതിലേക്ക് ഒരു സ്വകാര്യ കണക്ഷൻ സ്ഥാപിക്കാനാകില്ല.&lt;/p&gt;
+<translation id="1559572115229829303">&lt;p&gt;നിങ്ങളുടെ ഉപകരണത്തിന്‍റെ തീയതിയും സമയവും (<ph name="DATE_AND_TIME" />) തെറ്റായതിനാൽ <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> എന്നതിലേക്ക് ഒരു സ്വകാര്യ കണക്ഷൻ സ്ഥാപിക്കാനാകില്ല.&lt;/p&gt;
 
-          &lt;p&gt;&lt;strong&gt;ക്രമീകരണ&lt;/strong&gt; ആപ്പിന്റെ &lt;strong&gt;പൊതുവായവ&lt;/strong&gt; വിഭാഗത്തിൽ നിന്ന് തീയതിയും സമയവും ക്രമീകരിക്കുക.&lt;/p&gt;</translation>
+      &lt;p&gt;&lt;strong&gt;ക്രമീകരണ&lt;/strong&gt; ആപ്പിന്‍റെ &lt;strong&gt;പൊതുവായവ&lt;/strong&gt; വിഭാഗത്തിൽ നിന്ന് തീയതിയും സമയവും ക്രമീകരിക്കുക.&lt;/p&gt;</translation>
 <translation id="1569487616857761740">കാലഹരണപ്പെടുന്ന തീയതി നൽകുക</translation>
 <translation id="1581080074034554886">CVC</translation>
 <translation id="1583429793053364125">ഈ വെബ്‌പേജ് പ്രദർശിപ്പിക്കുമ്പോൾ എന്തോ കുഴപ്പം സംഭവിച്ചു.</translation>
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">ആരംഭ പേജുകൾ തുറക്കുക</translation>
 <translation id="1883255238294161206">ലിസ്റ്റ് ചുരുക്കുക</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>
 <translation id="1914326953223720820">അൺസിപ്പ് സേവനം</translation>
 <translation id="1915697529809968049">CVC-യ്ക്ക് പകരം ടച്ച് ഐഡി ഉപയോഗിക്കണോ?</translation>
 <translation id="1916770123977586577">ഈ സൈറ്റിലേക്ക് നിങ്ങളുടെ അപ്‌ഡേറ്റ് ചെയ്ത ക്രമീകരണം ഉപയോഗിക്കുന്നതിന്, ഈ പേജ് റീലോഡ് ചെയ്യുക</translation>
@@ -277,7 +278,7 @@
 <translation id="2277103315734023688">മുന്നോട്ട് നീക്കുക</translation>
 <translation id="2283340219607151381">വിലാസങ്ങൾ സംരക്ഷിച്ച് സ്വമേധയാ പൂരിപ്പിക്കുക</translation>
 <translation id="2289385804009217824">ട്രിം ചെയ്യുക</translation>
-<translation id="2292556288342944218">നിങ്ങളുടെ ഇന്‍റർനെറ്റ് ആക്‌സസ് തടഞ്ഞു</translation>
+<translation id="2292556288342944218">നിങ്ങളുടെ ഇന്റർനെറ്റ് ആക്‌സസ്സ് ബ്ലോക്ക് ചെയ്‌തു</translation>
 <translation id="2297722699537546652">B5 (എൻവലപ്പ്)</translation>
 <translation id="2310021320168182093">Chou2 (എൻവലപ്പ്)</translation>
 <translation id="2316887270356262533">1 MB-യിൽ കുറഞ്ഞ ഡാറ്റ ലാഭിക്കുന്നു. അടുത്തതവണ നിങ്ങൾ സന്ദർശിക്കുമ്പോൾ ചില സൈറ്റുകൾ ഇതിനേക്കാൾ പതുക്കെ ലോഡാകാം.</translation>
@@ -427,7 +428,7 @@
 <translation id="3057676462092457419">DnsOverHttps മോഡ് <ph name="SECURE_DNS_MODE_SECURE" /> ഇപ്പോഴും പിന്തുണയ്‌ക്കുന്നില്ല, <ph name="SECURE_DNS_MODE_OFF" /> എന്നതിലേക്ക് മോഡ് സജ്ജീകരിച്ചു.</translation>
 <translation id="3060227939791841287">C9 (എൻവലപ്പ്)</translation>
 <translation id="3061707000357573562">പാച്ച് സേവനം</translation>
-<translation id="3064966200440839136">ഒരു എക്‌സ്‌റ്റേണൽ അപ്ലിക്കേഷൻ വഴി പണമടയ്‌ക്കാൻ അദൃശ്യ മോഡ് ഒഴിവാക്കുന്നു. തുടരണോ?</translation>
+<translation id="3064966200440839136">ഒരു എക്‌സ്‌റ്റേണൽ ആപ്പ് വഴി പണമടയ്‌ക്കാൻ അദൃശ്യ മോഡ് ഒഴിവാക്കുന്നു. തുടരണോ?</translation>
 <translation id="3095940652251934233">പ്രസ്‌താവന</translation>
 <translation id="3096100844101284527">പിക്കപ്പ് വിലാസം ചേർക്കുക</translation>
 <translation id="3105172416063519923">അസറ്റ് ഐഡി:</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">ലാമിനേറ്റ് ചെയ്യൂ</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />കണക്‌റ്റിവിറ്റി ഡയഗണോസ്‌റ്റിക്‌സ് റൺ ചെയ്‌തുനോക്കൂ<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" /> എന്നതിലേക്ക് പോവുക പോവുക</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{ഒന്നുമില്ല}=1{ഒരു അക്കൗണ്ടിന്‍റെ സൈന്‍ ഇന്‍ ഡാറ്റ}other{# അക്കൗണ്ടുകളുടെ സൈന്‍ ഇന്‍ ഡാറ്റ}}</translation>
 <translation id="3145945101586104090">പ്രതികരണം ഡീകോഡ് ചെയ്യുന്നത് പരാജയപ്പെട്ടു</translation>
 <translation id="3150653042067488994">താൽക്കാലികമായ സെർവർ പിശക്</translation>
@@ -812,6 +814,7 @@
 <translation id="5043480802608081735">നിങ്ങൾ പകർത്തിയ ലിങ്ക്</translation>
 <translation id="5045550434625856497">പാസ്‍വേഡ് തെറ്റാണ്</translation>
 <translation id="5056549851600133418">നിങ്ങൾക്കുള്ള ലേഖനങ്ങൾ</translation>
+<translation id="5061227663725596739"><ph name="LOOKALIKE_DOMAIN" /> ആണോ നിങ്ങൾ ഉദ്ദേശിച്ചത്?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(ഒരെണ്ണം ഉപയോഗത്തിലാണ്)}other{(# എണ്ണം ഉപയോഗത്തിലാണ്)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />പ്രോക്‌സി വിലാസം പരിശോധിക്കുന്നു<ph name="END_LINK" /></translation>
@@ -865,6 +868,7 @@
 <translation id="5284909709419567258">നെറ്റ്‌വർക്ക് വിലാസങ്ങൾ</translation>
 <translation id="5285570108065881030">സംരക്ഷിച്ച എല്ലാ പാസ്‌വേഡുകളും കാണിക്കുക</translation>
 <translation id="5287240709317226393">കുക്കികള്‍ കാണിക്കുക</translation>
+<translation id="5287456746628258573">കാലഹരണപ്പെട്ട സുരക്ഷാ കോൺഫിഗറേഷൻ ആണ് ഈ സെെറ്റ് ഉപയോഗിക്കുന്നത്, അതിനാൽ നിങ്ങളുടെ വിവരങ്ങൾ (ഉദാഹരണത്തിന്, പാസ്‌വേഡുകളോ ക്രെഡിറ്റ് കാർഡ് നമ്പറുകളോ) ഈ സൈറ്റിലേക്ക് അയച്ചാൽ അവ പ്രദർശിപ്പിക്കപ്പെട്ടേക്കാം.</translation>
 <translation id="5288108484102287882">നയ മൂല്യങ്ങളുടെ സാധൂകരണം മുന്നറിയിപ്പുകൾ സൃഷ്‌ടിച്ചിട്ടുണ്ട്</translation>
 <translation id="5299298092464848405">നയം പാഴ്‌സ് ചെയ്യുന്നതിൽ പിശക്</translation>
 <translation id="5300589172476337783">കാണിക്കുക</translation>
@@ -904,7 +908,7 @@
 <translation id="5490432419156082418">വിലാസങ്ങളും മറ്റും</translation>
 <translation id="5492298309214877701">കമ്പനി, ഓർഗനൈസേഷൻ അല്ലെങ്കിൽ സ്‌കൂൾ ഇൻട്രാനെറ്റിലെ ഈ സൈറ്റിന്, ബാഹ്യ വെബ്‌സൈറ്റിന് സമാനമായ URL ആണുള്ളത്.
     <ph name="LINE_BREAK" />
-    നിങ്ങളുടെ സിസ്‌റ്റം അഡ്‌മിനിസ്‌ട്രേറ്ററുമായി ബന്ധപ്പെടാൻ ശ്രമിക്കുക.</translation>
+    നിങ്ങളുടെ സിസ്‌റ്റം അഡ്‌മിനുമായി ബന്ധപ്പെടാൻ ശ്രമിക്കുക.</translation>
 <translation id="549333378215107354">വലുപ്പം 3</translation>
 <translation id="5509762909502811065">B0</translation>
 <translation id="5509780412636533143">നിയന്ത്രിത ബുക്കുമാർക്കുകൾ</translation>
@@ -992,6 +996,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> തുറക്കുന്നു…</translation>
 <translation id="5947933617628957894">അതെ, ചേർക്കുക</translation>
 <translation id="5951495562196540101">ഉപയോക്തൃ അക്കൗണ്ട് ഉപയോഗിച്ച് എൻറോൾ ചെയ്യാനാവില്ല (പാക്കേജ് ചെയ്‌ത ലൈസൻസ് ലഭ്യമാണ്).</translation>
+<translation id="5966900314707961320">ഓണായിരിക്കുമ്പോൾ, വെബിലുടനീളം നിങ്ങളെ ട്രാക്ക് ചെയ്യുന്ന കുക്കികൾ ഉപയോഗിക്കാൻ സെെറ്റുകൾക്കാവില്ല</translation>
 <translation id="5967592137238574583">കോൺടാക്‌റ്റ് വിവരം എഡിറ്റുചെയ്യുക</translation>
 <translation id="5967867314010545767">ചരിത്രത്തിൽ നിന്നും നീക്കംചെയ്യുക</translation>
 <translation id="5975083100439434680">സൂം ഔട്ട്</translation>
@@ -1074,6 +1079,7 @@
 <translation id="6383221683286411806">ഭാവിയില്‍ നിരക്കുകള്‍ ഈടാക്കാനിടയുണ്ട്.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{മറ്റൊരു നിർദ്ദേശം}other{മറ്റ് # നിർദ്ദേശങ്ങൾ}}</translation>
 <translation id="6387754724289022810">അടുത്ത പ്രാവശ്യം വേഗത്തിൽ പണമടയ്ക്കാൻ, നിങ്ങളുടെ Google അക്കൗണ്ടിലും ഈ ഉപകരണത്തിലും ഈ കാർഡും ബില്ലിംഗ് വിലാസവും സംരക്ഷിക്കുക.</translation>
+<translation id="6389470377220713856">കാര്‍‌ഡിലെ പേര്</translation>
 <translation id="6390200185239044127">പകുതി Z-മടക്ക്</translation>
 <translation id="6390662030813198813">എഞ്ചിനീയറിംഗ്-E</translation>
 <translation id="6401136357288658127">ഈ നയം അവസാനിപ്പിച്ചു. പകരം <ph name="NEW_POLICY" /> നയം ഉപയോഗിക്കണം.</translation>
@@ -1123,7 +1129,7 @@
 <translation id="6624427990725312378">കോണ്‍ടാക്റ്റ് വിവരം</translation>
 <translation id="6626291197371920147">ശരിയായ കാർഡ് നമ്പർ ചേർക്കുക</translation>
 <translation id="6628463337424475685"><ph name="ENGINE" /> തിരയൽ</translation>
-<translation id="6630809736994426279"><ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> എന്ന സൈറ്റിലെ നിലവിലുള്ള ആക്രമികൾ നിങ്ങളുടെ വിവരങ്ങൾ ഇല്ലാതാക്കാനോ മോഷ്‌ടിക്കാനോ ഇടയുള്ള (ഉദാഹരണത്തിന്, ഫോട്ടോകൾ, പാസ്‌വേഡുകൾ, സന്ദേശങ്ങൾ, ക്രെഡിറ്റ് കാർഡുകൾ മുതലായവ) അപകടകരമായ പ്രോഗ്രാമുകൾ Mac-ൽ ഇൻസ്‌റ്റാളുചെയ്യാൻ ശ്രമിച്ചേക്കാം. <ph name="BEGIN_LEARN_MORE_LINK" />കൂടുതലറിയുക<ph name="END_LEARN_MORE_LINK" /></translation>
+<translation id="6630809736994426279"><ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> എന്ന സൈറ്റിലെ നിലവിലുള്ള അക്രമികൾ നിങ്ങളുടെ വിവരങ്ങൾ ഇല്ലാതാക്കാനോ മോഷ്‌ടിക്കാനോ ഇടയുള്ള (ഉദാഹരണത്തിന്, ഫോട്ടോകൾ, പാസ്‌വേഡുകൾ, സന്ദേശങ്ങൾ, ക്രെഡിറ്റ് കാർഡുകൾ മുതലായവ) അപകടകരമായ പ്രോഗ്രാമുകൾ Mac-ൽ ഇൻസ്‌റ്റാൾ ചെയ്യാൻ ശ്രമിച്ചേക്കാം. <ph name="BEGIN_LEARN_MORE_LINK" />കൂടുതലറിയുക<ph name="END_LEARN_MORE_LINK" /></translation>
 <translation id="6631202559048444592">ഈ നയത്തിന് ഒന്നിലധികം ഉറവിടങ്ങളുണ്ടെങ്കിലും മൂല്യങ്ങൾ സമാനമാണ്.</translation>
 <translation id="6643016212128521049">മായ്‌ക്കുക</translation>
 <translation id="6644283850729428850">ഈ നയം ഇല്ലാതാക്കി.</translation>
@@ -1252,7 +1258,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">അംഗമായി ഉള്‍പ്പെട്ടിട്ടുണ്ടോ:</translation>
 <translation id="7349430561505560861">A4-അധികം</translation>
-<translation id="7352902249897488700">ഈ സൈറ്റ് വിടുക</translation>
 <translation id="7353601530677266744">കമാന്‍റ് ലൈന്‍‌</translation>
 <translation id="7372973238305370288">തിരയൽ ഫലം</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1364,7 +1369,7 @@
 <translation id="782886543891417279">നിങ്ങൾ ഉപയോഗിക്കുന്ന Wi-Fi (<ph name="WIFI_NAME" />) അതിന്റെ ലോഗിൻ പേജ് സന്ദർശിക്കാൻ ആവശ്യപ്പെടാം..</translation>
 <translation id="7836231406687464395">പോസ്‌റ്റ്ഫിക്‌സ് (എൻവലപ്പ്)</translation>
 <translation id="7844689747373518809">{COUNT,plural, =0{ഒന്നുമില്ല}=1{ഒരു ആപ്പ് (<ph name="EXAMPLE_APP_1" />)}=2{2 ആപ്പുകൾ (<ph name="EXAMPLE_APP_1" />, <ph name="EXAMPLE_APP_2" />)}other{# ആപ്പുകൾ (<ph name="EXAMPLE_APP_1" />, <ph name="EXAMPLE_APP_2" />, <ph name="AND_MORE" />)}}</translation>
-<translation id="785549533363645510">എന്നിരുന്നാലും നിങ്ങൾ അദൃശ്യനല്ല. അദൃശ്യമാക്കുന്നതിലൂടെ, നിങ്ങളുടെ തൊഴിൽ ദാതാവിൽ നിന്നോ ഇന്റർനെറ്റ് സേവന ദാതാവിൽ നിന്നോ നിങ്ങൾ സന്ദർശിക്കുന്ന വെബ്‌സൈറ്റുകളിൽ നിന്നോ നിങ്ങളുടെ ബ്രൗസിംഗിനെ മറയ്‌ക്കില്ല.</translation>
+<translation id="785549533363645510">എന്നിരുന്നാലും നിങ്ങൾ അദൃശ്യനല്ല. അദൃശ്യ മോഡിലേക്ക് പോകുന്നത്, നിങ്ങളുടെ തൊഴിൽ ദാതാവിൽ നിന്നോ ഇന്റർനെറ്റ് സേവന ദാതാവിൽ നിന്നോ നിങ്ങൾ സന്ദർശിക്കുന്ന വെബ്‌സൈറ്റുകളിൽ നിന്നോ ഉള്ള ബ്രൗസിംഗിനെ മറയ്‌ക്കില്ല.</translation>
 <translation id="7855695075675558090"><ph name="TOTAL_LABEL" /> <ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="7862185352068345852">സൈറ്റ് വിടണോ?</translation>
 <translation id="7878176543348854470">ഡെബിറ്റ് കാർഡുകളും പ്രീപെയ്ഡ് കാർഡുകളും സ്വീകരിക്കുന്നു.</translation>
@@ -1423,6 +1428,7 @@
 <translation id="8131740175452115882">സ്ഥിരീകരിക്കുക</translation>
 <translation id="8149426793427495338">നിങ്ങളുടെ കമ്പ്യൂട്ടർ സ്ലീപ് മോഡിലാണ്.</translation>
 <translation id="8150722005171944719"><ph name="URL" /> എന്നതിലെ ഫയൽ റീഡ് ചെയ്യാനാവുന്നില്ല.  അത് നീക്കംചെയ്‌തിരിക്കുകയോ, നീക്കിയിരിക്കുകയോ ഫയൽ അനുമതികൾ ആക്‌സസ് തടയുകയോ ചെയ്യുന്നുണ്ടാകാം.</translation>
+<translation id="8157295877370077682">സൈറ്റ് വിടുക</translation>
 <translation id="8163866351304776260">ഇടതുവശത്ത് നാല് തവണ പഞ്ച് ചെയ്യുക</translation>
 <translation id="8175796834047840627">സൈൻ ഇൻ ചെയ്‌തിരിക്കുന്നതിനാൽ നിങ്ങളുടെ Google അക്കൗണ്ടിലേക്ക് കാർഡുകൾ സംരക്ഷിക്കാമെന്ന് Chrome വാഗ്‌ദാനം ചെയ്യുന്നു. ക്രമീകരണത്തിൽ ഈ രീതി മാറ്റാനാകും.</translation>
 <translation id="8184538546369750125">ആഗോള ഡിഫോൾട്ട് ഉപയോഗിക്കുക (അനുവദിക്കുക)</translation>
@@ -1614,7 +1620,7 @@
 <translation id="9191834167571392248">താഴെ ഇടതുവശത്ത് പഞ്ച് ചെയ്യുക</translation>
 <translation id="9205078245616868884">നിങ്ങളുടെ സമന്വയ പാസ്‌ഫ്രെയ്‌സ് ഉപയോഗിച്ച് ഡാറ്റ എൻക്രിപ്‌റ്റ് ചെയ്‌തു. സമന്വയം ആരംഭിക്കുന്നതിന് ഇത് നൽകുക.</translation>
 <translation id="9207861905230894330">ലേഖനം ചേർക്കാനായില്ല.</translation>
-<translation id="9215416866750762878">ഈ സൈറ്റിലേക്ക് സുരക്ഷിതമായി കണക്റ്റ് ചെയ്യുന്നതിൽ നിന്ന് Chrome-നെ ഒരു ആപ്പ് തടയുന്നു</translation>
+<translation id="9215416866750762878">ഈ സൈറ്റിലേക്ക് സുരക്ഷിതമായി കണക്റ്റുചെയ്യുന്നതിൽ നിന്ന് Chrome-നെ ഒരു ആപ്പ് തടയുന്നു</translation>
 <translation id="9219103736887031265">ചിത്രങ്ങൾ‌</translation>
 <translation id="933712198907837967">Diners Club</translation>
 <translation id="935608979562296692">ഫോം മായ്‌ക്കുക</translation>
diff --git a/components/strings/components_strings_mr.xtb b/components/strings/components_strings_mr.xtb
index 0e4633f..1c20bd2b 100644
--- a/components/strings/components_strings_mr.xtb
+++ b/components/strings/components_strings_mr.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">प्रारंभ पृष्ठ उघडा</translation>
 <translation id="1883255238294161206">सूची कोलॅप्स</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>
 <translation id="1914326953223720820">अनझिप सेवा</translation>
 <translation id="1915697529809968049">CVC ऐवजी टच आयडी वापरायचा का?</translation>
 <translation id="1916770123977586577">तुमच्या सेटिंग्ज या साइटवर लागू करण्यासाठी, हे पेज रीलोड करा</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">लॅमिनेट</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />कनेक्टिव्हिटी निदान चालवून पहा<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" /> वर जा</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{काहीही नाही}=1{एका खात्यासाठी साइन इन डेटा}other{# खात्यांसाठी साइन इन डेटा}}</translation>
 <translation id="3145945101586104090">प्रतिसाद डीकोड करण्यात अयशस्वी</translation>
 <translation id="3150653042067488994">तात्पुरती सर्व्हर एरर</translation>
@@ -611,7 +613,7 @@
 <translation id="3964661563329879394">{COUNT,plural, =0{काहीही नाही}=1{1 साइटकडून }other{# साइटकडून }}</translation>
 <translation id="397105322502079400">गणना करत आहे...</translation>
 <translation id="3973234410852337861"><ph name="HOST_NAME" /> अवरोधित केले आहे</translation>
-<translation id="3981540111851280311"><ph name="ENROLLMENT_DOMAIN" /> ने तुमच्या ब्राउझरवर Chrome एंटरप्राइझ जोखीम सुरक्षितता सुरू केली आहे. Chrome एंटरप्राइझ जोखीम सुरक्षिततेला तुमच्या काही डेटाचा अॅक्सेस आहे.</translation>
+<translation id="3981540111851280311"><ph name="ENROLLMENT_DOMAIN" /> ने तुमच्या ब्राउझरवर Chrome एंटरप्राइझ जोखीम सुरक्षितता सुरू केली आहे. Chrome एंटरप्राइझ जोखीम सुरक्षितते ला तुमच्या काही डेटाचा अॅक्सेस आहे.</translation>
 <translation id="3987940399970879459">1 MB पेक्षा कमी</translation>
 <translation id="3990250421422698716">जॉग ऑफसेट</translation>
 <translation id="40103911065039147">{URL_count,plural, =1{जवळपास १ वेब पेज}other{जवळपास # वेब पेज}}</translation>
@@ -828,6 +830,7 @@
 <translation id="5043480802608081735">तुम्ही कॉपी केलेली लिंक</translation>
 <translation id="5045550434625856497">चुकीचा पासवर्ड</translation>
 <translation id="5056549851600133418">तुमच्यासाठी लेख</translation>
+<translation id="5061227663725596739">तुम्हाला <ph name="LOOKALIKE_DOMAIN" />असे म्हणायचे होते का?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(एक वापरली जात आहे)}other{(# वापरल्या जात आहेत)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />प्रॉक्सी पत्ता तपासणे<ph name="END_LINK" /></translation>
@@ -881,6 +884,7 @@
 <translation id="5284909709419567258">नेटवर्क पत्ते</translation>
 <translation id="5285570108065881030">सर्व सेव्ह केलेले पासवर्ड दाखवा</translation>
 <translation id="5287240709317226393">कुकीज दाखवा</translation>
+<translation id="5287456746628258573">ही साइट कालबाह्य झालेली सुरक्षितता काँफिगरेशन वापरत आहे ज्यामुळे कदाचित तुमची माहिती (उदाहरणार्थ, पासवर्ड किंवा क्रेडिट कार्ड क्रमांक) या साइटला पाठवताना ती उघड होऊ शकते.</translation>
 <translation id="5288108484102287882">धोरण मूल्यांच्या वैधतेमुळे चेतावण्या वाढल्या आहेत</translation>
 <translation id="5299298092464848405">धोरण पार्स करताना एरर</translation>
 <translation id="5300589172476337783">दर्शवा</translation>
@@ -1009,6 +1013,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> उघडत आहे…</translation>
 <translation id="5947933617628957894">होय, जोडा</translation>
 <translation id="5951495562196540101">उपभोक्ता खात्याने नोंदणी करू शकत नाही (पॅकेज केलेला परवाना उपलब्ध).</translation>
+<translation id="5966900314707961320">सुरू केलेला असतो तेव्हा साइट संपूर्ण वेबवर तुमचा माग ठेवणाऱ्या कुकी वापरू शकत नाहीत</translation>
 <translation id="5967592137238574583">संपर्क माहिती संपादित करा</translation>
 <translation id="5967867314010545767">इतिहासातून काढून टाका</translation>
 <translation id="5975083100439434680">झूम कमी करा</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">पुढे संभाव्य शुल्क आहे.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 अन्य सूचना}other{# अन्य सूचना}}</translation>
 <translation id="6387754724289022810">पुढील वेळी जलद पेमेंट देण्यासाठी, तुमच्या Google खात्यावर आणि या डिव्हाइसवर तुमचे कार्ड आणि बिलिंग पत्ता सेव्ह करा.</translation>
+<translation id="6389470377220713856">कार्डवरील नाव</translation>
 <translation id="6390200185239044127">Z-फोल्ड हाफ</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">हे धोरण कालबाह्य झाले आहे. तुम्ही त्याऐवजी <ph name="NEW_POLICY" /> धोरण वापरले पाहिजे.</translation>
@@ -1104,7 +1110,7 @@
 <translation id="6433490469411711332">संपर्क माहिती संपादित करा</translation>
 <translation id="6433595998831338502"><ph name="HOST_NAME" /> नी कनेक्ट करण्यास नकार दिला.</translation>
 <translation id="6434309073475700221">नाकारा</translation>
-<translation id="6435221585574090192">तुमच्या अ‍ॅडमिनिस्ट्रेटरशी Chrome एंटरप्राइझ जोखीम सुरक्षितताने फ्लॅग केलेल्या सुरक्षितता इव्‍हेंटसंबंधित डेटा शेअर करा. यामध्ये कदाचित पेजची url, फाइलचे नाव आणि फाइल मेटाडेटा, तुमच्या डिव्हाइसचे वापरकर्ता नाव आणि Chrome चे वापरकर्ता नाव यांचा समावेश आहे.</translation>
+<translation id="6435221585574090192">तुमच्या अ‍ॅडमिनिस्ट्रेटरला Chrome एंटरप्राइझ जोखीम सुरक्षितता ने फ्लॅग केलेल्या सुरक्षितता इव्‍हेंटसंबंधित डेटा शेअर करा. यामध्ये कदाचित पेजची url, फाइलचे नाव आणि फाइल मेटाडेटा, तुमच्या डिव्हाइसचे वापरकर्ता नाव आणि Chrome चे वापरकर्ता नाव यांचा समावेश आहे.</translation>
 <translation id="6440503408713884761">दुर्लक्ष केले</translation>
 <translation id="6446163441502663861">Kahu (Envelope)</translation>
 <translation id="6446608382365791566">अधिक माहिती जोडा</translation>
@@ -1153,7 +1159,7 @@
 <translation id="6671697161687535275">Chromium वरून फॉर्म सूचना काढून टाकायच्या?</translation>
 <translation id="6685834062052613830">साइन आउट करा आणि सेटअप पूर्ण करा</translation>
 <translation id="6689271823431384964">तुम्ही साइन इन केले असल्यामुळे Chrome तुमच्या Google खात्यामध्ये तुमची कार्डे सेव्ह करत आहे. तुम्‍ही हे वर्तन सेटिंग्‍जमध्‍ये बदलू शकता. कार्डधारकाचे नाव तुमच्या खात्यामधून घेतले जाते.</translation>
-<translation id="6707256370811247129">तुम्ही Chrome मध्ये डाउनलोड किंवा अपलोड केलेले कॅशेचे आशय आणि फाइल स्कॅन करा.</translation>
+<translation id="6707256370811247129">कॅशेचा आशय आणि तुम्ही Chrome मध्ये डाउनलोड किंवा अपलोड करता त्या फाइल स्कॅन करा</translation>
 <translation id="6710213216561001401">मागील</translation>
 <translation id="6710594484020273272">&lt;शोध संज्ञा एंटर करा&gt;</translation>
 <translation id="671076103358959139">नोंदणी टोकन:</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">याच्याशी संबंधित आहे:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">ही साइट सोडून द्या</translation>
 <translation id="7353601530677266744">कमांड लाइन</translation>
 <translation id="7372973238305370288">शोध परिणाम</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1443,6 +1448,7 @@
 <translation id="8131740175452115882">पुष्टी करा</translation>
 <translation id="8149426793427495338">तुमचा कॉंप्युटर निष्क्रीय झाला.</translation>
 <translation id="8150722005171944719"><ph name="URL" /> येथील फाइल वाचनीय नाही. ती काढून टाकलेली, हलविलेली असू शकते किंवा फाइल परवानग्या अॅक्सेस प्रतिबंधित करत असू शकतात.</translation>
+<translation id="8157295877370077682">साइट सोडा</translation>
 <translation id="8163866351304776260">क्वाड पंच लेफ्ट</translation>
 <translation id="8175796834047840627">तुम्ही साइन इन केले असल्यामुळे Chrome तुमच्या Google खात्यामध्ये तुमची कार्डे सेव्ह करत आहे. तुम्‍ही हे वर्तन सेटिंग्‍जमध्‍ये बदलू शकता.</translation>
 <translation id="8184538546369750125">सार्वत्रिक डीफॉल्‍ट वापरा (अनुमती द्या)</translation>
@@ -1611,7 +1617,7 @@
 <translation id="9080712759204168376">मागणी सारांश</translation>
 <translation id="9089260154716455634">कामाच्या तासानंतरचे धोरण:</translation>
 <translation id="9095388113577226029">आणखी भाषा...</translation>
-<translation id="9098981495403789647">तुमच्या अ‍ॅडमिनिस्ट्रेटरने तुमच्या ब्राउझरवर Chrome एंटरप्राइझ जोखीम सुरक्षितता सुरू केली आहे. Chrome एंटरप्राइझ जोखीम सुरक्षिततेला तुमच्या काही डेटाचा अॅक्सेस आहे.</translation>
+<translation id="9098981495403789647">तुमच्या अ‍ॅडमिनिस्ट्रेटरने तुमच्या ब्राउझरवर Chrome एंटरप्राइझ जोखीम सुरक्षितता सुरू केली आहे. Chrome एंटरप्राइझ जोखीम सुरक्षितते ला तुमच्या काही डेटाचा अॅक्सेस आहे.</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> तुमची माहिती संरक्षित करण्यासाठी सामान्यतः एंक्रिप्शन वापरते. Chromium ने यावेळी <ph name="SITE" /> शी कनेक्‍ट करण्‍याचा प्रयत्न केला तेव्‍हा, वेबसाइटने असामान्य आणि अयोग्य क्रेडेंशियल परत पाठवले. एकतर आक्रमणकर्ता <ph name="SITE" /> असल्याची बतावणी करण्याचा प्रयत्न करतो तेव्‍हा किंवा वाय-फाय साइन इन स्क्रीनने कनेक्शनमध्ये व्यत्यय आणले तेव्‍हा हे घडू शकते. कोणत्याही डेटाची अदलाबदल करण्यापूर्वी Chromium ने कनेक्शन थांबविल्यामुळे तुमची माहिती अद्याप सुरक्षित आहे.</translation>
 <translation id="9106062320799175032">बिलिंग पत्ता जोडा</translation>
 <translation id="9114524666733003316">कार्डची निश्चिती करत आहे...</translation>
diff --git a/components/strings/components_strings_ms.xtb b/components/strings/components_strings_ms.xtb
index 504561b1..44f07a1 100644
--- a/components/strings/components_strings_ms.xtb
+++ b/components/strings/components_strings_ms.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Buka halaman permulaan</translation>
 <translation id="1883255238294161206">Runtuhkan senarai</translation>
 <translation id="1898423065542865115">Penapisan</translation>
+<translation id="1901443836186977402">{1,plural, =1{Pelayan ini tidak dapat membuktikan bahawa itu ialah <ph name="DOMAIN" />; sijil keselamatan domain itu tamat tempoh sehari yang lalu. Ini mungkin disebabkan oleh kesilapan konfigurasi atau penyerang memintas sambungan anda. Jam komputer anda ditetapkan kepada <ph name="CURRENT_DATE" /> pada masa ini. Adakah itu betul? Jika tidak, anda perlu membetulkan jam sistem anda dan kemudian muatkan semula halaman ini.}other{Pelayan ini tidak dapat membuktikan bahawa itu ialah <ph name="DOMAIN" />; sijil keselamatan domain itu tamat tempoh # hari yang lalu. Ini mungkin disebabkan oleh kesilapan konfigurasi atau penyerang memintas sambungan anda. Jam komputer anda buat masa ini ditetapkan kepada <ph name="CURRENT_DATE" />. Adakah itu betul? Jika tidak, anda perlu membetulkan jam sistem anda dan kemudian muatkan semula halaman ini.}}</translation>
 <translation id="1914326953223720820">Perkhidmatan Nyahzip</translation>
 <translation id="1915697529809968049">Gunakan Touch ID dan bukan CVC?</translation>
 <translation id="1916770123977586577">Untuk menerapkan tetapan anda yang dikemas kini pada tapak ini, muatkan semula halaman ini</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Lamina</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Cuba jalankan Diagnostik Sambungan<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Pergi ke <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Tiada}=1{data log masuk untuk 1 akaun}other{data log masuk untuk # akaun}}</translation>
 <translation id="3145945101586104090">Gagal menyahkod balasan</translation>
 <translation id="3150653042067488994">Ralat pelayan sementara</translation>
@@ -830,6 +832,7 @@
 <translation id="5043480802608081735">Pautan yang Anda Salin</translation>
 <translation id="5045550434625856497">Kata laluan tidak sah</translation>
 <translation id="5056549851600133418">Artikel untuk anda</translation>
+<translation id="5061227663725596739">Adakah anda maksudkan <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 sedang digunakan)}other{(# sedang digunakan)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Menyemak alamat proksi<ph name="END_LINK" /></translation>
@@ -883,6 +886,7 @@
 <translation id="5284909709419567258">Alamat rangkaian</translation>
 <translation id="5285570108065881030">Tunjukkan semua kata laluan yang disimpan</translation>
 <translation id="5287240709317226393">Tunjukkan kuki</translation>
+<translation id="5287456746628258573">Tapak ini menggunakan konfigurasi keselamatan yang sudah lapuk, yang mungkin mendedahkan maklumat anda (contohnya, kata laluan atau nombor kad kredit) apabila dihantar ke tapak ini.</translation>
 <translation id="5288108484102287882">Pengesahan nilai dasar telah menimbulkan amaran</translation>
 <translation id="5299298092464848405">Ralat semasa menghuraikan dasar</translation>
 <translation id="5300589172476337783">Paparkan</translation>
@@ -1011,6 +1015,7 @@
 <translation id="5946937721014915347">Membuka <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Ya, tambahkan</translation>
 <translation id="5951495562196540101">Tidak dapat mendaftar dengan akaun pengguna (lesen berpakej tersedia).</translation>
+<translation id="5966900314707961320">Apabila dihidupkan, tapak tidak dapat menggunakan kuki yang menjejaki anda di seluruh web</translation>
 <translation id="5967592137238574583">Edit Maklumat Hubungan</translation>
 <translation id="5967867314010545767">Buang daripada sejarah</translation>
 <translation id="5975083100439434680">Zum keluar</translation>
@@ -1093,6 +1098,7 @@
 <translation id="6383221683286411806">Caj mungkin dikenakan nanti.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 cadangan lain}other{# cadangan lain}}</translation>
 <translation id="6387754724289022810">Untuk membayar dengan lebih cepat selepas ini, simpan kad dan alamat pengebilan anda ke Akaun Google dan ke peranti ini.</translation>
+<translation id="6389470377220713856">Nama pada Kad</translation>
 <translation id="6390200185239044127">Lipat dua Z</translation>
 <translation id="6390662030813198813">Kejuruteraan-E</translation>
 <translation id="6401136357288658127">Dasar ini telah ditamatkan. Anda harus menggunakan dasar <ph name="NEW_POLICY" /> sebagai ganti.</translation>
@@ -1271,7 +1277,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Ialah ahli gabungan:</translation>
 <translation id="7349430561505560861">A4-Ekstra</translation>
-<translation id="7352902249897488700">Tinggalkan tapak ini</translation>
 <translation id="7353601530677266744">Baris Perintah</translation>
 <translation id="7372973238305370288">hasil carian</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1444,6 +1449,7 @@
 <translation id="8131740175452115882">Sahkan</translation>
 <translation id="8149426793427495338">Komputer anda dalam mod tidur.</translation>
 <translation id="8150722005171944719">Fail di <ph name="URL" /> tidak boleh dibaca.  Fail mungkin telah dialih keluar, dipindahkan atau kebenaran fail mungkin menghalang akses.</translation>
+<translation id="8157295877370077682">Tinggalkan tapak</translation>
 <translation id="8163866351304776260">Empat tebukan kiri</translation>
 <translation id="8175796834047840627">Chrome menawarkan penyimpanan kad dalam Akaun Google anda kerana anda log masuk. Anda boleh menukar gelagat ini dalam tetapan.</translation>
 <translation id="8184538546369750125">Gunakan lalai global (Benarkan)</translation>
diff --git a/components/strings/components_strings_nl.xtb b/components/strings/components_strings_nl.xtb
index bdd0c18..ebf55e8d 100644
--- a/components/strings/components_strings_nl.xtb
+++ b/components/strings/components_strings_nl.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Startpagina's openen</translation>
 <translation id="1883255238294161206">Lijst samenvouwen</translation>
 <translation id="1898423065542865115">Filteren</translation>
+<translation id="1901443836186977402">{1,plural, =1{Deze server kan niet bewijzen dat dit <ph name="DOMAIN" /> is. Het bijbehorende beveiligingscertificaat is gedurende de afgelopen dag verlopen. Dit kan worden veroorzaakt door een verkeerde configuratie of een aanvaller die je verbinding onderschept. De klok van je computer is momenteel ingesteld op <ph name="CURRENT_DATE" />. Klopt dat? Zo niet, dan moet je de klok van je systeem aanpassen en daarna deze pagina vernieuwen.}other{Deze server kan niet bewijzen dat dit <ph name="DOMAIN" /> is. Het bijbehorende beveiligingscertificaat is # dagen geleden verlopen. Dit kan worden veroorzaakt door een verkeerde configuratie of een aanvaller die je verbinding onderschept. De klok van je computer is momenteel ingesteld op <ph name="CURRENT_DATE" />. Klopt dat? Zo niet, dan moet je de klok van je systeem aanpassen en daarna deze pagina vernieuwen.}}</translation>
 <translation id="1914326953223720820">Uitpakservice</translation>
 <translation id="1915697529809968049">Touch ID gebruiken in plaats van CVC?</translation>
 <translation id="1916770123977586577">Laad deze pagina opnieuw om je geüpdatete instellingen toe te passen op deze site</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">Lamineren</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Voer Verbindingsdiagnose uit<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Naar <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Geen}=1{inloggegevens voor één account}other{inloggegevens voor # accounts}}</translation>
 <translation id="3145945101586104090">Kan reactie niet decoderen</translation>
 <translation id="3150653042067488994">Tijdelijke serverfout</translation>
@@ -808,6 +810,7 @@
 <translation id="5043480802608081735">Link die je hebt gekopieerd</translation>
 <translation id="5045550434625856497">Onjuist wachtwoord</translation>
 <translation id="5056549851600133418">Artikelen voor jou</translation>
+<translation id="5061227663725596739">Bedoelde je <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 in gebruik)}other{(# in gebruik)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Het proxy-adres controleren<ph name="END_LINK" /></translation>
@@ -861,6 +864,7 @@
 <translation id="5284909709419567258">Netwerkadressen</translation>
 <translation id="5285570108065881030">Alle opgeslagen wachtwoorden weergeven</translation>
 <translation id="5287240709317226393">Cookies weergeven</translation>
+<translation id="5287456746628258573">Deze site gebruikt een verouderde beveiligingsconfiguratie, waardoor je gegevens (zoals wachtwoorden of creditcardnummers) openbaar kunnen worden gemaakt als ze naar deze site worden gestuurd.</translation>
 <translation id="5288108484102287882">Tijdens de validatie van de beleidswaarden zijn er waarschuwingen geconstateerd</translation>
 <translation id="5299298092464848405">Fout bij het parseren van het beleid</translation>
 <translation id="5300589172476337783">Weergeven</translation>
@@ -988,6 +992,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> openen…</translation>
 <translation id="5947933617628957894">Ja, toevoegen</translation>
 <translation id="5951495562196540101">Kan consumentenaccount niet inschrijven (verpakte licentie beschikbaar).</translation>
+<translation id="5966900314707961320">Als deze optie is ingeschakeld, kunnen sites geen cookies gebruiken die je volgen op internet</translation>
 <translation id="5967592137238574583">Contactgegevens bewerken</translation>
 <translation id="5967867314010545767">Verwijderen uit geschiedenis</translation>
 <translation id="5975083100439434680">Uitzoomen</translation>
@@ -1069,6 +1074,7 @@
 <translation id="6383221683286411806">Er worden later mogelijk kosten in rekening gebracht.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 andere suggestie}other{# andere suggesties}}</translation>
 <translation id="6387754724289022810">Sla je pas en factuuradres op in je Google-account en op dit apparaat zodat je de volgende keer sneller kunt betalen.</translation>
+<translation id="6389470377220713856">Naam op pas</translation>
 <translation id="6390200185239044127">Zigzag kruisvouw</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Dit beleid is beëindigd. Gebruik in plaats daarvan dit beleid: <ph name="NEW_POLICY" />.</translation>
@@ -1247,7 +1253,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Is gelieerd:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Deze site verlaten</translation>
 <translation id="7353601530677266744">Opdrachtregel</translation>
 <translation id="7372973238305370288">zoekresultaat</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1420,6 +1425,7 @@
 <translation id="8131740175452115882">Bevestigen</translation>
 <translation id="8149426793427495338">De slaapstand van je computer is geactiveerd.</translation>
 <translation id="8150722005171944719">Het bestand op <ph name="URL" /> is onleesbaar. Het bestand is mogelijk verwijderd of verplaatst of de bestandsrechten zorgen ervoor dat het bestand niet kan worden geopend.</translation>
+<translation id="8157295877370077682">Site verlaten</translation>
 <translation id="8163866351304776260">Vier perforaties links</translation>
 <translation id="8175796834047840627">Chrome biedt aan je passen in je Google-account op te slaan omdat je bent ingelogd. Je kunt dit wijzigen in de instellingen.</translation>
 <translation id="8184538546369750125">Algemene standaardinstelling gebruiken (Toestaan)</translation>
diff --git a/components/strings/components_strings_no.xtb b/components/strings/components_strings_no.xtb
index a0c526b..652f4d7 100644
--- a/components/strings/components_strings_no.xtb
+++ b/components/strings/components_strings_no.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Åpne oppstartssidene</translation>
 <translation id="1883255238294161206">Skjul liste</translation>
 <translation id="1898423065542865115">Filtrering</translation>
+<translation id="1901443836186977402">{1,plural, =1{Denne tjeneren kunne ikke bevise at den er <ph name="DOMAIN" />. Tjenerens sikkerhetssertifikat har utløpt i løpet av det siste døgnet. Dette kan skyldes en feilkonfigurering eller at en angriper avskjærer tilkoblingen din. Klokken på datamaskinen er stilt til <ph name="CURRENT_DATE" />. Ser det riktig ut? Hvis ikke bør du stille klokken på systemet og laste inn denne siden på nytt.}other{Denne tjeneren kunne ikke bevise at den er <ph name="DOMAIN" />. Tjenerens sikkerhetssertifikat har utløpt for # dager siden. Dette kan skyldes en feilkonfigurering eller at en angriper avskjærer tilkoblingen din. Klokken på datamaskinen er stilt til <ph name="CURRENT_DATE" />. Ser det riktig ut? Hvis ikke bør du stille klokken på systemet og laste inn denne siden på nytt.}}</translation>
 <translation id="1914326953223720820">Utpakkingstjeneste</translation>
 <translation id="1915697529809968049">Vil du bruke Touch ID i stedet for CVC?</translation>
 <translation id="1916770123977586577">Last inn denne siden på nytt for å ta i bruk de oppdaterte innstillingene dine på dette nettstedet.</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminer</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Prøv å kjøre Tilkoblingsdiagnostikk<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Gå til <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Ingen}=1{påloggingsdata for 1 konto}other{påloggingsdata for # kontoer}}</translation>
 <translation id="3145945101586104090">Kunne ikke avkode responsen</translation>
 <translation id="3150653042067488994">Midlertidig tjenerfeil</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Linken du kopierte</translation>
 <translation id="5045550434625856497">Feil passord</translation>
 <translation id="5056549851600133418">Artikler for deg</translation>
+<translation id="5061227663725596739">Mente du <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 i bruk)}other{(# i bruk)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Sjekk proxy-tjeneradressen<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Nettverksadresser</translation>
 <translation id="5285570108065881030">Vis alle lagrede passord</translation>
 <translation id="5287240709317226393">Vis informasjonskapsler</translation>
+<translation id="5287456746628258573">Dette nettstedet bruker en utdatert sikkerhetskonfigurasjon, som betyr at informasjonen din (for eksempel passord eller kredittkortnumre) kan bli avslørt når den sendes til dette nettstedet.</translation>
 <translation id="5288108484102287882">Det har oppstått advarsler under validering av regelverdier</translation>
 <translation id="5299298092464848405">Feil under analysen av enhetsinnstillingene</translation>
 <translation id="5300589172476337783">Vis</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">Åpner <ph name="SITE_NAME" /> …</translation>
 <translation id="5947933617628957894">Ja, legg til</translation>
 <translation id="5951495562196540101">Kan ikke registrere med en forbrukerkonto (medfølgende lisens er tilgjengelig).</translation>
+<translation id="5966900314707961320">Når dette er påslått, kan ikke nettsteder bruke informasjonskapsler som sporer deg overalt på nettet</translation>
 <translation id="5967592137238574583">Endre kontaktinformasjonen</translation>
 <translation id="5967867314010545767">Fjern fra loggen</translation>
 <translation id="5975083100439434680">Zoom ut</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">Potensielle gebyrer i sikte.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 annet forslag}other{# andre forslag}}</translation>
 <translation id="6387754724289022810">For å betale raskere neste gang, lagre kortet ditt og faktureringsadressen i Google-kontoen din og på denne enheten.</translation>
+<translation id="6389470377220713856">Navn som er oppført på kortet</translation>
 <translation id="6390200185239044127">Halv Z-fals</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Denne regelen er avviklet. Du bør bruke den nye regelen <ph name="NEW_POLICY" /> i stedet.</translation>
@@ -1269,7 +1275,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Er tilknyttet:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Forlat dette nettstedet</translation>
 <translation id="7353601530677266744">Kommandolinje </translation>
 <translation id="7372973238305370288">søkeresultat</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> – <ph name="FULL_DATE" /></translation>
@@ -1442,6 +1447,7 @@
 <translation id="8131740175452115882">Bekreft</translation>
 <translation id="8149426793427495338">Datamaskinen din gikk inn i hvilemodus.</translation>
 <translation id="8150722005171944719">Kunne ikke lese filen på <ph name="URL" /> Den kan ha blitt fjernet eller flyttet. Det kan også være filtillatelser som forhindrer tilgang.</translation>
+<translation id="8157295877370077682">Forlat nettstedet</translation>
 <translation id="8163866351304776260">Fire hull venstre</translation>
 <translation id="8175796834047840627">Chrome tilbyr å lagre kort i Google-kontoen din fordi du er logget på. Du kan endre dette i innstillingene.</translation>
 <translation id="8184538546369750125">Bruk global standardinnstilling (Tillat)</translation>
diff --git a/components/strings/components_strings_pl.xtb b/components/strings/components_strings_pl.xtb
index 9c92dbe..fa9823d 100644
--- a/components/strings/components_strings_pl.xtb
+++ b/components/strings/components_strings_pl.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Otwórz strony startowe</translation>
 <translation id="1883255238294161206">Zwiń listę</translation>
 <translation id="1898423065542865115">Filtrowanie</translation>
+<translation id="1901443836186977402">{1,plural, =1{Ten serwer nie może udowodnić, że należy do domeny <ph name="DOMAIN" />. Jego certyfikat bezpieczeństwa wygasł wczoraj. Może to wynikać z błędnej konfiguracji lub przechwycenia połączenia. Zegar komputera jest obecnie ustawiony na <ph name="CURRENT_DATE" />. Czy to prawidłowa data? Jeśli nie, popraw zegar systemowy, a potem odśwież tę stronę.}few{Ten serwer nie może udowodnić, że należy do domeny <ph name="DOMAIN" />. Jego certyfikat wygasł # dni temu. Może to wynikać z błędnej konfiguracji lub przechwycenia połączenia. Zegar komputera jest obecnie ustawiony na <ph name="CURRENT_DATE" />. Czy to prawidłowa data? Jeśli nie, popraw zegar systemowy, a potem odśwież tę stronę.}many{Ten serwer nie może udowodnić, że należy do domeny <ph name="DOMAIN" />. Jego certyfikat wygasł # dni temu. Może to wynikać z błędnej konfiguracji lub przechwycenia połączenia. Zegar komputera jest obecnie ustawiony na <ph name="CURRENT_DATE" />. Czy to prawidłowa data? Jeśli nie, popraw zegar systemowy, a potem odśwież tę stronę.}other{Ten serwer nie może udowodnić, że należy do domeny <ph name="DOMAIN" />. Jego certyfikat wygasł # dnia temu. Może to wynikać z błędnej konfiguracji lub przechwycenia połączenia. Zegar komputera jest obecnie ustawiony na <ph name="CURRENT_DATE" />. Czy to prawidłowa data? Jeśli nie, popraw zegar systemowy, a potem odśwież tę stronę.}}</translation>
 <translation id="1914326953223720820">Usługa rozpakowywania</translation>
 <translation id="1915697529809968049">Używać Touch ID zamiast kodu CVC?</translation>
 <translation id="1916770123977586577">Załaduj stronę ponownie, by zastosować na niej zaktualizowane ustawienia</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminowanie</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Uruchom diagnostykę połączeń<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Wejdź na <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Brak}=1{dane logowania dla 1 konta}few{dane logowania dla # kont}many{dane logowania dla # kont}other{dane logowania dla # konta}}</translation>
 <translation id="3145945101586104090">Dekodowanie odpowiedzi nie powiodło się</translation>
 <translation id="3150653042067488994">Tymczasowy błąd serwera</translation>
@@ -612,7 +614,7 @@
 <translation id="3964661563329879394">{COUNT,plural, =0{Brak}=1{Z 1 witryny }few{Z # witryn }many{Z # witryn }other{Z # witryny }}</translation>
 <translation id="397105322502079400">Obliczanie...</translation>
 <translation id="3973234410852337861">Strona <ph name="HOST_NAME" /> jest zablokowana</translation>
-<translation id="3981540111851280311">Domena <ph name="ENROLLMENT_DOMAIN" /> włączyła w Twojej przeglądarce usługę ochrony Chrome Enterprise. Ma ona dostęp do niektórych Twoich danych.</translation>
+<translation id="3981540111851280311">Domena <ph name="ENROLLMENT_DOMAIN" /> włączyła w Twojej przeglądarce dostępną w Chrome ochronę przed zagrożeniami dla firm. Ta funkcja ma dostęp do niektórych Twoich danych.</translation>
 <translation id="3987940399970879459">Mniej niż 1 MB</translation>
 <translation id="3990250421422698716">Odsunięcie poszczególnych kopii</translation>
 <translation id="40103911065039147">{URL_count,plural, =1{1 strona w pobliżu}few{# strony w pobliżu}many{# stron w pobliżu}other{# strony w pobliżu}}</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Skopiowany link</translation>
 <translation id="5045550434625856497">Nieprawidłowe hasło</translation>
 <translation id="5056549851600133418">Artykuły dla Ciebie</translation>
+<translation id="5061227663725596739">Czy chodziło Ci o <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(w użyciu: 1)}few{(w użyciu: #)}many{(w użyciu: #)}other{(w użyciu: #)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Sprawdź adres serwera proxy<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Adresy sieciowe</translation>
 <translation id="5285570108065881030">Pokaż wszystkie zapisane hasła</translation>
 <translation id="5287240709317226393">Pokaż pliki cookie</translation>
+<translation id="5287456746628258573">Ta strona używa nieaktualnej konfiguracji zabezpieczeń, co oznacza, że Twoje dane (np. hasła i numery kart kredytowych) mogą być zagrożone podczas przesyłania na tę stronę.</translation>
 <translation id="5288108484102287882">Weryfikacja wartości zasad zakończyła się z ostrzeżeniami</translation>
 <translation id="5299298092464848405">Podczas przetwarzania zasady wystąpił błąd</translation>
 <translation id="5300589172476337783">Pokaż</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">Otwieram <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Tak, dodaj</translation>
 <translation id="5951495562196540101">Nie można zarejestrować się przy użyciu konta klienta (w pakiecie dostępna jest licencja).</translation>
+<translation id="5966900314707961320">Gdy to ustawienie jest włączone, witryny nie mogą używać plików cookie, które śledzą Twoje działania w sieci</translation>
 <translation id="5967592137238574583">Edytuj dane kontaktowe</translation>
 <translation id="5967867314010545767">Usuń z historii</translation>
 <translation id="5975083100439434680">Pomniejsz</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">Uważaj na możliwe opłaty.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 inna podpowiedź}few{# inne podpowiedzi}many{# innych podpowiedzi}other{# innej podpowiedzi}}</translation>
 <translation id="6387754724289022810">Aby następnym razem zapłacić szybciej, zapisz kartę i adres rozliczeniowy na swoim koncie Google i na tym urządzeniu.</translation>
+<translation id="6389470377220713856">Imię i nazwisko na karcie</translation>
 <translation id="6390200185239044127">Składanie w połowie, a następnie składanie typu Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Ta zasada została wycofana. Zalecamy używanie zasady <ph name="NEW_POLICY" />.</translation>
@@ -1104,7 +1110,7 @@
 <translation id="6433490469411711332">Edytuj dane kontaktowe</translation>
 <translation id="6433595998831338502">Serwer <ph name="HOST_NAME" /> odrzucił połączenie.</translation>
 <translation id="6434309073475700221">Przerwij</translation>
-<translation id="6435221585574090192">Udostępniaj administratorowi dane na temat zdarzeń związanych z bezpieczeństwem zgłoszonych przez usługę ochrony Chrome Enterprise. Dane te mogą obejmować adresy URL stron, nazwę i metadane pliku oraz nazwę użytkownika urządzenia i Chrome.</translation>
+<translation id="6435221585574090192">Udostępniaj administratorowi dane na temat zdarzeń związanych z bezpieczeństwem zgłoszonych przez dostępną w Chrome ochronę przed zagrożeniami dla firm. Dane te mogą obejmować adresy URL stron, nazwę i metadane pliku oraz nazwę użytkownika urządzenia i Chrome.</translation>
 <translation id="6440503408713884761">Ignorowany</translation>
 <translation id="6446163441502663861">Kahu (koperta)</translation>
 <translation id="6446608382365791566">Dodaj więcej informacji</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Jest w tej samej domenie:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Opuść tę stronę</translation>
 <translation id="7353601530677266744">Wiersz poleceń</translation>
 <translation id="7372973238305370288">wynik wyszukiwania</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> – <ph name="FULL_DATE" /></translation>
@@ -1336,7 +1341,7 @@
 <translation id="7610193165460212391">Wartość spoza zakresu (<ph name="VALUE" />)</translation>
 <translation id="7613889955535752492">Wygasa: <ph name="EXPIRATION_MONTH" />/<ph name="EXPIRATION_YEAR" /></translation>
 <translation id="7615602087246926389">Masz już dane zaszyfrowane przy użyciu innej wersji hasła konta Google. Wpisz je poniżej.</translation>
-<translation id="7625784245512586808">Usługa ochrony Chrome Enterprise</translation>
+<translation id="7625784245512586808">Dostępna w Chrome ochrona przed zagrożeniami dla firm</translation>
 <translation id="7633909222644580952">Dane o wydajności i raporty o awariach</translation>
 <translation id="7637571805876720304">Usunąć tę kartę kredytową z Chromium?</translation>
 <translation id="7638605456503525968">Porty szeregowe</translation>
@@ -1443,6 +1448,7 @@
 <translation id="8131740175452115882">Potwierdź</translation>
 <translation id="8149426793427495338">Twój komputer przeszedł w tryb uśpienia.</translation>
 <translation id="8150722005171944719">Nie można odczytać pliku <ph name="URL" />. Być może został usunięty lub uprawnienia dostępu uniemożliwiają jego odczyt.</translation>
+<translation id="8157295877370077682">Wyjdź</translation>
 <translation id="8163866351304776260">Cztery otwory po lewej</translation>
 <translation id="8175796834047840627">Jako zalogowany użytkownik możesz zapisać karty na Twoim koncie Google w Chrome. Możesz to zmienić w ustawieniach.</translation>
 <translation id="8184538546369750125">Użyj globalnej wartości domyślnej (Zezwalaj)</translation>
@@ -1611,7 +1617,7 @@
 <translation id="9080712759204168376">Podsumowanie zamówienia</translation>
 <translation id="9089260154716455634">Zasada „po godzinach”:</translation>
 <translation id="9095388113577226029">Więcej języków…</translation>
-<translation id="9098981495403789647">Twój administrator włączył w przeglądarce usługę ochrony Chrome Enterprise. Ma ona dostęp do niektórych Twoich danych.</translation>
+<translation id="9098981495403789647">Twój administrator włączył w przeglądarce dostępną w Chrome ochronę przed zagrożeniami dla firm. Ta funkcja ma dostęp do niektórych Twoich danych.</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> zazwyczaj używa szyfrowania do ochrony Twoich informacji. Gdy tym razem przeglądarka Chromium próbowała połączyć się ze stroną <ph name="SITE" />, odesłała ona nietypowe i nieprawidłowe dane logowania. Może się tak zdarzyć, gdy pod stronę <ph name="SITE" /> podszywa się osoba atakująca albo gdy ekran logowania do sieci Wi-Fi przerwie połączenie. Twoje informacje są nadal bezpieczne, bo połączenie w Chromium zakończyło się przed wymianą jakichkolwiek danych.</translation>
 <translation id="9106062320799175032">Dodaj adres rozliczeniowy</translation>
 <translation id="9114524666733003316">Sprawdzam kartę…</translation>
diff --git a/components/strings/components_strings_pt-BR.xtb b/components/strings/components_strings_pt-BR.xtb
index 5deb08e..6a5fb120 100644
--- a/components/strings/components_strings_pt-BR.xtb
+++ b/components/strings/components_strings_pt-BR.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Abrir páginas de inicialização</translation>
 <translation id="1883255238294161206">Recolher lista</translation>
 <translation id="1898423065542865115">Filtragem</translation>
+<translation id="1901443836186977402">{1,plural, =1{Este servidor não conseguiu provar que é <ph name="DOMAIN" />. O certificado de segurança dele expirou no último dia. Isso pode ser causado por uma configuração incorreta ou por um invasor que tenha interceptado sua conexão. O relógio do seu computador está definido para <ph name="CURRENT_DATE" />. Essa data está correta? Caso não esteja, corrija o relógio do sistema e atualize esta página.}one{Este servidor não conseguiu provar que é <ph name="DOMAIN" />. O certificado de segurança dele expirou # dia atrás. Isso pode ser causado por uma configuração incorreta ou por um invasor que tenha interceptado sua conexão. O relógio do seu computador está definido para <ph name="CURRENT_DATE" />. Essa data está correta? Caso não esteja, corrija o relógio do sistema e atualize esta página.}other{Este servidor não conseguiu provar que é <ph name="DOMAIN" />. O certificado de segurança dele expirou # dias atrás. Isso pode ser causado por uma configuração incorreta ou por um invasor que tenha interceptado sua conexão. O relógio do seu computador está definido para <ph name="CURRENT_DATE" />. Essa data está correta? Caso não esteja, corrija o relógio do sistema e atualize esta página.}}</translation>
 <translation id="1914326953223720820">Serviço Descompactar</translation>
 <translation id="1915697529809968049">Usar o Touch ID em vez do CVC?</translation>
 <translation id="1916770123977586577">Para aplicar as configurações atualizadas a este site, recarregue a página</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">Laminar</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Tente executar o Diagnóstico de Conectividade<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Ir para <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Nenhum}=1{dados de login para 1 conta}one{dados de login para # conta}other{dados de login para # contas}}</translation>
 <translation id="3145945101586104090">Falha ao decodificar resposta</translation>
 <translation id="3150653042067488994">Erro temporário do servidor</translation>
@@ -813,6 +815,7 @@
 <translation id="5043480802608081735">Link que você copiou</translation>
 <translation id="5045550434625856497">Senha incorreta</translation>
 <translation id="5056549851600133418">Artigos para você</translation>
+<translation id="5061227663725596739">Você quis dizer "<ph name="LOOKALIKE_DOMAIN" />"?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 em uso)}one{(# em uso)}other{(# em uso)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Verificar o endereço do proxy<ph name="END_LINK" /></translation>
@@ -866,6 +869,7 @@
 <translation id="5284909709419567258">Endereços de rede</translation>
 <translation id="5285570108065881030">Mostrar todas as senhas salvas</translation>
 <translation id="5287240709317226393">Mostrar cookies</translation>
+<translation id="5287456746628258573">Este site usa uma configuração de segurança desatualizada que pode expor suas informações, como senhas ou números de cartão de crédito, quando elas forem enviadas para o site.</translation>
 <translation id="5288108484102287882">A validação dos valores da política gerou alguns avisos</translation>
 <translation id="5299298092464848405">Política de análise de erros</translation>
 <translation id="5300589172476337783">Mostrar</translation>
@@ -993,6 +997,7 @@
 <translation id="5946937721014915347">Abrindo <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Sim, adicionar</translation>
 <translation id="5951495562196540101">Não é possível fazer a inscrição com a conta pessoal (pacote de licença disponível).</translation>
+<translation id="5966900314707961320">Quando ativado, os sites não podem usar cookies que rastreiem você pela Web</translation>
 <translation id="5967592137238574583">Edite as Informações de Contato</translation>
 <translation id="5967867314010545767">Remover do histórico</translation>
 <translation id="5975083100439434680">Diminuir zoom</translation>
@@ -1075,6 +1080,7 @@
 <translation id="6383221683286411806">Acesso sujeito a cobranças.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 outra sugestão}one{# outra sugestão}other{# outras sugestões}}</translation>
 <translation id="6387754724289022810">Para agilizar o pagamento na próxima vez, salve o cartão e o endereço de faturamento na sua Conta do Google e neste dispositivo.</translation>
+<translation id="6389470377220713856">Nome no cartão</translation>
 <translation id="6390200185239044127">Dobra sanfona simples</translation>
 <translation id="6390662030813198813">Engineering E</translation>
 <translation id="6401136357288658127">Essa política está obsoleta. Use a política <ph name="NEW_POLICY" />.</translation>
@@ -1253,7 +1259,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">O usuário é afiliado:</translation>
 <translation id="7349430561505560861">A4 Extra</translation>
-<translation id="7352902249897488700">Sair deste site</translation>
 <translation id="7353601530677266744">Linha de comando</translation>
 <translation id="7372973238305370288">resultado da pesquisa</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1426,6 +1431,7 @@
 <translation id="8131740175452115882">Confirmar</translation>
 <translation id="8149426793427495338">Seu computador entrou em modo de suspensão.</translation>
 <translation id="8150722005171944719">O arquivo em <ph name="URL" /> não está legível. Ele pode ter sido removido ou movido, ou as permissões do arquivo podem estar impedindo o acesso.</translation>
+<translation id="8157295877370077682">Sair do site</translation>
 <translation id="8163866351304776260">Perfuração quádrupla no lado esquerdo</translation>
 <translation id="8175796834047840627">A opção de salvar seus cartões na Conta do Google está disponível no Chrome porque você fez login. É possível alterar esse comportamento nas configurações.</translation>
 <translation id="8184538546369750125">Usar padrão global (Permitir)</translation>
diff --git a/components/strings/components_strings_pt-PT.xtb b/components/strings/components_strings_pt-PT.xtb
index 51a8765..613f6a7 100644
--- a/components/strings/components_strings_pt-PT.xtb
+++ b/components/strings/components_strings_pt-PT.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Abrir páginas iniciais</translation>
 <translation id="1883255238294161206">Fechar lista</translation>
 <translation id="1898423065542865115">Filtragem</translation>
+<translation id="1901443836186977402">{1,plural, =1{Este servidor não conseguiu provar que é o domínio <ph name="DOMAIN" />. O respetivo certificado de segurança expirou no último dia. Isto pode ser o resultado de uma configuração incorreta ou de um utilizador mal-intencionado que intercetou a sua ligação. O relógio do seu computador está atualmente definido para <ph name="CURRENT_DATE" />. Esta hora parece-lhe correta? Em caso negativo, corrija o relógio do sistema e, em seguida, atualize esta página.}other{Este servidor não conseguiu provar que é o domínio <ph name="DOMAIN" />. O respetivo certificado de segurança expirou há # dias. Isto pode ser o resultado de uma configuração incorreta ou de um utilizador mal-intencionado que intercetou a sua ligação. O relógio do seu computador está atualmente definido para <ph name="CURRENT_DATE" />. Esta hora parece-lhe correta? Em caso negativo, corrija o relógio do sistema e, em seguida, atualize esta página.}}</translation>
 <translation id="1914326953223720820">Serviço de descompressão de ficheiros</translation>
 <translation id="1915697529809968049">Pretende utilizar o Touch ID em vez do CVC?</translation>
 <translation id="1916770123977586577">Para aplicar as definições atualizadas a este site, atualize esta página</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminar</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Experimente executar o Diagnóstico de conetividade<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Ir para <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Sem}=1{dados de início de sessão para 1 conta}other{dados de início de sessão para # contas}}</translation>
 <translation id="3145945101586104090">Falha ao descodificar resposta</translation>
 <translation id="3150653042067488994">Erro temporário do servidor</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Link que copiou</translation>
 <translation id="5045550434625856497">Palavra-passe incorrecta</translation>
 <translation id="5056549851600133418">Artigos para si</translation>
+<translation id="5061227663725596739">Será que quis dizer <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 em utilização)}other{(# em utilização)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Verificar o endereço proxy<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Endereços de rede</translation>
 <translation id="5285570108065881030">Mostrar todas as palavras-passe guardadas</translation>
 <translation id="5287240709317226393">Mostrar cookies</translation>
+<translation id="5287456746628258573">Este site utiliza uma configuração de segurança desatualizada, que pode expor as suas informações (por exemplo, palavras-passe ou números de cartões de crédito) quando são enviados para este site.</translation>
 <translation id="5288108484102287882">A validação dos valores da política gerou avisos.</translation>
 <translation id="5299298092464848405">Erro ao analisar a política</translation>
 <translation id="5300589172476337783">Mostrar</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">A abrir <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Sim, adicionar</translation>
 <translation id="5951495562196540101">Não é possível inscrever-se com conta de consumidor (licença incluída disponível).</translation>
+<translation id="5966900314707961320">Quando ativados, os sites não podem utilizar cookies que monitorizam o utilizador na Web.</translation>
 <translation id="5967592137238574583">Editar informações de contacto</translation>
 <translation id="5967867314010545767">Remover do histórico</translation>
 <translation id="5975083100439434680">Reduzir</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">Possíveis cobranças se prosseguir.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 outra sugestão}other{# outras sugestões}}</translation>
 <translation id="6387754724289022810">Para pagar mais rapidamente da próxima vez, guarde o cartão e o endereço de faturação na sua Conta Google e neste dispositivo.</translation>
+<translation id="6389470377220713856">Nome no cartão</translation>
 <translation id="6390200185239044127">Dobrar metade em Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Esta política foi descontinuada. Deverá optar por utilizar a política <ph name="NEW_POLICY" />.</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Está afiliado:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Sair deste site</translation>
 <translation id="7353601530677266744">Linha de comandos</translation>
 <translation id="7372973238305370288">resultado da pesquisa</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1442,6 +1447,7 @@
 <translation id="8131740175452115882">Confirmar</translation>
 <translation id="8149426793427495338">O computador entrou em suspensão.</translation>
 <translation id="8150722005171944719">O ficheiro em <ph name="URL" /> não é legível. Pode ter sido removido, movido ou as permissões do ficheiro podem estar a impedir o acesso.</translation>
+<translation id="8157295877370077682">Sair do site</translation>
 <translation id="8163866351304776260">Perfuração quádrupla à esquerda</translation>
 <translation id="8175796834047840627">O Chrome está a disponibilizar a opção de guardar os seus cartões na sua Conta Google porque tem sessão iniciada. Pode alterar este comportamento nas definições.</translation>
 <translation id="8184538546369750125">Utilizar predefinição global (Permitir)</translation>
diff --git a/components/strings/components_strings_ro.xtb b/components/strings/components_strings_ro.xtb
index 550ea501..feb62e4 100644
--- a/components/strings/components_strings_ro.xtb
+++ b/components/strings/components_strings_ro.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Deschide paginile de pornire</translation>
 <translation id="1883255238294161206">Restrângeți lista</translation>
 <translation id="1898423065542865115">Filtrarea</translation>
+<translation id="1901443836186977402">{1,plural, =1{Acest server nu a putut dovedi că este <ph name="DOMAIN" />; certificatul său de securitate a expirat în ultima zi. Cauza poate fi o eroare de configurare sau interceptarea conexiunii de către un atacator. În prezent, ora computerului este setată la <ph name="CURRENT_DATE" />. Este corect? Dacă nu este, corectează ora sistemului și actualizează pagina.}few{Acest server nu a putut dovedi că este <ph name="DOMAIN" />; certificatul său de securitate a expirat acum # zile. Cauza poate fi o configurare greșită sau interceptarea conexiunii de către un atacator. În prezent, ora computerului este setată la <ph name="CURRENT_DATE" />. Este corect? Dacă nu este, corectează ora sistemului și actualizează pagina.}other{Acest server nu a putut dovedi că este <ph name="DOMAIN" />; certificatul său de securitate a expirat acum # de zile. Cauza poate fi o configurare greșită sau interceptarea conexiunii de către un atacator. În prezent, ora computerului este setată la <ph name="CURRENT_DATE" />. Este corect? Dacă nu este, corectează ora sistemului și actualizează pagina.}}</translation>
 <translation id="1914326953223720820">Serviciu de dezarhivare</translation>
 <translation id="1915697529809968049">Folosești Touch ID în loc de CVC?</translation>
 <translation id="1916770123977586577">Ca să aplici setările actualizate pentru acest site, reîncarcă pagina</translation>
@@ -443,6 +444,7 @@
 <translation id="3116158981186517402">Laminare</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Rulează Diagnostice conectivitate<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Accesează <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Niciuna}=1{date de conectare pentru un cont}few{date de conectare pentru # conturi}other{date de conectare pentru # de conturi}}</translation>
 <translation id="3145945101586104090">Răspunsul nu a putut fi decodificat</translation>
 <translation id="3150653042067488994">Eroare temporară de server</translation>
@@ -827,6 +829,7 @@
 <translation id="5043480802608081735">Linkul copiat de tine</translation>
 <translation id="5045550434625856497">Parolă incorectă</translation>
 <translation id="5056549851600133418">Articole pentru tine</translation>
+<translation id="5061227663725596739">Ai vrut să scrii <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(unul în uz)}few{(# în uz)}other{(# în uz)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />să verifici adresa proxy-ului;<ph name="END_LINK" /></translation>
@@ -880,6 +883,7 @@
 <translation id="5284909709419567258">Adrese de rețea</translation>
 <translation id="5285570108065881030">Afișează toate parolele salvate</translation>
 <translation id="5287240709317226393">Afișați cookie-urile</translation>
+<translation id="5287456746628258573">Site-ul folosește o configurație de securitate învechită, care îți poate expune informațiile (de exemplu, parolele sau numerele cardurilor de credit) când sunt trimise la acest site.</translation>
 <translation id="5288108484102287882">Validarea valorilor de politică a returnat avertismente</translation>
 <translation id="5299298092464848405">Eroare la analizarea politicii</translation>
 <translation id="5300589172476337783">Afișează</translation>
@@ -1007,6 +1011,7 @@
 <translation id="5946937721014915347">Se deschide <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Da, adaugă</translation>
 <translation id="5951495562196540101">Nu te poți înscrie cu contul de consumator (este disponibilă o licență din pachet).</translation>
+<translation id="5966900314707961320">Dacă este activat, site-urile nu pot folosi cookie-uri care te urmăresc pe web</translation>
 <translation id="5967592137238574583">Editează informațiile de contact</translation>
 <translation id="5967867314010545767">Eliminați din istoric</translation>
 <translation id="5975083100439434680">Micșorează</translation>
@@ -1089,6 +1094,7 @@
 <translation id="6383221683286411806">Urmează costuri potențiale.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{o altă sugestie}few{alte # sugestii}other{alte # de sugestii}}</translation>
 <translation id="6387754724289022810">Pentru a plăti mai rapid data viitoare, salvează cardul și adresa de facturare în Contul Google și pe acest dispozitiv.</translation>
+<translation id="6389470377220713856">Nume de pe card</translation>
 <translation id="6390200185239044127">Îndoire în Z la jumătate</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Această politică este învechită. Ar trebui să folosești politica <ph name="NEW_POLICY" />.</translation>
@@ -1267,7 +1273,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Este afiliat:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Ieși de pe site</translation>
 <translation id="7353601530677266744">Linie de comandă</translation>
 <translation id="7372973238305370288">rezultat al căutării</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1440,6 +1445,7 @@
 <translation id="8131740175452115882">Confirmați</translation>
 <translation id="8149426793427495338">Computerul este inactiv.</translation>
 <translation id="8150722005171944719">Fișierul de la <ph name="URL" /> nu poate fi citit.  Este posibil să fi fost eliminat ori mutat sau ca permisiunile pentru fișiere să împiedice accesarea acestuia.</translation>
+<translation id="8157295877370077682">Ieși de pe site</translation>
 <translation id="8163866351304776260">Perforare cvadruplă în stânga</translation>
 <translation id="8175796834047840627">Chrome oferă salvarea cardurilor în Contul Google pentru că te-ai conectat. Poți schimba acest comportament în setări.</translation>
 <translation id="8184538546369750125">Utilizați setarea prestabilită la nivel global (Permiteți)</translation>
diff --git a/components/strings/components_strings_ru.xtb b/components/strings/components_strings_ru.xtb
index a9adf60..905e582 100644
--- a/components/strings/components_strings_ru.xtb
+++ b/components/strings/components_strings_ru.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Открыть стартовые страницы</translation>
 <translation id="1883255238294161206">Свернуть список</translation>
 <translation id="1898423065542865115">Фильтры</translation>
+<translation id="1901443836186977402">{1,plural, =1{Сервер не может подтвердить связь с доменом <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек вчера. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что часы на вашем компьютере установлены на <ph name="CURRENT_DATE" />. Это правильное время? Если нет, измените его и обновите страницу.}one{Сервер не может подтвердить связь с доменом <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек # день назад. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что часы на вашем компьютере установлены на <ph name="CURRENT_DATE" />. Это правильное время? Если нет, измените его и обновите страницу.}few{Сервер не может подтвердить связь с доменом <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек # дня назад. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что часы на вашем компьютере установлены на <ph name="CURRENT_DATE" />. Это правильное время? Если нет, измените его и обновите страницу.}many{Сервер не может подтвердить связь с доменом <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек # дней назад. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что часы на вашем компьютере установлены на <ph name="CURRENT_DATE" />. Это правильное время? Если нет, измените его и обновите страницу.}other{Сервер не может подтвердить связь с доменом <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек # дня назад. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что часы на вашем компьютере установлены на <ph name="CURRENT_DATE" />. Это правильное время? Если нет, измените его и обновите страницу.}}</translation>
 <translation id="1914326953223720820">Распаковщик файлов</translation>
 <translation id="1915697529809968049">Использовать Touch ID вместо CVC-кода?</translation>
 <translation id="1916770123977586577">Чтобы применить к сайту новые настройки, перезагрузите страницу</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">Ламинация</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Выполните диагностику подключения<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Перейти на страницу <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Нет}=1{данные для входа в 1 аккаунт}one{данные для входа в # аккаунт}few{данные для входа в # аккаунта}many{данные для входа в # аккаунтов}other{данные для входа в # аккаунта}}</translation>
 <translation id="3145945101586104090">Не удалось декодировать ответ</translation>
 <translation id="3150653042067488994">Временные неполадки на сервере</translation>
@@ -812,6 +814,7 @@
 <translation id="5043480802608081735">Скопированная ссылка</translation>
 <translation id="5045550434625856497">Неправильный пароль</translation>
 <translation id="5056549851600133418">Статьи для вас</translation>
+<translation id="5061227663725596739">Вам нужен домен <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(используется 1 файл cookie)}one{(используется # файл cookie)}few{(используется # файла cookie)}many{(используется # файлов cookie)}other{(используется # файла cookie)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Проверьте адрес прокси-сервера<ph name="END_LINK" />.</translation>
@@ -865,6 +868,7 @@
 <translation id="5284909709419567258">Сетевые адреса.</translation>
 <translation id="5285570108065881030">Показать все сохраненные пароли</translation>
 <translation id="5287240709317226393">Показать файлы сookie</translation>
+<translation id="5287456746628258573">Конфигурация безопасности этого сайта устарела. Злоумышленники могут получить доступ к вашим данным (например, паролям и номерам банковских карт) при их отправке на этот сайт.</translation>
 <translation id="5288108484102287882">При проверке значений политик обнаружены некритичные ошибки</translation>
 <translation id="5299298092464848405">Не удалось выполнить анализ политики</translation>
 <translation id="5300589172476337783">Показать</translation>
@@ -992,6 +996,7 @@
 <translation id="5946937721014915347">Загрузка <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Да</translation>
 <translation id="5951495562196540101">Регистрация невозможна, так как тип аккаунта не соответствует лицензии на устройстве.</translation>
+<translation id="5966900314707961320">Когда эта настройка включена, сайты не могут использовать файлы cookie, которые отслеживают ваши действия в Интернете.</translation>
 <translation id="5967592137238574583">Измените контактную информацию</translation>
 <translation id="5967867314010545767">Удалить из истории</translation>
 <translation id="5975083100439434680">Уменьшить</translation>
@@ -1074,6 +1079,7 @@
 <translation id="6383221683286411806">Возможное списание средств</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{ещё 1 вариант}one{ещё # вариант}few{ещё # варианта}many{ещё # вариантов}other{ещё # варианта}}</translation>
 <translation id="6387754724289022810">Чтобы ускорить процесс оплаты в будущем, сохраните карту и платежный адрес в аккаунте Google и на этом устройстве.</translation>
+<translation id="6389470377220713856">Владелец карты</translation>
 <translation id="6390200185239044127">Фальцовка гармошкой</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Правило устарело. Используйте <ph name="NEW_POLICY" />.</translation>
@@ -1252,7 +1258,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Аффилированный пользователь:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Закрыть сайт</translation>
 <translation id="7353601530677266744">Командная строка</translation>
 <translation id="7372973238305370288">результат поиска</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1425,6 +1430,7 @@
 <translation id="8131740175452115882">Подтвердить</translation>
 <translation id="8149426793427495338">Ваш компьютер перешел в спящий режим.</translation>
 <translation id="8150722005171944719">Файл по адресу <ph name="URL" /> недоступен. Возможно, он был удален или перемещен либо права доступа к нему ограничены.</translation>
+<translation id="8157295877370077682">Закрыть сайт</translation>
 <translation id="8163866351304776260">Четыре отверстия слева</translation>
 <translation id="8175796834047840627">Chrome предлагает вам сохранить карты в аккаунте Google, поскольку вы вошли в систему. Этот параметр можно изменить в разделе настроек.</translation>
 <translation id="8184538546369750125">Использовать глобальный параметр по умолчанию (разрешать)</translation>
diff --git a/components/strings/components_strings_sk.xtb b/components/strings/components_strings_sk.xtb
index 1bb56f5..08f8680 100644
--- a/components/strings/components_strings_sk.xtb
+++ b/components/strings/components_strings_sk.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Otvoriť stránky pri spustení</translation>
 <translation id="1883255238294161206">Zbaliť zoznam</translation>
 <translation id="1898423065542865115">Filtrovanie</translation>
+<translation id="1901443836186977402">{1,plural, =1{Tento server nedokázal potvrdiť, či ide o doménu <ph name="DOMAIN" />. Platnosť jej bezpečnostného certifikátu vypršala včera. Môže to byť následok nesprávnej konfigurácie alebo napadnutia vášho pripojenia útočníkom. Hodiny vášho počítača sú momentálne nastavené na <ph name="CURRENT_DATE" />. Je tento čas správny? Ak nie, opravte čas na hodinách systému a potom obnovte túto stránku.}few{Tento server nedokázal potvrdiť, že ide o doménu <ph name="DOMAIN" />. Platnosť jej bezpečnostného certifikátu vypršala pred # dňami. Môže to byť následok nesprávnej konfigurácie alebo napadnutia vášho pripojenia útočníkom. Hodiny vášho počítača sú momentálne nastavené na <ph name="CURRENT_DATE" />. Je tento čas správny? Ak nie, opravte čas na hodinách systému a potom obnovte túto stránku.}many{Tento server nedokázal potvrdiť, že ide o doménu <ph name="DOMAIN" />. Platnosť jej bezpečnostného certifikátu vypršala pred # dňom. Môže to byť následok nesprávnej konfigurácie alebo napadnutia vášho pripojenia útočníkom. Hodiny vášho počítača sú momentálne nastavené na <ph name="CURRENT_DATE" />. Je tento čas správny? Ak nie, opravte čas na hodinách systému a potom obnovte túto stránku.}other{Tento server nedokázal potvrdiť, že ide o doménu <ph name="DOMAIN" />. Platnosť jej bezpečnostného certifikátu vypršala pred # dňami. Môže to byť následok nesprávnej konfigurácie alebo napadnutia vášho pripojenia útočníkom. Hodiny vášho počítača sú momentálne nastavené na <ph name="CURRENT_DATE" />. Je tento čas správny? Ak nie, opravte čas na hodinách systému a potom obnovte túto stránku.}}</translation>
 <translation id="1914326953223720820">Rozbaliť službu</translation>
 <translation id="1915697529809968049">Chcete namiesto overovacieho kódu karty použiť Touch ID?</translation>
 <translation id="1916770123977586577">Ak chcete na webe uplatniť aktualizované nastavenia, znova načítajte túto stránku</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">Laminovať</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Skúste spustiť nástroj Diagnostika konektivity<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Prejsť na <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Žiadne}=1{prihlasovacie údaje pre 1 účet}few{prihlasovacie údaje pre # účty}many{sign-in data for # accounts}other{prihlasovacie údaje pre # účtov}}</translation>
 <translation id="3145945101586104090">Odpoveď sa nepodarilo dekódovať</translation>
 <translation id="3150653042067488994">Dočasná chyba servera</translation>
@@ -593,7 +595,7 @@
 <translation id="3964661563329879394">{COUNT,plural, =0{Žiadne}=1{Z 1 webu }few{Z # webov }many{Z # webu }other{Z # webov }}</translation>
 <translation id="397105322502079400">Prebieha výpočet...</translation>
 <translation id="3973234410852337861">Web <ph name="HOST_NAME" /> je zablokovaný</translation>
-<translation id="3981540111851280311">Doména <ph name="ENROLLMENT_DOMAIN" /> povolila vo vašom prehliadači ochranu Chrome Enterprise pred hrozbami. Ochrana Chrome Enterprise pred hrozbami má prístup k niektorým vašim údajom.</translation>
+<translation id="3981540111851280311">Organizácia <ph name="ENROLLMENT_DOMAIN" /> vo vašom prehliadači zapla systém ochrany Chrome Enterprise. Systém ochrany Chrome Enterprise má prístup k niektorým vašim údajom.</translation>
 <translation id="3987940399970879459">Menej ako 1 MB</translation>
 <translation id="3990250421422698716">Odsadenie zarovnania okrajov</translation>
 <translation id="40103911065039147">{URL_count,plural, =1{1 webová stránka v okolí}few{# webové stránky v okolí}many{# webovej stránky v okolí}other{# webových stránok v okolí}}</translation>
@@ -809,6 +811,7 @@
 <translation id="5043480802608081735">Skopírovaný odkaz</translation>
 <translation id="5045550434625856497">Nesprávne heslo</translation>
 <translation id="5056549851600133418">Články pre vás</translation>
+<translation id="5061227663725596739">Mysleli ste <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(Používa sa 1)}few{(Používajú sa #)}many{(# in use)}other{(Používa sa #)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Skontrolovať adresu proxy servera<ph name="END_LINK" /></translation>
@@ -862,6 +865,7 @@
 <translation id="5284909709419567258">Sieťové adresy</translation>
 <translation id="5285570108065881030">Zobraziť všetky uložené heslá</translation>
 <translation id="5287240709317226393">Zobraziť súbory cookie</translation>
+<translation id="5287456746628258573">Tento web používa zastaranú konfiguráciu zabezpečenia, ktorá môže odhaliť vaše informácie (napríklad heslá alebo čísla kreditných kariet), keď ich naň odošlete.</translation>
 <translation id="5288108484102287882">Overenie hodnôt pravidiel vygenerovalo upozornenia</translation>
 <translation id="5299298092464848405">Pri analýze pravidla sa vyskytla chyba</translation>
 <translation id="5300589172476337783">Zobraziť</translation>
@@ -989,6 +993,7 @@
 <translation id="5946937721014915347">Otvára sa web <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Áno, pridať</translation>
 <translation id="5951495562196540101">Nemôžete sa zaregistrovať spotrebiteľským účtom (k dispozícii je licencia v balíčku).</translation>
+<translation id="5966900314707961320">Keď toto nastavenie zapnete, weby nebudú môcť používať súbory cookie, ktoré vás sledujú na internete</translation>
 <translation id="5967592137238574583">Úprava kontaktných informácií</translation>
 <translation id="5967867314010545767">Odstrániť z histórie</translation>
 <translation id="5975083100439434680">Oddialiť</translation>
@@ -1070,6 +1075,7 @@
 <translation id="6383221683286411806">Ak prejdete ďalej, môžu vám byť účtované poplatky.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 ďalší návrh}few{# ďalšie návrhy}many{# ďalšieho návrhu}other{# ďalších návrhov}}</translation>
 <translation id="6387754724289022810">Ak chcete nabudúce zaplatiť rýchlejšie, uložte si kartu a fakturačnú adresu do účtu Google a tohto zariadenia.</translation>
+<translation id="6389470377220713856">Meno na karte</translation>
 <translation id="6390200185239044127">Záhyb v tvare písmena Z v polovici</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Podpora tohto pravidla bola ukončená. Namiesto neho použite pravidlo <ph name="NEW_POLICY" />.</translation>
@@ -1082,7 +1088,7 @@
 <translation id="6433490469411711332">Úprava kontaktných informácií</translation>
 <translation id="6433595998831338502">Web <ph name="HOST_NAME" /> zamietol pripojenie.</translation>
 <translation id="6434309073475700221">Odstrániť</translation>
-<translation id="6435221585574090192">Zdieľajte so svojím správcom údaje o bezpečnostných udalostiach nahlásených ochranou Chrome Enterprise pred hrozbami. Môžu zahŕňať webové adresy stránok, názvy a metadáta súborov a vaše používateľské meno v zariadení aj Chrome.</translation>
+<translation id="6435221585574090192">Zdieľajte so svojím správcom údaje o bezpečnostných udalostiach nahlásených systémom ochrany Chrome Enterprise. Môžu zahŕňať webové adresy stránok, názvy a metadáta súborov a vaše používateľské meno v zariadení aj Chrome.</translation>
 <translation id="6440503408713884761">Ignorované</translation>
 <translation id="6446163441502663861">Kahu (obálka)</translation>
 <translation id="6446608382365791566">Pridanie ďalších informácií</translation>
@@ -1248,7 +1254,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Je pridružený/-á</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Odísť z tohto webu</translation>
 <translation id="7353601530677266744">Príkazový riadok</translation>
 <translation id="7372973238305370288">výsledok vyhľadávania</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> – <ph name="FULL_DATE" /></translation>
@@ -1314,7 +1319,7 @@
 <translation id="7610193165460212391">Hodnota (<ph name="VALUE" />) presahuje povolený rozsah.</translation>
 <translation id="7613889955535752492">Dátum vypršania platnosti: <ph name="EXPIRATION_MONTH" />/<ph name="EXPIRATION_YEAR" /></translation>
 <translation id="7615602087246926389">Už máte údaje, ktoré sú šifrované pomocou inej verzie vášho hesla účtu Google. Zadajte ho nižšie.</translation>
-<translation id="7625784245512586808">Ochrana Chrome Enterprise pred hrozbami</translation>
+<translation id="7625784245512586808">Systém ochrany Chrome Enterprise</translation>
 <translation id="7633909222644580952">Údaje o výkonnosti a správy o zlyhaní</translation>
 <translation id="7637571805876720304">Chcete kreditnú kartu odstrániť z prehliadača Chromium?</translation>
 <translation id="7638605456503525968">Sériové porty</translation>
@@ -1421,6 +1426,7 @@
 <translation id="8131740175452115882">Potvrdiť</translation>
 <translation id="8149426793427495338">Váš počítač prešiel do režimu spánku.</translation>
 <translation id="8150722005171944719">Súbor na adrese <ph name="URL" /> nie je možné prečítať. Je možné, že bol odstránený, presunutý alebo môžu v prístupe brániť povolenia súboru.</translation>
+<translation id="8157295877370077682">Odísť z webu</translation>
 <translation id="8163866351304776260">Štyri dierky vľavo</translation>
 <translation id="8175796834047840627">Chrome poskytuje možnosť uložiť karty v účte Google, pretože ste sa prihlásili. Toto správanie môžete zmeniť v nastaveniach.</translation>
 <translation id="8184538546369750125">Použiť predvolené všeobecné nastavenie (Povoliť)</translation>
@@ -1590,7 +1596,7 @@
 <translation id="9080712759204168376">Súhrn objednávky</translation>
 <translation id="9089260154716455634">Pravidlo intervalov nečinnosti:</translation>
 <translation id="9095388113577226029">Ďalšie jazyky…</translation>
-<translation id="9098981495403789647">Správca povolil vo vašom počítači ochranu Chrome Enterprise pred hrozbami. Ochrana Chrome Enterprise pred hrozbami má prístup k niektorým vašim údajom.</translation>
+<translation id="9098981495403789647">Správca vo vašom prehliadači zapol systém ochrany Chrome Enterprise. Systém ochrany Chrome Enterprise má prístup k niektorým vašim údajom.</translation>
 <translation id="9103872766612412690">Web <ph name="SITE" /> zvyčajne chráni vaše informácie pomocou šifrovania. Keď sa prehliadač Chromium tentokrát pokúsil pripojiť k webu <ph name="SITE" />, odoslal späť nezvyčajné a nesprávne poverenia. Môže sa to stať vtedy, keď sa za web <ph name="SITE" /> snaží vydávať útočník alebo keď pripojenie preruší prihlasovacia obrazovka siete Wi‑Fi. Vaše informácie sú stále zabezpečené, pretože prehliadač Chromium zastavil pripojenie ešte pred výmenou dát.</translation>
 <translation id="9106062320799175032">Pridanie fakturačnej adresy</translation>
 <translation id="9114524666733003316">Overuje sa karta…</translation>
diff --git a/components/strings/components_strings_sl.xtb b/components/strings/components_strings_sl.xtb
index d325a21..e0c1092 100644
--- a/components/strings/components_strings_sl.xtb
+++ b/components/strings/components_strings_sl.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Odpiranje strani ob zagonu</translation>
 <translation id="1883255238294161206">Strni seznam</translation>
 <translation id="1898423065542865115">Filtriranje</translation>
+<translation id="1901443836186977402">{1,plural, =1{Strežniku ni uspelo dokazati, da je <ph name="DOMAIN" />; njegovo potrdilo je poteklo v preteklem dnevu. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura vašega računalnika je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to videti v redu? Če ni, pravilno nastavite sistemsko uro in nato osvežite stran.}one{Strežniku ni uspelo dokazati, da je <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo pred # dnevom. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura v računalniku je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to pravilno? Če ni, popravite uro v sistemu in osvežite stran.}two{Strežniku ni uspelo dokazati, da je <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo pred # dnevoma. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura v računalniku je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to pravilno? Če ni, popravite uro v sistemu in osvežite stran.}few{Strežniku ni uspelo dokazati, da je <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo pred # dnevi. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura v računalniku je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to pravilno? Če ni, popravite uro v sistemu in osvežite stran.}other{Strežniku ni uspelo dokazati, da je <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo pred # dnevi. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura v računalniku je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to pravilno? Če ni, popravite uro v sistemu in osvežite stran.}}</translation>
 <translation id="1914326953223720820">Storitev razširjanja datotek</translation>
 <translation id="1915697529809968049">Želite namesto kode CVC uporabiti Touch ID?</translation>
 <translation id="1916770123977586577">Če želite uporabiti posodobljene nastavitve za to spletno mesto, znova naložite to stran</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminiranje</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Poskušajte zagnati orodje Diagnostika povezljivosti<ph name="END_LINK" /></translation>
+<translation id="3121994479408824897">Odpri <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Nič}=1{podatki za prijavo za 1 račun}one{podatki za prijavo za # račun}two{podatki za prijavo za # računa}few{podatki za prijavo za # račune}other{podatki za prijavo za # računov}}</translation>
 <translation id="3145945101586104090">Dekodiranje odziva ni uspelo</translation>
 <translation id="3150653042067488994">Začasna napaka strežnika</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Povezava, ki ste jo kopirali</translation>
 <translation id="5045550434625856497">Nepravilno geslo</translation>
 <translation id="5056549851600133418">Članki za vas</translation>
+<translation id="5061227663725596739">Ali ste mislili <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 v uporabi)}one{(# v uporabi)}two{(# v uporabi)}few{(# v uporabi)}other{(# v uporabi)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />preveriti naslov strežnika proxy<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Omrežni naslovi</translation>
 <translation id="5285570108065881030">Prikaži vsa shranjena gesla</translation>
 <translation id="5287240709317226393">Pokaži piškotke</translation>
+<translation id="5287456746628258573">To spletno mesto uporablja zastarelo varnostno konfiguracijo, zaradi česar so lahko vaši podatki ob pošiljanju temu spletnemu mestu izpostavljeni (npr. gesla ali številke kreditnih kartic).</translation>
 <translation id="5288108484102287882">Preverjanje vrednosti pravilnika je aktiviralo opozorila</translation>
 <translation id="5299298092464848405">Napaka pri razčlenjevanju pravilnika</translation>
 <translation id="5300589172476337783">Pokaži</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">Odpiranje spletnega mesta <ph name="SITE_NAME" /> …</translation>
 <translation id="5947933617628957894">Da, dodaj</translation>
 <translation id="5951495562196540101">S potrošniškim računom se ni mogoče včlaniti (na voljo je pridružena licenca).</translation>
+<translation id="5966900314707961320">Ko je to omogočeno, vam spletna mesta ne morejo slediti po spletu na podlagi piškotkov</translation>
 <translation id="5967592137238574583">Urejanje podatkov o stiku</translation>
 <translation id="5967867314010545767">Odstrani iz zgodovine</translation>
 <translation id="5975083100439434680">Pomanjšaj</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">Morda bo prišlo do bremenitev.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{in še 1 predlog}one{in še # predlog}two{in še # predloga}few{in še # predlogi}other{in še # predlogov}}</translation>
 <translation id="6387754724289022810">Če želite naslednjič hitreje plačati, shranite kartico in naslov za izstavitev računa v Google Računu in v tej napravi.</translation>
+<translation id="6389470377220713856">Name on Card</translation>
 <translation id="6390200185239044127">Cikcakasto prepogibanje napol</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Ta pravilnik je zastarel. Uporabite pravilnik <ph name="NEW_POLICY" />.</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Je povezan:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Zapusti to spletno mesto</translation>
 <translation id="7353601530677266744">Ukazna vrstica</translation>
 <translation id="7372973238305370288">rezultat iskanja</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> – <ph name="FULL_DATE" /></translation>
@@ -1443,6 +1448,7 @@
 <translation id="8131740175452115882">Potrdi</translation>
 <translation id="8149426793427495338">Računalnik je preklopil v stanje pripravljenosti.</translation>
 <translation id="8150722005171944719">Datoteke na <ph name="URL" /> ni mogoče prebrati. Morda je odstranjena, premaknjena ali pa dostop preprečujejo dovoljenja za datoteke.</translation>
+<translation id="8157295877370077682">Zapusti spletno mesto</translation>
 <translation id="8163866351304776260">Četverno luknjanje na levi</translation>
 <translation id="8175796834047840627">Chrome ponuja shranjevanje kartic v račun Google, ker ste prijavljeni. To lahko spremenite v nastavitvah.</translation>
 <translation id="8184538546369750125">Uporabi globalno privzeto (Dovoli)</translation>
diff --git a/components/strings/components_strings_sr.xtb b/components/strings/components_strings_sr.xtb
index e3d91ef..406e551 100644
--- a/components/strings/components_strings_sr.xtb
+++ b/components/strings/components_strings_sr.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Отвори почетне странице</translation>
 <translation id="1883255238294161206">Скупи листу</translation>
 <translation id="1898423065542865115">Филтрирање</translation>
+<translation id="1901443836186977402">{1,plural, =1{Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је истекао претходног дана. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу. Сат рачунара је тренутно подешен на <ph name="CURRENT_DATE" />. Да ли је то тачно? Ако није, требало би да исправите сат система и да затим освежите ову страницу.}one{Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је истекао пре # дан. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу. Сат рачунара је тренутно подешен на <ph name="CURRENT_DATE" />. Да ли је то тачно? Ако није, требало би да исправите сат система и да затим освежите ову страницу.}few{Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је истекао пре # дана. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу. Сат рачунара је тренутно подешен на <ph name="CURRENT_DATE" />. Да ли је то тачно? Ако није, требало би да исправите сат система и да затим освежите ову страницу.}other{Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је истекао пре # дана. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу. Сат рачунара је тренутно подешен на <ph name="CURRENT_DATE" />. Да ли је то тачно? Ако није, требало би да исправите сат система и да затим освежите ову страницу.}}</translation>
 <translation id="1914326953223720820">Услуга за отпакивање датотека</translation>
 <translation id="1915697529809968049">Желите ли да користите Touch ID уместо CVC-а?</translation>
 <translation id="1916770123977586577">Да бисте применили ажурирана подешавања на овом сајту, учитајте страницу поново</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Ламинирање</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Покушајте да покренете дијагностику везе<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Иди на <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{None}=1{подаци за пријављивање за 1 налог}one{подаци за пријављивање за # налог}few{подаци за пријављивање за # налога}other{подаци за пријављивање за # налога}}</translation>
 <translation id="3145945101586104090">Декодирање одговора није успело</translation>
 <translation id="3150653042067488994">Привремена грешка на серверу</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Линк који сте копирали</translation>
 <translation id="5045550434625856497">Неисправна лозинка</translation>
 <translation id="5056549851600133418">Чланци за вас</translation>
+<translation id="5061227663725596739">Да ли сте мислили <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(користи се 1)}one{(користи се #)}few{(користе се #)}other{(користи се #)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />да проверите адресу проксија<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Мрежне адресе</translation>
 <translation id="5285570108065881030">Прикажи све сачуване лозинке</translation>
 <translation id="5287240709317226393">Прикажи колачиће</translation>
+<translation id="5287456746628258573">Овај сајт користи застарелу безбедносну конфигурацију, која може да открије ваше информације (на пример, лозинке или бројеве кредитних картица) када се шаљу на њега.</translation>
 <translation id="5288108484102287882">Валидација вредности смерница је активирала упозорења</translation>
 <translation id="5299298092464848405">Грешка при рашчлањивању смерница</translation>
 <translation id="5300589172476337783">Прикажи</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">Отвара се <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Да, додај</translation>
 <translation id="5951495562196540101">Регистрација корисничког налога није успела (доступна је лиценца пакета).</translation>
+<translation id="5966900314707961320">Када је ово укључено, сајтови не могу да користе колачиће који вас прате по вебу</translation>
 <translation id="5967592137238574583">Измените контакт информације</translation>
 <translation id="5967867314010545767">Уклони из историје</translation>
 <translation id="5975083100439434680">Умањивање</translation>
@@ -1091,6 +1096,7 @@
 <translation id="6383221683286411806">Очекују вас потенцијални трошкови.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{још 1 предлог}one{још # предлог}few{још # предлога}other{још # предлога}}</translation>
 <translation id="6387754724289022810">Да бисте следећи пут платили брже, сачувајте картицу и адресу за обрачун на Google налогу и овом уређају.</translation>
+<translation id="6389470377220713856">Име и презиме на картици</translation>
 <translation id="6390200185239044127">Пресавијање половине у облику слова Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Ове смернице су застареле. Уместо њих треба да користите нове смернице <ph name="NEW_POLICY" />.</translation>
@@ -1269,7 +1275,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Повезан је:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Напусти овај сајт</translation>
 <translation id="7353601530677266744">Командна линија</translation>
 <translation id="7372973238305370288">резултат претраге</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1442,6 +1447,7 @@
 <translation id="8131740175452115882">Потврди</translation>
 <translation id="8149426793427495338">Рачунар је прешао у режим спавања.</translation>
 <translation id="8150722005171944719">Датотека на адреси <ph name="URL" /> не може да се чита. Можда је уклоњена или премештена или дозволе за датотеке спречавају приступ.</translation>
+<translation id="8157295877370077682">Напусти сајт</translation>
 <translation id="8163866351304776260">Четвороструко бушење на левој страни</translation>
 <translation id="8175796834047840627">Chrome вам нуди чување картица на Google налогу зато што сте пријављени. То можете да промените у подешавањима.</translation>
 <translation id="8184538546369750125">Користи глобалну подразумевану вредност (Дозволи)</translation>
diff --git a/components/strings/components_strings_sv.xtb b/components/strings/components_strings_sv.xtb
index a38d443..6b44365 100644
--- a/components/strings/components_strings_sv.xtb
+++ b/components/strings/components_strings_sv.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Öppna startsidorna</translation>
 <translation id="1883255238294161206">Komprimera lista</translation>
 <translation id="1898423065542865115">Filtrering</translation>
+<translation id="1901443836186977402">{1,plural, =1{Serverns identitet som <ph name="DOMAIN" /> gick inte att styrka eftersom dess säkerhetscertifikat upphörde att gälla under det senaste dygnet. Det kan bero på att servern är felkonfigurerad eller att anslutningen har blivit kapad. Klockan på datorn är för närvarande inställd på <ph name="CURRENT_DATE" />. Går den rätt? I annat fall bör du ställa om datorklockan och sedan uppdatera sidan.}other{Serverns identitet som <ph name="DOMAIN" /> gick inte att styrka eftersom dess säkerhetscertifikat upphörde att gälla för # dagar sedan. Det kan bero på att servern är felkonfigurerad eller att anslutningen har blivit kapad. Klockan på datorn är för närvarande inställd på <ph name="CURRENT_DATE" />. Går den rätt? I annat fall bör du ställa om datorklockan och sedan uppdatera sidan.}}</translation>
 <translation id="1914326953223720820">Uppackningstjänst</translation>
 <translation id="1915697529809968049">Vill du använda Touch ID i stället för CVC?</translation>
 <translation id="1916770123977586577">Läs in sidan igen för att tillämpa dina uppdaterade inställningar för webbplatsen</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">Laminera</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Testa att köra anslutningsdiagnostik<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Besök <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Ingen}=1{inloggningsuppgifter för 1 konto}other{inloggningsuppgifter för # konton}}</translation>
 <translation id="3145945101586104090">Det gick inte att avkoda svaret</translation>
 <translation id="3150653042067488994">Tillfälligt serverfel</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">Länk som du har kopierat</translation>
 <translation id="5045550434625856497">Felaktigt lösenord</translation>
 <translation id="5056549851600133418">Artiklar för dig</translation>
+<translation id="5061227663725596739">Menade du <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 används)}other{(# används)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />kontrollera proxyadressen<ph name="END_LINK" /></translation>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">Nätverksadresser</translation>
 <translation id="5285570108065881030">Visa alla sparade lösenord</translation>
 <translation id="5287240709317226393">Visa cookies</translation>
+<translation id="5287456746628258573">Den här webbplatsens säkerhetskonfiguration är inaktuell. Det kan leda till att dina uppgifter (till exempel lösenord eller kreditkortsnummer) exponeras när de skickas till den här webbplatsen.</translation>
 <translation id="5288108484102287882">Valideringen av principvärdena har utlöst varningar</translation>
 <translation id="5299298092464848405">Det uppstod ett fel när policyn analyserades</translation>
 <translation id="5300589172476337783">Visa</translation>
@@ -1010,6 +1014,7 @@
 <translation id="5946937721014915347">Öppnar <ph name="SITE_NAME" /> …</translation>
 <translation id="5947933617628957894">Ja, lägg till</translation>
 <translation id="5951495562196540101">Det går inte att registrera enheten med ett konsumentkonto (paketerad licens är tillgänglig).</translation>
+<translation id="5966900314707961320">När detta har aktiverats kan en webbplats inte använda cookies som spårar dig på webben</translation>
 <translation id="5967592137238574583">Redigera kontaktuppgifter</translation>
 <translation id="5967867314010545767">Ta bort från historiken</translation>
 <translation id="5975083100439434680">Zooma ut</translation>
@@ -1092,6 +1097,7 @@
 <translation id="6383221683286411806">Du kan komma att debiteras.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 annat förslag}other{# andra förslag}}</translation>
 <translation id="6387754724289022810">Spara kortet och faktureringsadressen i Google-kontot och på enheten så går det snabbare att betala nästa gång.</translation>
+<translation id="6389470377220713856">Namn på kort</translation>
 <translation id="6390200185239044127">Halv Z-falsning</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Den här principen är utfasad. Använd principen <ph name="NEW_POLICY" /> i stället.</translation>
@@ -1270,7 +1276,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Är anknuten:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Lämna webbplatsen</translation>
 <translation id="7353601530677266744">Kommandorad</translation>
 <translation id="7372973238305370288">sökresultat</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1443,6 +1448,7 @@
 <translation id="8131740175452115882">Bekräfta</translation>
 <translation id="8149426793427495338">Datorn gick i viloläge.</translation>
 <translation id="8150722005171944719">Det går inte att läsa filen på <ph name="URL" />. Den kan ha tagits bort eller flyttats, eller så krävs behörighet för att få åtkomst till den.</translation>
+<translation id="8157295877370077682">Lämna webbplatsen</translation>
 <translation id="8163866351304776260">Fyra hål till vänster</translation>
 <translation id="8175796834047840627">Du erbjuds av Chrome att spara dina kort i Google-kontot eftersom du är inloggad. Du kan ändra detta i inställningarna.</translation>
 <translation id="8184538546369750125">Använd global standardinställning (Tillåt)</translation>
diff --git a/components/strings/components_strings_sw.xtb b/components/strings/components_strings_sw.xtb
index 38bc66d..048abdc 100644
--- a/components/strings/components_strings_sw.xtb
+++ b/components/strings/components_strings_sw.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Fungua kurasa zinazoanza</translation>
 <translation id="1883255238294161206">Kunja orodha</translation>
 <translation id="1898423065542865115">Kuchuja</translation>
+<translation id="1901443836186977402">{1,plural, =1{Seva hii imeshindwa kuthibitisha kuwa ni <ph name="DOMAIN" />; muda wa kutumia cheti chake cha usalama uliisha siku iliyopita. Huenda hali hii imetokana na mipangilio isiyofaa au mdukuzi kuingilia muunganisho wako. Kwa sasa, saa ya kompyuta yako imewekwa kuwa <ph name="CURRENT_DATE" />. Je, ni sahihi? Ikiwa si sahihi, rekebisha saa ya mfumo wako kisha uonyeshe upya ukurasa huu.}other{Seva hii imeshindwa kuthibitisha kuwa ni <ph name="DOMAIN" />; muda wa kutumia cheti chake cha usalama uliisha siku # zilizopita. Hali hii inaweza kusababishwa na mipangilio isiyofaa au mdukuzi kuingilia muunganisho wako. Saa ya kompyuta yako imewekwa kuwa <ph name="CURRENT_DATE" />. Je, ni sahihi? Ikiwa si sahihi, unapaswa kurekebisha mfumo wako wa saa kisha uonyeshe upya ukurasa huu?}}</translation>
 <translation id="1914326953223720820">Huduma ya Kufungua Faili za Zip</translation>
 <translation id="1915697529809968049">Ungependa kutumia Touch ID badala ya CVC?</translation>
 <translation id="1916770123977586577">Pakia upya ukurasa huu ili mipangilio iliyosasishwa itumike katika tovuti hii</translation>
@@ -441,6 +442,7 @@
 <translation id="3116158981186517402">Funika kwa tabaka</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Jaribu kutumia zana ya Kuchunguza Muunganisho<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Nenda kwenye <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Hamna}=1{data ya kuingia katika akaunti 1}other{data ya kuingia katika akaunti #}}</translation>
 <translation id="3145945101586104090">Imeshindwa kusimbua jibu</translation>
 <translation id="3150653042067488994">Hitilfau ya muda ya seva</translation>
@@ -823,6 +825,7 @@
 <translation id="5043480802608081735">Kiungo Ulichonakili</translation>
 <translation id="5045550434625856497">Nenosiri lisilo sahihi</translation>
 <translation id="5056549851600133418">Makala kwa ajili yako</translation>
+<translation id="5061227663725596739">Je, ulimaanisha <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 kinatumika)}other{(# vinatumika)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Kuangalia anwani mbadala<ph name="END_LINK" /></translation>
@@ -876,6 +879,7 @@
 <translation id="5284909709419567258">Anwani za mtandao</translation>
 <translation id="5285570108065881030">Onyesha manenosiri yote yaliyohifadhiwa</translation>
 <translation id="5287240709317226393">Onyesha vidakuzi</translation>
+<translation id="5287456746628258573">Tovuti hii inatumia mipangilio ya usalama iliyopitwa na wakati, hali ambayo inaweza kuonyesha taarifa zako (kwa mfano, manenosiri, au nambari za kadi za mikopo) zikitumwa kwenye tovuti hii.</translation>
 <translation id="5288108484102287882">Imethibitisha thamani za sera na kutoa maonyo</translation>
 <translation id="5299298092464848405">Hitilafu wakati wa kuchanganua sera</translation>
 <translation id="5300589172476337783">Onyesha</translation>
@@ -1004,6 +1008,7 @@
 <translation id="5946937721014915347">Inafungua <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Ndiyo, Ongeza</translation>
 <translation id="5951495562196540101">Huwezi kujiandikisha ukitumia akaunti ya mteja (ina leseni ya kifurushi).</translation>
+<translation id="5966900314707961320">Ikiwashwa, tovuti haziwezi kutumia vidakuzi vinavyokufuatilia kwenye wavuti</translation>
 <translation id="5967592137238574583">Badilisha Maelezo ya Mawasiliano</translation>
 <translation id="5967867314010545767">Ondoa kwenye historia</translation>
 <translation id="5975083100439434680">Fifiza</translation>
@@ -1086,6 +1091,7 @@
 <translation id="6383221683286411806">Huenda ukatozwa gharama.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{Pendekezo jingine 1}other{Mapendekezo mengine #}}</translation>
 <translation id="6387754724289022810">Ili ulipe kwa haraka wakati ujao, hifadhi anwani ya kutuma bili na maelezo ya kadi yako kwenye Akaunti yako ya Google na kwenye kifaa hiki.</translation>
+<translation id="6389470377220713856">Jina lilio kwenye Kadi</translation>
 <translation id="6390200185239044127">Mkunjo wa Z nusu</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Sera hii imeacha kuendesha huduma. Ni sharti utumie sera ya <ph name="NEW_POLICY" /> badala yake.</translation>
@@ -1262,7 +1268,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Ni mshirika:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Ondoka kwenye tovuti hii</translation>
 <translation id="7353601530677266744">Mbinu ya Amri</translation>
 <translation id="7372973238305370288">matokeo ya utafutaji</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1435,6 +1440,7 @@
 <translation id="8131740175452115882">Thibitisha</translation>
 <translation id="8149426793427495338">Kompyuta yako iko katika hali tuli.</translation>
 <translation id="8150722005171944719">Faili katika <ph name="URL" /> haisomeki. Huenda imeondolewa, kusogezwa, au idhini za faili huenda zinazuia ufikiaji.</translation>
+<translation id="8157295877370077682">Funga tovuti</translation>
 <translation id="8163866351304776260">Toboa mara nne kushoto</translation>
 <translation id="8175796834047840627">Chrome ina huduma ya kuhifadhi kadi zako kwenye Akaunti yako ya Google kwa sababu umeingia katika akaunti. Unaweza kubadilisha hali hii katika mipangilio.</translation>
 <translation id="8184538546369750125">Tumia chaguomsingi la duniani (Ruhusu)</translation>
diff --git a/components/strings/components_strings_ta.xtb b/components/strings/components_strings_ta.xtb
index e5bd239..1fd92eec 100644
--- a/components/strings/components_strings_ta.xtb
+++ b/components/strings/components_strings_ta.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">துவக்கப் பக்கங்களைத் திற</translation>
 <translation id="1883255238294161206">பட்டியலைச் சுருக்கு</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>
 <translation id="1914326953223720820">ஜிப் கோப்புகளைத் திறக்கும் சேவை</translation>
 <translation id="1915697529809968049">CVCக்குப் பதிலாக Touch IDயைப் பயன்படுத்தவா?</translation>
 <translation id="1916770123977586577">மாற்றிய அமைப்புகளை இந்தத் தளத்தில் பயன்படுத்த, பக்கத்தை மீண்டும் ஏற்றவும்</translation>
@@ -437,6 +438,7 @@
 <translation id="3116158981186517402">லேமினேட்</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />கனெக்டிவிட்டி டயக்னஸ்டிக்ஸ் கருவியை இயக்கவும்<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" />க்கு செல்</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{ஏதுமில்லை}=1{1 கணக்கின் உள்நுழைவுத் தரவு}other{# கணக்குகளின் உள்நுழைவுத் தரவு}}</translation>
 <translation id="3145945101586104090">பதிலைக் குறிநீக்கம் செய்வதில் தோல்வி</translation>
 <translation id="3150653042067488994">தற்காலிக சேவையகப் பிழை</translation>
@@ -463,7 +465,7 @@
 <translation id="3234666976984236645">இந்தத் தளத்தின் முக்கிய உள்ளடக்கத்தை எப்போதும் இயக்கவும்</translation>
 <translation id="3270847123878663523">&amp;மறுவரிசைப்படுத்தலைச் செயல்தவிர்</translation>
 <translation id="3274521967729236597">Pa-Kai</translation>
-<translation id="3281668902344226640">நீங்கள் சேமித்துள்ள பேமெண்ட் முறைகளைச் சரிபார்க்க Touch ஐடியைப் பயன்படுத்து.</translation>
+<translation id="3281668902344226640">நீங்கள் சேமித்துள்ள பேமெண்ட் முறைகளைச் சரிபார்க்க Touch ஐடியைப் பயன்படுத்தவும்.</translation>
 <translation id="3282497668470633863">கார்டிலுள்ள பெயரைச் சேர்க்கவும்</translation>
 <translation id="3287510313208355388">ஆன்லைனில் இருக்கும் போது பதிவிறக்கு</translation>
 <translation id="3293642807462928945"><ph name="POLICY_NAME" /> கொள்கை குறித்து மேலும் அறிக</translation>
@@ -813,6 +815,7 @@
 <translation id="5043480802608081735">நீங்கள் நகலெடுத்த இணைப்பு</translation>
 <translation id="5045550434625856497">தவறான கடவுச்சொல்</translation>
 <translation id="5056549851600133418">உங்களுக்கான செய்திக் கட்டுரைகள்</translation>
+<translation id="5061227663725596739"><ph name="LOOKALIKE_DOMAIN" />ஐக் குறிப்பிடுகிறீர்களா?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(ஒன்று பயன்பாட்டில் உள்ளது)}other{(# பயன்பாட்டில் உள்ளன)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />ப்ராக்ஸி முகவரியைச் சரிபார்த்தல்<ph name="END_LINK" /></translation>
@@ -866,6 +869,7 @@
 <translation id="5284909709419567258">நெட்வொர்க் முகவரிகள்</translation>
 <translation id="5285570108065881030">சேமித்த எல்லாக் கடவுச்சொற்களையும் காட்டு</translation>
 <translation id="5287240709317226393">குக்கீகளைக் காட்டும்</translation>
+<translation id="5287456746628258573">இந்தத் தளம் காலாவதியான பாதுகாப்பு உள்ளமைவைப் பயன்படுத்துகிறது, உங்கள் கடவுச்சொற்கள், கிரெடிட் கார்டு எண்கள் போன்றவற்றை இத்தளத்திற்கு அனுப்பினால் மற்றவர்கள் அந்தத் தகவல்களைத் தெரிந்துகொள்ளக்கூடும்.</translation>
 <translation id="5288108484102287882">கொள்கை மதிப்புகளின் சரிபார்ப்பு எச்சரிக்கைகளை எழுப்பியுள்ளது</translation>
 <translation id="5299298092464848405">கொள்கையை அலசுவதில் பிழை</translation>
 <translation id="5300589172476337783">காண்பி</translation>
@@ -993,6 +997,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" />ஐத் திறக்கிறது…</translation>
 <translation id="5947933617628957894">ஆம், சேர்</translation>
 <translation id="5951495562196540101">நுகர்வோர் கணக்கில் பதிவுசெய்ய முடியவில்லை (தொகுக்கப்பட்ட உரிமம் உள்ளது).</translation>
+<translation id="5966900314707961320">இதை இயக்கினால் உங்கள் இணைய நடவடிக்கைகளைக் கண்காணிக்கும் குக்கீகளை தளங்களால் பயன்படுத்த முடியாது</translation>
 <translation id="5967592137238574583">தொடர்புத் தகவலைத் திருத்தவும்</translation>
 <translation id="5967867314010545767">வரலாற்றிலிருந்து அகற்று</translation>
 <translation id="5975083100439434680">சிறிதாக்கு</translation>
@@ -1074,6 +1079,7 @@
 <translation id="6383221683286411806">கட்டணங்கள் விதிக்கப்படச் சாத்தியமுள்ளது.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{மேலும் 1 பரிந்துரை}other{மேலும் # பரிந்துரைகள்}}</translation>
 <translation id="6387754724289022810">அடுத்த முறை விரைவாகப் பணம் அனுப்ப, உங்கள் கார்டையும் பில்லிங் முகவரியையும் Google கணக்கிலும் இந்தச் சாதனத்திலும் சேமிக்கவும்.</translation>
+<translation id="6389470377220713856">அட்டையிலுள்ள பெயர்</translation>
 <translation id="6390200185239044127">Z-ஃபோல்டு ஹாஃப்</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">இது தடுக்கப்பட்ட கொள்கை. இதற்குப் பதிலாக <ph name="NEW_POLICY" /> கொள்கையைப் பயன்படுத்த வேண்டும்.</translation>
@@ -1252,7 +1258,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">இணைக்கப்பட்டுள்ளாரா?:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">வலைதளத்திலிருந்து வெளியேறு</translation>
 <translation id="7353601530677266744">கட்டளை வரி</translation>
 <translation id="7372973238305370288">தேடல் முடிவு</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1285,7 +1290,7 @@
 <translation id="7460618730930299168">திரையிலுள்ள உள்ளடக்கமும் நீங்கள் தேர்ந்தெடுத்த உள்ளடக்கமும் மாறுபடுகின்றன. தொடரவா?</translation>
 <translation id="7473891865547856676">வேண்டாம் நன்றி</translation>
 <translation id="7481312909269577407">அடுத்த பக்கம்</translation>
-<translation id="748406663033922918">நீங்கள் சேமித்துள்ள பேமெண்ட் முறைகளைச் சரிபார்க்க திரைப் பூட்டைப் பயன்படுத்து.</translation>
+<translation id="748406663033922918">நீங்கள் சேமித்துள்ள பேமெண்ட் முறைகளைச் சரிபார்க்க திரைப் பூட்டைப் பயன்படுத்தவும்.</translation>
 <translation id="7485870689360869515">தரவு எதுவும் இல்லை.</translation>
 <translation id="7498234416455752244">திருத்துவதைத் தொடர்க</translation>
 <translation id="7508255263130623398">கிடைத்த பாலிசி சாதன ஐடி காலியாக உள்ளது அல்லது தற்போதைய சாதன ஐடியுடன் பொருந்தவில்லை</translation>
@@ -1425,6 +1430,7 @@
 <translation id="8131740175452115882">உறுதிப்படுத்து</translation>
 <translation id="8149426793427495338">உங்கள் கம்ப்யூட்டர் உறக்கநிலைக்குச் சென்றது.</translation>
 <translation id="8150722005171944719"><ph name="URL" /> இல் உள்ள கோப்பு படிக்கக் கூடியதாக இல்லை. அது அகற்றப்பட்டிருக்கலாம், நகர்த்தப்பட்டிருக்கலாம் அல்லது கோப்பு அனுமதிகள் அணுகலைத் தடுத்திருக்கலாம்.</translation>
+<translation id="8157295877370077682">தளத்திலிருந்து வெளியேறு</translation>
 <translation id="8163866351304776260">குவாட் பஞ்ச் லெஃப்ட்</translation>
 <translation id="8175796834047840627">உங்கள் Google கணக்கில் உள்நுழைந்திருப்பதால் Chrome உங்கள் கார்டுகளை இந்தக் கணக்கில் சேமிப்பதற்குக் கோருகிறது. இதை அமைப்புகளில் மாற்றலாம்.</translation>
 <translation id="8184538546369750125">முழுமையான இயல்புநிலையைப் பயன்படுத்து (அனுமதி)</translation>
diff --git a/components/strings/components_strings_te.xtb b/components/strings/components_strings_te.xtb
index c8dad9e4..d7a7f276 100644
--- a/components/strings/components_strings_te.xtb
+++ b/components/strings/components_strings_te.xtb
@@ -204,6 +204,7 @@
 <translation id="187918866476621466">ప్రారంభ పేజీలను తెరువు</translation>
 <translation id="1883255238294161206">జాబితాను కుదించు</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>
 <translation id="1914326953223720820">సేవను అన్‌జిప్ చేయండి</translation>
 <translation id="1915697529809968049">CVCకి బదులుగా Touch IDని ఉపయోగించాలా?</translation>
 <translation id="1916770123977586577">ఈ సైట్ విషయంలో మీరు అప్‌డేట్ చేసిన సెట్టింగ్‌లను వర్తింపజేయడానికి, ఈ పేజీని మళ్లీ లోడ్ చేయండి</translation>
@@ -445,6 +446,7 @@
 <translation id="3116158981186517402">లామినేట్</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />కనెక్టివిటీ సమస్య విశ్లేషణలను అమలు చేయడం ప్రయత్నించండి<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897"><ph name="DOMAIN" />కు వెళ్లు</translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{ఏమీ లేవు}=1{1 ఖాతా సైన్ ఇన్ డేటా}other{# ఖాతాల సైన్ ఇన్ డేటా}}</translation>
 <translation id="3145945101586104090">ప్రతిస్పందనను డీకోడ్ చేయడంలో విఫలమైంది</translation>
 <translation id="3150653042067488994">తాత్కాలిక సర్వర్ లోపం</translation>
@@ -463,7 +465,7 @@
 <translation id="320323717674993345">చెల్లింపును రద్దు చేయండి</translation>
 <translation id="3207960819495026254">బుక్‌మార్క్ చేయబడింది</translation>
 <translation id="3209034400446768650">పేజీ, నగదును ఛార్జ్ చేయవచ్చు</translation>
-<translation id="3209080785413271048">మీ సేవ్ చేసిన చెల్లింపు పద్ధతులను ధృవీకరించడానికి Windows Hello‌ను ఉపయోగించండి.</translation>
+<translation id="3209080785413271048">మీరు సేవ్ చేసిన చెల్లింపు పద్ధతులను ధృవీకరించడానికి Windows Hello‌ను ఉపయోగించండి.</translation>
 <translation id="3215092763954878852">WebAuthn ఉపయోగించడం సాధ్యం కాలేదు</translation>
 <translation id="3225919329040284222">అంతర్గత అంచనాలకు సరిపోలని ఒక ధృవీకరణ పత్రాన్ని సర్వర్ సమర్పించింది. మిమ్మల్ని సంరక్షించే దిశగా నిర్దిష్ట, ఉన్నత స్ధాయి భద్రతా వెబ్‌సైట్‌ల కోసం ఈ అంచనాలు చేర్చబడ్డాయి.</translation>
 <translation id="3226128629678568754">పేజీని లోడ్ చేయడానికి అవసరమైన డేటాను మళ్లీ సమర్పించడం కోసం 'మళ్లీ లోడ్ చేయి' బటన్ క్లిక్ చేయండి.</translation>
@@ -829,6 +831,7 @@
 <translation id="5043480802608081735">మీరు కాపీ చేసిన లింక్</translation>
 <translation id="5045550434625856497">సరికాని పాస్‌వర్డ్</translation>
 <translation id="5056549851600133418">మీ కోసం కథనాలు</translation>
+<translation id="5061227663725596739">మీరు <ph name="LOOKALIKE_DOMAIN" /> గురించి అడిగారా?</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>
@@ -882,6 +885,7 @@
 <translation id="5284909709419567258">నెట్‌వర్క్ చిరునామాలు</translation>
 <translation id="5285570108065881030">సేవ్ చేసిన అన్ని పాస్‌వర్డ్‌లను చూపు</translation>
 <translation id="5287240709317226393">కుక్కీలను చూపించు</translation>
+<translation id="5287456746628258573">ఈ సైట్ గడువు తీరిపోయిన భద్రతా కాన్ఫిగరేషన్‌ను ఉపయోగిస్తుంది, దీన్ని ఈ సైట్‌కు పంపినప్పుడు ఇది మీ సమాచారాన్ని (ఉదాహరణకు పాస్‌వర్డ్‌లు లేదా క్రెడిట్ కార్డ్ నంబర్‌లు) బహిర్గతం చేయవచ్చు.</translation>
 <translation id="5288108484102287882">విధాన విలువల క్రమబద్ధీకరణ హెచ్చరికలను జారీ చేసింది</translation>
 <translation id="5299298092464848405">విధానాన్ని అన్వయించడంలో ఎర్రర్</translation>
 <translation id="5300589172476337783">చూపించు</translation>
@@ -1009,6 +1013,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> తెరవబడుతోంది…</translation>
 <translation id="5947933617628957894">అవును, జోడించు</translation>
 <translation id="5951495562196540101">వినియోగదారు ఖాతాతో నమోదు చేయడం సాధ్యపడదు (ప్యాకేజ్డ్ లైసెన్స్ అందుబాటులో ఉంది).</translation>
+<translation id="5966900314707961320">అజ్ఞాత మోడ్ ఆన్ చేసినప్పుడు, వెబ్ అంతటా మిమ్మల్ని ట్రాక్ చేసే కుక్కీలను సైట్ ఉపయోగించలేదు.</translation>
 <translation id="5967592137238574583">సంప్రదింపు సమాచారాన్ని సవరించండి</translation>
 <translation id="5967867314010545767">చరిత్ర నుండి తీసివేయి</translation>
 <translation id="5975083100439434680">దూరంగా జూమ్ చెయ్యి</translation>
@@ -1091,6 +1096,7 @@
 <translation id="6383221683286411806">కొనసాగించడం వల్ల ఛార్జ్‌లు చెల్లించాల్సి రావచ్చు.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 ఇతర సూచన}other{# ఇతర సూచనలు}}</translation>
 <translation id="6387754724289022810">తర్వాతిసారి మరింత వేగంగా చెల్లించడానికి, మీ కార్డ్, బిల్లింగ్ చిరునామాను మీ Google ఖాతాకు, ఈ పరికరానికి సేవ్ చేయండి.</translation>
+<translation id="6389470377220713856">కార్డ్‌పై ఉన్న పేరు</translation>
 <translation id="6390200185239044127">'Z' ఆకారంలో సగం ఫోల్డ్</translation>
 <translation id="6390662030813198813">ఇంజనీరింగ్-E</translation>
 <translation id="6401136357288658127">ఈ విధానం విస్మరించబడింది. దానికి బదులుగా, మీరు <ph name="NEW_POLICY" /> విధానాన్ని ఉపయోగించాలి.</translation>
@@ -1269,7 +1275,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">అనుబంధితం:</translation>
 <translation id="7349430561505560861">A4-అదనం</translation>
-<translation id="7352902249897488700">ఈ సైట్‌ను విడిచిపెట్టు</translation>
 <translation id="7353601530677266744">ఆదేశ పంక్తి</translation>
 <translation id="7372973238305370288">శోధన ఫలితం</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1442,6 +1447,7 @@
 <translation id="8131740175452115882">నిర్ధారించు</translation>
 <translation id="8149426793427495338">మీ కంప్యూటర్ నిద్రావస్థకి వెళ్లింది.</translation>
 <translation id="8150722005171944719"><ph name="URL" />లో ఫైల్ చదవగలిగేది కాదు. దీన్ని తీసివేసి ఉండవచ్చు, తరలించి ఉండవచ్చు లేదా ఫైల్ అనుమతులు యాక్సెస్‌ను నిరోధిస్తుండవచ్చు.</translation>
+<translation id="8157295877370077682">సైట్ నుండి నిష్క్రమించండి</translation>
 <translation id="8163866351304776260">ఎడమవైపు నాలుగు రంధ్రాలు</translation>
 <translation id="8175796834047840627">మీరు సైన్ ఇన్ చేశారు కనుక మీ కార్డ్‌లను మీ Google ఖాతాలో సేవ్ చేసుకునే చక్కని అవకాశాన్ని Chrome మీకు అందిస్తోంది. అలాగే మీరు ఈ చర్యను సెట్టింగ్‌లలోకి వెళ్లి మార్చుకోవచ్చు.</translation>
 <translation id="8184538546369750125">సార్వజనీన డిఫాల్ట్‌ను ఉపయోగించు (అనుమతించు)</translation>
diff --git a/components/strings/components_strings_th.xtb b/components/strings/components_strings_th.xtb
index 869b1d2..174823f 100644
--- a/components/strings/components_strings_th.xtb
+++ b/components/strings/components_strings_th.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">เปิดหน้าเริ่มต้นใช้งาน</translation>
 <translation id="1883255238294161206">ยุบรายการ</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>
 <translation id="1914326953223720820">บริการแตกไฟล์</translation>
 <translation id="1915697529809968049">ใช้ Touch ID แทน CVC ไหม</translation>
 <translation id="1916770123977586577">โหลดหน้านี้ซ้ำเพื่อใช้การตั้งค่าที่อัปเดตกับไซต์นี้</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">แยกออกเป็นชั้นๆ</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />ลองเรียกใช้การวินิจฉัยการเชื่อมต่อ<ph name="END_LINK" /></translation>
+<translation id="3121994479408824897">ไปที่ <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{ไม่มี}=1{ข้อมูลการลงชื่อเข้าใช้ของบัญชี 1 บัญชี}other{ข้อมูลการลงชื่อเข้าใช้ของบัญชี # บัญชี}}</translation>
 <translation id="3145945101586104090">การถอดรหัสการตอบกลับล้มเหลว</translation>
 <translation id="3150653042067488994">ข้อผิดพลาดชั่วคราวของเซิร์ฟเวอร์</translation>
@@ -812,6 +814,7 @@
 <translation id="5043480802608081735">ลิงก์ที่คุณคัดลอก</translation>
 <translation id="5045550434625856497">รหัสผ่านไม่ถูกต้อง</translation>
 <translation id="5056549851600133418">บทความสำหรับคุณ</translation>
+<translation id="5061227663725596739">หรือคุณหมายถึง <ph name="LOOKALIKE_DOMAIN" /></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>
@@ -865,6 +868,7 @@
 <translation id="5284909709419567258">ที่อยู่เครือข่าย</translation>
 <translation id="5285570108065881030">แสดงรหัสผ่านที่บันทึกไว้ทั้งหมด</translation>
 <translation id="5287240709317226393">แสดงคุกกี้</translation>
+<translation id="5287456746628258573">เว็บไซต์นี้ใช้การกำหนดค่าความปลอดภัยที่ล้าสมัย ซึ่งอาจทำให้ข้อมูลของคุณรั่วไหลเมื่อส่งไปยังเว็บไซต์นี้ (เช่น รหัสผ่านหรือหมายเลขบัตรเครดิต)</translation>
 <translation id="5288108484102287882">มีคำเตือนจากการตรวจสอบความถูกต้องของค่านโยบาย</translation>
 <translation id="5299298092464848405">ข้อผิดพลาดในการแยกวิเคราะห์นโยบาย</translation>
 <translation id="5300589172476337783">แสดง</translation>
@@ -992,6 +996,7 @@
 <translation id="5946937721014915347">กำลังเปิด <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">เพิ่มเลย</translation>
 <translation id="5951495562196540101">ลงทะเบียนด้วยบัญชีผู้ใช้ทั่วไปไม่ได้ (มีใบอนุญาตแบบแพ็กเกจ)</translation>
+<translation id="5966900314707961320">เมื่อเปิดใช้ เว็บไซต์ต่างๆ จะใช้คุกกี้ที่ติดตามคุณในอินเทอร์เน็ตไม่ได้</translation>
 <translation id="5967592137238574583">แก้ไขข้อมูลติดต่อ</translation>
 <translation id="5967867314010545767">ลบจากประวัติการเข้าชม</translation>
 <translation id="5975083100439434680">ย่อ</translation>
@@ -1074,6 +1079,7 @@
 <translation id="6383221683286411806">อาจมีการเรียกเก็บเงิน</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{อีก 1 คำแนะนำ}other{อีก # คำแนะนำ}}</translation>
 <translation id="6387754724289022810">เพื่อความสะดวกในการชำระเงินในครั้งถัดไป โปรดบันทึกบัตรและที่อยู่สำหรับการเรียกเก็บเงินไว้ในบัญชี Google สำหรับอุปกรณฺ์นี้</translation>
+<translation id="6389470377220713856">ชื่อบนบัตร</translation>
 <translation id="6390200185239044127">พับครึ่งแบบตัว Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">นโยบายนี้เลิกใช้งานไปแล้ว คุณควรใช้นโยบาย <ph name="NEW_POLICY" /> แทน</translation>
@@ -1252,7 +1258,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">เป็นพาร์ทเนอร์:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">ออกจากเว็บไซต์นี้</translation>
 <translation id="7353601530677266744">บรรทัดคำสั่ง </translation>
 <translation id="7372973238305370288">ผลการค้นหา</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1425,6 +1430,7 @@
 <translation id="8131740175452115882">ยืนยัน</translation>
 <translation id="8149426793427495338">คอมพิวเตอร์ของคุณเข้าสู่โหมดสลีปแล้ว</translation>
 <translation id="8150722005171944719">ไฟล์ที่ <ph name="URL" /> ไม่สามารถอ่านได้ เนื่องจากอาจถูกลบ ย้ายไปแล้ว หรือการอนุญาตของไฟล์อาจป้องกันการเข้าถึง</translation>
+<translation id="8157295877370077682">ออกจากเว็บไซต์</translation>
 <translation id="8163866351304776260">เจาะรูด้านซ้าย 4 รู</translation>
 <translation id="8175796834047840627">Chrome เสนอที่จะบันทึกบัตรลงในบัญชี Google ของคุณเพราะคุณลงชื่อเข้าใช้อยู่ คุณปรับเปลี่ยนลักษณะการทำงานนี้ได้ในการตั้งค่า</translation>
 <translation id="8184538546369750125">ใช้ค่าเริ่มต้นสากล (อนุญาต)</translation>
diff --git a/components/strings/components_strings_tr.xtb b/components/strings/components_strings_tr.xtb
index 8142f5e..00ef677 100644
--- a/components/strings/components_strings_tr.xtb
+++ b/components/strings/components_strings_tr.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Başlangıç sayfalarını aç</translation>
 <translation id="1883255238294161206">Listeyi daralt</translation>
 <translation id="1898423065542865115">Filtreleme</translation>
+<translation id="1901443836186977402">{1,plural, =1{Bu sunucu <ph name="DOMAIN" /> olduğunu kanıtlayamadı. Güvenlik sertifikasının süresi son bir gün içinde sona ermiş. Bu durum, yanlış yapılandırmadan veya bağlantınıza müdahale eden bir saldırgandan kaynaklanıyor olabilir. Bilgisayarınızın saati şu anda <ph name="CURRENT_DATE" /> olarak ayarlanmış. Doğru görünüyor mu? Görünmüyorsa sisteminizin saatini düzeltip ardından bu sayfayı yenilemelisiniz.}other{Bu sunucu <ph name="DOMAIN" /> olduğunu kanıtlayamadı. Güvenlik sertifikasının süresi # gün önce sona ermiş. Bu durum, yanlış yapılandırmadan veya bağlantınıza müdahale eden bir saldırgandan kaynaklanıyor olabilir. Bilgisayarınızın saati şu anda <ph name="CURRENT_DATE" /> olarak ayarlanmış. Doğru görünüyor mu? Görünmüyorsa sisteminizin saatini düzeltmeli ve sonra bu sayfayı yenilemelisiniz.}}</translation>
 <translation id="1914326953223720820">Sıkıştırma Açma Hizmeti</translation>
 <translation id="1915697529809968049">CVC yerine Touch ID kullanılsın mı?</translation>
 <translation id="1916770123977586577">Güncellenen ayarlarınızı bu siteye uygulamak için sayfayı yeniden yükleyin</translation>
@@ -441,6 +442,7 @@
 <translation id="3116158981186517402">Lamine</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Bağlantı Teşhislerini çalıştırmayı deneyin<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Şuraya git: <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Yok}=1{1 hesaba ait oturum açma verileri}other{# hesaba ait oturum açma verileri}}</translation>
 <translation id="3145945101586104090">Yanıtın kodu çözülemedi</translation>
 <translation id="3150653042067488994">Geçici sunucu hatası</translation>
@@ -824,6 +826,7 @@
 <translation id="5043480802608081735">Kopyalanan Bağlantı</translation>
 <translation id="5045550434625856497">Hatalı parola</translation>
 <translation id="5056549851600133418">Size uygun makaleler</translation>
+<translation id="5061227663725596739">Şunu mu demek istediniz: <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 çerez kullanımda)}other{(# çerez kullanımda)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />Proxy adresini kontrol etme<ph name="END_LINK" /></translation>
@@ -877,6 +880,7 @@
 <translation id="5284909709419567258">Ağ adresleri</translation>
 <translation id="5285570108065881030">Tüm kayıtlı şifreleri göster</translation>
 <translation id="5287240709317226393">Çerezleri göster</translation>
+<translation id="5287456746628258573">Bu site, eski bir güvenlik yapılandırması kullanıyor. Bu siteye gönderildiğinde bilgileriniz (ör. şifreler veya kredi kartı numaraları) gösterilebilir.</translation>
 <translation id="5288108484102287882">Politika değerlerini doğrulama işlemi uyarılarla sonuçlandı</translation>
 <translation id="5299298092464848405">Politika ayrıştırma hatası</translation>
 <translation id="5300589172476337783">Göster</translation>
@@ -1005,6 +1009,7 @@
 <translation id="5946937721014915347"><ph name="SITE_NAME" /> açılıyor…</translation>
 <translation id="5947933617628957894">Evet, ekle</translation>
 <translation id="5951495562196540101">Tüketici hesabına kaydedilemiyor (paket lisans mevcut).</translation>
+<translation id="5966900314707961320">Etkinleştirildiğinde, siteler sizi web'de takip eden çerezler kullanamaz</translation>
 <translation id="5967592137238574583">İletişim Bilgilerini Düzenleyin</translation>
 <translation id="5967867314010545767">Geçmişten kaldır.</translation>
 <translation id="5975083100439434680">Uzaklaştır</translation>
@@ -1087,6 +1092,7 @@
 <translation id="6383221683286411806">Devam etmeniz halinde ödeme yapmanız gerekebilir.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 öneri daha}other{# öneri daha}}</translation>
 <translation id="6387754724289022810">Gelecek sefer daha hızlı ödeme yapabilmek için kartınızı ve fatura adresinizi Google hesabınıza kaydedin.</translation>
+<translation id="6389470377220713856">Karttaki Ad</translation>
 <translation id="6390200185239044127">Yarım Z katlama</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Bu politika kullanımdan kaldırılmıştır. Onun yerine <ph name="NEW_POLICY" /> politikasını kullanmalısınız.</translation>
@@ -1265,7 +1271,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">İlişkili olma durumu:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Bu siteden ayrıl</translation>
 <translation id="7353601530677266744">Komut Satırı</translation>
 <translation id="7372973238305370288">arama sonucu</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1438,6 +1443,7 @@
 <translation id="8131740175452115882">Onayla</translation>
 <translation id="8149426793427495338">Bilgisayarınız uyku moduna geçti.</translation>
 <translation id="8150722005171944719"><ph name="URL" /> konumundaki dosya okunamıyor. Kaldırılmış ya da taşınmış olabilir veya dosya izinleri erişimi önlüyordur.</translation>
+<translation id="8157295877370077682">Siteden çık</translation>
 <translation id="8163866351304776260">Solda dörtlü delik</translation>
 <translation id="8175796834047840627">Chrome, oturumunuz açık olduğu için kartlarınızı Google Hesabınıza kaydetmeyi öneriyor. Bu davranışı ayarlardan değiştirebilirsiniz.</translation>
 <translation id="8184538546369750125">Genel varsayılanı kullan (İzin ver)</translation>
diff --git a/components/strings/components_strings_uk.xtb b/components/strings/components_strings_uk.xtb
index 42551c4..6a9bad35 100644
--- a/components/strings/components_strings_uk.xtb
+++ b/components/strings/components_strings_uk.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">Відкрити стартові сторінки</translation>
 <translation id="1883255238294161206">Згорнути список</translation>
 <translation id="1898423065542865115">Фільтрування</translation>
+<translation id="1901443836186977402">{1,plural, =1{Серверу не вдалося підтвердити, що це <ph name="DOMAIN" />; термін дії його сертифіката безпеки закінчився попереднього дня. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваше з'єднання. На годиннику вашого комп'ютера зараз <ph name="CURRENT_DATE" />. Усе правильно? Якщо ні, налаштуйте системний годинник і оновіть цю сторінку.}one{Серверу не вдалося підтвердити, що це <ph name="DOMAIN" />; термін дії його сертифіката безпеки закінчився # день тому. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваше з'єднання. На годиннику вашого комп'ютера зараз <ph name="CURRENT_DATE" />. Усе правильно? Якщо ні, налаштуйте системний годинник і оновіть цю сторінку.}few{Серверу не вдалося підтвердити, що це <ph name="DOMAIN" />; термін дії його сертифіката безпеки закінчився # дні тому. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваше з'єднання. На годиннику вашого комп'ютера зараз <ph name="CURRENT_DATE" />. Усе правильно? Якщо ні, налаштуйте системний годинник і оновіть цю сторінку.}many{Серверу не вдалося підтвердити, що це <ph name="DOMAIN" />; термін дії його сертифіката безпеки закінчився # днів тому. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваше з'єднання. На годиннику вашого комп'ютера зараз <ph name="CURRENT_DATE" />. Усе правильно? Якщо ні, налаштуйте системний годинник і оновіть цю сторінку.}other{Серверу не вдалося підтвердити, що це <ph name="DOMAIN" />; термін дії його сертифіката безпеки закінчився # дня тому. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваше з'єднання. На годиннику вашого комп'ютера зараз <ph name="CURRENT_DATE" />. Усе правильно? Якщо ні, налаштуйте системний годинник і оновіть цю сторінку.}}</translation>
 <translation id="1914326953223720820">Сервіс розпакування</translation>
 <translation id="1915697529809968049">Використовувати Touch ID замість коду CVC?</translation>
 <translation id="1916770123977586577">Щоб застосувати оновлені налаштування на цьому сайті, оновіть сторінку</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">Заламінувати</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />Проведіть діагностику з’єднання<ph name="END_LINK" />.</translation>
+<translation id="3121994479408824897">Перейти на сторінку <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{Немає}=1{дані для входу в 1 обліковий запис}one{дані для входу в # обліковий запис}few{дані для входу в # облікові записи}many{дані для входу в # облікових записів}other{дані для входу в # облікового запису}}</translation>
 <translation id="3145945101586104090">Помилка декодування відповіді</translation>
 <translation id="3150653042067488994">Тимчасова помилка сервера</translation>
@@ -813,6 +815,7 @@
 <translation id="5043480802608081735">Скопійоване посилання</translation>
 <translation id="5045550434625856497">Неправильний пароль</translation>
 <translation id="5056549851600133418">Статті для вас</translation>
+<translation id="5061227663725596739">Можливо, ви мали на увазі <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(використовується 1 файл cookie)}one{(використовується # файл cookie)}few{(використовуються # файли cookie)}many{(використовуються # файлів cookie)}other{(використовуються # файлу cookie)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />перевірити адресу проксі-сервера<ph name="END_LINK" /></translation>
@@ -866,6 +869,7 @@
 <translation id="5284909709419567258">Адреси мережі</translation>
 <translation id="5285570108065881030">Показати всі збережені паролі</translation>
 <translation id="5287240709317226393">Показати cookie-файли</translation>
+<translation id="5287456746628258573">На цьому сайті використовується недійсна конфігурація безпеки. Через це ваші дані (наприклад, паролі або номери кредитних карток) може бути розкрито, коли вони надсилається на цей сайт.</translation>
 <translation id="5288108484102287882">Під час перевірки значень правила виявлено застереження</translation>
 <translation id="5299298092464848405">Помилка аналізу правила</translation>
 <translation id="5300589172476337783">Показати</translation>
@@ -993,6 +997,7 @@
 <translation id="5946937721014915347">Відкривається <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">Так, додати</translation>
 <translation id="5951495562196540101">Не вдається зареєструватися за допомогою особистого облікового запису користувача (ліцензію отримано в комплекті з пристроєм).</translation>
+<translation id="5966900314707961320">Якщо цей параметр увімкнено, сайти не можуть використовувати файли cookie, через які відстежуються ваші дії в Інтернеті</translation>
 <translation id="5967592137238574583">Змініть контактну інформацію</translation>
 <translation id="5967867314010545767">Видалити з історії</translation>
 <translation id="5975083100439434680">Зменшити масштаб</translation>
@@ -1075,6 +1080,7 @@
 <translation id="6383221683286411806">Можливе стягнення плати.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{і ще 1 пропозиція}one{і ще # пропозиція}few{і ще # пропозиції}many{і ще # пропозицій}other{і ще # пропозиції}}</translation>
 <translation id="6387754724289022810">Щоб наступного разу платити швидше, збережіть дані картки та платіжну адресу в обліковому записі Google і на цьому пристрої.</translation>
+<translation id="6389470377220713856">Ім’я на картці</translation>
 <translation id="6390200185239044127">Зігнути гармошкою посередині</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Це правило не підтримується. Натомість потрібно застосувати правило <ph name="NEW_POLICY" />.</translation>
@@ -1253,7 +1259,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Зв'язано:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Залишити цей сайт</translation>
 <translation id="7353601530677266744">Командний рядок</translation>
 <translation id="7372973238305370288">результат пошуку</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1286,7 +1291,7 @@
 <translation id="7460618730930299168">Дані відрізняються від вибраних. Продовжити?</translation>
 <translation id="7473891865547856676">Ні, дякую</translation>
 <translation id="7481312909269577407">Переслати</translation>
-<translation id="748406663033922918">Використовувати блокування екрана, щоб підтверджувати збережені способи оплати.</translation>
+<translation id="748406663033922918">Використовувати метод розблокування екрана, щоб підтверджувати збережені способи оплати.</translation>
 <translation id="7485870689360869515">Даних не знайдено.</translation>
 <translation id="7498234416455752244">Продовжити редагування</translation>
 <translation id="7508255263130623398">Отриманий ідентифікатор правил пристрою порожній або не збігається з поточним ідентифікатором пристрою</translation>
@@ -1426,6 +1431,7 @@
 <translation id="8131740175452115882">Підтвердити</translation>
 <translation id="8149426793427495338">Ваш комп’ютер перейшов у режим сну.</translation>
 <translation id="8150722005171944719">Файл за адресою <ph name="URL" /> не читається. Можливо, його видалено, переміщено або доступ заборонено дозволами файлу.</translation>
+<translation id="8157295877370077682">Залишити сайт</translation>
 <translation id="8163866351304776260">Пробити чотири отвори ліворуч</translation>
 <translation id="8175796834047840627">Chrome пропонує вам зберегти картки в обліковому записі Google, оскільки ви ввійшли в нього. Це можна змінити в налаштуваннях.</translation>
 <translation id="8184538546369750125">Використовувати глобальне налаштування за умовчанням (Дозволяти)</translation>
diff --git a/components/strings/components_strings_vi.xtb b/components/strings/components_strings_vi.xtb
index 895939a..34e1575 100644
--- a/components/strings/components_strings_vi.xtb
+++ b/components/strings/components_strings_vi.xtb
@@ -1092,6 +1092,7 @@
 <translation id="6383221683286411806">Nếu tiếp tục, bạn có thể bị tính phí.</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 đề xuất khác}other{# đề xuất khác}}</translation>
 <translation id="6387754724289022810">Để thanh toán nhanh hơn vào lần tiếp theo, hãy lưu địa chỉ thanh toán và thẻ vào Tài khoản Google của bạn và thiết bị này.</translation>
+<translation id="6389470377220713856">Tên trên thẻ</translation>
 <translation id="6390200185239044127">Gấp đôi kiểu chữ Z</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">Chính sách này không còn dùng nữa. Thay vào đó, bạn nên sử dụng chính sách <ph name="NEW_POLICY" />.</translation>
@@ -1270,7 +1271,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">Được liên kết:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">Rời khỏi trang web này</translation>
 <translation id="7353601530677266744">Dòng Lệnh</translation>
 <translation id="7372973238305370288">kết quả tìm kiếm</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
diff --git a/components/strings/components_strings_zh-CN.xtb b/components/strings/components_strings_zh-CN.xtb
index 85e8e90..19bfb09 100644
--- a/components/strings/components_strings_zh-CN.xtb
+++ b/components/strings/components_strings_zh-CN.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">打开启动页</translation>
 <translation id="1883255238294161206">收起列表</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>
 <translation id="1914326953223720820">解压缩服务</translation>
 <translation id="1915697529809968049">要改用 Touch ID 来取代银行卡验证码 (CVC) 吗?</translation>
 <translation id="1916770123977586577">要将您更新后的设置应用到此网站,请重新加载此页面</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">粘合</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />尝试运行网络连接诊断<ph name="END_LINK" />。</translation>
+<translation id="3121994479408824897">前往 <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{无}=1{1 个帐号的登录数据}other{# 个帐号的登录数据}}</translation>
 <translation id="3145945101586104090">无法对响应解码</translation>
 <translation id="3150653042067488994">服务器临时错误</translation>
@@ -809,6 +811,7 @@
 <translation id="5043480802608081735">您复制的链接</translation>
 <translation id="5045550434625856497">密码不正确</translation>
 <translation id="5056549851600133418">为您推荐的文章</translation>
+<translation id="5061227663725596739">您是不是要前往 <ph name="LOOKALIKE_DOMAIN" />?</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>
@@ -862,6 +865,7 @@
 <translation id="5284909709419567258">网络地址</translation>
 <translation id="5285570108065881030">显示所有已保存的密码</translation>
 <translation id="5287240709317226393">显示 Cookie</translation>
+<translation id="5287456746628258573">此网站使用的安全性配置已过期,这可能会导致您的信息(例如密码或信用卡卡号)在发送至此网站时出现泄露。</translation>
 <translation id="5288108484102287882">政策值验证引发了警告</translation>
 <translation id="5299298092464848405">解析策略时出错</translation>
 <translation id="5300589172476337783">显示</translation>
@@ -989,6 +993,7 @@
 <translation id="5946937721014915347">正在打开 <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">添加</translation>
 <translation id="5951495562196540101">无法通过消费者帐号注册(有封装的许可)。</translation>
+<translation id="5966900314707961320">此项处于开启状态时,网站无法使用 Cookie 来跟踪您在网上的活动</translation>
 <translation id="5967592137238574583">修改联系信息</translation>
 <translation id="5967867314010545767">从历史记录中移除</translation>
 <translation id="5975083100439434680">缩小</translation>
@@ -1070,6 +1075,7 @@
 <translation id="6383221683286411806">可能产生费用。</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{1 条其他建议}other{# 条其他建议}}</translation>
 <translation id="6387754724289022810">只要将您的付款卡信息和帐单邮寄地址保存到您的 Google 帐号和此设备,下次即可更便捷地完成付款。</translation>
+<translation id="6389470377220713856">持卡人姓名</translation>
 <translation id="6390200185239044127">Z 型对折</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">此政策已被弃用。您应改用 <ph name="NEW_POLICY" /> 政策。</translation>
@@ -1248,7 +1254,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">有无关联:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">离开此网站</translation>
 <translation id="7353601530677266744">命令行</translation>
 <translation id="7372973238305370288">搜索结果</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1421,6 +1426,7 @@
 <translation id="8131740175452115882">确认</translation>
 <translation id="8149426793427495338">您的计算机已进入休眠模式。</translation>
 <translation id="8150722005171944719">无法读取 <ph name="URL" /> 上的文件。该文件可能已遭到删除、移动,或者文件权限不允许进行访问。</translation>
+<translation id="8157295877370077682">离开网站</translation>
 <translation id="8163866351304776260">四孔(左侧)</translation>
 <translation id="8175796834047840627">Chrome 会主动询问是否要将您的卡保存到您的 Google 帐号中,因为您已登录。您可在“设置”中更改此行为。</translation>
 <translation id="8184538546369750125">使用全局默认设置(允许)</translation>
diff --git a/components/strings/components_strings_zh-TW.xtb b/components/strings/components_strings_zh-TW.xtb
index 3d52514..d639c46 100644
--- a/components/strings/components_strings_zh-TW.xtb
+++ b/components/strings/components_strings_zh-TW.xtb
@@ -202,6 +202,7 @@
 <translation id="187918866476621466">開啟起始網頁</translation>
 <translation id="1883255238294161206">收合清單</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>
 <translation id="1914326953223720820">解壓縮服務</translation>
 <translation id="1915697529809968049">要使用 Touch ID 取代信用卡安全碼嗎?</translation>
 <translation id="1916770123977586577">如要將你更新過的設定套用到這個網站,請重新載入這個網頁</translation>
@@ -435,6 +436,7 @@
 <translation id="3116158981186517402">裱貼</translation>
 <translation id="3120730422813725195">Elo</translation>
 <translation id="31207688938192855"><ph name="BEGIN_LINK" />嘗試執行連線診斷<ph name="END_LINK" />。</translation>
+<translation id="3121994479408824897">前往 <ph name="DOMAIN" /></translation>
 <translation id="3137507986424712703">{COUNT,plural, =0{無}=1{1 個帳戶的登入資料}other{# 個帳戶的登入資料}}</translation>
 <translation id="3145945101586104090">無法將回應解碼</translation>
 <translation id="3150653042067488994">伺服器暫時發生錯誤</translation>
@@ -813,6 +815,7 @@
 <translation id="5043480802608081735">你複製的連結</translation>
 <translation id="5045550434625856497">密碼不正確</translation>
 <translation id="5056549851600133418">推薦給你的文章</translation>
+<translation id="5061227663725596739">你是不是要前往 <ph name="LOOKALIKE_DOMAIN" />?</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(目前使用 1 個 Cookie)}other{(目前使用 # 個 Cookie)}}</translation>
 <translation id="5070335125961472645"><ph name="BEGIN_LINK" />檢查 Proxy 位址<ph name="END_LINK" /></translation>
@@ -866,6 +869,7 @@
 <translation id="5284909709419567258">網路位址</translation>
 <translation id="5285570108065881030">顯示所有已儲存的密碼</translation>
 <translation id="5287240709317226393">顯示 Cookie</translation>
+<translation id="5287456746628258573">這個網站的安全性設定過舊,因此你傳送給這個網站的的資訊 (例如密碼或信用卡號碼) 可能會外洩。</translation>
 <translation id="5288108484102287882">政策值驗證作業出現警告訊息</translation>
 <translation id="5299298092464848405">解析政策時發生錯誤</translation>
 <translation id="5300589172476337783">顯示</translation>
@@ -993,6 +997,7 @@
 <translation id="5946937721014915347">正在開啟 <ph name="SITE_NAME" />…</translation>
 <translation id="5947933617628957894">是,我要新增</translation>
 <translation id="5951495562196540101">無法透過個人帳戶註冊 (有封裝授權)。</translation>
+<translation id="5966900314707961320">開啟這項功能時,網站不能使用 Cookie 來追蹤你在網路上的活動</translation>
 <translation id="5967592137238574583">編輯聯絡資訊</translation>
 <translation id="5967867314010545767">從記錄中移除</translation>
 <translation id="5975083100439434680">縮小</translation>
@@ -1075,6 +1080,7 @@
 <translation id="6383221683286411806">你要造訪的網站可能會誘導使用者支付額外額外費用。</translation>
 <translation id="6386120369904791316">{COUNT,plural, =1{以及另外 1 個建議項目}other{以及另外 # 個建議項目}}</translation>
 <translation id="6387754724289022810">只要將卡片資訊與帳單地址儲存到你的 Google 帳戶中和這部裝置上,下次即可更快完成付款程序。</translation>
+<translation id="6389470377220713856">持卡人姓名</translation>
 <translation id="6390200185239044127">對折後的彈簧二摺</translation>
 <translation id="6390662030813198813">Engineering-E</translation>
 <translation id="6401136357288658127">這項政策目前已淘汰,請改用 <ph name="NEW_POLICY" /> 政策。</translation>
@@ -1253,7 +1259,6 @@
 <translation id="734600844861828519">11x15</translation>
 <translation id="7346048084945669753">是否已建立關聯:</translation>
 <translation id="7349430561505560861">A4-Extra</translation>
-<translation id="7352902249897488700">離開這個網站</translation>
 <translation id="7353601530677266744">命令列</translation>
 <translation id="7372973238305370288">搜尋結果</translation>
 <translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> - <ph name="FULL_DATE" /></translation>
@@ -1426,6 +1431,7 @@
 <translation id="8131740175452115882">確認</translation>
 <translation id="8149426793427495338">您的電腦已進入睡眠模式。</translation>
 <translation id="8150722005171944719">無法讀取位於 <ph name="URL" /> 的檔案。這個檔案可能已遭移除或移動位置,或者檔案權限為禁止存取。</translation>
+<translation id="8157295877370077682">離開網站</translation>
 <translation id="8163866351304776260">四孔 (左側)</translation>
 <translation id="8175796834047840627">你已登入帳戶,因此 Chrome 詢問你是否要將卡片儲存至你的 Google 帳戶。你可以在設定中變更這項行為。</translation>
 <translation id="8184538546369750125">使用全域預設值 (允許)</translation>
diff --git a/components/viz/common/gpu/vulkan_in_process_context_provider.cc b/components/viz/common/gpu/vulkan_in_process_context_provider.cc
index 8ea62aa..fa2b8ae 100644
--- a/components/viz/common/gpu/vulkan_in_process_context_provider.cc
+++ b/components/viz/common/gpu/vulkan_in_process_context_provider.cc
@@ -45,18 +45,24 @@
 
 bool VulkanInProcessContextProvider::Initialize() {
   DCHECK(!device_queue_);
-  const gfx::ExtensionSet& extensions =
-      vulkan_implementation_->GetVulkanInstance()->enabled_extensions();
-  bool support_surface =
-      gfx::HasExtension(extensions, VK_KHR_SURFACE_EXTENSION_NAME);
+
+  const auto& instance_extensions = vulkan_implementation_->GetVulkanInstance()
+                                        ->vulkan_info()
+                                        .enabled_instance_extensions;
+
   uint32_t flags = gpu::VulkanDeviceQueue::GRAPHICS_QUEUE_FLAG;
-  if (support_surface)
-    flags |= gpu::VulkanDeviceQueue::PRESENTATION_SUPPORT_QUEUE_FLAG;
-  std::unique_ptr<gpu::VulkanDeviceQueue> device_queue =
-      gpu::CreateVulkanDeviceQueue(vulkan_implementation_, flags);
-  if (!device_queue)
+  constexpr base::StringPiece surface_extension_name(
+      VK_KHR_SURFACE_EXTENSION_NAME);
+  for (const auto* extension : instance_extensions) {
+    if (surface_extension_name == extension) {
+      flags |= gpu::VulkanDeviceQueue::PRESENTATION_SUPPORT_QUEUE_FLAG;
+      break;
+    }
+  }
+
+  device_queue_ = gpu::CreateVulkanDeviceQueue(vulkan_implementation_, flags);
+  if (!device_queue_)
     return false;
-  device_queue_ = std::move(device_queue);
 
   GrVkBackendContext backend_context;
   backend_context.fInstance = device_queue_->GetVulkanInstance();
@@ -64,8 +70,9 @@
   backend_context.fDevice = device_queue_->GetVulkanDevice();
   backend_context.fQueue = device_queue_->GetVulkanQueue();
   backend_context.fGraphicsQueueIndex = device_queue_->GetVulkanQueueIndex();
-  backend_context.fMaxAPIVersion =
-      vulkan_implementation_->GetVulkanInstance()->api_version();
+  backend_context.fMaxAPIVersion = vulkan_implementation_->GetVulkanInstance()
+                                       ->vulkan_info()
+                                       .used_api_version;
 
   gpu::VulkanFunctionPointers* vulkan_function_pointers =
       gpu::GetVulkanFunctionPointers();
@@ -73,11 +80,7 @@
       make_unified_getter(vulkan_function_pointers->vkGetInstanceProcAddrFn,
                           vulkan_function_pointers->vkGetDeviceProcAddrFn);
 
-  std::vector<const char*> instance_extensions;
   std::vector<const char*> device_extensions;
-  instance_extensions.reserve(extensions.size());
-  for (const auto& extension : extensions)
-    instance_extensions.push_back(extension.data());
   device_extensions.reserve(device_queue_->enabled_extensions().size());
   for (const auto& extension : device_queue_->enabled_extensions())
     device_extensions.push_back(extension.data());
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
index da0cafc8..f725b94 100644
--- a/content/app/content_main_runner_impl.cc
+++ b/content/app/content_main_runner_impl.cc
@@ -764,15 +764,41 @@
     RegisterContentSchemes(delegate_->ShouldLockSchemeRegistry());
 
 #if defined(OS_ANDROID) && (ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE)
-    int icudata_fd = g_fds->MaybeGet(kAndroidICUDataDescriptor);
-    if (icudata_fd != -1) {
-      auto icudata_region = g_fds->GetRegion(kAndroidICUDataDescriptor);
-      if (!base::i18n::InitializeICUWithFileDescriptor(icudata_fd,
-                                                       icudata_region))
+    // On Android, we have two ICU data files. A main one with most languages
+    // that is expected to always be available and an extra one that is
+    // installed separately via a dynamic feature module. If the extra ICU data
+    // file is available we have to apply it _before_ the main ICU data file.
+    // Otherwise, the languages of the extra ICU file will be overridden.
+    if (process_type.empty()) {
+      // In browser process load ICU data files from disk.
+      if (GetContentClient()->browser()->ShouldLoadExtraIcuDataFile()) {
+        if (!base::i18n::InitializeExtraICU()) {
+          return TerminateForFatalInitializationError();
+        }
+      }
+      if (!base::i18n::InitializeICU()) {
         return TerminateForFatalInitializationError();
+      }
     } else {
-      if (!base::i18n::InitializeICU())
+      // In child process map ICU data files loaded by browser process.
+      int icu_extra_data_fd = g_fds->MaybeGet(kAndroidICUExtraDataDescriptor);
+      if (icu_extra_data_fd != -1) {
+        auto icu_extra_data_region =
+            g_fds->GetRegion(kAndroidICUExtraDataDescriptor);
+        if (!base::i18n::InitializeExtraICUWithFileDescriptor(
+                icu_extra_data_fd, icu_extra_data_region)) {
+          return TerminateForFatalInitializationError();
+        }
+      }
+      int icu_data_fd = g_fds->MaybeGet(kAndroidICUDataDescriptor);
+      if (icu_data_fd == -1) {
         return TerminateForFatalInitializationError();
+      }
+      auto icu_data_region = g_fds->GetRegion(kAndroidICUDataDescriptor);
+      if (!base::i18n::InitializeICUWithFileDescriptor(icu_data_fd,
+                                                       icu_data_region)) {
+        return TerminateForFatalInitializationError();
+      }
     }
 #else
     if (!base::i18n::InitializeICU())
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index 717b4bf9..59c54ea1 100644
--- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn
@@ -625,6 +625,7 @@
     "cache_storage/legacy/legacy_cache_storage_manager.cc",
     "cache_storage/legacy/legacy_cache_storage_manager.h",
     "cache_storage/scoped_writable_entry.h",
+    "can_commit_status.h",
     "child_process_launcher.cc",
     "child_process_launcher.h",
     "child_process_launcher_helper.cc",
@@ -2441,12 +2442,6 @@
       "ENABLE_SCREEN_CAPTURE=1",
     ]
     libs += [ "jnigraphics" ]
-
-    if (notouch_build) {
-      # Similar to the bug below, there should be an API to let the embedder
-      # control this.
-      defines += [ "DISABLE_OVERSCROLL" ]
-    }
   } else {
     # Not Android.
     sources += [
diff --git a/content/browser/accessibility/dump_accessibility_events_browsertest.cc b/content/browser/accessibility/dump_accessibility_events_browsertest.cc
index 256c77a..b13efa60 100644
--- a/content/browser/accessibility/dump_accessibility_events_browsertest.cc
+++ b/content/browser/accessibility/dump_accessibility_events_browsertest.cc
@@ -256,6 +256,11 @@
 }
 
 IN_PROC_BROWSER_TEST_P(DumpAccessibilityEventsTest,
+                       AccessibilityEventsAriaComboBoxSelect) {
+  RunEventTest(FILE_PATH_LITERAL("aria-combo-box-select.html"));
+}
+
+IN_PROC_BROWSER_TEST_P(DumpAccessibilityEventsTest,
                        AccessibilityEventsAriaControlsChanged) {
   RunEventTest(FILE_PATH_LITERAL("aria-controls-changed.html"));
 }
diff --git a/content/browser/bad_message.h b/content/browser/bad_message.h
index 02cce2d..e89257a 100644
--- a/content/browser/bad_message.h
+++ b/content/browser/bad_message.h
@@ -245,6 +245,7 @@
   AUTH_INVALID_ICON_URL = 217,
   MDDH_INVALID_STREAM_SELECTION_INFO = 218,
   REGISTER_PROTOCOL_HANDLER_INVALID_URL = 219,
+  NC_SAME_DOCUMENT_POST_COMMIT_ERROR = 220,
 
   // Please add new elements here. The naming convention is abbreviated class
   // name (e.g. RenderFrameHost becomes RFH) plus a unique description of the
diff --git a/content/browser/can_commit_status.h b/content/browser/can_commit_status.h
new file mode 100644
index 0000000..1e53349
--- /dev/null
+++ b/content/browser/can_commit_status.h
@@ -0,0 +1,20 @@
+// Copyright 2019 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 CONTENT_BROWSER_CAN_COMMIT_STATUS_H_
+#define CONTENT_BROWSER_CAN_COMMIT_STATUS_H_
+
+namespace content {
+// Status type used by functions that check whether it is ok to commit
+// a particular combination of URL and Origin to a specific process.
+// It indicates that a commit is allowed or signals whether the URL or
+// origin prevented the commit.
+enum class CanCommitStatus {
+  CAN_COMMIT_ORIGIN_AND_URL,
+  CANNOT_COMMIT_ORIGIN,
+  CANNOT_COMMIT_URL
+};
+
+}  // namespace content
+#endif  // CONTENT_BROWSER_CAN_COMMIT_STATUS_H_
diff --git a/content/browser/child_process_launcher_helper_android.cc b/content/browser/child_process_launcher_helper_android.cc
index 5557569..fd90d21 100644
--- a/content/browser/child_process_launcher_helper_android.cc
+++ b/content/browser/child_process_launcher_helper_android.cc
@@ -83,6 +83,12 @@
   base::MemoryMappedFile::Region icu_region;
   int fd = base::i18n::GetIcuDataFileHandle(&icu_region);
   files_to_register->ShareWithRegion(kAndroidICUDataDescriptor, fd, icu_region);
+  base::MemoryMappedFile::Region icu_extra_region;
+  int extra_fd = base::i18n::GetIcuExtraDataFileHandle(&icu_extra_region);
+  if (extra_fd != -1) {
+    files_to_register->ShareWithRegion(kAndroidICUExtraDataDescriptor, extra_fd,
+                                       icu_extra_region);
+  }
 #endif  // ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE
 
   return files_to_register;
diff --git a/content/browser/child_process_security_policy_impl.cc b/content/browser/child_process_security_policy_impl.cc
index 8e177771..286abc7 100644
--- a/content/browser/child_process_security_policy_impl.cc
+++ b/content/browser/child_process_security_policy_impl.cc
@@ -1226,6 +1226,30 @@
   return state->second->HasPermissionsForFile(file, permissions);
 }
 
+CanCommitStatus ChildProcessSecurityPolicyImpl::CanCommitOriginAndUrl(
+    int child_id,
+    const url::Origin& origin,
+    const GURL& url) {
+  // TODO(nasko): This check should be updated to apply to all URLs, not just
+  // standard ones.
+  if (url.IsStandard() && !CanAccessDataForOrigin(child_id, url))
+    return CanCommitStatus::CANNOT_COMMIT_URL;
+
+  // It is safe to commit into a opaque origin, regardless of the URL, as it is
+  // restricted from accessing other origins.
+  if (origin.opaque())
+    return CanCommitStatus::CAN_COMMIT_ORIGIN_AND_URL;
+
+  // Standard URLs must match the reported origin.
+  if (url.IsStandard() && !origin.IsSameOriginWith(url::Origin::Create(url)))
+    return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
+
+  if (!CanAccessDataForOrigin(child_id, origin))
+    return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
+
+  return CanCommitStatus::CAN_COMMIT_ORIGIN_AND_URL;
+}
+
 bool ChildProcessSecurityPolicyImpl::CanAccessDataForOrigin(
     int child_id,
     const url::Origin& origin) {
diff --git a/content/browser/child_process_security_policy_impl.h b/content/browser/child_process_security_policy_impl.h
index 08c9707d..7e5e2a7 100644
--- a/content/browser/child_process_security_policy_impl.h
+++ b/content/browser/child_process_security_policy_impl.h
@@ -20,6 +20,7 @@
 #include "base/memory/singleton.h"
 #include "base/synchronization/lock.h"
 #include "base/thread_annotations.h"
+#include "content/browser/can_commit_status.h"
 #include "content/browser/isolated_origin_util.h"
 #include "content/browser/isolation_context.h"
 #include "content/public/browser/child_process_security_policy.h"
@@ -115,6 +116,17 @@
   // Identical to the above method, but takes url::Origin as input.
   bool CanAccessDataForOrigin(int child_id, const url::Origin& origin);
 
+  // Determines if the combination of |origin| & |url| is safe to commit to
+  // the process associated with |child_id|.
+  //
+  // Returns CAN_COMMIT_ORIGIN_AND_URL if it is safe to commit the |origin| and
+  // |url| combination to the process associated with |child_id|.
+  // Returns CANNOT_COMMIT_URL if |url| is not safe to commit.
+  // Returns CANNOT_COMMIT_ORIGIN if |origin| is not safe to commit.
+  CanCommitStatus CanCommitOriginAndUrl(int child_id,
+                                        const url::Origin& origin,
+                                        const GURL& url);
+
   // This function will check whether |origin| requires process isolation
   // within |isolation_context|, and if so, it will return true and put the
   // most specific matching isolated origin into |result|.
diff --git a/content/browser/code_cache/generated_code_cache.cc b/content/browser/code_cache/generated_code_cache.cc
index a9935dfa..a753890 100644
--- a/content/browser/code_cache/generated_code_cache.cc
+++ b/content/browser/code_cache/generated_code_cache.cc
@@ -68,37 +68,6 @@
 }
 
 constexpr int kResponseTimeSizeInBytes = sizeof(int64_t);
-constexpr int kDataSizeInBytes = sizeof(uint32_t);
-constexpr int kHeaderSizeInBytes = kResponseTimeSizeInBytes + kDataSizeInBytes;
-// This is the threshold for storing the header and cached code in stream 0,
-// which is read into memory on opening an entry. JavaScript code caching stores
-// time stamps with no data, or timestamps with just a tag, and we observe many
-// 8 and 16 byte reads and writes. Make the threshold larger to speed up many
-// code entries too.
-constexpr int kSmallDataLimit = 4096;
-
-void WriteSmallDataHeader(scoped_refptr<net::IOBufferWithSize> buffer,
-                          const base::Time& response_time,
-                          uint32_t data_size) {
-  DCHECK_LE(kHeaderSizeInBytes, buffer->size());
-  int64_t serialized_time =
-      response_time.ToDeltaSinceWindowsEpoch().InMicroseconds();
-  memcpy(buffer->data(), &serialized_time, kResponseTimeSizeInBytes);
-  // Copy size to small data buffer.
-  memcpy(buffer->data() + kResponseTimeSizeInBytes, &data_size,
-         kDataSizeInBytes);
-}
-
-void ReadSmallDataHeader(scoped_refptr<net::IOBufferWithSize> buffer,
-                         base::Time* response_time,
-                         uint32_t* data_size) {
-  DCHECK_LE(kHeaderSizeInBytes, buffer->size());
-  int64_t raw_response_time = *(reinterpret_cast<int64_t*>(buffer->data()));
-  *response_time = base::Time::FromDeltaSinceWindowsEpoch(
-      base::TimeDelta::FromMicroseconds(raw_response_time));
-  *data_size =
-      *(reinterpret_cast<uint32_t*>(buffer->data() + kResponseTimeSizeInBytes));
-}
 
 static_assert(mojo_base::BigBuffer::kMaxInlineBytes <=
                   std::numeric_limits<int>::max(),
@@ -112,6 +81,7 @@
       : net::IOBufferWithSize(nullptr, buffer.size()),
         buffer_(std::move(buffer)) {
     data_ = reinterpret_cast<char*>(buffer_.data());
+    DCHECK(data_);
   }
   explicit BigIOBuffer(size_t size) : net::IOBufferWithSize(nullptr, size) {
     buffer_ = mojo_base::BigBuffer(size);
@@ -165,12 +135,12 @@
  public:
   PendingOperation(Operation op,
                    const std::string& key,
-                   scoped_refptr<net::IOBufferWithSize> small_buffer,
-                   scoped_refptr<BigIOBuffer> large_buffer)
+                   scoped_refptr<net::IOBufferWithSize> time_buffer,
+                   scoped_refptr<BigIOBuffer> data_buffer)
       : op_(op),
         key_(key),
-        small_buffer_(small_buffer),
-        large_buffer_(large_buffer) {
+        time_buffer_(time_buffer),
+        data_buffer_(data_buffer) {
     DCHECK_EQ(Operation::kWrite, op_);
   }
 
@@ -194,24 +164,24 @@
 
   Operation operation() const { return op_; }
   const std::string& key() const { return key_; }
-  scoped_refptr<net::IOBufferWithSize> small_buffer() { return small_buffer_; }
-  scoped_refptr<BigIOBuffer> large_buffer() { return large_buffer_; }
+  scoped_refptr<net::IOBufferWithSize> time_buffer() { return time_buffer_; }
+  scoped_refptr<BigIOBuffer> data_buffer() { return data_buffer_; }
   ReadDataCallback TakeReadCallback() { return std::move(read_callback_); }
   GetBackendCallback TakeBackendCallback() {
     return std::move(backend_callback_);
   }
 
-  // These are called by Fetch operations to hold the buffers we create once the
+  // These are used by Fetch operations to hold the buffers we create once the
   // entry is opened.
-  void set_small_buffer(scoped_refptr<net::IOBufferWithSize> small_buffer) {
+  void set_time_buffer(scoped_refptr<net::IOBufferWithSize> time_buffer) {
     DCHECK_EQ(Operation::kFetch, op_);
-    small_buffer_ = small_buffer;
+    time_buffer_ = time_buffer;
   }
-  void set_large_buffer(scoped_refptr<BigIOBuffer> large_buffer) {
+  // Save fetched data until we can run the callback.
+  void set_data_buffer(scoped_refptr<BigIOBuffer> data_buffer) {
     DCHECK_EQ(Operation::kFetch, op_);
-    large_buffer_ = large_buffer;
+    data_buffer_ = data_buffer;
   }
-
   // Verifies that Write/Fetch callbacks are received in the order we expect.
   void VerifyCompletions(int expected) {
 #if DCHECK_IS_ON()
@@ -223,8 +193,8 @@
  private:
   const Operation op_;
   const std::string key_;
-  scoped_refptr<net::IOBufferWithSize> small_buffer_;
-  scoped_refptr<BigIOBuffer> large_buffer_;
+  scoped_refptr<net::IOBufferWithSize> time_buffer_;
+  scoped_refptr<BigIOBuffer> data_buffer_;
   ReadDataCallback read_callback_;
   GetBackendCallback backend_callback_;
 #if DCHECK_IS_ON()
@@ -271,28 +241,19 @@
     return;
   }
 
-  // If data is small, combine the header and data into a single write.
-  scoped_refptr<net::IOBufferWithSize> small_buffer;
-  scoped_refptr<BigIOBuffer> large_buffer;
-  uint32_t data_size = static_cast<uint32_t>(data.size());
-  if (data_size <= kSmallDataLimit) {
-    small_buffer = base::MakeRefCounted<net::IOBufferWithSize>(
-        kHeaderSizeInBytes + data.size());
-    // Copy |data| into the small buffer.
-    memcpy(small_buffer->data() + kHeaderSizeInBytes, data.data(), data.size());
-    // We write 0 bytes and truncate stream 1 to clear any stale data.
-    large_buffer = base::MakeRefCounted<BigIOBuffer>(mojo_base::BigBuffer());
-  } else {
-    small_buffer =
-        base::MakeRefCounted<net::IOBufferWithSize>(kHeaderSizeInBytes);
-    large_buffer = base::MakeRefCounted<BigIOBuffer>(std::move(data));
-  }
-  WriteSmallDataHeader(small_buffer, response_time, data_size);
-
+  // Response time and data are written separately, to avoid a copy. We need
+  // two IOBuffers, one for the time and one for the BigBuffer.
+  scoped_refptr<net::IOBufferWithSize> time_buffer =
+      base::MakeRefCounted<net::IOBufferWithSize>(kResponseTimeSizeInBytes);
+  int64_t serialized_time =
+      response_time.ToDeltaSinceWindowsEpoch().InMicroseconds();
+  memcpy(time_buffer->data(), &serialized_time, kResponseTimeSizeInBytes);
+  scoped_refptr<BigIOBuffer> data_buffer =
+      base::MakeRefCounted<BigIOBuffer>(std::move(data));
   // Create the write operation.
   std::string key = GetCacheKey(url, origin_lock);
   auto op = std::make_unique<PendingOperation>(Operation::kWrite, key,
-                                               small_buffer, large_buffer);
+                                               time_buffer, data_buffer);
 
   if (backend_state_ != kInitialized) {
     // Insert it into the list of pending operations while the backend is
@@ -455,48 +416,47 @@
   // There should be a valid entry if the open was successful.
   DCHECK(entry);
 
-  // Write the small data first, truncating.
-  auto small_buffer = op->small_buffer();
+  // The response time must be written first, truncating the data.
+  auto time_buffer = op->time_buffer();
   int result = entry->WriteData(
-      kSmallDataStream, 0, small_buffer.get(), small_buffer->size(),
-      base::BindOnce(&GeneratedCodeCache::WriteSmallBufferComplete,
+      kResponseTimeStream, 0, time_buffer.get(), kResponseTimeSizeInBytes,
+      base::BindOnce(&GeneratedCodeCache::WriteResponseTimeComplete,
                      weak_ptr_factory_.GetWeakPtr(), op),
       true);
 
   if (result != net::ERR_IO_PENDING) {
-    WriteSmallBufferComplete(op, result);
+    WriteResponseTimeComplete(op, result);
   }
 
-  // Write the large data, truncating.
-  auto large_buffer = op->large_buffer();
-  result = entry->WriteData(
-      kLargeDataStream, 0, large_buffer.get(), large_buffer->size(),
-      base::BindOnce(&GeneratedCodeCache::WriteLargeBufferComplete,
-                     weak_ptr_factory_.GetWeakPtr(), op),
-      true);
+  // Write the data after the response time, truncating the data.
+  auto data_buffer = op->data_buffer();
+  result =
+      entry->WriteData(kDataStream, 0, data_buffer.get(), data_buffer->size(),
+                       base::BindOnce(&GeneratedCodeCache::WriteDataComplete,
+                                      weak_ptr_factory_.GetWeakPtr(), op),
+                       true);
 
   if (result != net::ERR_IO_PENDING) {
-    WriteLargeBufferComplete(op, result);
+    WriteDataComplete(op, result);
   }
 }
 
-void GeneratedCodeCache::WriteSmallBufferComplete(PendingOperation* op,
-                                                  int rv) {
+void GeneratedCodeCache::WriteResponseTimeComplete(PendingOperation* op,
+                                                   int rv) {
   DCHECK_EQ(Operation::kWrite, op->operation());
-  op->VerifyCompletions(0);  // WriteLargeBufferComplete did not run.
-  if (rv != op->small_buffer()->size()) {
-    // The small data write failed; release the small buffer to signal that
+  op->VerifyCompletions(0);  // WriteDataComplete did not run.
+  if (rv != kResponseTimeSizeInBytes) {
+    // The response time write failed; release the time buffer to signal that
     // the overall request should also fail.
-    op->set_small_buffer(nullptr);
+    op->set_time_buffer(nullptr);
   }
-  // |WriteLargeBufferComplete| must run and call CloseOperationAndIssueNext.
+  // |WriteDataComplete| needs to run and call CloseOperationAndIssueNext.
 }
 
-void GeneratedCodeCache::WriteLargeBufferComplete(PendingOperation* op,
-                                                  int rv) {
+void GeneratedCodeCache::WriteDataComplete(PendingOperation* op, int rv) {
   DCHECK_EQ(Operation::kWrite, op->operation());
-  op->VerifyCompletions(1);  // WriteSmallBufferComplete ran.
-  if (rv != op->large_buffer()->size() || !op->small_buffer()) {
+  op->VerifyCompletions(1);  // WriteResponseTimeComplete ran.
+  if (rv != op->data_buffer()->size() || !op->time_buffer()) {
     // The write failed; record the failure and doom the entry here.
     CollectStatistics(CacheEntryStatus::kWriteFailed);
     DoomEntry(op);
@@ -537,79 +497,66 @@
   // There should be a valid entry if the open was successful.
   DCHECK(entry);
 
-  int small_size = entry->GetDataSize(kSmallDataStream);
-  scoped_refptr<net::IOBufferWithSize> small_buffer =
-      base::MakeRefCounted<net::IOBufferWithSize>(small_size);
-  op->set_small_buffer(small_buffer);
-  int large_size = entry->GetDataSize(kLargeDataStream);
-  scoped_refptr<BigIOBuffer> large_buffer =
-      base::MakeRefCounted<BigIOBuffer>(large_size);
-  op->set_large_buffer(large_buffer);
+  // To avoid a copying the data, we read it in two parts, response time and
+  // code. Create the buffers and pass them to |op|.
+  scoped_refptr<net::IOBufferWithSize> time_buffer =
+      base::MakeRefCounted<net::IOBufferWithSize>(kResponseTimeSizeInBytes);
+  op->set_time_buffer(time_buffer);
+  int data_size = entry->GetDataSize(kDataStream);
+  scoped_refptr<BigIOBuffer> data_buffer =
+      base::MakeRefCounted<BigIOBuffer>(data_size);
+  op->set_data_buffer(data_buffer);
 
-  // Read the small data first.
+  // We must read response time first.
   int result = entry->ReadData(
-      kSmallDataStream, 0, small_buffer.get(), small_buffer->size(),
-      base::BindOnce(&GeneratedCodeCache::ReadSmallBufferComplete,
+      kResponseTimeStream, 0, time_buffer.get(), kResponseTimeSizeInBytes,
+      base::BindOnce(&GeneratedCodeCache::ReadResponseTimeComplete,
                      weak_ptr_factory_.GetWeakPtr(), op));
 
   if (result != net::ERR_IO_PENDING) {
-    ReadSmallBufferComplete(op, result);
+    ReadResponseTimeComplete(op, result);
   }
 
-  // Skip the large read if data is in the small read.
-  if (large_size == 0)
-    return;
-
-  // Read the large data.
-  result = entry->ReadData(
-      kLargeDataStream, 0, large_buffer.get(), large_buffer->size(),
-      base::BindOnce(&GeneratedCodeCache::ReadLargeBufferComplete,
-                     weak_ptr_factory_.GetWeakPtr(), op));
+  // Read the data after the response time.
+  result =
+      entry->ReadData(kDataStream, 0, data_buffer.get(), data_buffer->size(),
+                      base::BindOnce(&GeneratedCodeCache::ReadDataComplete,
+                                     weak_ptr_factory_.GetWeakPtr(), op));
   if (result != net::ERR_IO_PENDING) {
-    ReadLargeBufferComplete(op, result);
+    ReadDataComplete(op, result);
   }
 }
 
-void GeneratedCodeCache::ReadSmallBufferComplete(PendingOperation* op, int rv) {
+void GeneratedCodeCache::ReadResponseTimeComplete(PendingOperation* op,
+                                                  int rv) {
   DCHECK_EQ(Operation::kFetch, op->operation());
-  op->VerifyCompletions(0);  // ReadLargeBufferComplete did not run.
-  if (rv != op->small_buffer()->size() || rv < kHeaderSizeInBytes) {
+  op->VerifyCompletions(0);  // ReadDataComplete did not run.
+  if (rv != kResponseTimeSizeInBytes) {
     CollectStatistics(CacheEntryStatus::kMiss);
-    // The small data stream read failed or is incomplete; release the buffer
-    // to signal that the overall request should also fail.
-    op->set_small_buffer(nullptr);
-  } else {
-    // This is considered a cache hit, since the small data was read.
-    CollectStatistics(CacheEntryStatus::kHit);
+    // The response time read failed; release the time buffer to signal that
+    // the overall request should also fail.
+    op->set_time_buffer(nullptr);
+    return;
   }
-  // Small reads must finish now since no large read is pending.
-  if (op->large_buffer()->size() == 0)
-    ReadLargeBufferComplete(op, 0);
+  // This is considered a cache hit, since response time was read.
+  CollectStatistics(CacheEntryStatus::kHit);
+  // |ReadDataComplete| needs to run and call CloseOperationAndIssueNext.
 }
 
-void GeneratedCodeCache::ReadLargeBufferComplete(PendingOperation* op, int rv) {
+void GeneratedCodeCache::ReadDataComplete(PendingOperation* op, int rv) {
   DCHECK_EQ(Operation::kFetch, op->operation());
-  op->VerifyCompletions(1);  // ReadSmallBufferComplete ran.
+  op->VerifyCompletions(1);  // ReadResponseTimeComplete ran.
   // Fail the request if either read failed.
-  if (rv != op->large_buffer()->size() || !op->small_buffer()) {
+  if (rv != op->data_buffer()->size() || !op->time_buffer()) {
     op->TakeReadCallback().Run(base::Time(), mojo_base::BigBuffer());
     // Doom this entry since it is inaccessible.
     DoomEntry(op);
   } else {
-    base::Time response_time;
-    uint32_t data_size = 0;
-    ReadSmallDataHeader(op->small_buffer(), &response_time, &data_size);
-    if (data_size <= kSmallDataLimit) {
-      // Small data, copy the data from the small buffer.
-      DCHECK_EQ(0, op->large_buffer()->size());
-      mojo_base::BigBuffer data(data_size);
-      memcpy(data.data(), op->small_buffer()->data() + kHeaderSizeInBytes,
-             data_size);
-      op->TakeReadCallback().Run(response_time, std::move(data));
-    } else {
-      op->TakeReadCallback().Run(response_time,
-                                 op->large_buffer()->TakeBuffer());
-    }
+    int64_t raw_response_time =
+        *(reinterpret_cast<int64_t*>(op->time_buffer()->data()));
+    base::Time response_time = base::Time::FromDeltaSinceWindowsEpoch(
+        base::TimeDelta::FromMicroseconds(raw_response_time));
+    op->TakeReadCallback().Run(response_time, op->data_buffer()->TakeBuffer());
   }
   CloseOperationAndIssueNext(op);
 }
diff --git a/content/browser/code_cache/generated_code_cache.h b/content/browser/code_cache/generated_code_cache.h
index 34c24b4..69bb0b5 100644
--- a/content/browser/code_cache/generated_code_cache.h
+++ b/content/browser/code_cache/generated_code_cache.h
@@ -122,7 +122,7 @@
   enum Operation { kFetch, kWrite, kDelete, kGetBackend };
 
   // Data streams corresponding to each entry.
-  enum { kSmallDataStream = 0, kLargeDataStream = 1 };
+  enum { kResponseTimeStream = 0, kDataStream = 1 };
 
   // Creates a simple_disk_cache backend.
   void CreateBackend();
@@ -138,15 +138,15 @@
   void WriteEntryImpl(PendingOperation* op);
   void OpenCompleteForWrite(PendingOperation* op,
                             disk_cache::EntryResult result);
-  void WriteSmallBufferComplete(PendingOperation* op, int rv);
-  void WriteLargeBufferComplete(PendingOperation* op, int rv);
+  void WriteResponseTimeComplete(PendingOperation* op, int rv);
+  void WriteDataComplete(PendingOperation* op, int rv);
 
   // Fetches entry from cache.
   void FetchEntryImpl(PendingOperation* op);
   void OpenCompleteForRead(PendingOperation* op,
                            disk_cache::EntryResult result);
-  void ReadSmallBufferComplete(PendingOperation* op, int rv);
-  void ReadLargeBufferComplete(PendingOperation* op, int rv);
+  void ReadResponseTimeComplete(PendingOperation* op, int rv);
+  void ReadDataComplete(PendingOperation* op, int rv);
 
   // Deletes entry from cache.
   void DeleteEntryImpl(PendingOperation* op);
diff --git a/content/browser/code_cache/generated_code_cache_unittest.cc b/content/browser/code_cache/generated_code_cache_unittest.cc
index 7ac5346..243236a 100644
--- a/content/browser/code_cache/generated_code_cache_unittest.cc
+++ b/content/browser/code_cache/generated_code_cache_unittest.cc
@@ -17,7 +17,6 @@
 
 class GeneratedCodeCacheTest : public testing::Test {
  public:
-  static const int kLargeSizeInBytes = 8192;
   static const int kMaxSizeInBytes = 1024 * 1024;
   static constexpr char kInitialUrl[] = "http://example.com/script.js";
   static constexpr char kInitialOrigin[] = "http://example.com";
@@ -154,23 +153,6 @@
   EXPECT_EQ(response_time, received_response_time_);
 }
 
-TEST_F(GeneratedCodeCacheTest, WriteLargeEntry) {
-  GURL new_url("http://example1.com/script.js");
-  GURL origin_lock = GURL(kInitialOrigin);
-
-  InitializeCache(GeneratedCodeCache::CodeCacheType::kJavaScript);
-  std::string large_data(kLargeSizeInBytes, 'x');
-  base::Time response_time = base::Time::Now();
-  WriteToCache(new_url, origin_lock, large_data, response_time);
-  task_environment_.RunUntilIdle();
-  FetchFromCache(new_url, origin_lock);
-  task_environment_.RunUntilIdle();
-
-  ASSERT_TRUE(received_);
-  EXPECT_EQ(large_data, received_data_);
-  EXPECT_EQ(response_time, received_response_time_);
-}
-
 TEST_F(GeneratedCodeCacheTest, DeleteEntry) {
   GURL url(kInitialUrl);
   GURL origin_lock = GURL(kInitialOrigin);
@@ -247,23 +229,6 @@
   EXPECT_EQ(response_time, received_response_time_);
 }
 
-TEST_F(GeneratedCodeCacheTest, WriteLargeEntryPendingOp) {
-  GURL new_url("http://example1.com/script1.js");
-  GURL origin_lock = GURL(kInitialOrigin);
-
-  InitializeCache(GeneratedCodeCache::CodeCacheType::kJavaScript);
-  std::string large_data(kLargeSizeInBytes, 'x');
-  base::Time response_time = base::Time::Now();
-  WriteToCache(new_url, origin_lock, large_data, response_time);
-  task_environment_.RunUntilIdle();
-  FetchFromCache(new_url, origin_lock);
-  task_environment_.RunUntilIdle();
-
-  ASSERT_TRUE(received_);
-  EXPECT_EQ(large_data, received_data_);
-  EXPECT_EQ(response_time, received_response_time_);
-}
-
 TEST_F(GeneratedCodeCacheTest, DeleteEntryPendingOp) {
   GURL url(kInitialUrl);
   GURL origin_lock = GURL(kInitialOrigin);
@@ -294,63 +259,6 @@
   EXPECT_EQ(response_time, received_response_time_);
 }
 
-TEST_F(GeneratedCodeCacheTest, UpdateDataOfSmallExistingEntry) {
-  GURL url(kInitialUrl);
-  GURL origin_lock = GURL(kInitialOrigin);
-
-  InitializeCache(GeneratedCodeCache::CodeCacheType::kJavaScript);
-  std::string new_data(kLargeSizeInBytes, 'x');
-  base::Time response_time = base::Time::Now();
-  WriteToCache(url, origin_lock, new_data, response_time);
-  task_environment_.RunUntilIdle();
-  FetchFromCache(url, origin_lock);
-  task_environment_.RunUntilIdle();
-
-  ASSERT_TRUE(received_);
-  EXPECT_EQ(new_data, received_data_);
-  EXPECT_EQ(response_time, received_response_time_);
-}
-
-TEST_F(GeneratedCodeCacheTest, UpdateDataOfLargeExistingEntry) {
-  GURL url(kInitialUrl);
-  GURL origin_lock = GURL(kInitialOrigin);
-
-  InitializeCache(GeneratedCodeCache::CodeCacheType::kJavaScript);
-  std::string large_data(kLargeSizeInBytes, 'x');
-  base::Time response_time = base::Time::Now();
-  WriteToCache(url, origin_lock, large_data, response_time);
-  std::string new_data = large_data + "Overwrite";
-  response_time = base::Time::Now();
-  WriteToCache(url, origin_lock, new_data, response_time);
-  task_environment_.RunUntilIdle();
-  FetchFromCache(url, origin_lock);
-  task_environment_.RunUntilIdle();
-
-  ASSERT_TRUE(received_);
-  EXPECT_EQ(new_data, received_data_);
-  EXPECT_EQ(response_time, received_response_time_);
-}
-
-TEST_F(GeneratedCodeCacheTest, TruncateDataOfLargeExistingEntry) {
-  GURL url(kInitialUrl);
-  GURL origin_lock = GURL(kInitialOrigin);
-
-  InitializeCache(GeneratedCodeCache::CodeCacheType::kJavaScript);
-  std::string large_data(kLargeSizeInBytes, 'x');
-  base::Time response_time = base::Time::Now();
-  WriteToCache(url, origin_lock, large_data, response_time);
-  std::string new_data = "SerializedCodeForScriptOverwrite";
-  response_time = base::Time::Now();
-  WriteToCache(url, origin_lock, new_data, response_time);
-  task_environment_.RunUntilIdle();
-  FetchFromCache(url, origin_lock);
-  task_environment_.RunUntilIdle();
-
-  ASSERT_TRUE(received_);
-  EXPECT_EQ(new_data, received_data_);
-  EXPECT_EQ(response_time, received_response_time_);
-}
-
 TEST_F(GeneratedCodeCacheTest, FetchFailsForNonexistingOrigin) {
   InitializeCache(GeneratedCodeCache::CodeCacheType::kJavaScript);
   GURL new_origin_lock = GURL("http://not-example.com");
diff --git a/content/browser/content_service_delegate_impl.cc b/content/browser/content_service_delegate_impl.cc
index 37692e7..f792a5e 100644
--- a/content/browser/content_service_delegate_impl.cc
+++ b/content/browser/content_service_delegate_impl.cc
@@ -104,18 +104,25 @@
   }
 
   // WebContentsDelegate:
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override {
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) override {
     // This method is invoked when attempting to open links in a new tab, e.g.:
     // <a href="https://www.google.com/" target="_blank">Link</a>
     client_->DidSuppressNavigation(target_url,
                                    WindowOpenDisposition::NEW_FOREGROUND_TAB,
                                    /*from_user_gesture=*/true);
-    return true;
+    return false;
   }
 
   WebContents* OpenURLFromTab(WebContents* source,
diff --git a/content/browser/cookie_store/cookie_store_manager_unittest.cc b/content/browser/cookie_store/cookie_store_manager_unittest.cc
index 2a5b2d9..5bda492 100644
--- a/content/browser/cookie_store/cookie_store_manager_unittest.cc
+++ b/content/browser/cookie_store/cookie_store_manager_unittest.cc
@@ -968,7 +968,7 @@
   EXPECT_FALSE(wrong_subscriptions_opt.has_value());
 }
 
-INSTANTIATE_TEST_SUITE_P(CookieStoreManagerTest,
+INSTANTIATE_TEST_SUITE_P(,
                          CookieStoreManagerTest,
                          testing::Bool() /* reset_storage_during_test */);
 
diff --git a/content/browser/frame_host/navigation_controller_impl.cc b/content/browser/frame_host/navigation_controller_impl.cc
index fc025c4..1f709b6 100644
--- a/content/browser/frame_host/navigation_controller_impl.cc
+++ b/content/browser/frame_host/navigation_controller_impl.cc
@@ -510,7 +510,8 @@
       is_initial_navigation_(true),
       in_navigate_to_pending_entry_(false),
       pending_reload_(ReloadType::NONE),
-      get_timestamp_callback_(base::Bind(&base::Time::Now)) {
+      get_timestamp_callback_(base::Bind(&base::Time::Now)),
+      entry_replaced_by_post_commit_error_(nullptr) {
   DCHECK(browser_context_);
 }
 
@@ -574,9 +575,20 @@
   NavigationEntryImpl* entry = nullptr;
   int current_index = -1;
 
-  // If we are reloading the initial navigation, just use the current
-  // pending entry.  Otherwise look up the current entry.
-  if (IsInitialNavigation() && pending_entry_) {
+  if (entry_replaced_by_post_commit_error_) {
+    // If there is an entry that was replaced by a currently active post-commit
+    // error navigation, this can't be the initial navigation.
+    DCHECK(!IsInitialNavigation());
+    // If the current entry is a post commit error, we reload the entry it
+    // replaced instead. We leave the error entry in place until a commit
+    // replaces it, but the pending entry points to the original entry in the
+    // meantime. Note that NavigateToExistingPendingEntry is able to handle the
+    // case that pending_entry_ != entries_[pending_entry_index_].
+    entry = entry_replaced_by_post_commit_error_.get();
+    current_index = GetCurrentEntryIndex();
+  } else if (IsInitialNavigation() && pending_entry_) {
+    // If we are reloading the initial navigation, just use the current
+    // pending entry.  Otherwise look up the current entry.
     entry = pending_entry_;
     // The pending entry might be in entries_ (e.g., after a Clone), so we
     // should also update the current_index.
@@ -980,6 +992,21 @@
   // Save the previous state before we clobber it.
   bool overriding_user_agent_changed = false;
   if (GetLastCommittedEntry()) {
+    if (entry_replaced_by_post_commit_error_) {
+      if (is_same_document_navigation) {
+        // Same document navigations should not be possible on error pages and
+        // would leave the controller in a weird state. Kill the renderer if
+        // that happens.
+        bad_message::ReceivedBadMessage(
+            rfh->GetProcess(), bad_message::NC_SAME_DOCUMENT_POST_COMMIT_ERROR);
+      }
+      // Any commit while a post-commit error page is showing should put the
+      // original entry back, replacing the error page's entry.  This includes
+      // reloads, where the original entry was used as the pending entry and
+      // should now be at the correct index at commit time.
+      entries_[last_committed_entry_index_] =
+          std::move(entry_replaced_by_post_commit_error_);
+    }
     details->previous_url = GetLastCommittedEntry()->GetURL();
     details->previous_entry_index = GetLastCommittedEntryIndex();
     if (pending_entry_ &&
@@ -1491,7 +1518,8 @@
                                        previous_document_was_activated,
                                        request->IsRendererInitiated());
 
-  InsertOrReplaceEntry(std::move(new_entry), replace_entry);
+  InsertOrReplaceEntry(std::move(new_entry), replace_entry,
+                       !request->post_commit_error_page_html().empty());
 }
 
 void NavigationControllerImpl::RendererDidNavigateToExistingPage(
@@ -1778,7 +1806,7 @@
   // https://crbug.com/607205. For now, the call to CloneAndReplace() will
   // delete the |frame_entry| when the function exits if it doesn't get used.
 
-  InsertOrReplaceEntry(std::move(new_entry), replace_entry);
+  InsertOrReplaceEntry(std::move(new_entry), replace_entry, false);
 }
 
 bool NavigationControllerImpl::RendererDidNavigateAutoSubframe(
@@ -2416,9 +2444,12 @@
   DCHECK(pending_entry_ || pending_entry_index_ == -1);
 
   // If there is a pending_entry_index_, then pending_entry_ must be the entry
-  // at that index.
+  // at that index. An exception is while a reload of a post commit error page
+  // is ongoing; in that case pending entry will point to the entry replaced
+  // by the error.
   DCHECK(pending_entry_index_ == -1 ||
-         pending_entry_ == GetEntryAtIndex(pending_entry_index_));
+         pending_entry_ == GetEntryAtIndex(pending_entry_index_) ||
+         pending_entry_ == entry_replaced_by_post_commit_error_.get());
 
   return pending_entry_;
 }
@@ -2433,7 +2464,8 @@
 
 void NavigationControllerImpl::InsertOrReplaceEntry(
     std::unique_ptr<NavigationEntryImpl> entry,
-    bool replace) {
+    bool replace,
+    bool was_post_commit_error) {
   DCHECK(!ui::PageTransitionCoreTypeIs(entry->GetTransitionType(),
                                        ui::PAGE_TRANSITION_AUTO_SUBFRAME));
 
@@ -2448,9 +2480,17 @@
   DiscardNonCommittedEntries();
 
   // When replacing, don't prune the forward history.
-  if (replace && entries_.size() > 0) {
+  if ((replace || was_post_commit_error) && entries_.size() > 0) {
     CopyReplacedNavigationEntryDataIfPreviouslyEmpty(
         entries_[last_committed_entry_index_].get(), entry.get());
+    // If the new entry is a post-commit error page, we store the current last
+    // committed entry to the side so that we can put it back when navigating
+    // away from the error.
+    if (was_post_commit_error) {
+      DCHECK(!entry_replaced_by_post_commit_error_);
+      entry_replaced_by_post_commit_error_ =
+          std::move(entries_[last_committed_entry_index_]);
+    }
     entries_[last_committed_entry_index_] = std::move(entry);
     return;
   }
@@ -2503,6 +2543,12 @@
                "NavigationControllerImpl::NavigateToExistingPendingEntry");
   DCHECK(pending_entry_);
   DCHECK(IsInitialNavigation() || pending_entry_index_ != -1);
+  if (pending_entry_index_ != -1) {
+    // The pending entry may not be in entries_ if a post-commit error page is
+    // showing.
+    DCHECK(pending_entry_ == entries_[pending_entry_index_].get() ||
+           pending_entry_ == entry_replaced_by_post_commit_error_.get());
+  }
   DCHECK(!IsRendererDebugURL(pending_entry_->GetURL()));
   needs_reload_ = false;
   FrameTreeNode* root = delegate_->GetFrameTree()->root();
@@ -3324,10 +3370,11 @@
   }
 }
 
-void NavigationControllerImpl::LoadErrorPage(RenderFrameHost* render_frame_host,
-                                             const GURL& url,
-                                             const std::string& error_page_html,
-                                             net::Error error) {
+void NavigationControllerImpl::LoadPostCommitErrorPage(
+    RenderFrameHost* render_frame_host,
+    const GURL& url,
+    const std::string& error_page_html,
+    net::Error error) {
   FrameTreeNode* node =
       static_cast<RenderFrameHostImpl*>(render_frame_host)->frame_tree_node();
 
@@ -3343,7 +3390,7 @@
           true /* browser_initiated */, "" /* extra_headers */,
           nullptr /* frame_entry */, nullptr /* entry */,
           nullptr /* post_body */, nullptr /* navigation_ui_data */);
-  navigation_request->set_error_page_html(error_page_html);
+  navigation_request->set_post_commit_error_page_html(error_page_html);
   navigation_request->set_net_error(error);
   node->CreatedNavigationRequest(std::move(navigation_request));
   DCHECK(node->navigation_request());
diff --git a/content/browser/frame_host/navigation_controller_impl.h b/content/browser/frame_host/navigation_controller_impl.h
index 586d6c0..f5f5b80 100644
--- a/content/browser/frame_host/navigation_controller_impl.h
+++ b/content/browser/frame_host/navigation_controller_impl.h
@@ -68,10 +68,10 @@
                const std::string& extra_headers) override;
   void LoadURLWithParams(const LoadURLParams& params) override;
   void LoadIfNecessary() override;
-  void LoadErrorPage(RenderFrameHost* render_frame_host,
-                     const GURL& url,
-                     const std::string& error_page_html,
-                     net::Error error) override;
+  void LoadPostCommitErrorPage(RenderFrameHost* render_frame_host,
+                               const GURL& url,
+                               const std::string& error_page_html,
+                               net::Error error) override;
   bool CanGoBack() override;
   bool CanGoForward() override;
   bool CanGoToOffset(int offset) override;
@@ -438,8 +438,12 @@
 
   // Inserts a new entry or replaces the current entry with a new one, removing
   // all entries after it. The new entry will become the active one.
+  // If |was_post_commit_error_| is set, the last committed entry will be saved,
+  // the new entry will replace it, and on any navigation away from the new
+  // entry or on reloads, the old one will replace |entry|.
   void InsertOrReplaceEntry(std::unique_ptr<NavigationEntryImpl> entry,
-                            bool replace);
+                            bool replace,
+                            bool was_post_commit_error);
 
   // Removes the entry at |index|, as long as it is not the current entry.
   void RemoveEntryAtIndexInternal(int index);
@@ -586,6 +590,17 @@
   // See BackForwardCache class documentation.
   BackForwardCacheImpl back_forward_cache_;
 
+  // Holds the entry that was committed at the time an error page was triggered
+  // due to a call to LoadPostCommitErrorPage. The error entry will take its
+  // place until the user navigates again, at which point it will go back into
+  // the entry list instead of the error entry. Set to nullptr if there is no
+  // post commit error entry. Note that this entry must always correspond to the
+  // last committed entry index, and that there can be only a single post-commit
+  // error page entry in its place in entries_. This ensures that its spot in
+  // entries_ cannot go away (e.g., due to PruneForwardEntries) and that it can
+  // go back into place after any subsequent commit.
+  std::unique_ptr<NavigationEntryImpl> entry_replaced_by_post_commit_error_;
+
   DISALLOW_COPY_AND_ASSIGN(NavigationControllerImpl);
 };
 
diff --git a/content/browser/frame_host/navigation_controller_impl_browsertest.cc b/content/browser/frame_host/navigation_controller_impl_browsertest.cc
index d8de60f..e286134 100644
--- a/content/browser/frame_host/navigation_controller_impl_browsertest.cc
+++ b/content/browser/frame_host/navigation_controller_impl_browsertest.cc
@@ -8478,10 +8478,10 @@
   EXPECT_EQ(url1, shell()->web_contents()->GetLastCommittedURL());
 }
 
-// Test to verify that LoadErrorPage loads an error page even with a
+// Test to verify that LoadPostCommitErrorPage loads an error page even with a
 // valid URL.
 IN_PROC_BROWSER_TEST_F(NavigationControllerBrowserTest,
-                       BrowserInitiatedLoadErrorPage) {
+                       BrowserInitiatedLoadPostCommitErrorPage) {
   NavigationControllerImpl& controller = static_cast<NavigationControllerImpl&>(
       shell()->web_contents()->GetController());
 
@@ -8493,7 +8493,8 @@
 
   std::string error_html = "Error page";
   TestNavigationObserver error_observer(shell()->web_contents());
-  controller.LoadErrorPage(root, url, error_html, net::ERR_BLOCKED_BY_CLIENT);
+  controller.LoadPostCommitErrorPage(root, url, error_html,
+                                     net::ERR_BLOCKED_BY_CLIENT);
   error_observer.Wait();
 
   scoped_refptr<SiteInstance> error_site_instance =
@@ -8521,10 +8522,10 @@
             policy->GetOriginLock(error_site_instance->GetProcess()->GetID()));
 }
 
-// Test to verify that LoadErrorPage loads an error page in a subframe
+// Test to verify that LoadPostCommitErrorPage loads an error page in a subframe
 // correctly.
 IN_PROC_BROWSER_TEST_F(NavigationControllerBrowserTest,
-                       BrowserInitiatedLoadErrorPageForSubframe) {
+                       BrowserInitiatedLoadPostCommitErrorPageForSubframe) {
   NavigationControllerImpl& controller = static_cast<NavigationControllerImpl&>(
       shell()->web_contents()->GetController());
 
@@ -8539,7 +8540,8 @@
 
   std::string error_html = "Error page";
   TestNavigationObserver error_observer(shell()->web_contents());
-  controller.LoadErrorPage(child, url, error_html, net::ERR_BLOCKED_BY_CLIENT);
+  controller.LoadPostCommitErrorPage(child, url, error_html,
+                                     net::ERR_BLOCKED_BY_CLIENT);
   error_observer.Wait();
 
   EXPECT_FALSE(error_observer.last_navigation_succeeded());
@@ -8554,10 +8556,11 @@
   EXPECT_NE(GURL(kUnreachableWebDataURL), error_site_instance->GetSiteURL());
 }
 
-// Test to verify that LoadErrorPage works correctly when supplied with an
-// about:blank url for the error page.
-IN_PROC_BROWSER_TEST_F(NavigationControllerBrowserTest,
-                       BrowserInitiatedLoadErrorPageWithAboutBlankUrl) {
+// Test to verify that LoadPostCommitErrorPage works correctly when supplied
+// with an about:blank url for the error page.
+IN_PROC_BROWSER_TEST_F(
+    NavigationControllerBrowserTest,
+    BrowserInitiatedLoadPostCommitErrorPageWithAboutBlankUrl) {
   NavigationControllerImpl& controller = static_cast<NavigationControllerImpl&>(
       shell()->web_contents()->GetController());
 
@@ -8573,8 +8576,8 @@
   std::string error_html = "Error page";
   GURL error_url("about:blank#error");
   TestNavigationObserver error_observer(shell()->web_contents());
-  controller.LoadErrorPage(child, error_url, error_html,
-                           net::ERR_BLOCKED_BY_CLIENT);
+  controller.LoadPostCommitErrorPage(child, error_url, error_html,
+                                     net::ERR_BLOCKED_BY_CLIENT);
   error_observer.Wait();
 
   EXPECT_FALSE(error_observer.last_navigation_succeeded());
@@ -8605,6 +8608,138 @@
   base::test::ScopedFeatureList feature_list_;
 };
 
+// Test to verify that after loading a post-commit error page, back is treated
+// as navigating to the entry prior to the page that was active when the
+// post-commit error page was triggered.
+IN_PROC_BROWSER_TEST_F(NavigationControllerBrowserTest,
+                       BackOnBrowserInitiatedErrorPageNavigation) {
+  NavigationControllerImpl& controller = static_cast<NavigationControllerImpl&>(
+      shell()->web_contents()->GetController());
+
+  GURL url1(embedded_test_server()->GetURL("/title1.html"));
+  GURL url2(embedded_test_server()->GetURL("/title2.html"));
+
+  // Navigate to a valid page.
+  EXPECT_TRUE(NavigateToURL(shell(), url1));
+  int initial_entry_index = controller.GetLastCommittedEntryIndex();
+
+  // Navigate to a different page.
+  EXPECT_TRUE(NavigateToURL(shell(), url2));
+
+  // Trigger a post-commit error page navigation.
+  TestNavigationObserver error_observer(shell()->web_contents());
+  controller.LoadPostCommitErrorPage(shell()->web_contents()->GetMainFrame(),
+                                     url2, "Error Page",
+                                     net::ERR_BLOCKED_BY_CLIENT);
+  error_observer.Wait();
+  EXPECT_EQ(PAGE_TYPE_ERROR, controller.GetLastCommittedEntry()->GetPageType());
+  EXPECT_EQ(2, controller.GetEntryCount());
+
+  // Make sure back is treated as going back from the page that was visible when
+  // the post-commit error page was loaded.
+  controller.GoBack();
+  EXPECT_TRUE(WaitForLoadStop(shell()->web_contents()));
+  EXPECT_EQ(2, controller.GetEntryCount());
+  EXPECT_EQ(initial_entry_index, controller.GetLastCommittedEntryIndex());
+  // Check that the next forward entry has been replaced with the original visit
+  // to the site (i.e. it shouldn't be the error page).
+  EXPECT_EQ(PAGE_TYPE_NORMAL, controller.GetEntryAtOffset(1)->GetPageType());
+  EXPECT_EQ(url2, controller.GetEntryAtOffset(1)->GetURL());
+}
+
+// Test to verify that after loading a post-commit error page, reload
+// triggers a navigation to the previous page (the page that was active when
+// the navigation to an error was triggered).
+IN_PROC_BROWSER_TEST_F(NavigationControllerBrowserTest,
+                       ReloadOnBrowserInitiatedErrorPageNavigation) {
+  NavigationControllerImpl& controller = static_cast<NavigationControllerImpl&>(
+      shell()->web_contents()->GetController());
+
+  GURL url(embedded_test_server()->GetURL("/title1.html"));
+
+  // Navigate to a valid page.
+  EXPECT_TRUE(NavigateToURL(shell(), url));
+  int initial_entry_index = controller.GetLastCommittedEntryIndex();
+  int initial_entry_id = controller.GetLastCommittedEntry()->GetUniqueID();
+
+  // Trigger a post-commit error page navigation.
+  TestNavigationObserver error_observer(shell()->web_contents());
+  controller.LoadPostCommitErrorPage(shell()->web_contents()->GetMainFrame(),
+                                     url, "Error Page",
+                                     net::ERR_BLOCKED_BY_CLIENT);
+  error_observer.Wait();
+  EXPECT_EQ(PAGE_TYPE_ERROR, controller.GetLastCommittedEntry()->GetPageType());
+  EXPECT_EQ(1, controller.GetEntryCount());
+
+  // Make sure reload triggers a reload of the original page, not the error,
+  // and that we get back to the original entry.
+  controller.Reload(ReloadType::NORMAL, false);
+  EXPECT_TRUE(WaitForLoadStop(shell()->web_contents()));
+  EXPECT_EQ(initial_entry_index, controller.GetLastCommittedEntryIndex());
+
+  // We should be in the initial entry and no longer be in an error page.
+  EXPECT_EQ(initial_entry_id,
+            controller.GetLastCommittedEntry()->GetUniqueID());
+  EXPECT_EQ(PAGE_TYPE_NORMAL,
+            controller.GetLastCommittedEntry()->GetPageType());
+
+  // The error page entry shouldn't be available as a forward navigation.
+  EXPECT_FALSE(controller.CanGoForward());
+  EXPECT_EQ(1, controller.GetEntryCount());
+}
+
+// Test clone behavior of post-commit error page navigations.
+IN_PROC_BROWSER_TEST_F(NavigationControllerBrowserTest,
+                       CloneOnBrowserInitiatedErrorPageNavigation) {
+  NavigationControllerImpl& controller = static_cast<NavigationControllerImpl&>(
+      shell()->web_contents()->GetController());
+
+  GURL url(embedded_test_server()->GetURL("/title2.html"));
+
+  // Navigate to a valid page.
+  EXPECT_TRUE(NavigateToURL(shell(), url));
+  int initial_entry_id = controller.GetLastCommittedEntry()->GetUniqueID();
+  base::string16 initial_title = controller.GetLastCommittedEntry()->GetTitle();
+  // Trigger a post-commit error page navigation.
+  TestNavigationObserver error_observer(shell()->web_contents());
+  controller.LoadPostCommitErrorPage(shell()->web_contents()->GetMainFrame(),
+                                     url, "Error Page",
+                                     net::ERR_BLOCKED_BY_CLIENT);
+  error_observer.Wait();
+  EXPECT_EQ(PAGE_TYPE_ERROR, controller.GetLastCommittedEntry()->GetPageType());
+  EXPECT_EQ(1, controller.GetEntryCount());
+
+  // Clone the tab and load the entry.
+  std::unique_ptr<WebContents> new_tab = shell()->web_contents()->Clone();
+  WebContentsImpl* new_tab_impl = static_cast<WebContentsImpl*>(new_tab.get());
+  NavigationController& new_controller = new_tab_impl->GetController();
+  EXPECT_TRUE(new_controller.IsInitialNavigation());
+  EXPECT_TRUE(new_controller.NeedsReload());
+  // TODO(carlosil): Before we load, the entry on the new controller is a clone
+  // of the post commit error page entry. This is mostly ok since after the load
+  // we end up in the right page, but causes navigation state to be lost,
+  // ideally we should clone the entry replaced by the error page instead.
+  EXPECT_EQ(PAGE_TYPE_ERROR,
+            new_controller.GetLastCommittedEntry()->GetPageType());
+  {
+    TestNavigationObserver clone_observer(new_tab.get());
+    new_controller.LoadIfNecessary();
+    clone_observer.Wait();
+  }
+  // The entry on the new controller should be a new one.
+  EXPECT_NE(initial_entry_id,
+            new_controller.GetLastCommittedEntry()->GetUniqueID());
+  // The new entry should keep the URL from the initial navigation, which means
+  // after the load it should navigate to the initial page, not to the error.
+  EXPECT_EQ(url, new_controller.GetLastCommittedEntry()->GetURL());
+  EXPECT_EQ(initial_title, new_controller.GetLastCommittedEntry()->GetTitle());
+  EXPECT_EQ(PAGE_TYPE_NORMAL,
+            new_controller.GetLastCommittedEntry()->GetPageType());
+
+  // Only one entry should exist in the controller of the cloned tab.
+  EXPECT_EQ(1, new_controller.GetEntryCount());
+}
+
 // Tests that the navigation entry is marked as skippable on back/forward button
 // if it does a renderer initiated navigation without ever getting a user
 // activation.
diff --git a/content/browser/frame_host/navigation_entry_impl.cc b/content/browser/frame_host/navigation_entry_impl.cc
index 5862d35..d85bd57 100644
--- a/content/browser/frame_host/navigation_entry_impl.cc
+++ b/content/browser/frame_host/navigation_entry_impl.cc
@@ -66,10 +66,6 @@
   EncodePageState(page_state, &data);
   DCHECK(!data.empty()) << "Shouldn't generate an empty PageState.";
 
-  // TODO(lukasza): https://crbug.com/976055: |initiator_origin| should be
-  // persisted across session restore.
-  base::Optional<url::Origin> initiator_origin = base::nullopt;
-
   node->frame_entry = base::MakeRefCounted<FrameNavigationEntry>(
       UTF16ToUTF8(state.target.value_or(base::string16())),
       state.item_sequence_number, state.document_sequence_number, nullptr,
@@ -79,7 +75,7 @@
       nullptr /* origin */,
       Referrer(GURL(state.referrer.value_or(base::string16())),
                state.referrer_policy),
-      initiator_origin, std::vector<GURL>(),
+      state.initiator_origin, std::vector<GURL>(),
       PageState::CreateFromEncodedData(data), "GET", -1,
       nullptr /* blob_url_loader_factory */);
 
@@ -145,8 +141,7 @@
   state->item_sequence_number = node->frame_entry->item_sequence_number();
   state->document_sequence_number =
       node->frame_entry->document_sequence_number();
-  // TODO(lukasza): https://crbug.com/976055: Persist |initiator_origin| in
-  // the ExplodedFrameState.
+  state->initiator_origin = node->frame_entry->initiator_origin();
 
   // Copy the frame's files into the PageState's |referenced_files|.
   referenced_files->reserve(referenced_files->size() +
diff --git a/content/browser/frame_host/navigation_entry_impl_unittest.cc b/content/browser/frame_host/navigation_entry_impl_unittest.cc
index 45cb8cd6..f5863c9f 100644
--- a/content/browser/frame_host/navigation_entry_impl_unittest.cc
+++ b/content/browser/frame_host/navigation_entry_impl_unittest.cc
@@ -306,9 +306,8 @@
   // SetPageState/GetPageState last.
   PageState test_page_state = CreateTestPageState();
   entry2_->SetPageState(test_page_state);
-  // TODO(lukasza): https://crbug.com/976055: Once |initiator_origin| is
-  // persisted across session restore, the test here should verify that
-  // SetPageState round-trips via GetPageState.
+  EXPECT_EQ(test_page_state.ToEncodedData(),
+            entry2_->GetPageState().ToEncodedData());
 }
 
 // Test basic Clone behavior.
diff --git a/content/browser/frame_host/navigation_request.cc b/content/browser/frame_host/navigation_request.cc
index 280bf6c..b05640d 100644
--- a/content/browser/frame_host/navigation_request.cc
+++ b/content/browser/frame_host/navigation_request.cc
@@ -1118,11 +1118,12 @@
     return;
   }
 
-  if (!error_page_html_.empty()) {
-    OnRequestFailedInternal(network::URLLoaderCompletionStatus(net_error_),
-                            true /* skip_throttles  */,
-                            error_page_html_ /* error_page_content */,
-                            false /* collapse_frame */);
+  if (!post_commit_error_page_html_.empty()) {
+    OnRequestFailedInternal(
+        network::URLLoaderCompletionStatus(net_error_),
+        true /* skip_throttles  */,
+        post_commit_error_page_html_ /* error_page_content */,
+        false /* collapse_frame */);
     // DO NOT ADD CODE after this. The previous call to OnRequestFailedInternal
     // has destroyed the NavigationRequest.
     return;
diff --git a/content/browser/frame_host/navigation_request.h b/content/browser/frame_host/navigation_request.h
index 7d2774f..f1b4dba 100644
--- a/content/browser/frame_host/navigation_request.h
+++ b/content/browser/frame_host/navigation_request.h
@@ -421,8 +421,13 @@
   }
 #endif
 
-  void set_error_page_html(const std::string& error_page_html) {
-    error_page_html_ = error_page_html;
+  const std::string& post_commit_error_page_html() {
+    return post_commit_error_page_html_;
+  }
+
+  void set_post_commit_error_page_html(
+      const std::string& post_commit_error_page_html) {
+    post_commit_error_page_html_ = post_commit_error_page_html;
   }
 
   void set_from_download_cross_origin_redirect(
@@ -1015,7 +1020,7 @@
 
   // If set, starting the navigation will immediately result in an error page
   // with this html as content and |net_error| as the network error.
-  std::string error_page_html_;
+  std::string post_commit_error_page_html_;
 
   // This callback will be run when all throttle checks have been performed.
   // TODO(zetamoo): This can be removed once the navigation states are merged.
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
index dc7672f..ec254065 100644
--- a/content/browser/frame_host/render_frame_host_impl.cc
+++ b/content/browser/frame_host/render_frame_host_impl.cc
@@ -4203,9 +4203,8 @@
       cloned_namespace.get());
 
   if (is_new_browsing_instance || !new_window) {
-    // Opener suppressed, Javascript access disabled, or delegate did not
-    // provide a handle to any windows it created. In these cases, never tell
-    // the renderer about the new window.
+    // Opener suppressed or Javascript access disabled. Never tell the renderer
+    // about the new window.
     std::move(callback).Run(mojom::CreateNewWindowStatus::kIgnore, nullptr);
     return;
   }
@@ -4224,8 +4223,8 @@
 
   if (main_frame->waiting_for_init_) {
     // Need to check |waiting_for_init_| as some paths inside CreateNewWindow
-    // call above (eg if WebContentsDelegate::IsWebContentsCreationOverridden()
-    // returns true) will resume requests by calling RenderFrameHostImpl::Init.
+    // call above (namely, if WebContentsDelegate::ShouldCreateWebContents
+    // returns false) will resume requests by calling RenderFrameHostImpl::Init.
     main_frame->frame_->BlockRequests();
   }
 
@@ -4585,7 +4584,7 @@
   network_service_connection_error_handler_holder_.reset();
 }
 
-RenderFrameHostImpl::CanCommitStatus RenderFrameHostImpl::CanCommitOriginAndUrl(
+CanCommitStatus RenderFrameHostImpl::CanCommitOriginAndUrl(
     const url::Origin& origin,
     const GURL& url) {
   // If the --disable-web-security flag is specified, all bets are off and the
@@ -4630,42 +4629,30 @@
   if (!GetContentClient()->browser()->CanCommitURL(GetProcess(), url))
     return CanCommitStatus::CANNOT_COMMIT_URL;
 
-  // TODO(nasko): This check should be updated to apply to all URLs, not just
-  // standard ones.
   auto* policy = ChildProcessSecurityPolicyImpl::GetInstance();
-  if (url.IsStandard() &&
-      !policy->CanAccessDataForOrigin(GetProcess()->GetID(), url)) {
-    return CanCommitStatus::CANNOT_COMMIT_URL;
+  const CanCommitStatus can_commit_status =
+      policy->CanCommitOriginAndUrl(GetProcess()->GetID(), origin, url);
+  if (can_commit_status != CanCommitStatus::CAN_COMMIT_ORIGIN_AND_URL)
+    return can_commit_status;
+
+  if (!origin.opaque()) {
+    // A non-opaque origin must be a valid URL, which allows us to safely do a
+    // conversion to GURL.
+    GURL origin_url = origin.GetURL();
+
+    // Verify that the origin is allowed to commit in this process.
+    // Note: This also handles non-standard cases for |url|, such as
+    // about:blank, data, and blob URLs.
+
+    // Renderer-debug URLs can never be committed.
+    if (IsRendererDebugURL(origin_url))
+      return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
+
+    // Give the client a chance to disallow URLs from committing.
+    if (!GetContentClient()->browser()->CanCommitURL(GetProcess(), origin_url))
+      return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
   }
 
-  // It is safe to commit into a opaque origin, regardless of the URL, as it is
-  // restricted from accessing other origins.
-  if (origin.opaque())
-    return CanCommitStatus::CAN_COMMIT_ORIGIN_AND_URL;
-
-  // Standard URLs must match the reported origin.
-  if (url.IsStandard() && !origin.IsSameOriginWith(url::Origin::Create(url)))
-    return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
-
-  // A non-opaque origin must be a valid URL, which allows us to safely do a
-  // conversion to GURL.
-  GURL origin_url = origin.GetURL();
-
-  if (!policy->CanAccessDataForOrigin(GetProcess()->GetID(), origin))
-    return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
-
-  // Verify that the origin is allowed to commit in this process.
-  // Note: This also handles non-standard cases for |url|, such as
-  // about:blank, data, and blob URLs.
-
-  // Renderer-debug URLs can never be committed.
-  if (IsRendererDebugURL(origin_url))
-    return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
-
-  // Give the client a chance to disallow URLs from committing.
-  if (!GetContentClient()->browser()->CanCommitURL(GetProcess(), origin_url))
-    return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
-
   return CanCommitStatus::CAN_COMMIT_ORIGIN_AND_URL;
 }
 
diff --git a/content/browser/frame_host/render_frame_host_impl.h b/content/browser/frame_host/render_frame_host_impl.h
index 00a5077..05b5ee08 100644
--- a/content/browser/frame_host/render_frame_host_impl.h
+++ b/content/browser/frame_host/render_frame_host_impl.h
@@ -33,6 +33,7 @@
 #include "content/browser/accessibility/browser_accessibility_manager.h"
 #include "content/browser/bad_message.h"
 #include "content/browser/browser_interface_broker_impl.h"
+#include "content/browser/can_commit_status.h"
 #include "content/browser/renderer_host/media/old_render_frame_audio_input_stream_factory.h"
 #include "content/browser/renderer_host/media/old_render_frame_audio_output_stream_factory.h"
 #include "content/browser/renderer_host/media/render_frame_audio_input_stream_factory.h"
@@ -1502,11 +1503,6 @@
   // in cases where it is applicable. This is a more conservative check than
   // RenderProcessHost::FilterURL, since it will be used to kill processes that
   // commit unauthorized origins.
-  enum class CanCommitStatus {
-    CAN_COMMIT_ORIGIN_AND_URL,
-    CANNOT_COMMIT_ORIGIN,
-    CANNOT_COMMIT_URL
-  };
   CanCommitStatus CanCommitOriginAndUrl(const url::Origin& origin,
                                         const GURL& url);
 
diff --git a/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc b/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
index b40a5ab..12e9385 100644
--- a/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
+++ b/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
@@ -146,8 +146,7 @@
     ++lock.acquired_count;
     lock.lock_mode = request.type;
     auto released_callback = base::BindOnce(
-        &DisjointRangeLockManager::LockReleased, weak_factory_.GetWeakPtr(),
-        request.level, std::move(request.range));
+        &DisjointRangeLockManager::LockReleased, weak_factory_.GetWeakPtr());
     locks_holder->locks.emplace_back(std::move(request.range), request.level,
                                      std::move(released_callback));
     std::move(acquired_callback).Run();
@@ -189,9 +188,8 @@
 
       ++lock.acquired_count;
       lock.lock_mode = requester.requested_type;
-      auto released_callback =
-          base::BindOnce(&DisjointRangeLockManager::LockReleased,
-                         weak_factory_.GetWeakPtr(), level, range);
+      auto released_callback = base::BindOnce(
+          &DisjointRangeLockManager::LockReleased, weak_factory_.GetWeakPtr());
       // Grant the lock.
       requester.locks_holder->locks.emplace_back(std::move(range), level,
                                                  std::move(released_callback));
diff --git a/content/browser/indexed_db/scopes/scope_lock.cc b/content/browser/indexed_db/scopes/scope_lock.cc
index 0ae6402..340f923a 100644
--- a/content/browser/indexed_db/scopes/scope_lock.cc
+++ b/content/browser/indexed_db/scopes/scope_lock.cc
@@ -9,42 +9,43 @@
 namespace content {
 
 ScopeLock::ScopeLock() = default;
-ScopeLock::~ScopeLock() = default;
+
+ScopeLock::~ScopeLock() {
+  Release();
+}
+
 ScopeLock::ScopeLock(ScopeLock&& other) noexcept {
-  DCHECK(!this->is_locked_)
+  DCHECK(!this->is_locked())
       << "Cannot move a lock onto an active lock: " << *this;
-  this->is_locked_ = other.is_locked_;
   this->range_ = std::move(other.range_);
   this->level_ = other.level_;
-  this->closure_runner_ = std::move(other.closure_runner_);
-  other.is_locked_ = false;
+  this->lock_released_callback_ = std::move(other.lock_released_callback_);
+  DCHECK(!other.is_locked());
 }
-ScopeLock::ScopeLock(ScopeLockRange range, int level, base::OnceClosure closure)
-    : is_locked_(!closure.is_null()),
-      range_(std::move(range)),
+ScopeLock::ScopeLock(ScopeLockRange range,
+                     int level,
+                     LockReleasedCallback lock_released_callback)
+    : range_(std::move(range)),
       level_(level),
-      closure_runner_(std::move(closure)) {}
+      lock_released_callback_(std::move(lock_released_callback)) {}
 
 ScopeLock& ScopeLock::operator=(ScopeLock&& other) noexcept {
-  DCHECK(!this->is_locked_)
+  DCHECK(!this->is_locked())
       << "Cannot move a lock onto an active lock: " << *this;
-  this->is_locked_ = other.is_locked_;
   this->range_ = std::move(other.range_);
   this->level_ = other.level_;
-  this->closure_runner_ = std::move(other.closure_runner_);
-  other.is_locked_ = false;
+  this->lock_released_callback_ = std::move(other.lock_released_callback_);
+  DCHECK(!other.is_locked());
   return *this;
 }
 
 void ScopeLock::Release() {
-  if (is_locked_) {
-    is_locked_ = false;
-    closure_runner_.RunAndReset();
-  }
+  if (is_locked())
+    std::move(lock_released_callback_).Run(level_, range_);
 }
 
 std::ostream& operator<<(std::ostream& out, const ScopeLock& lock) {
-  return out << "<ScopeLock>{is_locked_: " << lock.is_locked_
+  return out << "<ScopeLock>{is_locked_: " << lock.is_locked()
              << ", level_: " << lock.level_ << ", range_: " << lock.range_
              << "}";
 }
diff --git a/content/browser/indexed_db/scopes/scope_lock.h b/content/browser/indexed_db/scopes/scope_lock.h
index 9aa9c02..50a1f14 100644
--- a/content/browser/indexed_db/scopes/scope_lock.h
+++ b/content/browser/indexed_db/scopes/scope_lock.h
@@ -26,18 +26,23 @@
 // |is_locked()| result.
 class CONTENT_EXPORT ScopeLock {
  public:
+  using LockReleasedCallback =
+      base::OnceCallback<void(int level, ScopeLockRange range)>;
+
   ScopeLock();
   ~ScopeLock();
   ScopeLock(ScopeLock&&) noexcept;
-  // The |closure| is called when the lock is released, either by destruction
-  // of this object or by the |Released()| call. It will be called
+  // |lock_released_callback| is called when the lock is released, either by
+  // destruction of this object or by the |Released()| call. It will be called
   // synchronously on the sequence runner this lock is released on.
-  ScopeLock(ScopeLockRange range, int level, base::OnceClosure closure);
+  ScopeLock(ScopeLockRange range,
+            int level,
+            LockReleasedCallback lock_released_callback);
   // The lock in |other| is not released, and |this| must not be holding a lock.
   ScopeLock& operator=(ScopeLock&& other) noexcept;
 
   // Returns true if this object is holding a lock.
-  bool is_locked() const { return is_locked_; }
+  bool is_locked() const { return !lock_released_callback_.is_null(); }
 
   // Explicitly releases the granted lock.
   //
@@ -54,10 +59,11 @@
   friend bool operator==(const ScopeLock& x, const ScopeLock& y);
   friend bool operator<(const ScopeLock& x, const ScopeLock& y);
 
-  bool is_locked_ = false;
   ScopeLockRange range_;
   int level_ = 0;
-  base::ScopedClosureRunner closure_runner_;
+  // Closure to run when the lock is released. The lock is held when this is
+  // non-null.
+  LockReleasedCallback lock_released_callback_;
 
   DISALLOW_COPY_AND_ASSIGN(ScopeLock);
 };
diff --git a/content/browser/renderer_host/compositor_impl_android.cc b/content/browser/renderer_host/compositor_impl_android.cc
index 28c0276f0..9db86e1f 100644
--- a/content/browser/renderer_host/compositor_impl_android.cc
+++ b/content/browser/renderer_host/compositor_impl_android.cc
@@ -418,7 +418,6 @@
 
   cc::LayerTreeSettings settings;
   settings.use_zero_copy = true;
-  settings.enable_surface_synchronization = true;
   settings.build_hit_test_data = features::IsVizHitTestingSurfaceLayerEnabled();
 
   base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/content/browser/renderer_host/render_widget_host_view_android.cc
index 740c44b1..35c741f 100644
--- a/content/browser/renderer_host/render_widget_host_view_android.cc
+++ b/content/browser/renderer_host/render_widget_host_view_android.cc
@@ -2356,9 +2356,6 @@
 }
 
 void RenderWidgetHostViewAndroid::CreateOverscrollControllerIfPossible() {
-#if defined(DISABLE_OVERSCROLL)
-  return;
-#else
   // an OverscrollController is already set
   if (overscroll_controller_)
     return;
@@ -2394,7 +2391,6 @@
 
   overscroll_controller_ = std::make_unique<OverscrollControllerAndroid>(
       overscroll_refresh_handler, compositor, view_.GetDipScale());
-#endif
 }
 
 void RenderWidgetHostViewAndroid::SetOverscrollControllerForTesting(
diff --git a/content/browser/service_worker/service_worker_context_wrapper.cc b/content/browser/service_worker/service_worker_context_wrapper.cc
index a77719c5..b00b996 100644
--- a/content/browser/service_worker/service_worker_context_wrapper.cc
+++ b/content/browser/service_worker/service_worker_context_wrapper.cc
@@ -343,12 +343,16 @@
 void ServiceWorkerContextWrapper::OnRegistrationCompleted(
     int64_t registration_id,
     const GURL& scope) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   for (auto& observer : observer_list_)
     observer.OnRegistrationCompleted(scope);
 }
 
 void ServiceWorkerContextWrapper::OnRegistrationStored(int64_t registration_id,
                                                        const GURL& scope) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   for (auto& observer : observer_list_)
     observer.OnRegistrationStored(registration_id, scope);
 }
@@ -356,12 +360,16 @@
 void ServiceWorkerContextWrapper::OnReportConsoleMessage(
     int64_t version_id,
     const ConsoleMessage& message) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   for (auto& observer : observer_list_)
     observer.OnReportConsoleMessage(version_id, message);
 }
 
 void ServiceWorkerContextWrapper::OnNoControllees(int64_t version_id,
                                                   const GURL& scope) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   for (auto& observer : observer_list_)
     observer.OnNoControllees(version_id, scope);
 }
@@ -407,6 +415,8 @@
 }
 
 void ServiceWorkerContextWrapper::OnDeleteAndStartOver() {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   for (int version_id : running_service_workers_) {
     for (auto& observer : observer_list_) {
       observer.OnVersionRunningStatusChanged(this, version_id,
@@ -420,6 +430,8 @@
     int64_t version_id,
     const GURL& scope,
     ServiceWorkerVersion::Status status) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   if (status == ServiceWorkerVersion::Status::ACTIVATED) {
     for (auto& observer : observer_list_)
       observer.OnVersionActivated(version_id, scope);
@@ -431,11 +443,15 @@
 
 void ServiceWorkerContextWrapper::AddObserver(
     ServiceWorkerContextObserver* observer) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   observer_list_.AddObserver(observer);
 }
 
 void ServiceWorkerContextWrapper::RemoveObserver(
     ServiceWorkerContextObserver* observer) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   observer_list_.RemoveObserver(observer);
 }
 
@@ -1451,6 +1467,8 @@
 }
 
 ServiceWorkerContextWrapper::~ServiceWorkerContextWrapper() {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
   for (auto& observer : observer_list_)
     observer.OnDestruct(static_cast<ServiceWorkerContext*>(this));
 
diff --git a/content/browser/service_worker/service_worker_context_wrapper.h b/content/browser/service_worker/service_worker_context_wrapper.h
index cfa6143..d20ab19f 100644
--- a/content/browser/service_worker/service_worker_context_wrapper.h
+++ b/content/browser/service_worker/service_worker_context_wrapper.h
@@ -20,6 +20,7 @@
 #include "content/browser/service_worker/service_worker_context_core.h"
 #include "content/browser/service_worker/service_worker_context_core_observer.h"
 #include "content/common/content_export.h"
+#include "content/public/browser/browser_thread.h"
 #include "content/public/browser/global_routing_id.h"
 #include "content/public/browser/service_worker_context.h"
 #include "content/public/browser/service_worker_running_info.h"
@@ -55,7 +56,8 @@
 class CONTENT_EXPORT ServiceWorkerContextWrapper
     : public ServiceWorkerContext,
       public ServiceWorkerContextCoreObserver,
-      public base::RefCountedThreadSafe<ServiceWorkerContextWrapper> {
+      public base::RefCountedThreadSafe<ServiceWorkerContextWrapper,
+                                        BrowserThread::DeleteOnUIThread> {
  public:
   using StatusCallback =
       base::OnceCallback<void(blink::ServiceWorkerStatusCode)>;
@@ -326,9 +328,9 @@
 
  private:
   friend class BackgroundSyncManagerTest;
-  friend class base::RefCountedThreadSafe<ServiceWorkerContextWrapper>;
-  friend class EmbeddedWorkerTestHelper;
+  friend class base::DeleteHelper<ServiceWorkerContextWrapper>;
   friend class EmbeddedWorkerBrowserTest;
+  friend class EmbeddedWorkerTestHelper;
   friend class FakeServiceWorkerContextWrapper;
   friend class ServiceWorkerClientsApiBrowserTest;
   friend class ServiceWorkerInternalsUI;
@@ -336,6 +338,7 @@
   friend class ServiceWorkerProcessManager;
   friend class ServiceWorkerRequestHandler;
   friend class ServiceWorkerVersionBrowserTest;
+  friend struct BrowserThread::DeleteOnThread<BrowserThread::UI>;
 
   ~ServiceWorkerContextWrapper() override;
 
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 59226bfb..3d447fd 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -2824,14 +2824,39 @@
       static_cast<SessionStorageNamespaceImpl*>(session_storage_namespace);
   CHECK(session_storage_namespace_impl->IsFromContext(dom_storage_context));
 
-  if (delegate_ && delegate_->IsWebContentsCreationOverridden(
-                       source_site_instance, params.window_container_type,
-                       opener->GetLastCommittedURL(), params.frame_name,
-                       params.target_url)) {
-    return static_cast<WebContentsImpl*>(delegate_->CreateCustomWebContents(
-        opener, source_site_instance, is_new_browsing_instance,
-        opener->GetLastCommittedURL(), params.frame_name, params.target_url,
-        partition_id, session_storage_namespace));
+  // TODO(crbug.com/545684): Move these closer to usage after cleaning up the
+  // ShouldCreateWebContents() interface to not need the raw ID numbers.
+  int render_view_route_id = MSG_ROUTING_NONE;
+  int main_frame_route_id = MSG_ROUTING_NONE;
+  int main_frame_widget_route_id = MSG_ROUTING_NONE;
+  if (!is_new_browsing_instance) {
+    render_view_route_id = opener->GetProcess()->GetNextRoutingID();
+    main_frame_route_id = opener->GetProcess()->GetNextRoutingID();
+    main_frame_widget_route_id = opener->GetProcess()->GetNextRoutingID();
+  }
+
+  if (delegate_ &&
+      !delegate_->ShouldCreateWebContents(
+          this, opener, source_site_instance, render_view_route_id,
+          main_frame_route_id, main_frame_widget_route_id,
+          params.window_container_type, opener->GetLastCommittedURL(),
+          params.frame_name, params.target_url, partition_id,
+          session_storage_namespace)) {
+    // Note: even though we're not creating a WebContents here, it could have
+    // been created by the embedder so ensure that the RenderFrameHost is
+    // properly initialized.
+    // It's safe to only target the frame because the render process will not
+    // have a chance to create more frames at this point.
+    RenderFrameHostImpl* rfh =
+        RenderFrameHostImpl::FromID(render_process_id, main_frame_route_id);
+    if (rfh) {
+      // TODO(crbug.com/545684): It's super surprising that
+      // ShouldCreateWebContents() is actually a way to allow
+      // BackgroundWebContents to intercede and provide a completely different
+      // webcontents. Fix that API.
+      return rfh->delegate();
+    }
+    return nullptr;
   }
 
   bool renderer_started_hidden =
@@ -2853,11 +2878,9 @@
   // the opener's process will not given the routing IDs for the new
   // objects.
   create_params.renderer_initiated_creation = !is_new_browsing_instance;
-  create_params.routing_id = opener->GetProcess()->GetNextRoutingID();
-  create_params.main_frame_routing_id =
-      opener->GetProcess()->GetNextRoutingID();
-  create_params.main_frame_widget_routing_id =
-      opener->GetProcess()->GetNextRoutingID();
+  create_params.routing_id = render_view_route_id;
+  create_params.main_frame_routing_id = main_frame_route_id;
+  create_params.main_frame_widget_routing_id = main_frame_widget_route_id;
 
   std::unique_ptr<WebContentsImpl> new_contents;
   if (!is_guest) {
@@ -2901,9 +2924,8 @@
     // TODO(ajwong): This should be keyed off the RenderFrame routing id or the
     // FrameTreeNode id instead of the routing id of the Widget for the main
     // frame.  https://crbug.com/545684
-    DCHECK_NE(MSG_ROUTING_NONE, create_params.main_frame_routing_id);
-    GlobalRoutingID id(render_process_id,
-                       create_params.main_frame_widget_routing_id);
+    DCHECK_NE(MSG_ROUTING_NONE, main_frame_widget_route_id);
+    GlobalRoutingID id(render_process_id, main_frame_widget_route_id);
     pending_contents_[id] = std::move(new_contents);
     AddDestructionObserver(new_contents_impl);
   }
diff --git a/content/child/BUILD.gn b/content/child/BUILD.gn
index ddec826..04e2055 100644
--- a/content/child/BUILD.gn
+++ b/content/child/BUILD.gn
@@ -137,9 +137,6 @@
 
   if (is_android) {
     deps += [ "//third_party/android_ndk:cpu_features" ]
-    if (notouch_build) {
-      configs += [ ":notouch_config" ]
-    }
     sources -= [
       "webthemeengine_impl_default.cc",
       "webthemeengine_impl_default.h",
@@ -176,10 +173,6 @@
   ]
 }
 
-config("notouch_config") {
-  defines = [ "ENABLE_TOUCHLESS_UASTYLE_THEME" ]
-}
-
 # See comment at the top of //content/BUILD.gn for how this works.
 group("for_content_tests") {
   visibility = [ "//content/test/*" ]
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
index bd104ed..c729bed 100644
--- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc
@@ -250,9 +250,6 @@
                                                 false);
   }
 
-  if (base::FeatureList::IsEnabled(features::kRasterInducingScroll))
-    WebRuntimeFeatures::EnableRasterInducingScroll(true);
-
   WebRuntimeFeatures::EnableFeatureFromString(
       "AllowContentInitiatedDataUrlNavigations",
       base::FeatureList::IsEnabled(
@@ -345,6 +342,9 @@
   WebRuntimeFeatures::EnableUpdateHoverAtBeginFrame(
       base::FeatureList::IsEnabled(features::kUpdateHoverAtBeginFrame));
 
+  WebRuntimeFeatures::EnableForcedColors(
+      base::FeatureList::IsEnabled(features::kForcedColors));
+
   WebRuntimeFeatures::EnableFractionalScrollOffsets(
       base::FeatureList::IsEnabled(features::kFractionalScrollOffsets));
 
diff --git a/content/common/page_state.mojom b/content/common/page_state.mojom
index 771c9ad..e4f2abcd 100644
--- a/content/common/page_state.mojom
+++ b/content/common/page_state.mojom
@@ -4,6 +4,7 @@
 
 module content.history.mojom;
 
+// WARNING: Please read the comments below, before including other Mojo types.
 import "mojo/public/mojom/base/string16.mojom";
 import "mojo/public/mojom/base/time.mojom";
 import "services/network/public/mojom/referrer_policy.mojom";
@@ -13,23 +14,31 @@
 // This file contains the mojo IDL definitions for PageState and its constituent
 // parts. The resultant generated code is used to serialize and deserialize
 // PageState for the purpose of history restore.
-// When adding fields, assign your new field an explicity ordinal(@n) and
-// prefer to add fields to the end of the struct to simplify finding the
-// latest ordinal.
-// For backwards compatibility purposes, new fields must be tagged with a
-// [MinVersion=x] attribute; x is specified at the bottom of this comment
-// block.
-// You'll also need to read/write the new field's value when decoding and
-// encoding PageState, update PageStateSerializationTest to check that
-// your new field is preserved across serialization, and add a BackwardsCompat
-// test with associated serialized_vxx.dat file. Look for
-// DumpExpectedPageStateForBackwardsCompat in page_state_serialization_unittest
-// for how to do this.
+//
+// When adding fields:
+// - Assign your new field an explicit ordinal(@n) and prefer to add fields to
+//   the end of the struct to simplify finding the latest ordinal.
+// - For backwards compatibility purposes:
+//     - New fields must be tagged with a [MinVersion=x] attribute; x is
+//       specified at the bottom of this comment block.
+//     - Only types with frozen/unchanging Mojo serialization may be used;
+//       for example, |string| is okay, but |url.mojom.Origin| is not.
+//       (note that if serialization of any of the types used in PageState
+//       changes in a backwards-incompatible way then it should be caught by
+//       one of PageStateSerializationTest, BackwardsCompat_vXX tests).
+// - You'll also need to read/write the new field's value when decoding and
+//   encoding PageState, update PageStateSerializationTest to check that your
+//   new field is preserved across serialization, and add a BackwardsCompat
+//   test with associated serialized_vxx.dat file. Look for
+//   DumpExpectedPageStateForBackwardsCompat in
+//   page_state_serialization_unittest for how to do this.
+//
 // Don't remove, or change the type of fields; this will break
 // compatibility. If re-ordering fields, make sure to retain the original
 // ordinal value.
+//
 // Update the below value if your change introduces fields using it.
-// Next MinVersion: 2
+// Next MinVersion: 3
 
 // Next Ordinal: 4
 // FileSystemFile is no longer supported.
@@ -90,6 +99,7 @@
   [MinVersion=1] uint64 scroll_anchor_simhash@5 = 0;
 };
 
+// Next Ordinal: 13
 struct FrameState {
   mojo_base.mojom.String16? url_string@0;
   mojo_base.mojom.String16? referrer@1;
@@ -103,6 +113,7 @@
   network.mojom.ReferrerPolicy referrer_policy@9;
   HttpBody http_body@10;
   array<FrameState> children@11;
+  [MinVersion=2] string? initiator_origin@12;
 };
 
 // Next Ordinal: 2
diff --git a/content/common/page_state_serialization.cc b/content/common/page_state_serialization.cc
index 2e0c0c6..c9da266f 100644
--- a/content/common/page_state_serialization.cc
+++ b/content/common/page_state_serialization.cc
@@ -205,6 +205,7 @@
 // 25: Limit the length of unique names: https://crbug.com/626202
 // 26: Switch to mojo-based serialization.
 // 27: Add serialized scroll anchor to FrameState.
+// 28: Add initiator origin to FrameState.
 // NOTE: If the version is -1, then the pickle contains only a URL string.
 // See ReadPageState.
 //
@@ -212,7 +213,7 @@
 // NOTE: When changing the version, please add a backwards compatibility test.
 // See PageStateSerializationTest.DumpExpectedPageStateForBackwardsCompat for
 // instructions on how to generate the new test case.
-const int kCurrentVersion = 27;
+const int kCurrentVersion = 28;
 
 // A bunch of convenience functions to write to/read from SerializeObjects.  The
 // de-serializers assume the input data will be in the correct format and fall
@@ -773,6 +774,8 @@
                      history::mojom::FrameState* frame) {
   frame->url_string = state.url_string;
   frame->referrer = state.referrer;
+  if (state.initiator_origin.has_value())
+    frame->initiator_origin = state.initiator_origin.value().Serialize();
   frame->target = state.target;
   frame->state_object = state.state_object;
 
@@ -823,6 +826,11 @@
                     ExplodedFrameState* state) {
   state->url_string = frame->url_string;
   state->referrer = frame->referrer;
+  if (frame->initiator_origin.has_value()) {
+    state->initiator_origin =
+        url::Origin::Create(GURL(frame->initiator_origin.value()));
+  }
+
   state->target = frame->target;
   state->state_object = frame->state_object;
 
diff --git a/content/common/page_state_serialization.h b/content/common/page_state_serialization.h
index bed9ba7..c61a6c3 100644
--- a/content/common/page_state_serialization.h
+++ b/content/common/page_state_serialization.h
@@ -21,6 +21,7 @@
 #include "ui/gfx/geometry/point.h"
 #include "ui/gfx/geometry/point_f.h"
 #include "url/gurl.h"
+#include "url/origin.h"
 
 namespace content {
 
@@ -38,6 +39,7 @@
 struct CONTENT_EXPORT ExplodedFrameState {
   base::Optional<base::string16> url_string;
   base::Optional<base::string16> referrer;
+  base::Optional<url::Origin> initiator_origin;
   base::Optional<base::string16> target;
   base::Optional<base::string16> state_object;
   std::vector<base::Optional<base::string16>> document_state;
diff --git a/content/common/page_state_serialization_unittest.cc b/content/common/page_state_serialization_unittest.cc
index 80cd7d6..251ef06 100644
--- a/content/common/page_state_serialization_unittest.cc
+++ b/content/common/page_state_serialization_unittest.cc
@@ -75,6 +75,7 @@
   EXPECT_EQ(expected.url_string, actual.url_string);
   EXPECT_EQ(expected.referrer, actual.referrer);
   EXPECT_EQ(expected.referrer_policy, actual.referrer_policy);
+  EXPECT_EQ(expected.initiator_origin, actual.initiator_origin);
   EXPECT_EQ(expected.target, actual.target);
   EXPECT_EQ(expected.state_object, actual.state_object);
   ExpectEquality(expected.document_state, actual.document_state);
@@ -145,9 +146,30 @@
     referenced_files->emplace_back(path.AsUTF16Unsafe());
   }
 
-  void PopulateFrameStateForBackwardsCompatTest(
-      ExplodedFrameState* frame_state,
-      bool is_child) {
+  void PopulateFrameStateForBackwardsCompatTest(ExplodedFrameState* frame_state,
+                                                bool is_child,
+                                                int version) {
+    if (version < 28) {
+      // Older versions didn't cover |initiator_origin| -  we expect that
+      // deserialization will set it to the default, null value.
+      frame_state->initiator_origin = base::nullopt;
+    } else {
+      frame_state->initiator_origin =
+          url::Origin::Create(GURL("https://initiator.example.com"));
+    }
+
+    // Some of the test values below are the same as the default value that
+    // would be deserialized when reading old versions.  This is undesirable,
+    // because it means that the tests do not fully test that a non-default
+    // value is correctly deserialized.  Unfortunately this is tricky to change,
+    // because these default/old test values are baked into serialized_XX.dat
+    // test files (which we should be wary of modifying, since they are supposed
+    // to represent set-in-stone old serialization format).
+    //
+    // When introducing new fields, please test a non-default value, starting
+    // with the |version| where the new field is being introduced (set the
+    // |version|-dependent test value above - next to and similarly to how
+    // |initiator_origin| is handled).
     frame_state->url_string = base::UTF8ToUTF16("http://chromium.org/");
     frame_state->referrer = base::UTF8ToUTF16("http://google.com/");
     frame_state->referrer_policy = network::mojom::ReferrerPolicy::kDefault;
@@ -189,14 +211,15 @@
                                                        test_body2.size());
 
       ExplodedFrameState child_state;
-      PopulateFrameStateForBackwardsCompatTest(&child_state, true);
+      PopulateFrameStateForBackwardsCompatTest(&child_state, true, version);
       frame_state->children.push_back(child_state);
     }
   }
 
-  void PopulatePageStateForBackwardsCompatTest(ExplodedPageState* page_state) {
+  void PopulatePageStateForBackwardsCompatTest(ExplodedPageState* page_state,
+                                               int version) {
     page_state->referenced_files.push_back(base::UTF8ToUTF16("file.txt"));
-    PopulateFrameStateForBackwardsCompatTest(&page_state->top, false);
+    PopulateFrameStateForBackwardsCompatTest(&page_state->top, false, version);
   }
 
   void ReadBackwardsCompatPageState(const std::string& suffix,
@@ -251,7 +274,7 @@
 
     ExplodedPageState decoded_state;
     ExplodedPageState expected_state;
-    PopulatePageStateForBackwardsCompatTest(&expected_state);
+    PopulatePageStateForBackwardsCompatTest(&expected_state, version);
     ReadBackwardsCompatPageState(suffix, version, &decoded_state);
 
     ExpectEquality(expected_state, decoded_state);
@@ -390,7 +413,7 @@
 // test compatibility and migration.
 TEST_F(PageStateSerializationTest, LegacyEncodePageStateFrozen) {
   ExplodedPageState actual_state;
-  PopulatePageStateForBackwardsCompatTest(&actual_state);
+  PopulatePageStateForBackwardsCompatTest(&actual_state, 25);
 
   std::string actual_encoded_state;
   LegacyEncodePageStateForTesting(actual_state, 25, &actual_encoded_state);
@@ -449,8 +472,11 @@
 // revision where page_state_serialization.cc:kCurrentVersion == 23.
 #if 0
 TEST_F(PageStateSerializationTest, DumpExpectedPageStateForBackwardsCompat) {
+  // Populate |state| with test data suitable for testing the current (i.e. the
+  // latest) version of serialization.  This is accomplished by asking for test
+  // data for version 9999 - a future, hypothetical version number.
   ExplodedPageState state;
-  PopulatePageStateForBackwardsCompatTest(&state);
+  PopulatePageStateForBackwardsCompatTest(&state, 9999);
 
   std::string encoded;
   EncodePageState(state, &encoded);
@@ -541,6 +567,10 @@
   TestBackwardsCompat(27);
 }
 
+TEST_F(PageStateSerializationTest, BackwardsCompat_v28) {
+  TestBackwardsCompat(28);
+}
+
 // Add your new backwards compat test for future versions *above* this
 // comment block; field-specific tests go *below* this comment block.
 // Any field additions require a new version and backcompat test; only fields
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
index bb1c14d..0303af7 100644
--- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc
@@ -1007,4 +1007,8 @@
     const url::Origin& requesting_origin,
     const url::Origin& embedding_origin) {}
 
+bool ContentBrowserClient::ShouldLoadExtraIcuDataFile() {
+  return false;
+}
+
 }  // namespace content
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index 91150d3..5d80887 100644
--- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h
@@ -1682,6 +1682,10 @@
   virtual void BlockBluetoothScanning(content::BrowserContext* browser_context,
                                       const url::Origin& requesting_origin,
                                       const url::Origin& embedding_origin);
+
+  // Returns true if the extra ICU data file is available and should be used to
+  // initialize ICU.
+  virtual bool ShouldLoadExtraIcuDataFile();
 };
 
 }  // namespace content
diff --git a/content/public/browser/navigation_controller.h b/content/public/browser/navigation_controller.h
index df7edc38..8cf3e33 100644
--- a/content/public/browser/navigation_controller.h
+++ b/content/public/browser/navigation_controller.h
@@ -374,13 +374,17 @@
   // explicitly requested using SetNeedsReload().
   virtual void LoadIfNecessary() = 0;
 
-  // Navigates directly to an error page, with |error_page_html| as the
-  // contents, and |url| as the url. |error| is the code that will be used
-  // when triggering the error page.
-  virtual void LoadErrorPage(RenderFrameHost* render_frame_host,
-                             const GURL& url,
-                             const std::string& error_page_html,
-                             net::Error error) = 0;
+  // Navigates directly to an error page in response to an event on the last
+  // committed page (e.g., triggered by a subresource), with |error_page_html|
+  // as the contents and |url| as the URL.
+
+  // The error page will create a NavigationEntry that temporarily replaces the
+  // original page's entry. The original entry will be put back into the entry
+  // list after any other navigation.
+  virtual void LoadPostCommitErrorPage(RenderFrameHost* render_frame_host,
+                                       const GURL& url,
+                                       const std::string& error_page_html,
+                                       net::Error error) = 0;
 
   // Renavigation --------------------------------------------------------------
 
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
index 1f046dd..d868e5cc 100644
--- a/content/public/browser/web_contents_delegate.cc
+++ b/content/public/browser/web_contents_delegate.cc
@@ -119,25 +119,20 @@
   return true;
 }
 
-bool WebContentsDelegate::IsWebContentsCreationOverridden(
-    SiteInstance* source_site_instance,
-    content::mojom::WindowContainerType window_container_type,
-    const GURL& opener_url,
-    const std::string& frame_name,
-    const GURL& target_url) {
-  return false;
-}
-
-WebContents* WebContentsDelegate::CreateCustomWebContents(
+bool WebContentsDelegate::ShouldCreateWebContents(
+    WebContents* web_contents,
     RenderFrameHost* opener,
     SiteInstance* source_site_instance,
-    bool is_new_browsing_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
+    content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
     const GURL& target_url,
     const std::string& partition_id,
     SessionStorageNamespace* session_storage_namespace) {
-  return nullptr;
+  return true;
 }
 
 JavaScriptDialogManager* WebContentsDelegate::GetJavaScriptDialogManager(
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
index dd9fcc8..b0f8fe9 100644
--- a/content/public/browser/web_contents_delegate.h
+++ b/content/public/browser/web_contents_delegate.h
@@ -57,6 +57,7 @@
 class FileSelectListener;
 class JavaScriptDialogManager;
 class RenderFrameHost;
+class RenderProcessHost;
 class RenderWidgetHost;
 class SessionStorageNamespace;
 class SiteInstance;
@@ -297,30 +298,35 @@
   virtual bool OnGoToEntryOffset(int offset);
 
   // Allows delegate to control whether a new WebContents can be created by
-  // the WebContents itself.
+  // |web_contents|.
   //
-  // If an delegate returns true, it can optionally also override
-  // CreateCustomWebContents() below to provide their own WebContents.
-  virtual bool IsWebContentsCreationOverridden(
-      SiteInstance* source_site_instance,
-      content::mojom::WindowContainerType window_container_type,
-      const GURL& opener_url,
-      const std::string& frame_name,
-      const GURL& target_url);
-
-  // Allow delegate to creates a custom WebContents when
-  // WebContents::CreateNewWindow() is called. This function is only called
-  // when IsWebContentsCreationOverridden() returns true.
+  // The route ID parameters passed to this method are associated with the
+  // |source_site_instance|'s RenderProcessHost. They may also be
+  // MSG_ROUTING_NONE. If they are valid, they correspond to a trio of
+  // RenderView, RenderFrame, and RenderWidget objects that have been created in
+  // the renderer, but not yet assigned a WebContents, RenderViewHost,
+  // RenderFrameHost, or RenderWidgetHost.
   //
-  // In general, a delegate should return a pointer to a created WebContents
-  // so that the opener can be given a references to it as appropriate.
-  // Returning nullptr also makes sense if the delegate wishes to suppress
-  // all window creation, or if the delegate wants to ensure the opener
-  // cannot get a reference effectively creating a new browsing instance.
-  virtual WebContents* CreateCustomWebContents(
+  // The return value is interpreted as follows:
+  //
+  //   Return true: |web_contents| should create a WebContents.
+  //   Return false: |web_contents| should not create a WebContents. The
+  //       provisionally-created RenderView (if it exists) in the renderer
+  //       process will be destroyed, UNLESS the delegate, during this method,
+  //       itself creates a WebContents using |source_site_instance|,
+  //       |route_id|, |main_frame_route_id|, and |main_frame_widget_route_id|
+  //       as creation parameters. If this happens, the delegate assumes
+  //       ownership of the corresponding RenderView, etc. |web_contents| will
+  //       detect that this has happened by looking for the existence of a
+  //       RenderViewHost in |source_site_instance| with |route_id|.
+  virtual bool ShouldCreateWebContents(
+      WebContents* web_contents,
       RenderFrameHost* opener,
       SiteInstance* source_site_instance,
-      bool is_new_browsing_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
+      content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
       const GURL& target_url,
diff --git a/content/public/common/content_descriptors.h b/content/public/common/content_descriptors.h
index bccbe89..459d5c68 100644
--- a/content/public/common/content_descriptors.h
+++ b/content/public/common/content_descriptors.h
@@ -15,6 +15,7 @@
 #if defined(OS_ANDROID)
   kAndroidPropertyDescriptor = service_manager::kFirstEmbedderDescriptor,
   kAndroidICUDataDescriptor,
+  kAndroidICUExtraDataDescriptor,
 #endif
 
   // Reserves 100 to 199 for dynamically generated IDs.
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
index 5ca2dba5..3a065d7 100644
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -165,6 +165,10 @@
 const base::Feature kFontSrcLocalMatching{"FontSrcLocalMatching",
                                           base::FEATURE_ENABLED_BY_DEFAULT};
 
+// Enables forced colors mode for web content.
+const base::Feature kForcedColors{"ForcedColors",
+                                  base::FEATURE_DISABLED_BY_DEFAULT};
+
 // Enables scrollers inside Blink to store scroll offsets in fractional
 // floating-point numbers rather than truncating to integers.
 const base::Feature kFractionalScrollOffsets{"FractionalScrollOffsets",
@@ -397,10 +401,6 @@
 const base::Feature kProactivelySwapBrowsingInstance{
     "ProactivelySwapBrowsingInstance", base::FEATURE_DISABLED_BY_DEFAULT};
 
-// Enable raster-inducing scroll.
-const base::Feature kRasterInducingScroll{"RasterInducingScroll",
-                                          base::FEATURE_DISABLED_BY_DEFAULT};
-
 // Reduce the amount of information in the default 'referer' header for
 // cross-origin requests.
 const base::Feature kReducedReferrerGranularity{
diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h
index 8874f58..2dda53e 100644
--- a/content/public/common/content_features.h
+++ b/content/public/common/content_features.h
@@ -47,6 +47,7 @@
     kExtraSafelistedRequestHeadersForOutOfBlinkCors;
 CONTENT_EXPORT extern const base::Feature kFeaturePolicyForSandbox;
 CONTENT_EXPORT extern const base::Feature kFontSrcLocalMatching;
+CONTENT_EXPORT extern const base::Feature kForcedColors;
 CONTENT_EXPORT extern const base::Feature kFractionalScrollOffsets;
 CONTENT_EXPORT extern const base::Feature kGuestViewCrossProcessFrames;
 CONTENT_EXPORT extern const base::Feature kHistoryManipulationIntervention;
@@ -91,7 +92,6 @@
     kProcessSharingWithDefaultSiteInstances;
 CONTENT_EXPORT extern const base::Feature
     kProcessSharingWithStrictSiteInstances;
-CONTENT_EXPORT extern const base::Feature kRasterInducingScroll;
 CONTENT_EXPORT extern const base::Feature kReducedReferrerGranularity;
 CONTENT_EXPORT extern const base::Feature kReloadHiddenTabsWithCrashedSubframes;
 CONTENT_EXPORT extern const base::Feature kRenderDocumentForMainFrame;
diff --git a/content/renderer/gpu_benchmarking_extension.cc b/content/renderer/gpu_benchmarking_extension.cc
index d0448b1..fecd4eb84 100644
--- a/content/renderer/gpu_benchmarking_extension.cc
+++ b/content/renderer/gpu_benchmarking_extension.cc
@@ -187,40 +187,16 @@
   DISALLOW_COPY_AND_ASSIGN(CallbackAndContext);
 };
 
+// This class is a mostly unnecessary helper class. It extracts some commonly
+// used objects from RenderFrameImpl.
 class GpuBenchmarkingContext {
  public:
-  GpuBenchmarkingContext() = default;
-
-  bool Init(bool init_compositor) {
-    web_frame_ = WebLocalFrame::FrameForCurrentContext();
-    if (!web_frame_)
-      return false;
-
+  explicit GpuBenchmarkingContext(RenderFrameImpl* frame) {
+    web_frame_ = frame->GetWebFrame();
     web_view_ = web_frame_->View();
-    if (!web_view_) {
-      web_frame_ = nullptr;
-      return false;
-    }
-
     render_view_impl_ = RenderViewImpl::FromWebView(web_view_);
-    if (!render_view_impl_) {
-      web_frame_ = nullptr;
-      web_view_ = nullptr;
-      return false;
-    }
-
-    if (!init_compositor)
-      return true;
-
-    layer_tree_host_ = render_view_impl_->GetWidget()->layer_tree_host();
-    if (!layer_tree_host_) {
-      web_frame_ = nullptr;
-      web_view_ = nullptr;
-      render_view_impl_ = nullptr;
-      return false;
-    }
-
-    return true;
+    render_widget_ = frame->GetLocalRootRenderWidget();
+    layer_tree_host_ = render_widget_->layer_tree_host();
   }
 
   WebLocalFrame* web_frame() const {
@@ -235,6 +211,7 @@
     DCHECK(render_view_impl_ != nullptr);
     return render_view_impl_;
   }
+  RenderWidget* render_widget() const { return render_widget_; }
   cc::LayerTreeHost* layer_tree_host() const {
     DCHECK(layer_tree_host_ != nullptr);
     return layer_tree_host_;
@@ -244,6 +221,7 @@
   WebLocalFrame* web_frame_ = nullptr;
   WebView* web_view_ = nullptr;
   RenderViewImpl* render_view_impl_ = nullptr;
+  RenderWidget* render_widget_ = nullptr;
   cc::LayerTreeHost* layer_tree_host_ = nullptr;
 
   DISALLOW_COPY_AND_ASSIGN(GpuBenchmarkingContext);
@@ -287,7 +265,7 @@
                              gin::Arguments* args,
                              const gfx::Point& point,
                              const std::string& message) {
-  gfx::Rect rect = context->render_view_impl()->GetWidget()->ViewRect();
+  gfx::Rect rect = context->render_widget()->ViewRect();
   rect -= rect.OffsetFromOrigin();
 
   // If the bounds are not available here, as is the case with an OOPIF,
@@ -483,10 +461,9 @@
 
 static void PrintDocumentTofile(v8::Isolate* isolate,
                                 const std::string& filename,
-                                sk_sp<SkDocument> (*make_doc)(SkWStream*)) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return;
+                                sk_sp<SkDocument> (*make_doc)(SkWStream*),
+                                RenderFrameImpl* render_frame) {
+  GpuBenchmarkingContext context(render_frame);
 
   base::FilePath path = base::FilePath::FromUTF8Unsafe(filename);
   if (!base::PathIsWritable(path.DirName())) {
@@ -630,18 +607,12 @@
 }
 
 void GpuBenchmarking::SetNeedsDisplayOnAllLayers() {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return;
-
+  GpuBenchmarkingContext context(render_frame_);
   context.layer_tree_host()->SetNeedsDisplayOnAllLayers();
 }
 
 void GpuBenchmarking::SetRasterizeOnlyVisibleContent() {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return;
-
+  GpuBenchmarkingContext context(render_frame_);
   cc::LayerTreeDebugState current = context.layer_tree_host()->GetDebugState();
   current.rasterize_only_visible_content = true;
   context.layer_tree_host()->SetDebugState(current);
@@ -654,13 +625,14 @@
 }  // namespace
 void GpuBenchmarking::PrintPagesToSkPictures(v8::Isolate* isolate,
                                              const std::string& filename) {
-  PrintDocumentTofile(isolate, filename, &make_multipicturedocument);
+  PrintDocumentTofile(isolate, filename, &make_multipicturedocument,
+                      render_frame_);
 }
 
 void GpuBenchmarking::PrintPagesToXPS(v8::Isolate* isolate,
                                       const std::string& filename) {
 #if defined(OS_WIN) && !defined(NDEBUG)
-  PrintDocumentTofile(isolate, filename, &MakeXPSDocument);
+  PrintDocumentTofile(isolate, filename, &MakeXPSDocument, render_frame_);
 #else
   std::string msg("PrintPagesToXPS is unsupported.");
   isolate->ThrowException(v8::Exception::Error(
@@ -672,9 +644,7 @@
 
 void GpuBenchmarking::PrintToSkPicture(v8::Isolate* isolate,
                                        const std::string& dirname) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return;
+  GpuBenchmarkingContext context(render_frame_);
 
   const cc::Layer* root_layer = context.layer_tree_host()->root_layer();
   if (!root_layer)
@@ -707,11 +677,8 @@
 }
 
 bool GpuBenchmarking::SmoothScrollBy(gin::Arguments* args) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return false;
-
-  blink::WebRect rect = context.render_view_impl()->GetWidget()->ViewRect();
+  GpuBenchmarkingContext context(render_frame_);
+  blink::WebRect rect = context.render_widget()->ViewRect();
 
   float pixels_to_scroll = 0;
   v8::Local<v8::Function> callback;
@@ -751,10 +718,7 @@
 }
 
 bool GpuBenchmarking::SmoothDrag(gin::Arguments* args) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return false;
-
+  GpuBenchmarkingContext context(render_frame_);
   float start_x;
   float start_y;
   float end_x;
@@ -778,11 +742,8 @@
 }
 
 bool GpuBenchmarking::Swipe(gin::Arguments* args) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return false;
-
-  blink::WebRect rect = context.render_view_impl()->GetWidget()->ViewRect();
+  GpuBenchmarkingContext context(render_frame_);
+  blink::WebRect rect = context.render_widget()->ViewRect();
 
   std::string direction = "up";
   float pixels_to_scroll = 0;
@@ -819,12 +780,8 @@
 }
 
 bool GpuBenchmarking::ScrollBounce(gin::Arguments* args) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return false;
-
-  blink::WebRect content_rect =
-      context.render_view_impl()->GetWidget()->ViewRect();
+  GpuBenchmarkingContext context(render_frame_);
+  blink::WebRect content_rect = context.render_widget()->ViewRect();
 
   std::string direction = "down";
   float distance_length = 0;
@@ -891,9 +848,7 @@
 }
 
 bool GpuBenchmarking::PinchBy(gin::Arguments* args) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return false;
+  GpuBenchmarkingContext context(render_frame_);
 
   float scale_factor;
   float anchor_x;
@@ -954,23 +909,17 @@
 }
 
 float GpuBenchmarking::PageScaleFactor() {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return 0.0;
+  GpuBenchmarkingContext context(render_frame_);
   return context.web_view()->PageScaleFactor();
 }
 
 void GpuBenchmarking::SetPageScaleFactor(float scale) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return;
+  GpuBenchmarkingContext context(render_frame_);
   context.web_view()->SetPageScaleFactor(scale);
 }
 
 void GpuBenchmarking::SetBrowserControlsShown(bool show) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return;
+  GpuBenchmarkingContext context(render_frame_);
   context.layer_tree_host()->UpdateBrowserControlsState(
       cc::BrowserControlsState::kBoth,
       show ? cc::BrowserControlsState::kShown
@@ -979,49 +928,39 @@
 }
 
 float GpuBenchmarking::VisualViewportY() {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return 0.0;
+  GpuBenchmarkingContext context(render_frame_);
   float y = context.web_view()->VisualViewportOffset().y;
   blink::WebRect rect(0, y, 0, 0);
-  context.render_view_impl()->GetWidget()->ConvertViewportToWindow(&rect);
+  context.render_widget()->ConvertViewportToWindow(&rect);
   return rect.y;
 }
 
 float GpuBenchmarking::VisualViewportX() {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return 0.0;
+  GpuBenchmarkingContext context(render_frame_);
   float x = context.web_view()->VisualViewportOffset().x;
   blink::WebRect rect(x, 0, 0, 0);
-  context.render_view_impl()->GetWidget()->ConvertViewportToWindow(&rect);
+  context.render_widget()->ConvertViewportToWindow(&rect);
   return rect.x;
 }
 
 float GpuBenchmarking::VisualViewportHeight() {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return 0.0;
+  GpuBenchmarkingContext context(render_frame_);
   float height = context.web_view()->VisualViewportSize().height;
   blink::WebRect rect(0, 0, 0, height);
-  context.render_view_impl()->GetWidget()->ConvertViewportToWindow(&rect);
+  context.render_widget()->ConvertViewportToWindow(&rect);
   return rect.height;
 }
 
 float GpuBenchmarking::VisualViewportWidth() {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return 0.0;
+  GpuBenchmarkingContext context(render_frame_);
   float width = context.web_view()->VisualViewportSize().width;
   blink::WebRect rect(0, 0, width, 0);
-  context.render_view_impl()->GetWidget()->ConvertViewportToWindow(&rect);
+  context.render_widget()->ConvertViewportToWindow(&rect);
   return rect.width;
 }
 
 bool GpuBenchmarking::Tap(gin::Arguments* args) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return false;
+  GpuBenchmarkingContext context(render_frame_);
 
   float position_x;
   float position_y;
@@ -1066,9 +1005,7 @@
 }
 
 bool GpuBenchmarking::PointerActionSequence(gin::Arguments* args) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(false))
-    return false;
+  GpuBenchmarkingContext context(render_frame_);
 
   v8::Local<v8::Function> callback;
 
@@ -1122,9 +1059,7 @@
 }
 
 int GpuBenchmarking::RunMicroBenchmark(gin::Arguments* args) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return 0;
+  GpuBenchmarkingContext context(render_frame_);
 
   std::string name;
   v8::Local<v8::Function> callback;
@@ -1152,9 +1087,7 @@
 bool GpuBenchmarking::SendMessageToMicroBenchmark(
     int id,
     v8::Local<v8::Object> message) {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return false;
+  GpuBenchmarkingContext context(render_frame_);
 
   v8::Local<v8::Context> v8_context =
       context.web_frame()->MainWorldScriptContext();
@@ -1239,9 +1172,7 @@
 }
 
 void GpuBenchmarking::Freeze() {
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return;
+  GpuBenchmarkingContext context(render_frame_);
   // TODO(fmeawad): Instead of forcing a visibility change, only allow
   // freezing a page if it was already hidden.
   context.web_view()->SetIsHidden(/*hidden=*/true,
@@ -1253,16 +1184,11 @@
   v8::Local<v8::Function> callback;
   if (!GetArg(args, &callback))
     return false;
-  if (!render_frame_)
-    return false;
-  RenderWidget* render_widget = render_frame_->GetLocalRootRenderWidget();
-  GpuBenchmarkingContext context;
-  if (!context.Init(true))
-    return false;
+  GpuBenchmarkingContext context(render_frame_);
 
   auto callback_and_context = base::MakeRefCounted<CallbackAndContext>(
       args->isolate(), callback, context.web_frame()->MainWorldScriptContext());
-  render_widget->NotifySwapTime(base::BindOnce(
+  context.render_widget()->NotifySwapTime(base::BindOnce(
       &OnSwapCompletedHelper, base::RetainedRef(callback_and_context)));
   return true;
 }
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index c2973aa..cc6e0f1 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -1623,10 +1623,6 @@
 
   // We now have a WebLocalFrame for the new frame. The next step is to set
   // up a RenderWidget for it, if it is needed.
-  //
-  // If there is no widget routing id, then the new frame is not a local root,
-  // and does not need a RenderWidget. In that case we'll do nothing. Otherwise
-  // it does.
   if (is_main_frame) {
     // For a main frame, we use the RenderWidget already attached to the
     // RenderView (this is being changed by https://crbug.com/419087).
@@ -1640,6 +1636,12 @@
     DCHECK(widget_params);
     DCHECK_NE(widget_params->routing_id, MSG_ROUTING_NONE);
 
+    // We revive the undead main frame RenderWidget at the same time we would
+    // create the RenderWidget if the RenderFrame owned it instead of having the
+    // RenderWidget live for eternity on the RenderView (after setting up the
+    // WebFrameWidget since that would be part of creating the RenderWidget).
+    render_view->ReviveUndeadMainFrameRenderWidget();
+
     // The RenderViewImpl and its RenderWidget already exist by the time we
     // get here (we get them from the RenderFrameProxy).
     // TODO(crbug.com/419087): We probably want to create the RenderWidget
@@ -1652,11 +1654,6 @@
     auto* web_frame_widget = blink::WebFrameWidget::CreateForMainFrame(
         render_view->GetWidget(), web_frame);
     render_view->AttachWebFrameWidget(web_frame_widget);
-    // We revive the undead main frame RenderWidget at the same time we would
-    // create the RenderWidget if the RenderFrame owned it instead of having the
-    // RenderWidget live for eternity on the RenderView (after setting up the
-    // WebFrameWidget since that would be part of creating the RenderWidget).
-    render_widget->SetIsUndead(false);
 
     // Note that we do *not* call WebViewImpl's DidAttachLocalMainFrame() here
     // yet because this frame is provisional and not attached to the Page yet.
@@ -4502,12 +4499,12 @@
   if (is_main_frame_) {
     DCHECK(!owned_render_widget_);
     // TODO(crbug.com/419087): The RenderWidget for the main frame can't be
-    // closed/destroyed since it is part of the RenderView. So instead it is
-    // swapped out, which we would be in the middle of here. So instead of
-    // closing the RenderWidget we mark it undead and drop the WebFrameWidget in
-    // order to also drop its reference on the WebLocalFrameImpl for this
-    // detaching frame.
-    render_widget_->SetIsUndead(true);
+    // closed/destroyed since there is no way to recreate it without also
+    // fixing the lifetimes of the related browser side objects. To simulate
+    // this "swap out", the pointer is moved off to the side until it is
+    // swapped back in. The renderer is then told that the WebFrameWidget is
+    // dropped which should remove all reference to this object.
+    render_view_->MakeMainFrameRenderWidgetUndead();
     render_view_->DetachWebFrameWidget();
   } else if (render_widget_) {
     DCHECK(owned_render_widget_);
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
index 1702eee..b0a7f8037 100644
--- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc
@@ -304,6 +304,10 @@
                                      bd::CrashKeySize::Size32);
       bd::SetCrashKeyString(code_space_firstpage_address, value);
       break;
+    default:
+      // Doing nothing for new keys is a valid option. Having this case allows
+      // to introduce new CrashKeyId's without triggering a build break.
+      break;
   }
 }
 
diff --git a/content/renderer/render_view_browsertest.cc b/content/renderer/render_view_browsertest.cc
index 3b55957..dbd2244 100644
--- a/content/renderer/render_view_browsertest.cc
+++ b/content/renderer/render_view_browsertest.cc
@@ -1079,6 +1079,11 @@
 
   LoadHTML("Hello world!");
 
+  // Early grab testing values as the main-frame widget becomes inaccessible
+  // when it swaps out.
+  VisualProperties test_visual_properties =
+      MakeVisualPropertiesWithDeviceScaleFactor(device_scale);
+
   // Swap the main frame out after which it should become a WebRemoteFrame.
   content::FrameReplicationState replication_state =
       ReconstructReplicationStateForTesting(frame());
@@ -1106,9 +1111,8 @@
   // The new frame is initialized with |device_scale| as the device scale
   // factor.
   mojom::CreateFrameWidgetParams widget_params;
-  widget_params.routing_id = view()->GetWidget()->routing_id();
-  widget_params.visual_properties =
-      MakeVisualPropertiesWithDeviceScaleFactor(device_scale);
+  widget_params.routing_id = kProxyRoutingId + 2;
+  widget_params.visual_properties = test_visual_properties;
   RenderFrameImpl::CreateFrame(
       routing_id, std::move(stub_interface_provider),
       std::move(stub_document_interface_broker_content),
diff --git a/content/renderer/render_view_browsertest_mac.mm b/content/renderer/render_view_browsertest_mac.mm
index 3be4c18..947e19d1 100644
--- a/content/renderer/render_view_browsertest_mac.mm
+++ b/content/renderer/render_view_browsertest_mac.mm
@@ -147,40 +147,4 @@
   EXPECT_EQ(kArrowUpNoScroll, output);
 }
 
-// TODO(ekaramad): This test could be removed once we do not send irrelevant
-// IPCs from browser during the time RenderViewImpl is swapped out
-// (https://crbug.com/669219).
-// This test verfies that when RenderViewImpl is swapped out, handling IPCs
-// which need a WebFrameWidget will not lead to a crash.
-TEST_F(RenderViewTest, HandleIPCsInSwappedOutState) {
-  LoadHTML("<input/>");
-
-  // We have a WebFrameWidget on the root RenderWidget while a local main frame
-  // is attached.
-  EXPECT_TRUE(GetWebWidget());
-
-  // Swap out the main frame so that the frame widget is destroyed.
-  auto* view = static_cast<RenderViewImpl*>(view_);
-  auto* main_frame = view->GetMainRenderFrame();
-  main_frame->OnMessageReceived(UnfreezableFrameMsg_SwapOut(
-      main_frame->GetRoutingID(), 123, true, FrameReplicationState()));
-
-  // We no longer have a frame widget.
-  EXPECT_FALSE(GetWebWidget());
-
-  int routing_id = view->GetRoutingID();
-  // Now simulate some TextInputClientMac IPCs. These will be handled by
-  // RenderWidget which forwards them to the TextInputClientObserver
-  using Range = gfx::Range;
-  using Point = gfx::Point;
-  view->GetWidget()->OnMessageReceived(
-      TextInputClientMsg_CharacterIndexForPoint(routing_id, Point()));
-  view->GetWidget()->OnMessageReceived(
-      TextInputClientMsg_FirstRectForCharacterRange(routing_id, Range()));
-  view->GetWidget()->OnMessageReceived(
-      TextInputClientMsg_StringForRange(routing_id, Range()));
-  view->GetWidget()->OnMessageReceived(
-      TextInputClientMsg_CharacterIndexForPoint(routing_id, Point()));
-}
-
 }  // namespace content
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index c6ad6ff..38eeba6 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -509,15 +509,15 @@
   } else {
     // TODO(https://crbug.com/995981): We should not need to create a
     // RenderWidget for a remote main frame.
-    render_widget_ = RenderWidget::CreateForFrame(
+    undead_render_widget_ = RenderWidget::CreateForFrame(
         params->main_frame_widget_routing_id, compositor_deps,
         page_properties(), params->visual_properties.display_mode,
         /*is_undead=*/true, params->never_visible);
-    render_widget_->set_delegate(this);
+    undead_render_widget_->set_delegate(this);
     // We intentionally pass in a null webwidget since it shouldn't be needed
     // for remote frames.
-    render_widget_->InitForMainFrame(std::move(show_callback),
-                                     /*web_frame_widget=*/nullptr);
+    undead_render_widget_->InitForMainFrame(std::move(show_callback),
+                                            /*web_frame_widget=*/nullptr);
 
     RenderFrameProxy::CreateFrameProxy(params->proxy_routing_id, GetRoutingID(),
                                        opener_frame, MSG_ROUTING_NONE,
@@ -1072,12 +1072,13 @@
   // a main frame. So it should not be able to see this happening when there is
   // no local main frame.
   if (close_render_widget_here) {
-    // We pass ownership of |render_widget_| to itself. Grab a raw pointer to
-    // call the Close() method on so we don't have to be a C++ expert to know
-    // whether we will end up with a nullptr where we didn't intend due to order
-    // of execution.
-    RenderWidget* closing_widget = render_widget_.get();
-    closing_widget->CloseForFrame(std::move(render_widget_));
+    if (undead_render_widget_) {
+      RenderWidget* closing_widget = undead_render_widget_.get();
+      closing_widget->CloseForFrame(std::move(undead_render_widget_));
+    } else {
+      RenderWidget* closing_widget = render_widget_.get();
+      closing_widget->CloseForFrame(std::move(render_widget_));
+    }
   }
 
   delete this;
@@ -1570,25 +1571,30 @@
     // The RenderWidget will be closed, and it will close the WebWidget stored
     // in |frame_widget_|. We just want to drop raw pointer here.
     frame_widget_ = nullptr;
-    // We pass ownership of |render_widget_| to itself. Grab a raw pointer to
-    // call the Close() method on so we don't have to be a C++ expert to know
-    // whether we will end up with a nullptr where we didn't intend due to order
-    // of execution.
-    RenderWidget* closing_widget = render_widget_.get();
-    closing_widget->CloseForFrame(std::move(render_widget_));
+    if (undead_render_widget_) {
+      RenderWidget* closing_widget = undead_render_widget_.get();
+      closing_widget->CloseForFrame(std::move(undead_render_widget_));
+    } else {
+      RenderWidget* closing_widget = render_widget_.get();
+      closing_widget->CloseForFrame(std::move(render_widget_));
+    }
   } else {
     // We are not inside RenderViewImpl::Destroy(), the main frame is being
     // detached and replaced with a remote frame proxy. We can't close the
     // RenderWidget, and it is marked undead instead, but we do need to close
     // the WebFrameWidget and remove it from the RenderWidget.
 
-    DCHECK(render_widget_->IsUndeadOrProvisional());
+    RenderWidget* render_widget = render_widget_.get();
+    if (!render_widget)
+      render_widget = undead_render_widget_.get();
+
+    DCHECK(render_widget->IsUndeadOrProvisional());
     // The WebWidget needs to be closed even though the RenderWidget won't be
     // here (since it is marked undead instead).
     frame_widget_->Close();
     frame_widget_ = nullptr;
     // This just clears the webwidget_internal_ member from RenderWidget.
-    render_widget_->SetWebWidgetInternal(nullptr);
+    render_widget->SetWebWidgetInternal(nullptr);
   }
 }
 
@@ -1950,6 +1956,16 @@
   // does not change when tests override the visibility of the Page.
 }
 
+void RenderViewImpl::MakeMainFrameRenderWidgetUndead() {
+  render_widget_->SetIsUndead(true);
+  undead_render_widget_ = std::move(render_widget_);
+}
+
+void RenderViewImpl::ReviveUndeadMainFrameRenderWidget() {
+  render_widget_ = std::move(undead_render_widget_);
+  render_widget_->SetIsUndead(false);
+}
+
 void RenderViewImpl::OnUpdateWebPreferences(const WebPreferences& prefs) {
   webkit_preferences_ = prefs;
   ApplyWebPreferences(webkit_preferences_, webview());
diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h
index 194b27c6..f538f769 100644
--- a/content/renderer/render_view_impl.h
+++ b/content/renderer/render_view_impl.h
@@ -328,6 +328,12 @@
   // be able to specify |initial_setting| where IPC handlers do not.
   void ApplyPageHidden(bool hidden, bool initial_setting);
 
+  // These functions take the main frame's RenderWidget and to make it
+  // inaccessible for out-of-process main frames and then brings it back
+  // if the main frame comes back into the current process.
+  void MakeMainFrameRenderWidgetUndead();
+  void ReviveUndeadMainFrameRenderWidget();
+
  private:
   // For unit tests.
   friend class DevToolsAgentTest;
@@ -558,8 +564,23 @@
   // fullscreen widgets are never contained by this pointer. Child frame
   // local roots are owned by a RenderFrame. The others are owned by the IPC
   // system.
+  //
+  // Note that when the main frame moves out of process, |render_widget_|
+  // is moved in to |undead_render_widget_|. In the future, the
+  // |render_widget_| should just be deleted and recreated. However, this
+  // requires reattached various objects browser process so it cannot be
+  // done yet.
   std::unique_ptr<RenderWidget> render_widget_;
 
+  // This is purely used as storage for a |render_widget_| instance when the
+  // main frame has moved out of process. It is a transitional construct
+  // to help figure out many things access |render_widget_| while the main
+  // frame remote. Almost no code should ever follow this pointer.
+  //
+  // TODO(crbug.com/419087): Remove this once RenderWidgets are owned by the
+  // main frame.
+  std::unique_ptr<RenderWidget> undead_render_widget_;
+
   // Routing ID that allows us to communicate with the corresponding
   // RenderViewHost in the parent browser process.
   const int32_t routing_id_;
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index a61ad9e6b..1414189 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -3097,7 +3097,6 @@
 
   settings.initial_debug_state.SetRecordRenderingStats(
       cmd.HasSwitch(cc::switches::kEnableGpuBenchmarking));
-  settings.enable_surface_synchronization = true;
   settings.build_hit_test_data = features::IsVizHitTestingSurfaceLayerEnabled();
 
   if (cmd.HasSwitch(cc::switches::kSlowDownRasterScaleFactor)) {
diff --git a/content/test/data/accessibility/aria/aria-contentinfo-expected-win.txt b/content/test/data/accessibility/aria/aria-contentinfo-expected-win.txt
index 6583f9a..2071e6d 100644
--- a/content/test/data/accessibility/aria/aria-contentinfo-expected-win.txt
+++ b/content/test/data/accessibility/aria/aria-contentinfo-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
-++IA2_ROLE_LANDMARK xml-roles:contentinfo localized_extended_role='content information'
+++IA2_ROLE_LANDMARK xml-roles:contentinfo
 ++++ROLE_SYSTEM_STATICTEXT name='This is ARIA role contentinfo.'
\ No newline at end of file
diff --git a/content/test/data/accessibility/event/aria-combo-box-expand-expected-win.txt b/content/test/data/accessibility/event/aria-combo-box-expand-expected-win.txt
index dad0d680..7e8602a 100644
--- a/content/test/data/accessibility/event/aria-combo-box-expand-expected-win.txt
+++ b/content/test/data/accessibility/event/aria-combo-box-expand-expected-win.txt
@@ -2,5 +2,5 @@
 EVENT_OBJECT_SELECTION on <li#option1> role=ROLE_SYSTEM_LISTITEM name="Apple" SELECTED,FOCUSED,FOCUSABLE,SELECTABLE PosInSet=1 SetSize=3
 EVENT_OBJECT_SELECTIONWITHIN on <ul#list> role=ROLE_SYSTEM_LIST IA2_STATE_VERTICAL SetSize=3
 EVENT_OBJECT_STATECHANGE on <input> role=ROLE_SYSTEM_COMBOBOX EXPANDED,FOCUSABLE,HASPOPUP IA2_STATE_EDITABLE,IA2_STATE_SELECTABLE_TEXT,IA2_STATE_SINGLE_LINE,IA2_STATE_SUPPORTS_AUTOCOMPLETION
-EVENT_OBJECT_STATECHANGE on <li#option1> role=ROLE_SYSTEM_LISTITEM name="Apple" SELECTED,FOCUSED,FOCUSABLE,SELECTABLE PosInSet=1 SetSize=3
+EVENT_OBJECT_STATECHANGE on <li#option1> role=ROLE_SYSTEM_LISTITEM name="Apple" SELECTED,FOCUSABLE,SELECTABLE PosInSet=1 SetSize=3
 IA2_EVENT_ACTIVE_DESCENDANT_CHANGED on <input> role=ROLE_SYSTEM_COMBOBOX EXPANDED,FOCUSABLE,HASPOPUP IA2_STATE_EDITABLE,IA2_STATE_SELECTABLE_TEXT,IA2_STATE_SINGLE_LINE,IA2_STATE_SUPPORTS_AUTOCOMPLETION
diff --git a/content/test/data/accessibility/event/aria-combo-box-next-expected-auralinux.txt b/content/test/data/accessibility/event/aria-combo-box-next-expected-auralinux.txt
index 0888e22..6bdd346 100644
--- a/content/test/data/accessibility/event/aria-combo-box-next-expected-auralinux.txt
+++ b/content/test/data/accessibility/event/aria-combo-box-next-expected-auralinux.txt
@@ -1,4 +1,12 @@
-FOCUS-EVENT role=ROLE_LIST_ITEM name='Banana' ENABLED,FOCUSABLE,FOCUSED,SELECTABLE,SELECTED,SENSITIVE,SHOWING,VISIBLE
+FOCUS-EVENT role=ROLE_LIST_ITEM name='Orange' ENABLED,FOCUSABLE,FOCUSED,SELECTABLE,SELECTED,SENSITIVE,SHOWING,VISIBLE
 SELECTION-CHANGED role=ROLE_LIST_BOX name='(null)' ENABLED,SENSITIVE,SHOWING,VERTICAL,VISIBLE
+STATE-CHANGE:FOCUSED:TRUE role=ROLE_LIST_ITEM name='Orange' ENABLED,FOCUSABLE,FOCUSED,SELECTABLE,SELECTED,SENSITIVE,SHOWING,VISIBLE
+STATE-CHANGE:SELECTED:TRUE role=ROLE_LIST_ITEM name='Orange' ENABLED,FOCUSABLE,FOCUSED,SELECTABLE,SELECTED,SENSITIVE,SHOWING,VISIBLE
+=== Start Continuation ===
+FOCUS-EVENT role=ROLE_LIST_ITEM name='Banana' ENABLED,FOCUSABLE,FOCUSED,SELECTABLE,SELECTED,SENSITIVE,SHOWING,VISIBLE
+FOCUS-EVENT role=ROLE_LIST_ITEM name='Orange' ENABLED,FOCUSABLE,SELECTABLE,SENSITIVE,SHOWING,VISIBLE
+SELECTION-CHANGED role=ROLE_LIST_BOX name='(null)' ENABLED,SENSITIVE,SHOWING,VERTICAL,VISIBLE
+STATE-CHANGE:FOCUSED:FALSE role=ROLE_LIST_ITEM name='Orange' ENABLED,FOCUSABLE,SELECTABLE,SENSITIVE,SHOWING,VISIBLE
 STATE-CHANGE:FOCUSED:TRUE role=ROLE_LIST_ITEM name='Banana' ENABLED,FOCUSABLE,FOCUSED,SELECTABLE,SELECTED,SENSITIVE,SHOWING,VISIBLE
+STATE-CHANGE:SELECTED:FALSE role=ROLE_LIST_ITEM name='Orange' ENABLED,FOCUSABLE,SELECTABLE,SENSITIVE,SHOWING,VISIBLE
 STATE-CHANGE:SELECTED:TRUE role=ROLE_LIST_ITEM name='Banana' ENABLED,FOCUSABLE,FOCUSED,SELECTABLE,SELECTED,SENSITIVE,SHOWING,VISIBLE
diff --git a/content/test/data/accessibility/event/aria-combo-box-next-expected-mac.txt b/content/test/data/accessibility/event/aria-combo-box-next-expected-mac.txt
index 50ba9dd..d5f21183 100644
--- a/content/test/data/accessibility/event/aria-combo-box-next-expected-mac.txt
+++ b/content/test/data/accessibility/event/aria-combo-box-next-expected-mac.txt
@@ -1,2 +1,5 @@
 AXSelectedChildrenChanged on AXComboBox
 AXSelectedChildrenChanged on AXList
+=== Start Continuation ===
+AXSelectedChildrenChanged on AXComboBox
+AXSelectedChildrenChanged on AXList
diff --git a/content/test/data/accessibility/event/aria-combo-box-next-expected-uia-win.txt b/content/test/data/accessibility/event/aria-combo-box-next-expected-uia-win.txt
index e377b9e..9f697a0 100644
--- a/content/test/data/accessibility/event/aria-combo-box-next-expected-uia-win.txt
+++ b/content/test/data/accessibility/event/aria-combo-box-next-expected-uia-win.txt
@@ -1,3 +1,9 @@
+AriaProperties changed on role=option, name=Apple
+AriaProperties changed on role=option, name=Orange
+AutomationFocusChanged on role=option, name=Orange
+SelectionItem_ElementSelected on role=option, name=Orange
+=== Start Continuation ===
 AriaProperties changed on role=option, name=Banana
+AriaProperties changed on role=option, name=Orange
 AutomationFocusChanged on role=option, name=Banana
 SelectionItem_ElementSelected on role=option, name=Banana
diff --git a/content/test/data/accessibility/event/aria-combo-box-next-expected-win.txt b/content/test/data/accessibility/event/aria-combo-box-next-expected-win.txt
index aba2986..18ce897 100644
--- a/content/test/data/accessibility/event/aria-combo-box-next-expected-win.txt
+++ b/content/test/data/accessibility/event/aria-combo-box-next-expected-win.txt
@@ -1,5 +1,13 @@
+EVENT_OBJECT_FOCUS on <li#option2> role=ROLE_SYSTEM_LISTITEM name="Orange" SELECTED,FOCUSED,FOCUSABLE,SELECTABLE PosInSet=2 SetSize=3
+EVENT_OBJECT_SELECTION on <li#option2> role=ROLE_SYSTEM_LISTITEM name="Orange" SELECTED,FOCUSED,FOCUSABLE,SELECTABLE PosInSet=2 SetSize=3
+EVENT_OBJECT_SELECTIONWITHIN on <ul#list> role=ROLE_SYSTEM_LIST IA2_STATE_VERTICAL SetSize=3
+EVENT_OBJECT_STATECHANGE on <li#option1> role=ROLE_SYSTEM_LISTITEM name="Apple" FOCUSED,FOCUSABLE,SELECTABLE PosInSet=1 SetSize=3
+EVENT_OBJECT_STATECHANGE on <li#option2> role=ROLE_SYSTEM_LISTITEM name="Orange" SELECTED,FOCUSABLE,SELECTABLE PosInSet=2 SetSize=3
+IA2_EVENT_ACTIVE_DESCENDANT_CHANGED on <input> role=ROLE_SYSTEM_COMBOBOX EXPANDED,FOCUSABLE,HASPOPUP IA2_STATE_EDITABLE,IA2_STATE_SELECTABLE_TEXT,IA2_STATE_SINGLE_LINE,IA2_STATE_SUPPORTS_AUTOCOMPLETION
+=== Start Continuation ===
 EVENT_OBJECT_FOCUS on <li#option3> role=ROLE_SYSTEM_LISTITEM name="Banana" SELECTED,FOCUSED,FOCUSABLE,SELECTABLE PosInSet=3 SetSize=3
 EVENT_OBJECT_SELECTION on <li#option3> role=ROLE_SYSTEM_LISTITEM name="Banana" SELECTED,FOCUSED,FOCUSABLE,SELECTABLE PosInSet=3 SetSize=3
 EVENT_OBJECT_SELECTIONWITHIN on <ul#list> role=ROLE_SYSTEM_LIST IA2_STATE_VERTICAL SetSize=3
-EVENT_OBJECT_STATECHANGE on <li#option3> role=ROLE_SYSTEM_LISTITEM name="Banana" SELECTED,FOCUSED,FOCUSABLE,SELECTABLE PosInSet=3 SetSize=3
+EVENT_OBJECT_STATECHANGE on <li#option2> role=ROLE_SYSTEM_LISTITEM name="Orange" FOCUSED,FOCUSABLE,SELECTABLE PosInSet=2 SetSize=3
+EVENT_OBJECT_STATECHANGE on <li#option3> role=ROLE_SYSTEM_LISTITEM name="Banana" SELECTED,FOCUSABLE,SELECTABLE PosInSet=3 SetSize=3
 IA2_EVENT_ACTIVE_DESCENDANT_CHANGED on <input> role=ROLE_SYSTEM_COMBOBOX EXPANDED,FOCUSABLE,HASPOPUP IA2_STATE_EDITABLE,IA2_STATE_SELECTABLE_TEXT,IA2_STATE_SINGLE_LINE,IA2_STATE_SUPPORTS_AUTOCOMPLETION
diff --git a/content/test/data/accessibility/event/aria-combo-box-next.html b/content/test/data/accessibility/event/aria-combo-box-next.html
index 25e052e7..db36386 100644
--- a/content/test/data/accessibility/event/aria-combo-box-next.html
+++ b/content/test/data/accessibility/event/aria-combo-box-next.html
@@ -1,19 +1,23 @@
 <!DOCTYPE html>
 <html>
+
 <body>
-<input role="combobox" type="search" aria-expanded="true" aria-haspopup="true"
-    aria-autocomplete="list" aria-activedescendant="option2" aria-owns="list">
-<ul id="list" role="listbox">
-<li id="option1" role="option">Apple</li>
-<li id="option2" role="option">Orange</li>
-<li id="option3" role="option">Banana</li>
-</ul>
-<script>
-  document.querySelector('input').focus();
-  function go() {
-    var combo_box = document.querySelector('input');
-    combo_box.setAttribute('aria-activedescendant', 'option3');
-  }
-</script>
+  <input role="combobox" type="search" aria-expanded="true" aria-haspopup="true" aria-autocomplete="list"
+    aria-activedescendant="option1" aria-owns="list">
+  <ul id="list" role="listbox">
+    <li id="option1" role="option">Apple</li>
+    <li id="option2" role="option">Orange</li>
+    <li id="option3" role="option">Banana</li>
+  </ul>
+  <script>
+    document.querySelector('input').focus();
+    var option = 2;
+    function go() {
+      var combo_box = document.querySelector('input');
+      combo_box.setAttribute('aria-activedescendant', 'option' + option);
+      return option++ < 3;
+    }
+  </script>
 </body>
+
 </html>
diff --git a/content/test/data/accessibility/html/audio-expected-win.txt b/content/test/data/accessibility/html/audio-expected-win.txt
index 7f72fe1..53ea5542 100644
--- a/content/test/data/accessibility/html/audio-expected-win.txt
+++ b/content/test/data/accessibility/html/audio-expected-win.txt
@@ -1,6 +1,6 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
 ++IA2_ROLE_SECTION
-++++ROLE_SYSTEM_GROUPING FOCUSABLE localized_extended_role='audio'
+++++ROLE_SYSTEM_GROUPING FOCUSABLE
 ++++++IA2_ROLE_SECTION
 ++++++++IA2_ROLE_SECTION
 ++++++++++IA2_ROLE_SECTION
diff --git a/content/test/data/accessibility/html/details-expected-win.txt b/content/test/data/accessibility/html/details-expected-win.txt
index 4238082b..c0001e1 100644
--- a/content/test/data/accessibility/html/details-expected-win.txt
+++ b/content/test/data/accessibility/html/details-expected-win.txt
@@ -1,8 +1,8 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
-++ROLE_SYSTEM_GROUPING localized_extended_role='details'
+++ROLE_SYSTEM_GROUPING
 ++++ROLE_SYSTEM_PUSHBUTTON name='details tag' COLLAPSED FOCUSABLE
 ++++++ROLE_SYSTEM_STATICTEXT name='details tag'
-++ROLE_SYSTEM_GROUPING localized_extended_role='details'
+++ROLE_SYSTEM_GROUPING
 ++++ROLE_SYSTEM_PUSHBUTTON name='details tag open' EXPANDED FOCUSABLE
 ++++++ROLE_SYSTEM_STATICTEXT name='details tag open'
 ++++IA2_ROLE_PARAGRAPH
diff --git a/content/test/data/accessibility/html/figure-expected-win.txt b/content/test/data/accessibility/html/figure-expected-win.txt
index 325d0f9..9359a64 100644
--- a/content/test/data/accessibility/html/figure-expected-win.txt
+++ b/content/test/data/accessibility/html/figure-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
-++ROLE_SYSTEM_GROUPING xml-roles:figure localized_extended_role='figure'
+++ROLE_SYSTEM_GROUPING xml-roles:figure
 ++++ROLE_SYSTEM_GRAPHIC name='Sunspots' READONLY xml-roles:img
diff --git a/content/test/data/accessibility/html/footer-expected-win.txt b/content/test/data/accessibility/html/footer-expected-win.txt
index d8a19cc..dff5d39 100644
--- a/content/test/data/accessibility/html/footer-expected-win.txt
+++ b/content/test/data/accessibility/html/footer-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
-++IA2_ROLE_LANDMARK xml-roles:contentinfo localized_extended_role='footer'
+++IA2_ROLE_LANDMARK xml-roles:contentinfo
 ++++ROLE_SYSTEM_STATICTEXT name='Footer element'
diff --git a/content/test/data/accessibility/html/footer-inside-other-section-expected-win.txt b/content/test/data/accessibility/html/footer-inside-other-section-expected-win.txt
index 56debe5b..03b570c 100644
--- a/content/test/data/accessibility/html/footer-inside-other-section-expected-win.txt
+++ b/content/test/data/accessibility/html/footer-inside-other-section-expected-win.txt
@@ -1,13 +1,13 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
 ++ROLE_SYSTEM_DOCUMENT READONLY xml-roles:article
-++++IA2_ROLE_SECTION localized_extended_role='footer'
+++++IA2_ROLE_SECTION
 ++++++IA2_ROLE_PARAGRAPH
 ++++++++ROLE_SYSTEM_STATICTEXT name='footer inside article.'
 ++IA2_ROLE_SECTION xml-roles:region
-++++IA2_ROLE_SECTION localized_extended_role='footer'
+++++IA2_ROLE_SECTION
 ++++++IA2_ROLE_PARAGRAPH
 ++++++++ROLE_SYSTEM_STATICTEXT name='footer inside section.'
 ++IA2_ROLE_LANDMARK xml-roles:main
-++++IA2_ROLE_SECTION localized_extended_role='footer'
+++++IA2_ROLE_SECTION
 ++++++IA2_ROLE_PARAGRAPH
 ++++++++ROLE_SYSTEM_STATICTEXT name='footer inside main.'
\ No newline at end of file
diff --git a/content/test/data/accessibility/html/header-expected-win.txt b/content/test/data/accessibility/html/header-expected-win.txt
index 83eed351..71fef080 100644
--- a/content/test/data/accessibility/html/header-expected-win.txt
+++ b/content/test/data/accessibility/html/header-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
-++IA2_ROLE_LANDMARK xml-roles:banner localized_extended_role='header'
+++IA2_ROLE_LANDMARK xml-roles:banner
 ++++ROLE_SYSTEM_STATICTEXT name='Chromium Browser'
diff --git a/content/test/data/accessibility/html/header-inside-other-section-expected-win.txt b/content/test/data/accessibility/html/header-inside-other-section-expected-win.txt
index d540be0..8023b6f 100644
--- a/content/test/data/accessibility/html/header-inside-other-section-expected-win.txt
+++ b/content/test/data/accessibility/html/header-inside-other-section-expected-win.txt
@@ -1,13 +1,13 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
 ++ROLE_SYSTEM_DOCUMENT READONLY xml-roles:article
-++++IA2_ROLE_SECTION localized_extended_role='header'
+++++IA2_ROLE_SECTION
 ++++++IA2_ROLE_PARAGRAPH
 ++++++++ROLE_SYSTEM_STATICTEXT name='Header inside article.'
 ++IA2_ROLE_SECTION xml-roles:region
-++++IA2_ROLE_SECTION localized_extended_role='header'
+++++IA2_ROLE_SECTION
 ++++++IA2_ROLE_PARAGRAPH
 ++++++++ROLE_SYSTEM_STATICTEXT name='Header inside section.'
 ++IA2_ROLE_LANDMARK xml-roles:main
-++++IA2_ROLE_SECTION localized_extended_role='header'
+++++IA2_ROLE_SECTION
 ++++++IA2_ROLE_PARAGRAPH
 ++++++++ROLE_SYSTEM_STATICTEXT name='Header inside main.'
\ No newline at end of file
diff --git a/content/test/data/accessibility/html/input-color-expected-win.txt b/content/test/data/accessibility/html/input-color-expected-win.txt
index 2c6d9c69..2b1be88 100644
--- a/content/test/data/accessibility/html/input-color-expected-win.txt
+++ b/content/test/data/accessibility/html/input-color-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE ia2_hypertext='<obj0>'
 ++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
-++++IA2_ROLE_COLOR_CHOOSER value='100% red 60% green 0% blue' FOCUSABLE localized_extended_role='color picker'
+++++IA2_ROLE_COLOR_CHOOSER value='100% red 60% green 0% blue' FOCUSABLE
diff --git a/content/test/data/accessibility/html/input-date-expected-win.txt b/content/test/data/accessibility/html/input-date-expected-win.txt
index c05dd7c..2adb05e 100644
--- a/content/test/data/accessibility/html/input-date-expected-win.txt
+++ b/content/test/data/accessibility/html/input-date-expected-win.txt
@@ -1,6 +1,6 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE ia2_hypertext='<obj0>'
 ++IA2_ROLE_SECTION ia2_hypertext='<obj0><obj1>'
-++++IA2_ROLE_DATE_EDITOR value='2008-09-01' FOCUSABLE ia2_hypertext='<obj0><obj1>' localized_extended_role='date picker'
+++++IA2_ROLE_DATE_EDITOR value='2008-09-01' FOCUSABLE ia2_hypertext='<obj0><obj1>'
 ++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
 ++++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>/<obj2>/<obj4>'
 ++++++++++ROLE_SYSTEM_SPINBUTTON name='Month' value='09' FOCUSABLE ia2_hypertext='09'
@@ -12,7 +12,7 @@
 ++++++++++ROLE_SYSTEM_SPINBUTTON name='Year' value='2008' FOCUSABLE ia2_hypertext='2008'
 ++++++++++++ROLE_SYSTEM_STATICTEXT name='2008' ia2_hypertext='2008'
 ++++++ROLE_SYSTEM_BUTTONMENU name='Show date picker' FOCUSABLE HASPOPUP ia2_hypertext='Show date picker'
-++++IA2_ROLE_DATE_EDITOR name='When' value='2008-09-01' FOCUSABLE ia2_hypertext='<obj0><obj1>' localized_extended_role='date picker'
+++++IA2_ROLE_DATE_EDITOR name='When' value='2008-09-01' FOCUSABLE ia2_hypertext='<obj0><obj1>'
 ++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
 ++++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>/<obj2>/<obj4>'
 ++++++++++ROLE_SYSTEM_SPINBUTTON name='Month When' value='09' FOCUSABLE ia2_hypertext='09'
diff --git a/content/test/data/accessibility/html/input-date-with-popup-open-expected-win.txt b/content/test/data/accessibility/html/input-date-with-popup-open-expected-win.txt
index 6f029f35..a4ef461 100644
--- a/content/test/data/accessibility/html/input-date-with-popup-open-expected-win.txt
+++ b/content/test/data/accessibility/html/input-date-with-popup-open-expected-win.txt
@@ -1,6 +1,6 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE ia2_hypertext='<obj0>'
 ++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
-++++IA2_ROLE_DATE_EDITOR value='2008-09-01' FOCUSABLE ia2_hypertext='<obj0><obj1><obj2>' localized_extended_role='date picker'
+++++IA2_ROLE_DATE_EDITOR value='2008-09-01' FOCUSABLE ia2_hypertext='<obj0><obj1><obj2>'
 ++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
 ++++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>/<obj2>/<obj4>'
 ++++++++++ROLE_SYSTEM_SPINBUTTON name='Month' value='09' FOCUSABLE ia2_hypertext='09'
diff --git a/content/test/data/accessibility/html/input-datetime-local-expected-win.txt b/content/test/data/accessibility/html/input-datetime-local-expected-win.txt
index 1769cadf..012ebb1 100644
--- a/content/test/data/accessibility/html/input-datetime-local-expected-win.txt
+++ b/content/test/data/accessibility/html/input-datetime-local-expected-win.txt
@@ -1,6 +1,6 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE ia2_hypertext='<obj0>'
 ++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
-++++IA2_ROLE_DATE_EDITOR FOCUSABLE ia2_hypertext='<obj0><obj1>' localized_extended_role='local date and time picker'
+++++IA2_ROLE_DATE_EDITOR FOCUSABLE ia2_hypertext='<obj0><obj1>'
 ++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
 ++++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>/<obj2>/<obj4> <obj6>:<obj8> <obj10>'
 ++++++++++ROLE_SYSTEM_SPINBUTTON name='Month' value='0' FOCUSABLE ia2_hypertext='mm'
diff --git a/content/test/data/accessibility/html/input-email-expected-win.txt b/content/test/data/accessibility/html/input-email-expected-win.txt
index 3bce6e64..942be6a 100644
--- a/content/test/data/accessibility/html/input-email-expected-win.txt
+++ b/content/test/data/accessibility/html/input-email-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE ia2_hypertext='<obj0>' n_selections=0
 ++IA2_ROLE_SECTION ia2_hypertext='<obj0>' n_selections=0
-++++ROLE_SYSTEM_TEXT value='someone@example.com' FOCUSABLE text-input-type:email ia2_hypertext='someone@example.com' caret_offset=0 n_selections=0 localized_extended_role='email'
+++++ROLE_SYSTEM_TEXT value='someone@example.com' FOCUSABLE text-input-type:email ia2_hypertext='someone@example.com' caret_offset=0 n_selections=0
diff --git a/content/test/data/accessibility/html/input-tel-expected-win.txt b/content/test/data/accessibility/html/input-tel-expected-win.txt
index 2c617092..e512259 100644
--- a/content/test/data/accessibility/html/input-tel-expected-win.txt
+++ b/content/test/data/accessibility/html/input-tel-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE ia2_hypertext='<obj0>' n_selections=0
 ++IA2_ROLE_SECTION ia2_hypertext='<obj0>' n_selections=0
-++++ROLE_SYSTEM_TEXT value='123-456-7890' FOCUSABLE text-input-type:tel ia2_hypertext='123-456-7890' caret_offset=0 n_selections=0 localized_extended_role='telephone'
+++++ROLE_SYSTEM_TEXT value='123-456-7890' FOCUSABLE text-input-type:tel ia2_hypertext='123-456-7890' caret_offset=0 n_selections=0
diff --git a/content/test/data/accessibility/html/input-url-expected-win.txt b/content/test/data/accessibility/html/input-url-expected-win.txt
index f15379a..03dc259 100644
--- a/content/test/data/accessibility/html/input-url-expected-win.txt
+++ b/content/test/data/accessibility/html/input-url-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE ia2_hypertext='<obj0>' n_selections=0
 ++IA2_ROLE_SECTION ia2_hypertext='<obj0>' n_selections=0
-++++ROLE_SYSTEM_TEXT value='example.com' FOCUSABLE IA2_STATE_INVALID_ENTRY text-input-type:url ia2_hypertext='example.com' caret_offset=0 n_selections=0 localized_extended_role='url'
+++++ROLE_SYSTEM_TEXT value='example.com' FOCUSABLE IA2_STATE_INVALID_ENTRY text-input-type:url ia2_hypertext='example.com' caret_offset=0 n_selections=0
diff --git a/content/test/data/accessibility/html/input-week-expected-win.txt b/content/test/data/accessibility/html/input-week-expected-win.txt
index 1a18f99..64a9f68 100644
--- a/content/test/data/accessibility/html/input-week-expected-win.txt
+++ b/content/test/data/accessibility/html/input-week-expected-win.txt
@@ -1,6 +1,6 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE ia2_hypertext='<obj0>'
 ++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
-++++IA2_ROLE_DATE_EDITOR FOCUSABLE ia2_hypertext='<obj0><obj1>' localized_extended_role='week picker'
+++++IA2_ROLE_DATE_EDITOR FOCUSABLE ia2_hypertext='<obj0><obj1>'
 ++++++IA2_ROLE_SECTION ia2_hypertext='<obj0>'
 ++++++++IA2_ROLE_SECTION ia2_hypertext='Week <obj1>, <obj3>'
 ++++++++++ROLE_SYSTEM_STATICTEXT name='Week ' ia2_hypertext='Week '
diff --git a/content/test/data/accessibility/html/mark-expected-win.txt b/content/test/data/accessibility/html/mark-expected-win.txt
index 6209269..03e6f81 100644
--- a/content/test/data/accessibility/html/mark-expected-win.txt
+++ b/content/test/data/accessibility/html/mark-expected-win.txt
@@ -1,6 +1,6 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
 ++IA2_ROLE_PARAGRAPH
 ++++ROLE_SYSTEM_STATICTEXT name='This test is to check '
-++++IA2_ROLE_TEXT_FRAME localized_extended_role='highlight'
+++++IA2_ROLE_TEXT_FRAME
 ++++++ROLE_SYSTEM_STATICTEXT name='mark tag'
 ++++ROLE_SYSTEM_STATICTEXT name='.'
diff --git a/content/test/data/accessibility/html/meter-expected-win.txt b/content/test/data/accessibility/html/meter-expected-win.txt
index 9469ef3..84007fa 100644
--- a/content/test/data/accessibility/html/meter-expected-win.txt
+++ b/content/test/data/accessibility/html/meter-expected-win.txt
@@ -1,3 +1,3 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
 ++IA2_ROLE_SECTION
-++++ROLE_SYSTEM_PROGRESSBAR value='2' currentValue=2.00 minimumValue=1.00 maximumValue=10.00 localized_extended_role='meter'
+++++ROLE_SYSTEM_PROGRESSBAR value='2' currentValue=2.00 minimumValue=1.00 maximumValue=10.00
diff --git a/content/test/data/accessibility/html/output-expected-win.txt b/content/test/data/accessibility/html/output-expected-win.txt
index d0a6756..89acd4d7 100644
--- a/content/test/data/accessibility/html/output-expected-win.txt
+++ b/content/test/data/accessibility/html/output-expected-win.txt
@@ -4,4 +4,4 @@
 ++++ROLE_SYSTEM_STATICTEXT name=' + '
 ++++ROLE_SYSTEM_SPINBUTTON FOCUSABLE
 ++++ROLE_SYSTEM_STATICTEXT name=' ='
-++++ROLE_SYSTEM_STATUSBAR localized_extended_role='output'
+++++ROLE_SYSTEM_STATUSBAR
diff --git a/content/test/data/accessibility/html/section-expected-win.txt b/content/test/data/accessibility/html/section-expected-win.txt
index 744809a..0ed932d4 100644
--- a/content/test/data/accessibility/html/section-expected-win.txt
+++ b/content/test/data/accessibility/html/section-expected-win.txt
@@ -1,5 +1,5 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
 ++IA2_ROLE_SECTION xml-roles:region
 ++++ROLE_SYSTEM_STATICTEXT name='This is a section element.'
-++IA2_ROLE_LANDMARK name='section' xml-roles:region localized_extended_role='section'
+++IA2_ROLE_LANDMARK name='section' xml-roles:region
 ++++ROLE_SYSTEM_STATICTEXT name='This is a named section element.'
\ No newline at end of file
diff --git a/content/test/data/accessibility/html/time-expected-win.txt b/content/test/data/accessibility/html/time-expected-win.txt
index f25fdf1..7cbd6c5 100644
--- a/content/test/data/accessibility/html/time-expected-win.txt
+++ b/content/test/data/accessibility/html/time-expected-win.txt
@@ -1,7 +1,7 @@
 ROLE_SYSTEM_DOCUMENT READONLY FOCUSABLE
 ++IA2_ROLE_SECTION
-++++IA2_ROLE_TEXT_FRAME localized_extended_role='time'
+++++IA2_ROLE_TEXT_FRAME
 ++++++ROLE_SYSTEM_STATICTEXT name='10:00'
 ++++ROLE_SYSTEM_STATICTEXT name=' '
-++++IA2_ROLE_TEXT_FRAME localized_extended_role='time'
+++++IA2_ROLE_TEXT_FRAME
 ++++++ROLE_SYSTEM_STATICTEXT name='Valentines day'
\ No newline at end of file
diff --git a/content/test/data/page_state/serialized_v28.dat b/content/test/data/page_state/serialized_v28.dat
new file mode 100644
index 0000000..f1eed38
--- /dev/null
+++ b/content/test/data/page_state/serialized_v28.dat
@@ -0,0 +1,37 @@
+EAgAABwAAAAICAAAGAAAAAAAAAAQAAAAAAAAAEAAAAAAAAAAEAAAAAEAAAAIAAAAAAAAABAAAAAA
+AAAACAAAAAAAAAAYAAAACAAAAGYAaQBsAGUALgB0AHgAdABoAAAAAgAAAGAAAAAAAAAAmAAAAAAA
+AADQAAAAAAAAAAAAAAAAAAAA6AAAAAAAAAAAAAAAAQAAAJgCAAAAAAAAewAAAAAAAADIAQAAAAAA
+ANgCAAAAAAAAAAQAAAAAAAAwBwAAAAAAABAAAAAAAAAACAAAAAAAAAAwAAAAFAAAAGgAdAB0AHAA
+OgAvAC8AYwBoAHIAbwBtAGkAdQBtAC4AbwByAGcALwAQAAAAAAAAAAgAAAAAAAAALAAAABIAAABo
+AHQAdABwADoALwAvAGcAbwBvAGcAbABlAC4AYwBvAG0ALwAAAAAAEAAAAAAAAAAIAAAAAAAAABQA
+AAAGAAAAdABhAHIAZwBlAHQAAAAAAEgAAAAIAAAAQAAAAAAAAACwAAAAAAAAANAAAAAAAAAA6AAA
+AAAAAAAAAQAAAAAAABgBAAAAAAAAMAEAAAAAAABQAQAAAAAAABAAAAAAAAAACAAAAAAAAABoAAAA
+MAAAAAoADQA/ACUAIABXAGUAYgBLAGkAdAAgAHMAZQByAGkAYQBsAGkAegBlAGQAIABmAG8AcgBt
+ACAAcwB0AGEAdABlACAAdgBlAHIAcwBpAG8AbgAgADgAIAAKAA0APQAmABAAAAAAAAAACAAAAAAA
+AAAYAAAACAAAAGYAbwByAG0AIABrAGUAeQAQAAAAAAAAAAgAAAAAAAAACgAAAAEAAAAxAAAAAAAA
+ABAAAAAAAAAACAAAAAAAAAAOAAAAAwAAAGYAbwBvAAAAEAAAAAAAAAAIAAAAAAAAABAAAAAEAAAA
+ZgBpAGwAZQAQAAAAAAAAAAgAAAAAAAAACgAAAAEAAAAyAAAAAAAAABAAAAAAAAAACAAAAAAAAAAY
+AAAACAAAAGYAaQBsAGUALgB0AHgAdAAQAAAAAAAAAAgAAAAAAAAAHgAAAAsAAABkAGkAcwBwAGwA
+YQB5AE4AYQBtAGUAAAA4AAAAAQAAADAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAABAAAAAAAAAAAACAvwAAgL8QAAAAAAAAACoAAADW////IAAAAAAAAAAYAAAA
+AAAAADgAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAgAAAAAAAAAFgAAAAcAAABmAG8AbwAvAGIAYQBy
+AAAAIAAAAAAAAAAYAAAAAAAAABUDAAAAAAAAAAAAAAAAAAA4AAAAAwAAABAAAAABAAAAKAAAAAAA
+AAAQAAAAAgAAADAAAAAAAAAAEAAAAAEAAACAAAAAAAAAABgAAAAQAAAAZmlyc3QgZGF0YSBibG9j
+aygAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAP//////////MAAAAAAAAAAQAAAAAAAAAAgAAAAAAAAA
+GAAAAAgAAABmAGkAbABlAC4AdAB4AHQAEAAAAAAAAAAAAAAAAAAAABcAAAAPAAAAZGF0YSB0aGUg
+c2Vjb25kABAAAAABAAAACAAAAAAAAABoAAAAAgAAAGAAAAAAAAAAmAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAwAAAAAAAAAAAAAAAAQAAAHACAAAAAAAAewAAAAAAAADIAQAAAAAAALACAAAAAAAAyAIA
+AAAAAAAAAAAAAAAAABAAAAAAAAAACAAAAAAAAAAwAAAAFAAAAGgAdAB0AHAAOgAvAC8AYwBoAHIA
+bwBtAGkAdQBtAC4AbwByAGcALwAQAAAAAAAAAAgAAAAAAAAALAAAABIAAABoAHQAdABwADoALwAv
+AGcAbwBvAGcAbABlAC4AYwBvAG0ALwAAAAAASAAAAAgAAABAAAAAAAAAALAAAAAAAAAA0AAAAAAA
+AADoAAAAAAAAAAABAAAAAAAAGAEAAAAAAAAwAQAAAAAAAFABAAAAAAAAEAAAAAAAAAAIAAAAAAAA
+AGgAAAAwAAAACgANAD8AJQAgAFcAZQBiAEsAaQB0ACAAcwBlAHIAaQBhAGwAaQB6AGUAZAAgAGYA
+bwByAG0AIABzAHQAYQB0AGUAIAB2AGUAcgBzAGkAbwBuACAAOAAgAAoADQA9ACYAEAAAAAAAAAAI
+AAAAAAAAABgAAAAIAAAAZgBvAHIAbQAgAGsAZQB5ABAAAAAAAAAACAAAAAAAAAAKAAAAAQAAADEA
+AAAAAAAAEAAAAAAAAAAIAAAAAAAAAA4AAAADAAAAZgBvAG8AAAAQAAAAAAAAAAgAAAAAAAAAEAAA
+AAQAAABmAGkAbABlABAAAAAAAAAACAAAAAAAAAAKAAAAAQAAADIAAAAAAAAAEAAAAAAAAAAIAAAA
+AAAAABgAAAAIAAAAZgBpAGwAZQAuAHQAeAB0ABAAAAAAAAAACAAAAAAAAAAeAAAACwAAAGQAaQBz
+AHAAbABhAHkATgBhAG0AZQAAADgAAAABAAAAMAAAAAAAAAA4AAAAAAAAAAAAAAAAAABAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAIC/AACAvxAAAAAAAAAAKgAAANb///8gAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAJQAAAB0AAABodHRwczovL2luaXRpYXRv
+ci5leGFtcGxlLmNvbQAAAA==
diff --git a/content/test/gpu/gpu_tests/cloud_storage_integration_test_base.py b/content/test/gpu/gpu_tests/cloud_storage_integration_test_base.py
deleted file mode 100644
index 3fbacca1..0000000
--- a/content/test/gpu/gpu_tests/cloud_storage_integration_test_base.py
+++ /dev/null
@@ -1,198 +0,0 @@
-# Copyright 2016 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.
-
-"""Base classes for a test which uploads results (reference images,
-error images) to cloud storage."""
-
-import logging
-import os
-import re
-
-import tempfile
-
-from py_utils import cloud_storage
-from telemetry.util import image_util
-from telemetry.util import rgba_color
-
-from gpu_tests import gpu_integration_test
-
-test_data_dir = os.path.abspath(os.path.join(
-    os.path.dirname(__file__), '..', '..', 'data', 'gpu'))
-
-default_generated_data_dir = os.path.join(test_data_dir, 'generated')
-
-
-class CloudStorageIntegrationTestBase(gpu_integration_test.GpuIntegrationTest):
-  # This class is abstract; don't warn about the superclass's abstract
-  # methods that aren't overridden.
-  # pylint: disable=abstract-method
-
-  # The command line options (which are passed to subclasses'
-  # GenerateGpuTests) *must* be configured here, via a call to
-  # SetParsedCommandLineOptions. If they are not, an error will be
-  # raised when running the tests.
-  _parsed_command_line_options = None
-
-  _error_image_cloud_storage_bucket = 'chromium-browser-gpu-tests'
-
-  @classmethod
-  def SetParsedCommandLineOptions(cls, options):
-    cls._parsed_command_line_options = options
-
-  @classmethod
-  def GetParsedCommandLineOptions(cls):
-    return cls._parsed_command_line_options
-
-  @classmethod
-  def AddCommandlineArgs(cls, parser):
-    super(CloudStorageIntegrationTestBase, cls).AddCommandlineArgs(parser)
-    parser.add_option(
-      '--build-revision',
-      help='Chrome revision being tested.',
-      default="unknownrev")
-    parser.add_option(
-      '--os-type',
-      help='Type of operating system on which the pixel test is being run, '
-      'used only to distinguish different operating systems with the same '
-      'graphics card. Any value is acceptable, but canonical values are '
-      '"win", "mac", and "linux", and probably, eventually, "chromeos" '
-      'and "android").',
-      default='')
-    parser.add_option(
-      '--test-machine-name',
-      help='Name of the test machine. Specifying this argument causes this '
-      'script to upload failure images and diffs to cloud storage directly, '
-      'instead of relying on the archive_gpu_pixel_test_results.py script.',
-      default='')
-    parser.add_option(
-      '--generated-dir',
-      help='Overrides the default on-disk location for generated test images '
-      '(only used for local testing without a cloud storage account)',
-      default=default_generated_data_dir)
-    parser.add_option(
-      '--dont-restore-color-profile-after-test',
-      dest='dont_restore_color_profile_after_test',
-      action='store_true', default=False,
-      help='(Mainly on Mac) don\'t restore the system\'s original color '
-      'profile after the test completes; leave the system using the sRGB color '
-      'profile. See http://crbug.com/784456.')
-
-  def _CompareScreenshotSamples(self, tab, screenshot, expected_colors,
-                                tolerance, device_pixel_ratio,
-                                test_machine_name):
-    # First scan through the expected_colors and see if there are any scale
-    # factor overrides that would preempt the device pixel ratio. This
-    # is mainly a workaround for complex tests like the Maps test.
-    for expectation in expected_colors:
-      if 'scale_factor_overrides' in expectation:
-        for override in expectation['scale_factor_overrides']:
-          # Require exact matches to avoid confusion, because some
-          # machine models and names might be subsets of others
-          # (e.g. Nexus 5 vs Nexus 5X).
-          if ('device_type' in override and
-              (tab.browser.platform.GetDeviceTypeName() ==
-               override['device_type'])):
-            logging.warning(
-              'Overriding device_pixel_ratio ' + str(device_pixel_ratio) +
-              ' with scale factor ' + str(override['scale_factor']) +
-              ' for device type ' + override['device_type'])
-            device_pixel_ratio = override['scale_factor']
-            break
-          if (test_machine_name and 'machine_name' in override and
-              override["machine_name"] == test_machine_name):
-            logging.warning(
-              'Overriding device_pixel_ratio ' + str(device_pixel_ratio) +
-              ' with scale factor ' + str(override['scale_factor']) +
-              ' for machine name ' + test_machine_name)
-            device_pixel_ratio = override['scale_factor']
-            break
-        # Only support one "scale_factor_overrides" in the expectation format.
-        break
-    for expectation in expected_colors:
-      if "scale_factor_overrides" in expectation:
-        continue
-      location = expectation["location"]
-      size = expectation["size"]
-      x0 = int(location[0] * device_pixel_ratio)
-      x1 = int((location[0] + size[0]) * device_pixel_ratio)
-      y0 = int(location[1] * device_pixel_ratio)
-      y1 = int((location[1] + size[1]) * device_pixel_ratio)
-      for x in range(x0, x1):
-        for y in range(y0, y1):
-          if (x < 0 or y < 0 or x >= image_util.Width(screenshot) or
-              y >= image_util.Height(screenshot)):
-            self.fail(
-                ('Expected pixel location [%d, %d] is out of range on ' +
-                 '[%d, %d] image') %
-                (x, y, image_util.Width(screenshot),
-                 image_util.Height(screenshot)))
-
-          actual_color = image_util.GetPixelColor(screenshot, x, y)
-          expected_color = rgba_color.RgbaColor(
-              expectation["color"][0],
-              expectation["color"][1],
-              expectation["color"][2],
-              expectation["color"][3] if len(expectation["color"]) > 3 else 255)
-          if not actual_color.IsEqual(expected_color, tolerance):
-            self.fail('Expected pixel at ' + str(location) +
-                ' (actual pixel (' + str(x) + ', ' + str(y) + ')) ' +
-                ' to be ' +
-                str(expectation["color"]) + " but got [" +
-                str(actual_color.r) + ", " +
-                str(actual_color.g) + ", " +
-                str(actual_color.b) + ", " +
-                str(actual_color.a) + "]")
-
-  ###
-  ### Routines working with the local disk (only used for local
-  ### testing without a cloud storage account -- the bots do not use
-  ### this code path).
-  ###
-
-  def _UrlToImageName(self, url):
-    image_name = re.sub(r'^(http|https|file)://(/*)', '', url)
-    image_name = re.sub(r'\.\./', '', image_name)
-    image_name = re.sub(r'(\.|/|-)', '_', image_name)
-    return image_name
-
-  def _WriteImage(self, image_path, png_image):
-    output_dir = os.path.dirname(image_path)
-    if not os.path.exists(output_dir):
-      os.makedirs(output_dir)
-    image_util.WritePngFile(png_image, image_path)
-
-  def _WriteErrorImages(self, img_dir, img_name, screenshot, ref_png):
-    full_image_name = img_name + '_' + str(
-      self.GetParsedCommandLineOptions().build_revision)
-    full_image_name = full_image_name + '.png'
-
-    # Always write the failing image.
-    self._WriteImage(
-        os.path.join(img_dir, 'FAIL_' + full_image_name), screenshot)
-
-    if ref_png is not None:
-      # Save the reference image.
-      # This ensures that we get the right revision number.
-      self._WriteImage(
-          os.path.join(img_dir, full_image_name), ref_png)
-
-      # Save the difference image.
-      diff_png = image_util.Diff(screenshot, ref_png)
-      self._WriteImage(
-          os.path.join(img_dir, 'DIFF_' + full_image_name), diff_png)
-
-  @classmethod
-  def _UploadBitmapToCloudStorage(cls, bucket, name, bitmap, public=False):
-    # This sequence of steps works on all platforms to write a temporary
-    # PNG to disk, following the pattern in bitmap_unittest.py. The key to
-    # avoiding PermissionErrors seems to be to not actually try to write to
-    # the temporary file object, but to re-open its name for all operations.
-    temp_file = tempfile.NamedTemporaryFile(suffix='.png').name
-    image_util.WritePngFile(bitmap, temp_file)
-    cloud_storage.Insert(bucket, name, temp_file, publicly_readable=public)
-
-  @classmethod
-  def GenerateGpuTests(cls, options):
-    del options
-    return []
diff --git a/content/test/gpu/gpu_tests/maps_integration_test.py b/content/test/gpu/gpu_tests/maps_integration_test.py
index 21b1611e..22f297e 100644
--- a/content/test/gpu/gpu_tests/maps_integration_test.py
+++ b/content/test/gpu/gpu_tests/maps_integration_test.py
@@ -6,11 +6,11 @@
 import os
 import sys
 
-from gpu_tests import gpu_integration_test
-from gpu_tests import pixel_integration_test
-from gpu_tests import path_util
 from gpu_tests import color_profile_manager
+from gpu_tests import gpu_integration_test
+from gpu_tests import path_util
 from gpu_tests import pixel_test_pages
+from gpu_tests import skia_gold_integration_test_base
 
 from py_utils import cloud_storage
 
@@ -22,7 +22,8 @@
 
 _TOLERANCE = 3
 
-class MapsIntegrationTest(pixel_integration_test.PixelIntegrationTest):
+class MapsIntegrationTest(
+    skia_gold_integration_test_base.SkiaGoldIntegrationTestBase):
   """Google Maps pixel tests.
 
   Note: this test uses the same WPR as the smoothness.maps benchmark
@@ -110,7 +111,7 @@
   def _MapsExpectationToPixelExpectation(self, url, expected_colors, tolerance):
     page = pixel_test_pages.PixelTestPage(
         url=url,
-        name=('Maps_' + url),
+        name=('Maps_maps'),
         # Exact test_rect is arbitrary, just needs to encapsulate all pixels
         # that are tested.
         test_rect=[0, 0, 600, 400],
diff --git a/content/test/gpu/gpu_tests/pixel_integration_test.py b/content/test/gpu/gpu_tests/pixel_integration_test.py
index ea1d873..e5119d2 100644
--- a/content/test/gpu/gpu_tests/pixel_integration_test.py
+++ b/content/test/gpu/gpu_tests/pixel_integration_test.py
@@ -2,34 +2,15 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-from datetime import date
-import json
-import logging
 import os
-import re
-import subprocess
-from subprocess import CalledProcessError
-import shutil
 import sys
-import tempfile
 
 from gpu_tests import gpu_integration_test
-from gpu_tests import cloud_storage_integration_test_base
-from gpu_tests import path_util
 from gpu_tests import pixel_test_pages
-from gpu_tests import color_profile_manager
+from gpu_tests import skia_gold_integration_test_base
 
 from telemetry.util import image_util
 
-gpu_relative_path = "content/test/data/gpu/"
-gpu_data_dir = os.path.join(path_util.GetChromiumSrcDir(), gpu_relative_path)
-
-default_reference_image_dir = os.path.join(gpu_data_dir, 'gpu_reference')
-
-test_data_dirs = [gpu_data_dir,
-                  os.path.join(
-                      path_util.GetChromiumSrcDir(), 'media/test/data')]
-
 test_harness_script = r"""
   var domAutomationController = {};
 
@@ -57,120 +38,18 @@
   window.domAutomationController = domAutomationController;
 """
 
-goldctl_bin = os.path.join(
-    path_util.GetChromiumSrcDir(), 'tools', 'skia_goldctl')
-if sys.platform == 'win32':
-  goldctl_bin = os.path.join(goldctl_bin, 'win', 'goldctl') + '.exe'
-elif sys.platform == 'darwin':
-  goldctl_bin = os.path.join(goldctl_bin, 'mac', 'goldctl')
-else:
-  goldctl_bin = os.path.join(goldctl_bin, 'linux', 'goldctl')
-
-SKIA_GOLD_INSTANCE = 'chrome-gpu'
-
-
-class _ImageParameters(object):
-  def __init__(self):
-    # Parameters for cloud storage reference images.
-    self.vendor_id = None
-    self.device_id = None
-    self.vendor_string = None
-    self.device_string = None
-    self.msaa = False
-    self.model_name = None
-
 
 class PixelIntegrationTest(
-    cloud_storage_integration_test_base.CloudStorageIntegrationTestBase):
-
+    skia_gold_integration_test_base.SkiaGoldIntegrationTestBase):
+  """GPU pixel tests backed by Skia Gold and Telemetry."""
   test_base_name = 'Pixel'
 
-  # This information is class-scoped, so that it can be shared across
-  # invocations of tests; but it's zapped every time the browser is
-  # restarted with different command line arguments.
-  _image_parameters = None
-
-  _skia_gold_temp_dir = None
-
   @classmethod
   def Name(cls):
     """The name by which this test is invoked on the command line."""
     return 'pixel'
 
   @classmethod
-  def SetUpProcess(cls):
-    options = cls.GetParsedCommandLineOptions()
-    color_profile_manager.ForceUntilExitSRGB(
-      options.dont_restore_color_profile_after_test)
-    super(PixelIntegrationTest, cls).SetUpProcess()
-    cls.CustomizeBrowserArgs(cls._AddDefaultArgs([]))
-    cls.StartBrowser()
-    cls.SetStaticServerDirs(test_data_dirs)
-    cls._skia_gold_temp_dir = tempfile.mkdtemp()
-
-  @staticmethod
-  def _AddDefaultArgs(browser_args):
-    if not browser_args:
-      browser_args = []
-    # All tests receive the following options.
-    return [
-      '--force-color-profile=srgb',
-      '--ensure-forced-color-profile',
-      '--enable-gpu-benchmarking',
-      '--test-type=gpu'] + browser_args
-
-  @classmethod
-  def StopBrowser(cls):
-    super(PixelIntegrationTest, cls).StopBrowser()
-    cls.ResetGpuInfo()
-
-  @classmethod
-  def TearDownProcess(cls):
-    super(PixelIntegrationTest, cls).TearDownProcess()
-    if not cls.GetParsedCommandLineOptions().local_run:
-      shutil.rmtree(cls._skia_gold_temp_dir)
-
-  @classmethod
-  def AddCommandlineArgs(cls, parser):
-    super(PixelIntegrationTest, cls).AddCommandlineArgs(parser)
-    parser.add_option(
-      '--reference-dir',
-      help='Overrides the default on-disk location for reference images '
-      '(only used for local testing without a cloud storage account)',
-      default=default_reference_image_dir)
-    parser.add_option(
-      '--review-patch-issue',
-      help='For Skia Gold integration. Gerrit issue ID.',
-      default='')
-    parser.add_option(
-      '--review-patch-set',
-      help='For Skia Gold integration. Gerrit patch set number.',
-      default='')
-    parser.add_option(
-      '--buildbucket-build-id',
-      help='For Skia Gold integration. Buildbucket build ID.',
-      default='')
-    parser.add_option(
-      '--no-skia-gold-failure',
-      action='store_true', default=False,
-      help='For Skia Gold integration. Always report that the test passed even '
-           'if the Skia Gold image comparison reported a failure, but '
-           'otherwise perform the same steps as usual.')
-    parser.add_option(
-      '--local-run',
-      action='store_true', default=False,
-      help='Runs the tests in a manner more suitable for local testing. '
-           'Specifically, runs goldctl in extra_imgtest_args mode (no upload) '
-           'and outputs local links to generated images. Implies '
-           '--no-luci-auth.')
-    parser.add_option(
-      '--no-luci-auth',
-      action='store_true', default=False,
-      help='Don\'t use the service account provided by LUCI for authentication '
-           'for Skia Gold, instead relying on gsutil to be pre-authenticated. '
-           'Meant for testing locally instead of on the bots.')
-
-  @classmethod
   def GenerateGpuTests(cls, options):
     cls.SetParsedCommandLineOptions(options)
     namespace = pixel_test_pages.PixelTestPages
@@ -185,77 +64,11 @@
       pages += namespace.MacSpecificPages(cls.test_base_name)
     if sys.platform.startswith('win'):
       pages += namespace.DirectCompositionPages(cls.test_base_name)
+      pages += namespace.LowLatencySwapChainPages(cls.test_base_name)
     for p in pages:
-      yield(p.name, gpu_relative_path + p.url, (p))
-
-  @classmethod
-  def ResetGpuInfo(cls):
-    cls._image_parameters = None
-
-  @classmethod
-  def GetImageParameters(cls, tab, page):
-    if not cls._image_parameters:
-      cls._ComputeGpuInfo(tab, page)
-    return cls._image_parameters
-
-  @classmethod
-  def _ComputeGpuInfo(cls, tab, page):
-    if cls._image_parameters:
-      return
-    browser = cls.browser
-    system_info = browser.GetSystemInfo()
-    if not system_info:
-      raise Exception('System info must be supported by the browser')
-    if not system_info.gpu:
-      raise Exception('GPU information was absent')
-    device = system_info.gpu.devices[0]
-    cls._image_parameters = _ImageParameters()
-    params = cls._image_parameters
-    if device.vendor_id and device.device_id:
-      params.vendor_id = device.vendor_id
-      params.device_id = device.device_id
-    elif device.vendor_string and device.device_string:
-      params.vendor_string = device.vendor_string
-      params.device_string = device.device_string
-    elif page.gpu_process_disabled:
-      # Match the vendor and device IDs that the browser advertises
-      # when the software renderer is active.
-      params.vendor_id = 65535
-      params.device_id = 65535
-    else:
-      raise Exception('GPU device information was incomplete')
-    # TODO(senorblanco): This should probably be checking
-    # for the presence of the extensions in system_info.gpu_aux_attributes
-    # in order to check for MSAA, rather than sniffing the blacklist.
-    params.msaa = not (
-        ('disable_chromium_framebuffer_multisample' in
-          system_info.gpu.driver_bug_workarounds) or
-        ('disable_multisample_render_to_texture' in
-          system_info.gpu.driver_bug_workarounds))
-    params.model_name = system_info.model_name
-
-  # Not used consistently, but potentially useful for debugging issues on the
-  # bots, so kept around for future use.
-  @classmethod
-  def _UploadGoldErrorImageToCloudStorage(cls, image_name, screenshot):
-    machine_name = re.sub(r'\W+', '_',
-                          cls.GetParsedCommandLineOptions().test_machine_name)
-    base_bucket = '%s/gold_failures' % (cls._error_image_cloud_storage_bucket)
-    image_name_with_revision_and_machine = '%s_%s_%s.png' % (
-      image_name, machine_name,
-      cls.GetParsedCommandLineOptions().build_revision)
-    cls._UploadBitmapToCloudStorage(
-      base_bucket, image_name_with_revision_and_machine, screenshot,
-      public=True)
-
-  def ToHex(self, num):
-    return hex(int(num))
-
-  def ToHexOrNone(self, num):
-    return 'None' if num == None else self.ToHex(num)
-
-  def ToNonEmptyStrOrNone(self, val):
-    return 'None' if val == '' else str(val)
+      yield(p.name,
+           skia_gold_integration_test_base.GPU_RELATIVE_PATH + p.url,
+           (p))
 
   def RunActualGpuTest(self, test_path, *args):
     page = args[0]
@@ -320,180 +133,6 @@
         # Assume that page actions might have killed the GPU process.
         self._RestartBrowser('Must restart after page actions')
 
-  def _GetBuildIdArgs(self):
-    # Get all the information that goldctl requires.
-    parsed_options = self.GetParsedCommandLineOptions()
-    build_id_args = [
-      '--commit',
-      parsed_options.build_revision,
-    ]
-    # If --review-patch-issue is passed, then we assume we're running on a
-    # trybot.
-    if parsed_options.review_patch_issue:
-      build_id_args += [
-        '--issue',
-        parsed_options.review_patch_issue,
-        '--patchset',
-        parsed_options.review_patch_set,
-        '--jobid',
-        parsed_options.buildbucket_build_id
-      ]
-    return build_id_args
-
-  def _UploadTestResultToSkiaGold(self, image_name, screenshot,
-                                  tab, page, build_id_args=None):
-    """Compares the given image using Skia Gold and uploads the result.
-
-    No uploading is done if the test is being run in local run mode. Compares
-    the given screenshot to baselines provided by Gold, raising an Exception if
-    a match is not found.
-
-    Args:
-      image_name: the name of the image being checked.
-      screenshot: the image being checked as a Telemetry Bitmap.
-      tab: the Telemetry Tab object that the test was run in.
-      page: the GPU PixelTestPage object for the test.
-      build_id_args: a list of build-identifying flags and values.
-    """
-    if not isinstance(build_id_args, list) or '--commit' not in build_id_args:
-      raise Exception('Requires build args to be specified, including --commit')
-
-    # Write screenshot to PNG file on local disk.
-    png_temp_file = tempfile.NamedTemporaryFile(
-        suffix='.png', dir=self._skia_gold_temp_dir).name
-    image_util.WritePngFile(screenshot, png_temp_file)
-
-    # Get all information that goldctl will need.
-    img_params = self.GetImageParameters(tab, page)
-    # All values need to be strings, otherwise goldctl fails.
-    gpu_keys = {
-      'vendor_id': self.ToHexOrNone(img_params.vendor_id),
-      'device_id': self.ToHexOrNone(img_params.device_id),
-      'vendor_string': self.ToNonEmptyStrOrNone(img_params.vendor_string),
-      'device_string': self.ToNonEmptyStrOrNone(img_params.device_string),
-      'msaa': str(img_params.msaa),
-      'model_name': self.ToNonEmptyStrOrNone(img_params.model_name),
-    }
-    json_temp_file = tempfile.NamedTemporaryFile(
-        suffix='.json', dir=self._skia_gold_temp_dir).name
-    failure_file = tempfile.NamedTemporaryFile(
-        suffix='.txt', dir=self._skia_gold_temp_dir).name
-    with open(json_temp_file, 'w+') as f:
-      json.dump(gpu_keys, f)
-
-    # Figure out any extra args we need to pass to goldctl.
-    extra_imgtest_args = []
-    extra_auth_args = []
-    parsed_options = self.GetParsedCommandLineOptions()
-    if parsed_options.local_run:
-      extra_imgtest_args.append('--dryrun')
-    elif not parsed_options.no_luci_auth:
-      extra_auth_args = ['--luci']
-
-    # Run goldctl for a result.
-    try:
-      subprocess.check_output([goldctl_bin, 'auth',
-                               '--work-dir', self._skia_gold_temp_dir]
-                               + extra_auth_args,
-            stderr=subprocess.STDOUT)
-      cmd = ([goldctl_bin, 'imgtest', 'add', '--passfail',
-              '--test-name', image_name,
-              '--instance', SKIA_GOLD_INSTANCE,
-              '--keys-file', json_temp_file,
-              '--png-file', png_temp_file,
-              '--work-dir', self._skia_gold_temp_dir,
-              '--failure-file', failure_file] +
-              build_id_args + extra_imgtest_args)
-      subprocess.check_output(cmd, stderr=subprocess.STDOUT)
-    except CalledProcessError as e:
-      # The triage link for the image is output to the failure file, so report
-      # that if it's available so it shows up in Milo. If for whatever reason
-      # the file is not present or malformed, the triage link will still be
-      # present in the stdout of the goldctl command.
-      # If we're running on a trybot, instead generate a link to all results
-      # for the CL so that the user can visit a single page instead of
-      # clicking on multiple links on potentially multiple bots.
-      if parsed_options.review_patch_issue:
-        cl_images = ('https://%s-gold.skia.org/search?'
-                     'issue=%s&new_clstore=true' % (
-                       SKIA_GOLD_INSTANCE, parsed_options.review_patch_issue))
-        self.artifacts.CreateLink('triage_link_for_entire_cl', cl_images)
-      else:
-        try:
-          with open(failure_file, 'r') as ff:
-            self.artifacts.CreateLink('gold_triage_link', ff.read())
-        except Exception:
-          logging.error('Failed to read contents of goldctl failure file')
-
-      logging.error('goldctl failed with output: %s', e.output)
-      if parsed_options.local_run:
-        logging.error(
-            'Image produced by %s: file://%s', image_name, png_temp_file)
-        gold_images = ('https://%s-gold.skia.org/search?'
-                      'match=name&metric=combined&pos=true&'
-                      'query=name%%3D%s&unt=false' % (
-                          SKIA_GOLD_INSTANCE, image_name))
-        logging.error(
-            'Approved images for %s in Gold: %s', image_name, gold_images)
-      if self._ShouldReportGoldFailure(page):
-        raise Exception('goldctl command failed, see above for details')
-
-  def _ShouldReportGoldFailure(self, page):
-    """Determines if a Gold failure should actually be surfaced.
-
-    Args:
-      page: The GPU PixelTestPage object for the test.
-
-    Returns:
-      True if the failure should be surfaced, i.e. the test should fail,
-      otherwise False.
-    """
-    parsed_options = self.GetParsedCommandLineOptions()
-    # Don't surface if we're explicitly told not to.
-    if parsed_options.no_skia_gold_failure:
-      return False
-    # Don't surface if the test was recently added and we're still within its
-    # grace period. However, fail if we're on a trybot so that as many images
-    # can be triaged as possible before a new test is committed.
-    if (page.grace_period_end and date.today() <= page.grace_period_end and
-        not parsed_options.review_patch_issue):
-      return False
-    return True
-
-  def _ValidateScreenshotSamplesWithSkiaGold(self, tab, page, screenshot,
-                                             device_pixel_ratio,
-                                             build_id_args):
-    """Samples the given screenshot and verifies pixel color values.
-
-    In case any of the samples do not match the expected color, it raises
-    a Failure and uploads the image to Gold.
-
-    Args:
-      tab: the Telemetry Tab object that the test was run in.
-      page: the GPU PixelTestPage object for the test.
-      screenshot: the screenshot of the test page as a Telemetry Bitmap.
-      device_pixel_ratio: the device pixel ratio for the test device as a float.
-      build_id_args: a list of build-identifying flags and values.
-    """
-    try:
-      self._CompareScreenshotSamples(
-        tab, screenshot, page.expected_colors, page.tolerance,
-        device_pixel_ratio,
-        self.GetParsedCommandLineOptions().test_machine_name)
-    except Exception:
-      # An exception raised from self.fail() indicates a failure.
-      image_name = self._UrlToImageName(page.name)
-      # We want to report the screenshot comparison failure, not any failures
-      # related to Gold.
-      try:
-        self._UploadTestResultToSkiaGold(
-          image_name, screenshot,
-          tab, page,
-          build_id_args=build_id_args)
-      except Exception as e:
-        logging.error(str(e))
-      raise
-
   def _DoPageAction(self, tab, page):
     getattr(self, '_' + page.optional_action)(tab, page)
     # Now that we've done the page's specific action, wait for it to
diff --git a/content/test/gpu/gpu_tests/pixel_test_pages.py b/content/test/gpu/gpu_tests/pixel_test_pages.py
index 59efc74..244466c 100644
--- a/content/test/gpu/gpu_tests/pixel_test_pages.py
+++ b/content/test/gpu/gpu_tests/pixel_test_pages.py
@@ -956,13 +956,6 @@
 
       PixelTestPage(
         'pixel_canvas_low_latency_2d.html',
-        base_name + '_CanvasLowLatency2DSwapChain',
-        test_rect=[0, 0, 100, 100],
-        browser_args=browser_args +
-        ['--enable-features=LowLatencyCanvas2dSwapChain']),
-
-      PixelTestPage(
-        'pixel_canvas_low_latency_2d.html',
         base_name + '_CanvasUnacceleratedLowLatency2D',
         test_rect=[0, 0, 100, 100],
         browser_args=browser_args + unaccelerated_args),
@@ -982,13 +975,25 @@
             'color': [0, 255, 0],
           },
         ]),
+    ]
+
+  @staticmethod
+  def LowLatencySwapChainPages(base_name):
+    browser_args = [
+        '--enable-features=LowLatencyWebGLSwapChain,LowLatencyCanvas2dSwapChain'
+    ]
+    return [
+      PixelTestPage(
+        'pixel_canvas_low_latency_2d.html',
+        base_name + '_CanvasLowLatency2DSwapChain',
+        test_rect=[0, 0, 100, 100],
+        browser_args=browser_args),
 
       PixelTestPage(
         'pixel_canvas_low_latency_webgl.html',
         base_name + '_CanvasLowLatencyWebGLSwapChain',
         test_rect=[0, 0, 200, 200],
-        browser_args=browser_args +
-        ['--enable-features=LowLatencyWebGLSwapChain'],
+        browser_args=browser_args,
         tolerance=0,
         expected_colors=[
           SCALE_FACTOR_OVERRIDES,
@@ -1004,8 +1009,7 @@
         'pixel_canvas_low_latency_webgl_alpha_false.html',
         base_name + '_CanvasLowLatencyWebGLSwapChainAlphaFalse',
         test_rect=[0, 0, 200, 200],
-        browser_args=browser_args +
-        ['--enable-features=LowLatencyWebGLSwapChain'],
+        browser_args=browser_args,
         tolerance=0,
         expected_colors=[
           SCALE_FACTOR_OVERRIDES,
diff --git a/content/test/gpu/gpu_tests/skia_gold_integration_test_base.py b/content/test/gpu/gpu_tests/skia_gold_integration_test_base.py
new file mode 100644
index 0000000..da273169
--- /dev/null
+++ b/content/test/gpu/gpu_tests/skia_gold_integration_test_base.py
@@ -0,0 +1,504 @@
+# Copyright 2019 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.
+
+from datetime import date
+import json
+import logging
+import os
+import re
+import subprocess
+from subprocess import CalledProcessError
+import shutil
+import sys
+import tempfile
+
+from gpu_tests import gpu_integration_test
+from gpu_tests import path_util
+from gpu_tests import color_profile_manager
+
+from py_utils import cloud_storage
+
+from telemetry.util import image_util
+from telemetry.util import rgba_color
+
+GPU_RELATIVE_PATH = "content/test/data/gpu/"
+GPU_DATA_DIR = os.path.join(path_util.GetChromiumSrcDir(), GPU_RELATIVE_PATH)
+TEST_DATA_DIRS = [GPU_DATA_DIR,
+                  os.path.join(
+                      path_util.GetChromiumSrcDir(), 'media/test/data')]
+
+goldctl_bin = os.path.join(
+    path_util.GetChromiumSrcDir(), 'tools', 'skia_goldctl')
+if sys.platform == 'win32':
+  goldctl_bin = os.path.join(goldctl_bin, 'win', 'goldctl') + '.exe'
+elif sys.platform == 'darwin':
+  goldctl_bin = os.path.join(goldctl_bin, 'mac', 'goldctl')
+else:
+  goldctl_bin = os.path.join(goldctl_bin, 'linux', 'goldctl')
+
+SKIA_GOLD_INSTANCE = 'chrome-gpu'
+
+
+class _ImageParameters(object):
+  def __init__(self):
+    # Parameters for cloud storage reference images.
+    self.vendor_id = None
+    self.device_id = None
+    self.vendor_string = None
+    self.device_string = None
+    self.msaa = False
+    self.model_name = None
+
+
+class SkiaGoldIntegrationTestBase(gpu_integration_test.GpuIntegrationTest):
+  """Base class for all tests that upload results to Skia Gold."""
+  # The command line options (which are passed to subclasses'
+  # GenerateGpuTests) *must* be configured here, via a call to
+  # SetParsedCommandLineOptions. If they are not, an error will be
+  # raised when running the tests.
+  _parsed_command_line_options = None
+
+  _error_image_cloud_storage_bucket = 'chromium-browser-gpu-tests'
+
+  # This information is class-scoped, so that it can be shared across
+  # invocations of tests; but it's zapped every time the browser is
+  # restarted with different command line arguments.
+  _image_parameters = None
+
+  _skia_gold_temp_dir = None
+
+  @classmethod
+  def SetParsedCommandLineOptions(cls, options):
+    cls._parsed_command_line_options = options
+
+  @classmethod
+  def GetParsedCommandLineOptions(cls):
+    return cls._parsed_command_line_options
+
+  @classmethod
+  def SetUpProcess(cls):
+    options = cls.GetParsedCommandLineOptions()
+    color_profile_manager.ForceUntilExitSRGB(
+      options.dont_restore_color_profile_after_test)
+    super(SkiaGoldIntegrationTestBase, cls).SetUpProcess()
+    cls.CustomizeBrowserArgs(cls._AddDefaultArgs([]))
+    cls.StartBrowser()
+    cls.SetStaticServerDirs(TEST_DATA_DIRS)
+    cls._skia_gold_temp_dir = tempfile.mkdtemp()
+
+  @staticmethod
+  def _AddDefaultArgs(browser_args):
+    if not browser_args:
+      browser_args = []
+    # All tests receive the following options.
+    return [
+      '--force-color-profile=srgb',
+      '--ensure-forced-color-profile',
+      '--enable-gpu-benchmarking',
+      '--test-type=gpu'] + browser_args
+
+  @classmethod
+  def StopBrowser(cls):
+    super(SkiaGoldIntegrationTestBase, cls).StopBrowser()
+    cls.ResetGpuInfo()
+
+  @classmethod
+  def TearDownProcess(cls):
+    super(SkiaGoldIntegrationTestBase, cls).TearDownProcess()
+    if not cls.GetParsedCommandLineOptions().local_run:
+      shutil.rmtree(cls._skia_gold_temp_dir)
+
+  @classmethod
+  def AddCommandlineArgs(cls, parser):
+    super(SkiaGoldIntegrationTestBase, cls).AddCommandlineArgs(parser)
+    parser.add_option(
+      '--build-revision',
+      help='Chrome revision being tested.',
+      default="unknownrev")
+    parser.add_option(
+      '--test-machine-name',
+      help='Name of the test machine. Specifying this argument causes this '
+      'script to upload failure images and diffs to cloud storage directly, '
+      'instead of relying on the archive_gpu_pixel_test_results.py script.',
+      default='')
+    parser.add_option(
+      '--dont-restore-color-profile-after-test',
+      dest='dont_restore_color_profile_after_test',
+      action='store_true', default=False,
+      help='(Mainly on Mac) don\'t restore the system\'s original color '
+      'profile after the test completes; leave the system using the sRGB color '
+      'profile. See http://crbug.com/784456.')
+    parser.add_option(
+      '--review-patch-issue',
+      help='For Skia Gold integration. Gerrit issue ID.',
+      default='')
+    parser.add_option(
+      '--review-patch-set',
+      help='For Skia Gold integration. Gerrit patch set number.',
+      default='')
+    parser.add_option(
+      '--buildbucket-build-id',
+      help='For Skia Gold integration. Buildbucket build ID.',
+      default='')
+    parser.add_option(
+      '--no-skia-gold-failure',
+      action='store_true', default=False,
+      help='For Skia Gold integration. Always report that the test passed even '
+           'if the Skia Gold image comparison reported a failure, but '
+           'otherwise perform the same steps as usual.')
+    parser.add_option(
+      '--local-run',
+      action='store_true', default=False,
+      help='Runs the tests in a manner more suitable for local testing. '
+           'Specifically, runs goldctl in extra_imgtest_args mode (no upload) '
+           'and outputs local links to generated images. Implies '
+           '--no-luci-auth.')
+    parser.add_option(
+      '--no-luci-auth',
+      action='store_true', default=False,
+      help='Don\'t use the service account provided by LUCI for authentication '
+           'for Skia Gold, instead relying on gsutil to be pre-authenticated. '
+           'Meant for testing locally instead of on the bots.')
+
+  @classmethod
+  def ResetGpuInfo(cls):
+    cls._image_parameters = None
+
+  @classmethod
+  def GetImageParameters(cls, tab, page):
+    if not cls._image_parameters:
+      cls._ComputeGpuInfo(tab, page)
+    return cls._image_parameters
+
+  @classmethod
+  def _ComputeGpuInfo(cls, tab, page):
+    if cls._image_parameters:
+      return
+    browser = cls.browser
+    system_info = browser.GetSystemInfo()
+    if not system_info:
+      raise Exception('System info must be supported by the browser')
+    if not system_info.gpu:
+      raise Exception('GPU information was absent')
+    device = system_info.gpu.devices[0]
+    cls._image_parameters = _ImageParameters()
+    params = cls._image_parameters
+    if device.vendor_id and device.device_id:
+      params.vendor_id = device.vendor_id
+      params.device_id = device.device_id
+    elif device.vendor_string and device.device_string:
+      params.vendor_string = device.vendor_string
+      params.device_string = device.device_string
+    elif page.gpu_process_disabled:
+      # Match the vendor and device IDs that the browser advertises
+      # when the software renderer is active.
+      params.vendor_id = 65535
+      params.device_id = 65535
+    else:
+      raise Exception('GPU device information was incomplete')
+    # TODO(senorblanco): This should probably be checking
+    # for the presence of the extensions in system_info.gpu_aux_attributes
+    # in order to check for MSAA, rather than sniffing the blacklist.
+    params.msaa = not (
+        ('disable_chromium_framebuffer_multisample' in
+          system_info.gpu.driver_bug_workarounds) or
+        ('disable_multisample_render_to_texture' in
+          system_info.gpu.driver_bug_workarounds))
+    params.model_name = system_info.model_name
+
+  @classmethod
+  def _UploadBitmapToCloudStorage(cls, bucket, name, bitmap, public=False):
+    # This sequence of steps works on all platforms to write a temporary
+    # PNG to disk, following the pattern in bitmap_unittest.py. The key to
+    # avoiding PermissionErrors seems to be to not actually try to write to
+    # the temporary file object, but to re-open its name for all operations.
+    temp_file = tempfile.NamedTemporaryFile(suffix='.png').name
+    image_util.WritePngFile(bitmap, temp_file)
+    cloud_storage.Insert(bucket, name, temp_file, publicly_readable=public)
+
+  # Not used consistently, but potentially useful for debugging issues on the
+  # bots, so kept around for future use.
+  @classmethod
+  def _UploadGoldErrorImageToCloudStorage(cls, image_name, screenshot):
+    machine_name = re.sub(r'\W+', '_',
+                          cls.GetParsedCommandLineOptions().test_machine_name)
+    base_bucket = '%s/gold_failures' % (cls._error_image_cloud_storage_bucket)
+    image_name_with_revision_and_machine = '%s_%s_%s.png' % (
+      image_name, machine_name,
+      cls.GetParsedCommandLineOptions().build_revision)
+    cls._UploadBitmapToCloudStorage(
+      base_bucket, image_name_with_revision_and_machine, screenshot,
+      public=True)
+
+  def _CompareScreenshotSamples(self, tab, screenshot, expected_colors,
+                                tolerance, device_pixel_ratio,
+                                test_machine_name):
+    # First scan through the expected_colors and see if there are any scale
+    # factor overrides that would preempt the device pixel ratio. This
+    # is mainly a workaround for complex tests like the Maps test.
+    for expectation in expected_colors:
+      if 'scale_factor_overrides' in expectation:
+        for override in expectation['scale_factor_overrides']:
+          # Require exact matches to avoid confusion, because some
+          # machine models and names might be subsets of others
+          # (e.g. Nexus 5 vs Nexus 5X).
+          if ('device_type' in override and
+              (tab.browser.platform.GetDeviceTypeName() ==
+               override['device_type'])):
+            logging.warning(
+              'Overriding device_pixel_ratio ' + str(device_pixel_ratio) +
+              ' with scale factor ' + str(override['scale_factor']) +
+              ' for device type ' + override['device_type'])
+            device_pixel_ratio = override['scale_factor']
+            break
+          if (test_machine_name and 'machine_name' in override and
+              override["machine_name"] == test_machine_name):
+            logging.warning(
+              'Overriding device_pixel_ratio ' + str(device_pixel_ratio) +
+              ' with scale factor ' + str(override['scale_factor']) +
+              ' for machine name ' + test_machine_name)
+            device_pixel_ratio = override['scale_factor']
+            break
+        # Only support one "scale_factor_overrides" in the expectation format.
+        break
+    for expectation in expected_colors:
+      if "scale_factor_overrides" in expectation:
+        continue
+      location = expectation["location"]
+      size = expectation["size"]
+      x0 = int(location[0] * device_pixel_ratio)
+      x1 = int((location[0] + size[0]) * device_pixel_ratio)
+      y0 = int(location[1] * device_pixel_ratio)
+      y1 = int((location[1] + size[1]) * device_pixel_ratio)
+      for x in range(x0, x1):
+        for y in range(y0, y1):
+          if (x < 0 or y < 0 or x >= image_util.Width(screenshot) or
+              y >= image_util.Height(screenshot)):
+            self.fail(
+                ('Expected pixel location [%d, %d] is out of range on ' +
+                 '[%d, %d] image') %
+                (x, y, image_util.Width(screenshot),
+                 image_util.Height(screenshot)))
+
+          actual_color = image_util.GetPixelColor(screenshot, x, y)
+          expected_color = rgba_color.RgbaColor(
+              expectation["color"][0],
+              expectation["color"][1],
+              expectation["color"][2],
+              expectation["color"][3] if len(expectation["color"]) > 3 else 255)
+          if not actual_color.IsEqual(expected_color, tolerance):
+            self.fail('Expected pixel at ' + str(location) +
+                ' (actual pixel (' + str(x) + ', ' + str(y) + ')) ' +
+                ' to be ' +
+                str(expectation["color"]) + " but got [" +
+                str(actual_color.r) + ", " +
+                str(actual_color.g) + ", " +
+                str(actual_color.b) + ", " +
+                str(actual_color.a) + "]")
+
+  def ToHex(self, num):
+    return hex(int(num))
+
+  def ToHexOrNone(self, num):
+    return 'None' if num == None else self.ToHex(num)
+
+  def ToNonEmptyStrOrNone(self, val):
+    return 'None' if val == '' else str(val)
+
+  def _UrlToImageName(self, url):
+    image_name = re.sub(r'^(http|https|file)://(/*)', '', url)
+    image_name = re.sub(r'\.\./', '', image_name)
+    image_name = re.sub(r'(\.|/|-)', '_', image_name)
+    return image_name
+
+  def _GetBuildIdArgs(self):
+    # Get all the information that goldctl requires.
+    parsed_options = self.GetParsedCommandLineOptions()
+    build_id_args = [
+      '--commit',
+      parsed_options.build_revision,
+    ]
+    # If --review-patch-issue is passed, then we assume we're running on a
+    # trybot.
+    if parsed_options.review_patch_issue:
+      build_id_args += [
+        '--issue',
+        parsed_options.review_patch_issue,
+        '--patchset',
+        parsed_options.review_patch_set,
+        '--jobid',
+        parsed_options.buildbucket_build_id
+      ]
+    return build_id_args
+
+  def GetGoldJsonKeys(self, tab, page):
+    """Get all the JSON metadata that will be passed to golctl."""
+    img_params = self.GetImageParameters(tab, page)
+    # All values need to be strings, otherwise goldctl fails.
+    gpu_keys = {
+      'vendor_id': self.ToHexOrNone(img_params.vendor_id),
+      'device_id': self.ToHexOrNone(img_params.device_id),
+      'vendor_string': self.ToNonEmptyStrOrNone(img_params.vendor_string),
+      'device_string': self.ToNonEmptyStrOrNone(img_params.device_string),
+      'msaa': str(img_params.msaa),
+      'model_name': self.ToNonEmptyStrOrNone(img_params.model_name),
+    }
+    return gpu_keys
+
+  def _UploadTestResultToSkiaGold(self, image_name, screenshot,
+                                  tab, page, build_id_args=None):
+    """Compares the given image using Skia Gold and uploads the result.
+
+    No uploading is done if the test is being run in local run mode. Compares
+    the given screenshot to baselines provided by Gold, raising an Exception if
+    a match is not found.
+
+    Args:
+      image_name: the name of the image being checked.
+      screenshot: the image being checked as a Telemetry Bitmap.
+      tab: the Telemetry Tab object that the test was run in.
+      page: the GPU PixelTestPage object for the test.
+      build_id_args: a list of build-identifying flags and values.
+    """
+    if not isinstance(build_id_args, list) or '--commit' not in build_id_args:
+      raise Exception('Requires build args to be specified, including --commit')
+
+    # Write screenshot to PNG file on local disk.
+    png_temp_file = tempfile.NamedTemporaryFile(
+        suffix='.png', dir=self._skia_gold_temp_dir).name
+    image_util.WritePngFile(screenshot, png_temp_file)
+
+    gpu_keys = self.GetGoldJsonKeys(tab, page)
+    json_temp_file = tempfile.NamedTemporaryFile(
+        suffix='.json', dir=self._skia_gold_temp_dir).name
+    failure_file = tempfile.NamedTemporaryFile(
+        suffix='.txt', dir=self._skia_gold_temp_dir).name
+    with open(json_temp_file, 'w+') as f:
+      json.dump(gpu_keys, f)
+
+    # Figure out any extra args we need to pass to goldctl.
+    extra_imgtest_args = []
+    extra_auth_args = []
+    parsed_options = self.GetParsedCommandLineOptions()
+    if parsed_options.local_run:
+      extra_imgtest_args.append('--dryrun')
+    elif not parsed_options.no_luci_auth:
+      extra_auth_args = ['--luci']
+
+    # Run goldctl for a result.
+    try:
+      subprocess.check_output([goldctl_bin, 'auth',
+                               '--work-dir', self._skia_gold_temp_dir]
+                               + extra_auth_args,
+            stderr=subprocess.STDOUT)
+      cmd = ([goldctl_bin, 'imgtest', 'add', '--passfail',
+              '--test-name', image_name,
+              '--instance', SKIA_GOLD_INSTANCE,
+              '--keys-file', json_temp_file,
+              '--png-file', png_temp_file,
+              '--work-dir', self._skia_gold_temp_dir,
+              '--failure-file', failure_file] +
+              build_id_args + extra_imgtest_args)
+      subprocess.check_output(cmd, stderr=subprocess.STDOUT)
+    except CalledProcessError as e:
+      # The triage link for the image is output to the failure file, so report
+      # that if it's available so it shows up in Milo. If for whatever reason
+      # the file is not present or malformed, the triage link will still be
+      # present in the stdout of the goldctl command.
+      # If we're running on a trybot, instead generate a link to all results
+      # for the CL so that the user can visit a single page instead of
+      # clicking on multiple links on potentially multiple bots.
+      if parsed_options.review_patch_issue:
+        cl_images = ('https://%s-gold.skia.org/search?'
+                     'issue=%s&new_clstore=true' % (
+                       SKIA_GOLD_INSTANCE, parsed_options.review_patch_issue))
+        self.artifacts.CreateLink('triage_link_for_entire_cl', cl_images)
+      else:
+        try:
+          with open(failure_file, 'r') as ff:
+            self.artifacts.CreateLink('gold_triage_link', ff.read())
+        except Exception:
+          logging.error('Failed to read contents of goldctl failure file')
+
+      logging.error('goldctl failed with output: %s', e.output)
+      if parsed_options.local_run:
+        logging.error(
+            'Image produced by %s: file://%s', image_name, png_temp_file)
+        gold_images = ('https://%s-gold.skia.org/search?'
+                      'match=name&metric=combined&pos=true&'
+                      'query=name%%3D%s&unt=false' % (
+                          SKIA_GOLD_INSTANCE, image_name))
+        logging.error(
+            'Approved images for %s in Gold: %s', image_name, gold_images)
+      if self._ShouldReportGoldFailure(page):
+        raise Exception('goldctl command failed, see above for details')
+
+  def _ShouldReportGoldFailure(self, page):
+    """Determines if a Gold failure should actually be surfaced.
+
+    Args:
+      page: The GPU PixelTestPage object for the test.
+
+    Returns:
+      True if the failure should be surfaced, i.e. the test should fail,
+      otherwise False.
+    """
+    parsed_options = self.GetParsedCommandLineOptions()
+    # Don't surface if we're explicitly told not to.
+    if parsed_options.no_skia_gold_failure:
+      return False
+    # Don't surface if the test was recently added and we're still within its
+    # grace period. However, fail if we're on a trybot so that as many images
+    # can be triaged as possible before a new test is committed.
+    if (page.grace_period_end and date.today() <= page.grace_period_end and
+        not parsed_options.review_patch_issue):
+      return False
+    return True
+
+  def _ValidateScreenshotSamplesWithSkiaGold(self, tab, page, screenshot,
+                                             device_pixel_ratio,
+                                             build_id_args):
+    """Samples the given screenshot and verifies pixel color values.
+
+    In case any of the samples do not match the expected color, it raises
+    a Failure and uploads the image to Gold.
+
+    Args:
+      tab: the Telemetry Tab object that the test was run in.
+      page: the GPU PixelTestPage object for the test.
+      screenshot: the screenshot of the test page as a Telemetry Bitmap.
+      device_pixel_ratio: the device pixel ratio for the test device as a float.
+      build_id_args: a list of build-identifying flags and values.
+    """
+    try:
+      self._CompareScreenshotSamples(
+        tab, screenshot, page.expected_colors, page.tolerance,
+        device_pixel_ratio,
+        self.GetParsedCommandLineOptions().test_machine_name)
+    except Exception:
+      # An exception raised from self.fail() indicates a failure.
+      image_name = self._UrlToImageName(page.name)
+      # We want to report the screenshot comparison failure, not any failures
+      # related to Gold.
+      try:
+        self._UploadTestResultToSkiaGold(
+          image_name, screenshot,
+          tab, page,
+          build_id_args=build_id_args)
+      except Exception as e:
+        logging.error(str(e))
+      raise
+
+  @classmethod
+  def GenerateGpuTests(cls, options):
+    del options
+    return []
+
+  def RunActualGpuTest(self, options):
+    raise NotImplementedError(
+        'RunActualGpuTest must be overridden in a subclass')
+
+def load_tests(loader, tests, pattern):
+  del loader, tests, pattern  # Unused.
+  return gpu_integration_test.LoadAllTestsInModule(sys.modules[__name__])
diff --git a/content/test/gpu/gpu_tests/test_expectations/trace_test_expectations.txt b/content/test/gpu/gpu_tests/test_expectations/trace_test_expectations.txt
index 0d56f55e..35815868 100644
--- a/content/test/gpu/gpu_tests/test_expectations/trace_test_expectations.txt
+++ b/content/test/gpu/gpu_tests/test_expectations/trace_test_expectations.txt
@@ -29,6 +29,11 @@
 crbug.com/867136 [ android ] OverlayModeTraceTest_* [ Skip ]
 crbug.com/867136 [ chromeos ] OverlayModeTraceTest_* [ Skip ]
 crbug.com/867136 [ win7 ] OverlayModeTraceTest_* [ Skip ]
+crbug.com/1009860 [ mac ] SwapChainTraceTest_* [ Skip ]
+crbug.com/1009860 [ linux ] SwapChainTraceTest_* [ Skip ]
+crbug.com/1009860 [ android ] SwapChainTraceTest_* [ Skip ]
+crbug.com/1009860 [ chromeos ] SwapChainTraceTest_* [ Skip ]
+crbug.com/1009860 [ win7 ] SwapChainTraceTest_* [ Skip ]
 
 # VP9 videos fail to trigger zero copy video presentation path.
 crbug.com/930343 [ win intel ] VideoPathTraceTest_DirectComposition_Video_VP9_Fullsize [ Failure ]
diff --git a/content/test/gpu/gpu_tests/trace_integration_test.py b/content/test/gpu/gpu_tests/trace_integration_test.py
index 55a9841..268641f 100644
--- a/content/test/gpu/gpu_tests/trace_integration_test.py
+++ b/content/test/gpu/gpu_tests/trace_integration_test.py
@@ -83,6 +83,7 @@
 
 _GET_STATISTICS_EVENT_NAME = 'GetFrameStatisticsMedia'
 _SWAP_CHAIN_PRESENT_EVENT_NAME = 'SwapChain::Present'
+_PRESENT_TO_SWAP_CHAIN_EVENT_NAME = 'SwapChainPresenter::PresentToSwapChain'
 
 
 class TraceIntegrationTest(gpu_integration_test.GpuIntegrationTest):
@@ -122,6 +123,14 @@
               'finish_js_condition': 'domAutomationController._finished',
               'success_eval_func': 'CheckVideoPath',
               'other_args': p.other_args})
+    for p in namespace.LowLatencySwapChainPages('SwapChainTraceTest'):
+      yield (p.name, gpu_relative_path + p.url,
+             {'browser_args': p.browser_args,
+              'category': 'gpu',
+              'test_harness_script': basic_test_harness_script,
+              'finish_js_condition': 'domAutomationController._finished',
+              'success_eval_func': 'CheckSwapChainPath',
+              'other_args': p.other_args})
     for p in namespace.DirectCompositionPages('OverlayModeTraceTest'):
       if p.other_args and p.other_args.get('video_is_rotated', False):
         # For all drivers we tested, when a video is rotated, frames won't
@@ -156,7 +165,7 @@
     # Set up tracing.
     config = tracing_config.TracingConfig()
     config.chrome_trace_config.category_filter.AddExcludedCategory('*')
-    config.chrome_trace_config.category_filter.AddDisabledByDefault(category)
+    config.chrome_trace_config.category_filter.AddFilter(category)
     config.enable_chrome_trace = True
     tab = self.tab
     tab.browser.platform.tracing_controller.StartTracing(config, 60)
@@ -371,6 +380,30 @@
           TraceIntegrationTest._SwapChainPresentationModeListToStr(
               presentation_mode_history))
 
+  def _EvaluateSuccess_CheckSwapChainPath(self, category, event_iterator,
+                                          other_args):
+    """Verified that swap chains were used for low latency canvas."""
+    os_name = self.browser.platform.GetOSName()
+    assert os_name and os_name.lower() == 'win'
+
+    overlay_bot_config = self.GetOverlayBotConfig()
+    if overlay_bot_config is None:
+      self.fail('Overlay bot config can not be determined')
+    assert overlay_bot_config.get('direct_composition', False)
+
+    # Verify expectations through captured trace events.
+    for event in event_iterator:
+      if event.category != category:
+        continue
+      if event.name != _PRESENT_TO_SWAP_CHAIN_EVENT_NAME:
+        continue
+      presentation_mode = event.args.get('image_type', None)
+      if presentation_mode == 'swap chain':
+        break
+    else:
+      self.fail('Events with name %s were not found' %
+                _SWAP_CHAIN_PRESENT_EVENT_NAME)
+
   @classmethod
   def ExpectationsFiles(cls):
     return [
diff --git a/device/vr/buildflags/buildflags.gni b/device/vr/buildflags/buildflags.gni
index dfe975ea..fc2f5e7 100644
--- a/device/vr/buildflags/buildflags.gni
+++ b/device/vr/buildflags/buildflags.gni
@@ -48,9 +48,6 @@
   enable_arcore = enable_vr && is_android && !is_chromecast &&
                   (current_cpu == "arm" || current_cpu == "arm64")
 
-  # When true, portions of VR's native code are included in the VR DFM.
-  modularize_vr_native = true
-
   # Whether to create AR module as an asynchronous DFM.
   async_ar = false
 
diff --git a/device/vr/windows/compositor_base.cc b/device/vr/windows/compositor_base.cc
index f87ef23..3b78103 100644
--- a/device/vr/windows/compositor_base.cc
+++ b/device/vr/windows/compositor_base.cc
@@ -215,6 +215,14 @@
 
   on_visibility_state_changed_ = std::move(on_visibility_state_changed);
 
+  // Queue up a notification to the requester of the current visibility state,
+  // so that it can be initialized to the right value.
+  if (on_visibility_state_changed_) {
+    main_thread_task_runner_->PostTask(
+        FROM_HERE,
+        base::BindOnce(on_visibility_state_changed_, visibility_state_));
+  }
+
   device::mojom::XRPresentationTransportOptionsPtr transport_options =
       device::mojom::XRPresentationTransportOptions::New();
   transport_options->transport_method =
@@ -274,12 +282,15 @@
   }
 }
 
-void XRCompositorCommon::VisibilityStateChanged(
+void XRCompositorCommon::SetVisibilityState(
     mojom::XRVisibilityState visibility_state) {
-  if (on_visibility_state_changed_) {
-    main_thread_task_runner_->PostTask(
-        FROM_HERE,
-        base::BindOnce(on_visibility_state_changed_, visibility_state));
+  if (visibility_state_ != visibility_state) {
+    visibility_state_ = visibility_state;
+    if (on_visibility_state_changed_) {
+      main_thread_task_runner_->PostTask(
+          FROM_HERE,
+          base::BindOnce(on_visibility_state_changed_, visibility_state));
+    }
   }
 }
 
@@ -385,9 +396,17 @@
   // Update gamepad controllers.
   UpdateControllerState();
 
+  // This method represents a call from the renderer process. If our visibility
+  // state is hidden, we should avoid handing "sensitive" information, like the
+  // pose back up to the renderer. Note that this check is done here as other
+  // methods (RequestNextOverlayPose) represent a call from the browser process,
+  // which should receive the pose.
+  bool is_visible =
+      (visibility_state_ != device::mojom::XRVisibilityState::HIDDEN);
+
   // We have posted a message to allow other calls to get through, and now state
   // may have changed.  WebXR may not be presenting any more, or may be hidden.
-  std::move(callback).Run(is_presenting_ &&
+  std::move(callback).Run(is_presenting_ && is_visible &&
                                   (webxr_visible_ || on_webxr_submitted_)
                               ? std::move(frame_data)
                               : mojom::XRFrameData::New());
diff --git a/device/vr/windows/compositor_base.h b/device/vr/windows/compositor_base.h
index 3a2dc65..ed5c04e 100644
--- a/device/vr/windows/compositor_base.h
+++ b/device/vr/windows/compositor_base.h
@@ -62,7 +62,6 @@
                       mojom::XRRuntimeSessionOptionsPtr options,
                       RequestSessionCallback callback);
   void ExitPresent();
-  void VisibilityStateChanged(mojom::XRVisibilityState visibility_state);
 
   void GetFrameData(mojom::XRFrameDataRequestOptionsPtr options,
                     XRFrameDataProvider::GetFrameDataCallback callback) final;
@@ -82,6 +81,7 @@
 
  protected:
   virtual bool UsesInputEventing();
+  void SetVisibilityState(mojom::XRVisibilityState visibility_state);
 #if defined(OS_WIN)
   D3D11TextureHelper texture_helper_;
 #endif
@@ -183,6 +183,8 @@
   mojo::Receiver<mojom::XRFrameDataProvider> frame_data_receiver_{this};
   mojo::Binding<mojom::IsolatedXRGamepadProvider> gamepad_provider_;
   mojo::Binding<mojom::ImmersiveOverlay> overlay_binding_;
+  mojom::XRVisibilityState visibility_state_ =
+      mojom::XRVisibilityState::VISIBLE;
 
   DISALLOW_COPY_AND_ASSIGN(XRCompositorCommon);
 };
diff --git a/device/vr/windows_mixed_reality/mixed_reality_renderloop.cc b/device/vr/windows_mixed_reality/mixed_reality_renderloop.cc
index 0629856..8b2d9ef 100644
--- a/device/vr/windows_mixed_reality/mixed_reality_renderloop.cc
+++ b/device/vr/windows_mixed_reality/mixed_reality_renderloop.cc
@@ -231,7 +231,7 @@
       holographic_space_->AddUserPresenceChangedCallback(
           base::BindRepeating(&MixedRealityRenderLoop::OnUserPresenceChanged,
                               base::Unretained(this)));
-  UpdateVisiblityState();
+  UpdateVisibilityState();
 
   input_helper_ = std::make_unique<MixedRealityInputHelper>(
       window_->hwnd(), weak_ptr_factory_.GetWeakPtr());
@@ -410,39 +410,30 @@
   task_runner()->PostTask(FROM_HERE,
                           base::BindOnce(
                               [](MixedRealityRenderLoop* render_loop) {
-                                render_loop->UpdateVisiblityState();
+                                render_loop->UpdateVisibilityState();
                               },
                               base::Unretained(this)));
 }
 
-void MixedRealityRenderLoop::UpdateVisiblityState() {
-  HolographicSpaceUserPresence user_presence =
-      holographic_space_->UserPresence();
-
-  device::mojom::XRVisibilityState new_state;
-  switch (user_presence) {
+void MixedRealityRenderLoop::UpdateVisibilityState() {
+  switch (holographic_space_->UserPresence()) {
     // Indicates that the browsers immersive content is visible in the headset
     // receiving input, and the headset is being worn.
     case HolographicSpaceUserPresence::
         HolographicSpaceUserPresence_PresentActive:
-      new_state = device::mojom::XRVisibilityState::VISIBLE;
-      break;
+      SetVisibilityState(device::mojom::XRVisibilityState::VISIBLE);
+      return;
     // Indicates that the browsers immersive content is visible in the headset
     // and the headset is being worn, but a modal dialog is capturing input.
     case HolographicSpaceUserPresence::
         HolographicSpaceUserPresence_PresentPassive:
-      new_state = device::mojom::XRVisibilityState::VISIBLE_BLURRED;
-      break;
+      SetVisibilityState(device::mojom::XRVisibilityState::VISIBLE_BLURRED);
+      return;
     // Indicates that the browsers immersive content is not visible in the
     // headset or the user is not wearing the headset.
     case HolographicSpaceUserPresence::HolographicSpaceUserPresence_Absent:
-      new_state = device::mojom::XRVisibilityState::HIDDEN;
-      break;
-  }
-
-  if (visibility_state != new_state) {
-    visibility_state = new_state;
-    VisibilityStateChanged(visibility_state);
+      SetVisibilityState(device::mojom::XRVisibilityState::HIDDEN);
+      return;
   }
 }
 
@@ -809,12 +800,6 @@
   mojom::XRFrameDataPtr ret =
       CreateDefaultFrameData(timestamp_.get(), next_frame_id_);
 
-  // If the device isn't currently showing content from this render loop, don't
-  // deliver complete frame data.
-  if (visibility_state == device::mojom::XRVisibilityState::HIDDEN) {
-    return ret;
-  }
-
   if ((!attached_ && !anchor_origin_) || !pose_) {
     TRACE_EVENT_INSTANT0("xr", "No origin or no pose",
                          TRACE_EVENT_SCOPE_THREAD);
diff --git a/device/vr/windows_mixed_reality/mixed_reality_renderloop.h b/device/vr/windows_mixed_reality/mixed_reality_renderloop.h
index 7a9cecd..05f1cdf 100644
--- a/device/vr/windows_mixed_reality/mixed_reality_renderloop.h
+++ b/device/vr/windows_mixed_reality/mixed_reality_renderloop.h
@@ -80,7 +80,7 @@
   void OnCurrentStageChanged();
 
   void OnUserPresenceChanged();
-  void UpdateVisiblityState();
+  void UpdateVisibilityState();
 
   // Will try to update the stage bounds if the following are true:
   // 1) We have a spatial_stage.
@@ -128,9 +128,6 @@
   std::vector<gfx::Point3F> bounds_;
   bool bounds_updated_ = false;
 
-  device::mojom::XRVisibilityState visibility_state =
-      device::mojom::XRVisibilityState::HIDDEN;
-
   // This must be the last member
   base::WeakPtrFactory<MixedRealityRenderLoop> weak_ptr_factory_{this};
 
diff --git a/docs/speed/binary_size/metrics.md b/docs/speed/binary_size/metrics.md
index 66117efe..fd08da1 100644
--- a/docs/speed/binary_size/metrics.md
+++ b/docs/speed/binary_size/metrics.md
@@ -37,7 +37,7 @@
  * Computed as:
    * The size of an APK
    * With all native code as the sum of section sizes (except .bss), uncompressed.
-   * With all dex code counted as `uncompressed_size * 1.5` (meant to simulate Android Go on Oreo).
+   * With all dex code as if it were stored uncompressed.
    * With all translations as if they were not missing (estimates size of missing translations based on size of english strings).
      * Without translation-normalization, translation dumps cause jumps.
      * Translation-normalization applies only to apks (not to Android App Bundles).
diff --git a/extensions/browser/guest_view/extension_options/extension_options_guest.cc b/extensions/browser/guest_view/extension_options/extension_options_guest.cc
index bfe998a..0890def7 100644
--- a/extensions/browser/guest_view/extension_options/extension_options_guest.cc
+++ b/extensions/browser/guest_view/extension_options/extension_options_guest.cc
@@ -207,29 +207,24 @@
   return extension_options_guest_delegate_->HandleContextMenu(params);
 }
 
-bool ExtensionOptionsGuest::IsWebContentsCreationOverridden(
-    content::SiteInstance* source_site_instance,
-    content::mojom::WindowContainerType window_container_type,
-    const GURL& opener_url,
-    const std::string& frame_name,
-    const GURL& target_url) {
-  // This method handles opening links from within the guest. Since this guest
-  // view is used for displaying embedded extension options, we want any
-  // external links to be opened in a new tab, not in a new guest view so we
-  // override creation.
-  return true;
-}
-
-WebContents* ExtensionOptionsGuest::CreateCustomWebContents(
+bool ExtensionOptionsGuest::ShouldCreateWebContents(
+    content::WebContents* web_contents,
     content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
-    bool is_renderer_initiated,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
+    content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
     const GURL& target_url,
     const std::string& partition_id,
     content::SessionStorageNamespace* session_storage_namespace) {
-  // To get links out of the guest view, we just open the URL in a new tab.
+  // This method handles opening links from within the guest. Since this guest
+  // view is used for displaying embedded extension options, we want any
+  // external links to be opened in a new tab, not in a new guest view.
+  // Therefore we just open the URL in a new tab, and since we aren't handling
+  // the new web contents, we return false.
   // TODO(ericzeng): Open the tab in the background if the click was a
   //   ctrl-click or middle mouse button click
   if (extension_options_guest_delegate_) {
@@ -238,11 +233,7 @@
                                WindowOpenDisposition::NEW_FOREGROUND_TAB,
                                ui::PAGE_TRANSITION_LINK, false));
   }
-
-  // Returning nullptr here ensures that the guest-view can never get a
-  // reference to the new WebContents. It effectively forces a new browsing
-  // instance for all popups from an extensions guest.
-  return nullptr;
+  return false;
 }
 
 void ExtensionOptionsGuest::DidFinishNavigation(
diff --git a/extensions/browser/guest_view/extension_options/extension_options_guest.h b/extensions/browser/guest_view/extension_options/extension_options_guest.h
index 3378cb2..bdeb2d5 100644
--- a/extensions/browser/guest_view/extension_options/extension_options_guest.h
+++ b/extensions/browser/guest_view/extension_options/extension_options_guest.h
@@ -50,16 +50,14 @@
   void CloseContents(content::WebContents* source) final;
   bool HandleContextMenu(content::RenderFrameHost* render_frame_host,
                          const content::ContextMenuParams& params) final;
-  bool IsWebContentsCreationOverridden(
-      content::SiteInstance* source_site_instance,
-      content::mojom::WindowContainerType window_container_type,
-      const GURL& opener_url,
-      const std::string& frame_name,
-      const GURL& target_url) final;
-  content::WebContents* CreateCustomWebContents(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
       content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
-      bool is_new_browsing_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
+      content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
       const GURL& target_url,
diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
index af060f3..78cfe84 100644
--- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
+++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
@@ -391,19 +391,14 @@
   return is_guest_fullscreen_;
 }
 
-bool MimeHandlerViewGuest::IsWebContentsCreationOverridden(
-    content::SiteInstance* source_site_instance,
-    content::mojom::WindowContainerType window_container_type,
-    const GURL& opener_url,
-    const std::string& frame_name,
-    const GURL& target_url) {
-  return true;
-}
-
-content::WebContents* MimeHandlerViewGuest::CreateCustomWebContents(
+bool MimeHandlerViewGuest::ShouldCreateWebContents(
+    content::WebContents* web_contents,
     content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
-    bool is_renderer_initiated,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
+    content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
     const GURL& target_url,
@@ -419,7 +414,7 @@
   auto* delegate = embedder_web_contents()->GetDelegate();
   if (delegate)
     delegate->OpenURLFromTab(embedder_web_contents(), open_params);
-  return nullptr;
+  return false;
 }
 
 bool MimeHandlerViewGuest::SetFullscreenState(bool is_fullscreen) {
diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
index 14c969b9..a608b0f3 100644
--- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
+++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
@@ -147,16 +147,14 @@
   void ExitFullscreenModeForTab(content::WebContents*) override;
   bool IsFullscreenForTabOrPending(
       const content::WebContents* web_contents) override;
-  bool IsWebContentsCreationOverridden(
-      content::SiteInstance* source_site_instance,
-      content::mojom::WindowContainerType window_container_type,
-      const GURL& opener_url,
-      const std::string& frame_name,
-      const GURL& target_url) override;
-  content::WebContents* CreateCustomWebContents(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
       content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
-      bool is_new_browsing_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
+      content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
       const GURL& target_url,
diff --git a/extensions/strings/extensions_strings_am.xtb b/extensions/strings/extensions_strings_am.xtb
index e5d7242c..e00154b 100644
--- a/extensions/strings/extensions_strings_am.xtb
+++ b/extensions/strings/extensions_strings_am.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">የዚህ ምስል ስውሩን መግለጥ አልተቻለም፦ «<ph name="IMAGE_NAME" />»</translation>
 <translation id="2350172092385603347">አካባቢያዊነት ተጠቅሟል ነገር ግን በማኒፌስት ወስጥ default_locale አልተገለጸም።</translation>
 <translation id="2576842806987913196">ይህን ስም የያዘ የCRX ፋይል አስቀድሞ ነበር።</translation>
-<translation id="2753617847762399167">ህገወጥ ዱካ (በ«..» ፍጹማዊ ወይም አንጻራዊ)፦ «<ph name="IMAGE_PATH" />»</translation>
 <translation id="2785530881066938471">ፋይል «<ph name="RELATIVE_PATH" />»ን ለይዘት ስክሪፕት መጫን አልተቻለም። በUTF-8 ኮድ የተቀመጠ አይደለም።</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (የቅጥያ መታወቂያ «<ph name="EXTENSION_ID" />») በአስተዳዳሪው ታግዷል። <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">ጥቅል መጫን አልተቻለም፦ «<ph name="ERROR_CODE" />»</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">ቅርጽ ያላቸው መስኮቶች አይደገፉም።</translation>
 <translation id="5456409301717116725">ይህ ቅጥያ የቁልፍ ፋይል «<ph name="KEY_PATH" />»ን ያካትታል። ይህንን ማድረግ ላይፈልጉ ይችላሉ።</translation>
 <translation id="5486326529110362464">ለግላዊ ቁልፍ የሚገባ እሴት መኖር አለበት።</translation>
-<translation id="5627523580512561598">ቅጥያ <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">የዚህ ማሽን አስተዳዳሪ <ph name="EXTENSION_NAME" /> እንዲጫን ይፈልጋል። ከተጫነ በኋላ ሊራገፍ አይችልም።</translation>
 <translation id="6027032947578871493">ያልታወቀ ምርት <ph name="PRODUCT_ID" /> ከ<ph name="VENDOR_NAME" /> (ተከታታይ ቁጥር <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> ከ<ph name="VENDOR_ID" /> ሻጭ</translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">«<ph name="APP_NAME" />» የአንድ ወይም ተጨማሪ መሣሪያዎችዎ መዳረሻ እየጠየቁ ነው።</translation>
 <translation id="657064425229075395">የጀርባ ስክሪፕት «<ph name="BACKGROUND_SCRIPT" />» መጫን አልተቻለም።</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> ከ<ph name="VENDOR_NAME" /> (የመለያ ቁጥር <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">ይሄ የሚበተንበት አቃፊ መፍጠር አልተቻለም፦ «<ph name="DIRECTORY_PATH" />»</translation>
 <translation id="677806580227005219">የሚሜ ተቆጣጣሪ፦ <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">ይህ ቅጥያ ብዙ ጊዜ እራሱን ዳግም ጭኗል።</translation>
 <translation id="7003844668372540529">ያልታወቀ ምርት <ph name="PRODUCT_ID" /> ከ<ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_ar.xtb b/extensions/strings/extensions_strings_ar.xtb
index f7049a9..5bccb74 100644
--- a/extensions/strings/extensions_strings_ar.xtb
+++ b/extensions/strings/extensions_strings_ar.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">تعذر فك تشفير الصورة: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">‏تم استخدام التعريب، ولكن لم يتم تحديد default_locale في البيان.</translation>
 <translation id="2576842806987913196">‏هناك ملف CRX بهذا الاسم فعلاً.</translation>
-<translation id="2753617847762399167">مسار غير قانوني (أساسي أو منتسب مع '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">‏تعذر تحميل الملف '<ph name="RELATIVE_PATH" />' للنص البرمجي للمحتوى. لأنه ليس بتشفير UTF-8.</translation>
 <translation id="2903070246402204397">تم حظر <ph name="EXTENSION_NAME" /> (معرف الإضافة "<ph name="EXTENSION_ID" />") من قِبل المشرف. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">تعذر تثبيت الحزمة: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">النوافذ ذات الأشكال غير متوافقة.</translation>
 <translation id="5456409301717116725">تتضمن هذه الإضافة ملف المفتاح '<ph name="KEY_PATH" />'. ربما لا تريد إجراء ذلك.</translation>
 <translation id="5486326529110362464">يجب أن تكون قيمة الإدخال للمفتاح الخاص موجودة.</translation>
-<translation id="5627523580512561598">الإضافة <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">يتطلب مشرف هذا الجهاز تثبيت <ph name="EXTENSION_NAME" />. لا يمكن إلغاء تثبيته.</translation>
 <translation id="6027032947578871493">المنتج غير معروف <ph name="PRODUCT_ID" /> من <ph name="VENDOR_NAME" /> (الرقم التسلسلي <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> من المورّد <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">يطلب تطبيق "<ph name="APP_NAME" />" الدخول إلى جهاز أو أكثر من أجهزتك:</translation>
 <translation id="657064425229075395">تعذر تحميل النص البرمجي للخلفية '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> من <ph name="VENDOR_NAME" /> (الرقم التسلسلي <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">تعذر إنشاء دليل لفك ضغط: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">‏معالج Mime: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">تعيد هذه الإضافة تحميل نفسها باستمرار.</translation>
 <translation id="7003844668372540529">المنتج غير معروف <ph name="PRODUCT_ID" /> من <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_bg.xtb b/extensions/strings/extensions_strings_bg.xtb
index c0d3dd6..78eb5591 100644
--- a/extensions/strings/extensions_strings_bg.xtb
+++ b/extensions/strings/extensions_strings_bg.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Изображението не можа да се декодира: „<ph name="IMAGE_NAME" />“</translation>
 <translation id="2350172092385603347">Беше използвана локализация, но променливата „default_locale“ не беше посочена в манифеста.</translation>
 <translation id="2576842806987913196">Вече присъства CRX файл с това име.</translation>
-<translation id="2753617847762399167">Непозволен път (абсолютен или относителен с (..): „<ph name="IMAGE_PATH" />“</translation>
 <translation id="2785530881066938471">Файлът „<ph name="RELATIVE_PATH" />“ за скрипта за съдържание не можа да бъде зареден. Не е кодиран в UTF-8.</translation>
 <translation id="2903070246402204397">Разширението <ph name="EXTENSION_NAME" /> (идентификационен номер <ph name="EXTENSION_ID" />) е блокирано от администратора. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Пакетът не можа да се инсталира: „<ph name="ERROR_CODE" />“</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Оформените прозорци не се поддържат.</translation>
 <translation id="5456409301717116725">Разширението включва файла с ключ „<ph name="KEY_PATH" />“. Вероятно не искате да направите това.</translation>
 <translation id="5486326529110362464">Въведената стойност за личен ключ трябва да съществува.</translation>
-<translation id="5627523580512561598">разширението „<ph name="EXTENSION_NAME" />“</translation>
 <translation id="5972529113578162692">Администраторът на тази машина изисква разширението <ph name="EXTENSION_NAME" /> да е инсталирано. То не може да бъде деинсталирано.</translation>
 <translation id="6027032947578871493">Неизвестен продукт <ph name="PRODUCT_ID" /> от <ph name="VENDOR_NAME" /> (сериен номер <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> от доставчик <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> иска достъп до едно или повече от устройствата ви:</translation>
 <translation id="657064425229075395">Не можа да се зареди фоновият скрипт „<ph name="BACKGROUND_SCRIPT" />“.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> от <ph name="VENDOR_NAME" /> (сериен номер: <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Директорията за разархивиране не можа да се създаде: „<ph name="DIRECTORY_PATH" />“</translation>
 <translation id="677806580227005219">Манипулатор на MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Това разширение се презарежда твърде често.</translation>
 <translation id="7003844668372540529">Неизвестен продукт <ph name="PRODUCT_ID" /> от <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_bn.xtb b/extensions/strings/extensions_strings_bn.xtb
index 934c689..f30befe 100644
--- a/extensions/strings/extensions_strings_bn.xtb
+++ b/extensions/strings/extensions_strings_bn.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">ইমেজ ডিকোড করা যায়নি: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">স্থানীয়করণ ব্যবহৃত হয়েছে, কিন্তু default_locale তালিকাতে উল্লেখ ছিল না৷</translation>
 <translation id="2576842806987913196">এই নামের একটি CRX ফাইল ইতিমধ্যে বিদ্যমান আছে৷</translation>
-<translation id="2753617847762399167">ভুল পথ (পূর্ণ অথবা '..' এর সাথে সম্পর্কিত: '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">বর্তমান স্ক্রিপ্টটির জন্য <ph name="RELATIVE_PATH" /> ফাইলটি লোড করতে পারা যায়নি৷ এটি UTF-8 এনকোড হওয়া নেই৷</translation>
 <translation id="2903070246402204397">প্রশাসক <ph name="EXTENSION_NAME" /> (এক্সটেনশন আইডি "<ph name="EXTENSION_ID" />") ব্লক করেছে। <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">এই প্যাকেজটি ইনস্টল করা যায়নি: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">আকৃতি দেয়া উইন্ডো সমর্থিত নয়।</translation>
 <translation id="5456409301717116725">এই এক্সটেনশনটি '<ph name="KEY_PATH" />' মুখ্য ফাইলকে অন্তর্ভুক্ত করে৷ আপনি সম্ভবত এটি করতে চাইবেন না৷</translation>
 <translation id="5486326529110362464">ব্যক্তিগত কী-র জন্য ইনপুট মান থাকা আবশ্যক৷</translation>
-<translation id="5627523580512561598">এক্সটেনশন <ph name="EXTENSION_NAME" /></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>
 <translation id="6068932090455285721"><ph name="VENDOR_ID" /> বিক্রেতার থেকে <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="6731255991101203740">এটিকে আনজিপ করার জন্য ডিরেক্টরি তৈরি করা যায়নি: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">মাইমহ্যান্ডলার: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">এই এক্সটেনশনটি খুব ঘন ঘন নিজের থেকে পুনরায় লোড হয়৷</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> এর থেকে অজানা পণ্য <ph name="PRODUCT_ID" /></translation>
diff --git a/extensions/strings/extensions_strings_ca.xtb b/extensions/strings/extensions_strings_ca.xtb
index 88439dc..ad5b4c8 100644
--- a/extensions/strings/extensions_strings_ca.xtb
+++ b/extensions/strings/extensions_strings_ca.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">No s'ha pogut descodificar la imatge: "<ph name="IMAGE_NAME" />"</translation>
 <translation id="2350172092385603347">S'ha utilitzat localització, però no s'ha especificat default_locale al manifest.</translation>
 <translation id="2576842806987913196">Ja hi ha un fitxer CRX amb aquest nom.</translation>
-<translation id="2753617847762399167">Camí il·legal (absolut o relatiu amb ".."): "<ph name="IMAGE_PATH" />"</translation>
 <translation id="2785530881066938471">No s'ha pogut carregar el fitxer "<ph name="RELATIVE_PATH" />" per a l'script de contingut. No està codificat com a UTF-8.</translation>
 <translation id="2903070246402204397">L'administrador ha bloquejat l'extensió <ph name="EXTENSION_NAME" /> (amb l'identificador <ph name="EXTENSION_ID" />). <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">No s'ha pogut instal·lar el paquet: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Les finestres modelades no s'admeten.</translation>
 <translation id="5456409301717116725">Aquesta extensió inclou el fitxer de clau "<ph name="KEY_PATH" />". És probable que això no sigui convenient.</translation>
 <translation id="5486326529110362464">Ha d'existir el valor d'entrada de la clau privada.</translation>
-<translation id="5627523580512561598">extensió <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">L'administrador d'aquest dispositiu requereix que l'extensió <ph name="EXTENSION_NAME" /> estigui instal·lada. No es pot desinstal·lar.</translation>
 <translation id="6027032947578871493">Producte desconegut <ph name="PRODUCT_ID" /> de: <ph name="VENDOR_NAME" /> (número de sèrie <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> del proveïdor <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> sol·licita accés a un o més dels teus dispositius:</translation>
 <translation id="657064425229075395">No s'ha pogut carregar l'script en segon pla "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> de <ph name="VENDOR_NAME" /> (número de sèrie <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">No s'ha pogut crear un directori per descomprimir: "<ph name="DIRECTORY_PATH" />"</translation>
 <translation id="677806580227005219">Gestor MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Aquesta extensió s'ha tornat a carregar massa vegades.</translation>
 <translation id="7003844668372540529">Producte desconegut <ph name="PRODUCT_ID" /> de: <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_cs.xtb b/extensions/strings/extensions_strings_cs.xtb
index a4db9bb..9db1f4f 100644
--- a/extensions/strings/extensions_strings_cs.xtb
+++ b/extensions/strings/extensions_strings_cs.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Nepodařilo se dekódovat obrázek: <ph name="IMAGE_NAME" /></translation>
 <translation id="2350172092385603347">Byla použita lokalizace, ale v manifestu nebyl zadán parametr default_locale.</translation>
 <translation id="2576842806987913196">Soubor CRX s tímto názvem již existuje.</translation>
-<translation id="2753617847762399167">Neplatná cesta (absolutní nebo relativní s „..“): <ph name="IMAGE_PATH" /></translation>
 <translation id="2785530881066938471">Nelze načíst soubor <ph name="RELATIVE_PATH" /> s obsahovým skriptem. Soubor není kódován ve formátu UTF-8.</translation>
 <translation id="2903070246402204397">Rozšíření <ph name="EXTENSION_NAME" /> (ID rozšíření <ph name="EXTENSION_ID" />) je blokováno administrátorem. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Nepodařilo se nainstalovat balíček: <ph name="ERROR_CODE" /></translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Tvarovaná okna nejsou podporována.</translation>
 <translation id="5456409301717116725">Rozšíření obsahuje soubor klíče <ph name="KEY_PATH" />. Tuto akci pravděpodobně provést nechcete.</translation>
 <translation id="5486326529110362464">Musí existovat vstupní hodnota pro soukromý klíč</translation>
-<translation id="5627523580512561598">rozšíření <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Administrátor tohoto zařízení vyžaduje, aby bylo rozšíření <ph name="EXTENSION_NAME" /> nainstalováno. Toto rozšíření nelze odinstalovat.</translation>
 <translation id="6027032947578871493">Neznámý produkt <ph name="PRODUCT_ID" /> od dodavatele <ph name="VENDOR_NAME" /> (sériové číslo <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> od dodavatele <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">Aplikace <ph name="APP_NAME" /> žádá o přístup k jednomu nebo více z vašich zařízení:</translation>
 <translation id="657064425229075395">Nelze načíst skript pozadí <ph name="BACKGROUND_SCRIPT" />.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> od dodavatele <ph name="VENDOR_NAME" /> (sériové číslo <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Nepodařilo se vytvořit adresář pro rozbalení: <ph name="DIRECTORY_PATH" /></translation>
 <translation id="677806580227005219">Obslužná rutina typu MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Toto rozšíření se obnovovalo příliš často.</translation>
 <translation id="7003844668372540529">Neznámý produkt <ph name="PRODUCT_ID" /> od dodavatele <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_da.xtb b/extensions/strings/extensions_strings_da.xtb
index b8983a0..91a99c5 100644
--- a/extensions/strings/extensions_strings_da.xtb
+++ b/extensions/strings/extensions_strings_da.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Billedet kunne afkodes: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Lokalisering anvendt, men default_locale blev ikke angivet i manifestet.</translation>
 <translation id="2576842806987913196">Der findes allerede en CRX-fil med dette navn.</translation>
-<translation id="2753617847762399167">Ugyldig sti (absolut eller relativ med '..'): '<ph name="IMAGE_PATH" /> '</translation>
 <translation id="2785530881066938471">Filen '<ph name="RELATIVE_PATH" />' til indholdsscript kunne ikke indlæses. Det er ikke UTF-8-kodet.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (udvidelses-id "<ph name="EXTENSION_ID" />") er blokeret af administrator. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Pakken kunne ikke installeres: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Formede vinduer understøttes ikke.</translation>
 <translation id="5456409301717116725">Denne udvidelse inkluderer nøglefilen "<ph name="KEY_PATH" />". Det ønsker du sandsynligvis ikke at gøre.</translation>
 <translation id="5486326529110362464">Indtastningsværdien for personlig nøgle skal eksistere.</translation>
-<translation id="5627523580512561598">udvidelse <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Administratoren af denne maskine kræver, at <ph name="EXTENSION_NAME" /> er installeret. Denne kan ikke afinstalleres.</translation>
 <translation id="6027032947578871493">Ukendt produkt, <ph name="PRODUCT_ID" />, fra <ph name="VENDOR_NAME" /> (serienummer <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> fra leverandøren <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" anmoder om adgang til en eller flere af dine enheder:</translation>
 <translation id="657064425229075395">Baggrundsscriptet  "<ph name="BACKGROUND_SCRIPT" />" kunne ikke indlæses.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> fra <ph name="VENDOR_NAME" /> (serienummer <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Mappen til udpakning kunne ikke oprettet: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Denne udvidelse har genindlæst sig selv for mange gange.</translation>
 <translation id="7003844668372540529">Ukendt produkt, <ph name="PRODUCT_ID" />, fra <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_de.xtb b/extensions/strings/extensions_strings_de.xtb
index e8ba86a9..f143f7f5 100644
--- a/extensions/strings/extensions_strings_de.xtb
+++ b/extensions/strings/extensions_strings_de.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Bild konnte nicht decodiert werden: "<ph name="IMAGE_NAME" />"</translation>
 <translation id="2350172092385603347">Lokalisierung wurde verwendet, in der Manifest-Datei war jedoch kein Wert für "default_locale" angegeben.</translation>
 <translation id="2576842806987913196">Es ist bereits eine CRX-Datei mit diesem Namen vorhanden.</translation>
-<translation id="2753617847762399167">Unzulässiger Pfad (absolut oder relativ mit ".."): "<ph name="IMAGE_PATH" />"</translation>
 <translation id="2785530881066938471">Datei "<ph name="RELATIVE_PATH" />" konnte nicht für das Content-Skript geladen werden. Sie ist nicht UTF-8-codiert.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (Erweiterungs-ID "<ph name="EXTENSION_ID" />") wurde vom Administrator blockiert. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Paket konnte nicht installiert werden: "<ph name="ERROR_CODE" />".</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Es werden nur rechteckige Fenster unterstützt.</translation>
 <translation id="5456409301717116725">Die Erweiterung enthält die Schlüsseldatei "<ph name="KEY_PATH" />". Möchten Sie den Vorgang wirklich fortsetzen?</translation>
 <translation id="5486326529110362464">Es muss ein Eingabewert für den privaten Schlüssel vorhanden sein.</translation>
-<translation id="5627523580512561598"><ph name="EXTENSION_NAME" />-Erweiterung</translation>
 <translation id="5972529113578162692">Der Administrator dieses Computers hat die Installation von <ph name="EXTENSION_NAME" /> vorgegeben. Eine Deinstallation ist daher nicht möglich.</translation>
 <translation id="6027032947578871493">Unbekanntes Produkt <ph name="PRODUCT_ID" /> von <ph name="VENDOR_NAME" /> (Seriennummer <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> von Anbieter <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" fordert Zugriff auf eines oder mehrere Ihrer Geräte an:</translation>
 <translation id="657064425229075395">Hintergrundskript "<ph name="BACKGROUND_SCRIPT" />" konnte nicht geladen werden.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> von <ph name="VENDOR_NAME" /> (Seriennummer <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Fehler beim Erstellen von Verzeichnis zum Entpacken: "<ph name="DIRECTORY_PATH" />"</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Diese Erweiterung hat sich selbst zu häufig neu geladen.</translation>
 <translation id="7003844668372540529">Unbekanntes Produkt <ph name="PRODUCT_ID" /> von <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_el.xtb b/extensions/strings/extensions_strings_el.xtb
index 7a1cc6b..46a980e 100644
--- a/extensions/strings/extensions_strings_el.xtb
+++ b/extensions/strings/extensions_strings_el.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Δεν ήταν δυνατή η αποκωδικοποίηση της εικόνας: "<ph name="IMAGE_NAME" />"</translation>
 <translation id="2350172092385603347">Χρησιμοποιήθηκε τοπική προσαρμογή, όμως δεν καθορίστηκε η τιμή "default_locale" στη δήλωση.</translation>
 <translation id="2576842806987913196">Υπάρχει ήδη ένα αρχείο CRX με αυτό το όνομα.</translation>
-<translation id="2753617847762399167">Παράνομη διαδρομή (απόλυτη ή σχετική με ".."): "<ph name="IMAGE_PATH" />"</translation>
 <translation id="2785530881066938471">Δεν ήταν δυνατή η φόρτωση του αρχείου "<ph name="RELATIVE_PATH" />" για το σενάριο περιεχομένου. Δεν έχει κωδικοποίηση UTF-8.</translation>
 <translation id="2903070246402204397">Η επέκταση <ph name="EXTENSION_NAME" /> (αναγνωριστικό επέκτασης "<ph name="EXTENSION_ID" />") έχει αποκλειστεί από τον διαχειριστή. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Δεν ήταν δυνατή η εγκατάσταση του πακέτου: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Τα διαμορφωμένα παράθυρα δεν υποστηρίζονται.</translation>
 <translation id="5456409301717116725">Αυτή η επέκταση περιλαμβάνει το αρχείο κλειδιού "<ph name="KEY_PATH" />". Πιθανότατα δεν θέλετε να προβείτε σε αυτήν την ενέργεια.</translation>
 <translation id="5486326529110362464">Η τιμή εισόδου για το ιδιωτικό κλειδί πρέπει να υπάρχει.</translation>
-<translation id="5627523580512561598">επέκταση <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Ο διαχειριστής αυτού του υπολογιστή απαιτεί την εγκατάσταση της επέκτασης <ph name="EXTENSION_NAME" />. Η εγκατάσταση δεν μπορεί να καταργηθεί.</translation>
 <translation id="6027032947578871493">Άγνωστο προϊόν <ph name="PRODUCT_ID" /> από <ph name="VENDOR_NAME" /> (σειριακός αριθμός <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> από τον πάροχο υπηρεσιών <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">Η εφαρμογή "<ph name="APP_NAME" />" ζητά πρόσβαση σε μία ή περισσότερες συσκευές σας:</translation>
 <translation id="657064425229075395">Δεν ήταν δυνατή η φόρτωση του σεναρίου παρασκηνίου '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> από <ph name="VENDOR_NAME" /> (σειριακός αριθμός <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Δεν ήταν δυνατή η δημιουργία καταλόγου για την αποσυμπίεση: "<ph name="DIRECTORY_PATH" />"</translation>
 <translation id="677806580227005219">Χειρισμός mime: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Αυτή η επέκταση επαναφορτώνεται πολύ συχνά.</translation>
 <translation id="7003844668372540529">Άγνωστο προϊόν <ph name="PRODUCT_ID" /> από <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_en-GB.xtb b/extensions/strings/extensions_strings_en-GB.xtb
index 19578e0..b6395a9 100644
--- a/extensions/strings/extensions_strings_en-GB.xtb
+++ b/extensions/strings/extensions_strings_en-GB.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Could not decode image: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Localisation used, but default_locale wasn't specified in the manifest.</translation>
 <translation id="2576842806987913196">There is already a CRX file present with this name.</translation>
-<translation id="2753617847762399167">Illegal path (absolute or relative with '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Could not load file '<ph name="RELATIVE_PATH" />' for content script. It isn't UTF-8 encoded.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (extension ID "<ph name="EXTENSION_ID" />") is blocked by the administrator. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Could not install package: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Shaped windows are not supported.</translation>
 <translation id="5456409301717116725">This extension includes the key file '<ph name="KEY_PATH" />'. You probably don't want to do that.</translation>
 <translation id="5486326529110362464">Input value for private key must exist.</translation>
-<translation id="5627523580512561598">extension <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">The administrator of this machine requires <ph name="EXTENSION_NAME" /> to be installed. It cannot be uninstalled.</translation>
 <translation id="6027032947578871493">Unknown product <ph name="PRODUCT_ID" /> from <ph name="VENDOR_NAME" /> (serial number <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> from vendor <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" is requesting access to one or more of your devices:</translation>
 <translation id="657064425229075395">Could not load background script '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> from <ph name="VENDOR_NAME" /> (serial number <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Could not create directory for unzipping: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">This extension reloaded itself too frequently.</translation>
 <translation id="7003844668372540529">Unknown product <ph name="PRODUCT_ID" /> from <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_es-419.xtb b/extensions/strings/extensions_strings_es-419.xtb
index e66a745..7d76b828 100644
--- a/extensions/strings/extensions_strings_es-419.xtb
+++ b/extensions/strings/extensions_strings_es-419.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">No se pudo decodificar la imagen "<ph name="IMAGE_NAME" />".</translation>
 <translation id="2350172092385603347">Se utiliza localización, pero default_locale no se especificó en el manifiesto.</translation>
 <translation id="2576842806987913196">Ya existe una archivo CRX con este nombre.</translation>
-<translation id="2753617847762399167">Ruta no válida (absoluta o relativa con '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">No se pudo cargar el archivo "<ph name="RELATIVE_PATH" />" para la secuencia de comandos del contenido. No está codificado en UTF-8.</translation>
 <translation id="2903070246402204397">El administrador bloqueó la extensión <ph name="EXTENSION_NAME" /> (ID de extensión "<ph name="EXTENSION_ID" />"). <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">No se pudo instalar el paquete: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">No se admiten las ventanas con formas.</translation>
 <translation id="5456409301717116725">Esta extensión incluye el archivo de clave "<ph name="KEY_PATH" />". Probablemente no desees incluir ese archivo.</translation>
 <translation id="5486326529110362464">Debe existir un valor de entrada para la clave privada.</translation>
-<translation id="5627523580512561598">extensión <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">El administrador de esta computadora requiere que <ph name="EXTENSION_NAME" /> esté instalada. No se puede desinstalar.</translation>
 <translation id="6027032947578871493">Producto desconocido <ph name="PRODUCT_ID" /> de <ph name="VENDOR_NAME" /> (número de serie <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> del proveedor <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" solicita acceso a uno o más de tus dispositivos:</translation>
 <translation id="657064425229075395">No se pudo cargar la secuencia de comandos en segundo plano "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> de <ph name="VENDOR_NAME" /> (número de serie: <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">No se pudo crear un directorio para descomprimir "<ph name="DIRECTORY_PATH" />".</translation>
 <translation id="677806580227005219">Controlador MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Esta extensión se recargó con demasiada frecuencia.</translation>
 <translation id="7003844668372540529">Producto desconocido <ph name="PRODUCT_ID" /> de <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_es.xtb b/extensions/strings/extensions_strings_es.xtb
index 6741bd4..dcec29d 100644
--- a/extensions/strings/extensions_strings_es.xtb
+++ b/extensions/strings/extensions_strings_es.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">No se ha podido decodificar la imagen <ph name="IMAGE_NAME" />.</translation>
 <translation id="2350172092385603347">Se ha utilizado la localización, pero no se ha especificado default_locale en el archivo de manifiesto.</translation>
 <translation id="2576842806987913196">Ya existe un archivo CRX con este nombre.</translation>
-<translation id="2753617847762399167">Ruta no válida (absoluta o relativa con ".."): <ph name="IMAGE_PATH" /></translation>
 <translation id="2785530881066938471">No se ha podido cargar el archivo "<ph name="RELATIVE_PATH" />" para el script de contenido. No está codificado con UTF-8.</translation>
 <translation id="2903070246402204397">El administrador ha bloqueado la extensión <ph name="EXTENSION_NAME" /> (ID de extensión "<ph name="EXTENSION_ID" />"). <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">No se ha podido instalar el paquete: "<ph name="ERROR_CODE" />".</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">No se admiten las ventanas con formas.</translation>
 <translation id="5456409301717116725">Esta extensión incluye el archivo de clave "<ph name="KEY_PATH" />". Probablemente no quieras incluir este archivo.</translation>
 <translation id="5486326529110362464">Debe existir un valor de entrada para la clave privada.</translation>
-<translation id="5627523580512561598">extensión <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692"><ph name="EXTENSION_NAME" /> no se puede desinstalar porque el administrador de este ordenador requiere que esté instalado.</translation>
 <translation id="6027032947578871493">Producto <ph name="PRODUCT_ID" /> de <ph name="VENDOR_NAME" /> desconocido (número de serie <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> del proveedor <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> está solicitando acceso a uno o varios de tus dispositivos:</translation>
 <translation id="657064425229075395">No se ha podido cargar la secuencia de comandos en segundo plano "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> de <ph name="VENDOR_NAME" /> (número de serie <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">No se ha podido crear un directorio para descomprimir <ph name="DIRECTORY_PATH" />.</translation>
 <translation id="677806580227005219">Controlador MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Esta extensión se ha cargado con demasiada frecuencia.</translation>
 <translation id="7003844668372540529">Producto <ph name="PRODUCT_ID" /> de <ph name="VENDOR_NAME" /> desconocido</translation>
diff --git a/extensions/strings/extensions_strings_et.xtb b/extensions/strings/extensions_strings_et.xtb
index ac8acd2..75667c18 100644
--- a/extensions/strings/extensions_strings_et.xtb
+++ b/extensions/strings/extensions_strings_et.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Ei saanud pilti dekodeerida: „<ph name="IMAGE_NAME" />”</translation>
 <translation id="2350172092385603347">Lokaliseerimist kasutatakse, kuid parameetrit default_locale ei olnud manifestis määratud.</translation>
 <translation id="2576842806987913196">Selle nimega CRX-fail on juba olemas.</translation>
-<translation id="2753617847762399167">Keelatud tee (absoluutne või suhteline üksusega '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Sisuskripti jaoks ei õnnestunud laadida faili <ph name="RELATIVE_PATH" />, kuna sellel ei ole UTF-8 kodeeringut.</translation>
 <translation id="2903070246402204397">Laienduse <ph name="EXTENSION_NAME" /> (laienduse ID „<ph name="EXTENSION_ID" />”) blokeeris administraator. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Paketti ei saanud installida: „<ph name="ERROR_CODE" />”</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Sellise kujuga aknaid ei toetata.</translation>
 <translation id="5456409301717116725">Laiendus hõlmab võtmefaili „<ph name="KEY_PATH" />”. See toiming ei ole soovitatav.</translation>
 <translation id="5486326529110362464">Privaatvõtme sisendi väärtus peab olema olemas.</translation>
-<translation id="5627523580512561598">laiendus <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Selle seadme administraator nõuab laienduse <ph name="EXTENSION_NAME" /> installimist. Seda ei saa desinstallida.</translation>
 <translation id="6027032947578871493">Tundmatu toode <ph name="PRODUCT_ID" /> teenusepakkujalt <ph name="VENDOR_NAME" /> (seerianumber <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721">Toode <ph name="PRODUCT_NAME" /> teenusepakkujalt <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">Rakendus „<ph name="APP_NAME" />” taotleb juurdepääsu ühele või mitmele teie seadmele:</translation>
 <translation id="657064425229075395">Taustaskripti „<ph name="BACKGROUND_SCRIPT" />” ei õnnestunud laadida.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> tootjalt <ph name="VENDOR_NAME" /> (seerianumber <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Lahtipakkimiseks ei saanud kataloogi luua: „<ph name="DIRECTORY_PATH" />”</translation>
 <translation id="677806580227005219">Mime-töötleja: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">See laiendus laadis ennast liiga sageli uuesti.</translation>
 <translation id="7003844668372540529">Tundmatu toode <ph name="PRODUCT_ID" /> teenusepakkujalt <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_fa.xtb b/extensions/strings/extensions_strings_fa.xtb
index e3c0464..82604da 100644
--- a/extensions/strings/extensions_strings_fa.xtb
+++ b/extensions/strings/extensions_strings_fa.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">رمزگشایی تصویر امکان‌پذیر نیست: «<ph name="IMAGE_NAME" />»</translation>
 <translation id="2350172092385603347">‏بومی سازی استفاده شده است، اما default_locale در اظهارنامه مشخص نشده است.</translation>
 <translation id="2576842806987913196">‏یک فایل CRX در حال حاضر با این نام وجود دارد.</translation>
-<translation id="2753617847762399167">مسیر غیرمجاز (مطلق یا نسبی با «..»): «<ph name="IMAGE_PATH" />»</translation>
 <translation id="2785530881066938471">‏بارگیری فایل "<ph name="RELATIVE_PATH" />" برای اسکریپت محتوا ممکن نیست. رمزگذاری آن UTF-8 نیست.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (شناسه افزونه «<ph name="EXTENSION_ID" />») توسط سرپرست مسدود شده است. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">بسته نصب نشد: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">پنجره‌های دارای اشکال مختلف پشتیبانی نمی‌شوند.</translation>
 <translation id="5456409301717116725">این برنامهٔ افزودنی شامل فایل کلید «<ph name="KEY_PATH" />» است. احتمالاً نمی‌خواهید این کار را انجام دهید.</translation>
 <translation id="5486326529110362464">مقدار ورودی برای کلید خصوصی باید وجود داشته باشد.</translation>
-<translation id="5627523580512561598">برنامهٔ افزودنی <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">سرپرست این دستگاه نصب <ph name="EXTENSION_NAME" /> را لازم می‌داند. این برنامه افزودنی نمی‌تواند حذف نصب شود.</translation>
 <translation id="6027032947578871493">محصول نامشخص <ph name="PRODUCT_ID" /> از <ph name="VENDOR_NAME" /> (شماره سریال <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> از فروشنده <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">«<ph name="APP_NAME" />» درخواست دسترسی به یک یا چند دستگاه شما را دارد:</translation>
 <translation id="657064425229075395">بارگیری اسکریپت پس‌زمینه "<ph name="BACKGROUND_SCRIPT" />" ممکن نیست.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> از <ph name="VENDOR_NAME" /> (شماره سریال <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">ایجاد دایرکتوری برای خارج کردن «<ph name="DIRECTORY_PATH" />» از حالت زیپ امکان‌پذیر نیست</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">این برنامه افزودنی بیش از حد خود را بارگیری مجدد می‌کند.</translation>
 <translation id="7003844668372540529">محصول نامشخص <ph name="PRODUCT_ID" /> از <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_fi.xtb b/extensions/strings/extensions_strings_fi.xtb
index 9136b3b..65cf27bb 100644
--- a/extensions/strings/extensions_strings_fi.xtb
+++ b/extensions/strings/extensions_strings_fi.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Kuvan koodin purkaminen epäonnistui: <ph name="IMAGE_NAME" /></translation>
 <translation id="2350172092385603347">Lokalisaatiota käytetään, mutta default_locale ei ole määritetty luettelossa.</translation>
 <translation id="2576842806987913196">Tämän niminen CRX-tiedosto on jo olemassa.</translation>
-<translation id="2753617847762399167">Luvaton polku (absoluuttinen tai kohteeseen '..' liittyvä): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Sisältökomentosarjan tiedoston <ph name="RELATIVE_PATH" /> lataus epäonnistui, sillä tiedoston merkistökoodaus ei ole UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (tunnus <ph name="EXTENSION_ID" />) on järjestelmänvalvojan estämä. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Paketin <ph name="ERROR_CODE" /> asentaminen epäonnistui.</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Muotoiltuja ikkunoita ei tueta.</translation>
 <translation id="5456409301717116725">Tämä laajennus sisältää avaintiedoston <ph name="KEY_PATH" />. Et todennäköisesti halua sitä.</translation>
 <translation id="5486326529110362464">Yksityisen avaimen syötearvoa ei ole olemassa.</translation>
-<translation id="5627523580512561598">laajennus <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Tämän laitteen järjestelmänvalvoja on määrittänyt, että laitteessa täytyy olla <ph name="EXTENSION_NAME" />. Laajennusta ei voi poistaa.</translation>
 <translation id="6027032947578871493">Tuntematon laite <ph name="PRODUCT_ID" /> toimittajalta <ph name="VENDOR_NAME" /> (sarjanumero <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> toimittajalta <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> pyytää oikeutta käyttää yhtä tai useampaa laitettasi:</translation>
 <translation id="657064425229075395">Taustakoodin <ph name="BACKGROUND_SCRIPT" /> lataaminen epäonnistui.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> myyjältä <ph name="VENDOR_NAME" /> (sarjanumero <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Ei voitu luoda hakemistoa <ph name="DIRECTORY_PATH" /> laajennuksen purkamista varten:</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Tämä laajennus päivittyy liian usein.</translation>
 <translation id="7003844668372540529">Tuntematon tuote <ph name="PRODUCT_ID" /> toimittajalta <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_fil.xtb b/extensions/strings/extensions_strings_fil.xtb
index 969b380..f3a6d55 100644
--- a/extensions/strings/extensions_strings_fil.xtb
+++ b/extensions/strings/extensions_strings_fil.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Hindi ma-decode ang larawan: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Ginamit ang localization , subalit hindi natukoy ang default_locale sa manipesto.</translation>
 <translation id="2576842806987913196">Mayroon nang isang CRX file na may ganitong pangalan.</translation>
-<translation id="2753617847762399167">Ilegal na daanan (ganap o may kaugnayan sa '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Hindi ma-load ang file na '<ph name="RELATIVE_PATH" />' para sa script ng nilalaman. Hindi ito naka-encode bilang UTF-8.</translation>
 <translation id="2903070246402204397">Na-block ng administrator ang <ph name="EXTENSION_NAME" /> (extension ID "<ph name="EXTENSION_ID" />"). <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Hindi ma-install ang package: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Hindi sinusuportahan ang mga may hugis na window.</translation>
 <translation id="5456409301717116725">Kasama sa extension na ito ang key file na '<ph name="KEY_PATH" />'. Malamang na hindi mo iyon gustong gawin.</translation>
 <translation id="5486326529110362464">Dapat na umiiral ang halaga ng input para sa pribadong key.</translation>
-<translation id="5627523580512561598">extension na <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Kinakailangan ng administrator ng machine na ito na naka-install ang <ph name="EXTENSION_NAME" />. Hindi ito maaaring i-uninstall.</translation>
 <translation id="6027032947578871493">Hindi kilalang produkto na <ph name="PRODUCT_ID" /> mula sa <ph name="VENDOR_NAME" /> (serial number na <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> mula sa vendor na <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">Humihiling ang "<ph name="APP_NAME" />" ng access sa isa o higit pa sa iyong mga device:</translation>
 <translation id="657064425229075395">Hindi ma-load ang script ng background na '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> mula sa <ph name="VENDOR_NAME" /> (serial number <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Hindi malikha ang direktoryo para sa pag-unzip: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Masyadong madalas nag-reload ang extension na ito.</translation>
 <translation id="7003844668372540529">Hindi kilalang produkto na <ph name="PRODUCT_ID" /> mula sa <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_fr.xtb b/extensions/strings/extensions_strings_fr.xtb
index 0aadc76..d00ca3e 100644
--- a/extensions/strings/extensions_strings_fr.xtb
+++ b/extensions/strings/extensions_strings_fr.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Impossible de décoder l'image : "<ph name="IMAGE_NAME" />".</translation>
 <translation id="2350172092385603347">Localisation utilisée, mais les paramètres régionaux par défaut (default_locale) n'ont pas été indiqués dans le manifeste. </translation>
 <translation id="2576842806987913196">Un autre fichier CRX portant le même nom existe déjà.</translation>
-<translation id="2753617847762399167">Chemin (absolu ou par rapport à "..") non valide : "<ph name="IMAGE_PATH" />"</translation>
 <translation id="2785530881066938471">Impossible de charger le fichier "<ph name="RELATIVE_PATH" />" pour le script de contenu, car ce fichier n'est pas codé en UTF-8.</translation>
 <translation id="2903070246402204397">L'administrateur a bloqué l'extension <ph name="EXTENSION_NAME" /> (ID : <ph name="EXTENSION_ID" />). <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Impossible d'installer le package : "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Les fenêtres mises en forme ne sont pas acceptées.</translation>
 <translation id="5456409301717116725">Cette extension comprend le fichier clé <ph name="KEY_PATH" />. Vous ne voulez probablement pas poursuivre.</translation>
 <translation id="5486326529110362464">La valeur d'entrée de la clé privée est obligatoire.</translation>
-<translation id="5627523580512561598">Extension <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">L'administrateur de cet ordinateur exige que l'extension <ph name="EXTENSION_NAME" /> soit installée. Cette extension ne pourra pas être désinstallée.</translation>
 <translation id="6027032947578871493">Produit inconnu <ph name="PRODUCT_ID" /> fourni par <ph name="VENDOR_NAME" /> (numéro de série : <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> du fournisseur <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> demande l'accès à un ou plusieurs de vos appareils :</translation>
 <translation id="657064425229075395">Impossible de charger le script d'arrière-plan "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> de <ph name="VENDOR_NAME" /> (numéro de série <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Impossible de créer le répertoire de décompression : "<ph name="DIRECTORY_PATH" />"</translation>
 <translation id="677806580227005219">Mimehandler : <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Cette extension s'est actualisée trop souvent.</translation>
 <translation id="7003844668372540529">Produit inconnu <ph name="PRODUCT_ID" /> fourni par <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_gu.xtb b/extensions/strings/extensions_strings_gu.xtb
index 2ad1107..23f9ba67 100644
--- a/extensions/strings/extensions_strings_gu.xtb
+++ b/extensions/strings/extensions_strings_gu.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">છબીને ડિકોડ કરી શક્યાં નથી: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">લૉકલાઇઝેશન વપરાયુ, પરંતુ default_locale નો ઉલ્લેખ મેનિફેસ્ટમાં નહોતો.</translation>
 <translation id="2576842806987913196">આ નામવાળી એક CRX ફાઇલ પહેલાથી જ અસ્તિત્વમાં છે.</translation>
-<translation id="2753617847762399167">ગેરકાયદેસર પાથ (નિરપેક્ષ અથવા '..' સાથે સંબંધિત): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">કન્ટેન્ટ સ્ક્રિપ્ટ માટે '<ph name="RELATIVE_PATH" />' ફાઇલ લોડ કરી શકાઈ નથી. તે UTF-8 એન્કોડેડ નથી.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (એક્સ્ટેન્શન ID "<ph name="EXTENSION_ID" />")ને વ્યવસ્થાપક દ્વારા અવરોધિત કરવામાં આવેલ છે. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">પૅકેજ ઇન્સ્ટોલ કરી શકાયું નહીં: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">આકારિત વિંડોઝ સમર્થિત નથી.</translation>
 <translation id="5456409301717116725">આ એક્સટેન્શનમાં '<ph name="KEY_PATH" />' કી ફાઇલ શામેલ છે. તમે કદાચ એ કરવા માંગતા નથી.</translation>
 <translation id="5486326529110362464">ખાનગી કી માટે ઇનપુટ મૂલ્ય અસ્તિત્વમાં હોવું જોઈએ.</translation>
-<translation id="5627523580512561598">એક્સ્ટેંશન <ph name="EXTENSION_NAME" /></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>
 <translation id="6068932090455285721"><ph name="VENDOR_ID" /> વિક્રેતા તરફથી <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="6731255991101203740">આને અનઝિપ કરવા માટે ડિરેક્ટરી બનાવી શક્યાં નથી: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">આ એક્સ્ટેન્શન પોતાની મેળે ઘણી વાર ફરીથી લોડ થયેલું.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> નું અજાણ્યું ઉત્પાદન <ph name="PRODUCT_ID" /></translation>
diff --git a/extensions/strings/extensions_strings_hi.xtb b/extensions/strings/extensions_strings_hi.xtb
index 5e966fd1..23d1431 100644
--- a/extensions/strings/extensions_strings_hi.xtb
+++ b/extensions/strings/extensions_strings_hi.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">इमेज को डीकोड नहीं किया जा सका: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">स्थानीय भाषा में लिखा गया है, लेकिन default_locale मेनिफ़ेस्ट में तय नहीं की गई थी.</translation>
 <translation id="2576842806987913196">इस नाम वाली CRX फ़ाइल पहले से ही मौजूद है.</translation>
-<translation id="2753617847762399167">गलत पाथ (पूरा या '..' से संबंधित): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">सामग्री स्क्रिप्ट के लिए '<ph name="RELATIVE_PATH" />' फ़ाइल लोड नहीं कर सका. यह UTF-8 एनकोड नहीं है.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (एक्सटेंशन आईडी "<ph name="EXTENSION_ID" />") को व्यवस्थापक ने अवरोधित किया है. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">पैकेज इंस्टॉल नहीं कर सका: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">आकार वाली विंडो समर्थित नहीं हैं.</translation>
 <translation id="5456409301717116725">एक्सटेंशन में कुंजी फ़ाइल '<ph name="KEY_PATH" />' शामिल है. संभवतः आप ऐसा नहीं करना चाहते हैं.</translation>
 <translation id="5486326529110362464">निजी कुंजी के लिए इनपुट मान मौजूद होना चाहिए.</translation>
-<translation id="5627523580512561598">एक्सटेंशन <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">इस मशीन के व्‍यवस्‍थापक के लिए आवश्‍यक है कि <ph name="EXTENSION_NAME" /> इंस्‍टॉल किया जाए. उसे अनइंस्‍टॉल नहीं किया जा सकता.</translation>
 <translation id="6027032947578871493"><ph name="VENDOR_NAME" /> (क्रमांक <ph name="SERIAL_NUMBER" />) की ओर से अज्ञात <ph name="PRODUCT_ID" /> उत्पाद</translation>
 <translation id="6068932090455285721"><ph name="VENDOR_ID" /> विक्रेता की ओर से <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="6731255991101203740">अनज़िप करने के लिए निर्देशिका नहीं बनाई जा सकी: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">माइमहैंडलर: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">इस एक्सटेंशन ने स्वयं को बहुत जल्दी-जल्दी फिर से लोड किया.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> की ओर से अज्ञात <ph name="PRODUCT_ID" /> उत्पाद</translation>
diff --git a/extensions/strings/extensions_strings_hr.xtb b/extensions/strings/extensions_strings_hr.xtb
index 259a142..9e73de29 100644
--- a/extensions/strings/extensions_strings_hr.xtb
+++ b/extensions/strings/extensions_strings_hr.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Nije uspjelo dekodiranje slike: "<ph name="IMAGE_NAME" />"</translation>
 <translation id="2350172092385603347">Lokalizacija je korištena, ali default_locale nije naveden u manifestu.</translation>
 <translation id="2576842806987913196">Već postoji CRX datoteka s takvim nazivom.</translation>
-<translation id="2753617847762399167">Neispravna putanja (apsolutna ili relativna u odnosu na ".."): "<ph name="IMAGE_PATH" />"</translation>
 <translation id="2785530881066938471">Nije bilo moguće učitati datoteku "<ph name="RELATIVE_PATH" />" za skriptu sadržaja. Nema UTF-8 kodiranje.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (ID proširenja "<ph name="EXTENSION_ID" />") blokirao je administrator. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Nije moguće instaliranje paketa: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Oblikovani prozori nisu podržani.</translation>
 <translation id="5456409301717116725">To proširenje uključuje ključnu datoteku "<ph name="KEY_PATH" />". Vjerojatno ne želite to učiniti.</translation>
 <translation id="5486326529110362464">Vrijednost unosa za osobni ključ mora postojati.</translation>
-<translation id="5627523580512561598">proširenje <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Administrator ovog računala zahtijeva instaliranje proširenja <ph name="EXTENSION_NAME" /> i ono se ne može deinstalirati.</translation>
 <translation id="6027032947578871493">Nepoznati proizvod <ph name="PRODUCT_ID" />, <ph name="VENDOR_NAME" /> (serijski broj <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> dobavljača <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" zahtijeva pristup nekim od vaših uređaja:</translation>
 <translation id="657064425229075395">Nije bilo moguće učitati pozadinsku skriptu "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167">pristupiti uređaju <ph name="PRODUCT_NAME" /> dobavljača <ph name="VENDOR_NAME" /> (serijski broj <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Nije uspjelo stvaranje direktorija za raspakiravanje: "<ph name="DIRECTORY_PATH" />"</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Proširenje se prečesto ponovno učitavalo.</translation>
 <translation id="7003844668372540529">Nepoznati proizvod <ph name="PRODUCT_ID" />, <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_hu.xtb b/extensions/strings/extensions_strings_hu.xtb
index 9e4e4bc..2b46dc7 100644
--- a/extensions/strings/extensions_strings_hu.xtb
+++ b/extensions/strings/extensions_strings_hu.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Nem sikerült dekódolni a képet: „<ph name="IMAGE_NAME" />”</translation>
 <translation id="2350172092385603347">Fordítás használatban, de a default_locale (alapértelmezett nyelv- és országkód) nincs megadva a jegyzékfájlban.</translation>
 <translation id="2576842806987913196">Már van egy CRX-fájl ilyen névvel.</translation>
-<translation id="2753617847762399167">Szabálytalan útvonal (abszolút vagy relatív „..” taggal): „<ph name="IMAGE_PATH" />”</translation>
 <translation id="2785530881066938471">A(z) '<ph name="RELATIVE_PATH" />' fájlt nem lehet betölteni tartalomszkriptre, mert nem UTF-8 kódolású.</translation>
 <translation id="2903070246402204397">A(z) <ph name="EXTENSION_NAME" /> bővítményt (bővítményazonosító: <ph name="EXTENSION_ID" />) tiltja a rendszergazda. <ph name="ADMIN_INFO" />.</translation>
 <translation id="2988488679308982380">Nem sikerült a következő csomag telepítése: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">A formázott ablakok nem támogatottak.</translation>
 <translation id="5456409301717116725">Ez a bővítmény a(z) "<ph name="KEY_PATH" />" kulcsfájlt tartalmazza. Ezt Ön valószínűleg nem szeretné.</translation>
 <translation id="5486326529110362464">Kell lennie beviteli értéknek a privát kulcsnál.</translation>
-<translation id="5627523580512561598"><ph name="EXTENSION_NAME" /> bővítmény</translation>
 <translation id="5972529113578162692">A számítógép adminisztrátorának szüksége van arra, hogy a(z) <ph name="EXTENSION_NAME" /> telepítve legyen. Nem lehet eltávolítani.</translation>
 <translation id="6027032947578871493">Ismeretlen termék (<ph name="PRODUCT_ID" />) a következő szolgáltatótól: <ph name="VENDOR_NAME" /> (sorozatszám: <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" />, forgalmazó: <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">A(z) „<ph name="APP_NAME" />” alkalmazás hozzáférést kér egy vagy több eszközéhez.</translation>
 <translation id="657064425229075395">Nem sikerült betölteni a következő háttérszkriptet: "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> a következőtől: <ph name="VENDOR_NAME" /> (sorozatszám: <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Nem sikerült könyvtárat létrehozni a kicsomagoláshoz: „<ph name="DIRECTORY_PATH" />”</translation>
 <translation id="677806580227005219">MIME-kezelő: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Ez a bővítmény túl gyakran töltötte újra magát.</translation>
 <translation id="7003844668372540529">Ismeretlen termék (<ph name="PRODUCT_ID" />) a következő forgalmazótól: <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_id.xtb b/extensions/strings/extensions_strings_id.xtb
index a08030c..fbdc008 100644
--- a/extensions/strings/extensions_strings_id.xtb
+++ b/extensions/strings/extensions_strings_id.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Tidak dapat mendekode gambar: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Lokalisasi digunakan, tetapi default_locale tidak ditentukan dalam manifes.</translation>
 <translation id="2576842806987913196">Sudah ada file CRX dengan nama ini.</translation>
-<translation id="2753617847762399167">jalur ilegal (mutlak atau relatif dengan '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Tidak dapat memuat file '<ph name="RELATIVE_PATH" />' untuk skrip konten. File ini tidak bersandiaksara UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (ID ekstensi "<ph name="EXTENSION_ID" />") diblokir oleh administrator. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Tidak dapat memasang paket: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Jendela berbentuk tidak didukung.</translation>
 <translation id="5456409301717116725">Ekstensi ini termasuk file kunci '<ph name="KEY_PATH" />'. Anda mungkin tidak ingin melakukannya.</translation>
 <translation id="5486326529110362464">Nilai masukan untuk kunci pribadi harus ada.</translation>
-<translation id="5627523580512561598">ekstensi <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Administrator komputer ini mewajibkan agar <ph name="EXTENSION_NAME" /> dipasang. Ekstensi tersebut tidak dapat dicopot pemasangannya.</translation>
 <translation id="6027032947578871493">Produk <ph name="PRODUCT_ID" /> tak dikenal dari <ph name="VENDOR_NAME" /> (nomor seri <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> dari vendor <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" meminta akses ke satu atau beberapa perangkat Anda:</translation>
 <translation id="657064425229075395">Tidak dapat memuat skrip latar belakang '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> dari <ph name="VENDOR_NAME" /> (nomor seri <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Tidak dapat membuat direktori untuk pengekstrakan: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Ekstensi ini terlalu sering memuat ulang sendiri.</translation>
 <translation id="7003844668372540529">Produk <ph name="PRODUCT_ID" /> tak dikenal dari <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_it.xtb b/extensions/strings/extensions_strings_it.xtb
index 54c6217..5fd45b29 100644
--- a/extensions/strings/extensions_strings_it.xtb
+++ b/extensions/strings/extensions_strings_it.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Impossibile decodificare l'immagine: "<ph name="IMAGE_NAME" />"</translation>
 <translation id="2350172092385603347">Localizzazione utilizzata, ma default_locale non era specificato nel file manifest.</translation>
 <translation id="2576842806987913196">Esiste già un file CRX con questo nome.</translation>
-<translation id="2753617847762399167">Percorso non valido (assoluto o relativo con ".."): "<ph name="IMAGE_PATH" />"</translation>
 <translation id="2785530881066938471">Impossibile caricare il file "<ph name="RELATIVE_PATH" />" per la trascrizione dei contenuti. Non è codificato in UTF-8.</translation>
 <translation id="2903070246402204397">L'estensione <ph name="EXTENSION_NAME" /> (ID "<ph name="EXTENSION_ID" />") è stata bloccata dall'amministratore. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Impossibile installare il pacchetto: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Le finestre con forma personalizzata non sono supportate.</translation>
 <translation id="5456409301717116725">Questa estensione include il file di chiave "<ph name="KEY_PATH" />". Probabilmente preferiresti che non l'includesse.</translation>
 <translation id="5486326529110362464">Il valore di input per la chiave privata deve essere esistente.</translation>
-<translation id="5627523580512561598">estensione <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">L'amministratore di questo computer richiede che l'estensione <ph name="EXTENSION_NAME" /> sia installata. Non è possibile disinstallarla.</translation>
 <translation id="6027032947578871493">Prodotto sconosciuto <ph name="PRODUCT_ID" /> di <ph name="VENDOR_NAME" /> (numero di serie <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> del fornitore <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" richiede l'accesso a uno o più dispositivi:</translation>
 <translation id="657064425229075395">Impossibile caricare lo script in background "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> di <ph name="VENDOR_NAME" /> (numero di serie: <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Impossibile creare la directory per la decompressione: "<ph name="DIRECTORY_PATH" />"</translation>
 <translation id="677806580227005219">Gestore MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">L'estensione si è ricaricata automaticamente troppo spesso.</translation>
 <translation id="7003844668372540529">Prodotto sconosciuto <ph name="PRODUCT_ID" /> di <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_iw.xtb b/extensions/strings/extensions_strings_iw.xtb
index 334381b..feb0080 100644
--- a/extensions/strings/extensions_strings_iw.xtb
+++ b/extensions/strings/extensions_strings_iw.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">לא ניתן לפענח תמונה: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">‏נעשה שימוש בהתאמה למקום, אך default_locale לא צוין במניפסט.</translation>
 <translation id="2576842806987913196">‏כבר קיים קובץ CRX בשם זה.</translation>
-<translation id="2753617847762399167">נתיב לא חוקי (באופן מוחלט או ביחס אל '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">‏אין אפשרות לטעון את הקובץ '<ph name="RELATIVE_PATH" />' עבור סקריפט תוכן. הוא לא בקידוד UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (מזהה תוסף "<ph name="EXTENSION_ID" />") חסום על-ידי מנהל המערכת. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">לא ניתן להתקין את החבילה: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">אין תמיכה בחלונות מעוצבים.</translation>
 <translation id="5456409301717116725">תוסף זה כולל את קובץ המפתח "<ph name="KEY_PATH" />". מומלץ לא לעשות זאת.</translation>
 <translation id="5486326529110362464">חייב להתקיים ערך קלט של מפתח פרטי.</translation>
-<translation id="5627523580512561598">תוסף <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">מנהל המערכת של מכשיר זה דורש התקנה של <ph name="EXTENSION_NAME" />. לא ניתן להסיר את ההתקנה.</translation>
 <translation id="6027032947578871493">מוצר לא ידוע <ph name="PRODUCT_ID" /> מהספק <ph name="VENDOR_NAME" /> (מספר סידורי <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> מהספק <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">האפליקציה "<ph name="APP_NAME" />" מבקשת גישה לאחד או יותר מהמכשירים שלך:</translation>
 <translation id="657064425229075395">לא ניתן להעלות את סקריפט הרקע '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> מ-<ph name="VENDOR_NAME" /> (מספר סידורי <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">לא ניתן ליצור ספריה עבור ביטול הדחיסה: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">‏מטפל MIME:‏ <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">התוסף הזה טען את עצמו מחדש בתדירות גבוהה מדי.</translation>
 <translation id="7003844668372540529">מוצר לא ידוע <ph name="PRODUCT_ID" /> מאת <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_ja.xtb b/extensions/strings/extensions_strings_ja.xtb
index 14bdac19..2be8c15 100644
--- a/extensions/strings/extensions_strings_ja.xtb
+++ b/extensions/strings/extensions_strings_ja.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">画像をデコードできませんでした: <ph name="IMAGE_NAME" /></translation>
 <translation id="2350172092385603347">言語/地域機能は使用されていますが、マニフェストに default_locale が指定されていません。</translation>
 <translation id="2576842806987913196">既にこの名前の CRX ファイルが存在しています。</translation>
-<translation id="2753617847762399167">パス(絶対パスまたは '..' がある相対パス)が不適切です: <ph name="IMAGE_PATH" /></translation>
 <translation id="2785530881066938471">コンテンツ スクリプトのファイル「<ph name="RELATIVE_PATH" />」を読み込むことができませんでした。UTF-8 でエンコードされていません。</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" />(拡張機能 ID「<ph name="EXTENSION_ID" />」)は管理者によってブロックされています。<ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">パッケージをインストールできませんでした: <ph name="ERROR_CODE" /></translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">形状指定ウィンドウはサポートされていません。</translation>
 <translation id="5456409301717116725">この拡張機能には、鍵ファイル「<ph name="KEY_PATH" />」が含まれていますが、おそらくその必要性はありません。</translation>
 <translation id="5486326529110362464">秘密鍵の入力値が存在している必要があります。</translation>
-<translation id="5627523580512561598">拡張機能 <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">このパソコンの管理者により、<ph name="EXTENSION_NAME" /> をインストールすることが要件として指定されています。この拡張機能はアンインストールできません。</translation>
 <translation id="6027032947578871493">不明な商品(<ph name="PRODUCT_ID" />、ベンダー: <ph name="VENDOR_NAME" />、シリアル番号: <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" />(ベンダー: <ph name="VENDOR_ID" />)</translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">「<ph name="APP_NAME" />」が次のデバイスへのアクセスをリクエストしています:</translation>
 <translation id="657064425229075395">バックグラウンド スクリプト「<ph name="BACKGROUND_SCRIPT" />」を読み込めませんでした。</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" />、提供元 <ph name="VENDOR_NAME" />(シリアル番号 <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">解凍用のディレクトリを作成できませんでした: <ph name="DIRECTORY_PATH" /></translation>
 <translation id="677806580227005219">MIME ハンドラ: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">この拡張機能は、自身により頻繁に再読み込みされています。</translation>
 <translation id="7003844668372540529">不明な商品(<ph name="PRODUCT_ID" />、ベンダー: <ph name="VENDOR_NAME" />)</translation>
diff --git a/extensions/strings/extensions_strings_kn.xtb b/extensions/strings/extensions_strings_kn.xtb
index 6930913..4caba36 100644
--- a/extensions/strings/extensions_strings_kn.xtb
+++ b/extensions/strings/extensions_strings_kn.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">ಚಿತ್ರವನ್ನು ಡಿಕೋಡ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">ಲೋಕಲೈಜೇಷನ್ ಬಳಸಲಾಗಿದೆ, ಆದರೆ ಡಿಫಾಲ್ಟ್ _ಲೋಕಲ್ ಅನ್ನು ಮ್ಯಾನಿಫಾಸ್ಟ್‌ನಲ್ಲಿ ನಿರ್ದಿಷ್ಟಪಡಿಸಲಾಗಿಲ್ಲ.</translation>
 <translation id="2576842806987913196">ಪ್ರಸ್ತುತ ಈ ಹೆಸರಿನೊಂದಿಗೆ ಈಗಾಗಲೇ CRX ಫೈಲ್ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ.</translation>
-<translation id="2753617847762399167">ಕಾನೂನು ಬಾಹಿರ ಪಾಥ್ ('..' ರೊಂದಿಗೆ ಸಮಗ್ರ ಅಥವಾ ಸಂಬಂಧಿತ... ): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">'<ph name="RELATIVE_PATH" />' ಫೈಲ್ ಅನ್ನು ವಿಷಯ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಾಗಿ ಲೋಡ್ ಮಾಡಲು ಆಗುವುದಿಲ್ಲ. ಇದು UTF-8 ಎನ್‌ಕೋಡ್ ಆಗಿಲ್ಲ.</translation>
 <translation id="2903070246402204397">ನಿರ್ವಾಹಕರಿಂದ <ph name="EXTENSION_NAME" /> (ವಿಸ್ತರಣೆ ಐಡಿ "<ph name="EXTENSION_ID" />") ಅನ್ನು ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲಾಗುವುದಿಲ್ಲ: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">ಆಕಾರಗೊಳಿಸಿದ ವಿಂಡೋಗಳಿಗೆ ಬೆಂಬಲವಿಲ್ಲ.</translation>
 <translation id="5456409301717116725">ಈ ವಿಸ್ತರಣೆಯು ಕೀ ಫೈಲ್ '<ph name="KEY_PATH" />' ಅನ್ನು ಒಳಗೊಂಡಿದೆ. ನೀವು ಸಾಮಾನ್ಯವಾಗಿ ಹಾಗೆ ಮಾಡಲು ಬಯಸುವುದಿಲ್ಲ.</translation>
 <translation id="5486326529110362464">ಖಾಸಗಿ ಕೀಲಿಗಾಗಿ ಇನ್‌ಪುಟ್ ಮೌಲ್ಯ ಅಸ್ತಿತ್ವದಲ್ಲಿರಬೇಕು.</translation>
-<translation id="5627523580512561598">ವಿಸ್ತರಣೆ<ph name="EXTENSION_NAME" /></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>
 <translation id="6068932090455285721"><ph name="VENDOR_ID" /> ಮಾರಾಟಗಾರರಿಂದ <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" ನಿಮ್ಮ ಸಾಧನಗಳಲ್ಲಿ ಒಂದು ಅಥವಾ ಹೆಚ್ಚಿನ ಸಾಧನಗಳಿಗೆ ಪ್ರವೇಶವನ್ನು ವಿನಂತಿಸುತ್ತಿದೆ:</translation>
 <translation id="657064425229075395">'<ph name="BACKGROUND_SCRIPT" />' ಹಿನ್ನೆಲೆ ಪುಟವನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುವುದಿಲ್ಲ.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> ದಿಂದ <ph name="VENDOR_NAME" /> (ಕ್ರಮಸಂಖ್ಯೆ <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">ಅನ್ ಜಿಪ್ ಮಾಡುವುದಕ್ಕಾಗಿ ಡೈರೆಕ್ಟರಿ ರಚಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">ಮೈಮ್‌ಹ್ಯಾಂಡ್ಲರ್: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">ಈ ವಿಸ್ತರಣೆಯು ತಾನಾಗಿಯೇ ಪದೇ ಪದೇ ಮರು ಲೋಡ್ ಆಗುತ್ತಿದೆ.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> ಅವರಿಂದ <ph name="PRODUCT_ID" /> ಅಪರಿಚಿತ ಉತ್ಪನ್ನ</translation>
diff --git a/extensions/strings/extensions_strings_ko.xtb b/extensions/strings/extensions_strings_ko.xtb
index f084b97..7867952 100644
--- a/extensions/strings/extensions_strings_ko.xtb
+++ b/extensions/strings/extensions_strings_ko.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">'<ph name="IMAGE_NAME" />' 이미지를 디코딩하지 못했습니다.</translation>
 <translation id="2350172092385603347">번역한 언어를 이용하였지만 매니페스트에 기본 언어(default_locale)를 지정하지 않았습니다.</translation>
 <translation id="2576842806987913196">동일한 이름의 CRX 파일이 이미 있습니다.</translation>
-<translation id="2753617847762399167">불법 경로(절대 또는 상대): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">콘텐츠 스크립트에 파일('<ph name="RELATIVE_PATH" />')을 로드할 수 없습니다. UTF-8로 인코딩되지 않았습니다.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" />(확장 프로그램 ID '<ph name="EXTENSION_ID" />')은(는) 관리자에 의해 차단되었습니다. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">패키지를 설치할 수 없습니다. '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">창 모양은 지원되지 않습니다.</translation>
 <translation id="5456409301717116725">이 확장 프로그램은 키 파일 '<ph name="KEY_PATH" />'을(를) 포함합니다. 사용하지 않는 것이 좋습니다.</translation>
 <translation id="5486326529110362464">비공개 키 입력 값이 있어야 합니다.</translation>
-<translation id="5627523580512561598">확장 프로그램 <ph name="EXTENSION_NAME" /></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>
 <translation id="6068932090455285721">공급업체 <ph name="VENDOR_ID" />의 <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="6731255991101203740">'<ph name="DIRECTORY_PATH" />'의 압축을 해제하기 위한 디렉터리를 만들지 못했습니다.</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">확장 프로그램이 너무 자주 새로고침됩니다.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" />의 알 수 없는 제품 <ph name="PRODUCT_ID" /></translation>
diff --git a/extensions/strings/extensions_strings_lt.xtb b/extensions/strings/extensions_strings_lt.xtb
index c7b61e8c..f758444f 100644
--- a/extensions/strings/extensions_strings_lt.xtb
+++ b/extensions/strings/extensions_strings_lt.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Nepavyko iššifruoti vaizdo: „<ph name="IMAGE_NAME" />“</translation>
 <translation id="2350172092385603347">Naudotas lokalizavimas, bet deklaracijoje nenurodyta numatytoji lokalė.</translation>
 <translation id="2576842806987913196">CRX failas tokiu pavadinimu jau yra.</translation>
-<translation id="2753617847762399167">Netinkamas kelias (absoliutus arba susijęs su „..“): „<ph name="IMAGE_PATH" />“</translation>
 <translation id="2785530881066938471">Nepavyko įkelti turinio scenarijaus failo „<ph name="RELATIVE_PATH" />“. Jis nėra užkoduotas naudojant UTF-8.</translation>
 <translation id="2903070246402204397">„<ph name="EXTENSION_NAME" />“ (plėtinio ID „<ph name="EXTENSION_ID" />“) užblokavo administratorius. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Nepavyko įdiegti paketo: „<ph name="ERROR_CODE" />“</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Tam tikros formos langai nepalaikomi.</translation>
 <translation id="5456409301717116725">Šiame plėtinyje yra rakto failas „<ph name="KEY_PATH" />“. Neturėtumėte to daryti.</translation>
 <translation id="5486326529110362464">Turi būti privačiojo rakto įvesties vertė.</translation>
-<translation id="5627523580512561598">„<ph name="EXTENSION_NAME" />“ plėtinys</translation>
 <translation id="5972529113578162692">Šio įrenginio administratorius reikalauja, kad „<ph name="EXTENSION_NAME" />“ plėtinys būtų įdiegtas. Jo negalima pašalinti.</translation>
 <translation id="6027032947578871493">Nežinomas produktas „<ph name="PRODUCT_ID" />“ iš „<ph name="VENDOR_NAME" />“ (serijos numeris: <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721">„<ph name="PRODUCT_NAME" />“ iš teikėjo „<ph name="VENDOR_ID" />“</translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">„<ph name="APP_NAME" />“ prašo leidimo pasiekti vieną ar daugiau jūsų įrenginių:</translation>
 <translation id="657064425229075395">Nepavyko įkelti foninio scenarijaus „<ph name="BACKGROUND_SCRIPT" />“.</translation>
 <translation id="6580950983454333167">„<ph name="PRODUCT_NAME" />“, pardavėjas „<ph name="VENDOR_NAME" />“ (serijos numeris <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Nepavyko sukurti išarchyvavimo katalogo: „<ph name="DIRECTORY_PATH" />“</translation>
 <translation id="677806580227005219">MIME tvarkyklė: „<ph name="MIMEHANDLERVIEW_TAG_NAME" />“</translation>
 <translation id="6840444547062817500">Šis plėtinys buvo per dažnai įkeltas iš naujo.</translation>
 <translation id="7003844668372540529">Nežinomas produktas „<ph name="PRODUCT_ID" />“ iš „<ph name="VENDOR_NAME" />“</translation>
diff --git a/extensions/strings/extensions_strings_lv.xtb b/extensions/strings/extensions_strings_lv.xtb
index d9c4c05..e7c7899 100644
--- a/extensions/strings/extensions_strings_lv.xtb
+++ b/extensions/strings/extensions_strings_lv.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Nevarēja dekodēt attēlu: <ph name="IMAGE_NAME" /></translation>
 <translation id="2350172092385603347">Lokalizācija ir lietota, tomēr manifestā nav norādīta default_locale.</translation>
 <translation id="2576842806987913196">CRX fails ar šādu nosaukumu jau pastāv.</translation>
-<translation id="2753617847762399167">Nederīgs ceļš (pilnais vai relatīvais ar elementu “..”): <ph name="IMAGE_PATH" /></translation>
 <translation id="2785530881066938471">Nevar ielādēt failu "<ph name="RELATIVE_PATH" />" satura skriptam. Tas nav UTF-8 kodēts.</translation>
 <translation id="2903070246402204397">Administrators bloķēja paplašinājumu <ph name="EXTENSION_NAME" /> (paplašinājuma ID “<ph name="EXTENSION_ID" />”). <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Nevarēja instalēt pakotni: <ph name="ERROR_CODE" />.</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Pielāgotas formas logi netiek atbalstīti.</translation>
 <translation id="5456409301717116725">Šis paplašinājums ietver atslēgas failu <ph name="KEY_PATH" />. Iespējams, jūs to nevēlaties izmantot.</translation>
 <translation id="5486326529110362464">Privātās atslēgas ievades vērtībai jābūt.</translation>
-<translation id="5627523580512561598">Paplašinājums <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Šīs ierīces administrators pieprasa, lai būtu instalēts paplašinājums <ph name="EXTENSION_NAME" />. To nevar atinstalēt.</translation>
 <translation id="6027032947578871493">Nezināms produkts (ID: <ph name="PRODUCT_ID" />), ko piedāvā <ph name="VENDOR_NAME" /> (sērijas numurs: <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" />, ko piedāvā <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">Lietotne <ph name="APP_NAME" /> pieprasa piekļuvi vienai vai vairākām jūsu ierīcēm:</translation>
 <translation id="657064425229075395">Nevarēja ielādēt fona skriptu <ph name="BACKGROUND_SCRIPT" />.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" />, ko piedāvā <ph name="VENDOR_NAME" /> (sērijas numurs: <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Nevarēja izveidot direktoriju izgūšanai no ZIP arhīva: <ph name="DIRECTORY_PATH" /></translation>
 <translation id="677806580227005219">MIME apdarinātājs: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Šis paplašinājums pārāk bieži veica atkārtotu ielādi.</translation>
 <translation id="7003844668372540529">Nezināms produkts (ID: <ph name="PRODUCT_ID" />), ko piedāvā <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_ml.xtb b/extensions/strings/extensions_strings_ml.xtb
index 6191f03..0cd7188 100644
--- a/extensions/strings/extensions_strings_ml.xtb
+++ b/extensions/strings/extensions_strings_ml.xtb
@@ -12,10 +12,9 @@
 <translation id="2159915644201199628">ചിത്രം ഡീകോഡ് ചെയ്യാൻ കഴിഞ്ഞില്ല: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">പ്രാദേശികവൽക്കരണം ഉപയോഗിച്ചു, പക്ഷെ മാനിഫെസ്‌റ്റിൽ സ്ഥിര-ഭാഷ വ്യക്തമാക്കിയിട്ടില്ല.</translation>
 <translation id="2576842806987913196">ഇതേ പേരിൽ ഇതിനകം ഒരു CRX ഫയൽ നിലവിലുണ്ട്.</translation>
-<translation id="2753617847762399167">നിയമവിരുദ്ധമായ പാത (കേവലം അല്ലെങ്കിൽ '..' എന്നതുമായി ബന്ധപ്പെട്ടത്): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">ഉള്ളടക്ക സ്ക്രി‌പ്റ്റിന് '<ph name="RELATIVE_PATH" />' ഫയൽ ലോഡ് ചെയ്യാനായില്ല. അത് UTF-8 എൻകോഡ് ചെയ്‌‌തതല്ല.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (വിപുലീകരണ ഐഡി "<ph name="EXTENSION_ID" />") അഡ്‌മിനിസ്‌ട്രേറ്റർ ബ്ലോക്ക് ചെയ്‌തു. <ph name="ADMIN_INFO" /></translation>
-<translation id="2988488679308982380">പാക്കേജ് ഇന്‍സ്റ്റാള്‍ ചെയ്യാന്‍ കഴിഞ്ഞില്ല: '<ph name="ERROR_CODE" />'</translation>
+<translation id="2988488679308982380">പാക്കേജ് ഇൻസ്‌റ്റാൾ ചെയ്യാനായില്ല: '<ph name="ERROR_CODE" />'</translation>
 <translation id="3115238746683532089"><ph name="VENDOR_ID" /> വെൻഡറിൽ നിന്നുള്ള അജ്ഞാത ഉൽപ്പന്നം <ph name="PRODUCT_ID" /> (സീരിയൽ നമ്പർ <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="3144135466825225871">crx ഫയലിന് പകരം ചേർക്കുന്നത് പരാജയപ്പെട്ടു. ഈ ഫയൽ ഉപയോഗത്തിലാണോ എന്ന് പരിശോധിക്കുക.</translation>
 <translation id="3163201441334626963"><ph name="VENDOR_ID" /> വെൻഡറിൽ നിന്നുള്ള അജ്ഞാത ഉൽപ്പന്നം <ph name="PRODUCT_ID" /></translation>
@@ -30,7 +29,7 @@
 <translation id="4115165561519362854"><ph name="EXTENSION_VERSION" /> എന്നതിന്റെ ഏറ്റവും കുറഞ്ഞ പതിപ്പിനായി ഈ യന്ത്രത്തിന്റെ അഡ്‌മിനിസ്‌ട്രേറ്റർക്ക് <ph name="EXTENSION_NAME" /> എന്നതാവശ്യമാണ്. അത് ആ പതിപ്പിലേക്ക് (അല്ലെങ്കിൽ അതിനും മുകളിലേക്ക്) അപ്‌ഡേറ്റ് ചെയ്യുന്നതുവരെ പ്രവർത്തനക്ഷമമാക്കാനാവില്ല.</translation>
 <translation id="4233778200880751280">'<ph name="ABOUT_PAGE" />' എന്ന ആമുഖം പേജ് ലോഡ് ചെയ്യാൻ കഴിഞ്ഞില്ല.</translation>
 <translation id="471800408830181311">സ്വകാര്യ കീ ഔട്ട്‌പുട്ട് ചെയ്യുന്നതിന് പരാജയപ്പെട്ടു.</translation>
-<translation id="4811956658694082538">യൂട്ടിലിറ്റി പ്രോസസ്സ് ക്രാഷായതിനാൽ പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യാനായില്ല. Chrome വീണ്ടും ആരംഭിച്ച് വീണ്ടും ശ്രമിക്കുന്നത് പരീക്ഷിക്കുക.</translation>
+<translation id="4811956658694082538">യൂട്ടിലിറ്റി പ്രോസസ്സ് ക്രാഷായതിനാൽ പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യാനായില്ല. Chrome റീസ്റ്റാർട്ട് ചെയ്‍ത് വീണ്ടും ശ്രമിക്കുന്നത് പരീക്ഷിക്കുക.</translation>
 <translation id="4988792151665380515">പൊതു കീ കയറ്റുമതി ചെയ്യുന്നതിന് പരാജയപ്പെട്ടു.</translation>
 <translation id="5026754133087629784">വെബ് കാഴ്‌ച: <ph name="WEBVIEW_TAG_NAME" /></translation>
 <translation id="5098647635849512368">പായ്‌ക്കിലേക്കുള്ള ഡയറക്‌ടറിയുടെ കൃത്യമായ പാത കണ്ടെത്താനാകുന്നില്ല.</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">രൂപപ്പെടുത്തിയ വിൻഡോകൾ പിന്തുണയ്ക്കുന്നില്ല.</translation>
 <translation id="5456409301717116725">ഈ വിപുലീകരണത്തിൽ '<ph name="KEY_PATH" />' എന്ന കീ ഫയൽ ഉൾപ്പെടുന്നു. മിക്കവാറും നിങ്ങൾ ഇത് ചെയ്യാൻ താൽപ്പര്യപ്പെട്ടേക്കില്ല.</translation>
 <translation id="5486326529110362464">സ്വകാര്യ കീയുടെ ഇന്‍‌പുട്ട് മൂല്യം നിലവിലുണ്ടായിരിക്കണം.</translation>
-<translation id="5627523580512561598">വിപുലീകരണം<ph name="EXTENSION_NAME" /></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>
 <translation id="6068932090455285721"><ph name="VENDOR_ID" /> വെൻഡറിൽ നിന്നുള്ള <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="6731255991101203740">അൺസിപ്പ് ചെയ്യാനായി ഡയറക്‌റ്ററി സൃഷ്‌ടിക്കാൻ കഴിഞ്ഞില്ല: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">മൈംഹാൻഡ്‌ലർ: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">ഈ വിപുലീകരണം പതിവായി സ്വയം റീലോഡ് ചെയ്യുന്നു.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> എന്നതിൽ നിന്നുള്ള അജ്ഞാത ഉൽപ്പന്നം <ph name="PRODUCT_ID" /></translation>
diff --git a/extensions/strings/extensions_strings_mr.xtb b/extensions/strings/extensions_strings_mr.xtb
index 9213861..39dad16 100644
--- a/extensions/strings/extensions_strings_mr.xtb
+++ b/extensions/strings/extensions_strings_mr.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">इमेज डीकोड करणे शक्य झाले नाही: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">भाषांतर वापरले, परंतु मॅनिफेस्टमध्ये डीफॉल्ट_लोकॅल नमूद नाही.</translation>
 <translation id="2576842806987913196">या नावाने आधीपासूनच CRX फाइल उपस्थित आहे.</translation>
-<translation id="2753617847762399167">बेकायदेशीर पथ ('..' सह अचूक किंवा संबंधित): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">आशय स्क्रिप्टसाठी '<ph name="RELATIVE_PATH" />' फाइल लोड करणे शक्य नाही. ही UTF-8 द्वारे एन्कोड केलेली नाही.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> एक्स्टेंशन आयडी "<ph name="EXTENSION_ID" />") अॅडमिनिस्ट्रेटरने ब्लॉक केलेला आहे. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">हे पॅकेज इंस्टॉल करणे शक्य नाही: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">आकार असलेल्या विंडो समर्थित नाहीत.</translation>
 <translation id="5456409301717116725">हे एक्स्टेंशन की फाइल '<ph name="KEY_PATH" />' चा समावेश करतात. तुम्हाला कदाचित ते करणे आवश्यक नाही.</translation>
 <translation id="5486326529110362464">खासगी की साठी इनपुट मूल्य विद्यमान असणे आवश्यक आहे.</translation>
-<translation id="5627523580512561598">एक्स्टेंशन <ph name="EXTENSION_NAME" /></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>
 <translation id="6068932090455285721"><ph name="VENDOR_ID" /> विक्रेत्याकडील <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="SERIAL_NUMBER" />) कडील <ph name="PRODUCT_NAME" /></translation>
-<translation id="6731255991101203740">अनझिप करण्यासाठी डिरेक्टरी तयार करणे शक्य झाले नाही: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">या एक्स्टेंशनने स्वतःस वारंवार रीलोड केले आहे.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> कडील <ph name="PRODUCT_ID" /> अज्ञात उत्पादन</translation>
diff --git a/extensions/strings/extensions_strings_ms.xtb b/extensions/strings/extensions_strings_ms.xtb
index 3e9fdb8..d6e8900 100644
--- a/extensions/strings/extensions_strings_ms.xtb
+++ b/extensions/strings/extensions_strings_ms.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Tidak dapat menyahkod imej: ' <ph name="IMAGE_NAME" /> '</translation>
 <translation id="2350172092385603347">Penempatan digunakan, tetapi default_locale tidak dinyatakan dalam ketara.</translation>
 <translation id="2576842806987913196">Fail CRX dengan nama ini telah wujud.</translation>
-<translation id="2753617847762399167">Laluan tidak sah (mutlak atau berkaitan dengan '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Tidak dapat memuatkan fail '<ph name="RELATIVE_PATH" />' untuk skrip kandungan. Ia tidak terkod UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (ID sambungan "<ph name="EXTENSION_ID" />") disekat oleh pentadbir. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Tidak dapat memasang pakej: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Tetingkap berbentuk tidak disokong.</translation>
 <translation id="5456409301717116725">Sambungan ini merangkumi fail utama ' <ph name="KEY_PATH" /> '. Anda mungkin tidak mahu melakukannya.</translation>
 <translation id="5486326529110362464">Nilai input untuk kekunci peribadi  mesti wujud.</translation>
-<translation id="5627523580512561598">sambungan <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Pentadbir mesin ini memerlukan <ph name="EXTENSION_NAME" /> dipasang. Sambungan ini tidak boleh dinyahpasang.</translation>
 <translation id="6027032947578871493">Produk <ph name="PRODUCT_ID" /> daripada <ph name="VENDOR_NAME" /> tidak diketahui (nombor siri <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> daripada vendor <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" meminta akses kepada satu atau beberapa peranti anda.</translation>
 <translation id="657064425229075395">Tidak dapat memuatkan skrip latar belakang '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> daripada <ph name="VENDOR_NAME" /> (nombor siri <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Tidak dapat mencipta direktori untuk menyahzip: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Sambungan ini terlalu kerap memuat semula sendiri.</translation>
 <translation id="7003844668372540529">Produk <ph name="PRODUCT_ID" /> daripada <ph name="VENDOR_NAME" /> tidak diketahui</translation>
diff --git a/extensions/strings/extensions_strings_nl.xtb b/extensions/strings/extensions_strings_nl.xtb
index d0be4500..bcf6e87 100644
--- a/extensions/strings/extensions_strings_nl.xtb
+++ b/extensions/strings/extensions_strings_nl.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Kan afbeelding niet decoderen: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Lokalisatie gebruikt, maar er is geen 'default_locale' opgegeven in het manifest.</translation>
 <translation id="2576842806987913196">Er is al een CRX-bestand aanwezig met deze naam.</translation>
-<translation id="2753617847762399167">Illegaal pad (absoluut of relatief met '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Kan bestand '<ph name="RELATIVE_PATH" />' niet laden voor inhoudsscript. Het bestand bevat geen UTF-8-codering.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (extensie-ID '<ph name="EXTENSION_ID" />') is geblokkeerd door de beheerder. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Kan pakket niet installeren: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Gevormde vensters worden niet ondersteund.</translation>
 <translation id="5456409301717116725">Deze extensie bevat het sleutelbestand '<ph name="KEY_PATH" />'. Dit is waarschijnlijk niet je bedoeling.</translation>
 <translation id="5486326529110362464">Invoerwaarde voor persoonlijke sleutel moet aanwezig zijn.</translation>
-<translation id="5627523580512561598">extensie <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">De beheerder van deze machine vereist dat <ph name="EXTENSION_NAME" /> wordt geïnstalleerd. Deze kan niet worden verwijderd.</translation>
 <translation id="6027032947578871493">Onbekend product <ph name="PRODUCT_ID" /> van <ph name="VENDOR_NAME" /> (serienummer <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> van leverancier <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> vraagt om toegang tot een of meer van je apparaten:</translation>
 <translation id="657064425229075395">Kan achtergrondscript '<ph name="BACKGROUND_SCRIPT" />' niet laden.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> van <ph name="VENDOR_NAME" /> (serienummer <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Kan geen directory maken voor het uitpakken van: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Deze extensie heeft zichzelf te vaak opnieuw geladen.</translation>
 <translation id="7003844668372540529">Onbekend product <ph name="PRODUCT_ID" /> van <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_no.xtb b/extensions/strings/extensions_strings_no.xtb
index c6d5eb7..67d41eb 100644
--- a/extensions/strings/extensions_strings_no.xtb
+++ b/extensions/strings/extensions_strings_no.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Kunne ikke dekode bilde: «<ph name="IMAGE_NAME" />»</translation>
 <translation id="2350172092385603347">Lokaliseringen er brukt, men default_locale var ikke spesifisert i manifestet.</translation>
 <translation id="2576842806987913196">Det fins allerede en .crx-fil med dette navnet.</translation>
-<translation id="2753617847762399167">Ugyldig bane (absolutt eller relativ med '..'): «<ph name="IMAGE_PATH" />»</translation>
 <translation id="2785530881066938471">Kan ikke laste inn filen «<ph name="RELATIVE_PATH" />» for innholdsskript. Den er ikke UTF-8-kodet.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (utvidelses-ID «<ph name="EXTENSION_ID" />») er blokkert av administratoren. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Kunne ikke installere pakken: <ph name="ERROR_CODE" /></translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Formede vinduer støttes ikke.</translation>
 <translation id="5456409301717116725">Denne utvidelsen inneholder nøkkelfilen «<ph name="KEY_PATH" />». Du ønsker sannsynligvis ikke å gjøre dette.</translation>
 <translation id="5486326529110362464">Inndataverdien for privatnøkkelen må eksistere.</translation>
-<translation id="5627523580512561598"><ph name="EXTENSION_NAME" />-utvidelse</translation>
 <translation id="5972529113578162692">Administratoren for denne maskinen krever at <ph name="EXTENSION_NAME" /> installeres. Denne utvidelsen kan ikke avinstalleres.</translation>
 <translation id="6027032947578871493">Ukjent produkt, <ph name="PRODUCT_ID" />, fra <ph name="VENDOR_NAME" /> (serienummer: <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> fra leverandøren <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">«<ph name="APP_NAME" />» ber om tilgang til én eller flere av enhetene dine:</translation>
 <translation id="657064425229075395">Kunne ikke laste inn bakgrunnsskriptet «<ph name="BACKGROUND_SCRIPT" />».</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> fra <ph name="VENDOR_NAME" /> (serienummer <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Kunne ikke opprette katalog for utpakking: «<ph name="DIRECTORY_PATH" />»</translation>
 <translation id="677806580227005219">Mime-behandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Denne utvidelsen lastet seg inn på nytt for ofte.</translation>
 <translation id="7003844668372540529">Ukjent produkt, <ph name="PRODUCT_ID" />, fra <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_pl.xtb b/extensions/strings/extensions_strings_pl.xtb
index 5dfc128..a316fd9 100644
--- a/extensions/strings/extensions_strings_pl.xtb
+++ b/extensions/strings/extensions_strings_pl.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Nie można odkodować obrazu: „<ph name="IMAGE_NAME" />”</translation>
 <translation id="2350172092385603347">Lokalizacja została użyta, ale nie określono języka default_locale w pliku manifestu.</translation>
 <translation id="2576842806987913196">Plik CRX o tej nazwie już istnieje.</translation>
-<translation id="2753617847762399167">Nieprawidłowa ścieżka (pełna lub względna z przedrostkiem „..”): „<ph name="IMAGE_PATH" />”</translation>
 <translation id="2785530881066938471">Nie można wczytać pliku „<ph name="RELATIVE_PATH" />” dla skryptu dotyczącego treści. Plik nie ma kodowania UTF-8.</translation>
 <translation id="2903070246402204397">Rozszerzenie <ph name="EXTENSION_NAME" /> (identyfikator rozszerzenia „<ph name="EXTENSION_ID" />”) jest zablokowane przez administratora. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Nie można zainstalować pakietu: „<ph name="ERROR_CODE" />”</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Niestandardowe kształty okien nie są obsługiwane.</translation>
 <translation id="5456409301717116725">To rozszerzenie zawiera plik klucza „<ph name="KEY_PATH" />”. Prawdopodobnie nie powinno tak być.</translation>
 <translation id="5486326529110362464">Wartość wejściowa klucza prywatnego musi istnieć.</translation>
-<translation id="5627523580512561598">rozszerzenie <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Administrator tego urządzenia wymaga, by było na nim zainstalowane rozszerzenie <ph name="EXTENSION_NAME" />. Nie można go odinstalować.</translation>
 <translation id="6027032947578871493">Nieznany produkt <ph name="PRODUCT_ID" /> firmy <ph name="VENDOR_NAME" /> (numer seryjny <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> wyprodukowany przez <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> żąda dostępu do co najmniej jednego Twojego urządzenia:</translation>
 <translation id="657064425229075395">Nie udało się wczytać skryptu działającego w tle „<ph name="BACKGROUND_SCRIPT" />”.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> firmy <ph name="VENDOR_NAME" /> (numer seryjny <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Nie można utworzyć katalogu do rozpakowania: „<ph name="DIRECTORY_PATH" />”</translation>
 <translation id="677806580227005219">Moduł obsługi MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">To rozszerzenie zbyt często ładowało się ponownie.</translation>
 <translation id="7003844668372540529">Nieznany produkt <ph name="PRODUCT_ID" /> firmy <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_pt-BR.xtb b/extensions/strings/extensions_strings_pt-BR.xtb
index 744bd650..951a2084 100644
--- a/extensions/strings/extensions_strings_pt-BR.xtb
+++ b/extensions/strings/extensions_strings_pt-BR.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Não foi possível decodificar a imagem: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Localização utilizada, mas default_locale não foi especificada no manifesto.</translation>
 <translation id="2576842806987913196">Já existe um arquivo CRX com este nome.</translation>
-<translation id="2753617847762399167">Caminho ilegal (absoluto ou relativo com '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Não foi possível carregar o arquivo "<ph name="RELATIVE_PATH" />" para o script de conteúdo. Ele não possui a codificação UTF-8.</translation>
 <translation id="2903070246402204397">A extensão <ph name="EXTENSION_NAME" /> (código "<ph name="EXTENSION_ID" />") está bloqueada pelo administrador. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Não foi possível instalar o pacote: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Janelas com formas não são suportadas.</translation>
 <translation id="5456409301717116725">Esta extensão inclui o arquivo de chave '<ph name="KEY_PATH" />'. Você provavelmente não quer fazer isso.</translation>
 <translation id="5486326529110362464">O valor inserido para a chave privada deve existir.</translation>
-<translation id="5627523580512561598">extensão <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">O administrador desta máquina requer a instalação da extensão <ph name="EXTENSION_NAME" />. Ela não pode ser desinstalada.</translation>
 <translation id="6027032947578871493">Produto <ph name="PRODUCT_ID" /> desconhecido de <ph name="VENDOR_NAME" /> (número de série <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> do fornecedor <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" está solicitando acesso a um ou mais dos seus dispositivos:</translation>
 <translation id="657064425229075395">Não foi possível carregar o script de plano de fundo "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> de <ph name="VENDOR_NAME" /> (número de série <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Não foi possível criar um diretório para descompactação: ​​'<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Gerenciador Mime: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Esta extensão foi recarregada automaticamente com muita frequência.</translation>
 <translation id="7003844668372540529">Produto <ph name="PRODUCT_ID" /> desconhecido de <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_pt-PT.xtb b/extensions/strings/extensions_strings_pt-PT.xtb
index 99751acc..39647c4 100644
--- a/extensions/strings/extensions_strings_pt-PT.xtb
+++ b/extensions/strings/extensions_strings_pt-PT.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Não foi possível descodificar a imagem: "<ph name="IMAGE_NAME" />"</translation>
 <translation id="2350172092385603347">Localização utilizada, mas não foi especificado default_locale no manifesto.</translation>
 <translation id="2576842806987913196">Já existe um ficheiro CRX com este nome.</translation>
-<translation id="2753617847762399167">Caminho ilegal (absoluto ou relativo com ".."): "<ph name="IMAGE_PATH" />"</translation>
 <translation id="2785530881066938471">Não foi possível carregar o ficheiro "<ph name="RELATIVE_PATH" />" para script de conteúdo. Não está codificado em UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (ID de extensão "<ph name="EXTENSION_ID" />") está bloqueada pelo gestor. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Não foi possível instalar o pacote: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Não são suportadas janelas com forma.</translation>
 <translation id="5456409301717116725">Esta extensão inclui o ficheiro-chave "<ph name="KEY_PATH" />". Provavelmente não quer fazer isso.</translation>
 <translation id="5486326529110362464">O valor de entrada para uma chave privada tem de existir.</translation>
-<translation id="5627523580512561598">extensão <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">O gestor deste computador requer que a extensão <ph name="EXTENSION_NAME" /> esteja instalada. Não é possível desinstalá-la.</translation>
 <translation id="6027032947578871493">Produto desconhecido <ph name="PRODUCT_ID" /> de <ph name="VENDOR_NAME" /> (número de série <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> do fornecedor <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" está a solicitar acesso a um ou mais dos seus dispositivos:</translation>
 <translation id="657064425229075395">Não foi possível carregar o script de segundo plano "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> de <ph name="VENDOR_NAME" /> (número de série <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Não foi possível criar um diretório para descomprimir: "<ph name="DIRECTORY_PATH" />"</translation>
 <translation id="677806580227005219">Controlador MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Esta extensão foi recarregada demasiado frequentemente.</translation>
 <translation id="7003844668372540529">Produto desconhecido <ph name="PRODUCT_ID" /> de <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_ro.xtb b/extensions/strings/extensions_strings_ro.xtb
index 85e390d..e28a832c 100644
--- a/extensions/strings/extensions_strings_ro.xtb
+++ b/extensions/strings/extensions_strings_ro.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Imaginea nu a putut fi decodificată: „<ph name="IMAGE_NAME" />”</translation>
 <translation id="2350172092385603347">A fost utilizată localizarea, dar nu s-a specificat default_locale în manifest.</translation>
 <translation id="2576842806987913196">Există deja un fișier CRX cu acest nume.</translation>
-<translation id="2753617847762399167">Cale nevalidă (absolută sau relativă cu „..”): „<ph name="IMAGE_PATH" />”</translation>
 <translation id="2785530881066938471">Nu se poate încărca fișierul „<ph name="RELATIVE_PATH" />” pentru scriptul de conținut. Fișierul nu are codificare UTF-8.</translation>
 <translation id="2903070246402204397">Extensia <ph name="EXTENSION_NAME" /> (cu ID-ul „<ph name="EXTENSION_ID" />”) este blocată de administrator. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Nu s-a putut instala pachetul: „<ph name="ERROR_CODE" />”</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Ferestrele cu formă personalizată nu sunt acceptate.</translation>
 <translation id="5456409301717116725">Această extensie include fișierul cheie „<ph name="KEY_PATH" />”. Probabil că nu doriți să faceți asta.</translation>
 <translation id="5486326529110362464">Trebuie să existe o valoarea introdusă pentru cheia privată.</translation>
-<translation id="5627523580512561598">extensie <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Administratorul acestui computer solicită ca <ph name="EXTENSION_NAME" /> să fie instalată. Aceasta nu poate fi dezinstalată.</translation>
 <translation id="6027032947578871493">Produs necunoscut <ph name="PRODUCT_ID" /> de la <ph name="VENDOR_NAME" /> (numărul de serie <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> de la furnizorul <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">„<ph name="APP_NAME" />” solicită accesul la cel puțin unul dintre dispozitivele tale:</translation>
 <translation id="657064425229075395">Scriptul de fundal „<ph name="BACKGROUND_SCRIPT" />” nu a putut fi încărcat.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> de la <ph name="VENDOR_NAME" /> (număr de serie <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Nu s-a putut crea directorul pentru dezarhivare: „<ph name="DIRECTORY_PATH" />”</translation>
 <translation id="677806580227005219">Handler MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Această extensie s-a reîncărcat automat prea frecvent.</translation>
 <translation id="7003844668372540529">Produs necunoscut <ph name="PRODUCT_ID" /> de la <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_ru.xtb b/extensions/strings/extensions_strings_ru.xtb
index 734a359a..4dbd724 100644
--- a/extensions/strings/extensions_strings_ru.xtb
+++ b/extensions/strings/extensions_strings_ru.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Не удалось декодировать изображение: <ph name="IMAGE_NAME" /></translation>
 <translation id="2350172092385603347">Локализация используется, однако в манифесте не указан атрибут default_locale.</translation>
 <translation id="2576842806987913196">Файл CRX с таким именем уже существует.</translation>
-<translation id="2753617847762399167">Недопустимый путь (абсолютный или относительный с элементом ".."): <ph name="IMAGE_PATH" /></translation>
 <translation id="2785530881066938471">Не удается загрузить файл <ph name="RELATIVE_PATH" /> для скрипта содержания. Кодировка отличается от UTF-8.</translation>
 <translation id="2903070246402204397">Расширение <ph name="EXTENSION_NAME" /> (идентификатор: <ph name="EXTENSION_ID" />) заблокировано администратором. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Не удается установить пакет: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Система не поддерживает окна нестандартной формы</translation>
 <translation id="5456409301717116725">Это расширение содержит файл ключа <ph name="KEY_PATH" />. Вероятно, это неприемлемо.</translation>
 <translation id="5486326529110362464">Должно существовать входное значение для закрытого ключа.</translation>
-<translation id="5627523580512561598">расширение <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Удаление расширения "<ph name="EXTENSION_NAME" />" на этом компьютере запрещено администратором</translation>
 <translation id="6027032947578871493">Неизвестный продукт <ph name="PRODUCT_ID" /> от <ph name="VENDOR_NAME" /> (серийный номер <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> от поставщика <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">Приложение "<ph name="APP_NAME" />" запрашивает доступ к нескольким устройствам.</translation>
 <translation id="657064425229075395">Не удалось загрузить фоновый скрипт <ph name="BACKGROUND_SCRIPT" />.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" />, поставщик: <ph name="VENDOR_NAME" /> (серийный номер: <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Не удалось создать каталог для распаковки: <ph name="DIRECTORY_PATH" /></translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Это расширение слишком часто перезагружалось.</translation>
 <translation id="7003844668372540529">Неизвестный продукт <ph name="PRODUCT_ID" /> от <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_sk.xtb b/extensions/strings/extensions_strings_sk.xtb
index f7fc7a70..b76df62e75b 100644
--- a/extensions/strings/extensions_strings_sk.xtb
+++ b/extensions/strings/extensions_strings_sk.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Nepodarilo sa dekódovať obrázok: <ph name="IMAGE_NAME" /></translation>
 <translation id="2350172092385603347">Lokalizácia sa použila, parameter default_locale však nebol v manifeste určený.</translation>
 <translation id="2576842806987913196">Súbor CRX s týmto názvom už existuje.</translation>
-<translation id="2753617847762399167">Neplatná cesta (absolútna alebo relatívna s '..'): <ph name="IMAGE_PATH" /></translation>
 <translation id="2785530881066938471">Pre skript obsahu sa nepodarilo sa načítať súbor „<ph name="RELATIVE_PATH" />“. Nepoužíva kódovanie UTF-8.</translation>
 <translation id="2903070246402204397">Rozšírenie <ph name="EXTENSION_NAME" /> (ID rozšírenia: <ph name="EXTENSION_ID" />) je blokované správcom. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Nepodarilo sa nainštalovať balík: <ph name="ERROR_CODE" /></translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Tvarované okná nie sú podporované.</translation>
 <translation id="5456409301717116725">Toto rozšírenie obsahuje súbor kľúča <ph name="KEY_PATH" />. Pravdepodobne to nechcete urobiť.</translation>
 <translation id="5486326529110362464">Vstupná hodnota pre súkromný kľúč musí existovať.</translation>
-<translation id="5627523580512561598">rozšírenie <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Správca tohto počítača vyžaduje, aby bolo nainštalované rozšírenie <ph name="EXTENSION_NAME" />. Nedá sa odinštalovať.</translation>
 <translation id="6027032947578871493">Neznámy produkt <ph name="PRODUCT_ID" /> od dodávateľa <ph name="VENDOR_NAME" /> (sériové číslo: <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> od dodávateľa <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">Aplikácia <ph name="APP_NAME" /> žiada o prístup k jednému alebo viacerým vašim zariadeniam:</translation>
 <translation id="657064425229075395">Nepodarilo sa načítať skript na pozadí „<ph name="BACKGROUND_SCRIPT" />“.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> od dodávateľa <ph name="VENDOR_NAME" /> (sériové číslo <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Nepodarilo sa vytvoriť adresár na rozbalenie: <ph name="DIRECTORY_PATH" /></translation>
 <translation id="677806580227005219">Obslužný nástroj štandardu MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Toto rozšírenie sa obnovovalo príliš často.</translation>
 <translation id="7003844668372540529">Neznámy produkt <ph name="PRODUCT_ID" /> od dodávateľa <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_sl.xtb b/extensions/strings/extensions_strings_sl.xtb
index 541592e..27327924 100644
--- a/extensions/strings/extensions_strings_sl.xtb
+++ b/extensions/strings/extensions_strings_sl.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Slike ni bilo mogoče dekodirati: »<ph name="IMAGE_NAME" />«</translation>
 <translation id="2350172092385603347">Uporabljena je bila lokalizacija, vendar v manifestu ni bil naveden parameter default_locale.</translation>
 <translation id="2576842806987913196">Datoteka CRX s tem imenom že obstaja.</translation>
-<translation id="2753617847762399167">Neveljavna pot (absolutna ali v povezavi z »..«): »<ph name="IMAGE_PATH" />«</translation>
 <translation id="2785530881066938471">Datoteke »<ph name="RELATIVE_PATH" />« ni mogoče naložiti. Ni kodirana z UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (ID razširitve »<ph name="EXTENSION_ID" />«) je blokiral skrbnik. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Paketa »<ph name="ERROR_CODE" />« ni bilo mogoče namestiti</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Oblikovana okna niso podprta.</translation>
 <translation id="5456409301717116725">Ta razširitev vključuje datoteko s ključem »<ph name="KEY_PATH" />«. Verjetno ne želite narediti tega.</translation>
 <translation id="5486326529110362464">Obstajati mora vrednost vnosa za zasebni ključ.</translation>
-<translation id="5627523580512561598">razširitev <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Skrbnik te naprave zahteva, da je nameščena razširitev <ph name="EXTENSION_NAME" />. Odstranitev ni mogoča.</translation>
 <translation id="6027032947578871493">Neznan izdelek <ph name="PRODUCT_ID" /> dobavitelja <ph name="VENDOR_NAME" /> (serijska številka <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> dobavitelja <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">Aplikacija »<ph name="APP_NAME" />« zahteva dostop do ene ali več vaših naprav:</translation>
 <translation id="657064425229075395">Skripta za ozadje »<ph name="BACKGROUND_SCRIPT" />« ni bilo mogoče naložiti.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> proizvajalca <ph name="VENDOR_NAME" /> (serijska številka <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Imenika za odpakiranje ni bilo mogoče ustvariti: »<ph name="DIRECTORY_PATH" />«</translation>
 <translation id="677806580227005219">Komponenta mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Ta razširitev se je prepogosto naložila znova.</translation>
 <translation id="7003844668372540529">Neznan izdelek <ph name="PRODUCT_ID" /> dobavitelja <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_sr.xtb b/extensions/strings/extensions_strings_sr.xtb
index fa38e81..45f6847 100644
--- a/extensions/strings/extensions_strings_sr.xtb
+++ b/extensions/strings/extensions_strings_sr.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Није могуће декодирати слику: „<ph name="IMAGE_NAME" />“</translation>
 <translation id="2350172092385603347">Коришћена је локализација, али параметар default_locale није наведен у манифесту.</translation>
 <translation id="2576842806987913196">Већ постоји CRX датотека са овим називом.</translation>
-<translation id="2753617847762399167">Неисправна путања (апсолутна или релативна вредност једнака вредности „..“): „<ph name="IMAGE_PATH" />“</translation>
 <translation id="2785530881066938471">Учитавање датотеке „<ph name="RELATIVE_PATH" />“ за скрипту садржаја није успело. Нема UTF-8 шифровање.</translation>
 <translation id="2903070246402204397">Администратор је блокирао <ph name="EXTENSION_NAME" /> (ИД додатка је „<ph name="EXTENSION_ID" />“). <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Инсталација пакета није била могућа: „<ph name="ERROR_CODE" />“</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Прозори различитих облика нису подржани.</translation>
 <translation id="5456409301717116725">Овај додатак садржи датотеку кључа „<ph name="KEY_PATH" />“. Вероватно то не желите.</translation>
 <translation id="5486326529110362464">Улазна вредност приватног кључа мора да постоји.</translation>
-<translation id="5627523580512561598">додатак <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Администратор овог рачунара захтева да додатак <ph name="EXTENSION_NAME" /> буде инсталиран. Не можете да га деинсталирате.</translation>
 <translation id="6027032947578871493">Непознати производ <ph name="PRODUCT_ID" /> продавца <ph name="VENDOR_NAME" /> (серијски број <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> продавца <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">„<ph name="APP_NAME" />“ захтева приступ једном или више уређаја:</translation>
 <translation id="657064425229075395">Није могуће учитати скрипту у позадини „<ph name="BACKGROUND_SCRIPT" />“.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> продавца <ph name="VENDOR_NAME" /> (серијски број <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Није могуће направити директоријум за распакивање: „<ph name="DIRECTORY_PATH" />“</translation>
 <translation id="677806580227005219">Руковалац за MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Овај додатак се сувише често поново учитавао.</translation>
 <translation id="7003844668372540529">Непознати производ <ph name="PRODUCT_ID" /> продавца <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_sv.xtb b/extensions/strings/extensions_strings_sv.xtb
index fa2d37e..bb5929f8 100644
--- a/extensions/strings/extensions_strings_sv.xtb
+++ b/extensions/strings/extensions_strings_sv.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Det gick inte att avkoda bilden: <ph name="IMAGE_NAME" /></translation>
 <translation id="2350172092385603347">Lokalisering används, men default_locale specificeras inte i manifestet.</translation>
 <translation id="2576842806987913196">Det finns redan en CRX-fil med det här namnet.</translation>
-<translation id="2753617847762399167">Illegal sökväg (absolut eller relativ med ".."): <ph name="IMAGE_PATH" /></translation>
 <translation id="2785530881066938471">Det gick inte att läsa in filen <ph name="RELATIVE_PATH" /> för innehållsskriptet. Den har inte kodats i UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (tilläggs-id <ph name="EXTENSION_ID" />) har blockerats av administratören. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Det gick inte att installera paketet <ph name="ERROR_CODE" /></translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Formade fönster stöds inte.</translation>
 <translation id="5456409301717116725">Detta tillägg omfattar nyckelfilen <ph name="KEY_PATH" />. Du vill antagligen inte göra detta.</translation>
 <translation id="5486326529110362464">Det angivna värdet för den privata nyckeln måste finnas.</translation>
-<translation id="5627523580512561598">tillägget <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Administratören för den här datorn kräver att <ph name="EXTENSION_NAME" /> installeras. Det kan inte avinstalleras.</translation>
 <translation id="6027032947578871493">Okänd produkt (<ph name="PRODUCT_ID" />) från <ph name="VENDOR_NAME" /> (serienummer <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> från leverantören <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> begär åtkomst till en eller flera av dina enheter:</translation>
 <translation id="657064425229075395">Det gick inte att läsa in bakgrundsskriptet <ph name="BACKGROUND_SCRIPT" />.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> från <ph name="VENDOR_NAME" /> (serienummer <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Det gick inte att skapa en katalog för uppackning: <ph name="DIRECTORY_PATH" /></translation>
 <translation id="677806580227005219">Mime-hanterare: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Det här tillägget lästes in på nytt för ofta.</translation>
 <translation id="7003844668372540529">Okänd produkt (<ph name="PRODUCT_ID" />) från <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_sw.xtb b/extensions/strings/extensions_strings_sw.xtb
index 8ec23af..c144c681 100644
--- a/extensions/strings/extensions_strings_sw.xtb
+++ b/extensions/strings/extensions_strings_sw.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Isingeweza kusimbua picha: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Usanidi wa eneo umetumiwa, lakini eneo_chaguo-msingi halikubainishwa katika ratiba</translation>
 <translation id="2576842806987913196">Tayari kuna faili ya CRX iliyo na jina hili.</translation>
-<translation id="2753617847762399167">Njia haramu (kabisa au kiasi na '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Isingweza kupakia faili '<ph name="RELATIVE_PATH" />' ya hati ya maudhui. Haijasimbwa kwa UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (kitambulisho cha kiendelezi cha "<ph name="EXTENSION_ID" />") kimezuiwa na msimamizi. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Isingeweza kusakinisha furushi: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Madirisha yaliyo na umbo hayatumiki.</translation>
 <translation id="5456409301717116725">Kiendelezi hiki kinajumuisha faili muhimu '<ph name="KEY_PATH" />'. Huenda hutaki kufanya hivyo.</translation>
 <translation id="5486326529110362464">Thamani ya uingizaji ya ufunguo binafsi sharti iwepo.</translation>
-<translation id="5627523580512561598">kiendelezi <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Msimamizi wa mashine hii anahitaji <ph name="EXTENSION_NAME" /> kusakinishwa. Hakiwezi kuondolewa.</translation>
 <translation id="6027032947578871493">Bidhaa isiyojulikana <ph name="PRODUCT_ID" /> kutoka kwa <ph name="VENDOR_NAME" /> (nambari tambulishi <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> kutoa kwa mchuuzi <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" inaomba idhini ya kufikia kifaa chako kimoja au vingi:</translation>
 <translation id="657064425229075395">Haikuweza kupakia hati ya mandharinyuma '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> kutoka kwa <ph name="VENDOR_NAME" /> (nambari ya ufuatiliaji <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Isingeweza kuunda saraka ya kufungua: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Kishikilio cha Mime: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Kiendelezi hiki kilijipakia chenyewe upya kila mara.</translation>
 <translation id="7003844668372540529">Bidhaa isiyojulikana <ph name="PRODUCT_ID" /> kutoka kwa <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_ta.xtb b/extensions/strings/extensions_strings_ta.xtb
index b005501..cb4cbe2 100644
--- a/extensions/strings/extensions_strings_ta.xtb
+++ b/extensions/strings/extensions_strings_ta.xtb
@@ -13,7 +13,6 @@
 <translation id="2159915644201199628">இந்தப் படத்தை குறிநீக்க முடியவில்லை: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">மொழிபெயர்ப்பு பயன்படுத்தப்பட்டது, ஆனால் மெனிபெஃஸ்ட்டில் default_locale குறிப்பிடப்படவில்லை.</translation>
 <translation id="2576842806987913196">இந்தப் பெயருடன் ஏற்கனவே ஒரு CRX கோப்பு உள்ளது.</translation>
-<translation id="2753617847762399167">முறையற்ற பாதை (சரியான அல்லது இதனுடன் தொடர்புடையவை '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">உள்ளடக்க ஸ்கிரிப்டுக்காக கோப்பு  '<ph name="RELATIVE_PATH" />' ஐ ஏற்ற முடியவில்லை. இது UTF-8 குறியாக்கத்தில் இல்லை.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (நீட்டிப்பு ஐடி "<ph name="EXTENSION_ID" />") எனும் நீட்டிப்பை நிர்வாகி தடுத்துள்ளார். <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">இந்த தொகுப்பை நிறுவமுடியாது: '<ph name="ERROR_CODE" />'</translation>
@@ -39,7 +38,6 @@
 <translation id="5436430103864390185">வடிவமாக்கப்பட்ட சாளரங்கள் ஆதரிக்கப்படாது.</translation>
 <translation id="5456409301717116725">இந்த நீட்டிப்பு விசை கோப்பு '<ph name="KEY_PATH" />' ஐக் கொண்டுள்ளது. நீங்கள் அதை செய்ய விரும்பாமல் இருக்கலாம்.</translation>
 <translation id="5486326529110362464">தனிப்பட்ட விசைக்கான உள்ளீட்டு மதிப்பு அவசியம் இருக்க வேண்டும்.</translation>
-<translation id="5627523580512561598"><ph name="EXTENSION_NAME" /> நீட்டிப்பு</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>
 <translation id="6068932090455285721">விற்பனையாளர் <ph name="VENDOR_ID" /> அனுப்பிய <ph name="PRODUCT_NAME" /></translation>
@@ -51,7 +49,6 @@
 <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="6731255991101203740">இதன் ஜிப்பை திறப்பதற்குக் கோப்பகத்தை உருவாக்க முடியவில்லை: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">இந்த நீட்டிப்பு அடிக்கடி தன்னைத்தானே ஏற்றுகிறது.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> அனுப்பிய <ph name="PRODUCT_ID" /> தயாரிப்பை அறிய முடியவில்லை</translation>
diff --git a/extensions/strings/extensions_strings_te.xtb b/extensions/strings/extensions_strings_te.xtb
index 8e046716..5fec00d 100644
--- a/extensions/strings/extensions_strings_te.xtb
+++ b/extensions/strings/extensions_strings_te.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">ఈ చిత్రం డీకోడ్ చేయబడదు: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">స్థానికీకరణ ఉపయోగించబడుతుంది, అయితే మానిఫెస్ట్‌లో default_localeను పేర్కొనలేదు.</translation>
 <translation id="2576842806987913196">ఈ పేరుతో ఇప్పటికే CRX ఫైల్ ఉంది.</translation>
-<translation id="2753617847762399167">చట్టవిరుద్ధ పాథ్‌ (ఖచ్చితంగా లేదా '..'కు సంబంధిత): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">కంటెంట్ స్క్రిప్ట్‌కు '<ph name="RELATIVE_PATH" />' ఫైల్‌ను లోడ్ చేయలేకపోయింది. ఈ ఫైల్ UTF-8లో ఎన్‌కోడ్ కాలేదు.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (ఎక్స్‌టెన్ష‌న్‌ ID "<ph name="EXTENSION_ID" />") నిర్వాహకుల ద్వారా బ్లాక్ చేయబడింది. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">ప్యాకేజీని ఇన్‌స్టాల్ చేయడం సాధ్యపడలేదు: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">ఆకృతీకరించిన విండోలకు మద్దతు లేదు.</translation>
 <translation id="5456409301717116725">ఈ పొడిగింపు '<ph name="KEY_PATH" />' కీ ఫైల్‌ను కలిగి ఉంది. బహుశా మీరు దాన్ని చేయకూడదు.</translation>
 <translation id="5486326529110362464">ప్రైవేట్ కీ కోసం ఇన్‌పుట్ విలువ తప్పనిసరిగా ఉండాలి.</translation>
-<translation id="5627523580512561598">పొడిగింపు <ph name="EXTENSION_NAME" /></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>
 <translation id="6068932090455285721"><ph name="VENDOR_ID" /> విక్రేత నుండి <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="6731255991101203740">దీనిలో అన్‌జిప్ చేయడానికి డైరెక్టరీ సృష్టించబడదు: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mime హ్యాండ్లర్: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">ఈ పొడిగింపు దానికదే చాలా తరచుగా రీలోడ్ అయ్యింది.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> నుండి తెలియని ఉత్పత్తి <ph name="PRODUCT_ID" /></translation>
diff --git a/extensions/strings/extensions_strings_th.xtb b/extensions/strings/extensions_strings_th.xtb
index 32588ace..63fcfe9 100644
--- a/extensions/strings/extensions_strings_th.xtb
+++ b/extensions/strings/extensions_strings_th.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">ไม่สามารถถอดรหัสภาพ: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">ใช้การแปลภาษาท้องถิ่นแล้ว แต่ไม่ได้ระบุ default_locale ในมานิเฟสต์</translation>
 <translation id="2576842806987913196">มีไฟล์ CRX ที่มีชื่อนี้อยู่แล้ว</translation>
-<translation id="2753617847762399167">เส้นทางที่ไม่ถูกต้อง (โดยชัดแจ้งหรือเกี่ยวข้องกับ '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">ไม่สามารถโหลดไฟล์ "<ph name="RELATIVE_PATH" />" สำหรับสคริปต์เนื้อหา ไม่ใช่การเข้ารหัส UTF-8</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (รหัสส่วนขยาย "<ph name="EXTENSION_ID" />") ถูกบล็อกโดยผู้ดูแลระบบ <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">ไม่สามารถติดตั้งแพ็กเกจ: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">หน้าต่างที่สร้างขึ้นไม่ได้รับการสนับสนุน</translation>
 <translation id="5456409301717116725">ส่วนขยายนี้มีไฟล์คีย์ "<ph name="KEY_PATH" />" คุณอาจจะไม่ต้องการดำเนินการนั้น</translation>
 <translation id="5486326529110362464">ค่าที่ป้อนสำหรับคีย์ส่วนตัวต้องมีอยู่จริง</translation>
-<translation id="5627523580512561598">ส่วนขยาย <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">ผู้ดูแลระบบของอุปกรณ์เครื่องนี้กำหนดให้ติดตั้ง <ph name="EXTENSION_NAME" /> ไม่สามารถถอนการติดตั้งส่วนขยายนี้ได้</translation>
 <translation id="6027032947578871493">ผลิตภัณฑ์ที่ไม่รู้จัก <ph name="PRODUCT_ID" /> จาก <ph name="VENDOR_NAME" /> (หมายเลขซีเรียล <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> จากผู้ขาย <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" ขอสิทธิ์ในการเข้าถึงอุปกรณ์ของคุณอย่างน้อย 1 เครื่อง:</translation>
 <translation id="657064425229075395">ไม่สามารถโหลดสคริปต์พื้นหลัง "<ph name="BACKGROUND_SCRIPT" />"</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> จาก <ph name="VENDOR_NAME" /> (หมายเลขซีเรียล <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">ไม่สามารถสร้างไดเรกทอรีสำหรับการแตกไฟล์ซิป: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">เครื่องจัดการ MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">ส่วนขยายนี้โหลดตัวเองซ้ำบ่อยเกินไป</translation>
 <translation id="7003844668372540529">ผลิตภัณฑ์ที่ไม่รู้จัก <ph name="PRODUCT_ID" /> จาก <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_tr.xtb b/extensions/strings/extensions_strings_tr.xtb
index 1e6419dd..7653498 100644
--- a/extensions/strings/extensions_strings_tr.xtb
+++ b/extensions/strings/extensions_strings_tr.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Resmin kodu çözülemedi: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Yerelleştirme kullanıldı, ancak bildiride default_locale belirtilmedi.</translation>
 <translation id="2576842806987913196">Bu adla bir CRX dosyası zaten var.</translation>
-<translation id="2753617847762399167">Geçersiz yol (mutlak veya '..' ile göreli): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">İçerik komut dosyası için '<ph name="RELATIVE_PATH" />' dosyası yüklenemedi. Dosya UTF-8 olarak kodlanmamış.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (uzantı kimliği "<ph name="EXTENSION_ID" />") yönetici tarafından engelleniyor. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Paket yüklenemedi: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Şekillendirilmiş pencereler desteklenmez.</translation>
 <translation id="5456409301717116725">Bu uzantıda '<ph name="KEY_PATH" />' anahtar dosyası var. Muhtemelen istediğiniz bu değil.</translation>
 <translation id="5486326529110362464">Özel anahtara ilişkin giriş anahtarı olmalıdır.</translation>
-<translation id="5627523580512561598">uzantı: <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Bu makinenin yöneticisi <ph name="EXTENSION_NAME" /> adlı uzantının yüklenmesini şart koşuyor. Uzantı kaldırılamaz.</translation>
 <translation id="6027032947578871493"><ph name="VENDOR_NAME" /> tarafından sağlanan <ph name="PRODUCT_ID" /> ürün kimliğine sahip bilinmeyen ürün (seri numarası: <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="VENDOR_ID" /> tarafından sağlanan <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" uygulaması cihazlarınızdan birine veya birkaçına erişim izni istiyor:</translation>
 <translation id="657064425229075395">Arka plan komut dosyası '<ph name="BACKGROUND_SCRIPT" />' yüklenemedi.</translation>
 <translation id="6580950983454333167">Ürün: <ph name="PRODUCT_NAME" />, Firma: <ph name="VENDOR_NAME" /> (seri numarası: <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Açma dizini oluşturulamadı: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Bu uzantı, kendisini yeniden yükleme işlemini çok sık yaptı.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> tarafından sağlanan <ph name="PRODUCT_ID" /> ürün kimliğine sahip bilinmeyen ürün</translation>
diff --git a/extensions/strings/extensions_strings_uk.xtb b/extensions/strings/extensions_strings_uk.xtb
index 46bdc11..8bbd1d8 100644
--- a/extensions/strings/extensions_strings_uk.xtb
+++ b/extensions/strings/extensions_strings_uk.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Не вдалося декодувати зображення: "<ph name="IMAGE_NAME" />"</translation>
 <translation id="2350172092385603347">Використано локалізацію, але параметр мови за умовчанням (default_locale) не визначено в маніфесті.</translation>
 <translation id="2576842806987913196">Файл у форматі CRX із такою назвою вже існує.</translation>
-<translation id="2753617847762399167">Заборонений шлях (узагалі або у зв’язку з ".."): "<ph name="IMAGE_PATH" />"</translation>
 <translation id="2785530881066938471">Неможливо завантажити файл "<ph name="RELATIVE_PATH" />" для сценарію вмісту. Кодування файлу не UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (ідентифікатор розширення "<ph name="EXTENSION_ID" />") заблоковано адміністратором. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Неможливо встановити пакет: "<ph name="ERROR_CODE" />"</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Нестандартні вікна не підтримуються.</translation>
 <translation id="5456409301717116725">Це розширення включає файл ключа "<ph name="KEY_PATH" />". Можливо, ви не хочете цього робити.</translation>
 <translation id="5486326529110362464">Має бути дійсне значення секретного ключа.</translation>
-<translation id="5627523580512561598">розширення <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Адміністратор цього комп’ютера вимагає встановити розширення <ph name="EXTENSION_NAME" />. Його неможливо видалити.</translation>
 <translation id="6027032947578871493">Невідомий продукт <ph name="PRODUCT_ID" /> від постачальника <ph name="VENDOR_NAME" /> (серійний номер: <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> від постачальника <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354"><ph name="APP_NAME" /> просить надати доступ до одного або кількох ваших пристроїв:</translation>
 <translation id="657064425229075395">Не вдалося завантажити фоновий сценарій "<ph name="BACKGROUND_SCRIPT" />".</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> від постачальника <ph name="VENDOR_NAME" /> (серійний номер <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Не вдалося створити каталог для розпакування: "<ph name="DIRECTORY_PATH" />"</translation>
 <translation id="677806580227005219">Обробник MIME: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Це розширення перезавантажувалося надто часто.</translation>
 <translation id="7003844668372540529">Невідомий продукт <ph name="PRODUCT_ID" /> від постачальника <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_vi.xtb b/extensions/strings/extensions_strings_vi.xtb
index b4f7b8e..497b5da 100644
--- a/extensions/strings/extensions_strings_vi.xtb
+++ b/extensions/strings/extensions_strings_vi.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">Không thể giải mã hình ảnh: '<ph name="IMAGE_NAME" />'</translation>
 <translation id="2350172092385603347">Sử dụng bản địa hóa nhưng không chỉ định default_locale trong tệp kê khai.</translation>
 <translation id="2576842806987913196">Hiện có tệp CRX hiển thị với tên này.</translation>
-<translation id="2753617847762399167">Đường dẫn không hợp lệ (tuyệt đối hoặc tương đối với '..'): '<ph name="IMAGE_PATH" />'</translation>
 <translation id="2785530881066938471">Không thể tải tệp '<ph name="RELATIVE_PATH" />' cho tập lệnh nội dung. Tệp không được mã hóa UTF-8.</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" /> (ID tiện ích "<ph name="EXTENSION_ID" />") bị quản trị viên chặn. <ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">Không thể cài đặt gói: '<ph name="ERROR_CODE" />'</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">Cửa sổ đã định hình không được hỗ trợ.</translation>
 <translation id="5456409301717116725">Tiện ích này bao gồm tệp khóa '<ph name="KEY_PATH" />'. Bạn có thể không muốn thực hiện việc đó.</translation>
 <translation id="5486326529110362464">Giá trị dữ liệu nhập cho khóa cá nhân phải tồn tại.</translation>
-<translation id="5627523580512561598">tiện ích <ph name="EXTENSION_NAME" /></translation>
 <translation id="5972529113578162692">Quản trị viên của máy này yêu cầu cài đặt <ph name="EXTENSION_NAME" />. Không thể gỡ cài đặt tiện ích này.</translation>
 <translation id="6027032947578871493">Sản phẩm không xác định <ph name="PRODUCT_ID" /> từ <ph name="VENDOR_NAME" /> (số sê-ri <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="6068932090455285721"><ph name="PRODUCT_NAME" /> từ nhà cung cấp <ph name="VENDOR_ID" /></translation>
@@ -50,7 +48,6 @@
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" đang yêu cầu quyền truy cập vào một hoặc nhiều thiết bị của bạn:</translation>
 <translation id="657064425229075395">Không thể tải tập lệnh nền '<ph name="BACKGROUND_SCRIPT" />'.</translation>
 <translation id="6580950983454333167"><ph name="PRODUCT_NAME" /> của <ph name="VENDOR_NAME" /> (số sê-ri <ph name="SERIAL_NUMBER" />)</translation>
-<translation id="6731255991101203740">Không thể tạo thư mục để giải nén: '<ph name="DIRECTORY_PATH" />'</translation>
 <translation id="677806580227005219">Mimehandler: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">Phần mở rộng này đã được tải lại quá thường xuyên.</translation>
 <translation id="7003844668372540529">Sản phẩm không xác định <ph name="PRODUCT_ID" /> từ <ph name="VENDOR_NAME" /></translation>
diff --git a/extensions/strings/extensions_strings_zh-CN.xtb b/extensions/strings/extensions_strings_zh-CN.xtb
index d6fe6eb..0fe7109 100644
--- a/extensions/strings/extensions_strings_zh-CN.xtb
+++ b/extensions/strings/extensions_strings_zh-CN.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">无法对图片解码:“<ph name="IMAGE_NAME" />”</translation>
 <translation id="2350172092385603347">已使用本地化功能,但未在清单中指定 default_locale。</translation>
 <translation id="2576842806987913196">已经有其他 CRX 文件使用了此名称。</translation>
-<translation id="2753617847762399167">非法路径(具有“..”的绝对或相对路径):“<ph name="IMAGE_PATH" />”</translation>
 <translation id="2785530881066938471">无法为内容脚本加载“<ph name="RELATIVE_PATH" />”文件。该文件采用的不是 UTF-8 编码。</translation>
 <translation id="2903070246402204397"><ph name="EXTENSION_NAME" />(扩展程序 ID为“<ph name="EXTENSION_ID" />”)已被管理员阻止。<ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">无法安装程序包:“<ph name="ERROR_CODE" />”</translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">不支持成形的窗口。</translation>
 <translation id="5456409301717116725">此扩展程序包含密钥文件“<ph name="KEY_PATH" />”,您最好不要执行此操作。</translation>
 <translation id="5486326529110362464">请输入私有密钥值。</translation>
-<translation id="5627523580512561598">扩展程序“<ph name="EXTENSION_NAME" />”</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>
 <translation id="6068932090455285721">来自供应商 <ph name="VENDOR_ID" /> 的<ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="6731255991101203740">无法创建解压缩目录:“<ph name="DIRECTORY_PATH" />”</translation>
 <translation id="677806580227005219">MIME 处理程序:<ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">此扩展程序自行重新加载的频率过高。</translation>
 <translation id="7003844668372540529">来自<ph name="VENDOR_NAME" />的未知产品 <ph name="PRODUCT_ID" /></translation>
diff --git a/extensions/strings/extensions_strings_zh-TW.xtb b/extensions/strings/extensions_strings_zh-TW.xtb
index 2d3b1362..eb81f92 100644
--- a/extensions/strings/extensions_strings_zh-TW.xtb
+++ b/extensions/strings/extensions_strings_zh-TW.xtb
@@ -12,7 +12,6 @@
 <translation id="2159915644201199628">無法將圖片解碼:「<ph name="IMAGE_NAME" />」</translation>
 <translation id="2350172092385603347">已使用語言代碼,但是仍未在資訊清單中指定 default_locale。</translation>
 <translation id="2576842806987913196">已有一個 CRX 檔案使用這個名稱。</translation>
-<translation id="2753617847762399167">路徑無效 (絕對路徑或「..」相對路徑):「<ph name="IMAGE_PATH" />」</translation>
 <translation id="2785530881066938471">無法載入內容指令碼的「<ph name="RELATIVE_PATH" />」檔案,因為該檔案未使用 UTF-8 編碼。</translation>
 <translation id="2903070246402204397">管理員已封鎖 <ph name="EXTENSION_NAME" /> (擴充功能 ID「<ph name="EXTENSION_ID" />」)。<ph name="ADMIN_INFO" /></translation>
 <translation id="2988488679308982380">無法安裝套件:<ph name="ERROR_CODE" /></translation>
@@ -38,7 +37,6 @@
 <translation id="5436430103864390185">系統不支援造型視窗。</translation>
 <translation id="5456409301717116725">這個擴充功能含有金鑰檔「<ph name="KEY_PATH" />」。你不妨重新考慮是否仍要進行。</translation>
 <translation id="5486326529110362464">私密金鑰必須存在輸入項目值。</translation>
-<translation id="5627523580512561598"><ph name="EXTENSION_NAME" /> 擴充功能</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>
 <translation id="6068932090455285721">供應商 <ph name="VENDOR_ID" /> 提供的 <ph name="PRODUCT_NAME" /></translation>
@@ -50,7 +48,6 @@
 <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="6731255991101203740">無法建立解壓縮目錄:「<ph name="DIRECTORY_PATH" />」</translation>
 <translation id="677806580227005219">MIME 處理常式:<ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
 <translation id="6840444547062817500">這項擴充功能自動重新載入的頻率過高。</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> 提供的不明產品 <ph name="PRODUCT_ID" /></translation>
diff --git a/fuchsia/engine/browser/frame_impl.cc b/fuchsia/engine/browser/frame_impl.cc
index b1f3ae5..0e17d7a 100644
--- a/fuchsia/engine/browser/frame_impl.cc
+++ b/fuchsia/engine/browser/frame_impl.cc
@@ -300,18 +300,27 @@
   }
 }
 
-bool FrameImpl::IsWebContentsCreationOverridden(
+bool FrameImpl::ShouldCreateWebContents(
+    content::WebContents* web_contents,
+    content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
-    const GURL& target_url) {
+    const GURL& target_url,
+    const std::string& partition_id,
+    content::SessionStorageNamespace* session_storage_namespace) {
   // Specify a generous upper bound for unacknowledged popup windows, so that we
   // can catch bad client behavior while not interfering with normal operation.
   constexpr size_t kMaxPendingWebContentsCount = 10;
 
+  DCHECK_EQ(web_contents, web_contents_.get());
+
   if (!popup_listener_)
-    return true;
+    return false;
 
   if (pending_popups_.size() >= kMaxPendingWebContentsCount) {
     // The content is producing popups faster than the embedder can process
@@ -319,10 +328,10 @@
     LOG(WARNING) << "Too many pending popups, ignoring request.";
 
     // Don't produce a WebContents for this popup.
-    return true;
+    return false;
   }
 
-  return false;
+  return true;
 }
 
 void FrameImpl::AddNewContents(
diff --git a/fuchsia/engine/browser/frame_impl.h b/fuchsia/engine/browser/frame_impl.h
index 6e7f8c6..45c3abd 100644
--- a/fuchsia/engine/browser/frame_impl.h
+++ b/fuchsia/engine/browser/frame_impl.h
@@ -141,12 +141,19 @@
                               const base::string16& message,
                               int32_t line_no,
                               const base::string16& source_id) override;
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override;
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) override;
   void WebContentsCreated(content::WebContents* source_contents,
                           int opener_render_process_id,
                           int opener_render_frame_id,
diff --git a/fuchsia/engine/browser/web_engine_content_browser_client.cc b/fuchsia/engine/browser/web_engine_content_browser_client.cc
index 350509c8..1d0aac5 100644
--- a/fuchsia/engine/browser/web_engine_content_browser_client.cc
+++ b/fuchsia/engine/browser/web_engine_content_browser_client.cc
@@ -10,7 +10,9 @@
 
 #include "base/stl_util.h"
 #include "components/version_info/version_info.h"
+#include "content/public/browser/cors_exempt_headers.h"
 #include "content/public/browser/devtools_manager_delegate.h"
+#include "content/public/browser/network_service_instance.h"
 #include "content/public/common/user_agent.h"
 #include "content/public/common/web_preferences.h"
 #include "fuchsia/engine/browser/url_request_rewrite_rules_manager.h"
@@ -20,6 +22,7 @@
 #include "fuchsia/engine/common/web_engine_content_client.h"
 #include "fuchsia/engine/common/web_engine_url_loader_throttle.h"
 #include "fuchsia/engine/switches.h"
+#include "services/network/public/mojom/network_service.mojom.h"
 
 namespace {
 
@@ -166,3 +169,24 @@
       UrlRequestRewriteRulesManager::ForFrameTreeNodeId(frame_tree_node_id)));
   return throttles;
 }
+
+mojo::Remote<network::mojom::NetworkContext>
+WebEngineContentBrowserClient::CreateNetworkContext(
+    content::BrowserContext* context,
+    bool in_memory,
+    const base::FilePath& relative_partition_path) {
+  // Same as ContentBrowserClient::CreateNetworkContext().
+  mojo::Remote<network::mojom::NetworkContext> network_context;
+  network::mojom::NetworkContextParamsPtr context_params =
+      network::mojom::NetworkContextParams::New();
+  context_params->user_agent = GetUserAgent();
+  context_params->accept_language = "en-us,en";
+
+  // Whitelist some headers to be used for CORS requests, e.g. for resource
+  // prefetching.
+  content::UpdateCorsExemptHeader(context_params.get());
+
+  content::GetNetworkService()->CreateNetworkContext(
+      network_context.BindNewPipeAndPassReceiver(), std::move(context_params));
+  return network_context;
+}
diff --git a/fuchsia/engine/browser/web_engine_content_browser_client.h b/fuchsia/engine/browser/web_engine_content_browser_client.h
index 46b25b1..b79f71c 100644
--- a/fuchsia/engine/browser/web_engine_content_browser_client.h
+++ b/fuchsia/engine/browser/web_engine_content_browser_client.h
@@ -10,6 +10,7 @@
 #include <fuchsia/web/cpp/fidl.h>
 #include <memory>
 #include <string>
+#include <vector>
 
 #include "base/macros.h"
 #include "content/public/browser/content_browser_client.h"
@@ -55,6 +56,10 @@
       const base::RepeatingCallback<content::WebContents*()>& wc_getter,
       content::NavigationUIData* navigation_ui_data,
       int frame_tree_node_id) final;
+  mojo::Remote<network::mojom::NetworkContext> CreateNetworkContext(
+      content::BrowserContext* context,
+      bool in_memory,
+      const base::FilePath& relative_partition_path) override;
 
  private:
   fidl::InterfaceRequest<fuchsia::web::Context> request_;
diff --git a/gpu/vulkan/BUILD.gn b/gpu/vulkan/BUILD.gn
index 4900d8cf..7d1331f 100644
--- a/gpu/vulkan/BUILD.gn
+++ b/gpu/vulkan/BUILD.gn
@@ -43,7 +43,10 @@
       "vulkan_function_pointers.h",
       "vulkan_implementation.cc",
       "vulkan_implementation.h",
+      "vulkan_info.cc",
+      "vulkan_info.h",
       "vulkan_instance.cc",
+      "vulkan_instance.h",
       "vulkan_surface.cc",
       "vulkan_surface.h",
       "vulkan_swap_chain.cc",
diff --git a/gpu/vulkan/vulkan_device_queue.cc b/gpu/vulkan/vulkan_device_queue.cc
index b65a5677..0406917 100644
--- a/gpu/vulkan/vulkan_device_queue.cc
+++ b/gpu/vulkan/vulkan_device_queue.cc
@@ -11,6 +11,7 @@
 #include "gpu/vulkan/vulkan_command_pool.h"
 #include "gpu/vulkan/vulkan_fence_helper.h"
 #include "gpu/vulkan/vulkan_function_pointers.h"
+#include "gpu/vulkan/vulkan_info.h"
 
 namespace gpu {
 
@@ -27,7 +28,7 @@
 
 bool VulkanDeviceQueue::Initialize(
     uint32_t options,
-    uint32_t max_api_version,
+    const VulkanInfo& info,
     const std::vector<const char*>& required_extensions,
     bool allow_protected_memory,
     const GetPresentationSupportCallback& get_presentation_support) {
@@ -42,60 +43,41 @@
 
   VkResult result = VK_SUCCESS;
 
-  uint32_t device_count = 0;
-  result = vkEnumeratePhysicalDevices(vk_instance_, &device_count, nullptr);
-  if (VK_SUCCESS != result || device_count == 0)
-    return false;
-
-  std::vector<VkPhysicalDevice> devices(device_count);
-  result =
-      vkEnumeratePhysicalDevices(vk_instance_, &device_count, devices.data());
-  if (VK_SUCCESS != result) {
-    DLOG(ERROR) << "vkEnumeratePhysicalDevices() failed: " << result;
-    return false;
-  }
-
   VkQueueFlags queue_flags = 0;
   if (options & DeviceQueueOption::GRAPHICS_QUEUE_FLAG)
     queue_flags |= VK_QUEUE_GRAPHICS_BIT;
 
   int device_index = -1;
   int queue_index = -1;
-  for (size_t i = 0; i < devices.size(); ++i) {
-    const VkPhysicalDevice& device = devices[i];
-    uint32_t queue_count = 0;
-    vkGetPhysicalDeviceQueueFamilyProperties(device, &queue_count, nullptr);
-    if (queue_count) {
-      std::vector<VkQueueFamilyProperties> queue_properties(queue_count);
-      vkGetPhysicalDeviceQueueFamilyProperties(device, &queue_count,
-                                               queue_properties.data());
-      for (size_t n = 0; n < queue_properties.size(); ++n) {
-        if ((queue_properties[n].queueFlags & queue_flags) != queue_flags)
-          continue;
+  for (size_t i = 0; i < info.physical_devices.size(); ++i) {
+    const auto& device_info = info.physical_devices[i];
+    const VkPhysicalDevice& device = device_info.device;
+    for (size_t n = 0; n < device_info.queue_families.size(); ++n) {
+      if ((device_info.queue_families[n].queueFlags & queue_flags) !=
+          queue_flags)
+        continue;
 
-        if (options & DeviceQueueOption::PRESENTATION_SUPPORT_QUEUE_FLAG &&
-            !get_presentation_support.Run(device, queue_properties, n)) {
-          continue;
-        }
-
-        queue_index = static_cast<int>(n);
-        break;
+      if (options & DeviceQueueOption::PRESENTATION_SUPPORT_QUEUE_FLAG &&
+          !get_presentation_support.Run(device, device_info.queue_families,
+                                        n)) {
+        continue;
       }
 
-      if (-1 != queue_index) {
-        device_index = static_cast<int>(i);
-        break;
-      }
+      queue_index = static_cast<int>(n);
+      break;
+    }
+    if (-1 != queue_index) {
+      device_index = static_cast<int>(i);
+      break;
     }
   }
 
   if (queue_index == -1)
     return false;
 
-  vk_physical_device_ = devices[device_index];
-  vkGetPhysicalDeviceProperties(vk_physical_device_,
-                                &vk_physical_device_properties_);
-
+  const auto& physical_device_info = info.physical_devices[device_index];
+  vk_physical_device_ = physical_device_info.device;
+  vk_physical_device_properties_ = physical_device_info.properties;
   vk_queue_index_ = queue_index;
 
   float queue_priority = 0.0f;
@@ -109,29 +91,13 @@
 
   std::vector<const char*> enabled_layer_names;
 #if DCHECK_IS_ON()
-  uint32_t num_device_layers = 0;
-  result = vkEnumerateDeviceLayerProperties(vk_physical_device_,
-                                            &num_device_layers, nullptr);
-  if (VK_SUCCESS != result) {
-    DLOG(ERROR) << "vkEnumerateDeviceLayerProperties(NULL) failed: " << result;
-    return false;
-  }
-
-  std::vector<VkLayerProperties> device_layers(num_device_layers);
-  result = vkEnumerateDeviceLayerProperties(
-      vk_physical_device_, &num_device_layers, device_layers.data());
-  if (VK_SUCCESS != result) {
-    DLOG(ERROR) << "vkEnumerateDeviceLayerProperties() failed: " << result;
-    return false;
-  }
-
   std::unordered_set<std::string> desired_layers({
       "VK_LAYER_KHRONOS_validation",
   });
 
-  for (const VkLayerProperties& layer_property : device_layers) {
-    if (desired_layers.find(layer_property.layerName) != desired_layers.end())
-      enabled_layer_names.push_back(layer_property.layerName);
+  for (const auto& layer : physical_device_info.layers) {
+    if (desired_layers.find(layer.layerName) != desired_layers.end())
+      enabled_layer_names.push_back(layer.layerName);
   }
 #endif  // DCHECK_IS_ON()
 
@@ -140,30 +106,21 @@
                             std::begin(required_extensions),
                             std::end(required_extensions));
 
-  uint32_t device_api_version =
-      std::min(max_api_version, vk_physical_device_properties_.apiVersion);
+  uint32_t device_api_version = std::min(
+      info.used_api_version, vk_physical_device_properties_.apiVersion);
+
+  // Disable all physical device features by default.
+  enabled_device_features_2_ = {VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2};
 
   // Android and Fuchsia need YCbCr sampler support.
 #if defined(OS_ANDROID) || defined(OS_FUCHSIA)
-  if (!vkGetPhysicalDeviceFeatures2) {
-    DLOG(ERROR) << "Vulkan 1.1 or VK_KHR_get_physical_device_properties2 "
-                   "extension is required.";
-    return false;
-  }
-
-  // Query if VkPhysicalDeviceSamplerYcbcrConversionFeatures is supported by
-  // the implementation. This extension must be supported for Android and
-  // Fuchsia.
-  sampler_ycbcr_conversion_features_.pNext = nullptr;
-  VkPhysicalDeviceFeatures2 supported_device_features_2 = {
-      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,
-      &sampler_ycbcr_conversion_features_};
-  vkGetPhysicalDeviceFeatures2(vk_physical_device_,
-                               &supported_device_features_2);
-  if (!sampler_ycbcr_conversion_features_.samplerYcbcrConversion) {
+  if (!physical_device_info.feature_sampler_ycbcr_conversion) {
     LOG(ERROR) << "samplerYcbcrConversion is not supported.";
     return false;
   }
+  sampler_ycbcr_conversion_features_ = {
+      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES};
+  sampler_ycbcr_conversion_features_.samplerYcbcrConversion = VK_TRUE;
 
   // Add VkPhysicalDeviceSamplerYcbcrConversionFeatures struct to pNext chain
   // of VkPhysicalDeviceFeatures2 to enable YCbCr sampler support.
@@ -172,21 +129,13 @@
 #endif  // defined(OS_ANDROID) || defined(OS_FUCHSIA)
 
   if (allow_protected_memory) {
-    if (device_api_version < VK_MAKE_VERSION(1, 1, 0)) {
-      DLOG(ERROR) << "Vulkan 1.1 is required for protected memory";
-      return false;
-    }
-
-    protected_memory_features_.pNext = nullptr;
-    VkPhysicalDeviceFeatures2 supported_device_features_2 = {
-        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,
-        &protected_memory_features_};
-    vkGetPhysicalDeviceFeatures2(vk_physical_device_,
-                                 &supported_device_features_2);
-    if (!protected_memory_features_.protectedMemory) {
+    if (!physical_device_info.feature_protected_memory) {
       DLOG(ERROR) << "Protected memory is not supported";
       return false;
     }
+    protected_memory_features_ = {
+        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES};
+    protected_memory_features_.protectedMemory = VK_TRUE;
 
     // Add VkPhysicalDeviceProtectedMemoryFeatures struct to pNext chain
     // of VkPhysicalDeviceFeatures2 to enable YCbCr sampler support.
@@ -194,11 +143,8 @@
     enabled_device_features_2_.pNext = &protected_memory_features_;
   }
 
-  // Disable all physical device features by default.
-  enabled_device_features_2_.features = {};
-
-  VkDeviceCreateInfo device_create_info = {};
-  device_create_info.sType = VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO;
+  VkDeviceCreateInfo device_create_info = {
+      VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO};
   device_create_info.pNext = enabled_device_features_2_.pNext;
   device_create_info.queueCreateInfoCount = 1;
   device_create_info.pQueueCreateInfos = &queue_create_info;
diff --git a/gpu/vulkan/vulkan_device_queue.h b/gpu/vulkan/vulkan_device_queue.h
index 39d378c..3fbc53b 100644
--- a/gpu/vulkan/vulkan_device_queue.h
+++ b/gpu/vulkan/vulkan_device_queue.h
@@ -18,8 +18,9 @@
 
 namespace gpu {
 
-class VulkanFenceHelper;
 class VulkanCommandPool;
+class VulkanFenceHelper;
+class VulkanInfo;
 
 class VULKAN_EXPORT VulkanDeviceQueue {
  public:
@@ -38,7 +39,7 @@
                                    uint32_t queue_family_index)>;
   bool Initialize(
       uint32_t options,
-      uint32_t max_api_version,
+      const VulkanInfo& info,
       const std::vector<const char*>& required_extensions,
       bool allow_protected_memory,
       const GetPresentationSupportCallback& get_presentation_support);
@@ -103,20 +104,17 @@
   uint32_t vk_queue_index_ = 0;
   const VkInstance vk_instance_;
   std::unique_ptr<VulkanFenceHelper> cleanup_helper_;
-  VkPhysicalDeviceFeatures2 enabled_device_features_2_ = {
-      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2};
+  VkPhysicalDeviceFeatures2 enabled_device_features_2_;
 
   const bool enforce_protected_memory_;
   bool allow_protected_memory_ = false;
 
 #if defined(OS_ANDROID) || defined(OS_FUCHSIA)
   VkPhysicalDeviceSamplerYcbcrConversionFeatures
-      sampler_ycbcr_conversion_features_ = {
-          VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES};
+      sampler_ycbcr_conversion_features_;
 #endif  // defined(OS_ANDROID) || defined(OS_FUCHSIA)
 
-  VkPhysicalDeviceProtectedMemoryFeatures protected_memory_features_ = {
-      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES};
+  VkPhysicalDeviceProtectedMemoryFeatures protected_memory_features_;
 
   DISALLOW_COPY_AND_ASSIGN(VulkanDeviceQueue);
 };
diff --git a/gpu/vulkan/vulkan_implementation.cc b/gpu/vulkan/vulkan_implementation.cc
index 7da655d..2731519 100644
--- a/gpu/vulkan/vulkan_implementation.cc
+++ b/gpu/vulkan/vulkan_implementation.cc
@@ -32,7 +32,7 @@
   std::vector<const char*> required_extensions =
       vulkan_implementation->GetRequiredDeviceExtensions();
   if (!device_queue->Initialize(
-          option, vulkan_implementation->GetVulkanInstance()->api_version(),
+          option, vulkan_implementation->GetVulkanInstance()->vulkan_info(),
           std::move(required_extensions),
           vulkan_implementation->allow_protected_memory(), callback)) {
     device_queue->Destroy();
diff --git a/gpu/vulkan/vulkan_info.cc b/gpu/vulkan/vulkan_info.cc
new file mode 100644
index 0000000..548a1233
--- /dev/null
+++ b/gpu/vulkan/vulkan_info.cc
@@ -0,0 +1,18 @@
+// Copyright 2019 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 "gpu/vulkan/vulkan_info.h"
+
+namespace gpu {
+
+VulkanInfo::VulkanInfo() = default;
+VulkanInfo::~VulkanInfo() = default;
+VulkanInfo::PhysicalDeviceInfo::PhysicalDeviceInfo() = default;
+VulkanInfo::PhysicalDeviceInfo::PhysicalDeviceInfo(
+    const PhysicalDeviceInfo& other) = default;
+VulkanInfo::PhysicalDeviceInfo::~PhysicalDeviceInfo() = default;
+VulkanInfo::PhysicalDeviceInfo& VulkanInfo::PhysicalDeviceInfo::operator=(
+    const PhysicalDeviceInfo& info) = default;
+
+}  // namespace gpu
diff --git a/gpu/vulkan/vulkan_info.h b/gpu/vulkan/vulkan_info.h
new file mode 100644
index 0000000..babd2f9
--- /dev/null
+++ b/gpu/vulkan/vulkan_info.h
@@ -0,0 +1,51 @@
+// Copyright 2019 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 GPU_VULKAN_VULKAN_INFO_H_
+#define GPU_VULKAN_VULKAN_INFO_H_
+
+#include <vulkan/vulkan.h>
+#include <vector>
+
+#include "base/macros.h"
+#include "gpu/vulkan/vulkan_export.h"
+#include "ui/gfx/extension_set.h"
+
+namespace gpu {
+
+class VULKAN_EXPORT VulkanInfo {
+ public:
+  VulkanInfo();
+  ~VulkanInfo();
+
+  class PhysicalDeviceInfo {
+   public:
+    PhysicalDeviceInfo();
+    PhysicalDeviceInfo(const PhysicalDeviceInfo& other);
+    ~PhysicalDeviceInfo();
+    PhysicalDeviceInfo& operator=(const PhysicalDeviceInfo& other);
+
+    VkPhysicalDevice device = VK_NULL_HANDLE;
+    VkPhysicalDeviceProperties properties = {};
+    std::vector<VkLayerProperties> layers;
+
+    VkPhysicalDeviceFeatures features = {};
+    // Extended physical device features:
+    bool feature_sampler_ycbcr_conversion = false;
+    bool feature_protected_memory = false;
+
+    std::vector<VkQueueFamilyProperties> queue_families;
+  };
+
+  uint32_t api_version = VK_MAKE_VERSION(1, 0, 0);
+  uint32_t used_api_version = VK_MAKE_VERSION(1, 0, 0);
+  std::vector<VkExtensionProperties> instance_extensions;
+  std::vector<const char*> enabled_instance_extensions;
+  std::vector<VkLayerProperties> instance_layers;
+  std::vector<PhysicalDeviceInfo> physical_devices;
+};
+
+}  // namespace gpu
+
+#endif  // GPU_VULKAN_VULKAN_INFO_H_
diff --git a/gpu/vulkan/vulkan_instance.cc b/gpu/vulkan/vulkan_instance.cc
index 387fbb9..1f641fd 100644
--- a/gpu/vulkan/vulkan_instance.cc
+++ b/gpu/vulkan/vulkan_instance.cc
@@ -57,34 +57,33 @@
   if (!vulkan_function_pointers->BindUnassociatedFunctionPointers())
     return false;
 
-  uint32_t supported_api_version = VK_MAKE_VERSION(1, 0, 0);
   if (vulkan_function_pointers->vkEnumerateInstanceVersionFn) {
     vulkan_function_pointers->vkEnumerateInstanceVersionFn(
-        &supported_api_version);
+        &vulkan_info_.api_version);
   }
 
 #if defined(OS_ANDROID)
   // Ensure that android works only with vulkan apiVersion >= 1.1. Vulkan will
   // only be enabled for Android P+ and Android P+ requires vulkan
   // apiVersion >= 1.1.
-  if (supported_api_version < VK_MAKE_VERSION(1, 1, 0))
+  if (vulkan_info_.api_version < VK_MAKE_VERSION(1, 1, 0))
     return false;
 #endif
 
   // Use Vulkan 1.1 if it's available.
-  api_version_ = (supported_api_version >= VK_MAKE_VERSION(1, 1, 0))
-                     ? VK_MAKE_VERSION(1, 1, 0)
-                     : VK_MAKE_VERSION(1, 0, 0);
+  vulkan_info_.used_api_version =
+      (vulkan_info_.api_version >= VK_MAKE_VERSION(1, 1, 0))
+          ? VK_MAKE_VERSION(1, 1, 0)
+          : VK_MAKE_VERSION(1, 0, 0);
 
   VkResult result = VK_SUCCESS;
 
   VkApplicationInfo app_info = {};
   app_info.sType = VK_STRUCTURE_TYPE_APPLICATION_INFO;
   app_info.pApplicationName = "Chromium";
-  app_info.apiVersion = api_version_;
+  app_info.apiVersion = vulkan_info_.used_api_version;
 
-  std::vector<const char*> enabled_extensions = required_extensions;
-
+  vulkan_info_.enabled_instance_extensions = required_extensions;
   uint32_t num_instance_exts = 0;
   result = vkEnumerateInstanceExtensionProperties(nullptr, &num_instance_exts,
                                                   nullptr);
@@ -94,27 +93,31 @@
     return false;
   }
 
-  std::vector<VkExtensionProperties> instance_exts(num_instance_exts);
-  result = vkEnumerateInstanceExtensionProperties(nullptr, &num_instance_exts,
-                                                  instance_exts.data());
+  vulkan_info_.instance_extensions.resize(num_instance_exts);
+  result = vkEnumerateInstanceExtensionProperties(
+      nullptr, &num_instance_exts, vulkan_info_.instance_extensions.data());
   if (VK_SUCCESS != result) {
     DLOG(ERROR) << "vkEnumerateInstanceExtensionProperties() failed: "
                 << result;
     return false;
   }
 
-  for (const VkExtensionProperties& ext_property : instance_exts) {
+  for (const VkExtensionProperties& ext_property :
+       vulkan_info_.instance_extensions) {
     if (strcmp(ext_property.extensionName,
                VK_EXT_DEBUG_REPORT_EXTENSION_NAME) == 0) {
       debug_report_enabled_ = true;
-      enabled_extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);
+      vulkan_info_.enabled_instance_extensions.push_back(
+          VK_EXT_DEBUG_REPORT_EXTENSION_NAME);
     }
   }
 
 #if DCHECK_IS_ON()
-  for (const char* enabled_extension : enabled_extensions) {
+  for (const char* enabled_extension :
+       vulkan_info_.enabled_instance_extensions) {
     bool found = false;
-    for (const VkExtensionProperties& ext_property : instance_exts) {
+    for (const VkExtensionProperties& ext_property :
+         vulkan_info_.instance_extensions) {
       if (strcmp(ext_property.extensionName, enabled_extension) == 0) {
         found = true;
         break;
@@ -137,29 +140,29 @@
     return false;
   }
 
-  layer_properties_.resize(num_instance_layers);
-  result = vkEnumerateInstanceLayerProperties(&num_instance_layers,
-                                              layer_properties_.data());
+  vulkan_info_.instance_layers.resize(num_instance_layers);
+  result = vkEnumerateInstanceLayerProperties(
+      &num_instance_layers, vulkan_info_.instance_layers.data());
   if (VK_SUCCESS != result) {
     DLOG(ERROR) << "vkEnumerateInstanceLayerProperties() failed: " << result;
     return false;
   }
 
+  gfx::ExtensionSet enabled_extensions(
+      std::begin(vulkan_info_.enabled_instance_extensions),
+      std::end(vulkan_info_.enabled_instance_extensions));
+
 #if DCHECK_IS_ON()
   // TODO(crbug.com/843346): Make validation work in combination with
   // VK_KHR_xlib_surface or switch to VK_KHR_xcb_surface.
-  constexpr base::StringPiece xlib_surface_extension_name(
-      "VK_KHR_xlib_surface");
   bool require_xlib_surface_extension =
-      std::find_if(enabled_extensions.begin(), enabled_extensions.end(),
-                   [xlib_surface_extension_name](const char* e) {
-                     return xlib_surface_extension_name == e;
-                   }) != enabled_extensions.end();
+      gfx::HasExtension(enabled_extensions, "VK_KHR_xlib_surface");
+
   // VK_LAYER_KHRONOS_validation 1.1.106 is required to support
   // VK_KHR_xlib_surface.
   constexpr base::StringPiece standard_validation(
       "VK_LAYER_KHRONOS_validation");
-  for (const VkLayerProperties& layer_property : layer_properties_) {
+  for (const VkLayerProperties& layer_property : vulkan_info_.instance_layers) {
     if (standard_validation != layer_property.layerName)
       continue;
     if (!require_xlib_surface_extension ||
@@ -171,14 +174,15 @@
 #endif  // DCHECK_IS_ON()
 
   VkInstanceCreateInfo instance_create_info = {
-      VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO,  // sType
-      nullptr,                                 // pNext
-      0,                                       // flags
-      &app_info,                               // pApplicationInfo
-      enabled_layer_names.size(),              // enableLayerCount
-      enabled_layer_names.data(),              // ppEnabledLayerNames
-      enabled_extensions.size(),               // enabledExtensionCount
-      enabled_extensions.data(),               // ppEnabledExtensionNames
+      VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO,           // sType
+      nullptr,                                          // pNext
+      0,                                                // flags
+      &app_info,                                        // pApplicationInfo
+      enabled_layer_names.size(),                       // enableLayerCount
+      enabled_layer_names.data(),                       // ppEnabledLayerNames
+      vulkan_info_.enabled_instance_extensions.size(),  // enabledExtensionCount
+      vulkan_info_.enabled_instance_extensions
+          .data(),  // ppEnabledExtensionNames
   };
 
   result = vkCreateInstance(&instance_create_info, nullptr, &vk_instance_);
@@ -187,9 +191,6 @@
     return false;
   }
 
-  enabled_extensions_ = gfx::ExtensionSet(std::begin(enabled_extensions),
-                                          std::end(enabled_extensions));
-
 #if DCHECK_IS_ON()
   // Register our error logging function.
   if (debug_report_enabled_) {
@@ -225,8 +226,75 @@
   }
 #endif
 
-  return vulkan_function_pointers->BindInstanceFunctionPointers(
-      vk_instance_, api_version_, enabled_extensions_);
+  if (!vulkan_function_pointers->BindInstanceFunctionPointers(
+          vk_instance_, vulkan_info_.used_api_version, enabled_extensions)) {
+    return false;
+  }
+
+  CollectInfo();
+  return true;
+}
+
+void VulkanInstance::CollectInfo() {
+  uint32_t count = 0;
+  VkResult result = vkEnumeratePhysicalDevices(vk_instance_, &count, nullptr);
+  if (result != VK_SUCCESS) {
+    DLOG(ERROR) << "vkEnumeratePhysicalDevices failed: " << result;
+  }
+
+  std::vector<VkPhysicalDevice> physical_devices(count);
+  result =
+      vkEnumeratePhysicalDevices(vk_instance_, &count, physical_devices.data());
+  if (VK_SUCCESS != result) {
+    DLOG(ERROR) << "vkEnumeratePhysicalDevices() failed: " << result;
+    return;
+  }
+
+  vulkan_info_.physical_devices.reserve(count);
+  for (VkPhysicalDevice device : physical_devices) {
+    vulkan_info_.physical_devices.emplace_back();
+    auto& info = vulkan_info_.physical_devices.back();
+    info.device = device;
+
+    vkGetPhysicalDeviceProperties(device, &info.properties);
+
+    count = 0;
+    result = vkEnumerateDeviceLayerProperties(device, &count, nullptr);
+    DLOG_IF(ERROR, result != VK_SUCCESS)
+        << "vkEnumerateDeviceLayerProperties failed: " << result;
+
+    info.layers.resize(count);
+    result =
+        vkEnumerateDeviceLayerProperties(device, &count, info.layers.data());
+    DLOG_IF(ERROR, result != VK_SUCCESS)
+        << "vkEnumerateDeviceLayerProperties failed: " << result;
+
+    if (vkGetPhysicalDeviceFeatures2) {
+      VkPhysicalDeviceSamplerYcbcrConversionFeatures ycbcr_converson_features =
+          {VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES};
+      VkPhysicalDeviceProtectedMemoryFeatures protected_memory_feature = {
+          VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES};
+      VkPhysicalDeviceFeatures2 features_2 = {
+          VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2};
+      features_2.pNext = &ycbcr_converson_features;
+      ycbcr_converson_features.pNext = &protected_memory_feature;
+
+      vkGetPhysicalDeviceFeatures2(device, &features_2);
+      info.feature_sampler_ycbcr_conversion =
+          ycbcr_converson_features.samplerYcbcrConversion;
+      info.feature_protected_memory = protected_memory_feature.protectedMemory;
+    } else {
+      vkGetPhysicalDeviceFeatures(device, &info.features);
+    }
+
+    count = 0;
+    vkGetPhysicalDeviceQueueFamilyProperties(device, &count, nullptr);
+    if (count) {
+      info.queue_families.resize(count);
+      vkGetPhysicalDeviceQueueFamilyProperties(device, &count,
+                                               info.queue_families.data());
+    }
+  }
 }
 
 void VulkanInstance::Destroy() {
diff --git a/gpu/vulkan/vulkan_instance.h b/gpu/vulkan/vulkan_instance.h
index 641cadc..a4656d0 100644
--- a/gpu/vulkan/vulkan_instance.h
+++ b/gpu/vulkan/vulkan_instance.h
@@ -11,6 +11,7 @@
 #include "base/logging.h"
 #include "base/macros.h"
 #include "gpu/vulkan/vulkan_export.h"
+#include "gpu/vulkan/vulkan_info.h"
 #include "ui/gfx/extension_set.h"
 
 namespace gpu {
@@ -29,27 +30,17 @@
   bool Initialize(const std::vector<const char*>& required_extensions,
                   const std::vector<const char*>& required_layers);
 
-  // VkApplicationInfo.apiVersion value used to initialize the instance.
-  uint32_t api_version() const { return api_version_; }
-
-  const gfx::ExtensionSet& enabled_extensions() const {
-    return enabled_extensions_;
-  }
-
-  const std::vector<VkLayerProperties>& layer_properties() const {
-    return layer_properties_;
-  }
+  const VulkanInfo& vulkan_info() const { return vulkan_info_; }
 
   VkInstance vk_instance() { return vk_instance_; }
 
  private:
+  void CollectInfo();
   void Destroy();
 
-  uint32_t api_version_;
+  VulkanInfo vulkan_info_;
 
   VkInstance vk_instance_ = VK_NULL_HANDLE;
-  std::vector<VkLayerProperties> layer_properties_;
-  gfx::ExtensionSet enabled_extensions_;
   bool debug_report_enabled_ = false;
 #if DCHECK_IS_ON()
   VkDebugReportCallbackEXT error_callback_ = VK_NULL_HANDLE;
diff --git a/headless/BUILD.gn b/headless/BUILD.gn
index 9b23b997..6d57d4e67 100644
--- a/headless/BUILD.gn
+++ b/headless/BUILD.gn
@@ -154,13 +154,7 @@
 ]
 
 generated_devtools_api = []
-generated_devtools_api_js = []
-generated_devtools_api_js_externs = []
 foreach(domain, devtools_domains) {
-  generated_devtools_api_js +=
-      [ "$target_gen_dir/public/devtools_js/" + domain + ".js" ]
-  generated_devtools_api_js_externs +=
-      [ "$target_gen_dir/public/devtools_js/externs/externs_" + domain + ".js" ]
   generated_devtools_api += [
     "$target_gen_dir/public/devtools/domains/" + domain + ".cc",
     "$target_gen_dir/public/devtools/domains/" + domain + ".h",
@@ -182,14 +176,10 @@
     "$root_gen_dir/third_party/blink/renderer/core/inspector/protocol.json",
   ]
 
-  outputs = generated_devtools_api + generated_devtools_api_js +
-            generated_devtools_api_js_externs
-
+  outputs = generated_devtools_api
   sources = [
     "lib/browser/devtools_api/domain_cc.template",
-    "lib/browser/devtools_api/domain_externs_js.template",
     "lib/browser/devtools_api/domain_h.template",
-    "lib/browser/devtools_api/domain_js.template",
     "lib/browser/devtools_api/domain_type_conversions_h.template",
     "lib/browser/devtools_api/domain_types_cc.template",
     "lib/browser/devtools_api/domain_types_forward_declarations_h.template",
@@ -204,13 +194,6 @@
   ]
 }
 
-js_library("js_devtools_bindings_lib") {
-  sources = [ "lib/browser/devtools_api/devtools_connection.js" ] +
-            generated_devtools_api_js
-  deps = []
-  extra_deps = [ ":gen_devtools_client_api" ]
-}
-
 if (headless_fontconfig_utils && !is_fuchsia) {
   static_library("headless_fontconfig_utils") {
     sources = [
@@ -653,63 +636,6 @@
   }
 }
 
-# The js_binary rule doesn't currently work on windows. Apparently there are
-# problems on mac too where java isn't necessarily installed.
-if (is_linux) {
-  js_binary("js_devtools_bindings_test") {
-    sources = [
-      "test/bindings_test.js",
-    ]
-    deps = [
-      ":js_devtools_bindings_lib",
-    ]
-    externs_list = [ "lib/tab_socket_externs.js" ]
-    outputs = [
-      "$target_gen_dir/devtools_bindings_test.js",
-    ]
-    config_files = []
-    closure_flags = [
-      "jscomp_error=checkTypes",
-      "dependency_mode=STRICT",
-
-      # Currently the bindings do not support property renaming so we can't use
-      # ADVANCED_OPTIMIZATIONS here.  We could add support via either moving all
-      # the types to externs, or via applying the same renaming to the json
-      # dictionaries sent between C++ and JS.  The closure compiler can produce
-      # files which contain those mappings with the appropriate flag.
-      "compilation_level=SIMPLE",
-      "language_out=ES5_STRICT",
-      "entry_point=chromium.BindingsTest",
-    ]
-  }
-
-  grit("headless_browsertest_resources_grit") {
-    source = "headless_browsertest_resources.grd"
-    outputs = [
-      "grit/headless_browsertest_resources.h",
-      "$root_gen_dir/headless/headless_browsertest_resources.pak",
-    ]
-    grit_flags = [
-      "-E",
-      "gen_root=" + rebase_path(root_gen_dir, root_build_dir),
-    ]
-    deps = [
-      ":js_devtools_bindings_test",
-    ]
-    resource_ids = "lib/headless_browsertest_resource_ids"
-  }
-
-  repack("headless_browser_tests_pak") {
-    sources = [
-      "$root_gen_dir/headless/headless_browsertest_resources.pak",
-    ]
-    output = "$root_out_dir/headless_browser_tests.pak"
-    deps = [
-      ":headless_browsertest_resources_grit",
-    ]
-  }
-}
-
 test("headless_browsertests") {
   configs += [ "//net:net_test_config" ]
   sources = [
@@ -771,18 +697,6 @@
     deps += [ "//components/crash/content/browser" ]
   }
 
-  if (is_linux) {
-    # Only include this if we built the js_binary
-    data += [ "$root_out_dir/headless_browser_tests.pak" ]
-    sources += [ "test/headless_js_bindings_browsertest.cc" ]
-    deps += [
-      ":headless_browser_tests_pak",
-      "//ui/gfx:geometry_skia",
-      "//ui/gfx/codec",
-      "//ui/gfx/geometry",
-    ]
-  }
-
   if (is_mac) {
     deps += [ "//third_party/crashpad/crashpad/client" ]
   }
diff --git a/headless/lib/browser/devtools_api/client_api_generator.py b/headless/lib/browser/devtools_api/client_api_generator.py
index 59a8510c..b0a8d6ab 100644
--- a/headless/lib/browser/devtools_api/client_api_generator.py
+++ b/headless/lib/browser/devtools_api/client_api_generator.py
@@ -63,22 +63,6 @@
   return name.lower()
 
 
-def Shorten(js_name, domain_name):
-  short_name = domain_name + '.'
-  long_name = 'chromium.DevTools.' + short_name
-  return js_name.replace(long_name, short_name)
-
-
-def ShortForm(domain, js_name):
-  if not 'js_dependencies' in domain:
-    return js_name
-
-  for dependency in domain['js_dependencies']:
-    js_name = Shorten(js_name, dependency)
-  js_name = Shorten(js_name, domain['domain'])
-  return js_name
-  
-
 def SanitizeLiteral(literal):
   return {
       # Rename null enumeration values to avoid a clash with the NULL macro.
@@ -138,7 +122,6 @@
 def CreateUserTypeDefinition(domain, type):
   namespace = CamelCaseToHackerStyle(domain['domain'])
   return {
-      'js_type': '!chromium.DevTools.%s.%s' % (domain['domain'], type['id']),
       'return_type': 'std::unique_ptr<::headless::%s::%s>' % (
           namespace, type['id']),
       'pass_type': 'std::unique_ptr<::headless::%s::%s>' % (
@@ -156,7 +139,6 @@
 def CreateEnumTypeDefinition(domain_name, type):
   namespace = CamelCaseToHackerStyle(domain_name)
   return {
-      'js_type': '!chromium.DevTools.%s.%s' % (domain_name, type['id']),
       'return_type': '::headless::%s::%s' % (namespace, type['id']),
       'pass_type': '::headless::%s::%s' % (namespace, type['id']),
       'to_raw_type': '%s',
@@ -171,7 +153,6 @@
 
 def CreateObjectTypeDefinition():
   return {
-      'js_type': 'Object',
       'return_type': 'std::unique_ptr<base::DictionaryValue>',
       'pass_type': 'std::unique_ptr<base::DictionaryValue>',
       'to_raw_type': '*%s',
@@ -187,7 +168,6 @@
 def WrapObjectTypeDefinition(type):
   id = type.get('id', 'base::Value')
   return {
-      'js_type': '!Object',
       'return_type': 'std::unique_ptr<%s>' % id,
       'pass_type': 'std::unique_ptr<%s>' % id,
       'to_raw_type': '*%s',
@@ -202,7 +182,6 @@
 
 def CreateAnyTypeDefinition():
   return {
-      'js_type': '*',
       'return_type': 'std::unique_ptr<base::Value>',
       'pass_type': 'std::unique_ptr<base::Value>',
       'to_raw_type': '*%s',
@@ -217,7 +196,6 @@
 
 def CreateStringTypeDefinition():
   return {
-      'js_type': 'string',
       'return_type': 'std::string',
       'pass_type': 'const std::string&',
       'to_pass_type': '%s',
@@ -232,7 +210,6 @@
 
 def CreateBinaryTypeDefinition():
   return {
-      'js_type': 'string',
       'return_type': 'protocol::Binary',
       'pass_type': 'const protocol::Binary&',
       'to_pass_type': '%s',
@@ -251,13 +228,7 @@
       'integer': 'int',
       'boolean': 'bool',
   }
-  js_typedefs = {
-      'number': 'number',
-      'integer': 'number',
-      'boolean': 'boolean',
-  }
   return {
-      'js_type': js_typedefs[type],
       'return_type': typedefs[type],
       'pass_type': typedefs[type],
       'to_pass_type': '%s',
@@ -282,7 +253,6 @@
 
 def WrapArrayDefinition(type):
   return {
-      'js_type': '!Array.<%s>' % type['js_type'],
       'return_type': 'std::vector<%s>' % type['type'],
       'pass_type': 'std::vector<%s>' % type['type'],
       'to_raw_type': '%s',
@@ -465,15 +435,6 @@
   for domain in json_api['domains']:
     domain_deps = set()
     TraverseDependencies(domain['domain'], domain_deps)
-    if 'dependencies' in domain:
-      domain['js_dependencies'] = domain['dependencies']
-    else:
-      domain['js_dependencies'] = []
-
-    domain['js_forward_declarations'] = []
-    for type in types_required[domain['domain']]:
-      if not type.split('.')[0] in domain['js_dependencies']:
-        domain['js_forward_declarations'].append(type)
     domain['dependencies'] = sorted(domain_deps)
 
 
@@ -521,7 +482,6 @@
       template_context = {
           'domain': domain,
           'resolve_type': ResolveType,
-          'short_form': functools.partial(ShortForm, domain),
       }
       domain_name = CamelCaseToHackerStyle(domain['domain'])
       output_file = '%s/%s.%s' % (output_dirname,
@@ -536,14 +496,6 @@
       jinja_env, os.path.join(output_dirname, 'devtools', 'domains'), json_api,
       'domain', ['cc', 'h'],
       lambda domain_name: domain_name)
-  GeneratePerDomain(
-      jinja_env, os.path.join(output_dirname, 'devtools_js'), json_api,
-      'domain', ['js'],
-      lambda domain_name: domain_name)
-  GeneratePerDomain(
-      jinja_env, os.path.join(output_dirname, 'devtools_js', 'externs'),
-      json_api, 'domain_externs', ['js'],
-      lambda domain_name: 'externs_%s' % (domain_name, ))
 
 
 def GenerateTypes(jinja_env, output_dirname, json_api):
diff --git a/headless/lib/browser/devtools_api/devtools_connection.js b/headless/lib/browser/devtools_api/devtools_connection.js
deleted file mode 100644
index bcd64b1b..0000000
--- a/headless/lib/browser/devtools_api/devtools_connection.js
+++ /dev/null
@@ -1,217 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-/**
- * @fileoverview Contains a class which marshals DevTools protocol messages over
- * a provided low level message transport.
- */
-
-'use strict';
-
-goog.provide('chromium.DevTools.Connection');
-
-/**
- * Handles sending and receiving DevTools JSON protocol messages over the
- * provided low level message transport.
- * @export
- */
-chromium.DevTools.Connection = class {
-  /**
-   * @param {!Object} transport The API providing transport for devtools
-   *     commands.
-   * @param {function(string, Object=): undefined =} opt_validator An
-   *     optional function which performs checks before sending any DevTools
-   *     messages.  It should throw an error if validation fails.
-   */
-  constructor(transport, opt_validator) {
-    /** @private {!Object} */
-    this.transport_ = transport;
-
-    /** @private {function(string, Object=): undefined|undefined} */
-    this.validator_ = opt_validator;
-
-    /** @private {number} */
-    this.commandId_ = 1;
-
-    /**
-     * An object containing pending DevTools protocol commands keyed by id.
-     *
-     * @private {!Map<number, !chromium.DevTools.Connection.PendingCommand>}
-     */
-    this.pendingCommands_ = new Map();
-
-    /** @private {number} */
-    this.nextListenerId_ = 1;
-
-    /**
-     * An object containing DevTools protocol events we are listening for keyed
-     * by name.
-     *
-     * @private {!Map<string,
-     *                !Map<number,
-     *                     !chromium.DevTools.Connection.EventFunction>>}
-     */
-    this.eventListeners_ = new Map();
-
-    /**
-     * Used for removing event listeners by id.
-     *
-     * @private {!Map<number, string>}
-     */
-    this.eventListenerIdToEventName_ = new Map();
-
-    /**
-     * An object containing listeners for all DevTools protocol events keyed
-     * by listener id.
-     *
-     * @private {!Map<number, !chromium.DevTools.Connection.AllEventsFunction>}
-     */
-    this.allEventsListeners_ = new Map();
-
-    this.transport_.onmessage = this.onJsonMessage_.bind(this);
-  }
-
-  /**
-   * Listens for DevTools protocol events of the specified name and issues the
-   * callback upon reception.
-   *
-   * @param {string} eventName Name of the DevTools protocol event to listen
-   *     for.
-   * @param {!chromium.DevTools.Connection.EventFunction} listener The callback
-   *     issued when we receive a DevTools protocol event corresponding to the
-   *     given name.
-   * @return {number} The id of this event listener.
-   */
-  addEventListener(eventName, listener) {
-    if (!this.eventListeners_.has(eventName)) {
-      this.eventListeners_.set(eventName, new Map());
-    }
-    let id = this.nextListenerId_++;
-    this.eventListeners_.get(eventName).set(id, listener);
-    this.eventListenerIdToEventName_.set(id, eventName);
-    return id;
-  }
-
-
-  /**
-   * Removes an event listener previously added by
-   * <code>addEventListener</code>.
-   *
-   * @param {number} id The id of the event listener to remove.
-   * @return {boolean} Whether the event listener was actually removed.
-   */
-  removeEventListener(id) {
-    if (!this.eventListenerIdToEventName_.has(id)) return false;
-    let eventName = this.eventListenerIdToEventName_.get(id);
-    this.eventListenerIdToEventName_.delete(id);
-    // This shouldn't happen, but lets check anyway.
-    if (!this.eventListeners_.has(eventName)) return false;
-    return this.eventListeners_.get(eventName).delete(id);
-  }
-
-  /**
-   * Listens for all DevTools protocol events and issues the
-   * callback upon reception.
-   *
-   * @param {!chromium.DevTools.Connection.AllEventsFunction} listener The
-   *     callback issued when we receive a DevTools protocol event.
-   * @return {number} The id of this event listener.
-   */
-  addAllEventsListener(listener) {
-    let id = this.nextListenerId_++;
-    this.allEventsListeners_.set(id, listener);
-    return id;
-  }
-
-  /**
-   * Removes an event listener previously added by
-   * <code>addAllEventsListener</code>.
-   *
-   * @param {number} id The id of the event listener to remove.
-   * @return {boolean} Whether the event listener was actually removed.
-   */
-  removeAllEventsListener(id) {
-    if (!this.allEventsListeners_.has(id)) return false;
-    return this.allEventsListeners_.delete(id);
-  }
-
-  /**
-   * Issues a DevTools protocol command and returns a promise for the results.
-   *
-   * @param {string} method The name of the DevTools protocol command method.
-   * @param {!Object=} params An object containing the command parameters if
-   *     any.
-   * @return {!Promise<!TYPE>} A promise for the results object.
-   * @template TYPE
-   */
-  sendDevToolsMessage(method, params = {}) {
-    let id = this.commandId_;
-    // We increment by two because these bindings are intended to be used in
-    // conjunction with HeadlessDevToolsClient::RawProtocolListener and using
-    // odd numbers for js generated IDs lets the implementation of =
-    // OnProtocolMessage easily distinguish between C++ and JS generated
-    // commands and route the response accordingly.
-    this.commandId_ += 2;
-    if (this.validator_) {
-      this.validator_(method, params);
-    }
-    // Note the names are in quotes to prevent closure compiler name mangling.
-    this.transport_.send(
-        JSON.stringify({'method': method, 'id': id, 'params': params}));
-    return new Promise((resolve, reject) => {
-      this.pendingCommands_.set(id, {resolve: resolve, reject: reject});
-    });
-  }
-
-  /**
-   * @param {string} jsonMessage A string containing a JSON DevTools protocol
-   *     message.
-   * @private
-   */
-  onJsonMessage_(jsonMessage) {
-    let message = JSON.parse(jsonMessage);
-    if (message.hasOwnProperty('id')) {
-      if (!this.pendingCommands_.has(message.id))
-        throw new Error('Unrecognized id:' + jsonMessage);
-      if (message.hasOwnProperty('error'))
-        this.pendingCommands_.get(message.id).reject(message.error);
-      else
-        this.pendingCommands_.get(message.id).resolve(message.result);
-      this.pendingCommands_.delete(message.id);
-    } else {
-      if (!message.hasOwnProperty('method') ||
-          !message.hasOwnProperty('params')) {
-        throw new Error('Bad message:' + jsonMessage);
-      }
-      const method = message['method'];
-      const params = message['params'];
-      this.allEventsListeners_.forEach(function(listener) {
-        listener({method, params});
-      });
-      if (this.eventListeners_.has(method)) {
-        this.eventListeners_.get(method).forEach(function(listener) {
-          listener(params);
-        });
-      }
-    }
-  }
-}
-
-/**
- * @typedef {function(Object): undefined|function(string): undefined}
- */
-chromium.DevTools.Connection.EventFunction;
-
-/**
- * @typedef {function(Object): undefined}
- */
-chromium.DevTools.Connection.AllEventsFunction;
-
-/**
- * @typedef {{
- *    resolve: function(!Object),
- *    reject: function(!Object)
- * }}
- */
-chromium.DevTools.Connection.PendingCommand;
diff --git a/headless/lib/browser/devtools_api/domain_externs_js.template b/headless/lib/browser/devtools_api/domain_externs_js.template
deleted file mode 100644
index a2fc689..0000000
--- a/headless/lib/browser/devtools_api/domain_externs_js.template
+++ /dev/null
@@ -1,192 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-{# Changes to the externs must be reflected in the generated API too. #}
-
-/**
- * Experimental bindings for the {{domain.domain}} DevTools Domain.  Note these
- * are subject to change without warning. Use at your own risk.
- * @param {!chromium.DevTools.Connection} connection The DevTools connection.
- * @constructor
- */
-chromium.DevTools.Experimental{{domain.domain}} = function(connection) {};
-
-/**
- * Removes an event listener.
- *
- * @param {number} id The id of the event listener to remove.
- * @return {boolean} Whether the event listener was actually removed.
- */
-chromium.DevTools.Experimental{{domain.domain}}.prototype.removeEventListener = function(id) {};
-
-/**
- * Bindings for the {{domain.domain}} DevTools Domain.
- * @param {!chromium.DevTools.Connection} connection The DevTools connection.
- * @constructor
- */
-chromium.DevTools.{{domain.domain}} = function(connection) {};
-
-/** @type {!chromium.DevTools.Experimental{{domain.domain}}} */
-chromium.DevTools.{{domain.domain}}.prototype.experimental;
-
-/**
- * Removes an event listener.
- *
- * @param {number} id The id of the event listener to remove.
- * @return {boolean} Whether the event listener was actually removed.
- */
-chromium.DevTools.{{domain.domain}}.prototype.removeEventListener = function(id) {};
-
-{# Generate enums. #}
-{% for type in domain.types %}
-  {% if not "enum" in type %}{% continue %}{% endif %}
-/**
-  {% if type.description %}
- * {{type.description.replace('\n', '\n * ')}}
- *
-  {% endif %}
- * @enum {string}
- */
-chromium.DevTools.{{domain.domain}}.{{type.id}} = {
-  {% for literal in type.enum %}
-    {{ literal | sanitize_literal | dash_to_camelcase | camelcase_to_hacker_style | upper }}: "{{ literal }}"{{',' if not loop.last}}
-  {% endfor %}
-};
-
-{% endfor %}
-
-{# Generate types. #}
-{% for type in domain.types %}
-  {% if not (type.type == "object") or not ("properties" in type) %}{% continue %}{% endif %}
-/**
-  {% if type.description %}
- * {{type.description.replace('\n', '\n * ')}}
- *
-  {% endif %}
-  {% for property in type.properties %}
-    {% if property.description %}
- * {{property.name}}: {{property.description.replace('\n', '\n *    ')}}
-    {% endif %}
-  {% endfor %}
- *
-  {% if type.properties %}
- * @typedef {{ '{{' }}
-  {% for property in type.properties %}
-    {% if property.optional %}
- *   {{property.name}}: ({{ resolve_type(property).js_type }}|undefined){{',' if not loop.last}}
-    {% else %}
- *   {{property.name}}: {{ resolve_type(property).js_type }}{{',' if not loop.last}}
-    {% endif %}
-  {% endfor %}
- * {{ '}}' }}
-  {% else %}
- * @typedef {undefined}
-  {% endif %}
- */
-chromium.DevTools.{{domain.domain}}.{{type.id}};
-
-{% endfor %}
-
-{# Generate all commands for Experimental Domain. #}
-{% for command in domain.commands %}
-  {% set method_name = command.name | sanitize_literal %}
-  {% set title_case_method_name = method_name | to_title_case %}
-  {% set result_type = '{!Promise<chromium.DevTools.' + domain.domain + '.' + title_case_method_name + 'Result>}' %}
-
-/**
-  {% if command.description %}
-  * {{ command.description.replace('\n', '\n * ') }}
-  *
-  {% endif %}
-  {% if command.parameters|length > 0 %}
-    {% if command.parameters_required %}
-  * @param {{ '{chromium.DevTools.' + domain.domain + '.' + title_case_method_name + 'Params}' }} params
-    {% else %}
-  * @param {{ '{chromium.DevTools.' + domain.domain + '.' + title_case_method_name + 'Params=}' }} opt_params
-    {% endif %}
-  {% endif %}
-  * @return {{result_type}}
-  */
-  {% if command.parameters|length > 0 %}
-    {% if command.parameters_required %}
-chromium.DevTools.Experimental{{domain.domain}}.prototype.{{method_name}} = function(params) {};
-    {% else %}
-chromium.DevTools.Experimental{{domain.domain}}.prototype.{{method_name}} = function(opt_params) {};
-    {% endif %}
-  {% else %}
-chromium.DevTools.Experimental{{domain.domain}}.prototype.{{method_name}} = function() {};
-  {% endif %}
-{% endfor %}
-
-{# Generate all events Experimental Domain. #}
-{% for event in domain.events %}
-  {% if event.parameters|length > 0 %}
-    {% set param_type = '{!function(!chromium.DevTools.' + domain.domain + '.' + event.name | to_title_case + 'Params)}' %}
-  {% else %}
-    {% set param_type = '{!function()}' %}
-  {% endif %}
-
-/**
-  {% if event.description %}
-  * {{ event.description.replace('\n', '\n * ') }}
-  *
-  {% endif %}
-  * @param {{param_type}} listener
-  * @return {number} The id of this event listener.
-  */
-chromium.DevTools.Experimental{{domain.domain}}.prototype.on{{event.name | to_title_case}} = function(listener) {};
-{% endfor %}
-
-
-{# Generate non-Experimental commands. #}
-{% for command in domain.commands %}
-  {% if command.Experimental %}{% continue %}{% endif %}
-  {% set method_name = command.name | sanitize_literal %}
-  {% set title_case_method_name = method_name | to_title_case %}
-  {% set result_type = '{!Promise<chromium.DevTools.' + domain.domain + '.' + title_case_method_name + 'Result>}' %}
-
-/**
-  {% if command.description %}
-  * {{ command.description.replace('\n', '\n * ') }}
-  *
-  {% endif %}
-  {% if command.parameters|length > 0 %}
-    {% if command.parameters_required %}
-  * @param {{ '{chromium.DevTools.' + domain.domain + '.' + title_case_method_name + 'Params}' }} params
-    {% else %}
-  * @param {{ '{chromium.DevTools.' + domain.domain + '.' + title_case_method_name + 'Params=}' }} opt_params
-    {% endif %}
-  {% endif %}
-  * @return {{result_type}}
-  */
-  {% if command.parameters|length > 0 %}
-    {% if command.parameters_required %}
-chromium.DevTools.{{domain.domain}}.prototype.{{method_name}} = function(params) {};
-    {% else %}
-chromium.DevTools.{{domain.domain}}.prototype.{{method_name}} = function(opt_params) {};
-    {% endif %}
-  {% else %}
-chromium.DevTools.{{domain.domain}}.prototype.{{method_name}} = function() {};
-  {% endif %}
-{% endfor %}
-
-{# Generate non-Experimental events. #}
-{% for event in domain.events %}
-  {% if event.Experimental %}{% continue %}{% endif %}
-  {% if event.parameters|length > 0 %}
-    {% set param_type = '{!function(!chromium.DevTools.' + domain.domain + '.' + event.name | to_title_case + 'Params)}' %}
-  {% else %}
-    {% set param_type = '{!function()}' %}
-  {% endif %}
-
-/**
-  {% if event.description %}
-  * {{ event.description.replace('\n', '\n * ') }}
-  *
-  {% endif %}
-  * @param {{param_type}} listener
-  * @return {number} The id of this event listener.
-  */
-chromium.DevTools.{{domain.domain}}.prototype.on{{event.name | to_title_case}} = function(listener) {};
-{% endfor %}
diff --git a/headless/lib/browser/devtools_api/domain_js.template b/headless/lib/browser/devtools_api/domain_js.template
deleted file mode 100644
index 4f18227c..0000000
--- a/headless/lib/browser/devtools_api/domain_js.template
+++ /dev/null
@@ -1,248 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-{# Changes to the generated API must be reflected in the externs too. #}
-
-/**
- * @fileoverview Generated DevTools bindings for the {{domain.domain}} Domain.
- */
-'use strict';
-
-goog.provide('chromium.DevTools.Experimental{{domain.domain}}');
-goog.provide('chromium.DevTools.{{domain.domain}}');
-goog.require('chromium.DevTools.Connection');
-{% for domain_name in domain.js_dependencies %}
-goog.require('chromium.DevTools.{{domain_name}}');
-{% endfor %}
-{% for forward_declaration in domain.js_forward_declarations %}
-goog.forwardDeclare('chromium.DevTools.{{forward_declaration}}');
-{% endfor %}
-
-goog.scope(function() {
-const Connection = chromium.DevTools.Connection;
-{% for domain_name in domain.js_dependencies %}
-const {{domain_name}} = chromium.DevTools.{{domain_name}};
-{% endfor %}
-
-/**
- * Experimental bindings for the {{domain.domain}} DevTools Domain.  Note these
- * are subject to change without warning. Use at your own risk.
- * @param {!Connection} connection The DevTools connection.
- * @constructor
- */
-chromium.DevTools.Experimental{{domain.domain}} = function(connection) {
-  /** @private {!Connection} */
-  this.connection_ = connection;
-}
-
-const Experimental{{domain.domain}} = chromium.DevTools.Experimental{{domain.domain}};
-
-/**
- * Removes an event listener.
- *
- * @param {number} id The id of the event listener to remove.
- * @return {boolean} Whether the event listener was actually removed.
- */
-Experimental{{domain.domain}}.prototype.removeEventListener = function(id) {
-  return this.connection_.removeEventListener(id);
-}
-
-/**
- * Bindings for the {{domain.domain}} DevTools Domain.
- * @param {!Connection} connection The DevTools connection.
- * @constructor
- */
-chromium.DevTools.{{domain.domain}} = function(connection) {
-  /** @private {!Connection} */
-  this.connection_ = connection;
-
-  /** @type {!Experimental{{domain.domain}}} */
-  this.experimental = new Experimental{{domain.domain}}(connection);
-}
-
-const {{domain.domain}} = chromium.DevTools.{{domain.domain}};
-
-/**
- * Removes an event listener.
- *
- * @param {number} id The id of the event listener to remove.
- * @return {boolean} Whether the event listener was actually removed.
- */
-{{domain.domain}}.prototype.removeEventListener = function(id) {
-  return this.connection_.removeEventListener(id);
-}
-
-{# Generate enums. #}
-{% for type in domain.types %}
-  {% if not "enum" in type %}{% continue %}{% endif %}
-/**
-  {% if type.description %}
- * {{type.description.replace('\n', '\n * ')}}
- *
-  {% endif %}
- * @enum {string}
- */
-{{domain.domain}}.{{type.id}} = {
-  {% for literal in type.enum %}
-    {{ literal | sanitize_literal | dash_to_camelcase | camelcase_to_hacker_style | upper }}: "{{ literal }}"{{',' if not loop.last}}
-  {% endfor %}
-};
-
-{% endfor %}
-
-{# Generate types. #}
-{% for type in domain.types %}
-  {% if not (type.type == "object") or not ("properties" in type) %}{% continue %}{% endif %}
-/**
-  {% if type.description %}
- * {{type.description.replace('\n', '\n * ')}}
- *
-  {% endif %}
-  {% for property in type.properties %}
-    {% if property.description %}
- * {{property.name}}: {{property.description.replace('\n', '\n *   ')}}
-    {% endif %}
-  {% endfor %}
- *
-  {% if type.properties %}
- * @typedef {{ '{{' }}
-  {% for property in type.properties %}
-    {% if property.optional %}
- *   {{property.name}}: ({{ short_form(resolve_type(property).js_type) }}|undefined){{',' if not loop.last}}
-    {% else %}
- *   {{property.name}}: {{ short_form(resolve_type(property).js_type) }}{{',' if not loop.last}}
-    {% endif %}
-  {% endfor %}
- * {{ '}}' }}
-  {% else %}
- * @typedef {undefined}
-  {% endif %}
- */
-{{domain.domain}}.{{type.id}};
-
-{% endfor %}
-
-{# Generate all commands for Experimental Domain. #}
-{% for command in domain.commands %}
-  {% set method_name = command.name | sanitize_literal %}
-  {% set title_case_method_name = method_name | to_title_case %}
-  {% set result_type = '{!Promise<' + domain.domain + '.' + title_case_method_name + 'Result>}' %}
-
-/**
-  {% if command.description %}
-  * {{ command.description.replace('\n', '\n * ') }}
-  *
-  {% endif %}
-  {% if command.parameters|length > 0 %}
-    {% if command.parameters_required %}
-  * @param {{ '{' + domain.domain + '.' + title_case_method_name + 'Params}' }} params
-    {% else %}
-  * @param {{ '{' + domain.domain + '.' + title_case_method_name + 'Params=}' }} opt_params
-    {% endif %}
-  {% endif %}
-  * @return {{result_type}}
-  */
-  {% if command.parameters|length > 0 %}
-    {% if command.parameters_required %}
-Experimental{{domain.domain}}.prototype.{{method_name}} = function(params) {
-  return this.connection_.sendDevToolsMessage('{{domain.domain}}.{{command.name}}', params);
-};
-    {% else %}
-Experimental{{domain.domain}}.prototype.{{method_name}} = function(opt_params) {
-  return this.connection_.sendDevToolsMessage('{{domain.domain}}.{{command.name}}', opt_params || {});
-};
-    {% endif %}
-  {% else %}
-Experimental{{domain.domain}}.prototype.{{method_name}} = function() {
-  return this.connection_.sendDevToolsMessage('{{domain.domain}}.{{command.name}}', {});
-};
-  {% endif %}
-{% endfor %}
-
-{# Generate all events Experimental Domain. #}
-{% for event in domain.events %}
-  {% if event.parameters|length > 0 %}
-    {% set param_type = '{!function(!' + domain.domain + '.' + event.name | to_title_case + 'Params)}' %}
-  {% else %}
-    {% set param_type = '{!function()}' %}
-  {% endif %}
-
-/**
-  {% if event.description %}
-  * {{ event.description.replace('\n', '\n * ') }}
-  *
-  {% endif %}
-  * @param {{param_type}} listener
-  * @return {number} The id of this event listener.
-  */
-Experimental{{domain.domain}}.prototype.on{{event.name | to_title_case}} = function(listener) {
-  return this.connection_.addEventListener(
-      '{{domain.domain}}.{{event.name}}', /** @type {!function(!Object): undefined} */ (listener));
-};
-{% endfor %}
-
-
-{# Generate non-Experimental commands. #}
-{% for command in domain.commands %}
-  {% if command.Experimental %}{% continue %}{% endif %}
-  {% set method_name = command.name | sanitize_literal %}
-  {% set title_case_method_name = method_name | to_title_case %}
-  {% set result_type = '{!Promise<' + domain.domain + '.' + title_case_method_name + 'Result>}' %}
-
-/**
-  {% if command.description %}
-  * {{ command.description.replace('\n', '\n * ') }}
-  *
-  {% endif %}
-  {% if command.parameters|length > 0 %}
-    {% if command.parameters_required %}
-  * @param {{ '{' + domain.domain + '.' + title_case_method_name + 'Params}' }} params
-    {% else %}
-  * @param {{ '{' + domain.domain + '.' + title_case_method_name + 'Params=}' }} opt_params
-    {% endif %}
-  {% endif %}
-  * @return {{result_type}}
-  */
-  {% if command.parameters|length > 0 %}
-    {% if command.parameters_required %}
-{{domain.domain}}.prototype.{{method_name}} = function(params) {
-  return this.connection_.sendDevToolsMessage('{{domain.domain}}.{{command.name}}', params);
-};
-    {% else %}
-{{domain.domain}}.prototype.{{method_name}} = function(opt_params) {
-  return this.connection_.sendDevToolsMessage('{{domain.domain}}.{{command.name}}', opt_params || {});
-};
-    {% endif %}
-  {% else %}
-{{domain.domain}}.prototype.{{method_name}} = function() {
-  return this.connection_.sendDevToolsMessage('{{domain.domain}}.{{command.name}}', {});
-};
-  {% endif %}
-{% endfor %}
-
-{# Generate non-Experimental events. #}
-{% for event in domain.events %}
-  {% if event.Experimental %}{% continue %}{% endif %}
-  {% if event.parameters|length > 0 %}
-    {% set param_type = '{!function(!' + domain.domain + '.' + event.name | to_title_case + 'Params)}' %}
-  {% else %}
-    {% set param_type = '{!function()}' %}
-  {% endif %}
-
-/**
-  {% if event.description %}
-  * {{ event.description.replace('\n', '\n * ') }}
-  *
-  {% endif %}
-  * @param {{param_type}} listener
-  * @return {number} The id of this event listener.
-  */
-{{domain.domain}}.prototype.on{{event.name | to_title_case}} = function(listener) {
-  return this.connection_.addEventListener(
-      '{{domain.domain}}.{{event.name}}', /** @type {!function(!Object): undefined} */ (listener));
-};
-{% endfor %}
-
-});  // goog.scope
-
diff --git a/headless/lib/browser/headless_web_contents_impl.cc b/headless/lib/browser/headless_web_contents_impl.cc
index 86f4d81..c0ff8fa6 100644
--- a/headless/lib/browser/headless_web_contents_impl.cc
+++ b/headless/lib/browser/headless_web_contents_impl.cc
@@ -177,15 +177,22 @@
     return target;
   }
 
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override {
-    return headless_web_contents_->browser_context()
-        ->options()
-        ->block_new_web_contents();
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) override {
+    return !headless_web_contents_->browser_context()
+                ->options()
+                ->block_new_web_contents();
   }
 
  private:
diff --git a/headless/test/bindings_test.js b/headless/test/bindings_test.js
deleted file mode 100644
index 42da5469..0000000
--- a/headless/test/bindings_test.js
+++ /dev/null
@@ -1,76 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-goog.module('chromium.BindingsTest');
-// Needed to let C++ invoke the test.
-goog.module.declareLegacyNamespace();
-
-const Connection = goog.require('chromium.DevTools.Connection');
-const DOM = goog.require('chromium.DevTools.DOM');
-const Page = goog.require('chromium.DevTools.Page');
-const Runtime = goog.require('chromium.DevTools.Runtime');
-
-/**
- * A trivial test which is invoked from C++ by HeadlessJsBindingsTest.
- */
-class BindingsTest {
-  constructor() {}
-
-  /**
-   * Evaluates 1+1 and returns the result over the chromium.DevTools.Connection.
-   */
-  evalOneAddOne() {
-    let connection = new Connection(window.TabSocket);
-    let runtime = new Runtime(connection);
-    runtime.evaluate({'expression': '1+1'}).then(function(message) {
-      connection.sendDevToolsMessage(
-          '__Result',
-          {'result': JSON.stringify(message.result.value)});
-    });
-  }
-
-  /**
-   * Evaluates 1+1 and returns the result over the chromium.DevTools.Connection.
-   */
-  listenForChildNodeCountUpdated() {
-    let connection = new Connection(window.TabSocket);
-    let dom = new DOM(connection);
-    dom.onChildNodeCountUpdated(function(params) {
-      connection.sendDevToolsMessage('__Result',
-                                     {'result': JSON.stringify(params)});
-    });
-    dom.enable().then(function() {
-      return dom.getDocument({});
-    }).then(function() {
-      // Create a new div which should trigger the event.
-      let div = document.createElement('div');
-      document.body.appendChild(div);
-    });
-  }
-
-  /**
-   * Uses experimental commands to create an isolated world.
-   */
-  getIsolatedWorldName() {
-    let connection = new Connection(window.TabSocket);
-    let page = new Page(connection);
-    let runtime = new Runtime(connection);
-    runtime.enable().then(function() {
-      runtime.onExecutionContextCreated(function(params) {
-        if (params.context.auxData['isDefault'] === false) {
-          connection.sendDevToolsMessage(
-              '__Result', {'result': 'Created ' + params.context.name});
-        }
-      });
-      page.experimental.getResourceTree().then(function(result) {
-        page.experimental.createIsolatedWorld({
-          'frameId': result.frameTree.frame.id,
-          'worldName': 'Test Isolated World'
-        });
-      });
-    });
-  }
-}
-
-exports = BindingsTest;
diff --git a/headless/test/headless_js_bindings_browsertest.cc b/headless/test/headless_js_bindings_browsertest.cc
deleted file mode 100644
index 65505eb..0000000
--- a/headless/test/headless_js_bindings_browsertest.cc
+++ /dev/null
@@ -1,274 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include <memory>
-#include <string>
-#include <vector>
-
-#include "base/base64.h"
-#include "base/bind.h"
-#include "base/json/json_reader.h"
-#include "base/memory/weak_ptr.h"
-#include "base/path_service.h"
-#include "base/strings/string_split.h"
-#include "base/strings/stringprintf.h"
-#include "base/threading/thread_restrictions.h"
-#include "content/public/common/isolated_world_ids.h"
-#include "content/public/test/browser_test.h"
-#include "headless/grit/headless_browsertest_resources.h"
-#include "headless/public/devtools/domains/page.h"
-#include "headless/public/devtools/domains/runtime.h"
-#include "headless/public/headless_browser.h"
-#include "headless/public/headless_devtools_client.h"
-#include "headless/public/headless_web_contents.h"
-#include "headless/test/headless_browser_test.h"
-#include "testing/gmock/include/gmock/gmock.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/base/resource/resource_bundle.h"
-
-namespace headless {
-
-namespace {
-const char kIndexHtml[] = R"(
-<html>
-<body>
-<script src="bindings.js"></script>
-</body>
-</html>
-)";
-
-const char kTabSocketScript[] = R"(
-window.TabSocket = {};
-window.TabSocket.onmessage = () => {};
-window.TabSocket.send = (json) => console.debug(json);
-)";
-
-}  // namespace
-
-class HeadlessJsBindingsTest
-    : public HeadlessAsyncDevTooledBrowserTest,
-      public HeadlessDevToolsClient::RawProtocolListener,
-      public headless::runtime::Observer,
-      public page::ExperimentalObserver {
- public:
-  using ConsoleAPICalledParams = headless::runtime::ConsoleAPICalledParams;
-  using EvaluateResult = headless::runtime::EvaluateResult;
-  using RemoteObject = headless::runtime::RemoteObject;
-
-  HeadlessJsBindingsTest() {}
-
-  void SetUpOnMainThread() override {
-    base::ThreadRestrictions::SetIOAllowed(true);
-    base::FilePath pak_path;
-    ASSERT_TRUE(base::PathService::Get(base::DIR_MODULE, &pak_path));
-    pak_path = pak_path.AppendASCII("headless_browser_tests.pak");
-    ui::ResourceBundle::GetSharedInstance().AddDataPackFromPath(
-        pak_path, ui::SCALE_FACTOR_NONE);
-  }
-
-  void CustomizeHeadlessWebContents(
-      HeadlessWebContents::Builder& builder) override {
-    builder.SetWindowSize(gfx::Size(0, 0));
-    builder.SetInitialURL(GURL("http://test.com/index.html"));
-    interceptor_->InsertResponse("http://test.com/index.html",
-                                 {kIndexHtml, "text/html"});
-    std::string bindings_js = ui::ResourceBundle::GetSharedInstance()
-                                  .GetRawDataResource(DEVTOOLS_BINDINGS_TEST)
-                                  .as_string();
-    interceptor_->InsertResponse(
-        "http://test.com/bindings.js",
-        {bindings_js.c_str(), "application/javascript"});
-  }
-
-  void RunDevTooledTest() override {
-    devtools_client_->GetPage()->GetExperimental()->AddObserver(this);
-    devtools_client_->GetPage()->Enable();
-    devtools_client_->GetPage()->AddScriptToEvaluateOnNewDocument(
-        kTabSocketScript);
-    devtools_client_->GetRuntime()->AddObserver(this);
-    devtools_client_->GetRuntime()->Enable();
-    devtools_client_->GetRuntime()->Evaluate(
-        kTabSocketScript,
-        base::BindOnce(&HeadlessJsBindingsTest::ConnectionEstablished,
-                       weak_factory_.GetWeakPtr()));
-    devtools_client_->SetRawProtocolListener(this);
-  }
-
-  void ConnectionEstablished(std::unique_ptr<EvaluateResult>) {
-    connection_established_ = true;
-  }
-
-  virtual void RunJsBindingsTest() = 0;
-
-  void OnLoadEventFired(const page::LoadEventFiredParams& params) override {
-    RunJsBindingsTest();
-  }
-
-  virtual void OnResult(const std::string& result) = 0;
-
-  void FailOnJsEvaluateException(
-      std::unique_ptr<runtime::EvaluateResult> result) {
-    if (!result->HasExceptionDetails())
-      return;
-
-    FinishAsynchronousTest();
-
-    const runtime::ExceptionDetails* exception_details =
-        result->GetExceptionDetails();
-    FAIL() << exception_details->GetText()
-           << (exception_details->HasException()
-                   ? exception_details->GetException()->GetDescription().c_str()
-                   : "");
-  }
-
-  void OnConsoleAPICalled(const ConsoleAPICalledParams& params) override {
-    const std::vector<std::unique_ptr<RemoteObject>>& args = *params.GetArgs();
-    if (args.empty())
-      return;
-    if (params.GetType() != headless::runtime::ConsoleAPICalledType::DEBUG)
-      return;
-
-    RemoteObject* object = args[0].get();
-    if (object->GetType() != headless::runtime::RemoteObjectType::STRING)
-      return;
-
-    OnMessageFromJS(object->GetValue()->GetString());
-  }
-
-  void SendMessageToJS(const std::string& message) {
-    std::string encoded;
-    base::Base64Encode(message, &encoded);
-    devtools_client_->GetRuntime()->Evaluate(
-        "window.TabSocket.onmessage(atob(\"" + encoded + "\"))");
-  }
-
-  void OnMessageFromJS(const std::string& json_message) {
-    std::unique_ptr<base::Value> message =
-        base::JSONReader::ReadDeprecated(json_message, base::JSON_PARSE_RFC);
-    const base::Value* method_value = message->FindKey("method");
-    if (!method_value) {
-      FinishAsynchronousTest();
-      FAIL() << "Badly formed message " << json_message;
-      return;
-    }
-
-    const base::Value* params_value = message->FindKey("params");
-    if (!params_value) {
-      FinishAsynchronousTest();
-      FAIL() << "Badly formed message " << json_message;
-      return;
-    }
-
-    const base::Value* id_value = message->FindKey("id");
-    if (!id_value) {
-      FinishAsynchronousTest();
-      FAIL() << "Badly formed message " << json_message;
-      return;
-    }
-
-    if (method_value->GetString() == "__Result") {
-      OnResult(params_value->FindKey("result")->GetString());
-      return;
-    }
-
-    devtools_client_->SendRawDevToolsMessage(json_message);
-  }
-
-  bool OnProtocolMessage(const std::string& json_message,
-                         const base::DictionaryValue& parsed_message) override {
-    if (!connection_established_)
-      return false;
-
-    const base::Value* id_value = parsed_message.FindKey("id");
-    // If |parsed_message| contains an id we know this is a message reply.
-    if (id_value) {
-      int id = id_value->GetInt();
-      // We are only interested in message replies (ones with an id) where the
-      // id is odd. The reason is HeadlessDevToolsClientImpl uses even/oddness
-      // to distinguish between commands send from the C++ bindings and those
-      // via HeadlessDevToolsClientImpl::SendRawDevToolsMessage.
-      if ((id % 2) == 0)
-        return false;
-
-      SendMessageToJS(json_message);
-      return true;
-    }
-
-    const base::Value* method_value = parsed_message.FindKey("method");
-    if (!method_value)
-      return false;
-
-    if (method_value->GetString() == "Runtime.consoleAPICalled") {
-      // console.debug is used for transport.
-      return false;
-    }
-
-    SendMessageToJS(json_message);
-
-    // Check which domain the event belongs to, if it's the DOM domain then
-    // assume js handled it.
-    std::vector<base::StringPiece> sections =
-        SplitStringPiece(method_value->GetString(), ".", base::KEEP_WHITESPACE,
-                         base::SPLIT_WANT_ALL);
-
-    return sections[0] == "DOM" || sections[0] == "Runtime";
-  }
-
- protected:
-  bool connection_established_ = false;
-  base::WeakPtrFactory<HeadlessJsBindingsTest> weak_factory_{this};
-};
-
-class SimpleCommandJsBindingsTest : public HeadlessJsBindingsTest {
- public:
-  void RunJsBindingsTest() override {
-    devtools_client_->GetRuntime()->Evaluate(
-        "new chromium.BindingsTest().evalOneAddOne();",
-        base::BindOnce(&HeadlessJsBindingsTest::FailOnJsEvaluateException,
-                       base::Unretained(this)));
-  }
-
-  void OnResult(const std::string& result) override {
-    EXPECT_EQ("2", result);
-    FinishAsynchronousTest();
-  }
-};
-
-HEADLESS_ASYNC_DEVTOOLED_TEST_F(SimpleCommandJsBindingsTest);
-
-class ExperimentalCommandJsBindingsTest : public HeadlessJsBindingsTest {
- public:
-  void RunJsBindingsTest() override {
-    devtools_client_->GetRuntime()->Evaluate(
-        "new chromium.BindingsTest().getIsolatedWorldName();",
-        base::BindOnce(&HeadlessJsBindingsTest::FailOnJsEvaluateException,
-                       base::Unretained(this)));
-  }
-
-  void OnResult(const std::string& result) override {
-    EXPECT_EQ("Created Test Isolated World", result);
-    FinishAsynchronousTest();
-  }
-};
-
-HEADLESS_ASYNC_DEVTOOLED_TEST_F(ExperimentalCommandJsBindingsTest);
-
-class SimpleEventJsBindingsTest : public HeadlessJsBindingsTest {
- public:
-  void RunJsBindingsTest() override {
-    devtools_client_->GetRuntime()->Evaluate(
-        "new chromium.BindingsTest().listenForChildNodeCountUpdated();",
-        base::BindOnce(&HeadlessJsBindingsTest::FailOnJsEvaluateException,
-                       base::Unretained(this)));
-  }
-
-  void OnResult(const std::string& result) override {
-    EXPECT_EQ("{\"nodeId\":4,\"childNodeCount\":2}", result);
-    FinishAsynchronousTest();
-  }
-};
-
-HEADLESS_ASYNC_DEVTOOLED_TEST_F(SimpleEventJsBindingsTest);
-
-}  // namespace headless
diff --git a/infra/config/PRESUBMIT.py b/infra/config/PRESUBMIT.py
index 8f971a34..902f91b2 100644
--- a/infra/config/PRESUBMIT.py
+++ b/infra/config/PRESUBMIT.py
@@ -41,6 +41,11 @@
         kwargs={}, message=output_api.PresubmitError),
     )
 
+  commands.extend(input_api.canned_checks.CheckLucicfgGenOutput(
+      input_api, output_api, 'main.star'))
+  commands.extend(input_api.canned_checks.CheckLucicfgGenOutput(
+      input_api, output_api, 'dev.star'))
+
   commands.extend(input_api.canned_checks.GetUnitTestsRecursively(
       input_api, output_api,
       input_api.os_path.join(input_api.PresubmitLocalPath()),
diff --git a/infra/config/README.md b/infra/config/README.md
index a7e9a0a..c64edf4 100644
--- a/infra/config/README.md
+++ b/infra/config/README.md
@@ -9,3 +9,17 @@
 
 Currently active version can be checked at
 https://luci-config.appspot.com/#/projects/chromium .
+
+The configuration files are currently in the process of being migrated to
+lucicfg/starlark. If a hand-written configuration file is still present
+alongside this file, you can modify that file directly.
+
+The remainder of the configuration files are generated by starlark. The starlark
+configuration is rooted in main.star and dev.star, which execute other starlark
+files to generate a subset of the LUCI service configuration files to the
+`generated` subdirectory. A presubmit check enforces that the generated files
+are kept in sync with the generated output of the starlark configuration.
+
+The starlark configuration also copies over the not-yet migrated files to the
+`generated` directory, so updating the hand-written configuration files will
+require re-'generating' the configuration.
diff --git a/infra/config/dev.star b/infra/config/dev.star
new file mode 100755
index 0000000..6b5cfc3
--- /dev/null
+++ b/infra/config/dev.star
@@ -0,0 +1,22 @@
+#!/usr/bin/env lucicfg
+
+# Tell lucicfg what files it is allowed to touch
+lucicfg.config(
+    config_dir = 'generated',
+    tracked_files = [
+        'cr-buildbucket-dev.cfg',
+        'luci-logdog-dev.cfg',
+        'luci-milo-dev.cfg',
+        'luci-scheduler-dev.cfg',
+    ],
+    fail_on_warnings = True,
+)
+
+# Copy the not-yet migrated files to the generated outputs
+# TODO(https://crbug.com/1011908) Migrate the configuration in these files to starlark
+[lucicfg.emit(dest = f, data = io.read_file(f)) for f in (
+    'cr-buildbucket-dev.cfg',
+    'luci-logdog-dev.cfg',
+    'luci-milo-dev.cfg',
+    'luci-scheduler-dev.cfg',
+)]
diff --git a/infra/config/generated/commit-queue.cfg b/infra/config/generated/commit-queue.cfg
new file mode 100644
index 0000000..a6babad
--- /dev/null
+++ b/infra/config/generated/commit-queue.cfg
@@ -0,0 +1,452 @@
+# See http://luci-config.appspot.com/schemas/projects:commit-queue.cfg for the
+# documentation of this file format.
+#
+# This file is also used to auto generate //docs/infra/cq_builders.md. If you
+# change this file, run //infra/config/cq_cfg_presubmit.py, which will generate
+# that file. That script also requires that the builders in this file remain
+# sorted. The script is invoked via presubmit, and will complain if this file is
+# changed but the documentation isn't.
+#
+# The auto generated file copies comments made to builders in this file. If you
+# comment on the line directly above a builder, that comment will get copied to
+# the documentation.
+#
+# The following comment will get copied.
+#
+# # This is a great builder!
+# builders { name: "chromium_presubmit" }
+#
+# The following comment will not get copied.
+#
+# # This is a ok builder!
+#
+# builders { name: "chromium_presubmit" }
+
+cq_status_host: "chromium-cq-status.appspot.com"
+submit_options {
+  max_burst: 2
+  burst_delay {
+    seconds: 60
+  }
+}
+
+# NOTE: To add a new builder to the commit queue, see
+# https://chromium.googlesource.com/chromium/src/+/HEAD/docs/infra/cq.md#how-do-i-add-a-new-builder-to-the-cq
+
+config_groups {
+  gerrit {
+    url: "https://chromium-review.googlesource.com"
+    projects {
+      name: "chromium/src"
+      ref_regexp: "refs/heads/.+"
+    }
+  }
+  verifiers {
+    gerrit_cq_ability {
+      committer_list: "project-chromium-committers"
+      dry_run_access_list: "project-chromium-tryjob-access"
+    }
+    tree_status {
+      url: "https://chromium-status.appspot.com/"
+    }
+    tryjob {
+      # TODO(crbug/959436): enable it.
+      cancel_stale_tryjobs: NO
+      #############################
+      # Always required builders. #
+      #############################
+
+      builders {
+        name: "chromium/try/android-binary-size"
+      }
+      builders {
+        name: "chromium/try/android-kitkat-arm-rel"
+      }
+      builders {
+        name: "chromium/try/android-marshmallow-arm64-rel"
+      }
+      builders {
+        name: "chromium/try/android_arm64_dbg_recipe"
+      }
+      builders {
+        name: "chromium/try/android_clang_dbg_recipe"
+      }
+      builders {
+        name: "chromium/try/android_compile_dbg"
+      }
+      builders {
+        name: "chromium/try/android_cronet"
+      }
+      builders {
+        name: "chromium/try/cast_shell_android"
+      }
+      builders {
+        name: "chromium/try/cast_shell_linux"
+      }
+      builders {
+        name: "chromium/try/chromeos-amd64-generic-rel"
+      }
+      builders {
+        name: "chromium/try/chromeos-arm-generic-rel"
+      }
+      builders {
+        name: "chromium/try/chromium_presubmit"
+        disable_reuse: true
+      }
+      builders {
+        name: "chromium/try/fuchsia_arm64"
+      }
+      builders {
+        name: "chromium/try/fuchsia_x64"
+      }
+      builders {
+        name: "chromium/try/ios-simulator"
+      }
+      builders {
+        name: "chromium/try/linux-chromeos-compile-dbg"
+      }
+      builders {
+        name: "chromium/try/linux-chromeos-rel"
+      }
+      builders {
+        name: "chromium/try/linux-libfuzzer-asan-rel"
+      }
+      builders {
+        name: "chromium/try/linux-ozone-rel"
+      }
+      builders {
+        name: "chromium/try/linux-rel"
+      }
+      builders {
+        name: "chromium/try/linux_chromium_asan_rel_ng"
+      }
+      builders {
+        name: "chromium/try/linux_chromium_compile_dbg_ng"
+      }
+      builders {
+        name: "chromium/try/linux_chromium_tsan_rel_ng"
+      }
+      builders {
+        name: "chromium/try/mac-rel"
+      }
+      builders {
+        name: "chromium/try/mac_chromium_compile_dbg_ng"
+      }
+      builders {
+        name: "chromium/try/win-libfuzzer-asan-rel"
+      }
+      builders {
+        name: "chromium/try/win10_chromium_x64_rel_ng"
+      }
+      builders {
+        name: "chromium/try/win_chromium_compile_dbg_ng"
+      }
+
+      ######################
+      # Optional builders. #
+      ######################
+
+      builders {
+        name: "chromium/try/android-cronet-arm-dbg"
+        location_regexp: ".+/[+]/components/cronet/.+"
+        location_regexp: ".+/[+]/components/grpc_support/.+"
+        location_regexp: ".+/[+]/build/android/.+"
+        location_regexp: ".+/[+]/build/config/android/.+"
+        location_regexp_exclude: ".+/[+]/components/cronet/ios/.+"
+      }
+      builders {
+        name: "chromium/try/android_compile_x64_dbg"
+        location_regexp: ".+/[+]/chrome/android/java/src/org/chromium/chrome/browser/vr/.+"
+        location_regexp: ".+/[+]/chrome/browser/vr/.+"
+        location_regexp: ".+/[+]/sandbox/linux/seccomp-bpf/.+"
+        location_regexp: ".+/[+]/sandbox/linux/seccomp-bpf-helpers/.+"
+        location_regexp: ".+/[+]/sandbox/linux/system_headers/.+"
+        location_regexp: ".+/[+]/sandbox/linux/tests/.+"
+        location_regexp: ".+/[+]/third_party/gvr-android-sdk/.+"
+      }
+      builders {
+        name: "chromium/try/android_compile_x86_dbg"
+        location_regexp: ".+/[+]/chrome/android/java/src/org/chromium/chrome/browser/vr/.+"
+        location_regexp: ".+/[+]/chrome/browser/vr/.+"
+        location_regexp: ".+/[+]/sandbox/linux/seccomp-bpf/.+"
+        location_regexp: ".+/[+]/sandbox/linux/seccomp-bpf-helpers/.+"
+        location_regexp: ".+/[+]/sandbox/linux/system_headers/.+"
+        location_regexp: ".+/[+]/sandbox/linux/tests/.+"
+        location_regexp: ".+/[+]/third_party/gvr-android-sdk/.+"
+      }
+      builders {
+        name: "chromium/try/android_optional_gpu_tests_rel"
+        location_regexp: ".+/[+]/cc/.+"
+        location_regexp: ".+/[+]/chrome/browser/vr/.+"
+        location_regexp: ".+/[+]/components/viz/.+"
+        location_regexp: ".+/[+]/content/test/gpu/.+"
+        location_regexp: ".+/[+]/gpu/.+"
+        location_regexp: ".+/[+]/media/audio/.+"
+        location_regexp: ".+/[+]/media/filters/.+"
+        location_regexp: ".+/[+]/media/gpu/.+"
+        location_regexp: ".+/[+]/services/viz/.+"
+        location_regexp: ".+/[+]/testing/trigger_scripts/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/webgl/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/platform/graphics/gpu/.+"
+        location_regexp: ".+/[+]/ui/gl/.+"
+      }
+      builders {
+        name: "chromium/try/chromeos-amd64-generic-dbg"
+        location_regexp: ".+/[+]/content/gpu/.+"
+        location_regexp: ".+/[+]/media/.+"
+
+      }
+      builders {
+        name: "chromium/try/chromeos-kevin-compile-rel"
+        location_regexp: ".+/[+]/chromeos/CHROMEOS_LKGM"
+      }
+      builders {
+        name: "chromium/try/chromeos-kevin-rel"
+        location_regexp: ".+/[+]/build/chromeos/.+"
+        location_regexp: ".+/[+]/build/config/chromeos/.*"
+      }
+      builders {
+        name: "chromium/try/closure_compilation"
+        location_regexp: ".+/[+]/third_party/closure_compiler/.+"
+      }
+      builders {
+        name: "chromium/try/dawn-linux-x64-deps-rel"
+        location_regexp: ".+/[+]/gpu/.+"
+        location_regexp: ".+/[+]/testing/buildbot/chromium.dawn.json"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/webgpu/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/external/wpt/webgpu/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/WebGPUExpectations"
+        location_regexp: ".+/[+]/third_party/dawn/.+"
+      }
+      builders {
+        name: "chromium/try/dawn-mac-x64-deps-rel"
+        location_regexp: ".+/[+]/gpu/.+"
+        location_regexp: ".+/[+]/testing/buildbot/chromium.dawn.json"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/webgpu/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/external/wpt/webgpu/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/WebGPUExpectations"
+        location_regexp: ".+/[+]/third_party/dawn/.+"
+      }
+      builders {
+        name: "chromium/try/dawn-win10-x64-deps-rel"
+        location_regexp: ".+/[+]/gpu/.+"
+        location_regexp: ".+/[+]/testing/buildbot/chromium.dawn.json"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/webgpu/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/external/wpt/webgpu/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/WebGPUExpectations"
+        location_regexp: ".+/[+]/third_party/dawn/.+"
+      }
+      builders {
+        name: "chromium/try/dawn-win10-x86-deps-rel"
+        location_regexp: ".+/[+]/gpu/.+"
+        location_regexp: ".+/[+]/testing/buildbot/chromium.dawn.json"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/webgpu/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/external/wpt/webgpu/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/WebGPUExpectations"
+        location_regexp: ".+/[+]/third_party/dawn/.+"
+      }
+      builders {
+        name: "chromium/try/fuchsia-arm64-cast"
+        location_regexp: ".+/[+]/chromecast/.+"
+      }
+      builders {
+        name: "chromium/try/fuchsia-x64-cast"
+        location_regexp: ".+/[+]/chromecast/.+"
+      }
+      builders {
+        name: "chromium/try/gpu-fyi-try-android-p-pixel-2-skv-32"
+	# Some locations disabled due to limited capacity.
+        #location_regexp: ".+/[+]/cc/.+"
+        location_regexp: ".+/[+]/components/viz/.+"
+        location_regexp: ".+/[+]/content/test/gpu/gpu_tests/.+py"
+        location_regexp: ".+/[+]/content/test/gpu/gpu_tests/test_expectations/pixel_expectations.txt"
+        location_regexp: ".+/[+]/gpu/vulkan/.+"
+        #location_regexp: ".+/[+]/media/gpu/.+"
+        location_regexp: ".+/[+]/services/viz/.+"
+        #location_regexp: ".+/[+]/third_party/blink/renderer/platform/graphics/gpu/.+"
+        #location_regexp: ".+/[+]/third_party/skia/src/gpu/.+"
+        #location_regexp: ".+/[+]/third_party/skia/include/gpu/.+"
+      }
+      builders {
+        name: "chromium/try/ios-simulator-cronet"
+        location_regexp: ".+/[+]/components/cronet/.+"
+        location_regexp: ".+/[+]/components/grpc_support/.+"
+        location_regexp: ".+/[+]/ios/.+"
+        location_regexp_exclude: ".+/[+]/components/cronet/android/.+"
+      }
+      builders {
+        name: "chromium/try/ios-simulator-full-configs"
+        location_regexp: ".+/[+]/ios/.+"
+      }
+      builders {
+        name: "chromium/try/linux-blink-rel"
+        location_regexp: ".+/[+]/cc/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/core/paint/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/core/svg/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/platform/graphics/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/FlagExpectations/enable-blink-features=CompositeAfterPaint"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/.+"
+      }
+      builders {
+        name: "chromium/try/linux_chromium_dbg_ng"
+        location_regexp: ".+/[+]/build/.*check_gn_headers.*"
+      }
+      builders {
+        name: "chromium/try/linux_layout_tests_composite_after_paint"
+        location_regexp: ".+/[+]/third_party/blink/renderer/core/paint/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/core/svg/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/platform/graphics/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/FlagExpectations/enable-blink-features=CompositeAfterPaint"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/.+"
+      }
+      builders {
+        name: "chromium/try/linux_layout_tests_layout_ng_disabled"
+        location_regexp: ".+/[+]/third_party/blink/renderer/core/editing/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/core/layout/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/core/paint/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/core/svg/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/platform/fonts/shaping/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/platform/graphics/.+"
+        location_regexp: ".+/[+]/third_party/blink/web_tests/flag-specific/enable-blink-features=LayoutNG/.+"
+      }
+      builders {
+        name: "chromium/try/linux_optional_gpu_tests_rel"
+        location_regexp: ".+/[+]/chrome/browser/vr/.+"
+        location_regexp: ".+/[+]/content/test/gpu/.+"
+        location_regexp: ".+/[+]/gpu/.+"
+        location_regexp: ".+/[+]/media/audio/.+"
+        location_regexp: ".+/[+]/media/filters/.+"
+        location_regexp: ".+/[+]/media/gpu/.+"
+        location_regexp: ".+/[+]/testing/buildbot/chromium.gpu.fyi.json"
+        location_regexp: ".+/[+]/testing/trigger_scripts/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/webgl/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/platform/graphics/gpu/.+"
+        location_regexp: ".+/[+]/ui/gl/.+"
+      }
+      builders {
+        name: "chromium/try/linux_vr"
+        location_regexp: ".+/[+]/chrome/browser/vr/.+"
+      }
+      builders {
+        name: "chromium/try/mac_optional_gpu_tests_rel"
+        location_regexp: ".+/[+]/chrome/browser/vr/.+"
+        location_regexp: ".+/[+]/content/test/gpu/.+"
+        location_regexp: ".+/[+]/gpu/.+"
+        location_regexp: ".+/[+]/media/audio/.+"
+        location_regexp: ".+/[+]/media/filters/.+"
+        location_regexp: ".+/[+]/media/gpu/.+"
+        location_regexp: ".+/[+]/services/shape_detection/.+"
+        location_regexp: ".+/[+]/testing/buildbot/chromium.gpu.fyi.json"
+        location_regexp: ".+/[+]/testing/trigger_scripts/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/webgl/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/platform/graphics/gpu/.+"
+        location_regexp: ".+/[+]/ui/gl/.+"
+      }
+      builders {
+        name: "chromium/try/win_optional_gpu_tests_rel"
+        location_regexp: ".+/[+]/chrome/browser/vr/.+"
+        location_regexp: ".+/[+]/content/test/gpu/.+"
+        location_regexp: ".+/[+]/device/vr/.+"
+        location_regexp: ".+/[+]/gpu/.+"
+        location_regexp: ".+/[+]/media/audio/.+"
+        location_regexp: ".+/[+]/media/filters/.+"
+        location_regexp: ".+/[+]/media/gpu/.+"
+        location_regexp: ".+/[+]/testing/buildbot/chromium.gpu.fyi.json"
+        location_regexp: ".+/[+]/testing/trigger_scripts/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/vr/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/webgl/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/modules/xr/.+"
+        location_regexp: ".+/[+]/third_party/blink/renderer/platform/graphics/gpu/.+"
+        location_regexp: ".+/[+]/ui/gl/.+"
+      }
+
+      ##########################
+      # Experimental builders. #
+      ##########################
+
+      builders {
+        name: "chromium/try/android-marshmallow-arm64-coverage-rel"
+        experiment_percentage: 3
+      }
+      builders {
+        name: "chromium/try/android-pie-arm64-rel"
+        experiment_percentage: 10
+      }
+      builders {
+        name: "chromium/try/chromeos-kevin-experimental-rel"
+        experiment_percentage: 5
+      }
+      builders {
+        name: "chromium/try/fuchsia-compile-x64-dbg"
+        experiment_percentage: 5
+      }
+      # https://crbug.com/739556; make this non-experimental ASAP.
+      builders {
+        name: "chromium/try/ios-device"
+        experiment_percentage: 10
+      }
+      # https://crbug.com/739556
+      builders {
+        name: "chromium/try/ios-device-xcode-clang"
+        experiment_percentage: 10
+      }
+      # https://crbug.com/739556
+      builders {
+        name: "chromium/try/ios-simulator-xcode-clang"
+        experiment_percentage: 10
+      }
+
+      retry_config {
+        single_quota: 1
+        global_quota: 2
+        failure_weight: 1
+        transient_failure_weight: 1
+        timeout_weight: 2
+      }
+    }
+  }
+}
+
+# Config group for tryjobs for branch-heads.
+# Will be removed when it has converged with
+# the refs/heads group.
+config_groups {
+  gerrit {
+    url: "https://chromium-review.googlesource.com"
+    projects {
+      name: "chromium/src"
+      ref_regexp: "refs/branch-heads/.+"
+    }
+  }
+  verifiers {
+    gerrit_cq_ability {
+      committer_list: "project-chromium-committers"
+      dry_run_access_list: "project-chromium-tryjob-access"
+    }
+    tree_status {
+      url: "https://chromium-status.appspot.com/"
+    }
+    tryjob {
+      # TODO(crbug/959436): enable it.
+      cancel_stale_tryjobs: NO
+      ###########################################
+      # Experimental builders for branch-heads. #
+      ###########################################
+      builders {
+        name: "chromium/try/linux-rel"
+        experiment_percentage: 100
+      }
+
+      retry_config {
+        single_quota: 1
+        global_quota: 2
+        failure_weight: 1
+        transient_failure_weight: 1
+        timeout_weight: 2
+      }
+    }
+  }
+}
+
+# NOTE: To add a new builder to the commit queue, see
+# https://chromium.googlesource.com/chromium/src/+/HEAD/docs/infra/cq.md#how-do-i-add-a-new-builder-to-the-cq
diff --git a/infra/config/generated/cr-buildbucket-dev.cfg b/infra/config/generated/cr-buildbucket-dev.cfg
new file mode 100644
index 0000000..192a573
--- /dev/null
+++ b/infra/config/generated/cr-buildbucket-dev.cfg
@@ -0,0 +1,207 @@
+# Defines buckets on cr-buildbucket-dev.appspot.com, used by to schedule builds
+# on buildbot. In particular, CQ uses some of these buckets to schedule tryjobs.
+#
+# See http://luci-config.appspot.com/schemas/projects:buildbucket.cfg for
+# schema of this file and documentation. Also see README.md in this dir.
+#
+# Please keep this list sorted by bucket name.
+
+acl_sets {
+  # This is pure-LUCI w/o buildbot.
+  name: "default"
+  acls {
+    role: READER
+    group: "all"
+  }
+  acls {
+    role: SCHEDULER
+    identity: "luci-scheduler-dev@appspot.gserviceaccount.com"
+  }
+}
+
+acl_sets {
+  name: "tryserver"
+  acls {
+    role: READER
+    group: "all"
+  }
+  acls {
+    role: SCHEDULER
+    group: "project-chromium-tryjob-access"
+  }
+  acls {
+    role: SCHEDULER
+    group: "service-account-cq"
+  }
+  acls {
+    role: SCHEDULER
+    identity: "findit-for-me@appspot.gserviceaccount.com"
+  }
+  acls {
+    role: WRITER
+    group: "service-account-chromium-tryserver"
+  }
+}
+
+builder_mixins {
+  name: "swarm-ci"
+  dimensions: "cpu:x86-64"
+  recipe {
+    name: "swarming/staging"
+    properties: "mastername:chromium.swarm"
+  }
+}
+
+builder_mixins {
+  name: "xcode-mac-9a235"
+  caches: {
+    name: "xcode_mac_9a235"
+    path: "xcode_mac_9a235.app"
+  }
+  recipe {
+    properties_j: <<END
+    $depot_tools/osx_sdk: {
+      "sdk_version": "9a235"
+    }
+    END
+  }
+}
+
+buckets {
+  name: "luci.chromium.ci"
+
+  acl_sets: "default"
+  acls {
+    role: SCHEDULER
+    # Support builder triggering other builders in the same bucket.
+    identity: "chromium-ci-builder-dev@chops-service-accounts.iam.gserviceaccount.com"
+  }
+  acls {
+    # Allow task force to bump next build number.
+    role: WRITER
+    group: "google/luci-task-force@google.com"
+  }
+
+  swarming {
+    hostname: "chromium-swarm-dev.appspot.com"
+
+    builder_defaults {
+      category: "Chromium"
+      execution_timeout_secs: 10800  # 3h
+      service_account: "chromium-ci-builder-dev@chops-service-accounts.iam.gserviceaccount.com"
+      swarming_tags: "vpython:native-python-wrapper"
+      build_numbers: YES
+      recipe {
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/master"
+        name: "chromium"
+      }
+    }
+    builders {
+      name: "Android N5 Swarm"
+      dimensions: "os:Ubuntu-16.04"
+      mixins: "swarm-ci"
+    }
+    builders {
+      name: "Android N5X Swarm"
+      dimensions: "os:Ubuntu-16.04"
+      mixins: "swarm-ci"
+    }
+    builders {
+      name: "ChromeOS Swarm"
+      dimensions: "os:Ubuntu-16.04"
+      mixins: "swarm-ci"
+    }
+    builders {
+      name: "Linux Swarm"
+      dimensions: "os:Ubuntu-16.04"
+      mixins: "swarm-ci"
+    }
+    builders {
+      name: "Mac Swarm"
+      dimensions: "os:Mac-10.13"
+      mixins: "swarm-ci"
+    }
+    builders {
+      name: "Windows Swarm"
+      dimensions: "os:Windows-10"
+      mixins: "swarm-ci"
+    }
+  }
+}
+
+buckets {
+    name: "luci.chromium.cron"
+    acl_sets: "default"
+    acls {
+      role: SCHEDULER
+      identity: "snapshot-builder@chops-service-accounts.iam.gserviceaccount.com"
+   }
+
+    swarming {
+      hostname: "chromium-swarm-dev.appspot.com"
+
+      builders {
+        name: "Snapshot Builder"
+        dimensions: "os:Ubuntu-16.04"
+        execution_timeout_secs: 3600
+        service_account: "snapshot-builder@chops-service-accounts.iam.gserviceaccount.com"
+        recipe {
+          cipd_package: "infra/recipe_bundles/chromium.googlesource.com/infra/infra"
+          cipd_version: "refs/heads/master"
+          name: "snapshots/builder"
+        }
+      }
+
+      builders {
+        name: "Snapshots"
+        execution_timeout_secs: 3600
+        recipe {
+          cipd_package: "infra/recipe_bundles/chromium.googlesource.com/infra/infra"
+          cipd_version: "refs/heads/master"
+          name: "snapshots/snapshot"
+        }
+      }
+    }
+}
+
+buckets {
+  name: "try"
+
+  acl_sets: "tryserver"
+
+  swarming {
+    hostname: "chromium-swarm-dev.appspot.com"
+
+    builder_defaults {
+      category: "Chromium CQ"
+      service_account: "chromium-try-builder-dev@chops-service-accounts.iam.gserviceaccount.com"
+      # Max. pending time for builds. CQ considers builds pending >2h as timed
+      # out: http://shortn/_8PaHsdYmlq. Keep this in sync.
+      expiration_secs: 7200 # 2h
+      execution_timeout_secs: 14400  # 4h
+      swarming_tags: "vpython:native-python-wrapper"
+      build_numbers: YES
+      # Adds dimension: "builder:<builder name>" to ensure builder affinity.
+      # To "assign" a bot to a builder, bot config of swarming service should
+      # add the same dimension to the bot.
+      auto_builder_dimension: YES
+      recipe {
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/master"
+        name: "chromium_trybot"
+        properties_j: "$kitchen:{\"git_auth\": true, \"devshell\": true}"
+      }
+    }
+
+    builders {
+      name: "mac_upload_clang"
+      dimensions: "os:Mac"
+      mixins: "xcode-mac-9a235"
+      recipe {
+        name: "chromium_upload_clang"
+        properties: "mastername:tryserver.chromium.mac"
+      }
+    }
+  }
+}
diff --git a/infra/config/generated/cr-buildbucket.cfg b/infra/config/generated/cr-buildbucket.cfg
new file mode 100644
index 0000000..415d8848
--- /dev/null
+++ b/infra/config/generated/cr-buildbucket.cfg
@@ -0,0 +1,5283 @@
+# Defines buckets on cr-buildbucket.appspot.com, used by to schedule builds
+# on buildbot. In particular, CQ uses some of these buckets to schedule tryjobs.
+#
+# See http://luci-config.appspot.com/schemas/projects:buildbucket.cfg for
+# schema of this file and documentation. Also see README.md in this dir.
+#
+# Please keep this list sorted by bucket name.
+
+acl_sets {
+  # This is pure-LUCI CI w/o buildbot.
+  name: "ci"
+  acls {
+    role: READER
+    group: "all"
+  }
+  acls {
+    role: SCHEDULER
+    group: "project-chromium-ci-schedulers"
+  }
+  acls {
+    # Allow task force to bump next build number.
+    role: WRITER
+    group: "google/luci-task-force@google.com"
+  }
+}
+
+acl_sets {
+  name: "tryserver"
+  acls {
+    role: READER
+    group: "all"
+  }
+  acls {
+    role: SCHEDULER
+    group: "project-chromium-tryjob-access"
+  }
+  acls {
+    role: SCHEDULER
+    group: "service-account-cq"
+  }
+  acls {
+    role: SCHEDULER
+    identity: "findit-for-me@appspot.gserviceaccount.com"
+  }
+  acls {
+    # Allow Pinpoint to trigger builds for bisection.
+    role: SCHEDULER
+    group: "service-account-chromeperf"
+  }
+  acls {
+    role: WRITER
+    group: "service-account-chromium-tryserver"
+  }
+}
+
+# CI builders (of which are few) may use high number of concurrent Goma jobs.
+builder_mixins {
+  name: "goma-many-jobs-for-ci"
+  # IMPORTANT: when
+  #  * bumping number of jobs below, or
+  #  * adding this mixin to many builders at once, or
+  #  * adding this mixin to a builder with many concurrent builds
+  # get review from Goma team.
+  recipe {
+    properties_j: "$build/goma:{\"jobs\": 500}"
+  }
+}
+
+# This is for tryservers becoming slow and critical path of patch landing.
+builder_mixins {
+  name: "goma-j150"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "jobs": 150
+    }
+    END
+  }
+}
+
+# This is for tryservers becoming very slow and critical path of patch landing.
+builder_mixins {
+  name: "goma-j300"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "jobs": 300
+    }
+    END
+  }
+}
+
+# This is for load testing of the execution backend.
+builder_mixins {
+  name: "goma-j1000"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "jobs": 1000
+    }
+    END
+  }
+}
+
+# This is for load testing of the execution backend.
+builder_mixins {
+  name: "goma-j2000"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "jobs": 2000
+    }
+    END
+  }
+}
+
+# This is for 4 cores mac. -j40 is too small, especially for clobber builder.
+builder_mixins {
+  name: "goma-j80"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "jobs": 80
+    }
+    END
+  }
+}
+
+# This is to enable Arbitrary Toolchain Support for Goma in a builder.
+builder_mixins {
+  name: "goma-ats"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "enable_ats": true
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Staging server host and backend in a builder.
+builder_mixins {
+  name: "goma-rbe-staging"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "staging-goma.chromium.org",
+      "rpc_extra_params": "?staging"
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Staging server host and backend in a builder, with
+# Arbitrary Toolchain Support.
+builder_mixins {
+  name: "goma-rbe-staging-ats"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "staging-goma.chromium.org",
+      "rpc_extra_params": "?staging",
+      "enable_ats": true
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Staging server host and backend in a builder, with
+# -j80.
+builder_mixins {
+  name: "goma-rbe-staging-j80"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "staging-goma.chromium.org",
+      "rpc_extra_params": "?staging",
+      "jobs": 80
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Prod backend in a builder.
+builder_mixins {
+  name: "goma-rbe-prod"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "goma.chromium.org",
+      "rpc_extra_params": "?prod"
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Prod backend in a builder, with Arbitrary Toolchain
+# Support.
+builder_mixins {
+  name: "goma-rbe-prod-ats"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "goma.chromium.org",
+      "rpc_extra_params": "?prod",
+      "enable_ats": true
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Prod backend in a builder, with -j80.
+builder_mixins {
+  name: "goma-rbe-prod-j80"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "goma.chromium.org",
+      "rpc_extra_params": "?prod",
+      "jobs": 80
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Prod backend in a builder, with -j150.
+builder_mixins {
+  name: "goma-rbe-prod-j150"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "goma.chromium.org",
+      "rpc_extra_params": "?prod",
+      "jobs": 150
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Prod backend in a builder, with -j300.
+builder_mixins {
+  name: "goma-rbe-prod-j300"
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "goma.chromium.org",
+      "rpc_extra_params": "?prod",
+      "jobs": 300
+    }
+    END
+  }
+}
+
+# Enables use of Goma RBE Prod backend in CI builders that use a high number of
+# concurrent Goma jobs.
+# Original mixin's description:
+#   CI builders (of which are few) may use high number of concurrent Goma jobs.
+builder_mixins {
+  name: "goma-rbe-prod-many-jobs-for-ci"
+  # IMPORTANT: when
+  #  * bumping number of jobs below, or
+  #  * adding this mixin to many builders at once, or
+  #  * adding this mixin to a builder with many concurrent builds
+  # get review from Goma team.
+  recipe {
+    properties_j: <<END
+    $build/goma: {
+      "server_host": "goma.chromium.org",
+      "rpc_extra_params": "?prod",
+      "jobs": 500
+    }
+    END
+  }
+}
+
+# The following android mixins don't nest the required swarming dimensions
+# since some android recipes expect to run on machines with devices attached
+# (os:Android) and some expect to run on device-less linux machines (os:Ubuntu)
+builder_mixins {
+  name: "android-try"
+  recipe {
+    properties: "mastername:tryserver.chromium.android"
+  }
+}
+builder_mixins {
+  name: "android-ci"
+  # TODO(tandrii): migrate to this gradually (current value of
+  # goma-many-jobs-for-ci is 500).
+  # mixins: "goma-many-jobs-for-ci"
+  recipe {
+    properties: "mastername:chromium.android"
+    properties_j: "$build/goma:{\"jobs\": 150}"
+  }
+}
+# Same as "android-ci" but uses Goma RBE backend.
+builder_mixins {
+  name: "android-ci-goma-rbe-prod"
+  # TODO(tandrii, sque): Migrate to "goma-rbe-prod-many-jobs-for-ci" gradually.
+  recipe {
+    properties: "mastername:chromium.android"
+  }
+  mixins: "goma-rbe-prod-j150"
+}
+
+builder_mixins {
+  # We have limited tablet capacity and thus limited ability to run
+  # tests in parallel, hence the high timeout.
+  name: "android-tablet-ci"
+  execution_timeout_secs: 28800 # 8 hours
+}
+
+builder_mixins {
+  name: "android-fyi-ci"
+  recipe {
+    properties: "mastername:chromium.android.fyi"
+  }
+}
+
+builder_mixins {
+  name: "android-angle-try"
+  mixins: "linux-xenial"
+  mixins: "angle-try"
+}
+
+builder_mixins {
+  name: "android-gpu-ci"
+  mixins: "linux-xenial"
+  mixins: "builderless"
+  recipe {
+    properties: "mastername:chromium.gpu"
+  }
+}
+
+builder_mixins {
+  name: "android-gpu-fyi-ci"
+  mixins: "linux-xenial"
+  mixins: "builderless"
+  mixins: "gpu-fyi-ci"
+  mixins: "gpu-slow-bot"
+}
+
+builder_mixins {
+  name: "android-gpu-fyi-ci-tester"
+  dimensions: "cores:2"
+  mixins: "linux-xenial"
+  mixins: "builderless"
+  mixins: "gpu-fyi-ci"
+  mixins: "gpu-slow-bot"
+}
+
+builder_mixins {
+  name: "android-optional-gpu-try"
+  mixins: "linux-xenial"
+  mixins: "android-try"
+  mixins: "gpu-optional-try"
+  mixins: "gpu-slow-bot"
+}
+
+builder_mixins {
+  name: "angle-try"
+  service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
+  recipe {
+    properties: "mastername:tryserver.chromium.angle"
+  }
+}
+
+builder_mixins {
+  name: "blink-try"
+  recipe {
+    properties: "mastername:tryserver.blink"
+  }
+}
+
+builder_mixins {
+  name: "celab"
+  recipe {
+    name: "celab"
+    # The version of CELab binaries to use for tests (cel_ctl & cel_agent).
+    properties: "celab_version:7R4C-DmIN8lwXvsToDcbG0pgyWcvJT-S-fu15NYkIdEC"
+    # This controls which tests to run (* is all tests).
+    # We might create more builders for different test sets later.
+    properties: "tests:*"
+  }
+}
+builder_mixins {
+  name: "celab-ci"
+  mixins: "celab"
+  recipe {
+    properties: "pool_name:celab-chromium-ci"
+    properties_j: "pool_size:10"
+  }
+}
+builder_mixins {
+  name: "celab-try"
+  mixins: "celab"
+  recipe {
+    properties: "pool_name:celab-chromium-try"
+    properties_j: "pool_size:10"
+  }
+}
+
+builder_mixins {
+  name: "clang-ci"
+  mixins: "builderless"
+  dimensions: "cores:"  # Mac uses 24 cores, Linux/Win uses 32 cores.
+  # Because these run ToT Clang, goma is not used.
+  # Naturally the runtime will be ~4-8h on average, depending on config.
+  # CFI builds will take even longer - around 11h.
+  execution_timeout_secs: 43200 # 12h.
+  recipe {
+    properties: "mastername:chromium.clang"
+    # Used for the "sizes" step.
+    properties: "perf_dashboard_machine_group:ChromiumClang"
+  }
+}
+
+builder_mixins {
+  name: "clang-linux-ci"
+  mixins: "clang-ci"
+  mixins: "linux-xenial"
+  dimensions: "cores:32"
+}
+
+builder_mixins {
+  name: "clang-mac-ci"
+  mixins: "clang-ci"
+  mixins: "mac"
+  dimensions: "cores:24"
+  dimensions: "ssd:1"
+}
+
+builder_mixins {
+  name: "clang-win-ci"
+  mixins: "clang-ci"
+  mixins: "win"
+  dimensions: "cores:32"
+}
+
+builder_mixins {
+  name: "clang-coverage"
+  recipe {
+    properties_j: <<END
+      $build/code_coverage: {
+        "use_clang_coverage": true
+      }
+    END
+  }
+}
+
+builder_mixins {
+  name: "clang-coverage-tot"
+  recipe {
+    name: "chromium_clang_coverage_tot"
+  }
+}
+
+builder_mixins {
+  name: "chromeos-ci"
+  # All CrOS building is done via cross-compilation on linux hosts, so use the
+  # linux mixin.
+  mixins: "linux-xenial"
+  recipe {
+    properties: "mastername:chromium.chromiumos"
+  }
+}
+
+builder_mixins {
+  name: "chromeos-try"
+  # All CrOS building is done via cross-compilation on linux hosts, so use the
+  # linux mixin.
+  mixins: "linux-xenial"
+  recipe {
+    properties: "mastername:tryserver.chromium.chromiumos"
+  }
+}
+
+builder_mixins {
+  name: "chromium-ci"
+  recipe {
+    properties: "mastername:chromium"
+  }
+}
+
+builder_mixins {
+  name: "clang-tidy"
+  recipe {
+    name: "tricium_analyze.py"
+  }
+}
+
+builder_mixins {
+  name: "code-coverage"
+  recipe {
+    name: "chromium"
+  }
+  mixins: "fyi-ci"
+  execution_timeout_secs: 72000 # 20h
+  service_account: "chromium-code-coverage-builder@chops-service-accounts.iam.gserviceaccount.com"
+}
+
+builder_mixins {
+  name: "dawn-ci"
+  service_account: "chromium-ci-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
+  recipe {
+    properties: "mastername:chromium.dawn"
+  }
+}
+
+builder_mixins {
+  name: "dawn-try"
+  service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
+  recipe {
+    properties: "mastername:tryserver.chromium.dawn"
+  }
+  # Remove the cores dimensions for this mixin so that VMs of differing sizes
+  # can be used.
+  # This works here only because we use auto_builder_dimensions,
+  # so that only the bots that were earmarked for the builders
+  # will be allowed to use them anyways.
+  dimensions: "cores:"
+}
+
+builder_mixins {
+  name: "fuzz-ci"
+  recipe {
+    properties: "mastername:chromium.fuzz"
+  }
+}
+
+builder_mixins {
+  name: "fyi-ci"
+  recipe {
+    properties: "mastername:chromium.fyi"
+  }
+  execution_timeout_secs: 36000 # 10h
+}
+
+builder_mixins {
+  name: "libfuzzer"
+  recipe {
+    name: "chromium_libfuzzer"
+  }
+}
+
+builder_mixins {
+  name: "deterministic"
+  recipe {
+    name: "swarming/deterministic_build"
+  }
+  execution_timeout_secs: 21600  # 2 x 3h for a double workload
+}
+
+builder_mixins {
+  name: "goma-ci"
+  recipe {
+    properties: "mastername:chromium.goma"
+  }
+}
+
+builder_mixins {
+  name: "gpu-fyi-ci"
+  service_account: "chromium-ci-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
+  recipe {
+    properties: "mastername:chromium.gpu.fyi"
+  }
+}
+
+builder_mixins {
+  name: "gpu-optional-try"
+  service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
+}
+
+builder_mixins {
+  name: "java-coverage"
+  recipe {
+    properties_j: <<END
+      $build/code_coverage: {
+        "use_java_coverage": true
+      }
+    END
+  }
+}
+
+builder_mixins {
+  name: "linux-trusty"
+  dimensions: "os:Ubuntu-14.04"
+}
+
+builder_mixins {
+  name: "linux-xenial"
+  dimensions: "os:Ubuntu-16.04"
+}
+
+builder_mixins {
+  name: "linux-angle-try"
+  mixins: "linux-xenial"
+  mixins: "angle-try"
+}
+
+builder_mixins {
+  name: "linux-dawn-ci-builder"
+  dimensions: "cores:8"
+  mixins: "builderless"
+  mixins: "dawn-ci"
+  mixins: "linux-xenial"
+}
+
+builder_mixins {
+  name: "linux-dawn-ci-tester"
+  dimensions: "cores:2"
+  mixins: "builderless"
+  mixins: "dawn-ci"
+  mixins: "linux-xenial"
+}
+
+builder_mixins {
+  name: "linux-dawn-try"
+  mixins: "linux-xenial"
+  mixins: "dawn-try"
+}
+
+builder_mixins {
+  name: "linux-debug-cache"
+  caches: {
+    name: "builder"
+    path: "linux_debug"
+  }
+}
+
+builder_mixins {
+  name: "linux-optional-gpu-try"
+  mixins: "linux-xenial-try"
+  mixins: "gpu-optional-try"
+  mixins: "gpu-slow-bot"
+}
+
+builder_mixins {
+  name: "linux-xenial-try"
+  mixins: "linux-xenial"
+  recipe {
+    properties: "mastername:tryserver.chromium.linux"
+  }
+}
+
+builder_mixins {
+  name: "linux-try"
+  mixins: "linux-xenial"
+  recipe {
+    properties: "mastername:tryserver.chromium.linux"
+  }
+}
+
+builder_mixins {
+  name: "mac-dawn-ci"
+  mixins: "mac"
+  mixins: "dawn-ci"
+}
+
+builder_mixins {
+  name: "memory-ci"
+  mixins: "goma-many-jobs-for-ci"
+  recipe {
+    properties: "mastername:chromium.memory"
+  }
+}
+
+# Counterpart of "memory-ci" that uses Goma RBE Prod server.
+builder_mixins {
+  name: "memory-ci-goma-rbe-prod"
+  mixins: "goma-rbe-prod-many-jobs-for-ci"
+  recipe {
+    properties: "mastername:chromium.memory"
+  }
+}
+
+builder_mixins {
+  name: "linux-ci"
+  mixins: "linux-xenial"
+  mixins: "goma-many-jobs-for-ci"
+  recipe {
+    properties: "mastername:chromium.linux"
+  }
+}
+
+# Counterpart of "linux-ci" that uses Goma RBE Prod server.
+builder_mixins {
+  name: "linux-ci-goma-rbe-prod"
+  mixins: "linux-xenial"
+  mixins: "goma-rbe-prod-many-jobs-for-ci"
+  recipe {
+    properties: "mastername:chromium.linux"
+  }
+}
+
+builder_mixins {
+  name: "linux-gpu-ci-builder"
+  dimensions: "cores:8"
+  mixins: "builderless"
+  mixins: "linux-xenial"
+  recipe {
+    properties: "mastername:chromium.gpu"
+  }
+}
+
+builder_mixins {
+  name: "linux-gpu-ci-tester"
+  dimensions: "cores:2"
+  mixins: "builderless"
+  mixins: "linux-xenial"
+  recipe {
+    properties: "mastername:chromium.gpu"
+  }
+}
+
+builder_mixins {
+  name: "linux-gpu-fyi-ci-builder"
+  dimensions: "cores:8"
+  mixins: "builderless"
+  mixins: "gpu-fyi-ci"
+  mixins: "gpu-slow-bot"
+  mixins: "linux-xenial"
+}
+
+builder_mixins {
+  name: "linux-gpu-fyi-ci-tester"
+  dimensions: "cores:2"
+  mixins: "builderless"
+  mixins: "gpu-fyi-ci"
+  mixins: "gpu-slow-bot"
+  mixins: "linux-xenial"
+}
+
+builder_mixins {
+  name: "mac"
+  dimensions: "os:Mac"
+  # Macs tend to have a variety of cores.
+  # Mac Minis - 4 cores.
+  # Mac VMs - 8 cores.
+  # Mac Pros - 24 cores.
+  # Pools often mix Minis and VMs together.
+  # Remove the cores dimensions for this mixin so that mixed pools work.
+  # This works here only because we use auto_builder_dimensions,
+  # so that only the bots that were earmarked for the builders
+  # will be allowed to use them anyways.
+  dimensions: "cores:"
+}
+
+builder_mixins {
+  name: "mac-angle-try"
+  mixins: "mac"
+  mixins: "angle-try"
+}
+
+builder_mixins {
+  name: "mac-dawn-try"
+  mixins: "mac"
+  mixins: "dawn-try"
+}
+
+builder_mixins {
+  name: "mac-optional-gpu-try"
+  mixins: "mac-try"
+  mixins: "gpu-optional-try"
+  mixins: "gpu-slow-bot"
+}
+
+builder_mixins {
+  name: "mac-try"
+  mixins: "mac"
+  # mac bots may run both on Mac Minis with cores:4 and VMs with cores:8.
+  dimensions: "cores:"
+  recipe {
+    properties: "mastername:tryserver.chromium.mac"
+  }
+}
+
+builder_mixins {
+  name: "mac-ci"
+  mixins: "mac"
+  recipe {
+    properties: "mastername:chromium.mac"
+  }
+}
+
+builder_mixins {
+  name: "xcode-caches"
+  caches: {
+    # Cache for Xcode 11 (build version 11a420a) needed for iOS builds.
+    name: "xcode_ios_11a420a"
+    path: "xcode_ios_11a420a.app"
+  }
+}
+
+builder_mixins {
+  name: "xcode-10-caches"
+  caches: {
+    # Cache for Xcode 10 (build version 10e1001)
+    name: "xcode_ios_10e1001"
+    path: "xcode_ios_10e1001.app"
+  }
+}
+
+builder_mixins {
+  name: "xcode-mac-9a235"
+  caches: {
+    name: "xcode_mac_9a235"
+    path: "xcode_mac_9a235.app"
+  }
+  recipe {
+    properties_j: <<END
+    $depot_tools/osx_sdk: {
+      "sdk_version": "9a235"
+    }
+    END
+  }
+}
+
+builder_mixins {
+  name: "ios"
+  mixins: "mac"
+  mixins: "xcode-caches"
+}
+
+builder_mixins {
+  name: "ios-ci"
+  mixins: "ios"
+  mixins: "mac-ci"
+  # ios bots may run both on Mac Minis with cores:4 and VMs with cores:8.
+  dimensions: "cores:"
+  recipe {
+    name: "ios/unified_builder_tester"
+  }
+}
+
+builder_mixins {
+  name: "ios-try"
+  mixins: "ios"
+  mixins: "mac-try"
+  recipe {
+    name: "ios/try"
+  }
+}
+
+builder_mixins {
+  name: "ios-webrtc"
+  dimensions: "os:Mac"
+  recipe { name: "webrtc/chromium_ios" }
+}
+
+builder_mixins {
+  name: "mac-gpu-ci"
+  mixins: "mac"
+  recipe {
+    properties: "mastername:chromium.gpu"
+  }
+}
+
+builder_mixins {
+  name: "mac-gpu-fyi-ci"
+  mixins: "mac"
+  mixins: "gpu-fyi-ci"
+  mixins: "gpu-slow-bot"
+  dimensions: "cores:4"
+}
+
+builder_mixins {
+  name: "win"
+  dimensions: "os:Windows"
+}
+
+builder_mixins {
+  name: "win10"
+  dimensions: "os:Windows-10"
+}
+
+builder_mixins {
+  name: "win-angle-try"
+  mixins: "win"
+  mixins: "angle-try"
+}
+
+builder_mixins {
+  name: "win-optional-gpu-try"
+  mixins: "win-try"
+  mixins: "gpu-optional-try"
+  mixins: "gpu-slow-bot"
+}
+
+builder_mixins {
+  name: "win-try"
+  mixins: "win"
+  recipe {
+    properties: "mastername:tryserver.chromium.win"
+  }
+}
+
+builder_mixins {
+  name: "win-ci"
+  mixins: "win"
+  recipe {
+    properties: "mastername:chromium.win"
+  }
+}
+
+builder_mixins {
+  name: "win-dawn-ci"
+  mixins: "builderless"
+  mixins: "dawn-ci"
+  mixins: "win"
+}
+
+builder_mixins {
+  name: "win-dawn-try"
+  mixins: "win"
+  mixins: "dawn-try"
+}
+
+builder_mixins {
+  name: "win-gpu-ci"
+  mixins: "win"
+  mixins: "builderless"
+  recipe {
+    properties: "mastername:chromium.gpu"
+  }
+}
+
+# GPU bots sometimes run very long tests on a small number of machines
+# or even a single tester. The regular timeout isn't enough on some of
+# these so double the standard timeout.
+builder_mixins {
+  name: "gpu-slow-bot"
+  execution_timeout_secs: 21600  # 2 x 3h for a double workload
+}
+
+builder_mixins {
+  name: "win-gpu-fyi-ci"
+  mixins: "win"
+  mixins: "builderless"
+  mixins: "gpu-fyi-ci"
+}
+
+builder_mixins {
+  name: "findit"
+  mixins: "goma-many-jobs-for-ci"
+  recipe {
+    name: "findit/chromium/compile"
+  }
+}
+
+builder_mixins {
+  name: "upload_clang"
+  recipe {
+    name: "chromium_upload_clang"
+  }
+}
+
+builder_mixins {
+  name: "builderless"
+  auto_builder_dimension: NO
+  dimensions: "builderless:1"
+  dimensions: "ssd:0"
+}
+
+buckets {
+  name: "ci"
+  acl_sets: "ci"
+
+  swarming {
+    hostname: "chromium-swarm.appspot.com"
+    builder_defaults {
+      dimensions: "cores:8"
+      dimensions: "cpu:x86-64"
+      service_account: "chromium-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
+      execution_timeout_secs: 10800  # 3h
+      swarming_tags: "vpython:native-python-wrapper"
+      build_numbers: YES
+      # Adds dimension: "builder:<builder name>" to ensure builder affinity.
+      # To "assign" a bot to a builder, bot config of swarming service should
+      # add the same dimension to the bot.
+      auto_builder_dimension: YES
+      recipe {
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/master"
+        name: "chromium"
+        properties_j: "$kitchen:{\"git_auth\": true, \"devshell\": true}"
+      }
+    }
+
+    # Keep builders sorted by target OS, then name.
+
+    # Android bots.
+    builders {
+      name: "Android arm Builder (dbg)"
+      mixins: "android-ci"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+      execution_timeout_secs: 14400  # 4h
+    }
+
+    builders {
+      name: "Android arm64 Builder (dbg)"
+      mixins: "android-ci"
+      mixins: "builderless"
+      mixins: "goma-many-jobs-for-ci"
+      mixins: "linux-xenial"
+      execution_timeout_secs: 14400  # 4h
+    }
+
+    builders {
+      name: "Android ASAN (dbg)"
+      mixins: "android-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-bfcache-debug"
+      mixins: "builderless"
+      mixins: "android-fyi-ci"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "Android FYI 32 dEQP Vk Release (Pixel 2)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI 32 Vk Release (Pixel 2)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI 64 dEQP Vk Release (Pixel 2)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI 64 Perf (Pixel 2)"
+      mixins: "android-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Android FYI 64 Vk Release (Pixel 2)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI dEQP Release (Nexus 5X)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI Release (Nexus 5)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI Release (Nexus 5X)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI Release (Nexus 6)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI Release (Nexus 6P)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI Release (Nexus 9)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI Release (NVIDIA Shield TV)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI Release (Pixel 2)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI SkiaRenderer GL (Nexus 5X)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android FYI SkiaRenderer Vulkan (Pixel 2)"
+      mixins: "android-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android Release (Nexus 5X)"
+      mixins: "android-gpu-ci"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Android WebView L (dbg)"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "Android WebView M (dbg)"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "Android WebView N (dbg)"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "Android WebView O (dbg)"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "Android WebView P (dbg)"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "Android WebView P FYI (rel)"
+      mixins: "android-fyi-ci"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "Android x64 Builder (dbg)"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+      execution_timeout_secs: 14400  # 4h
+    }
+
+    builders {
+      name: "Android x86 Builder (dbg)"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "android-asan"
+      mixins: "builderless"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "android-avd-packager"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      service_account: "chromium-cipd-builder@chops-service-accounts.iam.gserviceaccount.com"
+      recipe {
+        name: "android/avd_packager"
+        properties_j: <<END
+          avd_configs: [
+            "tools/android/avd/proto/generic_android23.textpb",
+            "tools/android/avd/proto/generic_android28.textpb"
+          ]
+        END
+      }
+    }
+
+    builders {
+      name: "android-code-coverage"
+      mixins: "code-coverage"
+      mixins: "java-coverage"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      dimensions: "cores:32"
+      dimensions: "ssd:1"
+    }
+
+    builders {
+      name: "android-cronet-arm-dbg"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-arm-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-arm64-dbg"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-arm64-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-asan-arm-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-kitkat-arm-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-lollipop-arm-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-marshmallow-arm64-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-marshmallow-arm64-perf-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      # Runs on a specific machine with an attached phone.
+      dimensions: "cores:"
+      dimensions: "cpu:"
+      dimensions: "os:Android"
+      recipe {
+        name: "cronet"
+      }
+    }
+
+    builders {
+      name: "android-cronet-x86-dbg"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-cronet-x86-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-incremental-dbg"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-jumbo-rel"
+      mixins: "android-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-kitkat-arm-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "android-marshmallow-arm64-rel"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "android-marshmallow-x86-fyi-rel"
+      mixins: "android-fyi-ci"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "android-mojo-webview-rel"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "android-pie-arm64-rel"
+      mixins: "android-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "android-sdk-packager"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      service_account: "chromium-cipd-builder@chops-service-accounts.iam.gserviceaccount.com"
+      recipe {
+        name: "android/sdk_packager"
+        # We still package part of build-tools;25.0.2 to support
+        # http://bit.ly/2KNUygZ
+        properties_j: <<END
+          packages: [
+            {
+              "sdk_package_name": "build-tools;25.0.2",
+              "cipd_yaml": "third_party/android_sdk/cipd/build-tools/25.0.2.yaml"
+            },
+            {
+              "sdk_package_name": "build-tools;27.0.3",
+              "cipd_yaml": "third_party/android_sdk/cipd/build-tools/27.0.3.yaml"
+            },
+            {
+              "sdk_package_name": "build-tools;29.0.2",
+              "cipd_yaml": "third_party/android_sdk/cipd/build-tools/29.0.2.yaml"
+            },
+            {
+              "sdk_package_name": "emulator",
+              "cipd_yaml": "third_party/android_sdk/cipd/emulator.yaml"
+            },
+            {
+              "sdk_package_name": "extras;google;gcm",
+              "cipd_yaml": "third_party/android_sdk/cipd/extras/google/gcm.yaml"
+            },
+            {
+              "sdk_package_name": "patcher;v4",
+              "cipd_yaml": "third_party/android_sdk/cipd/patcher/v4.yaml"
+            },
+            {
+              "sdk_package_name": "platforms;android-23",
+              "cipd_yaml": "third_party/android_sdk/cipd/platforms/android-23.yaml"
+            },
+            {
+              "sdk_package_name": "platforms;android-28",
+              "cipd_yaml": "third_party/android_sdk/cipd/platforms/android-28.yaml"
+            },
+            {
+              "sdk_package_name": "platforms;android-29",
+              "cipd_yaml": "third_party/android_sdk/cipd/platforms/android-29.yaml"
+            },
+            {
+              "sdk_package_name": "platform-tools",
+              "cipd_yaml": "third_party/android_sdk/cipd/platform-tools.yaml"
+            },
+            {
+              "sdk_package_name": "sources;android-28",
+              "cipd_yaml": "third_party/android_sdk/cipd/sources/android-28.yaml"
+            },
+            {
+              "sdk_package_name": "sources;android-29",
+              "cipd_yaml": "third_party/android_sdk/cipd/sources/android-29.yaml"
+            },
+            {
+              "sdk_package_name": "system-images;android-23;google_apis;x86",
+              "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-23/google_apis/x86.yaml"
+            },
+            {
+              "sdk_package_name": "system-images;android-28;google_apis;x86",
+              "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-28/google_apis/x86.yaml"
+            },
+            {
+              "sdk_package_name": "system-images;android-29;google_apis;x86",
+              "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-29/google_apis/x86.yaml"
+            },
+            {
+              "sdk_package_name": "tools",
+              "cipd_yaml": "third_party/android_sdk/cipd/tools.yaml"
+            }
+          ]
+        END
+      }
+    }
+
+    builders {
+      name: "Cast Android (dbg)"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Deterministic Android"
+      mixins: "deterministic"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Deterministic Android (dbg)"
+      mixins: "deterministic"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "GPU FYI Perf Android 64 Builder"
+      mixins: "android-gpu-fyi-ci"
+    }
+
+    builders {
+      name: "KitKat Phone Tester (dbg)"
+      mixins: "android-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "KitKat Tablet Tester"
+      mixins: "android-ci"
+      mixins: "android-tablet-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Lollipop Phone Tester"
+      mixins: "android-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Lollipop Tablet Tester"
+      mixins: "android-ci"
+      mixins: "android-tablet-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Marshmallow 64 bit Tester"
+      mixins: "android-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Marshmallow Tablet Tester"
+      mixins: "android-ci"
+      mixins: "android-tablet-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Nougat Phone Tester"
+      mixins: "android-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    # ChromeOS bots.
+    builders {
+      name: "chromeos-amd64-generic-asan-rel"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "chromeos-amd64-generic-cfi-thin-lto-rel"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "chromeos-amd64-generic-dbg"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "chromeos-amd64-generic-rel"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "chromeos-amd64-generic-rel-vm-tests"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "chromeos-arm-generic-dbg"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "chromeos-arm-generic-rel"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "chromeos-vm-code-coverage"
+      mixins: "code-coverage"
+      mixins: "clang-coverage"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      dimensions: "cores:32"
+      dimensions: "ssd:1"
+    }
+
+    builders {
+      name: "chromeos-kevin-rel-hw-tests"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "chromeos-kevin-rel"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "linux-chromeos-code-coverage"
+      mixins: "code-coverage"
+      mixins: "clang-coverage"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      dimensions: "cores:32"
+      dimensions: "ssd:1"
+    }
+
+    builders {
+      name: "linux-chromeos-dbg"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "linux-chromeos-rel"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Linux ChromiumOS Full"
+      mixins: "chromeos-ci"
+      mixins: "builderless"
+    }
+
+    # Fuchsia bots.
+    builders {
+      name: "Fuchsia ARM64"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "fuchsia-arm64-cast"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "fuchsia-x64-dbg"
+      mixins: "linux-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Fuchsia x64"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "fuchsia-x64-cast"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "fuchsia-fyi-arm64-rel"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "fuchsia-fyi-x64-dbg"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "fuchsia-fyi-x64-rel"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Deterministic Fuchsia (dbg)"
+      mixins: "builderless"
+      mixins: "deterministic"
+      mixins: "linux-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+    }
+
+    # Linux bots.
+    builders {
+      name: "Cast Audio Linux"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+      dimensions: "ssd:1"
+    }
+
+    builders {
+      name: "Cast Linux"
+      mixins: "linux-ci"
+      mixins: "builderless"
+      recipe {
+        properties_j: <<END
+        $build/goma: {
+          "server_host": "goma.chromium.org",
+          "rpc_extra_params": "?prod",
+          "jobs": 50
+        }
+        END
+      }
+    }
+
+    builders {
+      name: "Deterministic Linux"
+      mixins: "deterministic"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Deterministic Linux (dbg)"
+      mixins: "deterministic"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+
+      # This builder does local build, so needs large number of cores.
+      dimensions: "cores:32"
+    }
+
+    builders {
+      name: "Leak Detection Linux"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Linux ASan LSan Builder"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      dimensions: "ssd:1"
+    }
+
+    builders {
+      name: "Linux ASan LSan Tests (1)"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Linux ASan Tests (sandboxed)"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "linux-trusty-rel"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+      mixins: "linux-trusty"
+    }
+
+    builders {
+      name: "Linux Builder"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Linux Tests"
+      mixins: "linux-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "linux-blink-animation-use-time-delta"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "linux-blink-heap-concurrent-marking-tsan-rel"
+      mixins: "fyi-ci"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "linux-blink-heap-verification"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "linux_chromium_component_updater"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+      recipe {
+        name: "findit/chromium/update_components"
+      }
+      service_account: "component-mapping-updater@chops-service-accounts.iam.gserviceaccount.com"
+    }
+
+    builders {
+      name: "linux-chromium-tests-staging-builder"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "linux-chromium-tests-staging-tests"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "linux-gcc-rel"
+      mixins: "linux-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "linux-jumbo-rel"
+      mixins: "linux-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "linux-ozone-rel"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "linux-bfcache-debug"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "linux-oor-cors-rel"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "linux-fieldtrial-rel"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+    }
+
+    builders {
+      name: "linux-wpt-fyi-rel"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      experimental: YES
+    }
+
+    builders {
+      name: "Linux Builder (dbg)"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Linux Builder (dbg)(32)"
+      mixins: "linux-ci-goma-rbe-prod"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Linux Tests (dbg)(1)"
+      mixins: "linux-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Linux TSan Builder"
+      mixins: "linux-xenial"
+      mixins: "memory-ci"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "Linux TSan Tests"
+      mixins: "linux-xenial"
+      mixins: "memory-ci"
+      mixins: "builderless"
+    }
+
+    # chromium.gpu
+    builders {
+      name: "GPU Linux Builder"
+      mixins: "linux-gpu-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "GPU Linux Builder (dbg)"
+      mixins: "linux-gpu-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Linux Debug (NVIDIA)"
+      mixins: "linux-gpu-ci-tester"
+    }
+
+    builders {
+      name: "Linux Release (NVIDIA)"
+      mixins: "linux-gpu-ci-tester"
+    }
+
+    # chromium.gpu.fyi
+    builders {
+      name: "GPU FYI Linux Builder"
+      mixins: "linux-gpu-fyi-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "GPU FYI Linux Builder (dbg)"
+      mixins: "linux-gpu-fyi-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "GPU FYI Linux Ozone Builder"
+      mixins: "linux-gpu-fyi-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "GPU FYI Linux dEQP Builder"
+      mixins: "linux-gpu-fyi-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Linux FYI Experimental Release (Intel HD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI Experimental Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI Debug (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI dEQP Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI SkiaRenderer Vulkan (Intel HD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI SkiaRenderer Vulkan (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI Release (Intel HD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI Release (Intel UHD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+      # TODO(https://crbug.com/986939): Remove this increased timeout once more
+      # devices are added.
+      execution_timeout_secs: 64800 # 18h.
+    }
+
+    builders {
+      name: "Linux FYI dEQP Release (Intel HD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI GPU TSAN Release"
+      # Builder/tester, thus needs more cores
+      mixins: "linux-gpu-fyi-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+
+    builders {
+      name: "Linux FYI Release (AMD R7 240)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    builders {
+      name: "Linux FYI Ozone (Intel)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    # Mac bots.
+    builders {
+      name: "mac-jumbo-rel"
+      mixins: "mac-ci"
+      dimensions: "cores:4"
+    }
+    builders {
+      name: "mac-mojo-rel"
+      mixins: "mac"
+      mixins: "fyi-ci"
+      dimensions: "cores:4"
+    }
+
+    builders {
+      name: "Mac Builder"
+      mixins: "mac-ci"
+      dimensions:"os:Mac-10.13"
+    }
+    builders {
+      name: "Mac10.10 Tests"
+      mixins: "mac-ci"
+      # The build runs on 10.13, but triggers tests on 10.10 bots.
+      dimensions:"os:Mac-10.13"
+    }
+    builders {
+      name: "Mac10.11 Tests"
+      mixins: "mac-ci"
+      # The build runs on 10.13, but triggers tests on 10.11 bots.
+      dimensions:"os:Mac-10.13"
+    }
+    builders {
+      name: "Mac10.12 Tests"
+      mixins: "mac-ci"
+      dimensions:"os:Mac-10.12"
+    }
+    builders {
+      name: "Mac10.13 Tests"
+      mixins: "mac-ci"
+      dimensions:"os:Mac-10.13"
+    }
+    builders {
+      name: "Mac Builder (dbg)"
+      mixins: "mac-ci"
+    }
+    builders {
+      name: "Mac10.13 Tests (dbg)"
+      mixins: "mac-ci"
+    }
+
+
+    # Note that the Mac testers are thin Linux VMs, triggering jobs on the
+    # physical Mac hardware in the Swarming pool, and therefore use the
+    # linux-gpu-ci-tester mixin.
+    builders {
+      name: "GPU Mac Builder"
+      mixins: "mac-gpu-ci"
+    }
+    builders {
+      name: "Mac Release (Intel)"
+      mixins: "linux-gpu-ci-tester"
+    }
+    builders {
+      name: "Mac Retina Release (AMD)"
+      mixins: "linux-gpu-ci-tester"
+    }
+
+    builders {
+      name: "GPU Mac Builder (dbg)"
+      mixins: "mac-gpu-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Mac Debug (Intel)"
+      mixins: "linux-gpu-ci-tester"
+    }
+    builders {
+      name: "Mac Retina Debug (AMD)"
+      mixins: "linux-gpu-ci-tester"
+    }
+
+    # chromium.gpu.fyi
+    builders {
+      name: "GPU FYI Mac Builder"
+      mixins: "mac-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "GPU FYI Mac Builder (dbg)"
+      mixins: "mac-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "GPU FYI Mac dEQP Builder"
+      mixins: "mac-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+    # Note that the Mac testers are all thin Linux VMs, triggering jobs on the
+    # physical Mac hardware in the Swarming pool, and therefore use the
+    # linux-gpu-fyi-ci-tester mixin.
+    builders {
+      name: "Mac FYI 10.14 Release (AMD)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI 10.14 Release (Intel)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI 10.14 Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Release (Intel)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Debug (Intel)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac Pro FYI Release (AMD)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Retina Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Retina Debug (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Retina Release (AMD)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Retina Debug (AMD)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Experimental Release (Intel)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Experimental Retina Release (AMD)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI Experimental Retina Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+      # This bot has one machine backing its tests at the moment.
+      # If it gets more, this should be switched back to gpu-slow-bot.
+      # See crbug.com/853307 for more context.
+      execution_timeout_secs: 43200  # 12h
+    }
+    builders {
+      name: "Mac FYI GPU ASAN Release"
+      # Builder/tester, thus needs Mac (not Linux like testers-only)
+      mixins: "mac-gpu-fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Mac FYI dEQP Release AMD"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Mac FYI dEQP Release Intel"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    # iOS bots.
+    builders { mixins: "ios-ci" name: "ios-device" }
+    builders { mixins: "ios-ci" name: "ios-device-xcode-clang" }
+    builders { mixins: "ios-ci" name: "ios-simulator" }
+    builders { mixins: "ios-ci" name: "ios-simulator-full-configs" }
+    builders { mixins: "ios-ci" name: "ios-simulator-noncq" }
+    builders { mixins: "ios-ci" name: "ios-simulator-xcode-clang" }
+    builders { mixins: "ios-ci" name: "ios-slimnav" }
+    builders { mixins: "ios-ci" mixins: "fyi-ci" name: "ios-simulator-cronet" }
+    builders { mixins: "ios-ci" mixins: "fyi-ci" name: "ios12-beta-simulator" }
+    builders { mixins: "ios-ci" mixins: "fyi-ci" name: "ios13-beta-simulator" }
+    builders { mixins: "ios-ci" mixins: "fyi-ci" name: "ios13-sdk-device" }
+    builders { mixins: "ios-ci" mixins: "fyi-ci" name: "ios13-sdk-simulator" }
+
+    # Win bots.
+    builders {
+      name: "win-asan"
+      dimensions: "os:Windows-10"
+      dimensions: "cores:32"
+      mixins: "memory-ci"
+    }
+    builders {
+      name: "win-jumbo-rel"
+      mixins: "win-ci"
+    }
+    builders {
+      name: "win-celab-builder-rel"
+      mixins: "celab-ci"
+      mixins: "win-ci"
+    }
+    builders {
+      name: "win-celab-tester-rel"
+      mixins: "celab-ci"
+      mixins: "win-ci"
+    }
+    builders {
+      name: "win-pixel-builder-rel"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "win-pixel-tester-rel"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "win32-arm64-rel"
+      dimensions: "os:Windows-10"
+      dimensions: "cpu:x86"
+      mixins: "fyi-ci"
+      mixins: "goma-j150"
+    }
+
+    builders {
+      name: "Win Builder"
+      mixins: "win-ci"
+      dimensions: "cores:32"
+    }
+    builders {
+      name: "Win Builder (dbg)"
+      mixins: "win-ci"
+      dimensions: "cores:32"
+    }
+    builders {
+      name: "Win x64 Builder"
+      mixins: "win-ci"
+      dimensions: "os:Windows"
+      dimensions: "cpu:x86-64"
+      dimensions: "cores:32"
+    }
+    builders {
+      name: "Win x64 Builder (dbg)"
+      mixins: "win-ci"
+      dimensions: "cores:32"
+      dimensions: "os:Windows"
+    }
+    builders {
+      name: "Win7 (32) Tests"
+      mixins: "win-ci"
+      dimensions: "os:Windows-7"
+    }
+    builders {
+      name: "Win7 Tests (1)"
+      mixins: "win-ci"
+      dimensions: "os:Windows-7"
+    }
+    builders {
+      name: "Win7 Tests (dbg)(1)"
+      mixins: "win-ci"
+      dimensions: "os:Windows-7"
+    }
+    builders {
+      name: "Win 7 Tests x64 (1)"
+      mixins: "win-ci"
+      dimensions: "os:Windows-7"
+      dimensions: "cpu:x86-64"
+      dimensions: "cores:8"
+    }
+    builders {
+      name: "Win10 Tests x64"
+      mixins: "win-ci"
+      dimensions: "os:Windows-10"
+      dimensions: "cpu:x86-64"
+      dimensions: "cores:8"
+    }
+    builders {
+      name: "Win10 Tests x64 1803"
+      mixins: "fyi-ci"
+      dimensions: "os:Windows-10"
+      dimensions: "cpu:x86-64"
+      dimensions: "cores:8"
+    }
+    builders {
+      name: "Win10 Tests x64 (dbg)"
+      mixins: "win-ci"
+      dimensions: "os:Windows-10"
+      dimensions: "cpu:x86-64"
+      dimensions: "cores:8"
+    }
+    builders {
+      name: "Windows deterministic"
+      dimensions: "os:Windows-10"
+      mixins: "win-ci"
+      mixins: "deterministic"
+    }
+
+    # chromium.clang
+    builders {
+      name: "CFI Linux CF"
+      mixins: "clang-linux-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "CFI Linux ToT"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "CrWinAsan"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "CrWinAsan(dll)"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTAndroid"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTAndroid (dbg)"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTAndroid x64"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTAndroid64"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTAndroidASan"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTAndroidCFI"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTAndroidOfficial"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTLinux"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTLinux (dbg)"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTLinuxASan"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTLinuxASanLibfuzzer"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTLinuxCoverage"
+      mixins: "clang-linux-ci"
+      mixins: "clang-coverage-tot"
+    }
+    builders {
+      name: "ToTLinuxMSan"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTLinuxTSan"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTLinuxThinLTO"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTLinuxUBSanVptr"
+      mixins: "clang-linux-ci"
+    }
+    builders {
+      name: "ToTMac"
+      mixins: "clang-mac-ci"
+    }
+    builders {
+      name: "ToTMac (dbg)"
+      mixins: "clang-mac-ci"
+    }
+    builders {
+      name: "ToTMacASan"
+      mixins: "clang-mac-ci"
+    }
+    builders {
+      name: "ToTMacCoverage"
+      mixins: "clang-mac-ci"
+      mixins: "clang-coverage-tot"
+    }
+    builders {
+      name: "ToTWin(dbg)"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTWin(dll)"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTWin64(dbg)"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTWin64(dll)"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTWinASanLibfuzzer"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTWinCFI"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTWinCFI64"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTWinLibcxx64"
+      mixins: "clang-win-ci"
+    }
+    builders {
+      name: "ToTiOS"
+      mixins: "clang-mac-ci"
+      mixins: "ios"
+      recipe {
+        name: "ios/unified_builder_tester"
+      }
+    }
+    builders {
+      name: "ToTiOSDevice"
+      mixins: "clang-mac-ci"
+      mixins: "ios"
+      recipe {
+        name: "ios/unified_builder_tester"
+      }
+    }
+    builders {
+      name: "UBSanVptr Linux"
+      mixins: "clang-linux-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "linux-win_cross-rel"
+      mixins: "clang-linux-ci"
+    }
+
+    # chromium.gpu
+    builders {
+      name: "GPU Win x64 Builder"
+      mixins: "win-gpu-ci"
+    }
+    builders {
+      name: "GPU Win x64 Builder (dbg)"
+      mixins: "win-gpu-ci"
+    }
+    # Note that the Win testers are all thin Linux VMs, triggering jobs on the
+    # physical Win hardware in the Swarming pool, and therefore use the
+    # linux-gpu-ci-tester mixin.
+    builders {
+      name: "Win10 x64 Debug (NVIDIA)"
+      mixins: "linux-gpu-ci-tester"
+    }
+    builders {
+      name: "Win10 x64 Release (NVIDIA)"
+      mixins: "linux-gpu-ci-tester"
+    }
+    # chromium.gpu.fyi
+    builders {
+      name: "GPU FYI Win Builder"
+      mixins: "win-gpu-fyi-ci"
+    }
+    builders {
+      name: "GPU FYI Win Builder (dbg)"
+      mixins: "win-gpu-fyi-ci"
+    }
+    builders {
+      name: "GPU FYI Win dEQP Builder"
+      mixins: "win-gpu-fyi-ci"
+    }
+    builders {
+      name: "GPU FYI Win x64 Builder"
+      mixins: "win-gpu-fyi-ci"
+    }
+    builders {
+      name: "GPU FYI Win x64 Builder (dbg)"
+      mixins: "win-gpu-fyi-ci"
+    }
+    builders {
+      name: "GPU FYI Win x64 dEQP Builder"
+      mixins: "win-gpu-fyi-ci"
+    }
+    builders {
+      name: "GPU FYI XR Win x64 Builder"
+      mixins: "win-gpu-fyi-ci"
+    }
+    # Note that the Win testers are all thin Linux VMs, triggering jobs on the
+    # physical Win hardware in the Swarming pool, and therefore use the
+    # linux-gpu-fyi-ci-tester mixin.
+    builders {
+      name: "Win10 FYI x64 Debug (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x64 Exp Release (Intel HD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x64 Exp Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x64 Release (AMD RX 550)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x64 Release (Intel HD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x64 Release (Intel UHD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+      # TODO(https://crbug.com/986939): Remove this increased timeout once
+      # more devices are added.
+      execution_timeout_secs: 64800 # 18h.
+    }
+    builders {
+      name: "Win10 FYI x64 Release (NVIDIA GeForce GTX 1660)"
+      mixins: "linux-gpu-fyi-ci-tester"
+      execution_timeout_secs: 64800 # 18h.
+    }
+    builders {
+      name: "Win10 FYI x64 Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x64 Release XR Perf (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x64 dEQP Release (Intel HD 630)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x64 dEQP Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win10 FYI x86 Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win7 FYI Debug (AMD)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win7 FYI dEQP Release (AMD)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win7 FYI Release (AMD)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win7 FYI Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win7 FYI x64 dEQP Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+    builders {
+      name: "Win7 FYI x64 Release (NVIDIA)"
+      mixins: "linux-gpu-fyi-ci-tester"
+    }
+
+    # chromium.dawn
+    builders {
+      name: "Dawn Linux x64 Builder"
+      mixins: "linux-dawn-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Dawn Linux x64 Release (Intel HD 630)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Linux x64 Release (NVIDIA)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Linux x64 DEPS Builder"
+      mixins: "linux-dawn-ci-builder"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Dawn Linux x64 DEPS Release (Intel HD 630)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Linux x64 DEPS Release (NVIDIA)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Mac x64 Builder"
+      mixins: "mac-dawn-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Dawn Mac x64 DEPS Builder"
+      mixins: "mac-dawn-ci"
+      mixins: "goma-rbe-prod"
+    }
+    # Note that the Mac testers are all thin Linux VMs, triggering jobs on the
+    # physical Mac hardware in the Swarming pool, and therefore use the
+    # linux-dawn-ci-tester mixin.
+    builders {
+      name: "Dawn Mac x64 Release (AMD)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Mac x64 Release (Intel)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Mac x64 DEPS Release (AMD)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Mac x64 DEPS Release (Intel)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Win10 x86 Builder"
+      mixins: "win-dawn-ci"
+    }
+    builders {
+      name: "Dawn Win10 x64 Builder"
+      mixins: "win-dawn-ci"
+    }
+    # Note that the Win testers are all thin Linux VMs, triggering jobs on the
+    # physical Win hardware in the Swarming pool, and therefore use the
+    # linux-dawn-ci-tester mixin.
+    builders {
+      name: "Dawn Win10 x86 Release (Intel HD 630)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Win10 x64 Release (Intel HD 630)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Win10 x86 Release (NVIDIA)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Win10 x64 Release (NVIDIA)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Win10 x86 DEPS Builder"
+      mixins: "win-dawn-ci"
+    }
+    builders {
+      name: "Dawn Win10 x64 DEPS Builder"
+      mixins: "win-dawn-ci"
+    }
+    builders {
+      name: "Dawn Win10 x86 DEPS Release (Intel HD 630)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Win10 x64 DEPS Release (Intel HD 630)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Win10 x86 DEPS Release (NVIDIA)"
+      mixins: "linux-dawn-ci-tester"
+    }
+    builders {
+      name: "Dawn Win10 x64 DEPS Release (NVIDIA)"
+      mixins: "linux-dawn-ci-tester"
+    }
+
+
+    # Code coverage reports generation bots.
+    builders {
+      name: "ios-simulator-code-coverage"
+      mixins: "code-coverage"
+      mixins: "clang-coverage"
+      mixins: "ios"
+      dimensions: "cores:"
+    }
+
+    builders {
+      name: "linux-code-coverage"
+      mixins: "code-coverage"
+      mixins: "clang-coverage"
+      mixins: "goma-rbe-prod"
+      dimensions: "cores:32"
+    }
+
+    builders {
+      name: "mac-code-coverage-generation"
+      mixins: "code-coverage"
+      mixins: "clang-coverage"
+      dimensions: "cores:24"
+    }
+    builders {
+      name: "MSAN Release (chained origins)"
+      mixins: "fuzz-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "TSAN Release"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Linux CFI"
+      dimensions: "cores:32"
+      mixins: "memory-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+
+      # TODO(thakis): Remove once https://crbug.com/927738 is resolved.
+      execution_timeout_secs: 14400 # 4 hours
+    }
+    builders {
+      name: "Jumbo Win x64"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "WebKit Linux MSAN"
+      mixins: "memory-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Mac ASAN Release Media"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fuzz-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux MSan"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "TSAN Debug"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "UBSan vptr Release"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Mac ASAN Release"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fuzz-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "WebKit Linux ASAN"
+      mixins: "memory-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Libfuzzer Upload Mac ASan"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:24"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "goma-rbe-prod"
+      execution_timeout_secs: 14400 # 4 hours
+    }
+    builders {
+      name: "Libfuzzer Upload Windows ASan"
+      dimensions: "os:Windows-10"
+      dimensions: "cores:8"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+    }
+    builders {
+      name: "Mac ASan 64 Builder"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:"  # Swapping between 8 and 24
+      mixins: "memory-ci"
+      # TODO(hinoka): Remove this after debugging.
+      recipe {
+        properties_j: <<END
+        $build/goma: {
+          "server_host": "goma.chromium.org",
+          "rpc_extra_params": "?prod",
+          "debug": true
+        }
+        END
+      }
+    }
+    builders {
+      name: "UBSan Release"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "ChromiumOS ASAN Release"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "ASAN Release Media"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "win-archive-dbg"
+      dimensions: "os:Windows-10"
+      dimensions: "cores:32"
+      mixins: "chromium-ci"
+    }
+    builders {
+      name: "win-archive-rel"
+      dimensions: "os:Windows-10"
+      dimensions: "cores:32"
+      mixins: "chromium-ci"
+    }
+    builders {
+      name: "WebKit Linux Leak"
+      mixins: "memory-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Linux ChromiumOS MSan Tests"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android-archive-dbg"
+      # Bump to 32 if needed.
+      dimensions: "cores:8"
+      mixins: "chromium-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android-archive-rel"
+      dimensions: "cores:32"
+      mixins: "chromium-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Oreo Phone Tester"
+      mixins: "android-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android-pie-arm64-dbg"
+      mixins: "android-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android-pie-x86-fyi-rel"
+      mixins: "android-fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      name: "ASan Debug (32-bit x86 with V8-ARM)"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Linux remote_run Tester"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "WebKit Mac10.13 (retina)"
+      dimensions: "os:Mac-10.13"
+      mixins: "mac-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Afl Upload Linux ASan"
+      mixins: "fuzz-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      recipe {
+        name: "chromium_afl"
+      }
+    }
+    builders {
+      name: "Win 10 Fast Ring"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Linux MSan Tests"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Mac ASan 64 Tests (1)"
+      dimensions: "os:Mac-10.13"
+      mixins: "memory-ci"
+    }
+    builders {
+      name: "Win ASan Release"
+      dimensions: "os:Windows-10"
+      mixins: "fuzz-ci"
+      mixins: "goma-rbe-prod-ats"
+    }
+    builders {
+      name: "ASAN Debug"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Mac deterministic"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:"
+      mixins: "fyi-ci"
+      mixins: "deterministic"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Site Isolation Android"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "MSAN Release (no origins)"
+      mixins: "fuzz-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Linux Chromium OS ASan LSan Builder"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "linux-annotator-rel"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "win-annotator-rel"
+      dimensions: "os:Windows-10"
+      execution_timeout_secs: 57600  # 16h
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Jumbo Mac"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      # Do not use builderless for this (crbug.com/980080).
+      name: "Libfuzzer Upload Linux UBSan"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "VR Linux"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Mac deterministic (dbg)"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:"
+      mixins: "fyi-ci"
+      mixins: "deterministic"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "ASAN Release"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux ASan Debug"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux V8-ARM64 ASan Debug"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Closure Compilation Linux"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      recipe {
+        name: "closure_compilation"
+      }
+    }
+    builders {
+      name: "Mojo Windows"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "linux-archive-dbg"
+      # Bump to 32 if needed.
+      dimensions: "cores:8"
+      mixins: "chromium-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "linux-archive-rel"
+      dimensions: "cores:32"
+      mixins: "chromium-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux ASan"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux V8-ARM64 ASan"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux32 ASan Debug"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux32 ASan"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux32 V8-ARM ASan Debug"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Linux32 V8-ARM ASan"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Libfuzzer Upload Chrome OS ASan"
+      mixins: "fuzz-ci"
+      mixins: "libfuzzer"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Android CFI"
+      dimensions: "cores:32"
+      # TODO(https://crbug.com/919430) Remove the larger timeout once compile
+      # times have been brought down to reasonable level
+      execution_timeout_secs: 16200  # 4.5h
+      mixins: "memory-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Linux MSan Builder"
+      mixins: "memory-ci-goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "ASan Release Media (32-bit x86 with V8-ARM)"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "mac-hermetic-upgrade-rel"
+      dimensions: "os:Mac-10.13"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "mac-osxbeta-rel"
+      mixins: "fyi-ci"
+      # This is launching & collecting entirely isolated tests.
+      # OS shouldn't matter.
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Mojo ChromiumOS"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Linux remote_run Builder"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Win ASan Release Media"
+      dimensions: "os:Windows-10"
+      mixins: "fuzz-ci"
+      mixins: "goma-rbe-prod-ats"
+    }
+    builders {
+      name: "mac-archive-dbg"
+      dimensions: "os:Mac-10.13"
+      # Bump to 8 cores if needed.
+      dimensions: "cores:4"
+      mixins: "chromium-ci"
+    }
+    builders {
+      name: "mac-archive-rel"
+      dimensions: "os:Mac-10.13"
+      mixins: "chromium-ci"
+    }
+    builders {
+      name: "Linux ChromiumOS MSan Builder"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Mojo Linux"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Linux Chromium OS ASan LSan Tests (1)"
+      mixins: "memory-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Memory Infra Tester"
+      mixins: "android-fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "ios-device-goma-canary-clobber"
+      mixins: "ios"
+      mixins: "fyi-ci"
+      recipe {
+        name: "ios/unified_builder_tester"
+      }
+    }
+    builders {
+      name: "ASan Release (32-bit x86 with V8-ARM)"
+      mixins: "fuzz-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "WebKit Win10"
+      dimensions: "os:Windows-10"
+      mixins: "win-ci"
+    }
+    builders {
+      name: "win32-archive-dbg"
+      dimensions: "os:Windows-10"
+      dimensions: "cores:32"
+      mixins: "chromium-ci"
+    }
+    builders {
+      name: "win32-archive-rel"
+      dimensions: "os:Windows-10"
+      dimensions: "cores:32"
+      mixins: "chromium-ci"
+    }
+    builders {
+      name: "Linux Viz"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Jumbo Linux x64"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Mojo Android"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    # Goma RBE ToT/Staging/FYI
+    builders {
+      name: "Chromium Linux Goma RBE ToT"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE ToT (ATS)"
+      mixins: "linux-xenial"
+      mixins: "goma-ats"
+      mixins: "goma-ci"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE Staging"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE Staging (clobber)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE Staging (dbg)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE Staging (dbg) (clobber)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE Prod"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE Prod (clobber)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE Prod (dbg)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Chromium Linux Goma RBE Prod (dbg) (clobber)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Chromium Mac Goma RBE ToT"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "goma-ci"
+      mixins: "goma-j80"
+    }
+    builders {
+      name: "Chromium Mac Goma RBE Staging (clobber)"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging-j80"
+    }
+    builders {
+      name: "Chromium Mac Goma RBE Staging"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging-j80"
+    }
+    builders {
+      name: "Chromium Mac Goma RBE Staging (dbg)"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging-j80"
+    }
+    builders {
+      name: "Chromium Mac Goma RBE Prod"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod-j80"
+    }
+    builders {
+      name: "Chromium Win Goma RBE ToT"
+      dimensions: "os:Windows-10"
+      mixins: "goma-ats"
+      mixins: "goma-ci"
+    }
+    builders {
+      name: "Chromium Win Goma RBE Staging"
+      dimensions: "os:Windows-10"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging-ats"
+    }
+    builders {
+      name: "Chromium Win Goma RBE Staging (clobber)"
+      dimensions: "os:Windows-10"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging-ats"
+    }
+    builders {
+      name: "Chromium Win Goma RBE Prod"
+      dimensions: "os:Windows-10"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod-ats"
+    }
+    builders {
+      name: "Chromium Win Goma RBE Prod (clobber)"
+      dimensions: "os:Windows-10"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod-ats"
+    }
+    builders {
+      name: "Chromium Win Goma RBE Prod (dbg)"
+      dimensions: "os:Windows-10"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod-ats"
+    }
+    builders {
+      name: "Chromium Win Goma RBE Prod (dbg) (clobber)"
+      dimensions: "os:Windows-10"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod-ats"
+    }
+    builders {
+      name: "Chromium Android ARM 32-bit Goma RBE ToT"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+    }
+    builders {
+      name: "Chromium Android ARM 32-bit Goma RBE ToT (ATS)"
+      mixins: "linux-xenial"
+      mixins: "goma-ats"
+      mixins: "goma-ci"
+    }
+    builders {
+      name: "Chromium Android ARM 32-bit Goma RBE Staging"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-staging"
+    }
+    builders {
+      name: "Chromium Android ARM 32-bit Goma RBE Prod"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Chromium Android ARM 32-bit Goma RBE Prod (clobber)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Chromium Android ARM 32-bit Goma RBE Prod (dbg)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "Chromium Android ARM 32-bit Goma RBE Prod (dbg) (clobber)"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "chromeos-amd64-generic-rel (Goma RBE FYI)"
+      mixins: "builderless"
+      mixins: "goma-ci"
+      mixins: "goma-ats"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "fuchsia-fyi-arm64-rel (Goma RBE FYI)"
+      mixins: "builderless"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod-ats"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "fuchsia-fyi-x64-rel (Goma RBE FYI)"
+      mixins: "builderless"
+      mixins: "goma-ci"
+      mixins: "goma-rbe-prod-ats"
+      mixins: "linux-xenial"
+    }
+    # Goma Staging
+    builders {
+      name: "Chromium Mac Goma Staging"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "goma-ci"
+      mixins: "goma-j80"
+    }
+    builders {
+      name: "Chromium Linux Goma Staging"
+      mixins: "linux-xenial"
+      mixins: "goma-ci"
+    }
+    builders {
+      name: "CrWinGomaStaging"
+      dimensions: "os:Windows-10"
+      mixins: "goma-ci"
+    }
+    # Goma Canary
+    builders {
+      name: "Mac Builder (dbg) Goma Canary (clobber)"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "mac-archive-rel-goma-canary"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win Builder Goma Canary"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "chromeos-amd64-generic-rel-goma-canary"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android-archive-dbg-goma-canary"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "mac-archive-rel-goma-canary-localoutputcache"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win7 Builder Goma Canary"
+      dimensions: "os:Windows-7"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Mac Builder (dbg) Goma Canary"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win Builder (dbg) Goma Canary"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "linux-archive-rel-goma-canary-localoutputcache"
+      mixins: "fyi-ci"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "Linux Builder Goma Canary"
+      # keep to use trusty for this until chrome drops support of development
+      # on trusty.
+      dimensions: "os:Ubuntu-14.04"
+      mixins: "fyi-ci"
+      mixins: "builderless"
+    }
+    builders {
+      name: "Win cl.exe Goma Canary LocalOutputCache"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win7 Builder (dbg) Goma Canary"
+      dimensions: "os:Windows-7"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "win32-archive-rel-goma-canary-localoutputcache"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Mac Builder Goma Canary"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "WinMSVC64 Goma Canary"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "linux-archive-rel-goma-canary"
+      mixins: "fyi-ci"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    # Goma RBE canary
+    builders {
+      name: "chromeos-amd64-generic-rel-goma-rbe-canary"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod-ats"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "Linux Builder Goma RBE Canary"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "linux-archive-rel-goma-rbe-canary"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "android-archive-dbg-goma-rbe-canary"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "linux-archive-rel-goma-rbe-ats-canary"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod-ats"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "android-archive-dbg-goma-rbe-ats-canary"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod-ats"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "mac-archive-rel-goma-rbe-canary"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+      mixins: "goma-j80"
+    }
+    builders {
+      name: "Mac Builder (dbg) Goma RBE Canary (clobber)"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+      mixins: "goma-j80"
+    }
+    builders {
+      name: "ios-device-goma-rbe-canary-clobber"
+      mixins: "ios"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      recipe {
+        name: "ios/unified_builder_tester"
+      }
+    }
+    # Goma Latest Client
+    builders {
+      name: "Mac Builder (dbg) Goma Latest Client (clobber)"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "mac-archive-rel-goma-latest"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win Builder Goma Latest Client"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "android-archive-dbg-goma-latest"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "mac-archive-rel-goma-latest-localoutputcache"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win7 Builder Goma Latest Client"
+      dimensions: "os:Windows-7"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Mac Builder (dbg) Goma Latest Client"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win Builder (dbg) Goma Latest Client"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "linux-archive-rel-goma-latest-localoutputcache"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Linux Builder Goma Latest Client"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win cl.exe Goma Latest Client LocalOutputCache"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Win7 Builder (dbg) Goma Latest Client"
+      dimensions: "os:Windows-7"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "win32-archive-rel-goma-latest-localoutputcache"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "Mac Builder Goma Latest Client"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "WinMSVC64 Goma Latest Client"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "linux-archive-rel-goma-latest"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "chromeos-amd64-generic-rel-goma-latest"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+    }
+    builders {
+      name: "ios-device-goma-latest-clobber"
+      mixins: "ios"
+      mixins: "fyi-ci"
+      recipe {
+        name: "ios/unified_builder_tester"
+      }
+    }
+    # Goma RBE latest client
+    builders {
+      name: "chromeos-amd64-generic-rel-goma-rbe-latest"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod-ats"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "Linux Builder Goma RBE Latest Client"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "linux-archive-rel-goma-rbe-latest"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "android-archive-dbg-goma-rbe-latest"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "linux-archive-rel-goma-rbe-ats-latest"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod-ats"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "android-archive-dbg-goma-rbe-ats-latest"
+      mixins: "builderless"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod-ats"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "mac-archive-rel-goma-rbe-latest"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+      mixins: "goma-j80"
+    }
+    builders {
+      name: "Mac Builder (dbg) Goma RBE Latest Client (clobber)"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cores:4"
+      mixins: "fyi-ci"
+      mixins: "goma-j80"
+    }
+    builders {
+      name: "ios-device-goma-rbe-latest-clobber"
+      mixins: "ios"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-prod"
+      recipe {
+        name: "ios/unified_builder_tester"
+      }
+    }
+    builders {
+      name: "Win Builder Goma RBE Latest Client"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-staging-ats"
+    }
+    builders {
+      name: "Win Builder (dbg) Goma RBE Latest Client"
+      dimensions: "os:Windows-10"
+      mixins: "fyi-ci"
+      mixins: "goma-rbe-staging-ats"
+    }
+  }
+}
+
+buckets {
+  name: "findit"
+  acls {
+    role: SCHEDULER
+    group: "findit-tryjob-access"
+  }
+  acls {
+    role: SCHEDULER
+    identity: "luci-scheduler@appspot.gserviceaccount.com"
+  }
+  acls {
+    role: READER
+    group: "googlers"
+  }
+  acls {
+    role: READER
+    identity: "findit-builder@chops-service-accounts.iam.gserviceaccount.com"
+  }
+
+  swarming {
+    hostname: "chromium-swarm.appspot.com"
+    builder_defaults {
+      dimensions: "pool:luci.chromium.findit"
+      service_account: "findit-builder@chops-service-accounts.iam.gserviceaccount.com"
+      execution_timeout_secs: 28800  # 8h
+      swarming_tags: "vpython:native-python-wrapper"
+      build_numbers: YES
+      caches {
+        path: "win_toolchain"
+        name: "win_toolchain"
+      }
+      # Findit app specifies these for each build it schedules. The reason why
+      # we specify them here is to pass validation of the buildbucket config.
+      # Also, to illustrate the typical use case of this bucket.
+      recipe {
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/master"
+        name: "findit/chromium/compile"
+        properties_j: "$kitchen:{\"git_auth\": true, \"devshell\": true}"
+      }
+    }
+
+    # Dimensionless trybot for findit.
+    #
+    # Findit will add appropriate dimensions and properties as needed based on
+    # the waterfall builder being analyzed.
+    #
+    # TODO(robertocn): Remove _variable trybot builders from "try" bucket
+    #   after they have been configured to use this generic builder, as well as
+    #   the findit 'mixin'.
+    builders { name: "findit_variable" }
+    # Same as above, except now with a specified recipe, as this is no longer
+    # overridable with Buildbucket V2
+    builders {
+      name: "findit-rerun"
+      recipe {
+        name: "findit/chromium/single_revision"
+      }
+    }
+    builders {
+      name: "linux_chromium_bot_db_exporter"
+      mixins: "linux-xenial"
+      recipe {
+        name: "findit/chromium/export_bot_db"
+        properties: "gs_bucket:findit-for-me"
+        properties: "gs_object:bot_db.json"
+      }
+    }
+  }
+}
+
+buckets {
+  name: "try"
+
+  acl_sets: "tryserver"
+
+  swarming {
+    hostname: "chromium-swarm.appspot.com"
+    task_template_canary_percentage { value: 5 }
+
+    builder_defaults {
+      dimensions: "cores:8"
+      dimensions: "cpu:x86-64"
+      service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
+      # Max. pending time for builds. CQ considers builds pending >2h as timed
+      # out: http://shortn/_8PaHsdYmlq. Keep this in sync.
+      expiration_secs: 7200 # 2h
+      execution_timeout_secs: 14400  # 4h
+      swarming_tags: "vpython:native-python-wrapper"
+      build_numbers: YES
+      # Adds dimension: "builder:<builder name>" to ensure builder affinity.
+      # To "assign" a bot to a builder, bot config of swarming service should
+      # add the same dimension to the bot.
+      auto_builder_dimension: YES
+      caches {
+        path: "win_toolchain"
+        name: "win_toolchain"
+      }
+      recipe {
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/master"
+        name: "chromium_trybot"
+        properties_j: "$kitchen:{\"git_auth\": true, \"devshell\": true}"
+      }
+    }
+
+    # Keep builders sorted by OS, then name.
+    builders {
+      mixins: "android-angle-try"
+      mixins: "goma-rbe-prod"
+      name: "android_angle_deqp_rel_ng"
+    }
+    builders {
+      mixins: "android-angle-try"
+      mixins: "goma-rbe-prod"
+      name: "android_angle_rel_ng"
+    }
+    builders { mixins: "android-angle-try" name: "android_angle_vk32_deqp_rel_ng" }
+    builders { mixins: "android-angle-try" name: "android_angle_vk32_rel_ng" }
+    builders { mixins: "android-angle-try" name: "android_angle_vk64_deqp_rel_ng" }
+    builders { mixins: "android-angle-try" name: "android_angle_vk64_rel_ng" }
+    builders {
+      mixins: "android-try"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+      name: "android_cronet_tester"
+      recipe {
+        properties: "buildername:android-cronet-arm-dbg"
+      }
+    }
+    builders {
+      mixins: "android-try"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+      mixins: "goma-rbe-prod"
+      name: "android-cronet-arm-dbg"
+    }
+    builders {
+      name: "android-kitkat-arm-rel"
+      mixins: "android-try"
+      mixins: "goma-rbe-prod-j150"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+    builders {
+      name: "android-marshmallow-arm64-coverage-rel"
+      mixins: "android-try"
+      mixins: "builderless"
+      mixins: "goma-j300"
+      mixins: "java-coverage"
+      mixins: "linux-xenial"
+      dimensions: "cores:16"
+      dimensions: "ssd:1"
+    }
+    builders {
+      name: "android-marshmallow-arm64-rel"
+      mixins: "android-try"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod-j300"
+      mixins: "linux-xenial"
+      dimensions: "cores:16"
+      dimensions: "ssd:1"
+    }
+    builders {
+      name: "android-marshmallow-x86-fyi-rel"
+      mixins: "android-try"
+      mixins: "builderless"
+      mixins: "linux-xenial"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-oreo-arm64-cts-networkservice-dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-pie-arm64-rel"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-webview-pie-arm64-fyi-rel"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      mixins: "goma-j300"
+      name: "android_arm64_dbg_recipe"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android-binary-size"
+      mixins: "android-try"
+      mixins: "goma-j150"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      recipe {
+        name: "binary_size_trybot"
+      }
+    }
+    builders {
+      mixins: "android-try"
+      name: "android_blink_rel"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      mixins: "goma-j300"
+      name: "android_clang_dbg_recipe"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      mixins: "goma-j150"
+      name: "android_compile_dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      mixins: "goma-rbe-prod"
+      name: "android_cronet"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android_n5x_swarming_dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      mixins: "goma-rbe-prod"
+      name: "cast_shell_android"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders { mixins: "android-optional-gpu-try" name: "android_optional_gpu_tests_rel" }
+    builders {
+      mixins: "android-try"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+      name: "android_unswarmed_pixel_aosp"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-l-nexus-5-32"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-l-nexus-6-32"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-m-nexus-5x-64"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-m-nexus-5x-deqp-64"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-m-nexus-5x-skgl-64"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-m-nexus-6p-64"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-m-nexus-9-64"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-n-nvidia-shield-tv-64"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-p-pixel-2-32"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-p-pixel-2-skv-32"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-q-pixel-2-deqp-vk-32"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-q-pixel-2-deqp-vk-64"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-q-pixel-2-vk-32"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-android-q-pixel-2-vk-64"
+    }
+    builders {
+      mixins: "android-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-try-android-m-nexus-5x-64"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-webview-marshmallow-arm64-dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-webview-nougat-arm64-dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-webview-oreo-arm64-dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-webview-pie-arm64-dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      mixins: "deterministic"
+      mixins: "goma-rbe-prod"
+      name: "android-deterministic-rel"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      mixins: "deterministic"
+      mixins: "goma-rbe-prod"
+      name: "android-deterministic-dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "try-nougat-phone-tester"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-oreo-arm64-dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "android-try"
+      name: "android-pie-arm64-dbg"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android-pie-x86-fyi-rel"
+      mixins: "android-try"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    builders {
+      mixins: "chromeos-try"
+      name: "chromeos-amd64-generic-cfi-thin-lto-rel"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "chromeos-try"
+      mixins: "builderless"
+      name: "chromeos-amd64-generic-dbg"
+    }
+    builders {
+      mixins: "chromeos-try"
+      mixins: "builderless"
+      name: "chromeos-amd64-generic-rel"
+    }
+    builders {
+      mixins: "chromeos-try"
+      mixins: "builderless"
+      name: "chromeos-arm-generic-dbg"
+    }
+    builders {
+      mixins: "chromeos-try"
+      mixins: "builderless"
+      name: "chromeos-arm-generic-rel"
+    }
+    builders {
+      mixins: "chromeos-try"
+      name: "chromeos-kevin-compile-rel"
+      mixins: "builderless"
+    }
+    # Identical to chromeos-kevin-rel, but runs experimentally on a fraction of
+    # all CLs. Separate from chromeos-kevin-rel due to different triggering
+    # policies.
+    builders {
+      mixins: "chromeos-try"
+      name: "chromeos-kevin-experimental-rel"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "chromeos-try"
+      name: "chromeos-kevin-rel"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "chromeos-try"
+      mixins: "builderless"
+      name: "linux-chromeos-compile-dbg"
+    }
+    builders {
+      mixins: "chromeos-try"
+      mixins: "builderless"
+      name: "linux-chromeos-dbg"
+    }
+    builders {
+      mixins: "chromeos-try"
+      mixins: "goma-j150"
+      mixins: "builderless"
+      mixins: "clang-coverage"
+      name: "linux-chromeos-rel"
+    }
+
+    builders {
+      mixins: "linux-try"
+      name: "cast_shell_audio_linux"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "cast_shell_linux"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "chromium_presubmit"
+      mixins: "builderless"
+      recipe {
+        name: "presubmit"
+        properties: "repo_name:chromium"
+        properties_j: <<END
+        $depot_tools/presubmit: {
+          "runhooks": true,
+          "timeout_s": 480
+        }
+        END
+      }
+    }
+    builders {
+      mixins: "linux-try"
+      name: "closure_compilation"
+      recipe {
+        name: "closure_compilation"
+      }
+      mixins: "builderless"
+    }
+
+    builders { mixins: "linux-dawn-try" name: "dawn-linux-x64-deps-rel" }
+
+    builders {
+      mixins: "linux-try"
+      name: "fuchsia_arm64"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "fuchsia-arm64-cast"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "fuchsia-fyi-arm64-rel"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "fuchsia-fyi-x64-dbg"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "fuchsia-fyi-x64-rel"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "linux-try"
+      name: "fuchsia-compile-x64-dbg"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+      name: "fuchsia_x64"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "fuchsia-x64-cast"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-intel-dqp"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-intel-exp"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-intel-rel"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-intel-skv"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-nvidia-dbg"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-nvidia-dqp"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-nvidia-exp"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-nvidia-rel"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-fyi-try-linux-nvidia-skv"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-linux-nvidia-tsn"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-try-linux-nvidia-dbg"
+    }
+    builders {
+      mixins: "linux-optional-gpu-try"
+      name: "gpu-try-linux-nvidia-rel"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "leak_detection_linux"
+      mixins: "builderless"
+    }
+    builders { mixins: "linux-angle-try" name: "fuchsia-angle-rel" }
+    builders {
+      mixins: "linux-angle-try"
+      name: "linux-angle-rel"
+    }
+    builders {
+      mixins: "linux-angle-try"
+      name: "linux_angle_deqp_rel_ng"
+    }
+    builders {
+      mixins: "linux-angle-try"
+      name: "linux_angle_ozone_rel_ng"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "linux-blink-heap-concurrent-marking-tsan-rel"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux-blink-heap-verification-try"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "linux-dcheck-off-rel"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux-gcc-rel"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux-jumbo-rel"
+      mixins: "builderless"
+    }
+    builders {
+      name: "linux-libfuzzer-asan-rel"
+      mixins: "linux-try"
+      mixins: "builderless"
+      recipe {
+        name: "chromium_libfuzzer_trybot"
+      }
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "linux-ozone-rel"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "linux-webkit-msan-rel"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      # TODO(crbug.com/986191): re-enable RBE+ATS when the issue is fixed.
+      # mixins: "goma-rbe-prod-ats"
+      name: "linux_arm"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux_chromium_analysis"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux_chromium_archive_rel_ng"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-j150"
+      name: "linux_chromium_asan_rel_ng"
+      mixins: "builderless"
+      dimensions: "ssd:1"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      mixins: "builderless"
+      name: "linux_chromium_cfi_rel_ng"
+      dimensions: "cores:32"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-j150"
+      name: "linux_chromium_chromeos_asan_rel_ng"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-j150"
+      name: "linux_chromium_chromeos_msan_rel_ng"
+      mixins: "builderless"
+    }
+    builders {
+      name: "linux_chromium_clobber_deterministic",
+      mixins: "linux-try"
+      mixins: "deterministic"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux_chromium_clobber_rel_ng"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux_chromium_compile_dbg_32_ng"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "linux-debug-cache"
+      mixins: "goma-j150"
+      mixins: "builderless"
+      name: "linux_chromium_compile_dbg_ng"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "linux_chromium_compile_rel_ng"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-debug-cache"
+      mixins: "linux-try"
+      name: "linux_chromium_dbg_ng"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod-j150"
+      name: "linux_chromium_msan_rel_ng"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "clang-tidy"
+      mixins: "goma-j150"
+      mixins: "builderless"
+      name: "linux-clang-tidy-dbg"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "clang-tidy"
+      mixins: "goma-j150"
+      mixins: "builderless"
+      name: "linux-clang-tidy-rel"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-j150"
+      mixins: "builderless"
+      mixins: "clang-coverage"
+      name: "linux-rel"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod-j150"
+      mixins: "builderless"
+      mixins: "linux-trusty"
+      name: "linux-trusty-rel"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "builderless"
+      name: "linux-viz-rel"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-j150"
+      mixins: "builderless"
+      name: "linux_chromium_tsan_rel_ng"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux_chromium_ubsan_rel_ng"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      mixins: "linux-dawn-try"
+      mixins: "goma-rbe-prod"
+      name: "linux-dawn-rel"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux_layout_tests_composite_after_paint"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux_layout_tests_layout_ng_disabled"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      name: "linux_mojo"
+      mixins: "builderless"
+    }
+    builders {
+      mixins: "linux-try"
+      name: "linux_mojo_chromeos"
+      mixins: "builderless"
+    }
+    builders { mixins: "linux-optional-gpu-try" name: "linux_optional_gpu_tests_rel" }
+    builders {
+      mixins: "linux-try"
+      mixins: "upload_clang"
+      mixins: "linux-trusty"
+      name: "linux_upload_clang"
+      dimensions: "cores:32"
+    }
+    builders { mixins: "ios-try" name: "ios-device" }
+    builders { mixins: "ios-try" name: "ios-device-xcode-clang" }
+    builders { mixins: "ios-try" name: "ios-simulator" }
+    builders { mixins: "ios-try" name: "ios-simulator-cronet" }
+    builders { mixins: "ios-try" name: "ios12-beta-simulator" }
+    builders { mixins: "ios-try" name: "ios13-beta-simulator" }
+    builders { mixins: "ios-try" name: "ios13-sdk-simulator" }
+    builders { mixins: "ios-try" name: "ios-simulator-full-configs" }
+    builders { mixins: "ios-try" name: "ios-simulator-noncq" }
+    builders { mixins: "ios-try" name: "ios-simulator-eg" }
+    builders { mixins: "ios-try" name: "ios-simulator-xcode-clang" }
+    builders { mixins: "ios-try" name: "ios-slimnav" }
+    builders {
+      mixins: "mac-dawn-try"
+      mixins: "goma-rbe-prod"
+      name: "dawn-mac-x64-deps-rel"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-mac-amd-dqp"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-amd-pro-rel"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-mac-amd-retina-dbg"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-amd-retina-exp"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-amd-retina-rel"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-mac-asan"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-intel-dbg"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-intel-dqp"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-intel-exp"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-intel-rel"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-fyi-try-mac-nvidia-retina-dbg"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-nvidia-retina-exp"
+      # This bot has one machine backing its tests at the moment.
+      # If it gets more, this should be switched back to gpu-slow-bot.
+      # See crbug.com/853307 for more context.
+      execution_timeout_secs: 43200  # 12h
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "gpu-fyi-try-mac-nvidia-retina-rel"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-try-mac-amd-retina-dbg"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      mixins: "goma-rbe-prod"
+      name: "gpu-try-mac-intel-dbg"
+    }
+    builders {
+      name: "mac-osxbeta-rel"
+      mixins: "mac-try"
+      mixins: "builderless"
+      dimensions: "os:Mac-10.13"
+      dimensions: "ssd:1"
+    }
+    builders {
+      mixins: "mac-angle-try"
+      mixins: "goma-rbe-prod"
+      name: "mac-angle-rel"
+    }
+    builders {
+      mixins: "mac-try"
+      name: "mac-jumbo-rel"
+      dimensions: "cores:4"
+    }
+    # NOTE: the folliwing 3 trybots aren't sensitive to Mac version on which
+    # they are built, hence no additional dimension is specified.
+    # The 10.xx version translates to which bots will run isolated tests.
+    builders { mixins: "mac-try" name: "mac_chromium_10.10" }
+    builders { mixins: "mac-try" name: "mac_chromium_10.12_rel_ng" }
+    builders {
+      mixins: "mac-try"
+      mixins: "goma-rbe-prod"
+      name: "mac_chromium_10.13_rel_ng"
+    }
+    builders { mixins: "mac-try" name: "mac_chromium_archive_rel_ng" }
+    builders {
+      mixins: "mac-try"
+      mixins: "goma-rbe-prod-j150"
+      name: "mac_chromium_asan_rel_ng"
+    }
+    builders {
+      mixins: "mac-try"
+      mixins: "goma-j150"
+      mixins: "builderless"
+      name: "mac_chromium_compile_dbg_ng"
+      dimensions:"os:Mac-10.13"
+      dimensions:"ssd:1"
+    }
+    builders { mixins: "mac-try" name: "mac_chromium_compile_rel_ng" }
+    builders { mixins: "mac-try" name: "mac_chromium_dbg_ng" }
+    builders {
+      mixins: "mac-try"
+      mixins: "goma-j150"
+      name: "mac-rel"
+    }
+    builders {
+      mixins: "mac-dawn-try"
+      mixins: "goma-rbe-prod"
+      name: "mac-dawn-rel"
+    }
+    builders {
+      mixins: "mac-optional-gpu-try"
+      name: "mac_optional_gpu_tests_rel"
+      # Clear cores dimension requirement because build{103..105}-m9 are cores:4
+      dimensions: "cores:"
+    }
+    builders {
+      mixins: "mac-try"
+      mixins: "upload_clang"
+      mixins: "xcode-mac-9a235"
+      name: "mac_upload_clang"
+      execution_timeout_secs: 21600  # 6h
+    }
+
+    builders { mixins: "win-dawn-try" name: "dawn-win10-x64-deps-rel" }
+    builders { mixins: "win-dawn-try" name: "dawn-win10-x86-deps-rel" }
+
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win-xr-builder-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win7-amd-dbg-32"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win7-amd-dqp-32"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win7-amd-rel-32"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win7-nvidia-dqp-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win7-nvidia-rel-32"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win7-nvidia-rel-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win10-intel-dqp-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win10-intel-exp-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win10-intel-rel-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win10-nvidia-dbg-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win10-nvidia-dqp-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win10-nvidia-exp-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win10-nvidia-rel-32"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-fyi-try-win10-nvidia-rel-64"
+    }
+    builders {
+      mixins: "win-optional-gpu-try"
+      name: "gpu-try-win10-nvidia-rel"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win10_chromium_x64_dbg_ng"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "goma-j150"
+      mixins: "win-try"
+      mixins: "win10"
+      dimensions: "ssd:1"
+      name: "win10_chromium_x64_rel_ng"
+    }
+    builders { mixins: "win-try" name: "win10_chromium_x64_rel_ng_exp" }
+    builders {
+      mixins: "builderless"
+      mixins: "goma-j300"
+      mixins: "win-try"
+      mixins: "win10"
+      dimensions: "ssd:1"
+      name: "win7-rel"
+      execution_timeout_secs: 16200  # 4.5h
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win-annotator-rel"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "goma-j150"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win-asan"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win-jumbo-rel"
+    }
+    builders {
+      name: "win-libfuzzer-asan-rel"
+      mixins: "win-try"
+      recipe {
+        name: "chromium_libfuzzer_trybot"
+      }
+    }
+    builders { mixins: "win-angle-try" name: "win-angle-deqp-rel-32" }
+    builders { mixins: "win-angle-try" name: "win-angle-deqp-rel-64" }
+    builders { mixins: "win-angle-try" name: "win-angle-rel-32" }
+    builders { mixins: "win-angle-try" name: "win-angle-rel-64" }
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win_archive"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "goma-j150"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win_chromium_compile_dbg_ng"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win_chromium_compile_rel_ng"
+    }
+    # TODO(crbug/794085): Revisit exceptional extra-long timeout when we speed
+    # up the builder.
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win_chromium_dbg_ng"
+      execution_timeout_secs: 14400 # 4h
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win_chromium_x64_rel_ng"
+    }
+    builders { mixins: "win-dawn-try" name: "win-dawn-rel" }
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win_mojo"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "win-optional-gpu-try"
+      mixins: "win10"
+      name: "win_optional_gpu_tests_rel"
+    }
+    builders {
+      mixins: "win-try"
+      mixins: "upload_clang"
+      name: "win_upload_clang"
+      dimensions: "cores:32"
+    }
+    builders {
+      mixins: "builderless"
+      mixins: "win-try"
+      mixins: "win10"
+      name: "win_x64_archive"
+    }
+
+    builders {
+      name: "android_compile_x86_dbg"
+      mixins: "android-try"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "linux-annotator-rel"
+      mixins: "linux-try"
+      mixins: "builderless"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "linux_vr"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android_compile_rel"
+      mixins: "android-try"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "linux_android_dbg_ng"
+      mixins: "android-try"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android_compile_x64_dbg"
+      mixins: "android-try"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android_archive_rel_ng"
+      mixins: "android-try"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "layout_test_leak_detection"
+      mixins: "linux-try"
+      mixins: "goma-rbe-prod"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android_cfi_rel_ng"
+      dimensions: "cores:32"
+      mixins: "android-try"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "android_mojo"
+      mixins: "android-try"
+      mixins: "goma-rbe-prod"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+
+    # Blink try builders.
+    builders {
+      name: "linux-blink-rel"
+      mixins: "blink-try"
+      mixins: "linux-xenial"
+      mixins: "builderless"
+    }
+    builders {
+      name: "mac10.10-blink-rel"
+      mixins: "mac"
+      mixins: "blink-try"
+    }
+    builders {
+      name: "mac10.11-blink-rel"
+      mixins: "mac"
+      mixins: "blink-try"
+    }
+    builders {
+      name: "mac10.12-blink-rel"
+      mixins: "mac"
+      mixins: "blink-try"
+    }
+    builders {
+      name: "mac10.13-blink-rel"
+      mixins: "mac"
+      mixins: "blink-try"
+    }
+    builders {
+      name: "mac10.13_retina-blink-rel"
+      mixins: "mac"
+      mixins: "blink-try"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "win10-blink-rel"
+      mixins: "win"
+      mixins: "blink-try"
+    }
+    builders {
+      name: "win7-blink-rel"
+      mixins: "win"
+      mixins: "blink-try"
+    }
+    builders {
+      name: "win-celab-try-rel"
+      mixins: "builderless"
+      mixins: "celab-try"
+      mixins: "win-try"
+      mixins: "win10"
+    }
+  }
+}
+
+buckets {
+  name: "webrtc"
+  acl_sets: "ci"
+
+  swarming {
+    hostname: "chromium-swarm.appspot.com"
+    url_format: "https://luci-milo.appspot.com/swarming/task/{task_id}"
+    builder_defaults {
+      # Automatically assigns a dimensions:<builder name> to each builder.
+      auto_builder_dimension: YES
+      build_numbers: YES
+      dimensions: "cpu:x86-64"
+      execution_timeout_secs: 7200  # 2h
+      recipe {
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/master"
+        properties: "mastername:chromium.webrtc"
+        properties: "perf_dashboard_machine_group:ChromiumWebRTC"
+        name: "chromium"
+      }
+      service_account: "chromium-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
+      swarming_tags: "vpython:native-python-wrapper"
+    }
+
+    # Keep builders grouped by OS, then sorted by name.
+
+    # Android
+
+    builders {
+      name: "WebRTC Chromium Android Builder"
+      mixins: "linux-xenial"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "WebRTC Chromium Android Tester"
+      mixins: "linux-xenial"
+    }
+
+    # Linux
+
+    builders {
+      name: "WebRTC Chromium Linux Builder"
+      mixins: "linux-xenial"
+      mixins: "goma-rbe-prod"
+    }
+    builders {
+      name: "WebRTC Chromium Linux Tester"
+      mixins: "linux-xenial"
+    }
+
+    # Mac
+
+    builders {
+      name: "WebRTC Chromium Mac Builder"
+      mixins: "mac"
+      mixins: "goma-rbe-prod"
+      dimensions: "cores:8"
+    }
+    builders {
+      name: "WebRTC Chromium Mac Tester"
+      mixins: "mac"
+    }
+
+    # Win
+
+    builders { mixins: "win" name: "WebRTC Chromium Win Builder" }
+    builders { mixins: "win" name: "WebRTC Chromium Win10 Tester" }
+    builders { mixins: "win" name: "WebRTC Chromium Win7 Tester" }
+    builders { mixins: "win" name: "WebRTC Chromium Win8 Tester" }
+  }
+}
+
+buckets {
+  name: "webrtc.fyi"
+  acl_sets: "ci"
+
+  swarming {
+    hostname: "chromium-swarm.appspot.com"
+    url_format: "https://luci-milo.appspot.com/swarming/task/{task_id}"
+    builder_defaults {
+      build_numbers: YES
+      dimensions: "cpu:x86-64"
+      dimensions: "pool:luci.chromium.webrtc.fyi"
+      execution_timeout_secs: 7200  # 2h
+      recipe {
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/master"
+        properties: "mastername:chromium.webrtc.fyi"
+        name: "chromium"
+      }
+      service_account: "chromium-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
+      swarming_tags: "vpython:native-python-wrapper"
+    }
+
+    # Keep builders grouped by OS, then sorted by name.
+
+    # Android
+
+    builders { mixins: "linux-xenial" mixins: "goma-rbe-prod" name: "WebRTC Chromium FYI Android Builder" }
+    builders { mixins: "linux-xenial" mixins: "goma-rbe-prod" name: "WebRTC Chromium FYI Android Builder (dbg)" }
+    builders { mixins: "linux-xenial" mixins: "goma-rbe-prod" name: "WebRTC Chromium FYI Android Builder ARM64 (dbg)" }
+    builders { mixins: "linux-xenial"  name: "WebRTC Chromium FYI Android Tests (dbg) (K Nexus5)" }
+    builders { mixins: "linux-xenial"  name: "WebRTC Chromium FYI Android Tests (dbg) (M Nexus5X)" }
+
+    # iOS
+
+    builders { mixins: "ios-webrtc" mixins: "xcode-caches" name: "WebRTC Chromium FYI ios-device" }
+    builders { mixins: "ios-webrtc" mixins: "xcode-caches" name: "WebRTC Chromium FYI ios-simulator" }
+
+    # Linux
+
+    builders { mixins: "linux-xenial" mixins: "goma-rbe-prod" name: "WebRTC Chromium FYI Linux Builder" }
+    builders { mixins: "linux-xenial" mixins: "goma-rbe-prod" name: "WebRTC Chromium FYI Linux Builder (dbg)" }
+    builders { mixins: "linux-xenial"  name: "WebRTC Chromium FYI Linux Tester" }
+
+    # Mac
+
+    builders {
+      name: "WebRTC Chromium FYI Mac Builder"
+      mixins: "mac"
+      mixins: "goma-rbe-prod"
+      mixins: "xcode-10-caches"
+      dimensions: "cores:8"
+    }
+    builders {
+      name: "WebRTC Chromium FYI Mac Builder (dbg)"
+      mixins: "mac"
+      mixins: "goma-rbe-prod"
+      mixins: "xcode-10-caches"
+      dimensions: "cores:8"
+    }
+    builders {
+      name: "WebRTC Chromium FYI Mac Tester"
+      mixins: "mac"
+      mixins: "xcode-10-caches"
+    }
+
+    # Win
+
+    builders {
+      name: "WebRTC Chromium FYI Win Builder"
+      mixins: "win"
+      dimensions: "os:Windows-10"
+    }
+    builders {
+      name: "WebRTC Chromium FYI Win Builder (dbg)"
+      mixins: "win"
+      dimensions: "os:Windows-10"
+    }
+    builders {
+      name: "WebRTC Chromium FYI Win10 Tester"
+      mixins: "win"
+      dimensions: "os:Windows-10"
+    }
+    builders {
+      name: "WebRTC Chromium FYI Win7 Tester"
+      mixins: "win"
+      dimensions: "os:Windows-7"
+    }
+    builders {
+      name: "WebRTC Chromium FYI Win8 Tester"
+      mixins: "win"
+      dimensions: "os:Windows-8.1"
+    }
+  }
+}
diff --git a/infra/config/generated/luci-logdog-dev.cfg b/infra/config/generated/luci-logdog-dev.cfg
new file mode 100644
index 0000000..7057d02
--- /dev/null
+++ b/infra/config/generated/luci-logdog-dev.cfg
@@ -0,0 +1,16 @@
+# Copyright (c) 2015 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.
+#
+# For the schema of this file and documentation, see ProjectConfig message in
+# https://luci-config.appspot.com/schemas/projects:luci-logdog.cfg
+
+# Auth groups who can read log streams.
+reader_auth_groups: "all"
+# Auth groups who can register and emit new log streams.
+writer_auth_groups: "luci-logdog-chromium-dev-writers"
+
+# The base Google Storage archival path for this project.
+#
+# Archived LogDog logs will be written to this bucket/path.
+archive_gs_bucket: "chromium-luci-logdog"
diff --git a/infra/config/generated/luci-logdog.cfg b/infra/config/generated/luci-logdog.cfg
new file mode 100644
index 0000000..29302eb
--- /dev/null
+++ b/infra/config/generated/luci-logdog.cfg
@@ -0,0 +1,16 @@
+# Copyright (c) 2015 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.
+#
+# For the schema of this file and documentation, see ProjectConfig message in
+# https://luci-config.appspot.com/schemas/projects:luci-logdog.cfg
+
+# Auth groups who can read log streams.
+reader_auth_groups: "all"
+# Auth groups who can register and emit new log streams.
+writer_auth_groups: "luci-logdog-chromium-writers"
+
+# The base Google Storage archival path for this project.
+#
+# Archived LogDog logs will be written to this bucket/path.
+archive_gs_bucket: "chromium-luci-logdog"
diff --git a/infra/config/generated/luci-milo-dev.cfg b/infra/config/generated/luci-milo-dev.cfg
new file mode 100644
index 0000000..5af9f567
--- /dev/null
+++ b/infra/config/generated/luci-milo-dev.cfg
@@ -0,0 +1,191 @@
+logo_url: "https://storage.googleapis.com/chrome-infra-public/logo/chromium.svg"
+
+headers: {
+  id: "chromium"
+  oncalls: {
+    name: "Chromium"
+    url: "https://build.chromium.org/p/chromium/sheriff.json"
+  }
+  oncalls: {
+    name: "Android"
+    url: "https://build.chromium.org/p/chromium/sheriff_android.json"
+  }
+  oncalls: {
+    name: "iOS"
+    url: "https://build.chromium.org/p/chromium/sheriff_ios.json"
+  }
+  oncalls: {
+    name: "CrOS MTV"
+    url: "https://build.chromium.org/p/chromium/sheriff_cros_mtv.json"
+  }
+  oncalls: {
+    name: "CrOS non-MTV"
+    url: "https://build.chromium.org/p/chromium/sheriff_cros_nonmtv.json"
+  }
+  oncalls: {
+    name: "ChromeOS Gardener"
+    url: "https://build.chromium.org/p/chromium/sheriff_cr_cros_gardeners.json"
+  }
+  oncalls: {
+    name: "GPU"
+    url: "https://build.chromium.org/p/chromium/sheriff_gpu.json"
+  }
+  oncalls: {
+    name: "Angle"
+    url: "https://build.chromium.org/p/chromium/sheriff_angle.json"
+  }
+  oncalls: {
+    name: "Perf"
+    url: "https://build.chromium.org/p/chromium/sheriff_perf.json"
+  }
+  oncalls: {
+    name: "Perfbot"
+    url: "https://build.chromium.org/p/chromium/sheriff_perfbot.json"
+  }
+  oncalls: {
+    name: "V8"
+    url: "https://build.chromium.org/p/chromium/sheriff_v8.json"
+  }
+  oncalls: {
+    name: "Trooper"
+    url: "https://build.chromium.org/p/chromium/trooper.json"
+  }
+
+  links: {
+    name: "Builds"
+    links: {
+      text: "continuous"
+      url: "https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html"
+      alt: "Continuous browser snapshots"
+    }
+    links: {
+      text: "symbols"
+      url: "https://www.chromium.org/developers/how-tos/debugging-on-windows"
+      alt: "Windows Symbols"
+    }
+    links: {
+      text: "status"
+      url: "https://chromium-status.appspot.com/"
+      alt: "Current tree status"
+    }
+  }
+
+  links: {
+    name: "Dashboards"
+    links: {
+      text: "perf"
+      url: "https://chromeperf.appspot.com/"
+      alt: "Chrome perf dashboard"
+    }
+    links {
+      text: "flake-portal"
+      url: "https://analysis.chromium.org/p/chromium/flake-portal"
+      alt: "New flake portal"
+    }
+    links {
+      text: "legacy-flakiness"
+      url: "https://test-results.appspot.com/dashboards/flakiness_dashboard.html"
+      alt: "Legacy flakiness dashboard"
+    }
+  }
+
+  links: {
+    name: "Chromium"
+    links: {
+      text: "source"
+      url: "https://chromium.googlesource.com/chromium/src"
+      alt: "Chromium source code repository"
+    }
+    links: {
+      text: "reviews"
+      url: "https://chromium-review.googlesource.com"
+      alt: "Chromium code review tool"
+    }
+    links: {
+      text: "bugs"
+      url: "https://crbug.com"
+      alt: "Chromium bug tracker"
+    }
+    links: {
+      text: "dev"
+      url: "https://dev.chromium.org/Home"
+      alt: "Chromium developer home page"
+    }
+    links: {
+      text: "support"
+      url: "https://support.google.com/chrome/#topic=7438008"
+      alt: "Google Chrome help center"
+    }
+  }
+
+  links: {
+    name: "Consoles"
+    links: {
+      text: "swarm"
+      url: "/p/chromium/g/chromium.swarm"
+      alt: "Chromium Swarm console"
+    }
+    links: {
+      text: "prod"
+      url: "https://luci-milo.appspot.com/p/chromium/g/main/console"
+      alt: "Main luci-milo console"
+    }
+  }
+
+  links: {
+    name: "Navigate"
+    links: {
+      text: "about"
+      url: "http://dev.chromium.org/developers/testing/chromium-build-infrastructure/tour-of-the-chromium-buildbot"
+      alt: "Tour of the console"
+    }
+    links: {
+      text: "customize"
+      url: "https://chromium.googlesource.com/chromium/src/+/master/infra/config/luci-milo-dev.cfg"
+      alt: "Customize this console"
+    }
+  }
+
+  tree_status_host: "chromium-status.appspot.com"
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.swarm"
+  name: "chromium.swarm"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android N5 Swarm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android N5X Swarm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ChromeOS Swarm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Swarm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Swarm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Windows Swarm"
+  }
+}
+
+consoles {
+  id: "snapshots"
+  builder_view_only: true
+  header_id: "chromium"
+  manifest_name: "REVISION"
+  name: "Snapshot Builder"
+  builders {
+    name: "buildbucket/luci.chromium.cron/Snapshot Builder"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.cron/Snapshots"
+  }
+}
diff --git a/infra/config/generated/luci-milo.cfg b/infra/config/generated/luci-milo.cfg
new file mode 100644
index 0000000..9fcb5e6
--- /dev/null
+++ b/infra/config/generated/luci-milo.cfg
@@ -0,0 +1,5407 @@
+# See http://luci-config.appspot.com/schemas/projects:luci-milo.cfg for schema
+# of this file and documentation.
+
+logo_url: "https://storage.googleapis.com/chrome-infra-public/logo/chromium.svg"
+
+headers {
+  id: "chromium"
+  oncalls {
+    name: "Chromium"
+    url: "https://rota-ng.appspot.com/legacy/sheriff.json"
+  }
+  oncalls {
+    name: "Android"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_android.json"
+  }
+  oncalls {
+    name: "iOS"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_ios.json"
+  }
+  oncalls {
+    name: "CrOS MTV"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_cros_mtv.json"
+  }
+  oncalls {
+    name: "CrOS non-MTV"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_cros_nonmtv.json"
+  }
+  oncalls {
+    name: "ChromeOS Gardener"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_cr_cros_gardeners.json"
+  }
+  oncalls {
+    name: "GPU"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_gpu.json"
+  }
+  oncalls {
+    name: "Angle"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_angle.json"
+  }
+  oncalls {
+    name: "Perf"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_perf.json"
+  }
+  oncalls {
+    name: "Perfbot"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_perfbot.json"
+  }
+  oncalls {
+    name: "V8"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_v8.json"
+  }
+  oncalls {
+    name: "Trooper"
+    url: "https://rota-ng.appspot.com/legacy/trooper.json"
+  }
+  links {
+    name: "Builds"
+    links {
+      text: "continuous"
+      url: "https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html"
+      alt: "Continuous browser snapshots"
+    }
+    links {
+      text: "symbols"
+      url: "https://www.chromium.org/developers/how-tos/debugging-on-windows"
+      alt: "Windows Symbols"
+    }
+    links {
+      text: "status"
+      url: "https://chromium-status.appspot.com/"
+      alt: "Current tree status"
+    }
+  }
+  links {
+    name: "Dashboards"
+    links {
+      text: "perf"
+      url: "https://chromeperf.appspot.com/"
+      alt: "Chrome perf dashboard"
+    }
+    links {
+      text: "flake-portal"
+      url: "https://analysis.chromium.org/p/chromium/flake-portal"
+      alt: "New flake portal"
+    }
+    links {
+      text: "legacy-flakiness"
+      url: "https://test-results.appspot.com/dashboards/flakiness_dashboard.html"
+      alt: "Legacy flakiness dashboard"
+    }
+  }
+  links {
+    name: "Chromium"
+    links {
+      text: "source"
+      url: "https://chromium.googlesource.com/chromium/src"
+      alt: "Chromium source code repository"
+    }
+    links {
+      text: "reviews"
+      url: "https://chromium-review.googlesource.com"
+      alt: "Chromium code review tool"
+    }
+    links {
+      text: "bugs"
+      url: "https://crbug.com"
+      alt: "Chromium bug tracker"
+    }
+    links {
+      text: "coverage"
+      url: "https://analysis.chromium.org/p/chromium/coverage"
+      alt: "Chromium code coverage dashboard"
+    }
+    links {
+      text: "dev"
+      url: "https://dev.chromium.org/Home"
+      alt: "Chromium developer home page"
+    }
+    links {
+      text: "support"
+      url: "https://support.google.com/chrome/#topic=7438008"
+      alt: "Google Chrome help center"
+    }
+  }
+  links {
+    name: "Consoles"
+    links {
+      text: "android"
+      url: "/p/chromium/g/chromium.android"
+      alt: "Chromium Android console"
+    }
+    links {
+      text: "clang"
+      url: "/p/chromium/g/chromium.clang"
+      alt: "Chromium Clang console"
+    }
+    links {
+      text: "dawn"
+      url: "/p/chromium/g/chromium.dawn"
+      alt: "Chromium Dawn console"
+    }
+    links {
+      text: "fuzz"
+      url: "/p/chromium/g/chromium.fuzz"
+      alt: "Chromium Fuzz console"
+    }
+    links {
+      text: "fyi"
+      url: "/p/chromium/g/chromium.fyi"
+      alt: "Chromium FYI console"
+    }
+    links {
+      text: "gpu"
+      url: "/p/chromium/g/chromium.gpu"
+      alt: "Chromium GPU console"
+    }
+    links {
+      text: "perf"
+      url: "/p/chrome/g/chrome.perf/console"
+      alt: "Chromium Perf console"
+    }
+    links {
+      text: "perf.fyi"
+      url: "/p/chrome/g/chrome.perf.fyi/console"
+      alt: "Chromium Perf FYI console"
+    }
+    links {
+      text: "webrtc"
+      url: "/p/chromium/g/chromium.webrtc"
+      alt: "Chromium WebRTC console"
+    }
+    links {
+      text: "chromiumos"
+      url: "/p/chromium/g/chromium.chromiumos"
+      alt: "ChromiumOS console"
+    }
+  }
+  links {
+    name: "Tryservers"
+    links {
+      text: "android"
+      url: "/p/chromium/g/tryserver.chromium.android/builders"
+      alt: "Android"
+    }
+    links {
+      text: "angle"
+      url: "/p/chromium/g/angle.try/builders"
+      alt: "Angle"
+    }
+    links {
+      text: "blink"
+      url: "/p/chromium/g/tryserver.blink/builders"
+      alt: "Blink"
+    }
+    links {
+      text: "chrome"
+      url: "/p/chrome/g/tryserver.chrome/builders"
+      alt: "Chrome"
+    }
+    links {
+      text: "chromiumos"
+      url: "/p/chromium/g/tryserver.chromium.chromiumos/builders"
+      alt: "ChromiumOS"
+    }
+    links {
+      text: "linux"
+      url: "/p/chromium/g/tryserver.chromium.linux/builders"
+      alt: "Linux"
+    }
+    links {
+      text: "mac"
+      url: "/p/chromium/g/tryserver.chromium.mac/builders"
+      alt: "Mac"
+    }
+    links {
+      text: "win"
+      url: "/p/chromium/g/tryserver.chromium.win/builders"
+      alt: "Win"
+    }
+  }
+  links {
+    name: "Navigate"
+    links {
+      text: "about"
+      url: "http://dev.chromium.org/developers/testing/chromium-build-infrastructure/tour-of-the-chromium-buildbot"
+      alt: "Tour of the console"
+    }
+    links {
+      text: "customize"
+      url: "https://chromium.googlesource.com/chromium/src/+/master/infra/config/luci-milo.cfg"
+      alt: "Customize this console"
+    }
+  }
+  console_groups {
+    title {
+      text: "Tree Closers"
+      url: "https://chromium-status.appspot.com/"
+    }
+    console_ids: "chromium/chromium"
+    console_ids: "chromium/chromium.win"
+    console_ids: "chromium/chromium.mac"
+    console_ids: "chromium/chromium.linux"
+    console_ids: "chromium/chromium.chromiumos"
+    console_ids: "chrome/chrome"
+    console_ids: "chromium/chromium.memory"
+    console_ids: "chromium/chromium.gpu"
+  }
+  console_groups {
+    console_ids: "chromium/chromium.android"
+    console_ids: "chrome/chrome.perf"
+    console_ids: "chromium/chromium.gpu.fyi"
+    console_ids: "chromium/chromium.fuzz"
+  }
+  tree_status_host: "chromium-status.appspot.com"
+}
+
+headers {
+  id: "chromiumos"
+  oncalls {
+    name: "Sheriff"
+    url: "https://rota-ng.appspot.com/legacy/sheriff.json"
+  }
+  oncalls {
+    name: "Sheriff 2"
+    url: "https://rota-ng.appspot.com/legacy/sheriff2.json"
+  }
+  oncalls {
+    name: "Gardeners"
+    url: "https://rota-ng.appspot.com/legacy/sheriff_cr_cros_gardeners.json"
+  }
+  links {
+    name: "Builds"
+    links {
+      text: "status"
+      url: "https://chromiumos-status.appspot.com/"
+      alt: "Chromium OS status page"
+    }
+  }
+  links {
+    name: "ChromiumOS"
+    links {
+      text: "sources"
+      url: "https://chromium.googlesource.com/"
+      alt: "Source code project"
+    }
+    links {
+      text: "reviews"
+      url: "https://chromium-review.googlesource.com"
+      alt: "Chromium code review tool"
+    }
+    links {
+      text: "bugs"
+      url: "https://crbug.com"
+      alt: "Chromium bug tracker"
+    }
+    links {
+      text: "dev"
+      url: "http://dev.chromium.org/chromium-os"
+      alt: "ChromiumOS developer home page"
+    }
+  }
+  links {
+    name: "Navigate"
+    links {
+      text: "about"
+      url: "http://dev.chromium.org/developers/testing/chromium-build-infrastructure/tour-of-the-chromium-buildbot"
+      alt: "Tour of the console"
+    }
+    links {
+      text: "customize"
+      url: "https://chromium.googlesource.com/infra/experimental/+/infra/config/luci-milo-dev.cfg"
+      alt: "Customize this console"
+    }
+  }
+  console_groups {
+    console_ids: "chromium/chromiumos-Closers"
+    console_ids: "chromium/chromiumos-Full"
+    console_ids: "chromium/chromiumos-Incremental"
+    console_ids: "chromium/chromiumos-ASAN"
+    console_ids: "chromium/chromiumos-CommitQueue"
+    console_ids: "chromium/chromiumos.chromium"
+  }
+  tree_status_host: "chromiumos-status.appspot.com"
+}
+
+consoles {
+  header_id: "chromium"
+  id: "main"
+  name: "Chromium Main Console"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-dbg"
+    category: "chromium|android"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-rel"
+    category: "chromium|android"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-dbg"
+    category: "chromium|linux"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel"
+    category: "chromium|linux"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-dbg"
+    category: "chromium|mac"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel"
+    category: "chromium|mac"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win32-archive-rel"
+    category: "chromium|win-rel"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-archive-rel"
+    category: "chromium|win-rel"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder"
+    category: "chromium.win|release|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win x64 Builder"
+    category: "chromium.win|release|builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 (32) Tests"
+    category: "chromium.win|release|tester"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Tests (1)"
+    category: "chromium.win|release|tester"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win 7 Tests x64 (1)"
+    category: "chromium.win|release|tester"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 Tests x64"
+    category: "chromium.win|release|tester"
+    short_name: "w10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win x64 Builder (dbg)"
+    category: "chromium.win|debug|builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder (dbg)"
+    category: "chromium.win|debug|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Tests (dbg)(1)"
+    category: "chromium.win|debug|tester"
+    short_name: "7"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 Tests x64 (dbg)"
+    category: "chromium.win|debug|tester"
+    short_name: "10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Windows deterministic"
+    category: "chromium.win|misc"
+    short_name: "det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Win10"
+    category: "chromium.win|misc"
+    short_name: "wbk"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder"
+    category: "chromium.mac|release"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.10 Tests"
+    category: "chromium.mac|release"
+    short_name: "10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.11 Tests"
+    category: "chromium.mac|release"
+    short_name: "11"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.12 Tests"
+    category: "chromium.mac|release"
+    short_name: "12"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.13 Tests"
+    category: "chromium.mac|release"
+    short_name: "13"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Mac10.13 (retina)"
+    category: "chromium.mac|release"
+    short_name: "ret"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg)"
+    category: "chromium.mac|debug"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.13 Tests (dbg)"
+    category: "chromium.mac|debug"
+    short_name: "13"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device"
+    category: "chromium.mac|ios|default"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator"
+    category: "chromium.mac|ios|default"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-full-configs"
+    category: "chromium.mac|ios|default"
+    short_name: "ful"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-noncq"
+    category: "chromium.mac|ios|default"
+    short_name: "non"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device-xcode-clang"
+    category: "chromium.mac|ios|xcode"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-xcode-clang"
+    category: "chromium.mac|ios|xcode"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-slimnav"
+    category: "chromium.mac|ios|misc"
+    short_name: "slim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder"
+    category: "chromium.linux|release"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Tests"
+    category: "chromium.linux|release"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-gcc-rel"
+    category: "chromium.linux|release"
+    short_name: "gcc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-jumbo-rel"
+    category: "chromium.linux|release"
+    short_name: "jmb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Linux"
+    category: "chromium.linux|release"
+    short_name: "det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Leak Detection Linux"
+    category: "chromium.linux|release"
+    short_name: "lk"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-ozone-rel"
+    category: "chromium.linux|release"
+    short_name: "ozo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-trusty-rel"
+    category: "chromium.linux|release"
+    short_name: "tru"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder (dbg)(32)"
+    category: "chromium.linux|debug|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder (dbg)"
+    category: "chromium.linux|debug|builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Linux (dbg)"
+    category: "chromium.linux|debug|builder"
+    short_name: "det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Tests (dbg)(1)"
+    category: "chromium.linux|debug|tester"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Cast Linux"
+    category: "chromium.linux|cast"
+    short_name: "vid"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Cast Audio Linux"
+    category: "chromium.linux|cast"
+    short_name: "aud"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Fuchsia ARM64"
+    category: "chromium.linux|fuchsia|a64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-arm64-cast"
+    category: "chromium.linux|fuchsia|cast"
+    short_name: "a64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-x64-cast"
+    category: "chromium.linux|fuchsia|cast"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-x64-dbg"
+    category: "chromium.linux|fuchsia|x64"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Fuchsia (dbg)"
+    category: "chromium.linux|fuchsia|x64"
+    short_name: "det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Fuchsia x64"
+    category: "chromium.linux|fuchsia|x64"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ChromiumOS Full"
+    category: "chromium.chromiumos|default"
+    short_name: "ful"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-chromeos-rel"
+    category: "chromium.chromiumos|default"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-chromeos-dbg"
+    category: "chromium.chromiumos|default"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-asan-rel"
+    category: "chromium.chromiumos|simple|release|x64"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-cfi-thin-lto-rel"
+    category: "chromium.chromiumos|simple|release|x64"
+    short_name: "cfi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-dbg"
+    category: "chromium.chromiumos|simple|debug|x64"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel"
+    category: "chromium.chromiumos|simple|release|x64"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-arm-generic-dbg"
+    category: "chromium.chromiumos|simple|debug"
+    short_name: "arm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-arm-generic-rel"
+    category: "chromium.chromiumos|simple|release"
+    short_name: "arm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-kevin-rel"
+    category: "chromium.chromiumos|simple|release"
+    short_name: "kvn"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/linux-chromeos-google-rel"
+    category: "chrome"
+    short_name: "cro"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/linux-google-rel"
+    category: "chrome"
+    short_name: "lnx"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/mac-google-rel"
+    category: "chrome"
+    short_name: "mac"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/win-google-rel"
+    category: "chrome"
+    short_name: "win"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-asan"
+    category: "chromium.memory|win"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASan 64 Builder"
+    category: "chromium.memory|mac"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASan 64 Tests (1)"
+    category: "chromium.memory|mac"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux TSan Builder"
+    category: "chromium.memory|linux|TSan v2"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux TSan Tests"
+    category: "chromium.memory|linux|TSan v2"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ASan LSan Builder"
+    category: "chromium.memory|linux|asan lsan"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ASan LSan Tests (1)"
+    category: "chromium.memory|linux|asan lsan"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ASan Tests (sandboxed)"
+    category: "chromium.memory|linux|asan lsan"
+    short_name: "sbx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux MSan Builder"
+    category: "chromium.memory|linux|msan"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux MSan Tests"
+    category: "chromium.memory|linux|msan"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux ASAN"
+    category: "chromium.memory|linux|webkit"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux MSAN"
+    category: "chromium.memory|linux|webkit"
+    short_name: "msn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux Leak"
+    category: "chromium.memory|linux|webkit"
+    short_name: "lk"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Chromium OS ASan LSan Builder"
+    category: "chromium.memory|cros|asan"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Chromium OS ASan LSan Tests (1)"
+    category: "chromium.memory|cros|asan"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ChromiumOS MSan Builder"
+    category: "chromium.memory|cros|msan"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ChromiumOS MSan Tests"
+    category: "chromium.memory|cros|msan"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-asan"
+    category: "chromium.memory|android"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android CFI"
+    category: "chromium.memory|cfi"
+    short_name: "and"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux CFI"
+    category: "chromium.memory|cfi"
+    short_name: "lnx"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.win"
+  name: "chromium.win"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder"
+    category: "release|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win x64 Builder"
+    category: "release|builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 (32) Tests"
+    category: "release|tester"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Tests (1)"
+    category: "release|tester"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win 7 Tests x64 (1)"
+    category: "release|tester"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 Tests x64"
+    category: "release|tester"
+    short_name: "w10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win x64 Builder (dbg)"
+    category: "debug|builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder (dbg)"
+    category: "debug|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Tests (dbg)(1)"
+    category: "debug|tester"
+    short_name: "7"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 Tests x64 (dbg)"
+    category: "debug|tester"
+    short_name: "10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Windows deterministic"
+    category: "misc"
+    short_name: "det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Win10"
+    category: "misc"
+    short_name: "wbk"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.mac"
+  name: "chromium.mac"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder"
+    category: "release"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.10 Tests"
+    category: "release"
+    short_name: "10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.11 Tests"
+    category: "release"
+    short_name: "11"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.12 Tests"
+    category: "release"
+    short_name: "12"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.13 Tests"
+    category: "release"
+    short_name: "13"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Mac10.13 (retina)"
+    category: "release"
+    short_name: "ret"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg)"
+    category: "debug"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac10.13 Tests (dbg)"
+    category: "debug"
+    short_name: "13"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device"
+    category: "ios|default"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator"
+    category: "ios|default"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-full-configs"
+    category: "ios|default"
+    short_name: "ful"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-noncq"
+    category: "ios|default"
+    short_name: "non"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device-xcode-clang"
+    category: "ios|xcode"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-xcode-clang"
+    category: "ios|xcode"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-slimnav"
+    category: "ios|misc"
+    short_name: "slim"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.linux"
+  name: "chromium.linux"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder"
+    category: "release"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Tests"
+    category: "release"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-gcc-rel"
+    category: "release"
+    short_name: "gcc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-jumbo-rel"
+    category: "release"
+    short_name: "jmb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Linux"
+    category: "release"
+    short_name: "det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Leak Detection Linux"
+    category: "release"
+    short_name: "lk"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-ozone-rel"
+    category: "release"
+    short_name: "ozo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-trusty-rel"
+    category: "release"
+    short_name: "tru"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder (dbg)(32)"
+    category: "debug|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder (dbg)"
+    category: "debug|builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Linux (dbg)"
+    category: "debug|builder"
+    short_name: "det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Tests (dbg)(1)"
+    category: "debug|tester"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Cast Linux"
+    category: "cast"
+    short_name: "vid"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Cast Audio Linux"
+    category: "cast"
+    short_name: "aud"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Fuchsia ARM64"
+    category: "fuchsia|a64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-arm64-cast"
+    category: "fuchsia|cast"
+    short_name: "a64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-x64-cast"
+    category: "fuchsia|cast"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-x64-dbg"
+    category: "fuchsia|x64"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Fuchsia (dbg)"
+    category: "fuchsia|x64"
+    short_name: "det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Fuchsia x64"
+    category: "fuchsia|x64"
+    short_name: "rel"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.chromiumos"
+  name: "chromium.chromiumos"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ChromiumOS Full"
+    category: "default"
+    short_name: "ful"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-chromeos-rel"
+    category: "default"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-chromeos-dbg"
+    category: "default"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-asan-rel"
+    category: "simple|release|x64"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-cfi-thin-lto-rel"
+    category: "simple|release|x64"
+    short_name: "cfi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-dbg"
+    category: "simple|debug|x64"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel"
+    category: "simple|release|x64"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-arm-generic-dbg"
+    category: "simple|debug"
+    short_name: "arm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-arm-generic-rel"
+    category: "simple|release"
+    short_name: "arm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-kevin-rel"
+    category: "simple|release"
+    short_name: "kvn"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.memory"
+  name: "chromium.memory"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-asan"
+    category: "win"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASan 64 Builder"
+    category: "mac"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASan 64 Tests (1)"
+    category: "mac"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux TSan Builder"
+    category: "linux|TSan v2"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux TSan Tests"
+    category: "linux|TSan v2"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ASan LSan Builder"
+    category: "linux|asan lsan"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ASan LSan Tests (1)"
+    category: "linux|asan lsan"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ASan Tests (sandboxed)"
+    category: "linux|asan lsan"
+    short_name: "sbx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux MSan Builder"
+    category: "linux|msan"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux MSan Tests"
+    category: "linux|msan"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux ASAN"
+    category: "linux|webkit"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux MSAN"
+    category: "linux|webkit"
+    short_name: "msn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux Leak"
+    category: "linux|webkit"
+    short_name: "lk"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Chromium OS ASan LSan Builder"
+    category: "cros|asan"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Chromium OS ASan LSan Tests (1)"
+    category: "cros|asan"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ChromiumOS MSan Builder"
+    category: "cros|msan"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux ChromiumOS MSan Tests"
+    category: "cros|msan"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-asan"
+    category: "android"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android CFI"
+    category: "cfi"
+    short_name: "and"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux CFI"
+    category: "cfi"
+    short_name: "lnx"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.fuzz"
+  name: "chromium.fuzz"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Afl Upload Linux ASan"
+    category: "afl"
+    short_name: "afl"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win ASan Release"
+    category: "win asan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win ASan Release Media"
+    category: "win asan"
+    short_name: "med"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASAN Release"
+    category: "mac asan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASAN Release Media"
+    category: "mac asan"
+    short_name: "med"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ChromiumOS ASAN Release"
+    short_name: "cro"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASAN Debug"
+    category: "linux asan"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASAN Release"
+    category: "linux asan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASAN Release Media"
+    category: "linux asan"
+    short_name: "med"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASan Debug (32-bit x86 with V8-ARM)"
+    category: "linux asan|x64 v8-ARM"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASan Release (32-bit x86 with V8-ARM)"
+    category: "linux asan|x64 v8-ARM"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASan Release Media (32-bit x86 with V8-ARM)"
+    category: "linux asan|x64 v8-ARM"
+    short_name: "med"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Chrome OS ASan"
+    category: "libfuzz"
+    short_name: "chromeos-asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux32 ASan"
+    category: "libfuzz"
+    short_name: "linux32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux32 ASan Debug"
+    category: "libfuzz"
+    short_name: "linux32-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux ASan"
+    category: "libfuzz"
+    short_name: "linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux ASan Debug"
+    category: "libfuzz"
+    short_name: "linux-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux MSan"
+    category: "libfuzz"
+    short_name: "linux-msan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux UBSan"
+    category: "libfuzz"
+    short_name: "linux-ubsan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Mac ASan"
+    category: "libfuzz"
+    short_name: "mac-asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Windows ASan"
+    category: "libfuzz"
+    short_name: "win-asan"
+  }
+    builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux32 V8-ARM ASan"
+    category: "libfuzz"
+    short_name: "arm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux32 V8-ARM ASan Debug"
+    category: "libfuzz"
+    short_name: "arm-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux V8-ARM64 ASan"
+    category: "libfuzz"
+    short_name: "arm64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux V8-ARM64 ASan Debug"
+    category: "libfuzz"
+    short_name: "arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/MSAN Release (chained origins)"
+    category: "linux msan"
+    short_name: "org"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/MSAN Release (no origins)"
+    category: "linux msan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/TSAN Debug"
+    category: "linux tsan"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/TSAN Release"
+    category: "linux tsan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/UBSan Release"
+    category: "linux UBSan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/UBSan vptr Release"
+    category: "linux UBSan"
+    short_name: "vpt"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium"
+  name: "chromium"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  include_experimental_builds: true
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-dbg"
+    category: "android"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-rel"
+    category: "android"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-dbg"
+    category: "linux"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel"
+    category: "linux"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-dbg"
+    category: "mac"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel"
+    category: "mac"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win32-archive-rel"
+    category: "win-rel"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-archive-rel"
+    category: "win-rel"
+    short_name: "64"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.android"
+  name: "chromium.android"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-arm-dbg"
+    category: "cronet|arm"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-arm-rel"
+    category: "cronet|arm"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-arm64-dbg"
+    category: "cronet|arm64"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-arm64-rel"
+    category: "cronet|arm64"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-x86-dbg"
+    category: "cronet|x86"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-x86-rel"
+    category: "cronet|x86"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-asan-arm-rel"
+    category: "cronet|asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-kitkat-arm-rel"
+    category: "cronet|test"
+    short_name: "k"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-lollipop-arm-rel"
+    category: "cronet|test"
+    short_name: "l"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-marshmallow-arm64-rel"
+    category: "cronet|test"
+    short_name: "m"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-marshmallow-arm64-perf-rel"
+    category: "cronet|test|perf"
+    short_name: "m"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-jumbo-rel"
+    category: "builder"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android arm Builder (dbg)"
+    category: "builder|arm"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android arm64 Builder (dbg)"
+    category: "builder|arm"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android x86 Builder (dbg)"
+    category: "builder|x86"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android x64 Builder (dbg)"
+    category: "builder|x86"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Android"
+    category: "builder|det"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Android (dbg)"
+    category: "builder|det"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/KitKat Phone Tester (dbg)"
+    category: "tester|phone"
+    short_name: "K"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Lollipop Phone Tester"
+    category: "tester|phone"
+    short_name: "L"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Marshmallow 64 bit Tester"
+    category: "tester|phone"
+    short_name: "M"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Nougat Phone Tester"
+    category: "tester|phone"
+    short_name: "N"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Oreo Phone Tester"
+    category: "tester|phone"
+    short_name: "O"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-pie-arm64-dbg"
+    category: "tester|phone"
+    short_name: "P"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/KitKat Tablet Tester"
+    category: "tester|tablet"
+    short_name: "K"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Lollipop Tablet Tester"
+    category: "tester|tablet"
+    short_name: "L"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Marshmallow Tablet Tester"
+    category: "tester|tablet"
+    short_name: "M"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-incremental-dbg"
+    category: "tester|incremental"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView L (dbg)"
+    category: "tester|webview"
+    short_name: "L"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView M (dbg)"
+    category: "tester|webview"
+    short_name: "M"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView N (dbg)"
+    category: "tester|webview"
+    short_name: "N"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView O (dbg)"
+    category: "tester|webview"
+    short_name: "O"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView P (dbg)"
+    category: "tester|webview"
+    short_name: "P"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-kitkat-arm-rel"
+    category: "on_cq"
+    short_name: "K"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-marshmallow-arm64-rel"
+    category: "on_cq"
+    short_name: "M"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Cast Android (dbg)"
+    category: "on_cq"
+    short_name: "cst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android ASAN (dbg)"
+    category: "on_cq"
+    short_name: "san"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-pie-arm64-rel"
+    category: "on_cq|future"
+    short_name: "P"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.android.fyi"
+  name: "chromium.android.fyi"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-bfcache-debug"
+    category: "android"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Memory Infra Tester"
+    category: "Memory"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView P FYI (rel)"
+    category: "webview"
+    short_name: "p-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-marshmallow-x86-fyi-rel"
+    category: "emulator|M|x86"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-pie-x86-fyi-rel"
+    category: "emulator|P|x86"
+    short_name: "rel"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.clang"
+  name: "chromium.clang"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinux"
+    category: "ToT Linux"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/ToTLinuxOfficial"
+    category: "ToT Linux"
+    short_name: "ofi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinux (dbg)"
+    category: "ToT Linux"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinuxASan"
+    category: "ToT Linux"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinuxASanLibfuzzer"
+    category: "ToT Linux"
+    short_name: "fuz"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinuxMSan"
+    category: "ToT Linux"
+    short_name: "msn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinuxTSan"
+    category: "ToT Linux"
+    short_name: "tsn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinuxThinLTO"
+    category: "ToT Linux"
+    short_name: "lto"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinuxUBSanVptr"
+    category: "ToT Linux"
+    short_name: "usn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTAndroid"
+    category: "ToT Android"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTAndroid (dbg)"
+    category: "ToT Android"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTAndroid x64"
+    category: "ToT Android"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTAndroid64"
+    category: "ToT Android"
+    short_name: "a64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTAndroidASan"
+    category: "ToT Android"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTAndroidCFI"
+    category: "ToT Android"
+    short_name: "cfi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTAndroidOfficial"
+    category: "ToT Android"
+    short_name: "off"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTMac"
+    category: "ToT Mac"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/ToTMacOfficial"
+    category: "ToT Mac"
+    short_name: "ofi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTMac (dbg)"
+    category: "ToT Mac"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTMacASan"
+    category: "ToT Mac"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/ToTWin"
+    category: "ToT Windows"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/ToTWinOfficial"
+    category: "ToT Windows"
+    short_name: "ofi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTWin(dbg)"
+    category: "ToT Windows"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTWin(dll)"
+    category: "ToT Windows"
+    short_name: "dll"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/ToTWin64"
+    category: "ToT Windows|x64"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTWin64(dbg)"
+    category: "ToT Windows|x64"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTWin64(dll)"
+    category: "ToT Windows|x64"
+    short_name: "dll"
+  }
+  builders {
+    name: "buildbucket/luci.chrome.ci/ToTWinThinLTO64"
+    category: "ToT Windows|x64"
+    short_name: "lto"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTWinLibcxx64"
+    category: "ToT Windows|x64"
+    short_name: "cxx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/CrWinAsan"
+    category: "ToT Windows|Asan"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/CrWinAsan(dll)"
+    category: "ToT Windows|Asan"
+    short_name: "dll"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTWinASanLibfuzzer"
+    category: "ToT Windows|Asan"
+    short_name: "fuz"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-win_cross-rel"
+    category: "ToT Windows"
+    short_name: "lxw"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTLinuxCoverage"
+    category: "ToT Code Coverage"
+    short_name: "linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTMacCoverage"
+    category: "ToT Code Coverage"
+    short_name: "mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/CFI Linux CF"
+    category: "CFI|Linux"
+    short_name: "CF"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/CFI Linux ToT"
+    category: "CFI|Linux"
+    short_name: "ToT"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTWinCFI"
+    category: "CFI|Win"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTWinCFI64"
+    category: "CFI|Win"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTiOS"
+    category: "iOS"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ToTiOSDevice"
+    category: "iOS"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/UBSanVptr Linux"
+    short_name: "usn"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.fyi.goma"
+  name: "chromium.fyi.goma"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder Goma Canary"
+    category: "win|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder (dbg) Goma Canary"
+    category: "win|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win32-archive-rel-goma-canary-localoutputcache"
+    category: "win|rel"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win cl.exe Goma Canary LocalOutputCache"
+    category: "cl.exe|rel"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Builder Goma Canary"
+    category: "win7|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Builder (dbg) Goma Canary"
+    category: "win7|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WinMSVC64 Goma Canary"
+    category: "cl.exe|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder Goma Canary"
+    category: "mac|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg) Goma Canary"
+    category: "mac|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel-goma-canary"
+    category: "mac|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg) Goma Canary (clobber)"
+    category: "mac|dbg"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel-goma-canary-localoutputcache"
+    category: "mac|rel"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel-goma-canary"
+    category: "cros|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder Goma Canary"
+    category: "linux|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-canary"
+    category: "linux|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-canary-localoutputcache"
+    category: "linux|rel"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-dbg-goma-canary"
+    category: "android|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device-goma-canary-clobber"
+    category: "ios|rel"
+    short_name: "clb"
+  }
+  # RBE
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-rbe-canary"
+    category: "rbe|linux|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-rbe-ats-canary"
+    category: "rbe|linux|rel"
+    short_name: "ats"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder Goma RBE Canary"
+    category: "rbe|linux|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel-goma-rbe-canary"
+    category: "rbe|cros|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-dbg-goma-rbe-canary"
+    category: "rbe|android|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-dbg-goma-rbe-ats-canary"
+    category: "rbe|android|dbg"
+    short_name: "ats"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel-goma-rbe-canary"
+    category: "rbe|mac|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg) Goma RBE Canary (clobber)"
+    category: "rbe|mac|dbg"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device-goma-rbe-canary-clobber"
+    category: "rbe|ios"
+    short_name: "clb"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "goma.latest"
+  name: "goma.latest"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder Goma Latest Client"
+    category: "win|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder (dbg) Goma Latest Client"
+    category: "win|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win32-archive-rel-goma-latest-localoutputcache"
+    category: "win|rel"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win cl.exe Goma Latest Client LocalOutputCache"
+    category: "cl.exe|rel"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Builder Goma Latest Client"
+    category: "win7|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Builder (dbg) Goma Latest Client"
+    category: "win7|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WinMSVC64 Goma Latest Client"
+    category: "cl.exe|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder Goma Latest Client"
+    category: "mac|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg) Goma Latest Client"
+    category: "mac|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel-goma-latest"
+    category: "mac|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg) Goma Latest Client (clobber)"
+    category: "mac|dbg"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel-goma-latest-localoutputcache"
+    category: "mac|rel"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel-goma-latest"
+    category: "cros|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder Goma Latest Client"
+    category: "linux|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-latest"
+    category: "linux|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-latest-localoutputcache"
+    category: "linux|rel"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-dbg-goma-latest"
+    category: "android|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device-goma-latest-clobber"
+    category: "ios"
+    short_name: "clb"
+  }
+  # RBE
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-rbe-latest"
+    category: "rbe|linux|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-rbe-ats-latest"
+    category: "rbe|linux|rel"
+    short_name: "ats"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder Goma RBE Latest Client"
+    category: "rbe|linux|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel-goma-rbe-latest"
+    category: "rbe|cros|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-dbg-goma-rbe-latest"
+    category: "rbe|android|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-archive-dbg-goma-rbe-ats-latest"
+    category: "rbe|android|dbg"
+    short_name: "ats"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel-goma-rbe-latest"
+    category: "rbe|mac|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg) Goma RBE Latest Client (clobber)"
+    category: "rbe|mac|dbg"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device-goma-rbe-latest-clobber"
+    category: "rbe|ios"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder Goma RBE Latest Client"
+    category: "rbe|win|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder (dbg) Goma RBE Latest Client"
+    category: "rbe|win|dbg"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.fyi"
+  name: "chromium.fyi"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Closure Compilation Linux"
+    category: "closure_compilation"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-code-coverage"
+    category: "code_coverage"
+    short_name: "and"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-code-coverage"
+    category: "code_coverage"
+    short_name: "lnx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-vm-code-coverage"
+    category: "code_coverage"
+    short_name: "vm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-chromeos-code-coverage"
+    category: "code_coverage"
+    short_name: "lcr"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-code-coverage-generation"
+    category: "code_coverage"
+    short_name: "mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-code-coverage"
+    category: "code_coverage"
+    short_name: "ios"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-cronet"
+    category: "cronet"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-hermetic-upgrade-rel"
+    category: "mac"
+    short_name: "herm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-osxbeta-rel"
+    category: "mac"
+    short_name: "beta"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-jumbo-rel"
+    category: "mac"
+    short_name: "jmb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-jumbo-rel"
+    category: "win"
+    short_name: "jmb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac deterministic"
+    category: "deterministic|mac"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac deterministic (dbg)"
+    category: "deterministic|mac"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-fyi-arm64-rel"
+    category: "fuchsia"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-fyi-x64-dbg"
+    category: "fuchsia"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-fyi-x64-rel"
+    category: "fuchsia"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android Builder (dbg) Goma Canary"
+    category: "goma|android|debug"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder Goma Canary"
+    category: "goma|linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-canary"
+    category: "goma|linux"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-archive-rel-goma-canary-localoutputcache"
+    category: "goma|linux"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg) Goma Canary"
+    category: "goma|mac|debug"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder (dbg) Goma Canary (clobber)"
+    category: "goma|mac|debug"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Builder Goma Canary"
+    category: "goma|mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel-goma-canary"
+    category: "goma|mac"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-archive-rel-goma-canary-localoutputcache"
+    category: "goma|mac"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder (dbg) Goma Canary"
+    category: "goma|win|debug"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Builder (dbg) Goma Canary"
+    category: "goma|win|debug"
+    short_name: "7"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win Builder Goma Canary"
+    category: "goma|win"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win32-archive-rel-goma-canary-localoutputcache"
+    category: "goma|win"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 Builder Goma Canary"
+    category: "goma|win"
+    short_name: "7"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win cl.exe Goma Canary LocalOutputCache"
+    category: "goma|win|cl.exe"
+    short_name: "loc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WinMSVC64 Goma Canary"
+    category: "goma|win|cl.exe"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel-goma-canary"
+    category: "goma|chromeos"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel-vm-tests"
+    category: "chromeos"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-kevin-rel-hw-tests"
+    category: "chromos"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device-goma-canary-clobber"
+    category: "goma|ios"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios12-beta-simulator"
+    category: "iOS|iOS12"
+    short_name: "beta"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios13-sdk-device"
+    category: "iOS|iOS13"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios13-sdk-simulator"
+    category: "iOS|iOS13"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios13-beta-simulator"
+    category: "iOS|iOS13"
+    short_name: "ios13"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Jumbo Linux x64"
+    category: "jumbo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Jumbo Mac"
+    category: "jumbo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Jumbo Win x64"
+    category: "jumbo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-blink-animation-use-time-delta"
+    category: "linux|blink"
+    short_name: "TD"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-blink-heap-concurrent-marking-tsan-rel"
+    category: "linux|blink"
+    short_name: "CM"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-blink-heap-verification"
+    category: "linux|blink"
+    short_name: "VF"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/VR Linux"
+    category: "linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-bfcache-debug"
+    category: "linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-oor-cors-rel"
+    category: "linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-fieldtrial-rel"
+    category: "linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-wpt-fyi-rel"
+    category: "linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mojo Android"
+    category: "mojo"
+    short_name: "and"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-mojo-webview-rel"
+    category: "mojo"
+    short_name: "aw"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mojo ChromiumOS"
+    category: "mojo"
+    short_name: "cr"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mojo Linux"
+    category: "mojo"
+    short_name: "lnx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/mac-mojo-rel"
+    category: "mojo"
+    short_name: "mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mojo Windows"
+    category: "mojo"
+    short_name: "win"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-chromium-tests-staging-builder"
+    category: "recipe|staging|linux"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-chromium-tests-staging-tests"
+    category: "recipe|staging|linux"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux remote_run Builder"
+    category: "remote_run"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux remote_run Tester"
+    category: "remote_run"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Site Isolation Android"
+    category: "site_isolation"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-annotator-rel"
+    category: "network|traffic|annotations"
+    short_name: "lnx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-annotator-rel"
+    category: "network|traffic|annotations"
+    short_name: "win"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Viz"
+    category: "viz"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win 10 Fast Ring"
+    category: "win10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-pixel-builder-rel"
+    category: "win10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-pixel-tester-rel"
+    category: "win10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 Tests x64 1803"
+    category: "win10|1803"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-celab-builder-rel"
+    category: "celab"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/win-celab-tester-rel"
+    category: "celab"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.goma"
+  name: "chromium.goma"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  include_experimental_builds: true
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma Staging"
+    category: "clients5"
+    short_name: "lnx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Mac Goma Staging"
+    category: "clients5"
+    short_name: "mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/CrWinGomaStaging"
+    category: "clients5"
+    short_name: "win"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE ToT"
+    category: "rbe|tot|linux|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE ToT (ATS)"
+    category: "rbe|tot|linux|rel"
+    short_name: "ats"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Mac Goma RBE ToT"
+    category: "rbe|tot|mac|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Win Goma RBE ToT"
+    category: "rbe|tot|win|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Android ARM 32-bit Goma RBE ToT"
+    category: "rbe|tot|android arm|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Android ARM 32-bit Goma RBE ToT (ATS)"
+    category: "rbe|tot|android arm|rel"
+    short_name: "ats"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Staging (clobber)"
+    category: "rbe|staging|linux|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Staging"
+    category: "rbe|staging|linux|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Staging (dbg) (clobber)"
+    category: "rbe|staging|linux|debug"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Staging (dbg)"
+    category: "rbe|staging|linux|debug"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Mac Goma RBE Staging (clobber)"
+    category: "rbe|staging|mac|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Mac Goma RBE Staging"
+    category: "rbe|staging|mac|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Mac Goma RBE Staging (dbg)"
+    category: "rbe|staging|mac|debug"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Win Goma RBE Staging"
+    category: "rbe|staging|win|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Win Goma RBE Staging (clobber)"
+    category: "rbe|staging|win|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Android ARM 32-bit Goma RBE Staging"
+    category: "rbe|staging|android arm|rel"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  include_experimental_builds: true
+  id: "luci.chromium.goma"
+  name: "luci.chromium.goma"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma Staging"
+    category: "clients5"
+    short_name: "lnx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Mac Goma Staging"
+    category: "clients5"
+    short_name: "mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/CrWinGomaStaging"
+    category: "clients5"
+    short_name: "win"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Staging (clobber)"
+    category: "rbe|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Staging"
+    category: "rbe|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Staging (dbg) (clobber)"
+    category: "rbe|debug"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Staging (dbg)"
+    category: "rbe|debug"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.goma.fyi"
+  name: "chromium.goma.fyi"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  include_experimental_builds: true
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Prod"
+    category: "prod|linux|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Prod (clobber)"
+    category: "prod|linux|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Prod (dbg)"
+    category: "prod|linux|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Linux Goma RBE Prod (dbg) (clobber)"
+    category: "prod|linux|dbg"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Mac Goma RBE Prod"
+    category: "prod|mac|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Win Goma RBE Prod"
+    category: "prod|win|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Win Goma RBE Prod (clobber)"
+    category: "prod|win|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Win Goma RBE Prod (dbg)"
+    category: "prod|win|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Win Goma RBE Prod (dbg) (clobber)"
+    category: "prod|win|dbg"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Android ARM 32-bit Goma RBE Prod"
+    category: "prod|android arm|rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Android ARM 32-bit Goma RBE Prod (clobber)"
+    category: "prod|android arm|rel"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Android ARM 32-bit Goma RBE Prod (dbg)"
+    category: "prod|android arm|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Chromium Android ARM 32-bit Goma RBE Prod (dbg) (clobber)"
+    category: "prod|android arm|dbg"
+    short_name: "clb"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-fyi-arm64-rel (Goma RBE FYI)"
+    category: "prod|chromium.linux|fuchsia|misc"
+    short_name: "a64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-fyi-x64-rel (Goma RBE FYI)"
+    category: "prod|chromium.linux|fuchsia|misc"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/chromeos-amd64-generic-rel (Goma RBE FYI)"
+    category: "tot|chromium.chromiumos|simple|release|x64"
+    short_name: "rel"
+  }
+}
+
+# These are used for monitoring builders that have recently been migrated to
+# Goma RBE (See crbug.com/950413).
+consoles {
+  header_id: "chromium"
+  id: "chromium.goma.migration"
+  name: "chromium.goma.migration"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  include_experimental_builds: true
+  builders {
+    name: "buildbucket/luci.chromium.ci/VR Linux"
+    category: "week1|linux"
+    short_name: "vr"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mojo Linux"
+    category: "week1|linux"
+    short_name: "mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder (dbg)"
+    category: "week1|linux|dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder (dbg)(32)"
+    category: "week1|linux|dbg"
+    short_name: "32bit"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux CFI"
+    category: "week1|linux|cfi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/CFI Linux CF"
+    category: "week1|linux|cfi"
+    short_name: "cf"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux MSan Builder"
+    category: "week1|linux"
+    short_name: "msan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Afl Upload Linux ASan"
+    category: "week1|linux"
+    short_name: "afl-asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux ASAN"
+    category: "week1|linux|webkit"
+    short_name: "asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux Leak"
+    category: "week1|linux|webkit"
+    short_name: "leak"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Linux MSAN"
+    category: "week1|linux|webkit"
+    short_name: "msan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 32 Vk Release (Pixel 2)"
+    category: "week2a|android|32"
+    short_name: "p2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 32 dEQP Vk Release (Pixel 2)"
+    category: "week2a|android|32deqp"
+    short_name: "p2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 64 Vk Release (Pixel 2)"
+    category: "week2a|android|64"
+    short_name: "p2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 64 dEQP Vk Release (Pixel 2)"
+    category: "week2a|android|64deqp"
+    short_name: "p2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (NVIDIA Shield TV)"
+    category: "week2a|android|rel"
+    short_name: "shdtv"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 5)"
+    category: "week2a|android|rel"
+    short_name: "n5"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 5X)"
+    category: "week2a|android|rel"
+    short_name: "n5x"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 6)"
+    category: "week2a|android|rel"
+    short_name: "n6"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 6P)"
+    category: "week2a|android|rel"
+    short_name: "n6p"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 9)"
+    category: "week2a|android|rel"
+    short_name: "n9"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Pixel 2)"
+    category: "week2a|android|rel"
+    short_name: "p2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI dEQP Release (Nexus 5X)"
+    category: "week2a|android|deqp"
+    short_name: "n5x"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Android"
+    category: "week2a|android|det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Android (dbg)"
+    category: "week2a|android|det"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Android Builder"
+    category: "week2b|android|release"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Android Builder (dbg)"
+    category: "week2b|android|debug|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Android Builder ARM64 (dbg)"
+    category: "week2b|android|debug|builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Linux Builder"
+    category: "week2b|linux|release"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Linux Builder (dbg)"
+    category: "week2b|linux|debug"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Mac Builder"
+    category: "week2b|mac|release"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Mac Builder (dbg)"
+    category: "week2b|mac|debug"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Android Builder"
+    category: "week2b|android"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Linux Builder"
+    category: "week2b|linux"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Mac Builder"
+    category: "week2b|mac"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASAN Release"
+    category: "week2c|mac|asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASAN Release Media"
+    category: "week2c|mac|asan"
+    short_name: "media"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac ASan 64 Builder"
+    category: "week2c|mac|asan"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Mac ASan"
+    category: "week2c|mac|asan"
+    short_name: "fuzz"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/WebKit Mac10.13 (retina)"
+    category: "week2c|mac"
+    short_name: "webkit"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android CFI"
+    category: "week2c|android"
+    short_name: "cfi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Site Isolation Android"
+    category: "week2c|android"
+    short_name: "isolate"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mojo Android"
+    category: "week2c|android"
+    short_name: "mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android x64 Builder (dbg)"
+    category: "week2c|android|dbg"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android x86 Builder (dbg)"
+    category: "week2c|android|dbg"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView L (dbg)"
+    category: "week2c|android|dbg|webview"
+    short_name: "l"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView M (dbg)"
+    category: "week2c|android|dbg|webview"
+    short_name: "m"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView N (dbg)"
+    category: "week2c|android|dbg|webview"
+    short_name: "n"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView O (dbg)"
+    category: "week2c|android|dbg|webview"
+    short_name: "o"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android WebView P FYI (rel)"
+    category: "week2c|android|rel|webview"
+    short_name: "p"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Linux x64 Builder"
+    category: "week2d|linux|dawn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Linux x64 DEPS Builder"
+    category: "week2d|linux|dawn"
+    short_name: "deps"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Linux Builder"
+    category: "week2d|linux|gpu|fyi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Linux Builder (dbg)"
+    category: "week2d|linux|gpu|fyi"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Linux Ozone Builder"
+    category: "week2d|linux|gpu|fyi"
+    short_name: "ozone"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Linux dEQP Builder"
+    category: "week2d|linux|gpu|fyi"
+    short_name: "deqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI GPU TSAN Release"
+    category: "week2d|linux|gpu|fyi"
+    short_name: "tsan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Linux Builder (dbg)"
+    category: "week2d|linux|gpu"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Viz"
+    category: "week2d|linux"
+    short_name: "viz"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux remote_run Builder"
+    category: "week2d|linux"
+    short_name: "rem"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Closure Compilation Linux"
+    category: "week2d|linux"
+    short_name: "clsr"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Linux"
+    category: "week2d|linux|det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Deterministic Linux (dbg)"
+    category: "week2d|linux|det"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Jumbo Linux x64"
+    category: "week2d|linux"
+    short_name: "jumbo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Mac x64 Builder"
+    category: "week2d|mac|dawn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Mac x64 DEPS Builder"
+    category: "week2d|mac|dawn"
+    short_name: "deps"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Mac Builder"
+    category: "week2d|mac|gpu|fyi"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Mac Builder (dbg)"
+    category: "week2d|mac|gpu|fyi"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Mac dEQP Builder"
+    category: "week2d|mac|gpu|fyi"
+    short_name: "deqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI GPU ASAN Release"
+    category: "week2d|mac|gpu|fyi"
+    short_name: "asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Mac Builder (dbg)"
+    category: "week2d|mac|gpu"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac deterministic"
+    category: "week2d|mac|det"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac deterministic (dbg)"
+    category: "week2d|mac|det"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Jumbo Mac"
+    category: "week2d|mac"
+    short_name: "jumbo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Builder"
+    category: "week2.5|linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Linux Builder"
+    category: "week2.5|linux"
+    short_name: "gpu"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-ozone-rel"
+    category: "week3a|linux"
+    short_name: "ozone"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-annotator-rel"
+    category: "week3a|linux"
+    short_name: "anno"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux_chromium_component_updater"
+    category: "week3a|linux"
+    short_name: "cc_upd"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-code-coverage"
+    category: "week3a|linux"
+    short_name: "code"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-blink-animation-use-time-delta"
+    category: "week3a|linux|blink"
+    short_name: "anim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-blink-heap-concurrent-marking-tsan-rel"
+    category: "week3a|linux|blink"
+    short_name: "tsan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-blink-heap-verification"
+    category: "week3a|linux|blink"
+    short_name: "ver"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/linux-chromium-tests-staging-builder"
+    category: "week3a|linux"
+    short_name: "crtests"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-arm-dbg"
+    category: "week3b|android|cronet|arm"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-arm-rel"
+    category: "week3b|android|cronet|arm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-asan-arm-rel"
+    category: "week3b|android|cronet|arm"
+    short_name: "asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-kitkat-arm-rel"
+    category: "week3b|android|cronet|arm"
+    short_name: "kkat"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-lollipop-arm-rel"
+    category: "week3b|android|cronet|arm"
+    short_name: "lpop"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-arm64-rel"
+    category: "week3b|android|cronet|arm64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-arm64-dbg"
+    category: "week3b|android|cronet|arm64"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-marshmallow-arm64-rel"
+    category: "week3b|android|cronet|arm64"
+    short_name: "marsh"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-marshmallow-arm64-perf-rel"
+    category: "week3b|android|cronet|arm64"
+    short_name: "perf"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-x86-rel"
+    category: "week3b|android|cronet|x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-cronet-x86-dbg"
+    category: "week3b|android|cronet|x86"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-incremental-dbg"
+    category: "week3b|android"
+    short_name: "inc"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-kitkat-arm-rel"
+    category: "week3b|android"
+    short_name: "kkat"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-mojo-webview-rel"
+    category: "week3b|android"
+    short_name: "mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-pie-arm64-dbg"
+    category: "week3b|linux"
+    short_name: "pie"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux ASan"
+    category: "week4|linux"
+    short_name: "asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux ASan Debug"
+    category: "week4|linux"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux MSan"
+    category: "week4|linux"
+    short_name: "msan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux UBSan"
+    category: "week4|linux"
+    short_name: "ubsan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux V8-ARM64 ASan"
+    category: "week4|linux|v8arm"
+    short_name: "asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux V8-ARM64 ASan Debug"
+    category: "week4|linux|v8arm"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux32 ASan"
+    category: "week4|linux32"
+    short_name: "asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux32 ASan Debug"
+    category: "week4|linux32"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux32 V8-ARM ASan"
+    category: "week4|linux32|v8arm"
+    short_name: "asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Libfuzzer Upload Linux32 V8-ARM ASan Debug"
+    category: "week4|linux32|v8arm"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASan Debug (32-bit x86 with V8-ARM)"
+    category: "week5|asan"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASan Release (32-bit x86 with V8-ARM)"
+    category: "week5|asan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASan Release Media (32-bit x86 with V8-ARM)"
+    category: "week5|asan"
+    short_name: "media"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASAN Debug"
+    category: "week6|asan"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASAN Release"
+    category: "week6|asan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ASAN Release Media"
+    category: "week6|asan"
+    short_name: "media"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/MSAN Release (chained origins)"
+    category: "week7|msan"
+    short_name: "chain"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/MSAN Release (no origins)"
+    category: "week7|msan"
+    short_name: "none"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/TSAN Release"
+    category: "week8|tsan"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/TSAN Debug"
+    category: "week8|tsan"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/UBSan Release"
+    category: "week9|ubsan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/UBSan vptr Release"
+    category: "week9|ubsan|vptr"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/UBSanVptr Linux"
+    category: "week9|ubsan|vptr"
+    short_name: "lnx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Cast Android (dbg)"
+    category: "week10|android"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Cast Audio Linux"
+    category: "week10|linux"
+    short_name: "audio"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Cast Linux"
+    category: "week10|linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Fuchsia ARM64"
+    category: "week11|fuchsia|arm64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-arm64-cast"
+    category: "week11|fuchsia|arm64"
+    short_name: "cast"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Fuchsia x64"
+    category: "week11|fuchsia|x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-x64-cast"
+    category: "week11|fuchsia|x64"
+    short_name: "cast"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-fyi-arm64-rel"
+    category: "week11|fuchsia|fyi"
+    short_name: "arm64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-fyi-x64-dbg"
+    category: "week11|fuchsia|fyi"
+    short_name: "x64 dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/fuchsia-fyi-x64-rel"
+    category: "week11|fuchsia|fyi"
+    short_name: "x64 rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/android-marshmallow-arm64-rel"
+    category: "week13|android"
+    short_name: "marsh"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android Release (Nexus 5X)"
+    category: "week13|android"
+    short_name: "n5x"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win ASan Release"
+    category: "win|week1|asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win ASan Release Media"
+    category: "win|week1|asan"
+    short_name: "media"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.gpu"
+  name: "chromium.gpu"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Win x64 Builder"
+    category: "Windows"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Win x64 Builder (dbg)"
+    category: "Windows"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 x64 Debug (NVIDIA)"
+    category: "Windows"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 x64 Release (NVIDIA)"
+    category: "Windows"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Mac Builder"
+    category: "Mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Mac Builder (dbg)"
+    category: "Mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Debug (Intel)"
+    category: "Mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Release (Intel)"
+    category: "Mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Retina Debug (AMD)"
+    category: "Mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Retina Release (AMD)"
+    category: "Mac"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Linux Builder"
+    category: "Linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU Linux Builder (dbg)"
+    category: "Linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Debug (NVIDIA)"
+    category: "Linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux Release (NVIDIA)"
+    category: "Linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android Release (Nexus 5X)"
+    category: "Android"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.gpu.fyi"
+  name: "chromium.gpu.fyi"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Win Builder"
+    category: "Windows|Builder|Release"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Win x64 Builder"
+    category: "Windows|Builder|Release"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Win dEQP Builder"
+    category: "Windows|Builder|dEQP"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Win x64 dEQP Builder"
+    category: "Windows|Builder|dEQP"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Win Builder (dbg)"
+    category: "Windows|Builder|Debug"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Win x64 Builder (dbg)"
+    category: "Windows|Builder|Debug"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI XR Win x64 Builder"
+    category: "Windows|Builder|XR"
+    short_name: "x64"
+  }
+   builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Debug (NVIDIA)"
+    category: "Windows|10|x64|Nvidia"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Release (Intel HD 630)"
+    category: "Windows|10|x64|Intel"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Release (Intel UHD 630)"
+    category: "Windows|10|x64|Intel"
+    short_name: "uhd"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Release (NVIDIA)"
+    category: "Windows|10|x64|Nvidia"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Release XR Perf (NVIDIA)"
+    category: "Windows|10|x64|Nvidia"
+    short_name: "xr"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 dEQP Release (Intel HD 630)"
+    category: "Windows|10|x64|Intel"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 dEQP Release (NVIDIA)"
+    category: "Windows|10|x64|Nvidia"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Exp Release (Intel HD 630)"
+    category: "Windows|10|x64|Intel"
+    short_name: "exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Exp Release (NVIDIA)"
+    category: "Windows|10|x64|Nvidia"
+    short_name: "exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Release (AMD RX 550)"
+    category: "Windows|10|x64|AMD"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x64 Release (NVIDIA GeForce GTX 1660)"
+    category: "Windows|10|x64|Nvidia"
+    short_name: "gtx"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win10 FYI x86 Release (NVIDIA)"
+    category: "Windows|10|x86|Nvidia"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 FYI Debug (AMD)"
+    category: "Windows|7|x86|AMD"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 FYI dEQP Release (AMD)"
+    category: "Windows|7|x86|AMD"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 FYI Release (AMD)"
+    category: "Windows|7|x86|AMD"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 FYI Release (NVIDIA)"
+    category: "Windows|7|x86|Nvidia"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 FYI x64 Release (NVIDIA)"
+    category: "Windows|7|x64|Nvidia"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Win7 FYI x64 dEQP Release (NVIDIA)"
+    category: "Windows|7|x64|Nvidia"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Mac Builder"
+    category: "Mac|Builder"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Mac Builder (dbg)"
+    category: "Mac|Builder"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Mac dEQP Builder"
+    category: "Mac|Builder"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Debug (Intel)"
+    category: "Mac|Intel"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Experimental Release (Intel)"
+    category: "Mac|Intel"
+    short_name: "exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI dEQP Release Intel"
+    category: "Mac|Intel"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Release (Intel)"
+    category: "Mac|Intel"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI 10.14 Release (Intel)"
+    category: "Mac|Intel|10.14"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac Pro FYI Release (AMD)"
+    category: "Mac|AMD|Pro"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI dEQP Release AMD"
+    category: "Mac|AMD"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Retina Debug (AMD)"
+    category: "Mac|AMD|Retina"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Retina Release (AMD)"
+    category: "Mac|AMD|Retina"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Experimental Retina Release (AMD)"
+    category: "Mac|AMD|Retina"
+    short_name: "exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI 10.14 Release (AMD)"
+    category: "Mac|AMD|10.14"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Retina Debug (NVIDIA)"
+    category: "Mac|Nvidia"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Retina Release (NVIDIA)"
+    category: "Mac|Nvidia"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI Experimental Retina Release (NVIDIA)"
+    category: "Mac|Nvidia"
+    short_name: "exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI 10.14 Release (NVIDIA)"
+    category: "Mac|Nvidia|10.14"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Mac FYI GPU ASAN Release"
+    category: "Mac"
+    short_name: "asn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Linux Builder"
+    category: "Linux|Builder"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Linux Builder (dbg)"
+    category: "Linux|Builder"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Linux Ozone Builder"
+    category: "Linux|Builder"
+    short_name: "ozn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Linux dEQP Builder"
+    category: "Linux|Builder"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI Experimental Release (Intel HD 630)"
+    category: "Linux|Intel"
+    short_name: "exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI Release (Intel HD 630)"
+    category: "Linux|Intel"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI Release (Intel UHD 630)"
+    category: "Linux|Intel"
+    short_name: "uhd"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI dEQP Release (Intel HD 630)"
+    category: "Linux|Intel"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI Ozone (Intel)"
+    category: "Linux|Intel"
+    short_name: "ozn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI Release (AMD R7 240)"
+    category: "Linux"
+    short_name: "amd"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI Release (NVIDIA)"
+    category: "Linux|Nvidia"
+    short_name: "rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI Experimental Release (NVIDIA)"
+    category: "Linux|Nvidia"
+    short_name: "exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI Debug (NVIDIA)"
+    category: "Linux|Nvidia"
+    short_name: "dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI dEQP Release (NVIDIA)"
+    category: "Linux|Nvidia"
+    short_name: "dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI SkiaRenderer Vulkan (Intel HD 630)"
+    category: "Linux|Intel"
+    short_name: "skv"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI SkiaRenderer Vulkan (NVIDIA)"
+    category: "Linux|Nvidia"
+    short_name: "skv"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Linux FYI GPU TSAN Release"
+    category: "Linux"
+    short_name: "tsn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 5)"
+    category: "Android|L32"
+    short_name: "N5"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 6)"
+    category: "Android|L32"
+    short_name: "N6"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 5X)"
+    category: "Android|M64|QCOM"
+    short_name: "N5X"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 6P)"
+    category: "Android|M64|QCOM"
+    short_name: "N6P"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Nexus 9)"
+    category: "Android|M64|NVDA"
+    short_name: "N9"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (NVIDIA Shield TV)"
+    category: "Android|N64|NVDA"
+    short_name: "STV"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI Release (Pixel 2)"
+    category: "Android|P32|QCOM"
+    short_name: "P2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 32 Vk Release (Pixel 2)"
+    category: "Android|vk|Q32"
+    short_name: "P2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 64 Vk Release (Pixel 2)"
+    category: "Android|vk|Q64"
+    short_name: "P2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI dEQP Release (Nexus 5X)"
+    category: "Android|dqp|M64"
+    short_name: "N5X"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 32 dEQP Vk Release (Pixel 2)"
+    category: "Android|dqp|vk|Q32"
+    short_name: "P2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 64 dEQP Vk Release (Pixel 2)"
+    category: "Android|dqp|vk|Q64"
+    short_name: "P2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI SkiaRenderer GL (Nexus 5X)"
+    category: "Android|skgl|M64"
+    short_name: "N5X"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI SkiaRenderer Vulkan (Pixel 2)"
+    category: "Android|skv|P32"
+    short_name: "P2"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/GPU FYI Perf Android 64 Builder"
+    category: "Android|Perf|Builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Android FYI 64 Perf (Pixel 2)"
+    category: "Android|Perf|Q64"
+    short_name: "P2"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.dawn"
+  name: "chromium.dawn"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Linux x64 Builder"
+    category: "ToT|Linux|Builder"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Linux x64 Release (Intel HD 630)"
+    category: "ToT|Linux|Intel"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Linux x64 Release (NVIDIA)"
+    category: "ToT|Linux|Nvidia"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Mac x64 Builder"
+    category: "ToT|Mac|Builder"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Mac x64 Release (AMD)"
+    category: "ToT|Mac|AMD"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Mac x64 Release (Intel)"
+    category: "ToT|Mac|Intel"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x86 Builder"
+    category: "ToT|Windows|Builder"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x64 Builder"
+    category: "ToT|Windows|Builder"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x86 Release (Intel HD 630)"
+    category: "ToT|Windows|Intel"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x64 Release (Intel HD 630)"
+    category: "ToT|Windows|Intel"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x86 Release (NVIDIA)"
+    category: "ToT|Windows|Nvidia"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x64 Release (NVIDIA)"
+    category: "ToT|Windows|Nvidia"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Linux x64 DEPS Builder"
+    category: "DEPS|Linux|Builder"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Linux x64 DEPS Release (Intel HD 630)"
+    category: "DEPS|Linux|Intel"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Linux x64 DEPS Release (NVIDIA)"
+    category: "DEPS|Linux|Nvidia"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Mac x64 DEPS Builder"
+    category: "DEPS|Mac|Builder"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Mac x64 DEPS Release (AMD)"
+    category: "DEPS|Mac|AMD"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Mac x64 DEPS Release (Intel)"
+    category: "DEPS|Mac|Intel"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x86 DEPS Builder"
+    category: "DEPS|Windows|Builder"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x64 DEPS Builder"
+    category: "DEPS|Windows|Builder"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x86 DEPS Release (Intel HD 630)"
+    category: "DEPS|Windows|Intel"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x64 DEPS Release (Intel HD 630)"
+    category: "DEPS|Windows|Intel"
+    short_name: "x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x86 DEPS Release (NVIDIA)"
+    category: "DEPS|Windows|Nvidia"
+    short_name: "x86"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/Dawn Win10 x64 DEPS Release (NVIDIA)"
+    category: "DEPS|Windows|Nvidia"
+    short_name: "x64"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.webrtc"
+  name: "chromium.webrtc"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Android Builder"
+    category: "android"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Android Tester"
+    category: "android"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Linux Builder"
+    category: "linux"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Linux Tester"
+    category: "linux"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Mac Builder"
+    category: "mac"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Mac Tester"
+    category: "mac"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Win Builder"
+    category: "win"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Win10 Tester"
+    category: "win"
+    short_name: "10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Win7 Tester"
+    category: "win"
+    short_name: "7"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc/WebRTC Chromium Win8 Tester"
+    category: "win"
+    short_name: "8"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "chromium.webrtc.fyi"
+  name: "chromium.webrtc.fyi"
+  repo_url: "https://webrtc.googlesource.com/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Android Builder (dbg)"
+    category: "android|debug|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Android Builder ARM64 (dbg)"
+    category: "android|debug|builder"
+    short_name: "64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Android Tests (dbg) (K Nexus5)"
+    category: "android|debug|tester"
+    short_name: "K"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Android Tests (dbg) (M Nexus5X)"
+    category: "android|debug|tester"
+    short_name: "M"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Android Builder"
+    category: "android|release"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Linux Builder (dbg)"
+    category: "linux|debug"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Linux Builder"
+    category: "linux|release"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Linux Tester"
+    category: "linux|release"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Mac Builder (dbg)"
+    category: "mac|debug"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Mac Builder"
+    category: "mac|release"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Mac Tester"
+    category: "mac|release"
+    short_name: "tst"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Win Builder (dbg)"
+    category: "win|debug"
+    short_name: "bld"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Win Builder"
+    category: "win|release|builder"
+    short_name: "32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Win10 Tester"
+    category: "win|release|tester"
+    short_name: "10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Win7 Tester"
+    category: "win|release|tester"
+    short_name: "7"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI Win8 Tester"
+    category: "win|release|tester"
+    short_name: "8"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI ios-device"
+    category: "ios"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.webrtc.fyi/WebRTC Chromium FYI ios-simulator"
+    category: "ios"
+    short_name: "sim"
+  }
+}
+
+consoles {
+  header_id: "chromium"
+  id: "tryserver.chromium.android"
+  name: "tryserver.chromium.android"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.try/android_archive_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-binary-size"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_blink_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_cfi_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_clang_dbg_recipe"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_compile_dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_compile_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_compile_x64_dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_compile_x86_dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_cronet"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-cronet-arm-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_cronet_tester"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-marshmallow-arm64-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-marshmallow-x86-fyi-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-pie-arm64-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-pie-arm64-fyi-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_optional_gpu_tests_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_unswarmed_pixel_aosp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/cast_shell_android"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_android_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-kitkat-arm-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-l-nexus-5-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-l-nexus-6-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-5x-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-5x-deqp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-5x-skgl-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-6p-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-9-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-n-nvidia-shield-tv-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-p-pixel-2-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-p-pixel-2-skv-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-q-pixel-2-deqp-vk-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-q-pixel-2-deqp-vk-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-q-pixel-2-vk-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-q-pixel-2-vk-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-android-m-nexus-5x-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-deterministic-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-deterministic-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/try-nougat-phone-tester"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-oreo-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-pie-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-pie-x86-fyi-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-marshmallow-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-nougat-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-oreo-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-pie-arm64-dbg"
+  }
+  builder_view_only: true
+}
+
+consoles {
+  header_id: "chromium"
+  id: "tryserver.chromium.chromiumos"
+  name: "tryserver.chromium.chromiumos"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-amd64-generic-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-amd64-generic-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-arm-generic-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-arm-generic-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-kevin-compile-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-kevin-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-chromeos-compile-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-chromeos-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-chromeos-rel"
+  }
+  builder_view_only: true
+}
+
+consoles {
+  header_id: "chromium"
+  id: "tryserver.chromium.linux"
+  name: "tryserver.chromium.linux"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.try/cast_shell_audio_linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/cast_shell_linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromium_presubmit"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/closure_compilation"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia_arm64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-arm64-cast"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-compile-x64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-fyi-arm64-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-fyi-x64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-fyi-x64-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia_x64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-x64-cast"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-intel-dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-intel-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-intel-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-intel-skv"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-skv"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-tsn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-linux-nvidia-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-linux-nvidia-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/layout_test_leak_detection"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/leak_detection_linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-annotator-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-gcc-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-libfuzzer-asan-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-ozone-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-clang-tidy-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-clang-tidy-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-trusty-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_arm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_analysis"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_archive_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_asan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_cfi_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_chromeos_asan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_chromeos_msan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_clobber_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_compile_dbg_32_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_component_updater"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_msan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_tsan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_ubsan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_layout_tests_composite_after_paint"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_layout_tests_layout_ng_disabled"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_mojo_chromeos"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_optional_gpu_tests_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_upload_clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-viz-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_vr"
+  }
+  builder_view_only: true
+}
+
+consoles {
+  header_id: "chromium"
+  id: "tryserver.chromium.mac"
+  name: "tryserver.chromium.mac"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-pro-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-retina-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-retina-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-retina-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-intel-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-intel-dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-intel-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-intel-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-nvidia-retina-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-nvidia-retina-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-nvidia-retina-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-mac-amd-retina-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-mac-intel-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-device"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-device-xcode-clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-simulator-cronet"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-simulator-full-configs"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-simulator-noncq"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-simulator-xcode-clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios12-beta-simulator"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios13-beta-simulator"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios13-sdk-simulator"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-slimnav"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac-osxbeta-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.10_macviews"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.12_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.13_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_archive_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_asan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_compile_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_compile_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.13_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_optional_gpu_tests_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_upload_clang"
+  }
+  builder_view_only: true
+}
+
+consoles {
+  header_id: "chromium"
+  id: "tryserver.chromium.win"
+  name: "tryserver.chromium.win"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win-xr-builder-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-amd-dbg-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-amd-dqp-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-amd-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-nvidia-dqp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-nvidia-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-nvidia-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-intel-dqp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-intel-exp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-intel-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-dbg-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-dqp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-exp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-libfuzzer-asan-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win7-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win10_chromium_x64_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win10_chromium_x64_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_archive"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_chromium_compile_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_chromium_compile_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_chromium_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_chromium_x64_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_optional_gpu_tests_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_upload_clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_x64_archive"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-annotator-rel"
+  }
+  builder_view_only: true
+}
+
+consoles {
+  header_id: ""
+  id: "tryserver.blink"
+  name: "tryserver.blink"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-blink-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac10.10-blink-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac10.11-blink-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac10.12-blink-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac10.13-blink-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac10.13_retina-blink-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win10-blink-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win7-blink-rel"
+  }
+  builder_view_only: true
+}
+
+consoles {
+  header_id: "chromium"
+  id: "angle.try"
+  name: "angle.try"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_deqp_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_vk32_deqp_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_vk64_deqp_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_vk32_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_vk64_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-angle-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-angle-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_angle_deqp_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_angle_ozone_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac-angle-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-angle-deqp-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-angle-deqp-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-angle-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-angle-rel-64"
+  }
+  builder_view_only: true
+}
+
+consoles {
+  header_id: "chromium"
+  id: "luci.chromium.try"
+  name: "luci.chromium.try"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+  builders {
+    name: "buildbucket/luci.chromium.try/android-cronet-arm-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-kitkat-arm-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-marshmallow-arm64-coverage-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-marshmallow-arm64-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-marshmallow-x64-fyi-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-oreo-arm64-cts-networkservice-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-pie-arm64-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-pie-arm64-fyi-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_archive_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_arm64_dbg_recipe"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_deqp_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_vk32_deqp_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_vk64_deqp_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_vk32_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_angle_vk64_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_cfi_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_compile_dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_compile_x64_dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_compile_x86_dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_n5x_swarming_dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android_optional_gpu_tests_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-marshmallow-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-nougat-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-oreo-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-webview-pie-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/cast_shell_audio_linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/cast_shell_linux"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-amd64-generic-cfi-thin-lto-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-amd64-generic-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-amd64-generic-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-arm-generic-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-arm-generic-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-kevin-compile-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-kevin-experimental-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromeos-kevin-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/chromium_presubmit"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/closure_compilation"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-angle-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/fuchsia-compile-x64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-l-nexus-5-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-l-nexus-6-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-5x-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-5x-deqp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-5x-skgl-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-6p-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-m-nexus-9-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-n-nvidia-shield-tv-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-p-pixel-2-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-p-pixel-2-skv-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-q-pixel-2-deqp-vk-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-q-pixel-2-deqp-vk-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-q-pixel-2-vk-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-android-q-pixel-2-vk-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-intel-dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-intel-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-intel-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-intel-skv"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-skv"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-linux-nvidia-tsn"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win-xr-builder-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-amd-dbg-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-amd-dqp-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-amd-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-nvidia-dqp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-nvidia-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win7-nvidia-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-intel-dqp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-intel-exp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-intel-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-dbg-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-dqp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-exp-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-win10-nvidia-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-pro-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-retina-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-retina-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-amd-retina-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-asan"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-intel-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-intel-dqp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-intel-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-intel-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-nvidia-retina-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-nvidia-retina-exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-fyi-try-mac-nvidia-retina-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-android-m-nexus-5x-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-linux-nvidia-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-linux-nvidia-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-mac-amd-retina-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/gpu-try-mac-intel-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-angle-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-blink-heap-concurrent-marking-tsan-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-blink-heap-verification-try"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-chromeos-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-jumbo-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-libfuzzer-asan-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-ozone-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_android_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_angle_deqp_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_angle_ozone_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_arm"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_analysis"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_archive_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_asan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_cfi_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_chromeos_asan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_chromeos_msan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_clobber_deterministic"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_clobber_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_compile_dbg_32_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_compile_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_compile_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_component_updater"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-clang-tidy-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-clang-tidy-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_msan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_tsan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_chromium_ubsan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_layout_tests_composite_after_paint"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_layout_tests_layout_ng_disabled"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_mojo_chromeos"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_optional_gpu_tests_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux_upload_clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/linux-viz-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-device"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-device-xcode-clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-simulator"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-simulator-cronet"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-simulator-eg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios-simulator-xcode-clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/ios13-sdk-simulator"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac-angle-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac-jumbo-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.10_macviews"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.10"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.12_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_10.13_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_archive_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_asan_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_compile_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_compile_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_chromium_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_optional_gpu_tests_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/mac_upload_clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/try-nougat-phone-tester"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-oreo-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-pie-arm64-dbg"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/android-pie-x86-fyi-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win7-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win10_chromium_x64_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win10_chromium_x64_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win10_chromium_x64_rel_ng_exp"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-angle-deqp-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-angle-deqp-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-angle-rel-32"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-angle-rel-64"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-jumbo-rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_archive"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_chromium_compile_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_chromium_compile_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_chromium_dbg_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_chromium_x64_rel_ng"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_mojo"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_optional_gpu_tests_rel"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_upload_clang"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win_x64_archive"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.try/win-celab-try-rel"
+  }
+  builder_view_only: true
+}
+
+consoles {
+  header_id: "chromium"
+  id: "sheriff.ios"
+  name: "iOS Sheriff Console"
+  repo_url: "https://chromium.googlesource.com/chromium/src"
+  refs: "refs/heads/master"
+  manifest_name: "REVISION"
+
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device"
+    category: "chromium.mac"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator"
+    category: "chromium.mac"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-full-configs"
+    category: "chromium.mac"
+    short_name: "ful"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-noncq"
+    category: "chromium.mac"
+    short_name: "non"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-device-xcode-clang"
+    category: "chromium.mac|xcode"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-simulator-xcode-clang"
+    category: "chromium.mac|xcode"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios-slimnav"
+    category: "chromium.mac"
+    short_name: "slim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios12-beta-simulator"
+    category: "chromium.fyi|12"
+    short_name: "beta"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios13-sdk-device"
+    category: "chromium.fyi|13"
+    short_name: "dev"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios13-sdk-simulator"
+    category: "chromium.fyi|13"
+    short_name: "sim"
+  }
+  builders {
+    name: "buildbucket/luci.chromium.ci/ios13-beta-simulator"
+    category: "chromium.fyi|13"
+    short_name: "ios13"
+  }
+}
diff --git a/infra/config/generated/luci-notify.cfg b/infra/config/generated/luci-notify.cfg
new file mode 100644
index 0000000..7e5000b
--- /dev/null
+++ b/infra/config/generated/luci-notify.cfg
@@ -0,0 +1,286 @@
+# Defines email notifications for builders.
+# See schema at
+# https://chromium.googlesource.com/infra/luci/luci-go/+/master/luci_notify/api/config/notify.proto
+#
+# Please keep this list sorted by name.
+
+notifiers {
+  name: "chromesec-lkgr-failures"
+  notifications {
+    on_change: true
+    on_success: false
+    on_failure: false
+    on_new_failure: false
+    email {
+      recipients: "chromesec-lkgr-failures@google.com"
+    }
+  }
+  builders {
+    name: "ASAN Debug"
+    bucket: "ci"
+  }
+  builders {
+    name: "ASAN Release"
+    bucket: "ci"
+  }
+  builders {
+    name: "ASAN Release Media"
+    bucket: "ci"
+  }
+  builders {
+    name: "ASan Debug (32-bit x86 with V8-ARM)"
+    bucket: "ci"
+  }
+  builders {
+    name: "ASan Release (32-bit x86 with V8-ARM)"
+    bucket: "ci"
+  }
+  builders {
+    name: "ASan Release Media (32-bit x86 with V8-ARM)"
+    bucket: "ci"
+  }
+  builders {
+    name: "Afl Upload Linux ASan"
+    bucket: "ci"
+  }
+  builders {
+    name: "ChromiumOS ASAN Release"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Chrome OS ASan"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux32 ASan"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux32 ASan Debug"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux32 V8-ARM ASan"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux32 V8-ARM ASan Debug"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux ASan"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux ASan Debug"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux V8-ARM64 ASan"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux V8-ARM64 ASan Debug"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux MSan"
+    bucket: "ci"
+  }
+  builders {
+    name: "Libfuzzer Upload Linux UBSan"
+    bucket: "ci"
+  }
+  # TODO(crbug.com/790372): Enable notifications for the mac bot when it gets
+  # flipped to luci.
+  #builders {
+  #  name: "Libfuzzer Upload Mac ASan"
+  #  bucket: "ci"
+  #}
+  builders {
+    name: "Libfuzzer Upload Windows ASan"
+    bucket: "ci"
+  }
+  builders {
+    name: "MSAN Release (chained origins)"
+    bucket: "ci"
+  }
+  builders {
+    name: "MSAN Release (no origins)"
+    bucket: "ci"
+  }
+  builders {
+    name: "Mac ASAN Release"
+    bucket: "ci"
+  }
+  builders {
+    name: "Mac ASAN Release Media"
+    bucket: "ci"
+  }
+  builders {
+    name: "TSAN Debug"
+    bucket: "ci"
+  }
+  builders {
+    name: "TSAN Release"
+    bucket: "ci"
+  }
+  builders {
+    name: "UBSan Release"
+    bucket: "ci"
+  }
+  builders {
+    name: "UBSan vptr Release"
+    bucket: "ci"
+  }
+  builders {
+    name: "Win ASan Release"
+    bucket: "ci"
+  }
+  builders {
+    name: "Win ASan Release Media"
+    bucket: "ci"
+  }
+}
+
+notifiers {
+  name: "chrome-memory-sheriffs"
+  notifications {
+    on_change: true
+    on_success: false
+    on_failure: false
+    on_new_failure: false
+    email {
+      recipients: "chrome-memory-sheriffs+bots@google.com"
+    }
+  }
+  builders {
+    name: "Memory Infra tester"
+    bucket: "ci"
+  }
+}
+
+notifiers {
+  name: "cr-fuchsia"
+  notifications {
+    on_change: true
+    email {
+      recipients: "cr-fuchsia+bot@chromium.org"
+    }
+  }
+  builders {
+    name: "Fuchsia ARM64"
+    bucket: "ci"
+  }
+  builders {
+    name: "Fuchsia x64"
+    bucket: "ci"
+  }
+  builders {
+    name: "fuchsia-arm64-cast"
+    bucket: "ci"
+  }
+  builders {
+    name: "fuchsia-fyi-arm64-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "fuchsia-fyi-x64-dbg"
+    bucket: "ci"
+  }
+  builders {
+    name: "fuchsia-fyi-x64-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "fuchsia-x64-cast"
+    bucket: "ci"
+  }
+  builders {
+    name: "fuchsia-x64-dbg"
+    bucket: "ci"
+  }
+}
+
+notifiers {
+  name: "cronet"
+  notifications {
+    on_change: true
+    email {
+      recipients: "cronet-bots-observer@google.com"
+    }
+  }
+  builders {
+    name: "android-cronet-arm-dbg"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-arm-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-arm64-dbg"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-arm64-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-asan-arm-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-kitkat-arm-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-lollipop-arm-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-marshmallow-arm-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-marshmallow-arm64-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-marshmallow-arm64-perf-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-x86-dbg"
+    bucket: "ci"
+  }
+  builders {
+    name: "android-cronet-x86-rel"
+    bucket: "ci"
+  }
+  builders {
+    name: "ios-simulator-cronet"
+    bucket: "ci"
+  }
+}
+
+notifiers {
+  name: "release-tarballs"
+  notifications {
+    on_success: false
+    on_failure: true
+    email {
+      recipients: "raphael.kubo.da.costa@intel.com"
+      recipients: "thestig@chromium.org"
+      recipients: "thomasanderson@chromium.org"
+    }
+  }
+  builders {
+    name: "Build From Tarball"
+    bucket: "cron"
+  }
+  builders {
+    name: "publish_tarball"
+    bucket: "cron"
+  }
+}
diff --git a/infra/config/generated/luci-scheduler-dev.cfg b/infra/config/generated/luci-scheduler-dev.cfg
new file mode 100644
index 0000000..aa26630
--- /dev/null
+++ b/infra/config/generated/luci-scheduler-dev.cfg
@@ -0,0 +1,111 @@
+# Defines jobs on luci-scheduler-dev.appspot.com.
+#
+# For schema of this file and documentation see ProjectConfig message in
+#
+# https://chromium.googlesource.com/infra/luci/luci-go/+/master/scheduler/appengine/messages/config.proto
+
+
+acl_sets {
+  name: "default"
+  acls {
+    role: READER
+    granted_to: "group:all"
+  }
+  acls {
+    role: OWNER
+    granted_to: "group:project-chromium-admins"
+  }
+}
+
+################################################################################
+# Master branch
+
+trigger {
+  id: "master-gitiles-trigger"
+  acl_sets: "default"
+
+  gitiles: {
+    repo: "https://chromium.googlesource.com/chromium/src.git"
+    refs: "refs/heads/master"
+  }
+
+  triggers: "Android N5 Swarm"
+  triggers: "Android N5X Swarm"
+  triggers: "ChromeOS Swarm"
+  triggers: "Linux Swarm"
+  triggers: "Mac Swarm"
+  triggers: "Windows Swarm"
+}
+
+job {
+  id: "Android N5 Swarm"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket-dev.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android N5 Swarm"
+  }
+}
+
+job {
+  id: "Android N5X Swarm"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket-dev.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android N5X Swarm"
+  }
+}
+
+job {
+  id: "ChromeOS Swarm"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket-dev.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ChromeOS Swarm"
+  }
+}
+
+job {
+  id: "Linux Swarm"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket-dev.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Swarm"
+  }
+}
+job {
+  id: "Mac Swarm"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket-dev.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Swarm"
+  }
+}
+job {
+  id: "Windows Swarm"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket-dev.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Windows Swarm"
+  }
+}
+
+################################################################################
+# Cron jobs
+
+job {
+  id: "Snapshot Builder"
+  acl_sets: "default"
+  buildbucket {
+    bucket: "luci.chromium.cron"
+    builder: "Snapshot Builder"
+    server: "cr-buildbucket-dev.appspot.com"
+  }
+  # TODO(smut): Adjust frequency.
+  schedule: "with 300s interval"
+}
diff --git a/infra/config/generated/luci-scheduler.cfg b/infra/config/generated/luci-scheduler.cfg
new file mode 100644
index 0000000..469e7e2
--- /dev/null
+++ b/infra/config/generated/luci-scheduler.cfg
@@ -0,0 +1,5778 @@
+# Defines jobs on luci-scheduler.appspot.com.
+#
+# For schema of this file and documentation see ProjectConfig message in
+#
+# https://chromium.googlesource.com/infra/luci/luci-go/+/master/scheduler/appengine/messages/config.proto
+
+
+acl_sets {
+  name: "default"
+  acls {
+    role: READER
+    granted_to: "group:all"
+  }
+  acls {
+    role: OWNER
+    granted_to: "group:project-chromium-admins"
+  }
+}
+
+acl_sets {
+  name: "webrtc"
+  acls {
+    # TODO(crbug.com/859222): Change to triggerer.
+    role: OWNER
+    granted_to: "group:project-webrtc-admins"
+  }
+}
+
+acl_sets {
+  # ACLs for jobs which represent builders which run tests and are triggered by
+  # other so called "parent" builders.
+  name: "triggered-by-parent-builders"
+  acls {
+    role: READER
+    granted_to: "group:all"
+  }
+  acls {
+    role: TRIGGERER
+    granted_to: "chromium-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
+  }
+  acls {
+    role: TRIGGERER
+    granted_to: "chromium-ci-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
+  }
+  acls {
+    role: OWNER
+    granted_to: "group:project-chromium-admins"
+  }
+}
+
+################################################################################
+# Master branch
+
+trigger {
+  id: "master-gitiles-trigger"
+  acl_sets: "default"
+
+  gitiles: {
+    repo: "https://chromium.googlesource.com/chromium/src"
+    refs: "refs/heads/master"
+  }
+
+  triggers: "ANGLE GPU Android Release (Nexus 5X)"
+  triggers: "ASAN Debug"
+  triggers: "ASAN Release Media"
+  triggers: "ASAN Release"
+  triggers: "ASan Debug (32-bit x86 with V8-ARM)"
+  triggers: "ASan Release (32-bit x86 with V8-ARM)"
+  triggers: "ASan Release Media (32-bit x86 with V8-ARM)"
+  triggers: "Afl Upload Linux ASan"
+  triggers: "Android ASAN (dbg)"
+  triggers: "Android WebView P FYI (rel)"
+  triggers: "android-archive-dbg-goma-canary"
+  triggers: "android-archive-dbg-goma-latest"
+  triggers: "android-archive-dbg-goma-rbe-canary"
+  triggers: "android-archive-dbg-goma-rbe-latest"
+  triggers: "android-archive-dbg-goma-rbe-ats-canary"
+  triggers: "android-archive-dbg-goma-rbe-ats-latest"
+  triggers: "android-bfcache-debug"
+  triggers: "Android CFI"
+  triggers: "Android FYI 32 Vk Release (Pixel 2)"
+  triggers: "Android FYI 32 dEQP Vk Release (Pixel 2)"
+  triggers: "Android FYI 64 Vk Release (Pixel 2)"
+  triggers: "Android FYI 64 dEQP Vk Release (Pixel 2)"
+  triggers: "Android FYI Release (NVIDIA Shield TV)"
+  triggers: "Android FYI Release (Nexus 5)"
+  triggers: "Android FYI Release (Nexus 5X)"
+  triggers: "Android FYI Release (Nexus 6)"
+  triggers: "Android FYI Release (Nexus 6P)"
+  triggers: "Android FYI Release (Nexus 9)"
+  triggers: "Android FYI Release (Pixel 2)"
+  triggers: "Android FYI SkiaRenderer GL (Nexus 5X)"
+  triggers: "Android FYI SkiaRenderer Vulkan (Pixel 2)"
+  triggers: "Android FYI dEQP Release (Nexus 5X)"
+  triggers: "Android Release (Nexus 5X)"
+  triggers: "Android arm Builder (dbg)"
+  triggers: "Android arm64 Builder (dbg)"
+  triggers: "Android x64 Builder (dbg)"
+  triggers: "Android x86 Builder (dbg)"
+  triggers: "CFI Linux CF"
+  triggers: "CFI Linux ToT"
+  triggers: "Cast Android (dbg)"
+  triggers: "Cast Audio Linux"
+  triggers: "Cast Linux"
+  triggers: "Chromium Android ARM 32-bit Goma RBE Prod"
+  triggers: "Chromium Android ARM 32-bit Goma RBE Prod (clobber)"
+  triggers: "Chromium Android ARM 32-bit Goma RBE Prod (dbg)"
+  triggers: "Chromium Android ARM 32-bit Goma RBE Prod (dbg) (clobber)"
+  triggers: "Chromium Android ARM 32-bit Goma RBE Staging"
+  triggers: "Chromium Android ARM 32-bit Goma RBE ToT"
+  triggers: "Chromium Android ARM 32-bit Goma RBE ToT (ATS)"
+  triggers: "Chromium Linux Goma RBE Prod"
+  triggers: "Chromium Linux Goma RBE Prod (clobber)"
+  triggers: "Chromium Linux Goma RBE Prod (dbg)"
+  triggers: "Chromium Linux Goma RBE Prod (dbg) (clobber)"
+  triggers: "Chromium Linux Goma RBE Staging"
+  triggers: "Chromium Linux Goma RBE Staging (clobber)"
+  triggers: "Chromium Linux Goma RBE Staging (dbg) (clobber)"
+  triggers: "Chromium Linux Goma RBE Staging (dbg)"
+  triggers: "Chromium Linux Goma RBE ToT"
+  triggers: "Chromium Linux Goma RBE ToT (ATS)"
+  triggers: "Chromium Linux Goma Staging"
+  triggers: "Chromium Mac Goma RBE Prod"
+  triggers: "Chromium Mac Goma RBE Staging"
+  triggers: "Chromium Mac Goma RBE Staging (clobber)"
+  triggers: "Chromium Mac Goma RBE Staging (dbg)"
+  triggers: "Chromium Mac Goma RBE ToT"
+  triggers: "Chromium Mac Goma Staging"
+  triggers: "Chromium Win Goma RBE Prod"
+  triggers: "Chromium Win Goma RBE Prod (clobber)"
+  triggers: "Chromium Win Goma RBE Prod (dbg)"
+  triggers: "Chromium Win Goma RBE Prod (dbg) (clobber)"
+  triggers: "Chromium Win Goma RBE Staging"
+  triggers: "Chromium Win Goma RBE Staging (clobber)"
+  triggers: "Chromium Win Goma RBE ToT"
+  triggers: "ChromiumOS ASAN Release"
+  triggers: "Closure Compilation Linux"
+  triggers: "CrWinAsan"
+  triggers: "CrWinAsan(dll)"
+  triggers: "CrWinGomaStaging"
+  triggers: "Dawn Linux x64 Builder"
+  triggers: "Dawn Linux x64 DEPS Builder"
+  triggers: "Dawn Mac x64 Builder"
+  triggers: "Dawn Mac x64 DEPS Builder"
+  triggers: "Dawn Win10 x64 Builder"
+  triggers: "Dawn Win10 x64 DEPS Builder"
+  triggers: "Dawn Win10 x86 Builder"
+  triggers: "Dawn Win10 x86 DEPS Builder"
+  triggers: "Deterministic Android (dbg)"
+  triggers: "Deterministic Android"
+  triggers: "Deterministic Fuchsia (dbg)"
+  triggers: "Deterministic Linux (dbg)"
+  triggers: "Deterministic Linux"
+  triggers: "fuchsia-arm64-cast"
+  triggers: "Fuchsia ARM64"
+  triggers: "fuchsia-x64-cast"
+  triggers: "fuchsia-x64-dbg"
+  triggers: "Fuchsia x64"
+  triggers: "GPU FYI Linux Builder (dbg)"
+  triggers: "GPU FYI Linux Builder"
+  triggers: "GPU FYI Linux Ozone Builder"
+  triggers: "GPU FYI Linux dEQP Builder"
+  triggers: "GPU FYI Mac Builder (dbg)"
+  triggers: "GPU FYI Mac Builder"
+  triggers: "GPU FYI Mac dEQP Builder"
+  triggers: "GPU FYI Perf Android 64 Builder"
+  triggers: "GPU FYI Win Builder (dbg)"
+  triggers: "GPU FYI Win Builder"
+  triggers: "GPU FYI Win dEQP Builder"
+  triggers: "GPU FYI Win x64 Builder (dbg)"
+  triggers: "GPU FYI Win x64 Builder"
+  triggers: "GPU FYI Win x64 dEQP Builder"
+  triggers: "GPU FYI XR Win x64 Builder"
+  triggers: "GPU Linux Builder (dbg)"
+  triggers: "GPU Linux Builder"
+  triggers: "GPU Mac Builder (dbg)"
+  triggers: "GPU Mac Builder"
+  triggers: "GPU Win x64 Builder (dbg)"
+  triggers: "GPU Win x64 Builder"
+  triggers: "Jumbo Linux x64"
+  triggers: "Jumbo Mac"
+  triggers: "Jumbo Win x64"
+  triggers: "Leak Detection Linux"
+  triggers: "Libfuzzer Upload Chrome OS ASan"
+  triggers: "Libfuzzer Upload Linux32 ASan Debug"
+  triggers: "Libfuzzer Upload Linux32 ASan"
+  triggers: "Libfuzzer Upload Linux32 V8-ARM ASan Debug"
+  triggers: "Libfuzzer Upload Linux32 V8-ARM ASan"
+  triggers: "Libfuzzer Upload Linux ASan Debug"
+  triggers: "Libfuzzer Upload Linux ASan"
+  triggers: "Libfuzzer Upload Linux V8-ARM64 ASan Debug"
+  triggers: "Libfuzzer Upload Linux V8-ARM64 ASan"
+  triggers: "Libfuzzer Upload Linux MSan"
+  triggers: "Libfuzzer Upload Linux UBSan"
+  triggers: "Libfuzzer Upload Mac ASan"
+  triggers: "Libfuzzer Upload Windows ASan"
+  triggers: "Linux ASan LSan Builder"
+  triggers: "Linux Builder (dbg)"
+  triggers: "Linux Builder (dbg)(32)"
+  triggers: "Linux Builder Goma Canary"
+  triggers: "Linux Builder Goma Latest Client"
+  triggers: "Linux Builder Goma RBE Canary"
+  triggers: "Linux Builder Goma RBE Latest Client"
+  triggers: "Linux Builder"
+  triggers: "Linux CFI"
+  triggers: "Linux Chromium OS ASan LSan Builder"
+  triggers: "Linux ChromiumOS Full"
+  triggers: "Linux ChromiumOS MSan Builder"
+  triggers: "Linux FYI GPU TSAN Release"
+  triggers: "Linux MSan Builder"
+  triggers: "Linux TSan Builder"
+  triggers: "Linux Viz"
+  triggers: "Linux remote_run Builder"
+  triggers: "linux-archive-rel-goma-canary"
+  triggers: "linux-archive-rel-goma-canary-localoutputcache"
+  triggers: "linux-archive-rel-goma-latest"
+  triggers: "linux-archive-rel-goma-latest-localoutputcache"
+  triggers: "linux-archive-rel-goma-rbe-canary"
+  triggers: "linux-archive-rel-goma-rbe-latest"
+  triggers: "linux-archive-rel-goma-rbe-ats-canary"
+  triggers: "linux-archive-rel-goma-rbe-ats-latest"
+  triggers: "MSAN Release (chained origins)"
+  triggers: "MSAN Release (no origins)"
+  triggers: "Mac ASAN Release Media"
+  triggers: "Mac ASAN Release"
+  triggers: "Mac ASan 64 Builder"
+  triggers: "Mac Builder (dbg) Goma Canary (clobber)"
+  triggers: "Mac Builder (dbg) Goma Canary"
+  triggers: "Mac Builder (dbg) Goma Latest Client (clobber)"
+  triggers: "Mac Builder (dbg) Goma Latest Client"
+  triggers: "Mac Builder (dbg) Goma RBE Canary (clobber)"
+  triggers: "Mac Builder (dbg) Goma RBE Latest Client (clobber)"
+  triggers: "Mac Builder (dbg)"
+  triggers: "Mac Builder Goma Canary"
+  triggers: "Mac Builder Goma Latest Client"
+  triggers: "Mac Builder"
+  triggers: "Mac FYI GPU ASAN Release"
+  triggers: "mac-archive-rel-goma-canary"
+  triggers: "mac-archive-rel-goma-canary-localoutputcache"
+  triggers: "mac-archive-rel-goma-latest"
+  triggers: "mac-archive-rel-goma-latest-localoutputcache"
+  triggers: "mac-archive-rel-goma-rbe-canary"
+  triggers: "mac-archive-rel-goma-rbe-latest"
+  triggers: "Mac deterministic (dbg)"
+  triggers: "Mac deterministic"
+  triggers: "Memory Infra Tester"
+  triggers: "Mojo Android"
+  triggers: "Mojo ChromiumOS"
+  triggers: "Mojo Linux"
+  triggers: "Mojo Windows"
+  triggers: "Optional Android Release (Nexus 5X)"
+  triggers: "Site Isolation Android"
+  triggers: "TSAN Debug"
+  triggers: "TSAN Release"
+  triggers: "ToTAndroid (dbg)"
+  triggers: "ToTAndroid x64"
+  triggers: "ToTAndroid"
+  triggers: "ToTAndroid64"
+  triggers: "ToTAndroidASan"
+  triggers: "ToTAndroidCFI"
+  triggers: "ToTAndroidOfficial"
+  triggers: "ToTLinux (dbg)"
+  triggers: "ToTLinux"
+  triggers: "ToTLinuxASan"
+  triggers: "ToTLinuxASanLibfuzzer"
+  triggers: "ToTLinuxCoverage"
+  triggers: "ToTLinuxMSan"
+  triggers: "ToTLinuxTSan"
+  triggers: "ToTLinuxThinLTO"
+  triggers: "ToTLinuxUBSanVptr"
+  triggers: "ToTMac (dbg)"
+  triggers: "ToTMac"
+  triggers: "ToTMacASan"
+  triggers: "ToTMacCoverage"
+  triggers: "ToTWin(dbg)"
+  triggers: "ToTWin(dll)"
+  triggers: "ToTWin64(dbg)"
+  triggers: "ToTWin64(dll)"
+  triggers: "ToTWinASanLibfuzzer"
+  triggers: "ToTWinCFI"
+  triggers: "ToTWinCFI64"
+  triggers: "ToTWinLibcxx64"
+  triggers: "ToTiOS"
+  triggers: "ToTiOSDevice"
+  triggers: "UBSan Release"
+  triggers: "UBSan vptr Release"
+  triggers: "UBSanVptr Linux"
+  triggers: "VR Linux"
+  triggers: "WebKit Linux ASAN"
+  triggers: "WebKit Linux Leak"
+  triggers: "WebKit Linux MSAN"
+  triggers: "Win 10 Fast Ring"
+  triggers: "Win ASan Release Media"
+  triggers: "Win ASan Release"
+  triggers: "Win Builder (dbg) Goma Canary"
+  triggers: "Win Builder (dbg) Goma Latest Client"
+  triggers: "Win Builder (dbg)"
+  triggers: "Win Builder Goma Canary"
+  triggers: "Win Builder Goma Latest Client"
+  triggers: "Win Builder Goma RBE Latest Client"
+  triggers: "Win Builder (dbg) Goma RBE Latest Client"
+  triggers: "Win Builder"
+  triggers: "win32-archive-rel-goma-canary-localoutputcache"
+  triggers: "win32-archive-rel-goma-latest-localoutputcache"
+  triggers: "Win cl.exe Goma Canary LocalOutputCache"
+  triggers: "Win cl.exe Goma Latest Client LocalOutputCache"
+  triggers: "Win x64 Builder (dbg)"
+  triggers: "Win x64 Builder"
+  triggers: "Win7 Builder (dbg) Goma Canary"
+  triggers: "Win7 Builder (dbg) Goma Latest Client"
+  triggers: "Win7 Builder Goma Canary"
+  triggers: "Win7 Builder Goma Latest Client"
+  triggers: "WinMSVC64 Goma Canary"
+  triggers: "WinMSVC64 Goma Latest Client"
+  triggers: "Windows deterministic"
+  triggers: "android-asan"
+  triggers: "android-cronet-arm-dbg"
+  triggers: "android-cronet-arm-rel"
+  triggers: "android-cronet-arm64-dbg"
+  triggers: "android-cronet-arm64-rel"
+  triggers: "android-cronet-asan-arm-rel"
+  triggers: "android-cronet-marshmallow-arm64-perf-rel"
+  triggers: "android-cronet-x86-dbg"
+  triggers: "android-cronet-x86-rel"
+  triggers: "android-archive-dbg"
+  triggers: "android-incremental-dbg"
+  triggers: "android-jumbo-rel"
+  triggers: "android-kitkat-arm-rel"
+  triggers: "android-marshmallow-arm64-rel"
+  triggers: "android-mojo-webview-rel"
+  triggers: "android-pie-arm64-rel"
+  triggers: "android-archive-rel"
+  triggers: "chromeos-amd64-generic-asan-rel"
+  triggers: "chromeos-amd64-generic-cfi-thin-lto-rel"
+  triggers: "chromeos-amd64-generic-dbg"
+  triggers: "chromeos-amd64-generic-rel"
+  triggers: "chromeos-amd64-generic-rel (Goma RBE FYI)"
+  triggers: "chromeos-amd64-generic-rel-goma-canary"
+  triggers: "chromeos-amd64-generic-rel-goma-latest"
+  triggers: "chromeos-amd64-generic-rel-goma-rbe-canary"
+  triggers: "chromeos-amd64-generic-rel-goma-rbe-latest"
+  triggers: "chromeos-amd64-generic-rel-vm-tests"
+  triggers: "chromeos-arm-generic-dbg"
+  triggers: "chromeos-arm-generic-rel"
+  triggers: "chromeos-kevin-rel"
+  triggers: "chromeos-kevin-rel-hw-tests"
+  triggers: "fuchsia-fyi-arm64-rel"
+  triggers: "fuchsia-fyi-arm64-rel (Goma RBE FYI)"
+  triggers: "fuchsia-fyi-x64-dbg"
+  triggers: "fuchsia-fyi-x64-rel"
+  triggers: "fuchsia-fyi-x64-rel (Goma RBE FYI)"
+  triggers: "ios-simulator-code-coverage"
+  triggers: "ios-device"
+  triggers: "ios-device-goma-canary-clobber"
+  triggers: "ios-device-goma-latest-clobber"
+  triggers: "ios-device-goma-rbe-canary-clobber"
+  triggers: "ios-device-goma-rbe-latest-clobber"
+  triggers: "ios-device-xcode-clang"
+  triggers: "ios-simulator"
+  triggers: "ios-simulator-cronet"
+  triggers: "ios-simulator-full-configs"
+  triggers: "ios-simulator-noncq"
+  triggers: "ios-simulator-xcode-clang"
+  triggers: "ios-slimnav"
+  triggers: "ios12-beta-simulator"
+  triggers: "ios13-beta-simulator"
+  triggers: "ios13-sdk-device"
+  triggers: "ios13-sdk-simulator"
+  triggers: "linux-annotator-rel"
+  triggers: "linux-bfcache-debug"
+  triggers: "linux-oor-cors-rel"
+  triggers: "linux-blink-animation-use-time-delta"
+  triggers: "linux-blink-heap-concurrent-marking-tsan-rel"
+  triggers: "linux-blink-heap-verification"
+  triggers: "linux-chromeos-dbg"
+  triggers: "linux-chromeos-rel"
+  triggers: "linux-chromium-tests-staging-builder"
+  triggers: "linux-code-coverage"
+  triggers: "linux-archive-dbg"
+  triggers: "linux-gcc-rel"
+  triggers: "linux-jumbo-rel"
+  triggers: "linux-ozone-rel"
+  triggers: "linux-archive-rel"
+  triggers: "linux-fieldtrial-rel"
+  triggers: "linux-wpt-fyi-rel"
+  triggers: "linux-trusty-rel"
+  triggers: "linux-win_cross-rel"
+  triggers: "mac-code-coverage-generation"
+  triggers: "mac-archive-dbg"
+  triggers: "mac-hermetic-upgrade-rel"
+  triggers: "mac-jumbo-rel"
+  triggers: "mac-mojo-rel"
+  triggers: "mac-archive-rel"
+  triggers: "WebRTC Chromium Android Builder"
+  triggers: "WebRTC Chromium Linux Builder"
+  triggers: "WebRTC Chromium Mac Builder"
+  triggers: "WebRTC Chromium Win Builder"
+  triggers: "win-annotator-rel"
+  triggers: "win-asan"
+  triggers: "win-archive-dbg"
+  triggers: "win-jumbo-rel"
+  triggers: "win-archive-rel"
+  triggers: "win-celab-builder-rel"
+  triggers: "win-pixel-builder-rel"
+  triggers: "win32-arm64-rel"
+  triggers: "win32-archive-dbg"
+  triggers: "win32-archive-rel"
+}
+
+# These bots tests running Chromium tests with WebRTC HEAD, so they should
+# trigger when there is a WebRTC commit.
+trigger {
+  id: "webrtc-gitiles-trigger-master"
+  acl_sets: "default"
+  gitiles: {
+    repo: "https://webrtc.googlesource.com/src/"
+    refs: "refs/heads/master"
+  }
+
+  triggers: "WebRTC Chromium FYI Android Builder"
+  triggers: "WebRTC Chromium FYI Android Builder (dbg)"
+  triggers: "WebRTC Chromium FYI Android Builder ARM64 (dbg)"
+
+  triggers: "WebRTC Chromium FYI ios-device"
+  triggers: "WebRTC Chromium FYI ios-simulator"
+
+  triggers: "WebRTC Chromium FYI Linux Builder"
+  triggers: "WebRTC Chromium FYI Linux Builder (dbg)"
+
+  triggers: "WebRTC Chromium FYI Mac Builder"
+  triggers: "WebRTC Chromium FYI Mac Builder (dbg)"
+
+  triggers: "WebRTC Chromium FYI Win Builder"
+  triggers: "WebRTC Chromium FYI Win Builder (dbg)"
+}
+
+
+################################################################################
+# Android Builders. Sorted alphabetically.
+################################################################################
+
+job {
+  id: "ANGLE GPU Android Release (Nexus 5X)"
+  acl_sets: "default"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Android arm Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android arm Builder (dbg)"
+  }
+}
+
+job {
+  id: "Android arm64 Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android arm64 Builder (dbg)"
+  }
+}
+
+job {
+  id: "Android ASAN (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android ASAN (dbg)"
+  }
+}
+
+job {
+  id: "Android FYI 32 dEQP Vk Release (Pixel 2)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI 32 dEQP Vk Release (Pixel 2)"
+  }
+}
+
+job {
+  id: "Android FYI 32 Vk Release (Pixel 2)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI 32 Vk Release (Pixel 2)"
+  }
+}
+
+job {
+  id: "Android FYI 64 dEQP Vk Release (Pixel 2)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI 64 dEQP Vk Release (Pixel 2)"
+  }
+}
+
+job {
+  id: "Android FYI 64 Perf (Pixel 2)"
+  # Triggered by "GPU FYI Perf Android 64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI 64 Perf (Pixel 2)"
+  }
+}
+
+job {
+  id: "Android FYI 64 Vk Release (Pixel 2)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI 64 Vk Release (Pixel 2)"
+  }
+}
+
+job {
+  id: "Android FYI dEQP Release (Nexus 5X)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI dEQP Release (Nexus 5X)"
+  }
+}
+
+job {
+  id: "Android FYI Release (Nexus 5)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI Release (Nexus 5)"
+  }
+}
+
+job {
+  id: "Android FYI Release (Nexus 5X)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI Release (Nexus 5X)"
+  }
+}
+
+job {
+  id: "Android FYI Release (Nexus 6)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI Release (Nexus 6)"
+  }
+}
+
+job {
+  id: "Android FYI Release (Nexus 6P)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI Release (Nexus 6P)"
+  }
+}
+
+job {
+  id: "Android FYI Release (Nexus 9)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI Release (Nexus 9)"
+  }
+}
+
+job {
+  id: "Android FYI Release (NVIDIA Shield TV)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI Release (NVIDIA Shield TV)"
+  }
+}
+
+job {
+  id: "Android FYI Release (Pixel 2)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI Release (Pixel 2)"
+  }
+}
+
+job {
+  id: "Android FYI SkiaRenderer GL (Nexus 5X)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI SkiaRenderer GL (Nexus 5X)"
+  }
+}
+
+
+job {
+  id: "Android FYI SkiaRenderer Vulkan (Pixel 2)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android FYI SkiaRenderer Vulkan (Pixel 2)"
+  }
+}
+
+job {
+  id: "Android Release (Nexus 5X)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android Release (Nexus 5X)"
+  }
+}
+
+job {
+  id: "Android WebView L (dbg)"
+  # triggered by "Android arm Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+     server: "cr-buildbucket.appspot.com"
+     bucket: "luci.chromium.ci"
+     builder: "Android WebView L (dbg)"
+  }
+}
+
+job {
+  id: "Android WebView M (dbg)"
+  # triggered by "Android arm Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+     server: "cr-buildbucket.appspot.com"
+     bucket: "luci.chromium.ci"
+     builder: "Android WebView M (dbg)"
+  }
+}
+
+job {
+  id: "Android WebView N (dbg)"
+  # triggered by "Android arm64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android WebView N (dbg)"
+  }
+}
+
+job {
+  id: "Android WebView O (dbg)"
+  # triggered by "Android arm64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android WebView O (dbg)"
+  }
+}
+
+job {
+  id: "Android WebView P (dbg)"
+  # triggered by "Android arm64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android WebView P (dbg)"
+  }
+}
+
+job {
+  id: "Android WebView P FYI (rel)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android WebView P FYI (rel)"
+  }
+}
+
+job {
+  id: "Android x64 Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android x64 Builder (dbg)"
+  }
+}
+
+job {
+  id: "Android x86 Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android x86 Builder (dbg)"
+  }
+}
+
+job {
+  id: "android-asan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-asan"
+  }
+}
+
+job {
+  id: "android-avd-packager"
+  acl_sets: "default"
+  # Run weekly, on Sunday morning at midnight.
+  schedule: "0 7 * * 0 *"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-avd-packager"
+  }
+}
+
+job {
+  id: "android-code-coverage"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-code-coverage"
+  }
+}
+
+job {
+  id: "android-cronet-arm-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-arm-dbg"
+  }
+}
+
+job {
+  id: "android-cronet-arm-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-arm-rel"
+  }
+}
+
+job {
+  id: "android-cronet-kitkat-arm-rel"
+  # Triggered by "android-cronet-arm-rel".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-kitkat-arm-rel"
+  }
+}
+
+job {
+  id: "android-cronet-lollipop-arm-rel"
+  # Triggered by "android-cronet-arm-rel".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-lollipop-arm-rel"
+  }
+}
+
+job {
+  id: "android-cronet-arm64-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-arm64-dbg"
+  }
+}
+
+job {
+  id: "android-cronet-arm64-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-arm64-rel"
+  }
+}
+
+job {
+  id: "android-cronet-marshmallow-arm64-rel"
+  # Triggered by "android-cronet-arm64-rel".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-marshmallow-arm64-rel"
+  }
+}
+
+job {
+  id: "android-cronet-marshmallow-arm64-perf-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-marshmallow-arm64-perf-rel"
+  }
+}
+
+job {
+  id: "android-cronet-asan-arm-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-asan-arm-rel"
+  }
+}
+
+job {
+  id: "android-cronet-x86-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-x86-dbg"
+  }
+}
+
+job {
+  id: "android-cronet-x86-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-cronet-x86-rel"
+  }
+}
+
+job {
+  id: "android-incremental-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-incremental-dbg"
+  }
+}
+
+job {
+  id: "android-jumbo-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-jumbo-rel"
+  }
+}
+
+job {
+  id: "android-kitkat-arm-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-kitkat-arm-rel"
+  }
+}
+
+job {
+  id: "android-marshmallow-arm64-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-marshmallow-arm64-rel"
+  }
+}
+
+job {
+  id: "android-marshmallow-x86-fyi-rel"
+  acl_sets: "default"
+  # Only run nightly while we work out test issues and
+  # productionize emulator infra. crbug.com/961025
+  schedule: "0 7 * * *"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-marshmallow-x86-fyi-rel"
+  }
+}
+
+job {
+  id: "android-mojo-webview-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-mojo-webview-rel"
+  }
+}
+
+job {
+  id: "android-pie-arm64-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-pie-arm64-rel"
+  }
+}
+
+job {
+  id: "android-pie-x86-fyi-rel"
+  acl_sets: "default"
+  # Only run nightly while we work out test issues and
+  # productionize emulator infra. crbug.com/961025
+  schedule: "0 7 * * *"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-pie-x86-fyi-rel"
+  }
+}
+
+job {
+  id: "android-sdk-packager"
+  acl_sets: "default"
+  # Run weekly, on Sunday morning at midnight.
+  schedule: "0 7 * * 0 *"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-sdk-packager"
+  }
+}
+
+job {
+  id: "Cast Android (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Cast Android (dbg)"
+  }
+}
+
+job {
+  id: "Deterministic Android"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Deterministic Android"
+  }
+}
+
+job {
+  id: "Deterministic Android (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Deterministic Android (dbg)"
+  }
+}
+
+job {
+  id: "GPU FYI Perf Android 64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Perf Android 64 Builder"
+  }
+}
+
+job {
+  id: "KitKat Phone Tester (dbg)"
+  # triggered by "Android arm Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+     server: "cr-buildbucket.appspot.com"
+     bucket: "luci.chromium.ci"
+     builder: "KitKat Phone Tester (dbg)"
+  }
+}
+
+job {
+  id: "KitKat Tablet Tester"
+  # triggered by "Android arm Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+     server: "cr-buildbucket.appspot.com"
+     bucket: "luci.chromium.ci"
+     builder: "KitKat Tablet Tester"
+  }
+}
+
+job {
+  id: "Lollipop Phone Tester"
+  # triggered by "Android arm Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+     server: "cr-buildbucket.appspot.com"
+     bucket: "luci.chromium.ci"
+     builder: "Lollipop Phone Tester"
+  }
+}
+
+job {
+  id: "Lollipop Tablet Tester"
+  # triggered by "Android arm Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+     server: "cr-buildbucket.appspot.com"
+     bucket: "luci.chromium.ci"
+     builder: "Lollipop Tablet Tester"
+  }
+}
+
+job {
+  id: "Marshmallow 64 bit Tester"
+  # triggered by "Android arm64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Marshmallow 64 bit Tester"
+  }
+}
+
+job {
+  id: "Marshmallow Tablet Tester"
+  # triggered by "Android arm Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+     server: "cr-buildbucket.appspot.com"
+     bucket: "luci.chromium.ci"
+     builder: "Marshmallow Tablet Tester"
+  }
+}
+
+job {
+  id: "Nougat Phone Tester"
+  # triggered by "Android arm64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Nougat Phone Tester"
+  }
+}
+
+job {
+  id: "Optional Android Release (Nexus 5X)"
+  acl_sets: "default"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Oreo Phone Tester"
+  # triggered by "Android arm64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Oreo Phone Tester"
+  }
+}
+job {
+  id: "android-pie-arm64-dbg"
+  # triggered by "Android arm64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-pie-arm64-dbg"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Android Builder"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Android Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Android Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Android Tester"
+  }
+}
+
+################################################################################
+# ChromeOS Builders. Sorted alphabetically.
+################################################################################
+
+job {
+  id: "chromeos-amd64-generic-asan-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-asan-rel"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-cfi-thin-lto-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-cfi-thin-lto-rel"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-dbg"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-rel"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-rel-vm-tests"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-rel-vm-tests"
+  }
+}
+
+job {
+  id: "chromeos-arm-generic-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-arm-generic-dbg"
+  }
+}
+
+job {
+  id: "chromeos-arm-generic-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-arm-generic-rel"
+  }
+}
+
+job {
+  id: "chromeos-kevin-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-kevin-rel"
+  }
+}
+
+job {
+  id: "chromeos-kevin-rel-hw-tests"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-kevin-rel-hw-tests"
+  }
+}
+
+job {
+  id: "chromeos-vm-code-coverage"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-vm-code-coverage"
+  }
+}
+
+job {
+  id: "linux-chromeos-code-coverage"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-chromeos-code-coverage"
+  }
+}
+
+job {
+  id: "linux-chromeos-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-chromeos-dbg"
+  }
+}
+
+job {
+  id: "linux-chromeos-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-chromeos-rel"
+  }
+}
+
+job {
+  id: "Linux ChromiumOS Full"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux ChromiumOS Full"
+  }
+}
+
+################################################################################
+# iOS Builders. Sorted alphabetically.
+################################################################################
+
+job {
+  id: "ios-simulator-code-coverage"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-simulator-code-coverage"
+  }
+}
+
+job {
+  id: "ios-device"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-device"
+  }
+}
+
+job {
+  id: "ios-device-xcode-clang"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-device-xcode-clang"
+  }
+}
+
+job {
+  id: "ios-simulator"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-simulator"
+  }
+}
+
+job {
+  id: "ios-simulator-full-configs"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-simulator-full-configs"
+  }
+}
+
+job {
+  id: "ios-simulator-noncq"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-simulator-noncq"
+  }
+}
+
+job {
+  id: "ios-slimnav"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-slimnav"
+  }
+}
+
+job {
+  id: "ios-simulator-xcode-clang"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-simulator-xcode-clang"
+  }
+}
+
+job {
+  id: "ios12-beta-simulator"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios12-beta-simulator"
+  }
+}
+
+job {
+  id: "ios13-beta-simulator"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios13-beta-simulator"
+  }
+}
+
+job {
+  id: "ios13-sdk-device"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios13-sdk-device"
+  }
+}
+
+job {
+  id: "ios13-sdk-simulator"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios13-sdk-simulator"
+  }
+}
+
+################################################################################
+# Linux Builders. Sorted alphabetically except builder-Testers must follow their
+# builder-Builders.
+################################################################################
+
+job {
+  id: "ANGLE GPU Linux Release (Intel HD 630)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "ANGLE GPU Linux Release (NVIDIA)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Cast Audio Linux"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Cast Audio Linux"
+  }
+}
+
+job {
+  id: "Cast Linux"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Cast Linux"
+  }
+}
+
+job {
+  id: "Dawn Linux x64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Linux x64 Builder"
+  }
+}
+
+job {
+  id: "Dawn Linux x64 Release (Intel HD 630)"
+  # Triggered by "Dawn Linux x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Linux x64 Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Dawn Linux x64 Release (NVIDIA)"
+  # Triggered by "Dawn Linux x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Linux x64 Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Dawn Linux x64 DEPS Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Linux x64 DEPS Builder"
+  }
+}
+
+job {
+  id: "Dawn Linux x64 DEPS Release (Intel HD 630)"
+  # Triggered by "Dawn Linux x64 DEPS Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Linux x64 DEPS Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Dawn Linux x64 DEPS Release (NVIDIA)"
+  # Triggered by "Dawn Linux x64 DEPS Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Linux x64 DEPS Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Deterministic Linux"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Deterministic Linux"
+  }
+}
+
+job {
+  id: "Deterministic Linux (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Deterministic Linux (dbg)"
+  }
+}
+
+job {
+  id: "Deterministic Fuchsia (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Deterministic Fuchsia (dbg)"
+  }
+}
+
+job {
+  id: "Fuchsia ARM64"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Fuchsia ARM64"
+  }
+}
+
+job {
+  id: "fuchsia-arm64-cast"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "fuchsia-arm64-cast"
+  }
+}
+
+job {
+  id: "Fuchsia x64"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Fuchsia x64"
+  }
+}
+
+job {
+  id: "fuchsia-x64-cast"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "fuchsia-x64-cast"
+  }
+}
+
+job {
+  id: "fuchsia-x64-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "fuchsia-x64-dbg"
+  }
+}
+
+job {
+  id: "GPU FYI Linux Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Linux Builder"
+  }
+}
+
+job {
+  id: "Linux FYI Experimental Release (Intel HD 630)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI Experimental Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Linux FYI Release (AMD R7 240)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI Release (AMD R7 240)"
+  }
+}
+
+job {
+  id: "Linux FYI Release (Intel HD 630)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Linux FYI Release (Intel UHD 630)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI Release (Intel UHD 630)"
+  }
+}
+
+job {
+  id: "Linux FYI dEQP Release (Intel HD 630)"
+  # Triggered by "GPU FYI Linux dEQP Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI dEQP Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Linux FYI Release (NVIDIA)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Linux FYI Experimental Release (NVIDIA)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI Experimental Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Linux FYI SkiaRenderer Vulkan (Intel HD 630)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI SkiaRenderer Vulkan (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Linux FYI SkiaRenderer Vulkan (NVIDIA)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI SkiaRenderer Vulkan (NVIDIA)"
+  }
+}
+
+job {
+  id: "Optional Linux Release (Intel HD 630)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Optional Linux Release (NVIDIA)"
+  # Triggered by "GPU FYI Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "GPU FYI Linux Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Linux Builder (dbg)"
+  }
+}
+
+job {
+  id: "Linux FYI Debug (NVIDIA)"
+  # Triggered by "GPU FYI Linux Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI Debug (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU FYI Linux dEQP Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Linux dEQP Builder"
+  }
+}
+
+job {
+  id: "Linux FYI dEQP Release (NVIDIA)"
+  # Triggered by "GPU FYI Linux dEQP Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI dEQP Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU FYI Linux Ozone Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Linux Ozone Builder"
+  }
+}
+
+job {
+  id: "Linux FYI Ozone (Intel)"
+  # Triggered by "GPU FYI Linux Ozone Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI Ozone (Intel)"
+  }
+}
+
+job {
+  id: "GPU Linux Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU Linux Builder"
+  }
+}
+
+job {
+  id: "Linux Release (NVIDIA)"
+  # Triggered by "GPU Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU Linux Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU Linux Builder (dbg)"
+  }
+}
+
+job {
+  id: "Linux Debug (NVIDIA)"
+  # Triggered by "GPU Linux Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Debug (NVIDIA)"
+  }
+}
+
+job {
+  id: "Leak Detection Linux"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Leak Detection Linux"
+  }
+}
+
+job {
+  id: "linux-blink-animation-use-time-delta"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-blink-animation-use-time-delta"
+  }
+}
+
+job {
+  id: "linux-blink-heap-concurrent-marking-tsan-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-blink-heap-concurrent-marking-tsan-rel"
+  }
+}
+
+job {
+  id: "linux-blink-heap-verification"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-blink-heap-verification"
+  }
+}
+
+job {
+  id: "linux-chromium-tests-staging-builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-chromium-tests-staging-builder"
+  }
+}
+
+job {
+  id: "linux-chromium-tests-staging-tests"
+  # Triggered by "linux-chromium-tests-staging-builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-chromium-tests-staging-tests"
+  }
+}
+
+job {
+  id: "linux-code-coverage"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-code-coverage"
+  }
+}
+
+job {
+  id: "linux-archive-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-dbg"
+  }
+}
+
+job {
+  id: "linux-gcc-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-gcc-rel"
+  }
+}
+
+job {
+  id: "linux-jumbo-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-jumbo-rel"
+  }
+}
+
+job {
+  id: "linux-ozone-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-ozone-rel"
+  }
+}
+
+job {
+  id: "linux-archive-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel"
+  }
+}
+
+job {
+  id: "linux-bfcache-debug"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-bfcache-debug"
+  }
+}
+
+job {
+  id: "linux-oor-cors-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-oor-cors-rel"
+  }
+}
+
+job {
+  id: "linux-fieldtrial-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-fieldtrial-rel"
+  }
+}
+
+job {
+  id: "linux-wpt-fyi-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-wpt-fyi-rel"
+  }
+}
+
+job {
+  id: "Linux ASan LSan Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux ASan LSan Builder"
+  }
+}
+
+job {
+  id: "Linux ASan LSan Tests (1)"
+  # Triggered by "Linux ASan LSan Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux ASan LSan Tests (1)"
+  }
+}
+
+job {
+  id: "Linux ASan Tests (sandboxed)"
+  # Triggered by "Linux ASan LSan Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux ASan Tests (sandboxed)"
+  }
+}
+
+job {
+  id: "Linux Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Builder (dbg)"
+  }
+}
+
+job {
+  id: "Linux Tests (dbg)(1)"
+  # Triggered by "Linux Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Tests (dbg)(1)"
+  }
+}
+
+job {
+  id: "Linux Builder (dbg)(32)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Builder (dbg)(32)"
+  }
+}
+
+job {
+  id: "Linux Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Builder"
+  }
+}
+
+job {
+  id: "Linux FYI GPU TSAN Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux FYI GPU TSAN Release"
+  }
+}
+
+job {
+  id: "Linux Tests"
+  # Triggered by "Linux Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Tests"
+  }
+}
+
+job {
+  id: "Linux TSan Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux TSan Builder"
+  }
+}
+
+job {
+  id: "Linux TSan Tests"
+  # Triggered by "Linux TSan Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux TSan Tests"
+  }
+}
+
+job {
+  id: "linux-trusty-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-trusty-rel"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Linux Builder"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Linux Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Linux Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Linux Tester"
+  }
+}
+
+################################################################################
+# Mac Builders. Sorted alphabetically.
+################################################################################
+
+job {
+  id: "ANGLE GPU Mac Release (Intel)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "ANGLE GPU Mac Retina Release (NVIDIA)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "ANGLE GPU Mac Retina Release (AMD)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Dawn Mac x64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Mac x64 Builder"
+  }
+}
+
+job {
+  id: "Dawn Mac x64 DEPS Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Mac x64 DEPS Builder"
+  }
+}
+
+job {
+  id: "Dawn Mac x64 Release (AMD)"
+  # Triggered by "Dawn Mac x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Mac x64 Release (AMD)"
+  }
+}
+
+job {
+  id: "Dawn Mac x64 Release (Intel)"
+  # Triggered by "Dawn Mac x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Mac x64 Release (Intel)"
+  }
+}
+
+job {
+  id: "Dawn Mac x64 DEPS Release (AMD)"
+  # Triggered by "Dawn Mac x64 DEPS Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Mac x64 DEPS Release (AMD)"
+  }
+}
+
+job {
+  id: "Dawn Mac x64 DEPS Release (Intel)"
+  # Triggered by "Dawn Mac x64 DEPS Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Mac x64 DEPS Release (Intel)"
+  }
+}
+
+job {
+  id: "GPU FYI Mac Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Mac Builder"
+  }
+}
+
+job {
+  id: "GPU Mac Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU Mac Builder"
+  }
+}
+
+job {
+  id: "GPU Mac Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU Mac Builder (dbg)"
+  }
+}
+
+job {
+  id: "mac-code-coverage-generation"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-code-coverage-generation"
+  }
+}
+
+job {
+  id: "mac-jumbo-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-jumbo-rel"
+  }
+}
+
+job {
+  id: "mac-mojo-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-mojo-rel"
+  }
+}
+
+job {
+  id: "Mac Debug (Intel)"
+  # Triggered by "GPU Mac Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Debug (Intel)"
+  }
+}
+
+job {
+  id: "Mac FYI 10.14 Release (AMD)"
+  # Triggered by "GPU FYI Mac Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI 10.14 Release (AMD)"
+  }
+}
+
+job {
+  id: "Mac FYI 10.14 Release (Intel)"
+  # Triggered by "GPU FYI Mac Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI 10.14 Release (Intel)"
+  }
+}
+
+job {
+  id: "Mac FYI 10.14 Release (NVIDIA)"
+  # Triggered by "GPU FYI Mac Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI 10.14 Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Mac FYI Experimental Release (Intel)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Experimental Release (Intel)"
+  }
+}
+
+job {
+  id: "Mac FYI Experimental Retina Release (AMD)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Experimental Retina Release (AMD)"
+  }
+}
+
+job {
+  id: "Mac FYI Experimental Retina Release (NVIDIA)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Experimental Retina Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Mac FYI Release (Intel)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Release (Intel)"
+  }
+}
+
+job {
+  id: "Mac FYI Retina Release (AMD)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Retina Release (AMD)"
+  }
+}
+
+job {
+  id: "Mac FYI Retina Release (NVIDIA)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Retina Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Mac Pro FYI Release (AMD)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Pro FYI Release (AMD)"
+  }
+}
+
+job {
+  id: "Mac Release (Intel)"
+  # Triggered by "GPU Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Release (Intel)"
+  }
+}
+
+job {
+  id: "Mac Retina Debug (AMD)"
+  # Triggered by "GPU Mac Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Retina Debug (AMD)"
+  }
+}
+
+job {
+  id: "Mac Retina Release (AMD)"
+  # Triggered by "GPU Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Retina Release (AMD)"
+  }
+}
+
+job {
+  id: "Optional Mac Release (Intel)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Optional Mac Retina Release (NVIDIA)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Optional Mac Retina Release (AMD)"
+  # Triggered by "GPU FYI Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "GPU FYI Mac Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Mac Builder (dbg)"
+  }
+}
+
+job {
+  id: "mac-osxbeta-rel"
+  # Triggered by "Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-osxbeta-rel"
+  }
+}
+
+job {
+  id: "Mac FYI Debug (Intel)"
+  # Triggered by "GPU FYI Mac Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Debug (Intel)"
+  }
+}
+
+job {
+  id: "Mac FYI Retina Debug (AMD)"
+  # Triggered by "GPU FYI Mac Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Retina Debug (AMD)"
+  }
+}
+
+job {
+  id: "Mac FYI Retina Debug (NVIDIA)"
+  # Triggered by "GPU FYI Mac Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI Retina Debug (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU FYI Mac dEQP Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Mac dEQP Builder"
+  }
+}
+
+job {
+  id: "Mac FYI dEQP Release AMD"
+  # Triggered by "GPU FYI Mac dEQP Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI dEQP Release AMD"
+  }
+}
+
+job {
+  id: "Mac FYI dEQP Release Intel"
+  # Triggered by "GPU FYI Mac dEQP Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI dEQP Release Intel"
+  }
+}
+
+job {
+  id: "Mac Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder"
+  }
+}
+
+job {
+  id: "Mac Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder (dbg)"
+  }
+}
+
+job {
+  id: "Mac FYI GPU ASAN Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac FYI GPU ASAN Release"
+  }
+}
+
+job {
+  id: "Mac10.10 Tests"
+  # Triggered by "Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac10.10 Tests"
+  }
+}
+
+job {
+  id: "Mac10.11 Tests"
+  # Triggered by "Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac10.11 Tests"
+  }
+}
+
+job {
+  id: "Mac10.12 Tests"
+  # Triggered by "Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac10.12 Tests"
+  }
+}
+
+job {
+  id: "Mac10.13 Tests"
+  # Triggered by "Mac Builder".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac10.13 Tests"
+  }
+}
+
+job {
+  id: "Mac10.13 Tests (dbg)"
+  # Triggered by "Mac Builder (dbg)".
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac10.13 Tests (dbg)"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Mac Builder"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Mac Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Mac Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Mac Tester"
+  }
+}
+
+################################################################################
+# Windows Builders. Sorted alphabetically.
+################################################################################
+
+job {
+  id: "ANGLE GPU Win10 x64 Release (Intel HD 630)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "ANGLE GPU Win10 x64 Release (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Dawn Win10 x64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x64 Builder"
+  }
+}
+
+job {
+  id: "Dawn Win10 x64 Release (Intel HD 630)"
+  # Triggered by "Dawn Win10 x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x64 Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Dawn Win10 x64 Release (NVIDIA)"
+  # Triggered by "Dawn Win10 x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x64 Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Dawn Win10 x64 DEPS Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x64 DEPS Builder"
+  }
+}
+
+job {
+  id: "Dawn Win10 x64 DEPS Release (Intel HD 630)"
+  # Triggered by "Dawn Win10 x64 DEPS Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x64 DEPS Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Dawn Win10 x64 DEPS Release (NVIDIA)"
+  # Triggered by "Dawn Win10 x64 DEPS Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x64 DEPS Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Dawn Win10 x86 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x86 Builder"
+  }
+}
+
+job {
+  id: "Dawn Win10 x86 Release (Intel HD 630)"
+  # Triggered by "Dawn Win10 x86 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x86 Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Dawn Win10 x86 Release (NVIDIA)"
+  # Triggered by "Dawn Win10 x86 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x86 Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Dawn Win10 x86 DEPS Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x86 DEPS Builder"
+  }
+}
+
+job {
+  id: "Dawn Win10 x86 DEPS Release (Intel HD 630)"
+  # Triggered by "Dawn Win10 x86 DEPS Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x86 DEPS Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Dawn Win10 x86 DEPS Release (NVIDIA)"
+  # Triggered by "Dawn Win10 x86 DEPS Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Dawn Win10 x86 DEPS Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU FYI Win Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Win Builder"
+  }
+}
+
+job {
+  id: "GPU FYI XR Win x64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI XR Win x64 Builder"
+  }
+}
+
+job {
+  id: "Optional Win10 x64 Release (Intel HD 630)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Optional Win10 x64 Release (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Win10 FYI x64 Release (Intel HD 630)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 Release (Intel UHD 630)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Release (Intel UHD 630)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 dEQP Release (Intel HD 630)"
+  # Triggered by "GPU FYI Win x64 dEQP Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 dEQP Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 Release (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 Release XR Perf (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Release XR Perf (NVIDIA)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 Exp Release (Intel HD 630)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Exp Release (Intel HD 630)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 Exp Release (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Exp Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 Release (AMD RX 550)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Release (AMD RX 550)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 Release (NVIDIA GeForce GTX 1660)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Release (NVIDIA GeForce GTX 1660)"
+  }
+}
+
+job {
+  id: "Win10 FYI x86 Release (NVIDIA)"
+  # Triggered by "GPU FYI Win Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x86 Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Win7 ANGLE Tryserver (AMD)"
+  # Triggered by "GPU FYI Win Builder"
+  acl_sets: "triggered-by-parent-builders"
+  # This bot doesn't actually exist, so it's noop'ed out. crbug.com/819899
+  noop: {}
+}
+
+job {
+  id: "Win7 FYI Release (AMD)"
+  # Triggered by "GPU FYI Win Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 FYI Release (AMD)"
+  }
+}
+
+job {
+  id: "Win7 FYI Release (NVIDIA)"
+  # Triggered by "GPU FYI Win Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 FYI Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU FYI Win Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Win Builder (dbg)"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 Debug (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 Debug (NVIDIA)"
+  }
+}
+
+job {
+  id: "Win7 FYI Debug (AMD)"
+  # Triggered by "GPU FYI Win Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 FYI Debug (AMD)"
+  }
+}
+
+job {
+  id: "GPU FYI Win dEQP Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Win dEQP Builder"
+  }
+}
+
+job {
+  id: "Win10 FYI x64 dEQP Release (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 dEQP Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 FYI x64 dEQP Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "Win7 FYI dEQP Release (AMD)"
+  # Triggered by "GPU FYI Win dEQP Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 FYI dEQP Release (AMD)"
+  }
+}
+
+job {
+  id: "GPU FYI Win x64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Win x64 Builder"
+  }
+}
+
+job {
+  id: "Win7 FYI x64 Release (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 FYI x64 Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU FYI Win x64 Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Win x64 Builder (dbg)"
+  }
+}
+
+job {
+  id: "GPU FYI Win x64 dEQP Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU FYI Win x64 dEQP Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Win Builder"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Win Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Win7 Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Win7 Tester"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Win8 Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Win8 Tester"
+  }
+}
+
+job {
+  id: "WebRTC Chromium Win10 Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc"
+    builder: "WebRTC Chromium Win10 Tester"
+  }
+}
+
+job {
+  id: "Win7 FYI x64 dEQP Release (NVIDIA)"
+  # Triggered by "GPU FYI Win x64 dEQP Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 FYI x64 dEQP Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU Win x64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU Win x64 Builder"
+  }
+}
+
+job {
+  id: "Win10 x64 Release (NVIDIA)"
+  # Triggered by "GPU Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 x64 Release (NVIDIA)"
+  }
+}
+
+job {
+  id: "GPU Win x64 Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "GPU Win x64 Builder (dbg)"
+  }
+}
+
+job {
+  id: "Win10 x64 Debug (NVIDIA)"
+  # Triggered by "GPU Win x64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 x64 Debug (NVIDIA)"
+  }
+}
+
+job {
+  id: "Win Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win Builder (dbg)"
+  }
+}
+
+job {
+  id: "Win x64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win x64 Builder"
+  }
+}
+
+job {
+  id: "Win x64 Builder (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win x64 Builder (dbg)"
+  }
+}
+
+job {
+  id: "win-asan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-asan"
+  }
+}
+
+job {
+  id: "win-jumbo-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-jumbo-rel"
+  }
+}
+
+job {
+  id: "win-celab-builder-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-celab-builder-rel"
+  }
+}
+
+job {
+  id: "win-celab-tester-rel"
+  # Triggered by "win-celab-builder-rel"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-celab-tester-rel"
+  }
+}
+
+job {
+  id: "win-pixel-builder-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-pixel-builder-rel"
+  }
+}
+
+job {
+  id: "win-pixel-tester-rel"
+  # Triggered by "win-pixel-builder-rel"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-pixel-tester-rel"
+  }
+}
+
+job {
+  id: "Win Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win Builder"
+  }
+}
+
+job {
+  id: "Win7 (32) Tests"
+  # Triggered by "Win Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 (32) Tests"
+  }
+}
+
+job {
+  id: "Win7 Tests (1)"
+  # Triggered by "Win Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 Tests (1)"
+  }
+}
+
+job {
+  id: "Win7 Tests (dbg)(1)"
+  # Triggered by "Win Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 Tests (dbg)(1)"
+  }
+}
+
+job {
+  id: "Win10 Tests x64"
+  # Triggered by "Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 Tests x64"
+  }
+}
+
+job {
+  id: "Win 7 Tests x64 (1)"
+  # Triggered by "Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win 7 Tests x64 (1)"
+  }
+}
+
+job {
+  id: "Win10 Tests x64 (dbg)"
+  # Triggered by "Win x64 Builder (dbg)"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 Tests x64 (dbg)"
+  }
+}
+
+job {
+  id: "Win10 Tests x64 1803"
+  # Triggered by "Win x64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win10 Tests x64 1803"
+  }
+}
+
+################################################################################
+# Jobs below are managed by luci-check.  If you wish to change them, please
+# copy/paste them above this section.
+################################################################################
+
+job {
+  id: "ASAN Debug"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ASAN Debug"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "ASAN Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ASAN Release"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 5
+  }
+}
+
+job {
+  id: "ASAN Release Media"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ASAN Release Media"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "ASan Debug (32-bit x86 with V8-ARM)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ASan Debug (32-bit x86 with V8-ARM)"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "ASan Release (32-bit x86 with V8-ARM)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ASan Release (32-bit x86 with V8-ARM)"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "ASan Release Media (32-bit x86 with V8-ARM)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ASan Release Media (32-bit x86 with V8-ARM)"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "Afl Upload Linux ASan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Afl Upload Linux ASan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "android-archive-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-archive-dbg"
+  }
+}
+
+job {
+  id: "android-archive-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-archive-rel"
+  }
+}
+
+job {
+  id: "android-archive-dbg-goma-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-archive-dbg-goma-canary"
+  }
+}
+
+job {
+  id: "android-archive-dbg-goma-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-archive-dbg-goma-latest"
+  }
+}
+
+job {
+  id: "android-archive-dbg-goma-rbe-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-archive-dbg-goma-rbe-canary"
+  }
+}
+
+job {
+  id: "android-archive-dbg-goma-rbe-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-archive-dbg-goma-rbe-latest"
+  }
+}
+
+job {
+  id: "android-archive-dbg-goma-rbe-ats-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-archive-dbg-goma-rbe-ats-canary"
+  }
+}
+
+job {
+  id: "android-archive-dbg-goma-rbe-ats-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-archive-dbg-goma-rbe-ats-latest"
+  }
+}
+
+job {
+  id: "android-bfcache-debug"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "android-bfcache-debug"
+  }
+}
+
+job {
+  id: "Android CFI"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Android CFI"
+  }
+}
+
+job {
+  id: "ChromiumOS ASAN Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ChromiumOS ASAN Release"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 6
+  }
+}
+
+job {
+  id: "Closure Compilation Linux"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Closure Compilation Linux"
+  }
+}
+
+job {
+  id: "fuchsia-fyi-arm64-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "fuchsia-fyi-arm64-rel"
+  }
+}
+
+job {
+  id: "fuchsia-fyi-x64-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "fuchsia-fyi-x64-dbg"
+  }
+}
+
+job {
+  id: "fuchsia-fyi-x64-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "fuchsia-fyi-x64-rel"
+  }
+}
+
+job {
+  id: "Jumbo Linux x64"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Jumbo Linux x64"
+  }
+}
+
+job {
+  id: "Jumbo Mac"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Jumbo Mac"
+  }
+}
+
+job {
+  id: "Jumbo Win x64"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Jumbo Win x64"
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Chrome OS ASan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Chrome OS ASan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 3
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux32 ASan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux32 ASan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 3
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux32 ASan Debug"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux32 ASan Debug"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 3
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux32 V8-ARM ASan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux32 V8-ARM ASan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 1
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux32 V8-ARM ASan Debug"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux32 V8-ARM ASan Debug"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 1
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux ASan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux ASan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 5
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux ASan Debug"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux ASan Debug"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 5
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux V8-ARM64 ASan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux V8-ARM64 ASan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 1
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux V8-ARM64 ASan Debug"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux V8-ARM64 ASan Debug"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 1
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux MSan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux MSan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 5
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Linux UBSan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Linux UBSan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 5
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Mac ASan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Mac ASan"
+  }
+}
+
+job {
+  id: "Libfuzzer Upload Windows ASan"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Libfuzzer Upload Windows ASan"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 3
+  }
+}
+
+job {
+  id: "Linux Builder Goma Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Builder Goma Canary"
+  }
+}
+
+job {
+  id: "Linux Builder Goma Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Builder Goma Latest Client"
+  }
+}
+
+job {
+  id: "Linux Builder Goma RBE Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Builder Goma RBE Canary"
+  }
+}
+
+job {
+  id: "Linux Builder Goma RBE Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Builder Goma RBE Latest Client"
+  }
+}
+
+job {
+  id: "linux-archive-rel-goma-rbe-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel-goma-rbe-canary"
+  }
+}
+
+job {
+  id: "linux-archive-rel-goma-rbe-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel-goma-rbe-latest"
+  }
+}
+
+job {
+  id: "linux-archive-rel-goma-rbe-ats-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel-goma-rbe-ats-canary"
+  }
+}
+
+job {
+  id: "linux-archive-rel-goma-rbe-ats-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel-goma-rbe-ats-latest"
+  }
+}
+
+job {
+  id: "Linux CFI"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux CFI"
+  }
+}
+
+job {
+  id: "Linux Chromium OS ASan LSan Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Chromium OS ASan LSan Builder"
+  }
+}
+
+job {
+  id: "Linux Chromium OS ASan LSan Tests (1)"
+  # Triggered by "Linux Chromium OS ASan LSan Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Chromium OS ASan LSan Tests (1)"
+  }
+}
+
+job {
+  id: "Linux ChromiumOS MSan Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux ChromiumOS MSan Builder"
+  }
+}
+
+job {
+  id: "Linux ChromiumOS MSan Tests"
+  # Triggered by "Linux ChromiumOS MSan Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux ChromiumOS MSan Tests"
+  }
+}
+
+job {
+  id: "Linux MSan Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux MSan Builder"
+  }
+}
+
+job {
+  id: "Linux MSan Tests"
+  # Triggered by "Linux MSan Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux MSan Tests"
+  }
+}
+
+job {
+  id: "Linux Viz"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux Viz"
+  }
+}
+
+job {
+  id: "Linux remote_run Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux remote_run Builder"
+  }
+}
+
+job {
+  id: "Linux remote_run Tester"
+  # Triggered by "Linux remote_run Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Linux remote_run Tester"
+  }
+}
+
+job {
+  id: "linux-archive-rel-goma-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel-goma-canary"
+  }
+}
+
+job {
+  id: "linux-archive-rel-goma-canary-localoutputcache"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel-goma-canary-localoutputcache"
+  }
+}
+
+job {
+  id: "linux-archive-rel-goma-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel-goma-latest"
+  }
+}
+
+job {
+  id: "linux-archive-rel-goma-latest-localoutputcache"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-archive-rel-goma-latest-localoutputcache"
+  }
+}
+
+job {
+  id: "MSAN Release (chained origins)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "MSAN Release (chained origins)"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "MSAN Release (no origins)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "MSAN Release (no origins)"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "mac-archive-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-archive-dbg"
+  }
+}
+
+job {
+  id: "mac-archive-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-archive-rel"
+  }
+}
+
+job {
+  id: "Mac ASAN Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac ASAN Release"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 2
+  }
+}
+
+job {
+  id: "Mac ASAN Release Media"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac ASAN Release Media"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 2
+  }
+}
+
+job {
+  id: "Mac ASan 64 Builder"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac ASan 64 Builder"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 2
+  }
+}
+
+job {
+  id: "Mac ASan 64 Tests (1)"
+  # Triggered by "Mac ASan 64 Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac ASan 64 Tests (1)"
+  }
+}
+
+job {
+  id: "Mac Builder (dbg) Goma Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder (dbg) Goma Canary"
+  }
+}
+
+job {
+  id: "Mac Builder (dbg) Goma Canary (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder (dbg) Goma Canary (clobber)"
+  }
+}
+
+job {
+  id: "Mac Builder (dbg) Goma Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder (dbg) Goma Latest Client"
+  }
+}
+
+job {
+  id: "Mac Builder (dbg) Goma Latest Client (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder (dbg) Goma Latest Client (clobber)"
+  }
+}
+
+job {
+  id: "Mac Builder (dbg) Goma RBE Canary (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder (dbg) Goma RBE Canary (clobber)"
+  }
+}
+
+job {
+  id: "Mac Builder (dbg) Goma RBE Latest Client (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder (dbg) Goma RBE Latest Client (clobber)"
+  }
+}
+
+job {
+  id: "Mac Builder Goma Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder Goma Canary"
+  }
+}
+
+job {
+  id: "mac-archive-rel-goma-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-archive-rel-goma-canary"
+  }
+}
+
+job {
+  id: "mac-archive-rel-goma-canary-localoutputcache"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-archive-rel-goma-canary-localoutputcache"
+  }
+}
+
+job {
+  id: "Mac Builder Goma Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac Builder Goma Latest Client"
+  }
+}
+
+job {
+  id: "mac-archive-rel-goma-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-archive-rel-goma-latest"
+  }
+}
+
+job {
+  id: "mac-archive-rel-goma-latest-localoutputcache"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-archive-rel-goma-latest-localoutputcache"
+  }
+}
+
+job {
+  id: "mac-archive-rel-goma-rbe-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-archive-rel-goma-rbe-canary"
+  }
+}
+
+job {
+  id: "mac-archive-rel-goma-rbe-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-archive-rel-goma-rbe-latest"
+  }
+}
+
+job {
+  id: "Mac deterministic"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac deterministic"
+  }
+}
+
+job {
+  id: "Mac deterministic (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mac deterministic (dbg)"
+  }
+}
+
+job {
+  id: "Marshmallow Phone Tester (rel)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Marshmallow Phone Tester (rel)"
+  }
+}
+
+job {
+  id: "Memory Infra Tester"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Memory Infra Tester"
+  }
+}
+
+job {
+  id: "Mojo Android"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mojo Android"
+  }
+}
+
+job {
+  id: "Mojo ChromiumOS"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mojo ChromiumOS"
+  }
+}
+
+job {
+  id: "Mojo Linux"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mojo Linux"
+  }
+}
+
+job {
+  id: "Mojo Windows"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Mojo Windows"
+  }
+}
+
+job {
+  id: "Site Isolation Android"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Site Isolation Android"
+  }
+}
+
+job {
+  id: "TSAN Debug"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "TSAN Debug"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "TSAN Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "TSAN Release"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 3
+  }
+}
+
+job {
+  id: "UBSan Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "UBSan Release"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "UBSan vptr Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "UBSan vptr Release"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 4
+  }
+}
+
+job {
+  id: "VR Linux"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "VR Linux"
+  }
+}
+
+job {
+  id: "WebKit Linux ASAN"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "WebKit Linux ASAN"
+  }
+}
+
+job {
+  id: "WebKit Linux Leak"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "WebKit Linux Leak"
+  }
+}
+
+job {
+  id: "WebKit Linux MSAN"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "WebKit Linux MSAN"
+  }
+}
+
+job {
+  id: "WebKit Mac10.13 (retina)"
+  # Triggered by "Mac Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "WebKit Mac10.13 (retina)"
+  }
+}
+
+job {
+  id: "WebKit Win10"
+  # Triggered by "Win Builder"
+  acl_sets: "triggered-by-parent-builders"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "WebKit Win10"
+  }
+}
+
+job {
+  id: "win32-arm64-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win32-arm64-rel"
+  }
+}
+
+job {
+  id: "win32-archive-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win32-archive-dbg"
+  }
+}
+
+job {
+  id: "win32-archive-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win32-archive-rel"
+  }
+}
+
+job {
+  id: "Win 10 Fast Ring"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win 10 Fast Ring"
+  }
+}
+
+job {
+  id: "Win ASan Release"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win ASan Release"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 7
+  }
+}
+
+job {
+  id: "Win ASan Release Media"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win ASan Release Media"
+  }
+  triggering_policy: {
+    max_concurrent_invocations: 6
+  }
+}
+
+job {
+  id: "Win Builder (dbg) Goma Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win Builder (dbg) Goma Canary"
+  }
+}
+
+job {
+  id: "Win Builder Goma Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win Builder Goma Canary"
+  }
+}
+
+job {
+  id: "win32-archive-rel-goma-canary-localoutputcache"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win32-archive-rel-goma-canary-localoutputcache"
+  }
+}
+
+job {
+  id: "Win cl.exe Goma Canary LocalOutputCache"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win cl.exe Goma Canary LocalOutputCache"
+  }
+}
+
+job {
+  id: "Win Builder (dbg) Goma Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win Builder (dbg) Goma Latest Client"
+  }
+}
+
+job {
+  id: "Win Builder Goma Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win Builder Goma Latest Client"
+  }
+}
+
+job {
+  id: "win32-archive-rel-goma-latest-localoutputcache"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win32-archive-rel-goma-latest-localoutputcache"
+  }
+}
+
+job {
+  id: "Win cl.exe Goma Latest Client LocalOutputCache"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win cl.exe Goma Latest Client LocalOutputCache"
+  }
+}
+
+job {
+  id: "Win Builder (dbg) Goma RBE Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win Builder (dbg) Goma RBE Latest Client"
+  }
+}
+
+job {
+  id: "Win Builder Goma RBE Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win Builder Goma RBE Latest Client"
+  }
+}
+
+job {
+  id: "win-archive-dbg"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-archive-dbg"
+  }
+}
+
+job {
+  id: "win-archive-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-archive-rel"
+  }
+}
+
+job {
+  id: "Win7 Builder (dbg) Goma Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 Builder (dbg) Goma Canary"
+  }
+}
+
+job {
+  id: "Win7 Builder Goma Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 Builder Goma Canary"
+  }
+}
+
+job {
+  id: "WinMSVC64 Goma Canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "WinMSVC64 Goma Canary"
+  }
+}
+
+job {
+  id: "Win7 Builder (dbg) Goma Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 Builder (dbg) Goma Latest Client"
+  }
+}
+
+job {
+  id: "Win7 Builder Goma Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Win7 Builder Goma Latest Client"
+  }
+}
+
+job {
+  id: "WinMSVC64 Goma Latest Client"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "WinMSVC64 Goma Latest Client"
+  }
+}
+
+job {
+  id: "Windows deterministic"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Windows deterministic"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-rel-goma-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-rel-goma-canary"
+  }
+}
+
+job {
+  id: "ios-device-goma-canary-clobber"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-device-goma-canary-clobber"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-rel-goma-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-rel-goma-latest"
+  }
+}
+
+job {
+  id: "ios-device-goma-latest-clobber"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-device-goma-latest-clobber"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-rel-goma-rbe-canary"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-rel-goma-rbe-canary"
+  }
+}
+
+job {
+  id: "ios-device-goma-rbe-canary-clobber"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-device-goma-rbe-canary-clobber"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-rel-goma-rbe-latest"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-rel-goma-rbe-latest"
+  }
+}
+
+job {
+  id: "ios-device-goma-rbe-latest-clobber"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-device-goma-rbe-latest-clobber"
+  }
+}
+
+job {
+  id: "ios-simulator-cronet"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ios-simulator-cronet"
+  }
+}
+
+job {
+  id: "linux-annotator-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-annotator-rel"
+  }
+}
+
+job {
+  id: "mac-hermetic-upgrade-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "mac-hermetic-upgrade-rel"
+  }
+}
+
+job {
+  id: "win-annotator-rel"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "win-annotator-rel"
+  }
+}
+
+job {
+  id: "Chromium Android ARM 32-bit Goma RBE ToT"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Android ARM 32-bit Goma RBE ToT"
+  }
+}
+
+job {
+  id: "Chromium Android ARM 32-bit Goma RBE ToT (ATS)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Android ARM 32-bit Goma RBE ToT (ATS)"
+  }
+}
+
+job {
+  id: "Chromium Android ARM 32-bit Goma RBE Staging"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Android ARM 32-bit Goma RBE Staging"
+  }
+}
+
+job {
+  id: "Chromium Android ARM 32-bit Goma RBE Prod"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Android ARM 32-bit Goma RBE Prod"
+  }
+}
+
+job {
+  id: "Chromium Android ARM 32-bit Goma RBE Prod (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Android ARM 32-bit Goma RBE Prod (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Android ARM 32-bit Goma RBE Prod (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Android ARM 32-bit Goma RBE Prod (dbg)"
+  }
+}
+
+job {
+  id: "Chromium Android ARM 32-bit Goma RBE Prod (dbg) (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Android ARM 32-bit Goma RBE Prod (dbg) (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE ToT"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE ToT"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE ToT (ATS)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE ToT (ATS)"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE Staging"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE Staging"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE Staging (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE Staging (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE Staging (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE Staging (dbg)"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE Staging (dbg) (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE Staging (dbg) (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE Prod"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE Prod"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE Prod (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE Prod (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE Prod (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE Prod (dbg)"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma RBE Prod (dbg) (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma RBE Prod (dbg) (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Linux Goma Staging"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Linux Goma Staging"
+  }
+}
+
+job {
+  id: "Chromium Mac Goma RBE ToT"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Mac Goma RBE ToT"
+  }
+}
+
+job {
+  id: "Chromium Mac Goma RBE Staging"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Mac Goma RBE Staging"
+  }
+}
+
+job {
+  id: "Chromium Mac Goma RBE Staging (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Mac Goma RBE Staging (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Mac Goma RBE Staging (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Mac Goma RBE Staging (dbg)"
+  }
+}
+
+job {
+  id: "Chromium Mac Goma RBE Prod"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Mac Goma RBE Prod"
+  }
+}
+
+job {
+  id: "Chromium Win Goma RBE ToT"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Win Goma RBE ToT"
+  }
+}
+
+job {
+  id: "Chromium Win Goma RBE Staging"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Win Goma RBE Staging"
+  }
+}
+
+job {
+  id: "Chromium Win Goma RBE Staging (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Win Goma RBE Staging (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Win Goma RBE Prod"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Win Goma RBE Prod"
+  }
+}
+
+job {
+  id: "Chromium Win Goma RBE Prod (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Win Goma RBE Prod (clobber)"
+  }
+}
+
+job {
+  id: "Chromium Win Goma RBE Prod (dbg)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Win Goma RBE Prod (dbg)"
+  }
+}
+
+job {
+  id: "Chromium Win Goma RBE Prod (dbg) (clobber)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Win Goma RBE Prod (dbg) (clobber)"
+  }
+}
+
+job {
+  id: "chromeos-amd64-generic-rel (Goma RBE FYI)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "chromeos-amd64-generic-rel (Goma RBE FYI)"
+  }
+}
+
+job {
+  id: "fuchsia-fyi-arm64-rel (Goma RBE FYI)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "fuchsia-fyi-arm64-rel (Goma RBE FYI)"
+  }
+}
+
+job {
+  id: "fuchsia-fyi-x64-rel (Goma RBE FYI)"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "fuchsia-fyi-x64-rel (Goma RBE FYI)"
+  }
+}
+
+job {
+  id: "Chromium Mac Goma Staging"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "Chromium Mac Goma Staging"
+  }
+}
+
+job {
+  id: "CrWinGomaStaging"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "CrWinGomaStaging"
+  }
+}
+
+job {
+  id: "CFI Linux CF"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "CFI Linux CF"
+  }
+}
+
+job {
+  id: "CFI Linux ToT"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "CFI Linux ToT"
+  }
+}
+
+job {
+  id: "CrWinAsan"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "CrWinAsan"
+  }
+}
+
+job {
+  id: "CrWinAsan(dll)"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "CrWinAsan(dll)"
+  }
+}
+
+job {
+  id: "ToTAndroid"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTAndroid"
+  }
+}
+
+job {
+  id: "ToTAndroid (dbg)"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTAndroid (dbg)"
+  }
+}
+
+job {
+  id: "ToTAndroid x64"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTAndroid x64"
+  }
+}
+
+job {
+  id: "ToTAndroid64"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTAndroid64"
+  }
+}
+
+job {
+  id: "ToTAndroidASan"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTAndroidASan"
+  }
+}
+
+job {
+  id: "ToTAndroidCFI"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTAndroidCFI"
+  }
+}
+
+job {
+  id: "ToTAndroidOfficial"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTAndroidOfficial"
+  }
+}
+
+job {
+  id: "ToTLinux"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinux"
+  }
+}
+
+job {
+  id: "ToTLinux (dbg)"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinux (dbg)"
+  }
+}
+
+job {
+  id: "ToTLinuxASan"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinuxASan"
+  }
+}
+
+job {
+  id: "ToTLinuxASanLibfuzzer"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinuxASanLibfuzzer"
+  }
+}
+
+job {
+  id: "ToTLinuxCoverage"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinuxCoverage"
+  }
+}
+
+job {
+  id: "ToTLinuxMSan"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinuxMSan"
+  }
+}
+
+job {
+  id: "ToTLinuxTSan"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinuxTSan"
+  }
+}
+
+job {
+  id: "ToTLinuxThinLTO"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinuxThinLTO"
+  }
+}
+
+job {
+  id: "ToTLinuxUBSanVptr"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTLinuxUBSanVptr"
+  }
+}
+
+job {
+  id: "ToTMac"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTMac"
+  }
+}
+
+job {
+  id: "ToTMac (dbg)"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTMac (dbg)"
+  }
+}
+
+job {
+  id: "ToTMacASan"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTMacASan"
+  }
+}
+
+job {
+  id: "ToTMacCoverage"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTMacCoverage"
+  }
+}
+
+job {
+  id: "ToTWin(dbg)"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTWin(dbg)"
+  }
+}
+
+job {
+  id: "ToTWin(dll)"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTWin(dll)"
+  }
+}
+
+job {
+  id: "ToTWin64(dbg)"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTWin64(dbg)"
+  }
+}
+
+job {
+  id: "ToTWin64(dll)"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTWin64(dll)"
+  }
+}
+
+job {
+  id: "ToTWinASanLibfuzzer"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTWinASanLibfuzzer"
+  }
+}
+
+job {
+  id: "ToTWinCFI"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTWinCFI"
+  }
+}
+
+job {
+  id: "ToTWinCFI64"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTWinCFI64"
+  }
+}
+
+job {
+  id: "ToTWinLibcxx64"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTWinLibcxx64"
+  }
+}
+
+job {
+  id: "ToTiOS"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTiOS"
+  }
+}
+
+job {
+  id: "ToTiOSDevice"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "ToTiOSDevice"
+  }
+}
+
+job {
+  id: "UBSanVptr Linux"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "UBSanVptr Linux"
+  }
+}
+
+job {
+  id: "linux-win_cross-rel"
+  acl_sets: "default"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux-win_cross-rel"
+  }
+}
+
+
+################################################################################
+# Cron Jobs.
+
+job {
+  id: "update-component-mapping"
+  acl_sets: "default"
+  # Run this every six hours
+  schedule: "0 0,6,12,18 * * * "
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.ci"
+    builder: "linux_chromium_component_updater"
+  }
+}
+
+job {
+  id: "export-bot-db-to-findit-gs"
+  acl_sets: "default"
+  # Run this every six hours
+  schedule: "0 0,6,12,18 * * * "
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.findit"
+    builder: "linux_chromium_bot_db_exporter"
+  }
+}
+
+##########################################################################
+# WebRTC Chromium FYI Builders
+##########################################################################
+
+job {
+  id: "WebRTC Chromium FYI Android Builder"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Android Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Android Builder (dbg)"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Android Builder (dbg)"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Android Tests (dbg) (K Nexus5)"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Android Tests (dbg) (K Nexus5)"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Android Tests (dbg) (M Nexus5X)"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Android Tests (dbg) (M Nexus5X)"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Android Builder ARM64 (dbg)"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Android Builder ARM64 (dbg)"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI ios-device"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI ios-device"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI ios-simulator"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI ios-simulator"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Linux Builder"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Linux Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Linux Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Linux Tester"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Linux Builder (dbg)"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Linux Builder (dbg)"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Mac Builder"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Mac Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Mac Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Mac Tester"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Mac Builder (dbg)"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Mac Builder (dbg)"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Win Builder"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Win Builder"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Win10 Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Win10 Tester"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Win7 Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Win7 Tester"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Win8 Tester"
+  acl_sets: "triggered-by-parent-builders"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Win8 Tester"
+  }
+}
+
+job {
+  id: "WebRTC Chromium FYI Win Builder (dbg)"
+  acl_sets: "default"
+  acl_sets: "webrtc"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.chromium.webrtc.fyi"
+    builder: "WebRTC Chromium FYI Win Builder (dbg)"
+  }
+}
diff --git a/infra/config/generated/project.cfg b/infra/config/generated/project.cfg
new file mode 100644
index 0000000..531f167
--- /dev/null
+++ b/infra/config/generated/project.cfg
@@ -0,0 +1,5 @@
+# For the schema of this file and documentation, see ProjectCfg message in
+# https://luci-config.appspot.com/schemas/projects:project.cfg
+
+name: "chromium"
+access: "group:all" # public
diff --git a/infra/config/generated/tricium-prod.cfg b/infra/config/generated/tricium-prod.cfg
new file mode 100644
index 0000000..88027e2
--- /dev/null
+++ b/infra/config/generated/tricium-prod.cfg
@@ -0,0 +1,60 @@
+# Schema for this config file: ProjectConfig in
+# luci-config.appspot.com/schemas/projects:tricium-prod.cfg
+
+acls {
+  role: REQUESTER
+  group: "tricium-chromium-requesters"
+}
+
+selections {
+  function: "Cpplint"
+  platform: UBUNTU
+  configs {
+    name: "filter"
+    value: "-,+readability/todo,+readability/check,+readability/fn_size,+build/header_guard,+build/include_order"
+  }
+  configs {
+    name: "verbose"
+    value: "4"
+  }
+}
+
+selections {
+  function: "GitFileIsolator"
+  platform: UBUNTU
+}
+
+selections {
+  function: "MojomCommentator"
+  platform: UBUNTU
+}
+
+selections {
+  function: "SpellChecker"
+  platform: UBUNTU
+}
+
+selections {
+  function: "Pylint"
+  platform: UBUNTU
+  configs {
+    name: "disable"
+    value: "all"
+  }
+  configs {
+    name: "enable"
+    value: "syntax-error,unused-variable,undefined-variable,unused-import"
+  }
+}
+
+repos {
+  gerrit_project {
+    host: "chromium-review.googlesource.com"
+    project: "chromium/src"
+    git_url: "https://chromium.googlesource.com/chromium/src"
+  }
+  whitelisted_group: "project-chromium-tryjob-access"
+}
+
+service_account: "tricium-prod@appspot.gserviceaccount.com"
+swarming_service_account: "swarming@tricium-prod.iam.gserviceaccount.com"
diff --git a/infra/config/luci-scheduler.cfg b/infra/config/luci-scheduler.cfg
index eeff806..469e7e2 100644
--- a/infra/config/luci-scheduler.cfg
+++ b/infra/config/luci-scheduler.cfg
@@ -56,7 +56,7 @@
   acl_sets: "default"
 
   gitiles: {
-    repo: "https://chromium.googlesource.com/chromium/src.git"
+    repo: "https://chromium.googlesource.com/chromium/src"
     refs: "refs/heads/master"
   }
 
diff --git a/infra/config/main.star b/infra/config/main.star
new file mode 100755
index 0000000..9d93d4b2
--- /dev/null
+++ b/infra/config/main.star
@@ -0,0 +1,35 @@
+#!/usr/bin/env lucicfg
+
+# Tell lucicfg what files it is allowed to touch
+lucicfg.config(
+    config_dir = 'generated',
+    tracked_files = [
+        'commit-queue.cfg',
+        'cr-buildbucket.cfg',
+        'luci-logdog.cfg',
+        'luci-milo.cfg',
+        'luci-notify.cfg',
+        'luci-scheduler.cfg',
+        'project.cfg',
+        'tricium-prod.cfg',
+    ],
+    fail_on_warnings = True,
+)
+
+# Copy the not-yet migrated files to the generated outputs
+# TODO(https://crbug.com/1011908) Migrate the configuration in these files to starlark
+[lucicfg.emit(dest = f, data = io.read_file(f)) for f in (
+    'commit-queue.cfg',
+    'cr-buildbucket.cfg',
+    'luci-logdog.cfg',
+    'luci-milo.cfg',
+    'luci-notify.cfg',
+    'luci-scheduler.cfg',
+    'project.cfg',
+)]
+
+# Just copy tricium-prod.cfg to the generated outputs
+lucicfg.emit(
+    dest = 'tricium-prod.cfg',
+    data = io.read_file('tricium-prod.cfg'),
+)
diff --git a/infra/config/project.cfg b/infra/config/project.cfg
index 606450c..531f167 100644
--- a/infra/config/project.cfg
+++ b/infra/config/project.cfg
@@ -1,5 +1,5 @@
 # For the schema of this file and documentation, see ProjectCfg message in
 # https://luci-config.appspot.com/schemas/projects:project.cfg
 
-name: "Chromium browser"
+name: "chromium"
 access: "group:all" # public
diff --git a/ios/chrome/app/strings/resources/ios_chromium_strings_ar.xtb b/ios/chrome/app/strings/resources/ios_chromium_strings_ar.xtb
index 7a8b1812..f5830b74 100644
--- a/ios/chrome/app/strings/resources/ios_chromium_strings_ar.xtb
+++ b/ios/chrome/app/strings/resources/ios_chromium_strings_ar.xtb
@@ -24,7 +24,7 @@
 <translation id="4681781466797808448">‏تفعيل الماسح الضوئي في Chromium</translation>
 <translation id="4787850887676698916">‏ستظهر علامات التبويب التي فتحتها في Chromium على أجهزتك الأخرى هنا.</translation>
 <translation id="4999538639245140991">‏نظرًا لتسجيل خروجك من حساب يديره <ph name="SIGNOUT_MANAGED_DOMAIN" />، ستُحذَف بيانات Chromium من هذا الجهاز، ولكن ستظل البيانات محفوظة في حسابك على Google.</translation>
-<translation id="5573014823074921752">‏نصيحة لاستخدام Chromium: لمزيد من خيارات علامات التبويب، يمكنك اللمس مع الاستمرار على الزر "عرض علامات التبويب" في شريط الأدوات الموجود أسفل الشاشة أو أعلاها.</translation>
+<translation id="5573014823074921752">‏نصيحة لاستخدام Chromium: لمزيد من خيارات علامات التبويب، يُرجى اللمس مع الاستمرار على الزر "إظهار علامات التبويب" في شريط الأدوات الموجود أسفل الشاشة أو أعلاها.</translation>
 <translation id="5862307444128926510">‏مرحبًا بك في Chromium</translation>
 <translation id="5945387852661427312">‏إنك تسجل الدخول باستخدام حساب تتم إدارته من خلال <ph name="DOMAIN" /> وتمنح مشرفه الحق في التحكم في بياناتك على Chromium. سيؤدي ذلك إلى جعل بياناتك مرتبطة دائمًا بهذا الحساب. كما سيؤدي الخروج من Chromium إلى حذف بياناتك من هذا الجهاز، ولكن ستظل هذه البيانات مخزَّنة على حسابك في Google.</translation>
 <translation id="6068866989048414399">‏بنود خدمة Chromium</translation>
diff --git a/ios/chrome/app/strings/resources/ios_chromium_strings_fr.xtb b/ios/chrome/app/strings/resources/ios_chromium_strings_fr.xtb
index 3d674eb..56d038c 100644
--- a/ios/chrome/app/strings/resources/ios_chromium_strings_fr.xtb
+++ b/ios/chrome/app/strings/resources/ios_chromium_strings_fr.xtb
@@ -24,7 +24,7 @@
 <translation id="4681781466797808448">Activer le lecteur Chromium</translation>
 <translation id="4787850887676698916">Les onglets que vous avez ouverts dans Chromium sur vos autres appareils s'affichent ici.</translation>
 <translation id="4999538639245140991">Comme vous vous déconnectez d'un compte géré par <ph name="SIGNOUT_MANAGED_DOMAIN" />, vos données Chromium seront supprimées de cet appareil, mais elles seront conservées dans votre compte Google.</translation>
-<translation id="5573014823074921752">Astuce Chromium : Pour afficher plus d'options de l'onglet, appuyez de manière prolongée sur le bouton "Afficher les onglets" situé dans la barre d'outils affichée dans la partie inférieure ou supérieure de l'écran.</translation>
+<translation id="5573014823074921752">Astuce Chromium : Pour afficher plus d'options d'onglets, appuyez de manière prolongée sur le bouton "Afficher les onglets" situé dans la barre d'outils affichée dans la partie inférieure ou supérieure de l'écran.</translation>
 <translation id="5862307444128926510">Bienvenue dans Chromium</translation>
 <translation id="5945387852661427312">Vous vous connectez avec un compte géré par <ph name="DOMAIN" />, ce qui permettra à son administrateur de contrôler vos données Chromium. Celles-ci seront définitivement associées à ce compte. Si vous vous déconnectez de Chromium, vos données seront supprimées de cet appareil, mais elles seront conservées dans votre compte Google.</translation>
 <translation id="6068866989048414399">Conditions d'utilisation Chromium</translation>
diff --git a/ios/chrome/app/strings/resources/ios_chromium_strings_hi.xtb b/ios/chrome/app/strings/resources/ios_chromium_strings_hi.xtb
index e306be5..ab0dac3 100644
--- a/ios/chrome/app/strings/resources/ios_chromium_strings_hi.xtb
+++ b/ios/chrome/app/strings/resources/ios_chromium_strings_hi.xtb
@@ -23,6 +23,7 @@
 <translation id="4681781466797808448">अपना क्रोमियम स्कैनर चालू करें</translation>
 <translation id="4787850887676698916">आपके अन्य डिवाइस पर क्रोमियम में खोले हुए आपके टैब यहां दिखाई देंगे.</translation>
 <translation id="4999538639245140991">क्‍योंकि आप <ph name="SIGNOUT_MANAGED_DOMAIN" /> की ओर से प्रबंधित खाते से साइन आउट कर रहे हैं, इसलिए आपका क्रोमियम डेटा इस डिवाइस से मिट जाएगा. आपका डेटा आपके Google खाते में बना रहेगा.</translation>
+<translation id="5573014823074921752">'क्रोमियम' इस्तेमाल करने के लिए सलाह. ज़्यादा टैब विकल्पोंं के लिए टूलबार में 'टैब दिखाएं' बटन को दबाकर रखें. यह बटन आपकी स्क्रीन में सबसे नीचे या सबसे ऊपर होगा.</translation>
 <translation id="5862307444128926510">क्रोमियम में आपका स्वागत है</translation>
 <translation id="5945387852661427312">आप <ph name="DOMAIN" /> से प्रबंधित खाते में साइन इन कर रहे हैं और उसके एडमिन को अपने क्रोमियम डेटा पर नियंत्रण दे रहे हैं. आपका डेटा इस खाते से स्थायी रूप से जुड़ जाएगा. क्रोमियम से साइन आउट करने से आपका डेटा इस डिवाइस से मिट जाएगा, लेकिन वह आपके Google खाते में बना रहेगा.</translation>
 <translation id="6068866989048414399">Chromium सेवा की शर्तें</translation>
diff --git a/ios/chrome/app/strings/resources/ios_chromium_strings_iw.xtb b/ios/chrome/app/strings/resources/ios_chromium_strings_iw.xtb
index 7fbbbe6..8a204fc 100644
--- a/ios/chrome/app/strings/resources/ios_chromium_strings_iw.xtb
+++ b/ios/chrome/app/strings/resources/ios_chromium_strings_iw.xtb
@@ -24,7 +24,7 @@
 <translation id="4681781466797808448">‏הפעלת הסורק של Chromium</translation>
 <translation id="4787850887676698916">‏כרטיסיות שפתחת ב-Chromium במכשירים האחרים שלך יופיעו כאן.</translation>
 <translation id="4999538639245140991">‏יציאה מחשבון שמנוהל על ידי <ph name="SIGNOUT_MANAGED_DOMAIN" /> תגרום למחיקת נתוני Chromium שלך מהמכשיר הזה. הנתונים האלה יישארו בחשבון Google שלך.</translation>
-<translation id="5573014823074921752">‏טיפ למשתמשי Chromium. כדי לקבל אפשרויות נוספות של כרטיסיות, יש ללחוץ לחיצה ארוכה על הלחצן 'הצגת כרטיסיות' בסרגל הכלים, שנמצא בחלק התחתון או העליון של המסך.</translation>
+<translation id="5573014823074921752">‏טיפ למשתמשי Chromium: כדי לקבל אפשרויות נוספות של כרטיסיות, יש ללחוץ לחיצה ארוכה על הלחצן 'הצגת כרטיסיות' בסרגל הכלים, שנמצא בחלק התחתון או העליון של המסך.</translation>
 <translation id="5862307444128926510">‏ברוכים הבאים ל-Chromium‏</translation>
 <translation id="5945387852661427312">‏אתה נכנס עם חשבון המנוהל על-ידי <ph name="DOMAIN" /> ומעניק למנהל שלו שליטה על הנתונים שלך ב-Chromium. הנתונים שלך ישויכו לצמיתות אל החשבון הזה. יציאה מ-Chromium תמחק את הנתונים שלך מהמכשיר הזה, אבל הם יישארו בחשבון Google שלך.</translation>
 <translation id="6068866989048414399">‏התנאים וההגבלות של Chromium</translation>
diff --git a/ios/chrome/app/strings/resources/ios_chromium_strings_ml.xtb b/ios/chrome/app/strings/resources/ios_chromium_strings_ml.xtb
index f787547..7fe47f5 100644
--- a/ios/chrome/app/strings/resources/ios_chromium_strings_ml.xtb
+++ b/ios/chrome/app/strings/resources/ios_chromium_strings_ml.xtb
@@ -9,7 +9,7 @@
 <translation id="1617663976202781617">Chromium സമന്വയത്തിൽ നിന്നുള്ള ഡാറ്റ</translation>
 <translation id="1736662517232558588">Chromium ഡാറ്റ മായ്‌‌ച്ചു</translation>
 <translation id="1838412507805038478">ഈ വെബ്‌സൈറ്റിന്റെ സർട്ടിഫിക്കറ്റ് <ph name="ISSUER" /> നൽകിയതാണെന്ന് Chromium പരിശോധിച്ചുറപ്പിച്ചു.</translation>
-<translation id="1843424232666537147">Chromium-ത്തിന് ഇന്റർനെറ്റ് ഡാറ്റയും നിങ്ങൾക്ക് എത്രമാത്രം വേഗത്തിൽ വെബ്‌പേജുകൾ ലോഡ് ചെയ്യാനാവുമെന്ന കാര്യവും മാനേജ് ചെയ്യാൻ സഹായിക്കുന്ന ഫീച്ചറുകളുണ്ട്.
+<translation id="1843424232666537147">Chromium-എന്നതിന് ഇന്റർനെറ്റ് ഡാറ്റയും നിങ്ങൾക്ക് എത്രമാത്രം വേഗത്തിൽ വെബ്‌പേജുകൾ ലോഡ് ചെയ്യാനാവുമെന്ന കാര്യവും മാനേജ് ചെയ്യാൻ സഹായിക്കുന്ന ഫീച്ചറുകളുണ്ട്.
 <ph name="BEGIN_LINK" />കൂടുതലറിയുക<ph name="END_LINK" /></translation>
 <translation id="2075400798887076382">നിങ്ങൾ കമ്പ്യൂട്ടറിൽ തുറന്നിരിക്കുന്ന ടാബുകൾ ഇവിടെ നിന്ന് ആക്‌സസ് ചെയ്യുക. കമ്പ്യൂട്ടറിൽ Chromium തുറന്ന്, മെനുവിൽ പോയി "Chromium-ത്തിൽ സൈൻ ഇൻ ചെയ്യുക..." തിരഞ്ഞെടുക്കുക</translation>
 <translation id="2168108852149185974">ചില ആഡ് ഓണുകൾ Chromium ക്രാഷാകാനിടയാക്കും. ഇനിപ്പറയുന്നവ അൺഇൻസ്‌റ്റാൾ ചെയ്യുക:</translation>
@@ -31,7 +31,7 @@
 <translation id="6268381023930128611">Chromium-ത്തിൽ നിന്ന് സൈൻ ഔട്ട് ചെയ്യണോ?</translation>
 <translation id="6424492062988593837">Chromium ഒന്നുകൂടി മികച്ചതായി! പുതിയ പതിപ്പ് ലഭ്യമാണ്.</translation>
 <translation id="6604711459180487467">നിങ്ങളുടെ ലൊക്കേഷൻ അടിസ്ഥാനമാക്കി Chromium-ത്തിൽ മികച്ച അനുഭവം സ്വന്തമാക്കുക.</translation>
-<translation id="6626296268883197964">ഈ ആപ്ലിക്കേഷൻ ഉപയോഗിക്കുക വഴി, Chromium-ത്തിന്‍റെ <ph name="BEGIN_LINK_TOS" />സേവന നിബന്ധനകളും<ph name="END_LINK_TOS" /> <ph name="BEGIN_LINK_PRIVACY" />സ്വകാര്യതാ അറിയിപ്പും<ph name="END_LINK_PRIVACY" /> നിങ്ങൾ അംഗീകരിക്കുകയാണ്.</translation>
+<translation id="6626296268883197964">ഈ ആപ്ലിക്കേഷൻ ഉപയോഗിക്കുക വഴി, Chromium-ത്തിന്‍റെ <ph name="BEGIN_LINK_TOS" />സേവന നിബന്ധനകളും<ph name="END_LINK_TOS" /> <ph name="BEGIN_LINK_PRIVACY" />സ്വകാര്യതാ അറിയിപ്പും<ph name="END_LINK_PRIVACY" /> നിങ്ങൾ അംഗീകരിക്കുന്നു.</translation>
 <translation id="7099326575020694068">വിഭജിത കാഴ്‌ച മോഡിൽ Chromium-ത്തിന് നിങ്ങളുടെ ക്യാമറ ഉപയോഗിക്കാനാവില്ല</translation>
 <translation id="7208566199746267865">വെബിൽ അക്കൗണ്ടുകൾ കൊണ്ടുവരുന്നതിലൂടെ Chromium നിങ്ങളുടെ സമയം ലാഭിക്കുന്നു. ക്രമീകരണത്തിൽ നിങ്ങൾക്ക്‌ അക്കൗണ്ടുകൾ ചേർക്കാനോ നീക്കംചെയ്യാനോ കഴിയും.</translation>
 <translation id="7269362888766543920">ചില ആഡ് ഓണുകൾ Chromium ക്രാഷാകാനിടയാക്കും. അവ അൺഇൻസ്‌റ്റാൾ ചെയ്യുന്നത് പരീക്ഷിച്ചുനോക്കൂ.</translation>
diff --git a/ios/chrome/app/strings/resources/ios_google_chrome_strings_ar.xtb b/ios/chrome/app/strings/resources/ios_google_chrome_strings_ar.xtb
index d9f55b6..9abb611 100644
--- a/ios/chrome/app/strings/resources/ios_google_chrome_strings_ar.xtb
+++ b/ios/chrome/app/strings/resources/ios_google_chrome_strings_ar.xtb
@@ -24,7 +24,7 @@
 <translation id="4099578267706723511">‏يمكنك المساعدة في تحسين Chrome عن طريق إرسال إحصاءات الاستخدام وتقارير الأعطال إلى Google.</translation>
 <translation id="415767770115540173">‏احصل على تجربة أفضل لاستخدام Google في Chrome استنادًا إلى موقعك.</translation>
 <translation id="424864128008805179">‏هل تريد تسجيل الخروج من Chrome؟</translation>
-<translation id="4249068189593983585">‏نصيحة لاستخدام Chrome: لمزيد من خيارات علامات التبويب، يمكنك اللمس مع الاستمرار على الزر "عرض علامات التبويب" في شريط الأدوات الموجود أسفل الشاشة أو أعلاها.</translation>
+<translation id="4249068189593983585">‏نصيحة لاستخدام Chrome: لمزيد من خيارات علامات التبويب، يمكنك اللمس مع الاستمرار على الزر "إظهار علامات التبويب" في شريط الأدوات الموجود أسفل الشاشة أو أعلاها.</translation>
 <translation id="4523886039239821078">‏تتسبب بعض الإضافات في تعطل Chrome. يُرجى إزالتها:</translation>
 <translation id="5389212809648216794">‏يتعذر على Google Chrome استخدام الكاميرا نظرًا لأنها قيد الاستخدام من قِبل تطبيق آخر</translation>
 <translation id="5621912349729388018">‏<ph name="BEGIN_LINK" />يُرجى مراجعة بنود خدمة Chrome المعدَّلة.<ph name="END_LINK" /></translation>
diff --git a/ios/chrome/app/strings/resources/ios_google_chrome_strings_fr.xtb b/ios/chrome/app/strings/resources/ios_google_chrome_strings_fr.xtb
index b66c2ec..22e689c 100644
--- a/ios/chrome/app/strings/resources/ios_google_chrome_strings_fr.xtb
+++ b/ios/chrome/app/strings/resources/ios_google_chrome_strings_fr.xtb
@@ -24,7 +24,7 @@
 <translation id="4099578267706723511">Envoyer des statistiques d'utilisation et des rapports d'erreur pour améliorer Chrome</translation>
 <translation id="415767770115540173">Améliorez votre expérience Google dans Chrome grâce à votre position.</translation>
 <translation id="424864128008805179">Se déconnecter de Chrome ?</translation>
-<translation id="4249068189593983585">Astuce Chrome : Pour afficher plus d'options de l'onglet, appuyez de manière prolongée sur le bouton "Afficher les onglets" situé dans la barre d'outils affichée dans la partie inférieure ou supérieure de l'écran.</translation>
+<translation id="4249068189593983585">Astuce Chrome : Pour afficher plus d'options d'onglets, appuyez de manière prolongée sur le bouton "Afficher les onglets" situé dans la barre d'outils affichée dans la partie inférieure ou supérieure de l'écran.</translation>
 <translation id="4523886039239821078">Certains modules complémentaires entraînent le plantage de Chrome. Veuillez les désinstaller.</translation>
 <translation id="5389212809648216794">Google Chrome ne peut pas utiliser l'appareil photo, car celui-ci est utilisé par une autre application</translation>
 <translation id="5621912349729388018"><ph name="BEGIN_LINK" />Passez en revue les Conditions d'utilisation de Chrome mises à jour.<ph name="END_LINK" /></translation>
diff --git a/ios/chrome/app/strings/resources/ios_google_chrome_strings_hi.xtb b/ios/chrome/app/strings/resources/ios_google_chrome_strings_hi.xtb
index 2bc81ef..bd1cb91 100644
--- a/ios/chrome/app/strings/resources/ios_google_chrome_strings_hi.xtb
+++ b/ios/chrome/app/strings/resources/ios_google_chrome_strings_hi.xtb
@@ -24,6 +24,7 @@
 <translation id="4099578267706723511">Google को इस्तेमाल के आंकड़े और खराबी रिपोर्ट भेजकर Chrome को बेहतर बनाने में मदद करें.</translation>
 <translation id="415767770115540173">अपने स्थान के आधार पर Chrome में एक बेहतर Google अनुभव पाएं.</translation>
 <translation id="424864128008805179">Chrome से साइन आउट करें?</translation>
+<translation id="4249068189593983585">Chrome इस्तेमाल करने के लिए सलाह. ज़्यादा टैब विकल्पों के लिए, टूलबार में 'टैब दिखाएं' बटन को दबाकर रखें. यह बटन आपकी स्क्रीन के सबसे नीचे या सबसे ऊपर मिलेगा.</translation>
 <translation id="4523886039239821078">कुछ ऐड-ऑन के कारण Chrome बंद हो जा रहा है. कृपया उन्हें अनइंस्टॉल करें:</translation>
 <translation id="5389212809648216794">Google Chrome आपके कैमरे का उपयोग नहीं कर सकता क्योंकि दूसरा ऐप्लिकेशन उसका उपयोग कर रहा है</translation>
 <translation id="5621912349729388018"><ph name="BEGIN_LINK" />Chrome की अपडेट की गई सेवा की शर्तें देखें.<ph name="END_LINK" /></translation>
diff --git a/ios/chrome/app/strings/resources/ios_google_chrome_strings_iw.xtb b/ios/chrome/app/strings/resources/ios_google_chrome_strings_iw.xtb
index 4607c32..ee9bcc3 100644
--- a/ios/chrome/app/strings/resources/ios_google_chrome_strings_iw.xtb
+++ b/ios/chrome/app/strings/resources/ios_google_chrome_strings_iw.xtb
@@ -24,7 +24,7 @@
 <translation id="4099578267706723511">‏אם שולחים אלינו נתוני שימוש ודוחות קריסה, עוזרים לשפר את Chrome.</translation>
 <translation id="415767770115540173">‏תוכל ליהנות מחוויית Google משופרת ב-Chrome בהתבסס על המיקום שלך.</translation>
 <translation id="424864128008805179">‏האם לצאת מ-Chrome?</translation>
-<translation id="4249068189593983585">‏טיפ למשתמשי Chrome. כדי לקבל אפשרויות נוספות של כרטיסיות, יש ללחוץ לחיצה ארוכה על הלחצן 'הצגת כרטיסיות' בסרגל הכלים, שנמצא בחלק התחתון או העליון של המסך.</translation>
+<translation id="4249068189593983585">‏טיפ למשתמשי Chrome: כדי לקבל אפשרויות נוספות של כרטיסיות, יש ללחוץ לחיצה ארוכה על הלחצן 'הצגת כרטיסיות' בסרגל הכלים, שנמצא בחלק התחתון או העליון של המסך.</translation>
 <translation id="4523886039239821078">‏תוספים מסוימים גורמים ל-Chrome לקרוס. הסר את ההתקנה שלהם:</translation>
 <translation id="5389212809648216794">‏Google Chrome לא יכול להשתמש במצלמה כי אפליקציה אחרת משתמשת בה</translation>
 <translation id="5621912349729388018">‏<ph name="BEGIN_LINK" />עיון בתנאים ובהגבלות המעודכנים של Chrome.<ph name="END_LINK" /></translation>
diff --git a/ios/chrome/app/strings/resources/ios_google_chrome_strings_ml.xtb b/ios/chrome/app/strings/resources/ios_google_chrome_strings_ml.xtb
index fb07549..0b74a49 100644
--- a/ios/chrome/app/strings/resources/ios_google_chrome_strings_ml.xtb
+++ b/ios/chrome/app/strings/resources/ios_google_chrome_strings_ml.xtb
@@ -5,7 +5,7 @@
 <translation id="1682483655351012182">നിങ്ങളുടെ Chrome ഡാറ്റ സമന്വയിപ്പിക്കുക</translation>
 <translation id="1759842336958782510">Chrome</translation>
 <translation id="1816764564654397850">Google Chrome സ്വകാര്യതാ അറിയിപ്പ്</translation>
-<translation id="1863312987075920112">ഈ ആപ്ലിക്കേഷൻ ഉപയോഗിക്കുക വഴി, Chrome-ന്‍റെ <ph name="BEGIN_LINK_TOS" />സേവന നിബന്ധനകളും<ph name="END_LINK_TOS" /> <ph name="BEGIN_LINK_PRIVACY" />സ്വകാര്യതാ അറിയിപ്പും<ph name="END_LINK_PRIVACY" /> നിങ്ങൾ അംഗീകരിക്കുകയാണ്.</translation>
+<translation id="1863312987075920112">ഈ ആപ്പ് ഉപയോഗിക്കുക വഴി, Chrome-ന്‍റെ <ph name="BEGIN_LINK_TOS" />സേവന നിബന്ധനകളും<ph name="END_LINK_TOS" /> <ph name="BEGIN_LINK_PRIVACY" />സ്വകാര്യതാ അറിയിപ്പും<ph name="END_LINK_PRIVACY" /> നിങ്ങൾ അംഗീകരിക്കുകയാണ്.</translation>
 <translation id="2147651015520127414">ഈ വെബ്‌സൈറ്റിന്റെ സർട്ടിഫിക്കറ്റ് <ph name="ISSUER" /> നൽകിയതാണെന്ന് Chrome പരിശോധിച്ചുറപ്പിച്ചു.</translation>
 <translation id="2199719347983604670">Chrome സമന്വയത്തിൽ നിന്നുള്ള ഡാറ്റ</translation>
 <translation id="2347208864470321755">ഈ സവിശേഷത ഓണായിരിക്കുമ്പോൾ, മറ്റ് ഭാഷകളിൽ എഴുതിയിരിക്കുന്ന പേജുകൾ Google വിവർത്തനം ഉപയോഗിച്ച് വിവർത്തനം ചെയ്യുന്നത് Chrome ഓഫർ ചെയ്യും. <ph name="BEGIN_LINK" />കൂടുതലറിയുക<ph name="END_LINK" /></translation>
@@ -26,13 +26,13 @@
 <translation id="424864128008805179">Chrome-ൽ നിന്ന് സൈൻ ഔട്ട് ചെയ്യണോ?</translation>
 <translation id="4249068189593983585">Chrome നുറുങ്ങുകൾ. കൂടുതൽ ടാബ് ഓപ്ഷനുകൾക്കായി, നിങ്ങളുടെ സ്‌ക്രീനിന്റെ താഴെയോ മുകളിലോ ഉള്ള, ടൂൾബാറിലെ 'ടാബുകൾ കാണിക്കുക' ബട്ടൺ സ്‌പർശിച്ച് പിടിക്കുക.</translation>
 <translation id="4523886039239821078">ചില ആഡ്-ഓണുകൾ Chrome ക്രാഷാകുന്നതിന് ഇടയാക്കുന്നു. ഇനിപ്പറയുന്നവ അൺഇൻസ്റ്റാൾ ചെയ്യുക:</translation>
-<translation id="5389212809648216794">മറ്റൊരു അപ്ലിക്കേഷൻ നിങ്ങളുടെ ക്യാമറ ഉപയോഗിക്കുന്നതിനാൽ Google Chrome-ന് അത്‌ ഉപയോഗിക്കാനാവില്ല</translation>
+<translation id="5389212809648216794">മറ്റൊരു ആപ്പ് നിങ്ങളുടെ ക്യാമറ ഉപയോഗിക്കുന്നതിനാൽ Google Chrome-ന് അത്‌ ഉപയോഗിക്കാനാവില്ല</translation>
 <translation id="5621912349729388018"><ph name="BEGIN_LINK" />അപ്‌ഡേറ്റ് ചെയ്‌ത Chrome സേവന നിബന്ധനകൾ അവലോകനം ചെയ്യുക.<ph name="END_LINK" /></translation>
 <translation id="5639704535586432836">ക്രമീകരണം &gt; സ്വകാര്യത &gt; ക്യാമറ &gt; Google Chrome തുറന്ന് ക്യാമറ ഓണാക്കുക.</translation>
 <translation id="5642200033778930880">വിഭജിത കാഴ്‌ച മോഡിൽ Google Chrome-ന് നിങ്ങളുടെ ക്യാമറ ഉപയോഗിക്കാനാവില്ല</translation>
 <translation id="5690427481109656848">Google LLC</translation>
 <translation id="5854621639439811139">Chrome നുറുങ്ങ്. മടങ്ങുക, മുമ്പോട്ട് പോകുക, തിരയൽ, എന്നീ ചില ബട്ടണുകൾ ഇപ്പോൾ നിങ്ങളുടെ സ്‌ക്രീനിന്റെ താഴെയാണ്.</translation>
-<translation id="6036420186814142909">നിങ്ങളുടെ ഇന്റർനെറ്റ് ഡാറ്റ നിയന്ത്രിക്കുന്നതിനെയും വെബ്‌പേജുകൾ നിങ്ങൾക്ക് എങ്ങനെ വേഗത്തിൽ ലോഡ് ചെയ്യാനാകുമെന്നതിനെയും സഹായിക്കുന്ന സവിശേഷതകൾ Google Chrome-നുണ്ട്.
+<translation id="6036420186814142909">നിങ്ങളുടെ ഇന്റർനെറ്റ് ഡാറ്റ നിയന്ത്രിക്കുന്നതിനെയും വെബ്‌പേജുകൾ നിങ്ങൾക്ക് എങ്ങനെ വേഗത്തിൽ ലോഡുചെയ്യാനാകുമെന്നതിനെയും സഹായിക്കുന്ന സവിശേഷതകൾ Google Chrome-നുണ്ട്.
 <ph name="BEGIN_LINK" />കൂടുതലറിയുക<ph name="END_LINK" /></translation>
 <translation id="6573431926118603307">നിങ്ങളുടെ മറ്റ് ഉപകരണങ്ങളിലെ Chrome-ൽ തുറന്ന ടാബുകൾ ഇവിടെ ദൃശ്യമാകും.</translation>
 <translation id="6600954340915313787">Chrome-ലേക്ക് പ്കർത്തി</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_am.xtb b/ios/chrome/app/strings/resources/ios_strings_am.xtb
index 540f0c2..3773916 100644
--- a/ios/chrome/app/strings/resources/ios_strings_am.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_am.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">እልባት አርትዕ</translation>
 <translation id="2179182049312275900">ስምረትን በማንኛውም ጊዜ በቅንብሮች ውስጥ ማብራት ይችላሉ።</translation>
 <translation id="2198757192731523470">Google ፍለጋን፣ ማስታወቂያዎችን እና ሌሎች የGoogle አገልግሎቶችን ግላዊነት ለማላበስ ሲል ታሪክዎን ሊጠቀም ይችላል።</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> ያልተነበቡ የንባብ ዝርዝር ጽሑፎች።</translation>
 <translation id="2230173723195178503">ድረ-ገጽ ተጭኗል</translation>
 <translation id="2239626343334228536">የአሰሳ ውሂብን በማጽዳት ላይ...</translation>
 <translation id="2267753748892043616">መለያ አክል</translation>
@@ -265,7 +264,6 @@
 
 ይህን ቅንብር ለመቀየር <ph name="BEGIN_LINK" />ስምረትን ዳግም ያስጀምሩ<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">ልክ ያልሆነ የካርድ ቁጥር</translation>
-<translation id="4807020197310989387">1 ያልተነበበ የንባብ ዝርዝር ጽሑፍ።</translation>
 <translation id="4818522717893377262">ቋንቋን አክል...</translation>
 <translation id="481968316161811770">ኩኪዎች፣ የጣቢያ ውሂብ</translation>
 <translation id="4833786495304741580">የአጠቃቀም ስታቲስቲክስስን እና የስንክል ሪፖርቶችን በራስ-ሰር ወደ Google ይልካል።</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">ተቃኝቷል</translation>
 <translation id="6859944681507688231">አንድ QR ኮድ ወይም ክሬዲት ካርድ ለመቃኘት ከቅንብሮች ሆነው ካሜራውን ያንቁት።</translation>
 <translation id="6873263987691478642">የተከፈለ ዕይታ</translation>
+<translation id="6888009575607455378">እርግጠኛ ነዎት ለውጦችዎን ማስወገድ ይፈልጋሉ?</translation>
 <translation id="6896758677409633944">ቅዳ</translation>
 <translation id="6903907808598579934">ስምረትን አብራ</translation>
 <translation id="6914583639806229067">የቀዱትን ምስል ይፈልጉ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ar.xtb b/ios/chrome/app/strings/resources/ios_strings_ar.xtb
index acfc24c..dad41c9 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ar.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ar.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">تعديل الإشارة</translation>
 <translation id="2179182049312275900">يمكنك تفعيل المزامنة في أي وقت في الإعدادات.</translation>
 <translation id="2198757192731523470">‏قد تستخدم Google السجلّ لتخصيص "بحث Google" والإعلانات وخدمات Google الأخرى.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> من مقالات "قائمة القراءة" غير المقروءة.</translation>
 <translation id="2230173723195178503">تم تحميل الصفحة المطلوبة</translation>
 <translation id="2239626343334228536">جارٍ محو بيانات التصفُّح...</translation>
 <translation id="2267753748892043616">إضافة حساب</translation>
@@ -265,7 +264,6 @@
 
 لتغيير هذا الإعداد، يُرجى <ph name="BEGIN_LINK" />إعادة ضبط المزامنة<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">رقم البطاقة غير صحيح</translation>
-<translation id="4807020197310989387">مقالة "قائمة قراءة" واحدة غير مقروءة.</translation>
 <translation id="4818522717893377262">إضافة لغة...</translation>
 <translation id="481968316161811770">ملفات تعريف الارتباط، وبيانات موقع الويب</translation>
 <translation id="4833786495304741580">‏إرسال إحصاءات الاستخدام وتقارير الأعطال إلى Google تلقائيًا</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">تم مسحه ضوئيًا.</translation>
 <translation id="6859944681507688231">لمسح رمز الاستجابة السريعة أو بطاقة ائتمان ضوئيًا، يمكنك تشغيل الكاميرا من الإعدادات.</translation>
 <translation id="6873263987691478642">وضع تقسيم العرض</translation>
+<translation id="6888009575607455378">هل تريد فعلًا تجاهل التغييرات؟</translation>
 <translation id="6896758677409633944">نسخ</translation>
 <translation id="6903907808598579934">تشغيل المزامنة</translation>
 <translation id="6914583639806229067">البحث عن الصورة التي نسختها</translation>
@@ -500,7 +499,7 @@
 <translation id="8261506727792406068">حذف</translation>
 <translation id="8281781826761538115">التلقائي - <ph name="DEFAULT_LOCALE" /></translation>
 <translation id="8319076807703933069">بحث جديد</translation>
-<translation id="8323906514956095947">اللمس مع الاستمرار لعرض المزيد من الخيارات</translation>
+<translation id="8323906514956095947">اللمس مع الاستمرار لعرض المزيد من خيارات علامات التبويب</translation>
 <translation id="8328777765163860529">إغلاق الكل</translation>
 <translation id="8407669440184693619">لم يتم العثور على كلمات مرور لهذا الموقع الإلكتروني</translation>
 <translation id="842017693807136194">تم تسجيل الدخول باستخدام</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_bg.xtb b/ios/chrome/app/strings/resources/ios_strings_bg.xtb
index ff39ebb..b0ed3ab 100644
--- a/ios/chrome/app/strings/resources/ios_strings_bg.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_bg.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Редактиране на отметката</translation>
 <translation id="2179182049312275900">Можете по всяко време да включите синхронизирането в настройките.</translation>
 <translation id="2198757192731523470">Възможно е да използваме историята ви, за да персонализираме търсенето, рекламите и други услуги на Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> непрочетени статии в списъка за четене.</translation>
 <translation id="2230173723195178503">Уеб страницата се зареди</translation>
 <translation id="2239626343334228536">Данните за сърфирането се изчистват...</translation>
 <translation id="2267753748892043616">Добавяне на профил</translation>
@@ -265,7 +264,6 @@
 
 За да промените тази настройка, <ph name="BEGIN_LINK" />нулирайте синхронизирането<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Невалиден номер на картата</translation>
-<translation id="4807020197310989387">1 непрочетена статия в списъка за четене.</translation>
 <translation id="4818522717893377262">Добавяне на език...</translation>
 <translation id="481968316161811770">„Бисквитки“ и данни за сайтове</translation>
 <translation id="4833786495304741580">Автоматично изпраща до Google статистически данни за употребата и сигнали за сривове.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Сканирано</translation>
 <translation id="6859944681507688231">За да сканирате код за бърза реакция или кредитна карта, активирайте камерата от настройките.</translation>
 <translation id="6873263987691478642">Разделен изглед</translation>
+<translation id="6888009575607455378">Наистина ли искате да отхвърлите промените?</translation>
 <translation id="6896758677409633944">Копиране</translation>
 <translation id="6903907808598579934">Включване на синхронизирането</translation>
 <translation id="6914583639806229067">Търсене на копираното изображение</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_bn.xtb b/ios/chrome/app/strings/resources/ios_strings_bn.xtb
index 342a5fb..fd3bf16 100644
--- a/ios/chrome/app/strings/resources/ios_strings_bn.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_bn.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">বুকমার্ক সম্পাদনা করুন</translation>
 <translation id="2179182049312275900">যেকোনও সময় সেটিংস থেকে আপনি সিঙ্ক চালু করতে পারেন।</translation>
 <translation id="2198757192731523470">সার্চ, বিজ্ঞাপন এবং অন্যান্য Google পরিষেবাকে আপনার মতো করে সাজিয়ে নিতে Google আপনার ইতিহাস ব্যবহার করতে পারে।</translation>
-<translation id="2207590065820824892">পড়ার তালিকাতে <ph name="UNREAD_COUNT" />টি না পড়া নিবন্ধ।</translation>
 <translation id="2230173723195178503">Webpage loaded</translation>
 <translation id="2239626343334228536">ব্রাউজিং ডেটা মোছা হচ্ছে…</translation>
 <translation id="2267753748892043616">অ্যাকাউন্ট যোগ করুন</translation>
@@ -265,7 +264,6 @@
 
 <ph name="BEGIN_LINK" />রিসেট সিঙ্ক<ph name="END_LINK" /> থেকে এই সেটিং পরিবর্তন করুন</translation>
 <translation id="4805759445554688327">ভুল কার্ড নম্বর</translation>
-<translation id="4807020197310989387">পড়ার তালিকাতে ১টি না পড়া নিবন্ধ।</translation>
 <translation id="4818522717893377262">ভাষা যোগ করুন…</translation>
 <translation id="481968316161811770">কুকিজ, সাইট ডেটা</translation>
 <translation id="4833786495304741580">Google-কে অটোমেটিক ব্যবহারের পরিসংখ্যান ও ক্র্যাশ রিপোর্ট পাঠায়।</translation>
@@ -415,6 +413,7 @@
 <translation id="6858855187367714033">স্ক্যান করা হয়েছে</translation>
 <translation id="6859944681507688231">কোনও QR কোড বা ক্রেডিট কার্ড স্ক্যান করতে সেটিংস থেকে ক্যামেরা চালু করুন।</translation>
 <translation id="6873263987691478642">স্প্লিট ভিউ</translation>
+<translation id="6888009575607455378">আপনি কি সত্যিই আপনার করা পরিবর্তন বাতিল করতে চান?</translation>
 <translation id="6896758677409633944">কপি</translation>
 <translation id="6903907808598579934">সিঙ্ক চালু করুন</translation>
 <translation id="6914583639806229067">আপনার কপি করা ছবি সার্চ করুন</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ca.xtb b/ios/chrome/app/strings/resources/ios_strings_ca.xtb
index 288efbd..f8eddab 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ca.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ca.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Edita l'adreça d'interès</translation>
 <translation id="2179182049312275900">Pots activar la sincronització en qualsevol moment des de la configuració.</translation>
 <translation id="2198757192731523470">És possible que Google utilitzi el teu historial per personalitzar la Cerca, els anuncis i altres serveis de Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> articles de la llista de lectura no llegits</translation>
 <translation id="2230173723195178503">La pàgina web s'ha carregat</translation>
 <translation id="2239626343334228536">S'estan esborrant les dades de navegació...</translation>
 <translation id="2267753748892043616">Afegeix un compte</translation>
@@ -265,7 +264,6 @@
 
 Per canviar aquesta opció, <ph name="BEGIN_LINK" />restableix la sincronització<ph name="END_LINK" />.</translation>
 <translation id="4805759445554688327">El número de targeta no és vàlid</translation>
-<translation id="4807020197310989387">1 article de la llista de lectura no llegit</translation>
 <translation id="4818522717893377262">Afegeix un idioma...</translation>
 <translation id="481968316161811770">Galetes, dades llocs</translation>
 <translation id="4833786495304741580">Envia automàticament a Google estadístiques d'ús i informes d'error.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">S'ha escanejat</translation>
 <translation id="6859944681507688231">Per escanejar un codi QR o una targeta de crèdit, activa la càmera des de Configuració.</translation>
 <translation id="6873263987691478642">Visualització dividida</translation>
+<translation id="6888009575607455378">Confirmes que vols descartar els canvis?</translation>
 <translation id="6896758677409633944">Copia</translation>
 <translation id="6903907808598579934">Activa la sincronització</translation>
 <translation id="6914583639806229067">Cerca la imatge que has copiat</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_cs.xtb b/ios/chrome/app/strings/resources/ios_strings_cs.xtb
index e3fdb80..99eb98b 100644
--- a/ios/chrome/app/strings/resources/ios_strings_cs.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_cs.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Upravit záložku</translation>
 <translation id="2179182049312275900">Synchronizaci můžete kdykoliv zapnout v nastavení.</translation>
 <translation id="2198757192731523470">Google vaši historii může používat k personalizaci Vyhledávání, reklam a dalších služeb Google.</translation>
-<translation id="2207590065820824892">Počet nepřečtených článků v seznamu četby: <ph name="UNREAD_COUNT" />.</translation>
 <translation id="2230173723195178503">Webová stránka byla načtena</translation>
 <translation id="2239626343334228536">Mazání údajů o prohlížení...</translation>
 <translation id="2267753748892043616">Přidat účet</translation>
@@ -265,7 +264,6 @@
 
 Chcete-toto nastavení změnit, <ph name="BEGIN_LINK" />resetujte synchronizaci<ph name="END_LINK" />.</translation>
 <translation id="4805759445554688327">Neplatné číslo karty</translation>
-<translation id="4807020197310989387">1 nepřečtený článek v seznamu četby.</translation>
 <translation id="4818522717893377262">Přidat jazyk...</translation>
 <translation id="481968316161811770">Soubory cookie a data webů</translation>
 <translation id="4833786495304741580">Automaticky odesílá statistiky využití a zprávy o selhání do Googlu</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Naskenováno</translation>
 <translation id="6859944681507688231">Chcete-li naskenovat QR kód nebo platební kartu, v nastavení aktivujte kameru.</translation>
 <translation id="6873263987691478642">Režim Split View</translation>
+<translation id="6888009575607455378">Opravdu chcete změny zahodit?</translation>
 <translation id="6896758677409633944">Kopírovat</translation>
 <translation id="6903907808598579934">Zapnout synchronizaci</translation>
 <translation id="6914583639806229067">Vyhledat zkopírovaný obrázek</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_da.xtb b/ios/chrome/app/strings/resources/ios_strings_da.xtb
index 4607bd48..81d3f45 100644
--- a/ios/chrome/app/strings/resources/ios_strings_da.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_da.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Rediger bogmærke</translation>
 <translation id="2179182049312275900">Du kan til enhver tid aktivere synkronisering i indstillingerne.</translation>
 <translation id="2198757192731523470">Google kan bruge din historik til at tilpasse Søgning, annoncer og andre Google-tjenester.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> ulæste artikler på læselisten.</translation>
 <translation id="2230173723195178503">Websiden er indlæst</translation>
 <translation id="2239626343334228536">Browserdata ryddes...</translation>
 <translation id="2267753748892043616">Tilføj konto</translation>
@@ -265,7 +264,6 @@
 
 Hvis du vil ændre denne indstilling, skal du <ph name="BEGIN_LINK" />nulstille synkronisering<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Kortnummeret er ugyldigt</translation>
-<translation id="4807020197310989387">1 ulæst artikel på læselisten.</translation>
 <translation id="4818522717893377262">Tilføj sprog...</translation>
 <translation id="481968316161811770">Cookies, websitedata</translation>
 <translation id="4833786495304741580">Sender automatisk brugsstatistik og nedbrudsrapporter til Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Scannet</translation>
 <translation id="6859944681507688231">Aktivér kameraet i Indstillinger for at scanne en QR-kode eller et betalingskort.</translation>
 <translation id="6873263987691478642">Opdelt visning</translation>
+<translation id="6888009575607455378">Er du sikker på, at du vil kassere dine ændringer?</translation>
 <translation id="6896758677409633944">Kopiér</translation>
 <translation id="6903907808598579934">Aktivér synkronisering</translation>
 <translation id="6914583639806229067">Søg efter billede, du har kopieret</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_de.xtb b/ios/chrome/app/strings/resources/ios_strings_de.xtb
index 24e71edf..2477199 100644
--- a/ios/chrome/app/strings/resources/ios_strings_de.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_de.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Lesezeichen bearbeiten</translation>
 <translation id="2179182049312275900">Sie können die Synchronisierung jederzeit in den Einstellungen aktivieren.</translation>
 <translation id="2198757192731523470">Mithilfe Ihres Verlaufs kann Google die Google-Suche, Werbung und andere Google-Dienste personalisieren.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> ungelesene Artikel in Leseliste.</translation>
 <translation id="2230173723195178503">Webseite geladen</translation>
 <translation id="2239626343334228536">Browserdaten werden gelöscht…</translation>
 <translation id="2267753748892043616">Konto hinzufügen</translation>
@@ -265,7 +264,6 @@
 
 Wenn Sie diese Einstellung ändern möchten, <ph name="BEGIN_LINK" />setzen Sie die Synchronisierung zurück<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Ungültige Kartennummer</translation>
-<translation id="4807020197310989387">1 ungelesener Artikel in Leseliste.</translation>
 <translation id="4818522717893377262">Sprache hinzufügen…</translation>
 <translation id="481968316161811770">Cookies, Websitedaten</translation>
 <translation id="4833786495304741580">Nutzungsstatistiken und Absturzberichte werden automatisch an Google gesendet.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Gescannt</translation>
 <translation id="6859944681507688231">Wenn Sie einen QR-Code oder eine Kreditkarte scannen möchten, aktivieren Sie zuerst in den Einstellungen die Kamera.</translation>
 <translation id="6873263987691478642">Geteilte Ansicht</translation>
+<translation id="6888009575607455378">Möchten Sie die Änderungen wirklich verwerfen?</translation>
 <translation id="6896758677409633944">Kopieren</translation>
 <translation id="6903907808598579934">Synchronisierung aktivieren</translation>
 <translation id="6914583639806229067">Nach dem kopierten Bild suchen</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_el.xtb b/ios/chrome/app/strings/resources/ios_strings_el.xtb
index 2cc2dab..6c11302c 100644
--- a/ios/chrome/app/strings/resources/ios_strings_el.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_el.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Επεξεργασία σελιδοδείκτη</translation>
 <translation id="2179182049312275900">Μπορείτε να ενεργοποιήσετε τον συγχρονισμό ανά πάσα στιγμή στις ρυθμίσεις.</translation>
 <translation id="2198757192731523470">Η Google μπορεί να χρησιμοποιεί το ιστορικό σας για την εξατομίκευση της Αναζήτησης, των διαφημίσεων και άλλων υπηρεσιών Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> μη αναγνωσμένα άρθρα λίστας ανάγνωσης.</translation>
 <translation id="2230173723195178503">Η ιστοσελίδα φορτώθηκε</translation>
 <translation id="2239626343334228536">Διαγραφή δεδομένων περιήγησης…</translation>
 <translation id="2267753748892043616">Προσθήκη λογαριασμού</translation>
@@ -265,7 +264,6 @@
 
 Για να αλλάξετε αυτήν τη ρύθμιση, <ph name="BEGIN_LINK" />επαναφέρετε τον συγχρονισμό<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Μη έγκυρος αριθμός κάρτας</translation>
-<translation id="4807020197310989387">1 μη αναγνωσμένο άρθρο λίστας ανάγνωσης.</translation>
 <translation id="4818522717893377262">Προσθήκη γλώσσας…</translation>
 <translation id="481968316161811770">Cookie, δεδομένα ιστότοπου</translation>
 <translation id="4833786495304741580">Αποστέλλει αυτόματα στατιστικά στοιχεία χρήσης και αναφορές σφαλμάτων στην Google.</translation>
@@ -415,6 +413,7 @@
 <translation id="6858855187367714033">Σαρώθηκε</translation>
 <translation id="6859944681507688231">Για να σαρώσετε έναν κώδικα QR, ή μια πιστωτική κάρτα, ενεργοποιήστε την κάμερα από τις ρυθμίσεις.</translation>
 <translation id="6873263987691478642">Προβολή διαχωρισμού οθόνης</translation>
+<translation id="6888009575607455378">Είστε βέβαιοι ότι θέλετε να απορρίψετε τις αλλαγές σας;</translation>
 <translation id="6896758677409633944">Αντιγραφή</translation>
 <translation id="6903907808598579934">Ενεργοποίηση συγχρονισμού</translation>
 <translation id="6914583639806229067">Αναζήτηση της εικόνας που αντιγράψατε</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_en-GB.xtb b/ios/chrome/app/strings/resources/ios_strings_en-GB.xtb
index 65d021c3..1946f96 100644
--- a/ios/chrome/app/strings/resources/ios_strings_en-GB.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_en-GB.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Edit Bookmark</translation>
 <translation id="2179182049312275900">You can turn on sync at any time in settings.</translation>
 <translation id="2198757192731523470">Google may use your history to personalise Search, ads and other Google services.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> unread Reading List articles.</translation>
 <translation id="2230173723195178503">Web page loaded</translation>
 <translation id="2239626343334228536">Clearing browsing data…</translation>
 <translation id="2267753748892043616">Add Account</translation>
@@ -265,7 +264,6 @@
 
 To change this setting, <ph name="BEGIN_LINK" />reset sync<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Invalid Card Number</translation>
-<translation id="4807020197310989387">1 unread Reading List article.</translation>
 <translation id="4818522717893377262">Add language…</translation>
 <translation id="481968316161811770">Cookies, Site Data</translation>
 <translation id="4833786495304741580">Automatically sends usage statistics and crash reports to Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Scanned</translation>
 <translation id="6859944681507688231">To scan a QR code or credit card, enable the camera from settings.</translation>
 <translation id="6873263987691478642">Split view</translation>
+<translation id="6888009575607455378">Are you sure that you want to discard your changes?</translation>
 <translation id="6896758677409633944">Copy</translation>
 <translation id="6903907808598579934">Turn on sync</translation>
 <translation id="6914583639806229067">Search for image that you copied</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_es-419.xtb b/ios/chrome/app/strings/resources/ios_strings_es-419.xtb
index 8c946f1..ed9cb26b 100644
--- a/ios/chrome/app/strings/resources/ios_strings_es-419.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_es-419.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Editar marcador</translation>
 <translation id="2179182049312275900">Puedes activar la sincronización en la configuración en cualquier momento.</translation>
 <translation id="2198757192731523470">Es posible que Google use tu historial para personalizar la Búsqueda, los anuncios y otros servicios de Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> artículos sin leer en tu lista de lectura</translation>
 <translation id="2230173723195178503">Se cargó la página web</translation>
 <translation id="2239626343334228536">Borrando datos de navegación…</translation>
 <translation id="2267753748892043616">Agregar cuenta</translation>
@@ -265,7 +264,6 @@
 
 Para cambiar esta configuración, <ph name="BEGIN_LINK" />restablece la sincronización<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">El número de la tarjeta no es válido</translation>
-<translation id="4807020197310989387">1 artículo sin leer en tu lista de lectura</translation>
 <translation id="4818522717893377262">Agregar idioma…</translation>
 <translation id="481968316161811770">Cookies, datos del sitio</translation>
 <translation id="4833786495304741580">Envía automáticamente informes de fallas y estadísticas de uso a Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Escaneado</translation>
 <translation id="6859944681507688231">Para escanear un código QR o una tarjeta de crédito, habilita la cámara desde la configuración.</translation>
 <translation id="6873263987691478642">Vista dividida</translation>
+<translation id="6888009575607455378">¿Confirmas que quieres descartar los cambios?</translation>
 <translation id="6896758677409633944">Copiar</translation>
 <translation id="6903907808598579934">Activar la sincronización</translation>
 <translation id="6914583639806229067">Buscar la imagen que copiaste</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_es.xtb b/ios/chrome/app/strings/resources/ios_strings_es.xtb
index 58d7c87..41aab7c 100644
--- a/ios/chrome/app/strings/resources/ios_strings_es.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_es.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Editar marcador</translation>
 <translation id="2179182049312275900">Puedes activar la sincronización en cualquier momento desde la configuración.</translation>
 <translation id="2198757192731523470">Es posible que se utilice tu historial para personalizar la Búsqueda, los anuncios y otros servicios de Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> artículos de la lista de lectura no leídos.</translation>
 <translation id="2230173723195178503">Página web cargada</translation>
 <translation id="2239626343334228536">Borrando datos de navegación...</translation>
 <translation id="2267753748892043616">Añadir cuenta</translation>
@@ -265,7 +264,6 @@
 
 Para cambiar esta opción, <ph name="BEGIN_LINK" />restablece la sincronización<ph name="END_LINK" />.</translation>
 <translation id="4805759445554688327">El número de tarjeta no es válido</translation>
-<translation id="4807020197310989387">1 artículo de la lista de lectura no leído.</translation>
 <translation id="4818522717893377262">Añadir idioma...</translation>
 <translation id="481968316161811770">Cookies y datos de sitios web</translation>
 <translation id="4833786495304741580">Envía automáticamente estadísticas de uso e informes sobre fallos a Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Escaneado</translation>
 <translation id="6859944681507688231">Para escanear un código QR o una tarjeta de crédito, habilita la cámara en la configuración.</translation>
 <translation id="6873263987691478642">Vista dividida</translation>
+<translation id="6888009575607455378">¿Seguro que quieres descartar los cambios?</translation>
 <translation id="6896758677409633944">Copiar</translation>
 <translation id="6903907808598579934">Activar sincronización</translation>
 <translation id="6914583639806229067">Buscar la imagen que has copiado</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_et.xtb b/ios/chrome/app/strings/resources/ios_strings_et.xtb
index b147acf..c2cf33b6 100644
--- a/ios/chrome/app/strings/resources/ios_strings_et.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_et.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Muuda järjehoidjat</translation>
 <translation id="2179182049312275900">Saate sünkroonimise seadetes alati sisse lülitada.</translation>
 <translation id="2198757192731523470">Google võib kasutada teie ajalugu otsingu, reklaamide ja muude Google'i teenuste isikupärastamiseks.</translation>
-<translation id="2207590065820824892">Lugemisloendis on <ph name="UNREAD_COUNT" /> lugemata artiklit.</translation>
 <translation id="2230173723195178503">Veebileht laaditi</translation>
 <translation id="2239626343334228536">Sirvimisandmete kustutamine …</translation>
 <translation id="2267753748892043616">Lisa konto</translation>
@@ -265,7 +264,6 @@
 
 Seade muutmiseks <ph name="BEGIN_LINK" />lähtestage sünkroonimine<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Sobimatu kaardinumber</translation>
-<translation id="4807020197310989387">Lugemisloendis on 1 lugemata artikkel.</translation>
 <translation id="4818522717893377262">Lisa keel …</translation>
 <translation id="481968316161811770">Küpsis., saidi andm.</translation>
 <translation id="4833786495304741580">Google'ile saadetakse automaatselt kasutusstatistikat ja krahhiaruandeid.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Skannitud</translation>
 <translation id="6859944681507688231">QR-koodi või krediitkaardi skannimiseks lubage seadetes kaamera.</translation>
 <translation id="6873263987691478642">Poolitatud vaade</translation>
+<translation id="6888009575607455378">Kas soovite kindlasti muudatustest loobuda?</translation>
 <translation id="6896758677409633944">Kopeeri</translation>
 <translation id="6903907808598579934">Lülita sünkroonimine sisse</translation>
 <translation id="6914583639806229067">Otsi kopeeritud pilti</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fa.xtb b/ios/chrome/app/strings/resources/ios_strings_fa.xtb
index 5dd9da2..2edf1f0 100644
--- a/ios/chrome/app/strings/resources/ios_strings_fa.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_fa.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">ویرایش نشانک</translation>
 <translation id="2179182049312275900">هرزمان خواستید می‌توانید همگام‌سازی را در تنظیمات روشن کنید.</translation>
 <translation id="2198757192731523470">‏Google ممکن است از سابقه مرور شما برای شخصی کردن جستجو، آگهی‌ها، و سایر سرویس‌های Google استفاده کند.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> مقاله خوانده‌نشده در فهرست مطالعه.</translation>
 <translation id="2230173723195178503">صفحه وب بار شد</translation>
 <translation id="2239626343334228536">درحال پاک کردن داده‌های محصول مرور…</translation>
 <translation id="2267753748892043616">افزودن حساب</translation>
@@ -265,7 +264,6 @@
 
 برای تغییر این تنظیم، <ph name="BEGIN_LINK" />همگام‌سازی را بازنشانی کنید<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">شماره کارت نامعتبر است</translation>
-<translation id="4807020197310989387">۱ مقاله خوانده‌نشده در فهرست مطالعه.</translation>
 <translation id="4818522717893377262">افزودن زبان...</translation>
 <translation id="481968316161811770">کوکی‌ها، داده‌های سایت</translation>
 <translation id="4833786495304741580">‏به‌طور خودکار آمار کاربرد و گزارش‌های خرابی را به Google ارسال می‌کند.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">اسکن‌شده</translation>
 <translation id="6859944681507688231">‏برای اسکن کردن کد QR یا کارت اعتباری، دوربین را در تنظیمات فعال کنید.</translation>
 <translation id="6873263987691478642">نمای تقسیم</translation>
+<translation id="6888009575607455378">مطمئن هستید می‌خواهید از تغییراتتان صرف‌نظر کنید؟</translation>
 <translation id="6896758677409633944">کپی</translation>
 <translation id="6903907808598579934">روشن کردن همگام‌سازی</translation>
 <translation id="6914583639806229067">جستجوی تصویری که کپی کرده‌اید</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fi.xtb b/ios/chrome/app/strings/resources/ios_strings_fi.xtb
index 11a304f..43bfce8e 100644
--- a/ios/chrome/app/strings/resources/ios_strings_fi.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_fi.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Muokkaa kirjanmerkkiä</translation>
 <translation id="2179182049312275900">Voit ottaa synkronoinnin käyttöön milloin tahansa asetuksista.</translation>
 <translation id="2198757192731523470">Google voi muokata Hakua, mainoksia ja muita Googlen palveluita historiasi perusteella.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> lukematonta artikkelia lukulistalla</translation>
 <translation id="2230173723195178503">Verkkosivu ladattiin.</translation>
 <translation id="2239626343334228536">Selaustietoja poistetaan…</translation>
 <translation id="2267753748892043616">Lisää tili</translation>
@@ -265,7 +264,6 @@
 
 Jos haluat muokata asetusta, <ph name="BEGIN_LINK" />nollaa synkronointi<ph name="END_LINK" />.</translation>
 <translation id="4805759445554688327">Virheellinen kortin numero</translation>
-<translation id="4807020197310989387">Yksi lukematon artikkeli lukulistalla</translation>
 <translation id="4818522717893377262">Lisää kieli…</translation>
 <translation id="481968316161811770">Evästeet, sivuston tiedot</translation>
 <translation id="4833786495304741580">Lähettää automaattisesti käyttötilastoja ja virheraportteja Googlelle.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Luettu</translation>
 <translation id="6859944681507688231">Jos haluat skannata QR-koodin tai credit-kortin, ota kamera käyttöön asetuksista.</translation>
 <translation id="6873263987691478642">Jaettu näkymä</translation>
+<translation id="6888009575607455378">Haluatko varmasti hylätä muutokset?</translation>
 <translation id="6896758677409633944">Kopioi</translation>
 <translation id="6903907808598579934">Ota synkronointi käyttöön</translation>
 <translation id="6914583639806229067">Hae kopioitua kuvaa</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fil.xtb b/ios/chrome/app/strings/resources/ios_strings_fil.xtb
index 4fa9bf7..b6ab859 100644
--- a/ios/chrome/app/strings/resources/ios_strings_fil.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_fil.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">I-edit ang Bookmark</translation>
 <translation id="2179182049312275900">Puwede mong i-on ang pag-sync anumang oras sa mga setting.</translation>
 <translation id="2198757192731523470">Maaaring gamitin ng Google ang iyong history para i-personalize ang Search, mga ad, at iba pang serbisyo ng Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> (na) hindi pa nababasang artikulo sa Listahan ng Babasahin</translation>
 <translation id="2230173723195178503">Na-load na ang webpage</translation>
 <translation id="2239626343334228536">Kini-clear ang data sa pag-browse...</translation>
 <translation id="2267753748892043616">Magdagdag ng Account</translation>
@@ -265,7 +264,6 @@
 
 Para baguhin ang setting na ito, <ph name="BEGIN_LINK" />i-reset ang pag-sync<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Invalid ang Numero ng Card</translation>
-<translation id="4807020197310989387">1 hindi pa nababasang artikulo sa Listahan ng Babasahin.</translation>
 <translation id="4818522717893377262">Magdagdag ng Wika...</translation>
 <translation id="481968316161811770">Cookies, Data ng Site</translation>
 <translation id="4833786495304741580">Awtomatikong nagpapadala sa Google ng mga istatistika sa paggamit at ulat ng pag-crash.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Na-scan</translation>
 <translation id="6859944681507688231">Para mag-scan ng QR code o credit card, i-enable ang camera mula sa mga setting.</translation>
 <translation id="6873263987691478642">Split View</translation>
+<translation id="6888009575607455378">Sigurado ka bang gusto mong i-discard ang iyong mga pagbabago?</translation>
 <translation id="6896758677409633944">Copy</translation>
 <translation id="6903907808598579934">I-on ang pag-sync</translation>
 <translation id="6914583639806229067">Maghanap para sa Larawang Kinopya Mo</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fr.xtb b/ios/chrome/app/strings/resources/ios_strings_fr.xtb
index 730d9c3..d2f71796 100644
--- a/ios/chrome/app/strings/resources/ios_strings_fr.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_fr.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Modifier le favori</translation>
 <translation id="2179182049312275900">Vous pouvez activer la synchronisation à tout moment dans les paramètres</translation>
 <translation id="2198757192731523470">Google peut utiliser votre historique pour personnaliser la recherche, les annonces et d'autres services Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> articles non lus dans la liste de lecture.</translation>
 <translation id="2230173723195178503">Page Web chargée</translation>
 <translation id="2239626343334228536">Effacement des données de navigation…</translation>
 <translation id="2267753748892043616">Ajouter un compte</translation>
@@ -265,7 +264,6 @@
 
 Pour modifier ce paramètre, <ph name="BEGIN_LINK" />réinitialisez la synchronisation<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Numéro de carte non valide</translation>
-<translation id="4807020197310989387">1 article non lu dans la liste de lecture.</translation>
 <translation id="4818522717893377262">Ajouter une langue…</translation>
 <translation id="481968316161811770">Cookies/données site</translation>
 <translation id="4833786495304741580">Envoie automatiquement des statistiques d'utilisation et des rapports d'erreur à Google</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Scanné</translation>
 <translation id="6859944681507688231">Pour scanner un code QR ou une carte de crédit, activez l'appareil photo dans Réglages.</translation>
 <translation id="6873263987691478642">Vue fractionnée</translation>
+<translation id="6888009575607455378">Voulez-vous vraiment supprimer les modifications ?</translation>
 <translation id="6896758677409633944">Copier</translation>
 <translation id="6903907808598579934">Activer la synchronisation</translation>
 <translation id="6914583639806229067">Rechercher l'image copiée</translation>
@@ -500,7 +499,7 @@
 <translation id="8261506727792406068">Supprimer</translation>
 <translation id="8281781826761538115">Par défaut : <ph name="DEFAULT_LOCALE" /></translation>
 <translation id="8319076807703933069">Nouvelle recherche</translation>
-<translation id="8323906514956095947">Appuyez de manière prolongée pour afficher plus d'options de l'onglet</translation>
+<translation id="8323906514956095947">Appuyez de manière prolongée pour afficher plus d'options d'onglets</translation>
 <translation id="8328777765163860529">Tout fermer</translation>
 <translation id="8407669440184693619">Aucun mot de passe trouvé pour ce site</translation>
 <translation id="842017693807136194">Connecté avec</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_gu.xtb b/ios/chrome/app/strings/resources/ios_strings_gu.xtb
index 4f99c74e7..6d44c9b 100644
--- a/ios/chrome/app/strings/resources/ios_strings_gu.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_gu.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">બુકમાર્કમાં ફેરફાર કરો</translation>
 <translation id="2179182049312275900">તમે કોઈ પણ સમયે સેટિંગમાં સિંક કરો ચાલુ કરી શકો છો.</translation>
 <translation id="2198757192731523470">શોધ, જાહેરાતો અને અન્ય Google સેવાઓને મનગમતી બનાવવા માટે Google, તમારા ઇતિહાસનો ઉપયોગ કરી શકે છે.</translation>
-<translation id="2207590065820824892">વાંચન સૂચિમાં <ph name="UNREAD_COUNT" /> ન વાંચેલા લેખો.</translation>
 <translation id="2230173723195178503">વેબપેજ લોડ કર્યું</translation>
 <translation id="2239626343334228536">બ્રાઉઝિંગ ડેટા સાફ થઈ રહ્યો છે...</translation>
 <translation id="2267753748892043616">એકાઉન્ટ ઉમેરો</translation>
@@ -265,7 +264,6 @@
 
 આ સેટિંગ બદલવા માટે, <ph name="BEGIN_LINK" />સિંકને રીસેટ કરો<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">અમાન્ય કાર્ડ નંબર</translation>
-<translation id="4807020197310989387">વાંચન સૂચિમાં 1 ન વાંચેલ લેખ.</translation>
 <translation id="4818522717893377262">ભાષા ઉમેરો...</translation>
 <translation id="481968316161811770">કુકીઝ, સાઇટ ડેટા</translation>
 <translation id="4833786495304741580">Googleને વપરાશના આંકડા અને ક્રૅશ રિપોર્ટ ઑટોમૅટિક રીતે મોકલે છે.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">સ્કૅન કર્યો</translation>
 <translation id="6859944681507688231">QR કોડ અથવા ક્રેડિટ કાર્ડ સ્કૅન કરવા માટે, સેટિંગમાં કૅમેરા ચાલુ કરો.</translation>
 <translation id="6873263987691478642">વિભાજિત દૃશ્ય</translation>
+<translation id="6888009575607455378">શું તમે ખરેખર તમારા ફેરફારો કાઢી નાખવા ઇચ્છો છો?</translation>
 <translation id="6896758677409633944">કૉપિ કરો</translation>
 <translation id="6903907808598579934">સમન્વયન ચાલુ કરો</translation>
 <translation id="6914583639806229067">તમે કૉપિ કરેલી છબી માટે શોધ કરો</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_hi.xtb b/ios/chrome/app/strings/resources/ios_strings_hi.xtb
index f3514e9..3981e4c 100644
--- a/ios/chrome/app/strings/resources/ios_strings_hi.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_hi.xtb
@@ -18,6 +18,7 @@
 <translation id="1176932207622159128">इमेज नहीं सेव की जा सकती</translation>
 <translation id="1180526666083833456">सभी डिवाइस में सिंक करना और मनमुताबिक बनाना.</translation>
 <translation id="1181037720776840403">हटाएं</translation>
+<translation id="1207113853726624428">नई खोज</translation>
 <translation id="1209206284964581585">अभी छिपाएं</translation>
 <translation id="1219674500290482172">इंटरनेट से कनेक्‍ट होने में असमर्थ.</translation>
 <translation id="122699739164161391">सभी टैब बंद करें</translation>
@@ -91,7 +92,6 @@
 <translation id="2149973817440762519">बुकमार्क में बदलाव करें</translation>
 <translation id="2179182049312275900">आप सेटिंग में किसी भी समय सिंक चालू कर सकते हैं</translation>
 <translation id="2198757192731523470">खोज, विज्ञापन, और दूसरी Google सेवाओं को मनमुताबिक बनाने के लिए Google आपके इतिहास का इस्तेमाल कर सकता है.</translation>
-<translation id="2207590065820824892">पढ़ने की सूची में <ph name="UNREAD_COUNT" /> ऐसे लेख हैं जो पढ़े नहीं गए हैं.</translation>
 <translation id="2230173723195178503">वेबपेज लोड हो गया है</translation>
 <translation id="2239626343334228536">ब्राउज़िंग डेटा साफ़ हो रहा है...</translation>
 <translation id="2267753748892043616">खाता जोड़ें</translation>
@@ -129,6 +129,7 @@
 <translation id="2712127207578915686">फ़ाइल खोलने में असमर्थ</translation>
 <translation id="2718352093833049315">केवल वाई-फ़ाई पर</translation>
 <translation id="2747003861858887689">पिछला फ़ील्‍ड</translation>
+<translation id="2773292004659987824">गुप्त मोड में खोज</translation>
 <translation id="2780046210906776326">कोई ईमेल खाता नहीं</translation>
 <translation id="2781692009645368755">Google Pay</translation>
 <translation id="2800683595868705743">टैब स्विचर को छोड़ें</translation>
@@ -263,7 +264,6 @@
 
 यह सेटिंग बदलने के लिए, <ph name="BEGIN_LINK" />सिंक रीसेट करें<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">कार्ड संख्या अमान्य है</translation>
-<translation id="4807020197310989387">पढ़ने की सूची में एक ऐसा लेख है जो पढ़ा नहीं गया है.</translation>
 <translation id="4818522717893377262">भाषा जोड़ें...</translation>
 <translation id="481968316161811770">कुकी, साइट डेटा</translation>
 <translation id="4833786495304741580">Google को इस्तेमाल के आंकड़े और खराबी रिपोर्ट अपने आप भेजती है.</translation>
@@ -412,6 +412,7 @@
 <translation id="6858855187367714033">स्कैन किया गया</translation>
 <translation id="6859944681507688231">कोई क्यूआर कोड या क्रेडिट कार्ड स्कैन करने के लिए, 'सेटिंग' में जाकर कैमरा चालू करें.</translation>
 <translation id="6873263987691478642">स्प्लिट व्यू</translation>
+<translation id="6888009575607455378">क्या आप वाकई अपने बदलावों को खारिज करना चाहते हैं?</translation>
 <translation id="6896758677409633944">कॉपी बनाएं</translation>
 <translation id="6903907808598579934">समन्वयन चालू करें</translation>
 <translation id="6914583639806229067">जो इमेज आपने कॉपी की थी वह खोजें</translation>
@@ -498,6 +499,7 @@
 <translation id="8261506727792406068">मिटाएं</translation>
 <translation id="8281781826761538115">डिफ़ॉल्ट - <ph name="DEFAULT_LOCALE" /></translation>
 <translation id="8319076807703933069">नई खोज</translation>
+<translation id="8323906514956095947">ज़्यादा टैब विकल्पों के लिए दबाकर रखें</translation>
 <translation id="8328777765163860529">सभी बंद करें</translation>
 <translation id="8407669440184693619">इस साइट के लिए कोई पासवर्ड नहीं मिला</translation>
 <translation id="842017693807136194">इससे प्रवेश किया गया है</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_hr.xtb b/ios/chrome/app/strings/resources/ios_strings_hr.xtb
index f69a603..99f8705 100644
--- a/ios/chrome/app/strings/resources/ios_strings_hr.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_hr.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Uredi oznaku</translation>
 <translation id="2179182049312275900">Sinkronizaciju možete uvijek uključiti u postavkama.</translation>
 <translation id="2198757192731523470">Google može upotrebljavati vašu povijest za prilagodbu Pretraživanja, oglasa i drugih Googleovih usluga.</translation>
-<translation id="2207590065820824892">Nepročitanih članaka na popisu za čitanje: <ph name="UNREAD_COUNT" />.</translation>
 <translation id="2230173723195178503">Web-stranica učitana</translation>
 <translation id="2239626343334228536">Brisanje podataka o pregledavanju...</translation>
 <translation id="2267753748892043616">Dodaj račun</translation>
@@ -265,7 +264,6 @@
 
 Da biste promijenili tu postavku, <ph name="BEGIN_LINK" />poništite sinkronizaciju<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Nevažeći broj kartice</translation>
-<translation id="4807020197310989387">Jedan nepročitani članak na popisu za čitanje.</translation>
 <translation id="4818522717893377262">Dodaj jezik...</translation>
 <translation id="481968316161811770">Kolačići, podaci web-lokacije</translation>
 <translation id="4833786495304741580">Automatski šalje Googleu statistiku upotrebe i izvješća o padu programa.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Skenirano</translation>
 <translation id="6859944681507688231">Da biste skenirali QR kôd ili kreditnu karticu, omogućite kameru u postavkama.</translation>
 <translation id="6873263987691478642">Podijeljeni prikaz</translation>
+<translation id="6888009575607455378">Jeste li sigurni da želite odbaciti promjene?</translation>
 <translation id="6896758677409633944">Kopiraj</translation>
 <translation id="6903907808598579934">Uključi sinkronizaciju</translation>
 <translation id="6914583639806229067">Pretraživanje slike koju ste kopirali</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_hu.xtb b/ios/chrome/app/strings/resources/ios_strings_hu.xtb
index 9543483..172063a 100644
--- a/ios/chrome/app/strings/resources/ios_strings_hu.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_hu.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Könyvjelző szerkesztése</translation>
 <translation id="2179182049312275900">A szinkronizálás bármikor bekapcsolható a beállításokban.</translation>
 <translation id="2198757192731523470">A Google felhasználhatja az Ön előzményeit a Keresés, a hirdetések és más Google-szolgáltatások személyre szabására.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> olvasatlan cikk az olvasási listán.</translation>
 <translation id="2230173723195178503">A weboldal betöltött</translation>
 <translation id="2239626343334228536">Böngészési adatok törlése…</translation>
 <translation id="2267753748892043616">Fiók hozzáadása</translation>
@@ -265,7 +264,6 @@
 
 A beállítás módosításához <ph name="BEGIN_LINK" />állítsa vissza a szinkronizálást<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Érvénytelen kártyaszám</translation>
-<translation id="4807020197310989387">1 olvasatlan cikk az olvasási listán.</translation>
 <translation id="4818522717893377262">Nyelv hozzáadása…</translation>
 <translation id="481968316161811770">Cookie-k, webhelyadatok</translation>
 <translation id="4833786495304741580">Automatikusan elküldi a használati statisztikákat és a hibajelentéseket a Google-nak.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Beolvasva</translation>
 <translation id="6859944681507688231">QR-kód vagy hitelkártya beolvasásához engedélyezze a kamerát a beállítások között</translation>
 <translation id="6873263987691478642">Osztott nézet</translation>
+<translation id="6888009575607455378">Biztosan elveti a módosításokat?</translation>
 <translation id="6896758677409633944">Másolás</translation>
 <translation id="6903907808598579934">Szinkronizálás bekapcsolása</translation>
 <translation id="6914583639806229067">Vágólapra másolt kép keresése</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_id.xtb b/ios/chrome/app/strings/resources/ios_strings_id.xtb
index a165e86..0bd9f1f 100644
--- a/ios/chrome/app/strings/resources/ios_strings_id.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_id.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Edit Bookmark</translation>
 <translation id="2179182049312275900">Anda dapat mengaktifkan sinkronisasi kapan saja di setelan.</translation>
 <translation id="2198757192731523470">Google dapat menggunakan histori Anda untuk mempersonalisasi Penelusuran, iklan, dan layanan Google lainnya.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> artikel yang belum dibaca di Daftar Bacaan.</translation>
 <translation id="2230173723195178503">Halaman web dimuat</translation>
 <translation id="2239626343334228536">Menghapus data browsing...</translation>
 <translation id="2267753748892043616">Tambahkan Akun</translation>
@@ -130,7 +129,7 @@
 <translation id="2712127207578915686">Tidak Dapat Membuka File</translation>
 <translation id="2718352093833049315">Hanya melalui Wi-Fi</translation>
 <translation id="2747003861858887689">Bidang sebelumnya</translation>
-<translation id="2773292004659987824">Penelusuran Rahasia</translation>
+<translation id="2773292004659987824">Penelusuran Samaran</translation>
 <translation id="2780046210906776326">Tidak Ada Akun Email</translation>
 <translation id="2781692009645368755">Google Pay</translation>
 <translation id="2800683595868705743">Tutup Pengalih Tab</translation>
@@ -265,7 +264,6 @@
 
 Untuk mengubah setelan ini, <ph name="BEGIN_LINK" />setel ulang sinkronisasi<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Nomor Kartu Tidak Valid</translation>
-<translation id="4807020197310989387">1 artikel yang belum dibaca di Daftar Bacaan.</translation>
 <translation id="4818522717893377262">Tambahkan Bahasa...</translation>
 <translation id="481968316161811770">Cookie, Data Situs</translation>
 <translation id="4833786495304741580">Otomatis mengirim statistik penggunaan dan laporan kerusakan ke Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Dipindai</translation>
 <translation id="6859944681507688231">Untuk memindai kode QR code atau kartu kredit, aktifkan kamera dari setelan.</translation>
 <translation id="6873263987691478642">Layar Terpisah</translation>
+<translation id="6888009575607455378">Yakin ingin menghapus perubahan?</translation>
 <translation id="6896758677409633944">Salin</translation>
 <translation id="6903907808598579934">Aktifkan sinkronisasi</translation>
 <translation id="6914583639806229067">Telusuri Gambar yang Anda Salin</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_it.xtb b/ios/chrome/app/strings/resources/ios_strings_it.xtb
index 196718d6..6bbb25e 100644
--- a/ios/chrome/app/strings/resources/ios_strings_it.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_it.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Modifica Preferito</translation>
 <translation id="2179182049312275900">Puoi attivare la sincronizzazione in qualsiasi momento nelle impostazioni.</translation>
 <translation id="2198757192731523470">Google può utilizzare la tua cronologia per personalizzare la Ricerca, gli annunci e altri servizi Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> articoli dell'elenco di lettura da leggere.</translation>
 <translation id="2230173723195178503">Pagina web caricata</translation>
 <translation id="2239626343334228536">Cancellazione dati di navigazione…</translation>
 <translation id="2267753748892043616">Aggiungi account</translation>
@@ -265,7 +264,6 @@
 
 Per cambiare questa impostazione, <ph name="BEGIN_LINK" />reimposta la sincronizzazione<ph name="END_LINK" />.</translation>
 <translation id="4805759445554688327">Numero di carta non valido</translation>
-<translation id="4807020197310989387">1 articolo dell'elenco di lettura da leggere.</translation>
 <translation id="4818522717893377262">Aggiungi lingua…</translation>
 <translation id="481968316161811770">Cookie, dati dei siti</translation>
 <translation id="4833786495304741580">Invia automaticamente a Google statistiche sull'utilizzo e rapporti sugli arresti anomali.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Scansione eseguita</translation>
 <translation id="6859944681507688231">Per eseguire la scansione di un codice QR o di una carta di credito, attiva la fotocamera dalle impostazioni.</translation>
 <translation id="6873263987691478642">Visualizzazione divisa</translation>
+<translation id="6888009575607455378">Vuoi annullare le modifiche apportate?</translation>
 <translation id="6896758677409633944">Copia</translation>
 <translation id="6903907808598579934">Attiva la sincronizzazione</translation>
 <translation id="6914583639806229067">Cerca l'immagine copiata</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_iw.xtb b/ios/chrome/app/strings/resources/ios_strings_iw.xtb
index 1cd428e..4f0c663c 100644
--- a/ios/chrome/app/strings/resources/ios_strings_iw.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_iw.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">ערוך סימניות</translation>
 <translation id="2179182049312275900">אפשר להפעיל את הסנכרון בכל זמן דרך ההגדרות.</translation>
 <translation id="2198757192731523470">‏Google תוכל להשתמש בהיסטוריית הגלישה שלך לצורך התאמה אישית של החיפוש, מודעות ושירותי Google אחרים.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> מאמרים שלא נקראו ברשימת הקריאה.</translation>
 <translation id="2230173723195178503">דף האינטרנט נטען</translation>
 <translation id="2239626343334228536">מנקה נתוני גלישה…</translation>
 <translation id="2267753748892043616">חשבון חדש</translation>
@@ -265,7 +264,6 @@
 
 כדי לשנות את ההגדרה הזו צריך <ph name="BEGIN_LINK" />לאפס את הסנכרון<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">מספר כרטיס לא חוקי</translation>
-<translation id="4807020197310989387">מאמר אחד שלא נקרא ברשימת הקריאה.</translation>
 <translation id="4818522717893377262">הוספת שפה…</translation>
 <translation id="481968316161811770">‏קובצי cookie, נתוני אתרים</translation>
 <translation id="4833786495304741580">‏שליחת דוחות קריסה וסטטיסטיקות שימוש אל Google באופן אוטומטי.</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ja.xtb b/ios/chrome/app/strings/resources/ios_strings_ja.xtb
index 19b310d..99b67ab 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ja.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ja.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">ブックマークを編集</translation>
 <translation id="2179182049312275900">同期は設定でいつでもオンにできます。</translation>
 <translation id="2198757192731523470">検索、広告、その他の Google サービスをカスタマイズする目的で、Google が履歴を使用することがあります。</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> 件のリーディング リストの記事が未読です。</translation>
 <translation id="2230173723195178503">ウェブページを読み込みました</translation>
 <translation id="2239626343334228536">閲覧データを削除しています...</translation>
 <translation id="2267753748892043616">アカウントを追加</translation>
@@ -265,7 +264,6 @@
 
 この設定を変更する場合は<ph name="BEGIN_LINK" />同期をリセット<ph name="END_LINK" />してください</translation>
 <translation id="4805759445554688327">無効なカード番号</translation>
-<translation id="4807020197310989387">1 件のリーディング リストの記事が未読です。</translation>
 <translation id="4818522717893377262">言語を追加...</translation>
 <translation id="481968316161811770">Cookie、サイトデータ</translation>
 <translation id="4833786495304741580">使用統計情報や障害レポートを Google に自動送信します。</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">スキャンされました</translation>
 <translation id="6859944681507688231">QR コードまたはクレジット カードをスキャンするには、設定でカメラを有効にしてください。</translation>
 <translation id="6873263987691478642">分割表示</translation>
+<translation id="6888009575607455378">変更を破棄してもよろしいですか?</translation>
 <translation id="6896758677409633944">コピー</translation>
 <translation id="6903907808598579934">同期を有効にする</translation>
 <translation id="6914583639806229067">コピーした画像を検索</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_kn.xtb b/ios/chrome/app/strings/resources/ios_strings_kn.xtb
index f57505e..4d15c75 100644
--- a/ios/chrome/app/strings/resources/ios_strings_kn.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_kn.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">ಬುಕ್‌ಮಾರ್ಕ್ ಎಡಿಟ್ ಮಾಡಿ</translation>
 <translation id="2179182049312275900">ನೀವು ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ಯಾವಾಗ ಬೇಕಾದರೂ ಸಿಂಕ್ ಅನ್ನು ಆನ್ ಮಾಡಬಹುದು.</translation>
 <translation id="2198757192731523470">Google ನಿಮ್ಮ ಇತಿಹಾಸವನ್ನು ಹುಡುಕಾಟ, ಜಾಹೀರಾತುಗಳು ಮತ್ತು ಇತರ Google ಸೇವೆಗಳನ್ನು ವೈಯಕ್ತೀಕರಿಸಲು ಬಳಸಬಹುದು.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> ಓದದಿರುವ ಓದುವ ಪಟ್ಟಿ ಲೇಖನಗಳು.</translation>
 <translation id="2230173723195178503">ವೆಬ್‌ಪುಟ ಲೋಡ್ ಮಾಡಲಾಗಿದೆ</translation>
 <translation id="2239626343334228536">ಬ್ರೌಸಿಂಗ್ ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸಲಾಗುತ್ತಿದೆ...</translation>
 <translation id="2267753748892043616">ಖಾತೆ ಸೇರಿಸಿ</translation>
@@ -265,7 +264,6 @@
 
 ಈ ಸೆಟ್ಟಿಂಗ್ ಅನ್ನು ಬದಲಾಯಿಸಲು, <ph name="BEGIN_LINK" />ಸಿಂಕ್ ಅನ್ನು ಮರುಹೊಂದಿಸಿ<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">ಕಾರ್ಡ್ ಸಂಖ್ಯೆ ಅಮಾನ್ಯವಾಗಿದೆ</translation>
-<translation id="4807020197310989387">1 ಓದದಿರುವ ಓದುವ ಪಟ್ಟಿ ಲೇಖನ.</translation>
 <translation id="4818522717893377262">ಭಾಷೆ ಸೇರಿಸಿ...</translation>
 <translation id="481968316161811770">ಕುಕೀಗಳು, ಸೈಟ್‌ ಡೇಟಾ</translation>
 <translation id="4833786495304741580">ಬಳಕೆಯ ಅಂಕಿಅಂಶಗಳು ಮತ್ತು ಕ್ರ್ಯಾಶ್ ವರದಿಗಳನ್ನು Google ಗೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕಳುಹಿಸುತ್ತದೆ.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">ಸ್ಕ್ಯಾನ್ ಮಾಡಲಾಗಿದೆ</translation>
 <translation id="6859944681507688231">QR ಕೋಡ್ ಅಥವಾ ಕ್ರೆಡಿಟ್ ಕಾರ್ಡ್ ಅನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಲು, ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ಕ್ಯಾಮರಾವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ.</translation>
 <translation id="6873263987691478642">ವಿಭಜಿತ ವೀಕ್ಷಣೆ</translation>
+<translation id="6888009575607455378">ನೀವು ಮಾಡಿದ ಬದಲಾವಣೆಗಳನ್ನು ತ್ಯಜಿಸಲು ಖಚಿತವಾಗಿ ಬಯಸುವಿರಾ?</translation>
 <translation id="6896758677409633944">ನಕಲಿಸು</translation>
 <translation id="6903907808598579934">ಸಿಂಕ್‌ ಆನ್‌ ಮಾಡಿ</translation>
 <translation id="6914583639806229067">ನೀವು ನಕಲಿಸಿದ ಚಿತ್ರವನ್ನು ಹುಡುಕಿ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ko.xtb b/ios/chrome/app/strings/resources/ios_strings_ko.xtb
index 87a1cf56..ffa418a 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ko.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ko.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">북마크 수정</translation>
 <translation id="2179182049312275900">언제든지 설정에서 동기화를 사용 설정할 수 있습니다.</translation>
 <translation id="2198757192731523470">Google에서 검색, 광고 및 다른 Google 서비스를 맞춤설정하기 위하여 내 방문 기록을 사용할 수 있습니다.</translation>
-<translation id="2207590065820824892">읽기 목록에 읽지 않은 기사가 <ph name="UNREAD_COUNT" />개 있습니다.</translation>
 <translation id="2230173723195178503">웹페이지 로드됨</translation>
 <translation id="2239626343334228536">인터넷 사용 기록 삭제 중...</translation>
 <translation id="2267753748892043616">계정 추가</translation>
@@ -265,7 +264,6 @@
 
 이 설정을 변경하려면 <ph name="BEGIN_LINK" />동기화를 재설정<ph name="END_LINK" />하세요.</translation>
 <translation id="4805759445554688327">카드 번호가 잘못됨</translation>
-<translation id="4807020197310989387">읽기 목록에 읽지 않은 기사가 1개 있습니다.</translation>
 <translation id="4818522717893377262">언어 추가...</translation>
 <translation id="481968316161811770">쿠키, 사이트 데이터</translation>
 <translation id="4833786495304741580">사용 통계 및 비정상 종료 보고서를 Google에 자동으로 전송합니다.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">스캔됨</translation>
 <translation id="6859944681507688231">QR 코드 또는 신용카드를 스캔하려면 설정에서 카메라를 사용 설정하세요.</translation>
 <translation id="6873263987691478642">분할 보기</translation>
+<translation id="6888009575607455378">변경사항을 삭제하시겠습니까?</translation>
 <translation id="6896758677409633944">복사</translation>
 <translation id="6903907808598579934">동기화 사용 설정</translation>
 <translation id="6914583639806229067">복사한 이미지 검색</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_lt.xtb b/ios/chrome/app/strings/resources/ios_strings_lt.xtb
index e1b0cb2f..0b3b5385 100644
--- a/ios/chrome/app/strings/resources/ios_strings_lt.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_lt.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Redaguoti žymes</translation>
 <translation id="2179182049312275900">Galite bet kada įjungti sinchronizavimą nustatymuose.</translation>
 <translation id="2198757192731523470">„Google“ gali naudoti jūsų istoriją, kad suasmenintų Paiešką, skelbimus ir kitas „Google“ paslaugas.</translation>
-<translation id="2207590065820824892">Neskaitytų straipsnių skaitymo sąraše: <ph name="UNREAD_COUNT" />.</translation>
 <translation id="2230173723195178503">TInklalapis įkeltas</translation>
 <translation id="2239626343334228536">Išvalomi naršymo duomenis...</translation>
 <translation id="2267753748892043616">Pridėti paskyrą</translation>
@@ -265,7 +264,6 @@
 
 Jei norite pakeisti šį nustatymą, <ph name="BEGIN_LINK" />iš naujo nustatykite sinchronizavimą<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Netinkamas kortelės numeris</translation>
-<translation id="4807020197310989387">1 neskaitytas straipsnis skaitymo sąraše.</translation>
 <translation id="4818522717893377262">Pridėti kalbą...</translation>
 <translation id="481968316161811770">Slapuk., svet. duom.</translation>
 <translation id="4833786495304741580">Automatiškai siunčia naudojimo statistiką ir strigčių ataskaitas „Google“.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Nuskaityta</translation>
 <translation id="6859944681507688231">Jei norite nuskaityti QR kodą ar kredito kortelę, nustatymuose įgalinkite fotoaparatą.</translation>
 <translation id="6873263987691478642">Padalytas rodinys</translation>
+<translation id="6888009575607455378">Ar tikrai norite atmesti pakeitimus?</translation>
 <translation id="6896758677409633944">Kopijuoti</translation>
 <translation id="6903907808598579934">Įjungti sinchronizavimą</translation>
 <translation id="6914583639806229067">Ieškoti nukopijuoto vaizdo</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_lv.xtb b/ios/chrome/app/strings/resources/ios_strings_lv.xtb
index c8044c6..06b5508 100644
--- a/ios/chrome/app/strings/resources/ios_strings_lv.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_lv.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Rediģēt grāmatzīmes</translation>
 <translation id="2179182049312275900">Jebkurā brīdī iestatījumos varat ieslēgt sinhronizēšanu.</translation>
 <translation id="2198757192731523470">Google var izmantot jūsu vēsturi, lai personalizētu Meklēšanu, reklāmas un citus Google pakalpojumus.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> nelasīts(-i) raksts(-i), kas pievienots(-i) lasīšanas sarakstam.</translation>
 <translation id="2230173723195178503">Tīmekļa lapa ielādēta</translation>
 <translation id="2239626343334228536">Notiek pārlūkošanas datu notīrīšana…</translation>
 <translation id="2267753748892043616">Pievienot kontu</translation>
@@ -265,7 +264,6 @@
 
 Lai mainītu šo iestatījumu, <ph name="BEGIN_LINK" />atiestatiet sinhronizāciju<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Nederīgs kartes numurs</translation>
-<translation id="4807020197310989387">1 nelasīts raksts, kas pievienots lasīšanas sarakstam.</translation>
 <translation id="4818522717893377262">Pievienot valodu...</translation>
 <translation id="481968316161811770">Sīkfaili, vietņu dati</translation>
 <translation id="4833786495304741580">Automātiski sūtīt lietojuma statistiku un avāriju pārskatus Google serveriem.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Skenēšana pabeigta</translation>
 <translation id="6859944681507688231">Lai skenētu QR kodu vai kredītkarti, iestatījumos iespējojiet kameras atļauju.</translation>
 <translation id="6873263987691478642">Dalītais skats</translation>
+<translation id="6888009575607455378">Vai tiešām vēlaties atmest veiktās izmaiņas?</translation>
 <translation id="6896758677409633944">Kopēt</translation>
 <translation id="6903907808598579934">Ieslēgt sinhronizāciju</translation>
 <translation id="6914583639806229067">Meklēt jūsu kopēto attēlu</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ml.xtb b/ios/chrome/app/strings/resources/ios_strings_ml.xtb
index 817c29f..dd30d9c0 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ml.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ml.xtb
@@ -43,7 +43,7 @@
 <translation id="1436290164580597469">സമന്വയം ആരംഭിക്കാൻ പാസ്‌ഫ്രെയ്‌സ് നൽകുക.</translation>
 <translation id="1449835205994625556">പാസ്‍വേഡ് അദൃശ്യമാക്കുക</translation>
 <translation id="145015347812617860"><ph name="COUNT" /> ഇനങ്ങൾ</translation>
-<translation id="1491277525950327607">ക്രമീകരണം മാറ്റാൻ ഡബിൾ ടാപ്പ് ചെയ്യുക</translation>
+<translation id="1491277525950327607">ക്രമീകരണം മാറ്റാൻ രണ്ടുതവണ ടാപ്പ് ചെയ്യുക</translation>
 <translation id="1509486075633541495">വെബ്‌സൈറ്റിലേക്ക് സൈൻ ഇൻ ചെയ്യുക</translation>
 <translation id="152234381334907219">ഒരിക്കലും സംരക്ഷിച്ചില്ല</translation>
 <translation id="1540800554400757039">വിലാസം 1</translation>
@@ -63,7 +63,7 @@
 <translation id="1690731385917361335">ഇനങ്ങളൊന്നുമില്ല</translation>
 <translation id="1692118695553449118">സമന്വയം ഓണാണ്</translation>
 <translation id="1700629756560807968"><ph name="NUMBER_OF_SELECTED_BOOKMARKS" /> തിരഞ്ഞെടുത്തു</translation>
-<translation id="1740468249224277719">ഇൻസ്‌റ്റാൾ ചെയ്യാൻ ഡബിൾ ടാപ്പ് ചെയ്യുക.</translation>
+<translation id="1740468249224277719">ഇൻസ്‌റ്റാൾ ചെയ്യാൻ രണ്ടുതവണ ടാപ്പ് ചെയ്യുക.</translation>
 <translation id="1746815479209538200">വെബ് ബ്രൗസ് ചെയ്യാൻ, ഒരു പുതിയ ടാബ് ചേർക്കുക.</translation>
 <translation id="1752547299766512813">സംരക്ഷിത പാസ്‌വേഡുകള്‍</translation>
 <translation id="1753905327828125965">കൂടുതൽ‍ സന്ദര്‍ശിച്ചത്</translation>
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">ബുക്മാര്‍ക്ക് എഡിറ്റ് ചെയ്യുക</translation>
 <translation id="2179182049312275900">നിങ്ങൾക്ക് എപ്പോഴും ക്രമീകരണത്തിൽ സമന്വയം ഓണാക്കാവുന്നതാണ്.</translation>
 <translation id="2198757192731523470">തിരയലും പരസ്യങ്ങളും മറ്റ് Google സേവനങ്ങളും വ്യക്തിപരമാക്കാൻ, Google നിങ്ങളുടെ ചരിത്രം ഉപയോഗിച്ചേക്കാം.</translation>
-<translation id="2207590065820824892">വായനാ ലിസ്‌റ്റിലുള്ള, വായിക്കാത്ത <ph name="UNREAD_COUNT" /> ലേഖനങ്ങൾ.</translation>
 <translation id="2230173723195178503">വെബ്‌പേജ് ലോഡ് ചെയ്‌തു</translation>
 <translation id="2239626343334228536">ബ്രൗസിംഗ് ഡാറ്റ മായ്‌ക്കുന്നു...</translation>
 <translation id="2267753748892043616">അക്കൗണ്ട് ചേർക്കുക</translation>
@@ -200,7 +199,7 @@
 <translation id="3775743491439407556">സമന്വയം പ്രവർത്തിക്കുന്നില്ല</translation>
 <translation id="3779810277399252432">ഇന്റർനെറ്റ് കണക്ഷനില്ല.</translation>
 <translation id="3783017676699494206">ഇമേജ് സംരക്ഷിക്കുക</translation>
-<translation id="3789841737615482174">ഇന്‍സ്റ്റാളുചെയ്യുക</translation>
+<translation id="3789841737615482174">ഇന്‍സ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="385051799172605136">പിന്നോട്ട്</translation>
 <translation id="3897092660631435901">മെനു</translation>
 <translation id="3915450441834151894">സൈറ്റ് വിവരങ്ങള്‍</translation>
@@ -222,7 +221,7 @@
 <translation id="408404951701638773">തിരയൽ ബാറിൽ എത്താൻ ഇപ്പോൾ എളുപ്പമാണ്</translation>
 <translation id="411254640334432676">ഡൗൺലോഡ് പരാജയപ്പെട്ടു.</translation>
 <translation id="4112644173421521737">തിരയുക</translation>
-<translation id="4121993058175073134">നെറ്റ്-എക്‌സ്‌പോർട്ട് ഡാറ്റ അയയ്‌ക്കുന്നതിന്, ക്രമീകരണങ്ങളുടെ അപ്ലിക്കേഷനിൽ നിങ്ങളുടെ ഇമെയിൽ അക്കൗണ്ട് കോൺഫിഗർ ചെയ്യുക.</translation>
+<translation id="4121993058175073134">നെറ്റ്-എക്‌സ്‌പോർട്ട് ഡാറ്റ അയയ്‌ക്കുന്നതിന്, ക്രമീകരണങ്ങളുടെ ആപ്പിൽ നിങ്ങളുടെ ഇമെയിൽ അക്കൗൺറ്റ് കോൺഫിഗർ ചെയ്യുക.</translation>
 <translation id="4124987746317609294">സമയ ശ്രേണി</translation>
 <translation id="4172051516777682613">എല്ലായ്പ്പോഴും ദൃശ്യമാക്കുക</translation>
 <translation id="418156467088430727">പുതിയ ടാബിൽ ഓഫ്‌ലൈൻ പതിപ്പ് കാണുക</translation>
@@ -234,7 +233,7 @@
 <translation id="430793432425771671">എല്ലാം സമന്വയിപ്പിക്കുക</translation>
 <translation id="430967081421617822">എല്ലാ സമയവും</translation>
 <translation id="4338650699862464074">നിങ്ങൾ സന്ദർശിക്കുന്ന പേജുകളുടെ URL-കൾ Google-ലേക്ക് അയയ്‌ക്കുന്നു.</translation>
-<translation id="4359125752503270327">ഈ പേജ് മറ്റൊരു അപ്ലിക്കേഷനിൽ തുറക്കും.</translation>
+<translation id="4359125752503270327">ഈ പേജ് മറ്റൊരു ആപ്പിൽ തുറക്കും.</translation>
 <translation id="4375040482473363939">QR കോഡ് തിരയൽ</translation>
 <translation id="4378154925671717803">ഫോൺ</translation>
 <translation id="441868831736628555">സ്വകാര്യത അറിയിപ്പ്</translation>
@@ -265,7 +264,6 @@
 
 ഈ ക്രമീകരണം മാറ്റാൻ, <ph name="BEGIN_LINK" />സമന്വയം പുനഃക്രമീകരിക്കുക<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">കാർഡ് നമ്പർ അസാധുവാണ്</translation>
-<translation id="4807020197310989387">വായനാ ലിസ്‌റ്റിലുള്ള, വായിക്കാത്ത ഒരു ലേഖനം.</translation>
 <translation id="4818522717893377262">ഭാഷ ചേർക്കുക...</translation>
 <translation id="481968316161811770">കുക്കികളും സൈറ്റ് ഡാറ്റയും</translation>
 <translation id="4833786495304741580">Google-ലേക്ക് സ്വയമേവ ഉപയോഗ സ്ഥിതിവിവരക്കണക്കുകളും ക്രാഷ് റിപ്പോർട്ടുകളും അയയ്ക്കുന്നു.</translation>
@@ -282,7 +280,7 @@
 <translation id="5010803260590204777">വെബ് സ്വകാര്യമായി ബ്രൗസ് ചെയ്യാൻ ഒരു അദൃശ്യ ടാബ് തുറക്കുക.</translation>
 <translation id="5039804452771397117">അനുവദിക്കൂ</translation>
 <translation id="5059136629401106827">ശരി</translation>
-<translation id="5062321486222145940">Google ഡ്രൈവ് ഇൻസ്‌റ്റാളുചെയ്യുക</translation>
+<translation id="5062321486222145940">Google ഡ്രൈവ് ഇൻസ്‌റ്റാൾ ചെയ്യുക</translation>
 <translation id="5083464117946352670">ഫയൽ വലുപ്പം നിർണ്ണയിക്കാനാവില്ല.</translation>
 <translation id="5094827893301452931">Tweet പങ്കിടൽ പൂർത്തിയായി.</translation>
 <translation id="5127805178023152808">സമന്വയം ഓഫാണ്</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">സ്‌കാൻ ചെയ്‌തു</translation>
 <translation id="6859944681507688231">QR കോഡോ ക്രെഡിറ്റ് കാര്‍ഡോ സ്‌കാൻ ചെയ്യാൻ, ക്രമീകരണത്തിൽ ക്യാമറ പ്രവർത്തനക്ഷമമാക്കുക.</translation>
 <translation id="6873263987691478642">വിഭജിത കാഴ്‌ച</translation>
+<translation id="6888009575607455378">നിങ്ങളുടെ മാറ്റങ്ങൾ റദ്ദാക്കണമെന്ന് തീർച്ചയാണോ?</translation>
 <translation id="6896758677409633944">പകര്‍ത്തുക</translation>
 <translation id="6903907808598579934">സമന്വയിപ്പിക്കൽ ഓണാക്കുക</translation>
 <translation id="6914583639806229067">നിങ്ങൾ പകർത്തിയ ചിത്രം തിരയുക</translation>
@@ -465,7 +464,7 @@
 <translation id="7638584964844754484">പാസ്‌ഫ്രെയ്‌സ് തെറ്റാണ്</translation>
 <translation id="7658239707568436148">റദ്ദാക്കൂ</translation>
 <translation id="766891008101699113">വെബ് സ്വകാര്യമായി ബ്രൗസ് ചെയ്യാൻ, ഒരു പുതിയ ടാബ് ചേർക്കുക.</translation>
-<translation id="7671141431838911305">ഇൻസ്റ്റാളുചെയ്യുക</translation>
+<translation id="7671141431838911305">ഇൻസ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="7765158879357617694">നീക്കുക</translation>
 <translation id="7772032839648071052">പാസ്ഫ്രേസ് സ്ഥിരീകരിക്കുക</translation>
 <translation id="7781829728241885113">ഇന്നലെ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_mr.xtb b/ios/chrome/app/strings/resources/ios_strings_mr.xtb
index a62a706..719590f 100644
--- a/ios/chrome/app/strings/resources/ios_strings_mr.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_mr.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">बुकमार्क संपादित करा</translation>
 <translation id="2179182049312275900">तुम्ही सेटिंग्जमध्ये कधीही सिंक करणे सुरू करू शकता.</translation>
 <translation id="2198757192731523470">शोध, जाहिरात आणि इतर Google सेवा पर्सनलाइझ करण्यासाठी Google कदाचित तुमच्या इतिहासाचा वापर करू शकते.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> न वाचलेले वाचन सूची लेख.</translation>
 <translation id="2230173723195178503">वेबपेज लोड केले</translation>
 <translation id="2239626343334228536">ब्राउझिंग डेटा साफ करत आहे...</translation>
 <translation id="2267753748892043616">खाते जोडा</translation>
@@ -266,7 +265,6 @@
 
 हे सेटिंग बदलण्यासाठी, <ph name="BEGIN_LINK" />सिंक रीसेट करा<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">कार्डाचा नंबर चुकीचा आहे</translation>
-<translation id="4807020197310989387">एक न वाचलेला वाचन सूची लेख.</translation>
 <translation id="4818522717893377262">भाषा जोडा…</translation>
 <translation id="481968316161811770">कुकीज, साइट डेटा</translation>
 <translation id="4833786495304741580">Google ला वापर आकडेवारी आणि क्रॅश अहवाल आपोआप पाठवते.</translation>
@@ -415,6 +413,7 @@
 <translation id="6858855187367714033">स्कॅन केलेले</translation>
 <translation id="6859944681507688231">QR कोड किंवा क्रेडिट कार्ड स्कॅन करण्यासाठी सेटिंग्जमध्ये कॅमेरा सुरू करा.</translation>
 <translation id="6873263987691478642">विभाजित दृश्य</translation>
+<translation id="6888009575607455378">तुम्हाला तुमचे बदल नक्की काढून टाकायचे आहेत का?</translation>
 <translation id="6896758677409633944">कॉपी करा</translation>
 <translation id="6903907808598579934">संकालन चालू करा</translation>
 <translation id="6914583639806229067">तुम्ही कॉपी केलेली इमेज शोधा</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ms.xtb b/ios/chrome/app/strings/resources/ios_strings_ms.xtb
index 67e033a..841713f74c 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ms.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ms.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Edit Penanda Halaman</translation>
 <translation id="2179182049312275900">Anda boleh menghidupkan penyegerakan pada bila-bila masa dalam tetapan.</translation>
 <translation id="2198757192731523470">Google boleh menggunakan sejarah anda untuk memperibadikan Carian, iklan dan perkhidmatan Google yang lain.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> artikel Senarai Bacaan yang belum dibaca.</translation>
 <translation id="2230173723195178503">Halaman web dimuatkan</translation>
 <translation id="2239626343334228536">Mengosongkan data semakan imbas...</translation>
 <translation id="2267753748892043616">Tambahkan Akaun</translation>
@@ -265,7 +264,6 @@
 
 Untuk menukar tetapan ini, <ph name="BEGIN_LINK" />tetapkan semula penyegerakan<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Nombor Kad Tidak Sah</translation>
-<translation id="4807020197310989387">1 artikel Senarai Bacaan yang belum dibaca.</translation>
 <translation id="4818522717893377262">Tambahkan Bahasa...</translation>
 <translation id="481968316161811770">Kuki, Data Tapak</translation>
 <translation id="4833786495304741580">Menghantar perangkaan penggunaan dan laporan ranap sistem secara automatik kepada Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Diimbas</translation>
 <translation id="6859944681507688231">Untuk mengimbas kod QR atau kad kredit, dayakan kamera daripada tetapan.</translation>
 <translation id="6873263987691478642">Paparan Pisah</translation>
+<translation id="6888009575607455378">Adakah anda pasti anda mahu membuang perubahan anda?</translation>
 <translation id="6896758677409633944">Salin</translation>
 <translation id="6903907808598579934">Hidupkan penyegerakan</translation>
 <translation id="6914583639806229067">Cari Imej yang Anda Salin</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_nl.xtb b/ios/chrome/app/strings/resources/ios_strings_nl.xtb
index eb7e1f5..6473b56 100644
--- a/ios/chrome/app/strings/resources/ios_strings_nl.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_nl.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Bladwijzer bewerken</translation>
 <translation id="2179182049312275900">Je kunt synchronisatie op elk gewenst moment inschakelen via de instellingen</translation>
 <translation id="2198757192731523470">Google kan je geschiedenis gebruiken om Google Zoeken, advertenties en andere Google-services te personaliseren.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> ongelezen artikelen op de leeslijst.</translation>
 <translation id="2230173723195178503">Webpagina geladen</translation>
 <translation id="2239626343334228536">Browsegegevens wissen…</translation>
 <translation id="2267753748892043616">Account toevoegen</translation>
@@ -265,7 +264,6 @@
 
 <ph name="BEGIN_LINK" />Reset de synchronisatie<ph name="END_LINK" /> als je deze instelling wilt wijzigen.</translation>
 <translation id="4805759445554688327">Ongeldig creditcardnummer</translation>
-<translation id="4807020197310989387">1 ongelezen artikel op de leeslijst.</translation>
 <translation id="4818522717893377262">Taal toevoegen...</translation>
 <translation id="481968316161811770">Cookies en sitegegevens</translation>
 <translation id="4833786495304741580">Hiermee worden automatisch gebruiksstatistieken en crashrapporten naar Google verzonden.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Gescand</translation>
 <translation id="6859944681507688231">Als je een QR-code of creditcard wilt scannen, schakel je de camera in via Instellingen.</translation>
 <translation id="6873263987691478642">Gesplitste weergave</translation>
+<translation id="6888009575607455378">Weet je zeker dat je de wijzigingen niet wilt opslaan?</translation>
 <translation id="6896758677409633944">Kopieer</translation>
 <translation id="6903907808598579934">Synchronisatie inschakelen</translation>
 <translation id="6914583639806229067">Zoeken naar gekopieerde afbeelding</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_no.xtb b/ios/chrome/app/strings/resources/ios_strings_no.xtb
index 3c75254f..9c22118 100644
--- a/ios/chrome/app/strings/resources/ios_strings_no.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_no.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Rediger bokmerke</translation>
 <translation id="2179182049312275900">Du kan når som helst slå på synkronisering i innstillingene.</translation>
 <translation id="2198757192731523470">Google kan bruke loggen din for å gi Søk, annonser og andre Google-tjenester et personlig preg.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> uleste leselisteartikler.</translation>
 <translation id="2230173723195178503">Nettsiden er lastet inn</translation>
 <translation id="2239626343334228536">Sletter nettlesingsdata …</translation>
 <translation id="2267753748892043616">Legg til konto</translation>
@@ -265,7 +264,6 @@
 
 For å endre denne innstillingen, <ph name="BEGIN_LINK" />tilbakestill synkroniseringen<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Ugyldig kortnummer</translation>
-<translation id="4807020197310989387">1 ulest leselisteartikkel.</translation>
 <translation id="4818522717893377262">Legg til språk...</translation>
 <translation id="481968316161811770">Informasjonskapsler og nettstedsdata</translation>
 <translation id="4833786495304741580">Sender automatisk bruksstatistikk og programstopprapporter til Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Skannet</translation>
 <translation id="6859944681507688231">For å skanne QR-koder eller kredittkort, slå på kameraet i innstillingene.</translation>
 <translation id="6873263987691478642">Delt visning</translation>
+<translation id="6888009575607455378">Er du sikker på at du vil forkaste endringene?</translation>
 <translation id="6896758677409633944">Kopiér</translation>
 <translation id="6903907808598579934">Slå på synkronisering</translation>
 <translation id="6914583639806229067">Søk etter bildet du kopierte</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_pl.xtb b/ios/chrome/app/strings/resources/ios_strings_pl.xtb
index 891c3cc5..366d0ba 100644
--- a/ios/chrome/app/strings/resources/ios_strings_pl.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_pl.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Edytuj zakładkę</translation>
 <translation id="2179182049312275900">W każdej chwili możesz włączyć synchronizację w ustawieniach.</translation>
 <translation id="2198757192731523470">Google może korzystać z Twojej historii, by personalizować wyniki wyszukiwania, reklamy i działanie innych usług.</translation>
-<translation id="2207590065820824892">Nieprzeczytane artykuły na liście Do przeczytania: <ph name="UNREAD_COUNT" />.</translation>
 <translation id="2230173723195178503">Wczytano stronę internetową</translation>
 <translation id="2239626343334228536">Czyszczę dane przeglądania…</translation>
 <translation id="2267753748892043616">Dodaj konto</translation>
@@ -265,7 +264,6 @@
 
 Aby zmienić to ustawienie, <ph name="BEGIN_LINK" />zresetuj synchronizację<ph name="END_LINK" />.</translation>
 <translation id="4805759445554688327">Nieprawidłowy numer karty</translation>
-<translation id="4807020197310989387">1 nieprzeczytany artykuł na liście Do przeczytania.</translation>
 <translation id="4818522717893377262">Dodaj język...</translation>
 <translation id="481968316161811770">Cookie i dane stron</translation>
 <translation id="4833786495304741580">Automatycznie przesyła do Google statystyki użytkowania i raporty o awariach.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Zeskanowano</translation>
 <translation id="6859944681507688231">Aby zeskanować kod QR lub kartę kredytową, włącz aparat w ustawieniach.</translation>
 <translation id="6873263987691478642">Widok dzielony</translation>
+<translation id="6888009575607455378">Czy na pewno chcesz odrzucić zmiany?</translation>
 <translation id="6896758677409633944">Kopiuj</translation>
 <translation id="6903907808598579934">Włącz synchronizację</translation>
 <translation id="6914583639806229067">Wyszukaj skopiowany obraz</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_pt-BR.xtb b/ios/chrome/app/strings/resources/ios_strings_pt-BR.xtb
index 298a980..7de37f4 100644
--- a/ios/chrome/app/strings/resources/ios_strings_pt-BR.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_pt-BR.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Editar favoritos</translation>
 <translation id="2179182049312275900">Ative a sincronização a qualquer momento nas configurações.</translation>
 <translation id="2198757192731523470">O Google pode usar seu histórico para personalizar a Pesquisa, os anúncios e outros serviços que ele oferece.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> artigos não lidos na lista de leitura.</translation>
 <translation id="2230173723195178503">Página da Web carregada</translation>
 <translation id="2239626343334228536">Limpando dados de navegação…</translation>
 <translation id="2267753748892043616">Adicionar conta</translation>
@@ -265,7 +264,6 @@
 
 Para alterar essa configuração, <ph name="BEGIN_LINK" />redefina a sincronização<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Número de cartão inválido</translation>
-<translation id="4807020197310989387">1 artigo não lido na lista de leitura.</translation>
 <translation id="4818522717893377262">Adicionar idioma…</translation>
 <translation id="481968316161811770">Dados do site e arquivos "cookies"</translation>
 <translation id="4833786495304741580">Envia automaticamente estatísticas de uso e relatórios de erros para o Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Lido</translation>
 <translation id="6859944681507688231">Para ler um código QR ou cartão de crédito, ative a câmera nas configurações.</translation>
 <translation id="6873263987691478642">Visualização dividida</translation>
+<translation id="6888009575607455378">Tem certeza de que quer descartar suas alterações?</translation>
 <translation id="6896758677409633944">Copiar</translation>
 <translation id="6903907808598579934">Ativar a sincronização</translation>
 <translation id="6914583639806229067">Pesquisar imagem que você copiou</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_pt-PT.xtb b/ios/chrome/app/strings/resources/ios_strings_pt-PT.xtb
index 813aca5..06173b0 100644
--- a/ios/chrome/app/strings/resources/ios_strings_pt-PT.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_pt-PT.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Editar marcador</translation>
 <translation id="2179182049312275900">Pode ativar a sincronização em qualquer altura nas definições.</translation>
 <translation id="2198757192731523470">A Google pode utilizar o seu histórico para personalizar a Pesquisa, os anúncios e outros serviços Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> artigos não lidos na Lista de leitura.</translation>
 <translation id="2230173723195178503">Página Web carregada</translation>
 <translation id="2239626343334228536">A limpar os dados de navegação…</translation>
 <translation id="2267753748892043616">Adicionar conta</translation>
@@ -265,7 +264,6 @@
 
 Para alterar esta definição, <ph name="BEGIN_LINK" />reponha a sincronização<ph name="END_LINK" />.</translation>
 <translation id="4805759445554688327">Número de cartão inválido</translation>
-<translation id="4807020197310989387">1 artigo não lido na Lista de leitura.</translation>
 <translation id="4818522717893377262">Adicionar idioma…</translation>
 <translation id="481968316161811770">Cookies, dados de sites</translation>
 <translation id="4833786495304741580">Envia automaticamente estatísticas de utilização e relatórios de falhas para a Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Lido</translation>
 <translation id="6859944681507688231">Para ler um código QR ou um cartão de crédito, ative a câmara nas definições.</translation>
 <translation id="6873263987691478642">Vista dividida</translation>
+<translation id="6888009575607455378">Tem a certeza de que pretende rejeitar as alterações?</translation>
 <translation id="6896758677409633944">Copiar</translation>
 <translation id="6903907808598579934">Ativar sincronização</translation>
 <translation id="6914583639806229067">Pesquisar imagem que copiou</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ro.xtb b/ios/chrome/app/strings/resources/ios_strings_ro.xtb
index b255649..8d1559f 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ro.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ro.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Editați marcajul</translation>
 <translation id="2179182049312275900">Poți să activezi sincronizarea oricând în setări.</translation>
 <translation id="2198757192731523470">Google poate folosi istoricul pentru a personaliza Căutarea, anunțurile și alte servicii Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> articole necitite în Lista de lectură.</translation>
 <translation id="2230173723195178503">Pagina web s-a încărcat</translation>
 <translation id="2239626343334228536">Se șterg datele de navigare...</translation>
 <translation id="2267753748892043616">Adaugă un cont</translation>
@@ -265,7 +264,6 @@
 
 Pentru a modifica această setare, <ph name="BEGIN_LINK" />resetează sincronizarea<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Numărul cardului nu este valid</translation>
-<translation id="4807020197310989387">Un articol necitit în Lista de lectură.</translation>
 <translation id="4818522717893377262">Adaugă o limbă...</translation>
 <translation id="481968316161811770">Cookie-urile, datele privind site-urile</translation>
 <translation id="4833786495304741580">Trimite automat statistici de utilizare și rapoarte de blocare la Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Scanat</translation>
 <translation id="6859944681507688231">Pentru a scana un cod QR sau un card de credit, activează camera foto din setări.</translation>
 <translation id="6873263987691478642">Vizualizare împărțită</translation>
+<translation id="6888009575607455378">Sigur vrei să renunți la modificări?</translation>
 <translation id="6896758677409633944">Copiază</translation>
 <translation id="6903907808598579934">Activează sincronizarea</translation>
 <translation id="6914583639806229067">Caută imaginea pe care ai copiat-o</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ru.xtb b/ios/chrome/app/strings/resources/ios_strings_ru.xtb
index 7f2d8326..afdce0e5 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ru.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ru.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Закладка</translation>
 <translation id="2179182049312275900">Ее можно включить в настройках в любой момент.</translation>
 <translation id="2198757192731523470">Google может использовать вашу историю, чтобы персонализировать рекламу, а также Поиск и другие сервисы.</translation>
-<translation id="2207590065820824892">Число непрочитанных статей в Списке для чтения: <ph name="UNREAD_COUNT" />.</translation>
 <translation id="2230173723195178503">Веб-страница загружена</translation>
 <translation id="2239626343334228536">Удаление данных о работе в браузере…</translation>
 <translation id="2267753748892043616">Добавить аккаунт</translation>
@@ -265,7 +264,6 @@
 
 Чтобы изменить эту настройку, <ph name="BEGIN_LINK" />сбросьте параметры синхронизации<ph name="END_LINK" />.</translation>
 <translation id="4805759445554688327">Неверный номер карты</translation>
-<translation id="4807020197310989387">В Списке для чтения 1 непрочитанная статья.</translation>
 <translation id="4818522717893377262">Добавить язык</translation>
 <translation id="481968316161811770">Cookie, данные сайтов</translation>
 <translation id="4833786495304741580">Автоматически отправлять в Google статистику использования и отчеты о сбоях.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Просканировано</translation>
 <translation id="6859944681507688231">Чтобы сканировать QR-код или банковскую карту, разрешите приложению доступ к камере.</translation>
 <translation id="6873263987691478642">Режим Split View</translation>
+<translation id="6888009575607455378">Отменить изменения?</translation>
 <translation id="6896758677409633944">Копировать</translation>
 <translation id="6903907808598579934">Включить</translation>
 <translation id="6914583639806229067">Поиск по скопированному изображению</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sk.xtb b/ios/chrome/app/strings/resources/ios_strings_sk.xtb
index 9313858..59a9c57e 100644
--- a/ios/chrome/app/strings/resources/ios_strings_sk.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_sk.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Upraviť záložku</translation>
 <translation id="2179182049312275900">Synchronizáciu môžete kedykoľvek zapnúť v nastaveniach.</translation>
 <translation id="2198757192731523470">Google môže pomocou vašej histórie prispôsobiť Vyhľadávanie, reklamy a ďalšie služby Googlu.</translation>
-<translation id="2207590065820824892">Počet neprečítaných článkov v čitateľskom zozname: <ph name="UNREAD_COUNT" /></translation>
 <translation id="2230173723195178503">Načítala sa webová stránka</translation>
 <translation id="2239626343334228536">Vymazávajú sa dáta prehliadania…</translation>
 <translation id="2267753748892043616">Pridať účet</translation>
@@ -265,7 +264,6 @@
 
 Ak chcete toto nastavenie zmeniť, <ph name="BEGIN_LINK" />resetujte synchronizáciu<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Neplatné číslo karty</translation>
-<translation id="4807020197310989387">1 neprečítaný článok v čitateľskom zozname.</translation>
 <translation id="4818522717893377262">Pridať jazyk…</translation>
 <translation id="481968316161811770">Súbory cookie, údaje webu</translation>
 <translation id="4833786495304741580">Automaticky odosiela Googlu štatistiky o používaní a správy o zlyhaní.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Naskenované</translation>
 <translation id="6859944681507688231">Ak chcete nasnímať kód QR alebo kreditnú kartu, povoľte v nastaveniach fotoaparát.</translation>
 <translation id="6873263987691478642">Rozdelené zobrazenie</translation>
+<translation id="6888009575607455378">Naozaj chcete zmeny zahodiť?</translation>
 <translation id="6896758677409633944">Kopírovať</translation>
 <translation id="6903907808598579934">Zapnúť synchronizáciu</translation>
 <translation id="6914583639806229067">Vyhľadať skopírovaný obrázok</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sl.xtb b/ios/chrome/app/strings/resources/ios_strings_sl.xtb
index 0ed18bb..a6996a8 100644
--- a/ios/chrome/app/strings/resources/ios_strings_sl.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_sl.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Uredi zaznamek</translation>
 <translation id="2179182049312275900">Sinhronizacijo lahko kadarkoli vklopite v nastavitvah.</translation>
 <translation id="2198757192731523470">Google lahko vašo zgodovino uporabi za prilagajanje Iskanja Google, oglasov in drugih Googlovih storitev.</translation>
-<translation id="2207590065820824892">Št. neprebranih člankov s seznama za branje: <ph name="UNREAD_COUNT" />.</translation>
 <translation id="2230173723195178503">Spletna stran je naložena</translation>
 <translation id="2239626343334228536">Brisanje podatkov brskanja …</translation>
 <translation id="2267753748892043616">Dodaj račun</translation>
@@ -265,7 +264,6 @@
 
 Če želite spremeniti to nastavitev, <ph name="BEGIN_LINK" />ponastavite sinhronizacijo<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Neveljavna številka kartice</translation>
-<translation id="4807020197310989387">1 neprebran članek s seznama za branje.</translation>
 <translation id="4818522717893377262">Dodaj jezik …</translation>
 <translation id="481968316161811770">Cookies, Site Data</translation>
 <translation id="4833786495304741580">Samodejno pošilja statistične podatke o uporabi in poročila o zrušitvah Googlu.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Optično prebrano</translation>
 <translation id="6859944681507688231">Če želite optično prebrati kodo QR ali kreditno kartico, v nastavitvah omogočite fotoaparat.</translation>
 <translation id="6873263987691478642">Razdeljeni pogled</translation>
+<translation id="6888009575607455378">Ali ste prepričani, da želite zavreči spremembe?</translation>
 <translation id="6896758677409633944">Kopiraj</translation>
 <translation id="6903907808598579934">Vklopi sinhronizacijo</translation>
 <translation id="6914583639806229067">Iskanje slike, ki ste jo kopirali</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sr.xtb b/ios/chrome/app/strings/resources/ios_strings_sr.xtb
index 12ff0a0..1b044e8 100644
--- a/ios/chrome/app/strings/resources/ios_strings_sr.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_sr.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Измените обележивач</translation>
 <translation id="2179182049312275900">Можете да укључите синхронизацију у подешавањима у било ком тренутку.</translation>
 <translation id="2198757192731523470">Google може да користи историју за персонализацију Претраге, огласа и других Google услуга.</translation>
-<translation id="2207590065820824892">Непрочитани чланци на листи за читање: <ph name="UNREAD_COUNT" />.</translation>
 <translation id="2230173723195178503">Веб-страница је учитана</translation>
 <translation id="2239626343334228536">Бришу се подаци прегледања...</translation>
 <translation id="2267753748892043616">Додај налог</translation>
@@ -265,7 +264,6 @@
 
 Да бисте променили ово подешавање, <ph name="BEGIN_LINK" />ресетујте синхронизацију<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Неважећи број картице</translation>
-<translation id="4807020197310989387">1 непрочитан чланак на листи за читање.</translation>
 <translation id="4818522717893377262">Додајте језик…</translation>
 <translation id="481968316161811770">Колачићи, подаци о сајтовима</translation>
 <translation id="4833786495304741580">Аутоматски шаље Google-у статистику коришћења и извештаје о отказивању.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Скенирано</translation>
 <translation id="6859944681507688231">Да бисте скенирали QR кôд или кредитну картицу, омогућите камеру у подешавањима.</translation>
 <translation id="6873263987691478642">Подељени приказ</translation>
+<translation id="6888009575607455378">Желите ли стварно да одбаците промене?</translation>
 <translation id="6896758677409633944">Копирај</translation>
 <translation id="6903907808598579934">Укључи синхронизацију</translation>
 <translation id="6914583639806229067">Потражите слику коју сте копирали</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sv.xtb b/ios/chrome/app/strings/resources/ios_strings_sv.xtb
index 616db47..8c1538d0 100644
--- a/ios/chrome/app/strings/resources/ios_strings_sv.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_sv.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Redigera bokmärke</translation>
 <translation id="2179182049312275900">Du kan när som helst inaktivera synkroniseringen i inställningarna.</translation>
 <translation id="2198757192731523470">Google kan anpassa Sök, annonser och andra Google-tjänster utifrån historiken.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> olästa artiklar i läslistan.</translation>
 <translation id="2230173723195178503">Webbsidan har lästs in</translation>
 <translation id="2239626343334228536">Tar bort webbinformation …</translation>
 <translation id="2267753748892043616">Lägg till konto</translation>
@@ -265,7 +264,6 @@
 
 <ph name="BEGIN_LINK" />Återställ synkroniseringen<ph name="END_LINK" /> om du vill ändra den här inställningen.</translation>
 <translation id="4805759445554688327">Ogiltigt kortnummer</translation>
-<translation id="4807020197310989387">1 oläst artikel i läslistan.</translation>
 <translation id="4818522717893377262">Lägg till språk …</translation>
 <translation id="481968316161811770">Cookies, webbplatsdata</translation>
 <translation id="4833786495304741580">Skickar användningsstatistik och felrapporter till Google automatiskt.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Skannat</translation>
 <translation id="6859944681507688231">Aktivera kameran i inställningarna om du vill skanna en QR-kod eller ett kreditkort.</translation>
 <translation id="6873263987691478642">Delad vy</translation>
+<translation id="6888009575607455378">Vill du ignorera ändringarna?</translation>
 <translation id="6896758677409633944">Kopiera</translation>
 <translation id="6903907808598579934">Aktivera synkronisering</translation>
 <translation id="6914583639806229067">Sök efter kopierad bild</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sw.xtb b/ios/chrome/app/strings/resources/ios_strings_sw.xtb
index d10965c..5b4ddc0a 100644
--- a/ios/chrome/app/strings/resources/ios_strings_sw.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_sw.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Badilisha Alamisho</translation>
 <translation id="2179182049312275900">Unaweza kuwasha kipengele cha kusawazisha wakati wowote katika mipangilio.</translation>
 <translation id="2198757192731523470">Google inaweza kutumia historia yako ili kuweka mapendeleo kwenye huduma ya Tafuta na Google, matangazo na huduma nyingine za Google.</translation>
-<translation id="2207590065820824892">Hujasoma makala <ph name="UNREAD_COUNT" /> kwenye Orodha ya Kusoma.</translation>
 <translation id="2230173723195178503">Ukurasa wa Wavuti umepakiwa</translation>
 <translation id="2239626343334228536">Inafuta data ya kuvinjari...</translation>
 <translation id="2267753748892043616">Ongeza Akaunti</translation>
@@ -265,7 +264,6 @@
 
 Ili ubadilishe mipangilio hii, <ph name="BEGIN_LINK" />fanya usawazishaji upya<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Nambari ya Kadi si Sahihi</translation>
-<translation id="4807020197310989387">Hujasoma makala 1 kwenye Orodha ya Kusoma.</translation>
 <translation id="4818522717893377262">Ongeza Lugha...</translation>
 <translation id="481968316161811770">Data ya Vidakuzi na Tovuti</translation>
 <translation id="4833786495304741580">Hutuma kiotomatiki takwimu za matumizi na ripoti za programu kuacha kufanya kazi kwa Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Umechanganuliwa</translation>
 <translation id="6859944681507688231">Ili kuchanganua msimbo wa QR au kadi ya mikopo, washa kamera katika Mipangilio.</translation>
 <translation id="6873263987691478642">Mwonekano wa Madirisha Mawili</translation>
+<translation id="6888009575607455378">Je, una uhakika unataka kufuta mabadiliko uliyofanya?</translation>
 <translation id="6896758677409633944">Nakili</translation>
 <translation id="6903907808598579934">Washa kipengele cha kusawazisha</translation>
 <translation id="6914583639806229067">Tafuta Picha Uliyonakili</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ta.xtb b/ios/chrome/app/strings/resources/ios_strings_ta.xtb
index 34e1269..1d95b4c 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ta.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ta.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">புக்மார்க்கை மாற்றுக</translation>
 <translation id="2179182049312275900">அமைப்புகளில் ஒத்திசைவை எந்த நேரத்திலும் இயக்கலாம்.</translation>
 <translation id="2198757192731523470">தேடல், விளம்பரங்கள் மற்றும் பிற Google சேவைகளைத் தனிப்பயனாக்க, உங்கள் வரலாற்றை Google பயன்படுத்தக்கூடும்.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> படிக்கப்படாத வாசிப்புப் பட்டியல் கட்டுரைகள் உள்ளன.</translation>
 <translation id="2230173723195178503">இணையப் பக்கம் ஏற்றப்பட்டது</translation>
 <translation id="2239626343334228536">உலாவிய தரவை அழிக்கிறது...</translation>
 <translation id="2267753748892043616">கணக்கைச் சேர்</translation>
@@ -265,7 +264,6 @@
 
 இந்த அமைப்பை மாற்ற, <ph name="BEGIN_LINK" />ஒத்திசைவை மீட்டமைக்கவும்<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">தவறான கார்டு எண்</translation>
-<translation id="4807020197310989387">படிக்கப்படாத 1 வாசிப்புப் பட்டியல் கட்டுரை உள்ளது.</translation>
 <translation id="4818522717893377262">மொழியைச் சேர்...</translation>
 <translation id="481968316161811770">குக்கீகள், தளத் தரவு</translation>
 <translation id="4833786495304741580">தானாகவே பயன்பாட்டுப் புள்ளிவிவரங்களையும் சிதைவு அறிக்கைகளையும் Googleளுக்கு அனுப்பும்.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">ஸ்கேன் செய்யப்பட்டது</translation>
 <translation id="6859944681507688231">QR குறியீட்டையோ கிரெடிட் கார்டையோ ஸ்கேன் செய்ய அமைப்புகளில் கேமராவை இயக்கவும்.</translation>
 <translation id="6873263987691478642">காட்சிப் பிரிப்பு</translation>
+<translation id="6888009575607455378">நீங்கள் செய்த மாற்றங்களை நிச்சயமாக நிராகரிக்கவா?</translation>
 <translation id="6896758677409633944">நகலெடு</translation>
 <translation id="6903907808598579934">ஒத்திசைவை இயக்கு</translation>
 <translation id="6914583639806229067">நீங்கள் நகலெடுத்த படத்தைத் தேடுக</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_te.xtb b/ios/chrome/app/strings/resources/ios_strings_te.xtb
index fa4ffb4..aeb1a5e 100644
--- a/ios/chrome/app/strings/resources/ios_strings_te.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_te.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">బుక్‌మార్క్‌ను సవరించు</translation>
 <translation id="2179182049312275900">సింక్‌ను సెట్టింగ్‌లలో మీరు ఎప్పుడైనా ఆన్ చేయవచ్చు.</translation>
 <translation id="2198757192731523470">శోధన, ప్రకటనలు మరియు ఇతర Google సేవలను వ్యక్తిగతీకరించడానికి Google మీ చరిత్రను ఉపయోగించవచ్చు</translation>
-<translation id="2207590065820824892">చదవాల్సిన జాబితాలో <ph name="UNREAD_COUNT" /> కథనాలు ఉన్నాయి.</translation>
 <translation id="2230173723195178503">వెబ్‌పేజీ లోడ్ అయ్యింది</translation>
 <translation id="2239626343334228536">బ్రౌజింగ్ డేటాను తీసివేస్తోంది...</translation>
 <translation id="2267753748892043616">ఖాతాను జోడించు</translation>
@@ -265,7 +264,6 @@
 
 ఈ సెట్టింగ్‌ని మార్చడం కోసం, <ph name="BEGIN_LINK" />సమకాలీకరణను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">చెల్లని కార్డ్ నంబర్</translation>
-<translation id="4807020197310989387">చదవాల్సిన జాబితాలో 1 కథనం ఉంది.</translation>
 <translation id="4818522717893377262">భాషను జోడించు...</translation>
 <translation id="481968316161811770">కుక్కీలు, సైట్ డేటా</translation>
 <translation id="4833786495304741580">Googleకు ఆటోమేటిక్‌గా వినియోగ గణాంకాలు, క్రాష్ నివేదికలను పంపుతుంది.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">స్కాన్ చేయబడింది</translation>
 <translation id="6859944681507688231">QR కోడ్ లేదా క్రెడిట్ కార్డ్‌ను స్కాన్ చేయడానికి, సెట్టింగ్‌లలో కెమెరాను ప్రారంభించండి.</translation>
 <translation id="6873263987691478642">విభజన వీక్షణ</translation>
+<translation id="6888009575607455378">మీ మార్పులను మీరు ఖచ్చితంగా విస్మరించాలనుకుంటున్నారా?</translation>
 <translation id="6896758677409633944">కాపీ చేయి</translation>
 <translation id="6903907808598579934">సమకాలీకరణను ఆన్ చేయి</translation>
 <translation id="6914583639806229067">మీరు కాపీ చేసిన చిత్రాన్ని వెతకండి</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_th.xtb b/ios/chrome/app/strings/resources/ios_strings_th.xtb
index 6e682da1..001d9df 100644
--- a/ios/chrome/app/strings/resources/ios_strings_th.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_th.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">แก้ไขบุ๊กมาร์ก</translation>
 <translation id="2179182049312275900">คุณเปิดการซิงค์ได้ทุกเมื่อในการตั้งค่า</translation>
 <translation id="2198757192731523470">Google อาจใช้ประวัติของคุณเพื่อปรับเปลี่ยนการค้นหา โฆษณา และบริการอื่นๆ ของ Google ในแบบของคุณ</translation>
-<translation id="2207590065820824892">บทความในรายการเรื่องรออ่านที่ยังไม่อ่าน <ph name="UNREAD_COUNT" /> รายการ</translation>
 <translation id="2230173723195178503">หน้าเว็บโหลดแล้ว</translation>
 <translation id="2239626343334228536">กำลังล้างข้อมูลการท่องเว็บ...</translation>
 <translation id="2267753748892043616">เพิ่มบัญชี</translation>
@@ -265,7 +264,6 @@
 
 หากต้องการเปลี่ยนแปลงการตั้งค่านี้ ให้<ph name="BEGIN_LINK" />รีเซ็ตการซิงค์<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">หมายเลขบัตรไม่ถูกต้อง</translation>
-<translation id="4807020197310989387">บทความในรายการเรื่องรออ่านที่ยังไม่อ่าน 1 รายการ</translation>
 <translation id="4818522717893377262">เพิ่มภาษา...</translation>
 <translation id="481968316161811770">คุกกี้ ข้อมูลเว็บไซต์</translation>
 <translation id="4833786495304741580">ส่งสถิติการใช้งานและรายงานข้อขัดข้องให้กับ Google โดยอัตโนมัติ</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">สแกนแล้ว</translation>
 <translation id="6859944681507688231">หากต้องการสแกนคิวอาร์โค้ดหรือบัตรเครดิต ให้เปิดใช้กล้องถ่ายรูปจากการตั้งค่า</translation>
 <translation id="6873263987691478642">Split View</translation>
+<translation id="6888009575607455378">คุณแน่ใจไหมว่าต้องการทิ้งการเปลี่ยนแปลง</translation>
 <translation id="6896758677409633944">คัดลอก</translation>
 <translation id="6903907808598579934">เปิดการซิงค์</translation>
 <translation id="6914583639806229067">ค้นหารูปภาพที่คุณคัดลอก</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_tr.xtb b/ios/chrome/app/strings/resources/ios_strings_tr.xtb
index 03eeb0c..dd9c1c6 100644
--- a/ios/chrome/app/strings/resources/ios_strings_tr.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_tr.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Yer İşaretini Düzenle</translation>
 <translation id="2179182049312275900">Senkronizasyonu istediğiniz zaman ayarlardan açabilirsiniz</translation>
 <translation id="2198757192731523470">Google; Arama, reklamlar ve diğer Google hizmetlerini kişiselleştirmek için geçmişinizi kullanabilir</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> okunmamış Okuma Listesi makalesi.</translation>
 <translation id="2230173723195178503">Web sayfası yüklendi</translation>
 <translation id="2239626343334228536">Göz atma verileri temizleniyor...</translation>
 <translation id="2267753748892043616">Hesap Ekle</translation>
@@ -265,7 +264,6 @@
 
 Bu ayarı değiştirmek için <ph name="BEGIN_LINK" />senkronizasyonu sıfırlayın<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Geçersiz Kart Numarası</translation>
-<translation id="4807020197310989387">1 okunmamış Okuma Listesi makalesi.</translation>
 <translation id="4818522717893377262">Dil Ekle...</translation>
 <translation id="481968316161811770">Çerezler, Site Verileri</translation>
 <translation id="4833786495304741580">Kullanım istatistiklerini ve kilitlenme raporlarını Google'a otomatik olarak gönderir.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Tarandı</translation>
 <translation id="6859944681507688231">QR kodunu veya kredi kartını taramak için ayarlardan kamerayı etkinleştirin.</translation>
 <translation id="6873263987691478642">Bölünmüş Görünüm</translation>
+<translation id="6888009575607455378">Değişikliklerinizi iptal etmek istediğinizden emin misiniz?</translation>
 <translation id="6896758677409633944">Kopyala</translation>
 <translation id="6903907808598579934">Senkronizasyonu aç</translation>
 <translation id="6914583639806229067">Kopyalanan Metni Ara</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_uk.xtb b/ios/chrome/app/strings/resources/ios_strings_uk.xtb
index ce238666..3d50242 100644
--- a/ios/chrome/app/strings/resources/ios_strings_uk.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_uk.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Редагувати закладку</translation>
 <translation id="2179182049312275900">Ви можете будь-коли ввімкнути синхронізацію в налаштуваннях.</translation>
 <translation id="2198757192731523470">Ваша історія може допомогти нам персоналізувати Пошук, оголошення й інші сервіси Google.</translation>
-<translation id="2207590065820824892">Непрочитаних статей у списку читання: <ph name="UNREAD_COUNT" />.</translation>
 <translation id="2230173723195178503">Веб-сторінку завантажено</translation>
 <translation id="2239626343334228536">Очищення даних веб-перегляду…</translation>
 <translation id="2267753748892043616">Додати обліковий запис</translation>
@@ -265,7 +264,6 @@
 
 Щоб змінити це налаштування, <ph name="BEGIN_LINK" />скиньте параметри синхронізації<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Недійсний номер картки</translation>
-<translation id="4807020197310989387">1 непрочитана стаття в списку читання.</translation>
 <translation id="4818522717893377262">Додати мову…</translation>
 <translation id="481968316161811770">Файли cookie й дані із сайтів</translation>
 <translation id="4833786495304741580">Автоматично надсилає статистику використання та звіти про аварійне завершення роботи в Google.</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">Зіскановано</translation>
 <translation id="6859944681507688231">Щоб відсканувати QR-код або кредитну картку, увімкніть камеру в налаштуваннях.</translation>
 <translation id="6873263987691478642">Режим розділеного екрана</translation>
+<translation id="6888009575607455378">Відхилити зміни?</translation>
 <translation id="6896758677409633944">Копіювати</translation>
 <translation id="6903907808598579934">Увімкнути синхронізацію</translation>
 <translation id="6914583639806229067">Шукати скопійоване зображення</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_vi.xtb b/ios/chrome/app/strings/resources/ios_strings_vi.xtb
index 4ac5928..2b36d29 100644
--- a/ios/chrome/app/strings/resources/ios_strings_vi.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_vi.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">Chỉnh sửa dấu trang</translation>
 <translation id="2179182049312275900">Bạn có thể bật tính năng đồng bộ hóa bất cứ lúc nào trong phần cài đặt.</translation>
 <translation id="2198757192731523470">Google có thể sử dụng lịch sử của bạn để cá nhân hóa tính năng Tìm kiếm, quảng cáo và các dịch vụ khác của Google.</translation>
-<translation id="2207590065820824892"><ph name="UNREAD_COUNT" /> bài viết chưa đọc trong Danh sách đọc.</translation>
 <translation id="2230173723195178503">Đã tải trang web</translation>
 <translation id="2239626343334228536">Đang xóa dữ liệu duyệt web...</translation>
 <translation id="2267753748892043616">Thêm tài khoản</translation>
@@ -265,7 +264,6 @@
 
 Để thay đổi tùy chọn cài đặt này, hãy <ph name="BEGIN_LINK" />đặt lại tính năng đồng bộ hóa<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">Số thẻ không hợp lệ</translation>
-<translation id="4807020197310989387">1 bài viết chưa đọc trong Danh sách đọc.</translation>
 <translation id="4818522717893377262">Thêm ngôn ngữ...</translation>
 <translation id="481968316161811770">Cookie, Dữ liệu trang web</translation>
 <translation id="4833786495304741580">Tự động gửi số liệu thống kê sử dụng và báo cáo sự cố cho Google.</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb b/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb
index 5bb9f69b..e49bfdc 100644
--- a/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">修改书签</translation>
 <translation id="2179182049312275900">您随时可在“设置”中开启同步功能。</translation>
 <translation id="2198757192731523470">Google 可能会利用您的历史记录为您提供个性化的 Google 搜索、广告和其他 Google 服务。</translation>
-<translation id="2207590065820824892">阅读清单中有 <ph name="UNREAD_COUNT" /> 篇未读文章。</translation>
 <translation id="2230173723195178503">已加载网页</translation>
 <translation id="2239626343334228536">正在清除浏览数据…</translation>
 <translation id="2267753748892043616">添加帐号</translation>
@@ -265,7 +264,6 @@
 
 要更改此设置,请<ph name="BEGIN_LINK" />重置同步设置<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">卡号无效</translation>
-<translation id="4807020197310989387">阅读清单中有 1 篇未读文章。</translation>
 <translation id="4818522717893377262">添加语言…</translation>
 <translation id="481968316161811770">Cookie 和网站数据</translation>
 <translation id="4833786495304741580">自动将使用情况统计信息和崩溃报告发送至 Google。</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">已扫描</translation>
 <translation id="6859944681507688231">要扫描二维码或信用卡,请在设置中允许该应用使用相机。</translation>
 <translation id="6873263987691478642">拆分视图</translation>
+<translation id="6888009575607455378">确定要舍弃您所做的更改吗?</translation>
 <translation id="6896758677409633944">复制</translation>
 <translation id="6903907808598579934">开启同步功能</translation>
 <translation id="6914583639806229067">搜索您复制的图片</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_zh-TW.xtb b/ios/chrome/app/strings/resources/ios_strings_zh-TW.xtb
index 6bf0463..41da3d1 100644
--- a/ios/chrome/app/strings/resources/ios_strings_zh-TW.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_zh-TW.xtb
@@ -92,7 +92,6 @@
 <translation id="2149973817440762519">編輯書籤</translation>
 <translation id="2179182049312275900">你隨時可以在設定中開啟同步功能。</translation>
 <translation id="2198757192731523470">Google 可能會使用你的歷史記錄,為你提供個人化的搜尋服務、廣告內容和其他各項 Google 服務。</translation>
-<translation id="2207590065820824892">閱讀清單中有 <ph name="UNREAD_COUNT" /> 篇未讀文章。</translation>
 <translation id="2230173723195178503">已載入網頁</translation>
 <translation id="2239626343334228536">正在清除瀏覽資料...</translation>
 <translation id="2267753748892043616">新增帳戶</translation>
@@ -265,7 +264,6 @@
 
 如要變更這項設定,請<ph name="BEGIN_LINK" />重設同步功能<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">卡號無效</translation>
-<translation id="4807020197310989387">閱讀清單中有 1 篇未讀文章。</translation>
 <translation id="4818522717893377262">新增語言...</translation>
 <translation id="481968316161811770">Cookie、網站資料</translation>
 <translation id="4833786495304741580">自動將使用統計資料和當機報告傳送給 Google。</translation>
@@ -414,6 +412,7 @@
 <translation id="6858855187367714033">已掃描</translation>
 <translation id="6859944681507688231">如要掃描 QR 圖碼或信用卡,請在設定中啟用相機。</translation>
 <translation id="6873263987691478642">分割檢視</translation>
+<translation id="6888009575607455378">確定要捨棄變更嗎?</translation>
 <translation id="6896758677409633944">複製</translation>
 <translation id="6903907808598579934">開啟同步處理功能</translation>
 <translation id="6914583639806229067">搜尋你複製的圖片</translation>
diff --git a/ios/chrome/browser/metrics/tab_usage_recorder_egtest.mm b/ios/chrome/browser/metrics/tab_usage_recorder_egtest.mm
index c5c99424..b99c647 100644
--- a/ios/chrome/browser/metrics/tab_usage_recorder_egtest.mm
+++ b/ios/chrome/browser/metrics/tab_usage_recorder_egtest.mm
@@ -48,6 +48,7 @@
 using chrome_test_util::WebViewMatcher;
 
 using tab_usage_recorder_test_util::OpenNewIncognitoTabUsingUIAndEvictMainTabs;
+using tab_usage_recorder_test_util::RemoveBrowsingCacheForMainTabs;
 using tab_usage_recorder_test_util::SwitchToNormalMode;
 
 namespace {
@@ -63,6 +64,10 @@
 // The delay to use to serve slow URLs.
 const CGFloat kSlowURLDelay = 3;
 
+// The delay to use to serve very slow URLS -- tests using this delay expect the
+// page to never load.
+const CGFloat kVerySlowURLDelay = 20;
+
 // The delay to wait for an element to appear before tapping on it.
 const CGFloat kWaitElementTimeout = 3;
 
@@ -409,8 +414,7 @@
 
 // Test that the USER_DID_NOT_WAIT metric is logged when the user opens an NTP
 // while the evicted tab is still reloading.
-// TODO(crbug.com/1011336) This test is flaky.
-- (void)DISABLED_testEvictedTabReloadSwitchToNTP {
+- (void)testEvictedTabReloadSwitchToNTP {
   std::map<GURL, std::string> responses;
   const GURL slowURL = web::test::HttpServer::MakeUrl("http://slow");
   responses[slowURL] = "Slow Page";
@@ -428,7 +432,10 @@
                  @"Failed to open Incognito Tab");
 
   web::test::SetUpHttpServer(std::make_unique<web::DelayedResponseProvider>(
-      std::make_unique<HtmlResponseProvider>(responses), kSlowURLDelay));
+      std::make_unique<HtmlResponseProvider>(responses), kVerySlowURLDelay));
+
+  GREYAssertTrue(RemoveBrowsingCacheForMainTabs(),
+                 @"Failed to clear cache for main tabs");
 
   SwitchToNormalMode();
 
@@ -489,8 +496,7 @@
 
 // Tests that leaving Chrome while an evicted tab is reloading triggers the
 // recording of the USER_LEFT_CHROME metric.
-// TODO(crbug.com/1011336) This test is flaky.
-- (void)DISABLED_testEvictedTabReloadBackgrounded {
+- (void)testEvictedTabReloadBackgrounded {
   std::map<GURL, std::string> responses;
   const GURL slowURL = web::test::HttpServer::MakeUrl("http://slow");
   responses[slowURL] = "Slow Page";
@@ -504,7 +510,11 @@
                  @"Failed to open Incognito Tab");
 
   web::test::SetUpHttpServer(std::make_unique<web::DelayedResponseProvider>(
-      std::make_unique<HtmlResponseProvider>(responses), kSlowURLDelay));
+      std::make_unique<HtmlResponseProvider>(responses), kVerySlowURLDelay));
+
+  GREYAssertTrue(RemoveBrowsingCacheForMainTabs(),
+                 @"Failed to clear cache for main tabs");
+
   SwitchToNormalMode();
 
   // Letting page load start.
diff --git a/ios/chrome/browser/metrics/tab_usage_recorder_test_util.h b/ios/chrome/browser/metrics/tab_usage_recorder_test_util.h
index 7ff4d42..44cb875 100644
--- a/ios/chrome/browser/metrics/tab_usage_recorder_test_util.h
+++ b/ios/chrome/browser/metrics/tab_usage_recorder_test_util.h
@@ -15,6 +15,9 @@
 // Returns false on failure.
 bool OpenNewIncognitoTabUsingUIAndEvictMainTabs() WARN_UNUSED_RESULT;
 
+// Removes browsing cache for main tabs. Returns false on failure.
+bool RemoveBrowsingCacheForMainTabs() WARN_UNUSED_RESULT;
+
 // Switches to normal mode using the tab switcher and selects the
 // previously-selected normal tab. Assumes current mode is Incognito.
 // Induces EG assert on failure.
diff --git a/ios/chrome/browser/metrics/tab_usage_recorder_test_util.mm b/ios/chrome/browser/metrics/tab_usage_recorder_test_util.mm
index 142e231..a546668 100644
--- a/ios/chrome/browser/metrics/tab_usage_recorder_test_util.mm
+++ b/ios/chrome/browser/metrics/tab_usage_recorder_test_util.mm
@@ -78,6 +78,28 @@
   return true;
 }
 
+bool RemoveBrowsingCacheForMainTabs() {
+  __block BOOL caches_cleared = NO;
+  [chrome_test_util::GetMainController()
+      removeBrowsingDataForBrowserState:chrome_test_util::
+                                            GetOriginalBrowserState()
+                             timePeriod:browsing_data::TimePeriod::ALL_TIME
+                             removeMask:BrowsingDataRemoveMask::
+                                            REMOVE_CACHE_STORAGE
+                        completionBlock:^{
+                          caches_cleared = YES;
+                        }];
+
+  GREYCondition* condition =
+      [GREYCondition conditionWithName:@"Wait for clearing caches."
+                                 block:^BOOL {
+                                   return caches_cleared;
+                                 }];
+  GREYAssert([condition waitWithTimeout:20], @"Caches were not cleared.");
+
+  return true;
+}
+
 void SwitchToNormalMode() {
   GREYAssertTrue([ChromeEarlGrey isIncognitoMode],
                  @"Switching to normal mode is only allowed from Incognito.");
diff --git a/ios/chrome/browser/ui/infobars/BUILD.gn b/ios/chrome/browser/ui/infobars/BUILD.gn
index 820ac08..4dd1402f 100644
--- a/ios/chrome/browser/ui/infobars/BUILD.gn
+++ b/ios/chrome/browser/ui/infobars/BUILD.gn
@@ -37,6 +37,14 @@
   ]
 }
 
+source_set("constants") {
+  configs += [ "//build/config/compiler:enable_arc" ]
+  sources = [
+    "infobar_constants.h",
+    "infobar_constants.mm",
+  ]
+}
+
 source_set("feature_flags") {
   configs += [ "//build/config/compiler:enable_arc" ]
   sources = [
@@ -54,8 +62,6 @@
     "confirm_infobar_view.h",
     "confirm_infobar_view.mm",
     "infobar_badge_ui_delegate.h",
-    "infobar_constants.h",
-    "infobar_constants.mm",
     "infobar_container_consumer.h",
     "infobar_ui_delegate.h",
     "legacy_infobar_container_view_controller.h",
@@ -89,6 +95,9 @@
     "//ui/gfx",
     "//url",
   ]
+  public_deps = [
+    ":constants",
+  ]
   libs = [
     "CoreGraphics.framework",
     "QuartzCore.framework",
diff --git a/ios/chrome/browser/web/navigation_egtest.mm b/ios/chrome/browser/web/navigation_egtest.mm
index ad235db9..0778af3 100644
--- a/ios/chrome/browser/web/navigation_egtest.mm
+++ b/ios/chrome/browser/web/navigation_egtest.mm
@@ -559,15 +559,14 @@
 
 // Tests that navigating forward from a WebUI URL works when resuming from
 // session restore. This is a regression test for https://crbug.com/814790.
-// TODO(crbug.com/1011791): Test disabled.
-- (void)DISABLED_testRestoreHistoryToWebUIAndNavigateForward {
+- (void)testRestoreHistoryToWebUIAndNavigateForward {
   GREYAssertTrue(self.testServer->Start(), @"Test server failed to start.");
   const GURL destinationURL = self.testServer->GetURL(kSimpleFileBasedTestURL);
   [ChromeEarlGrey loadURL:GURL("chrome://version")];
   [ChromeEarlGrey loadURL:destinationURL];
   [ChromeEarlGrey goBack];
 
-  [ChromeEarlGrey purgeCachedWebViewPages];
+  [ChromeEarlGrey triggerRestoreViaTabGridRemoveAllUndo];
 
   [ChromeEarlGrey waitForWebStateContainingText:"Revision"];
   [[EarlGrey selectElementWithMatcher:OmniboxText("chrome://version")]
@@ -580,14 +579,13 @@
 
 // Tests that navigating forward from NTP works when resuming from session
 // restore. This is a regression test for https://crbug.com/814790.
-// TODO(crbug.com/1011791): Test disabled.
-- (void)DISABLED_testRestoreHistoryToNTPAndNavigateForward {
+- (void)testRestoreHistoryToNTPAndNavigateForward {
   GREYAssertTrue(self.testServer->Start(), @"Test server failed to start.");
   const GURL destinationURL = self.testServer->GetURL(kSimpleFileBasedTestURL);
   [ChromeEarlGrey loadURL:destinationURL];
   [ChromeEarlGrey goBack];
 
-  [ChromeEarlGrey purgeCachedWebViewPages];
+  [ChromeEarlGrey triggerRestoreViaTabGridRemoveAllUndo];
 
   [ChromeEarlGrey goForward];
   [ChromeEarlGrey waitForWebStateContainingText:"pony"];
diff --git a/ios/chrome/test/earl_grey/chrome_earl_grey.h b/ios/chrome/test/earl_grey/chrome_earl_grey.h
index 7d22bad..10a4121aa 100644
--- a/ios/chrome/test/earl_grey/chrome_earl_grey.h
+++ b/ios/chrome/test/earl_grey/chrome_earl_grey.h
@@ -312,6 +312,10 @@
 // Cache-Control response header says otherwise.
 - (void)purgeCachedWebViewPages;
 
+// Simulators background, killing, and restoring the app within the limitations
+// of EG1, by simply doing a tab grid close all / undo / done.
+- (void)triggerRestoreViaTabGridRemoveAllUndo;
+
 #pragma mark - Bookmarks Utilities (EG2)
 
 // Waits for the bookmark internal state to be done loading.
diff --git a/ios/chrome/test/earl_grey/chrome_earl_grey.mm b/ios/chrome/test/earl_grey/chrome_earl_grey.mm
index b5cecb7..391aa0e 100644
--- a/ios/chrome/test/earl_grey/chrome_earl_grey.mm
+++ b/ios/chrome/test/earl_grey/chrome_earl_grey.mm
@@ -11,6 +11,7 @@
 #include "base/strings/sys_string_conversions.h"
 #import "base/test/ios/wait_util.h"
 #import "ios/chrome/test/earl_grey/chrome_earl_grey_app_interface.h"
+#import "ios/chrome/test/earl_grey/chrome_matchers.h"
 #import "ios/testing/earl_grey/earl_grey_test.h"
 #import "ios/testing/nserror_util.h"
 #include "ios/web/public/test/element_selector.h"
@@ -409,6 +410,20 @@
   [self waitForPageToFinishLoading];
 }
 
+- (void)triggerRestoreViaTabGridRemoveAllUndo {
+  [[EarlGrey selectElementWithMatcher:chrome_test_util::ShowTabsButton()]
+      performAction:grey_tap()];
+  [[EarlGrey selectElementWithMatcher:chrome_test_util::TabGridCloseAllButton()]
+      performAction:grey_tap()];
+  [[EarlGrey
+      selectElementWithMatcher:chrome_test_util::TabGridUndoCloseAllButton()]
+      performAction:grey_tap()];
+  [[EarlGrey selectElementWithMatcher:chrome_test_util::TabGridDoneButton()]
+      performAction:grey_tap()];
+  [self waitForRestoreSessionToFinish];
+  [self waitForPageToFinishLoading];
+}
+
 #pragma mark - Settings Utilities (EG2)
 
 - (void)setContentSettings:(ContentSetting)setting {
diff --git a/media/base/key_system_properties.h b/media/base/key_system_properties.h
index 72f59f8..c61b903 100644
--- a/media/base/key_system_properties.h
+++ b/media/base/key_system_properties.h
@@ -33,7 +33,10 @@
   // Returns the codecs supported by this key system.
   virtual SupportedCodecs GetSupportedCodecs() const = 0;
 
-  // Returns the codecs with hardware-secure support in this key system.
+  // Returns the codecs can be used with the hardware-secure mode of this key
+  // system. The codecs may be supported with any hardware-based robustness
+  // level. Other parts of the code handle reporting appropriate levels of
+  // robustness support for audio and video.
   virtual SupportedCodecs GetSupportedHwSecureCodecs() const;
 
   // Returns the configuration rule for supporting a robustness requirement.
diff --git a/media/base/key_systems.cc b/media/base/key_systems.cc
index a85513f..82c00b09 100644
--- a/media/base/key_systems.cc
+++ b/media/base/key_systems.cc
@@ -686,9 +686,9 @@
       return EmeConfigRule::NOT_SUPPORTED;
     }
 
-    // Check whether the codec supports a hardware-secure mode. The goal is to
-    // prevent mixing of non-hardware-secure codecs with hardware-secure codecs,
-    // since the mode is fixed at CDM creation.
+    // Check whether the codec supports a hardware-secure mode (any level). The
+    // goal is to prevent mixing of non-hardware-secure codecs with
+    // hardware-secure codecs, since the mode is fixed at CDM creation.
     //
     // Because the check for regular codec support is early-exit, we don't have
     // to consider codecs that are only supported in hardware-secure mode. We
diff --git a/media/filters/decrypting_demuxer_stream.h b/media/filters/decrypting_demuxer_stream.h
index 085995bd..a93011c1 100644
--- a/media/filters/decrypting_demuxer_stream.h
+++ b/media/filters/decrypting_demuxer_stream.h
@@ -40,7 +40,7 @@
   // Cancels all pending operations immediately and fires all pending callbacks.
   ~DecryptingDemuxerStream() override;
 
-  // |steram| must be encrypted and |cdm_context| must be non-null.
+  // |stream| must be encrypted and |cdm_context| must be non-null.
   void Initialize(DemuxerStream* stream,
                   CdmContext* cdm_context,
                   const PipelineStatusCB& status_cb);
diff --git a/media/gpu/test/video_player/video_player_test_environment.cc b/media/gpu/test/video_player/video_player_test_environment.cc
index d9b793d..11715f8 100644
--- a/media/gpu/test/video_player/video_player_test_environment.cc
+++ b/media/gpu/test/video_player/video_player_test_environment.cc
@@ -63,7 +63,8 @@
   // support import mode.
 #if defined(OS_CHROMEOS)
   constexpr const char* kImportModeBlacklist[] = {
-      "buddy", "guado", "nyan_big", "nyan_blaze", "nyan_kitty", "rikku"};
+      "buddy",      "guado", "guado-kernelnext", "nyan_big", "nyan_blaze",
+      "nyan_kitty", "rikku"};
   const std::string board = base::SysInfo::GetLsbReleaseBoard();
   import_supported_ = (std::find(std::begin(kImportModeBlacklist),
                                  std::end(kImportModeBlacklist),
diff --git a/media/gpu/windows/d3d11_decryptor.cc b/media/gpu/windows/d3d11_decryptor.cc
index e03346ec..d72b183b 100644
--- a/media/gpu/windows/d3d11_decryptor.cc
+++ b/media/gpu/windows/d3d11_decryptor.cc
@@ -142,7 +142,7 @@
 
 void D3D11Decryptor::RegisterNewKeyCB(StreamType stream_type,
                                       const NewKeyCB& new_key_cb) {
-  // TODO(xhwang): Use RegisterNewKeyCB() on CdmContext, and remove
+  // TODO(crbug.com/821288): Use RegisterNewKeyCB() on CdmContext, and remove
   // RegisterNewKeyCB from Decryptor interface.
   NOTREACHED();
 }
diff --git a/net/cookies/canonical_cookie.cc b/net/cookies/canonical_cookie.cc
index 01589cb..a07da11 100644
--- a/net/cookies/canonical_cookie.cc
+++ b/net/cookies/canonical_cookie.cc
@@ -417,7 +417,8 @@
 
 CanonicalCookie::CookieInclusionStatus CanonicalCookie::IncludeForRequestURL(
     const GURL& url,
-    const CookieOptions& options) const {
+    const CookieOptions& options,
+    CookieAccessSemantics access_semantics) const {
   base::TimeDelta cookie_age = base::Time::Now() - CreationDate();
   CookieInclusionStatus status;
   // Filter out HttpOnly cookies, per options.
@@ -435,7 +436,8 @@
   if (!IsOnPath(url.path()))
     status.AddExclusionReason(CookieInclusionStatus::EXCLUDE_NOT_ON_PATH);
   // Don't include same-site cookies for cross-site requests.
-  CookieEffectiveSameSite effective_same_site = GetEffectiveSameSite();
+  CookieEffectiveSameSite effective_same_site =
+      GetEffectiveSameSite(access_semantics);
   // Log the effective SameSite mode that is applied to the cookie on this
   // request, if its SameSite was not specified.
   if (SameSite() == CookieSameSite::UNSPECIFIED) {
@@ -502,12 +504,15 @@
   // ignored. This can apply to cookies which were created before the
   // experimental options were enabled (as non-SameSite, insecure cookies cannot
   // be set while the options are on).
-  if (cookie_util::IsCookiesWithoutSameSiteMustBeSecureEnabled() &&
-      IsEffectivelySameSiteNone() && !IsSecure()) {
+  if (access_semantics != CookieAccessSemantics::LEGACY &&
+      cookie_util::IsCookiesWithoutSameSiteMustBeSecureEnabled() &&
+      SameSite() == CookieSameSite::NO_RESTRICTION && !IsSecure()) {
     status.AddExclusionReason(
         CookieInclusionStatus::EXCLUDE_SAMESITE_NONE_INSECURE);
   }
 
+  // TODO(chlily): Apply warning if SameSite-by-default is enabled but
+  // access_semantics is LEGACY?
   ApplySameSiteCookieWarningToStatus(
       SameSite(), effective_same_site, IsSecure(),
       options.same_site_cookie_context(), &status);
@@ -517,7 +522,8 @@
 }
 
 CanonicalCookie::CookieInclusionStatus CanonicalCookie::IsSetPermittedInContext(
-    const CookieOptions& options) const {
+    const CookieOptions& options,
+    CookieAccessSemantics access_semantics) const {
   CookieInclusionStatus status;
   if (options.exclude_httponly() && IsHttpOnly()) {
     DVLOG(net::cookie_util::kVlogSetCookies)
@@ -525,7 +531,8 @@
     status.AddExclusionReason(CookieInclusionStatus::EXCLUDE_HTTP_ONLY);
   }
 
-  CookieEffectiveSameSite effective_same_site = GetEffectiveSameSite();
+  CookieEffectiveSameSite effective_same_site =
+      GetEffectiveSameSite(access_semantics);
   switch (effective_same_site) {
     case CookieEffectiveSameSite::STRICT_MODE:
       // This intentionally checks for `< SAME_SITE_LAX`, as we allow
@@ -626,13 +633,15 @@
   return true;
 }
 
-bool CanonicalCookie::IsEffectivelySameSiteNone() const {
-  return GetEffectiveSameSite() == CookieEffectiveSameSite::NO_RESTRICTION;
+bool CanonicalCookie::IsEffectivelySameSiteNone(
+    CookieAccessSemantics access_semantics) const {
+  return GetEffectiveSameSite(access_semantics) ==
+         CookieEffectiveSameSite::NO_RESTRICTION;
 }
 
-CookieEffectiveSameSite CanonicalCookie::GetEffectiveSameSiteForTesting()
-    const {
-  return GetEffectiveSameSite();
+CookieEffectiveSameSite CanonicalCookie::GetEffectiveSameSiteForTesting(
+    CookieAccessSemantics access_semantics) const {
+  return GetEffectiveSameSite(access_semantics);
 }
 
 // static
@@ -710,17 +719,27 @@
   return true;
 }
 
-CookieEffectiveSameSite CanonicalCookie::GetEffectiveSameSite() const {
+CookieEffectiveSameSite CanonicalCookie::GetEffectiveSameSite(
+    CookieAccessSemantics access_semantics) const {
   base::TimeDelta lax_allow_unsafe_threshold_age =
       base::FeatureList::IsEnabled(features::kShortLaxAllowUnsafeThreshold)
           ? kShortLaxAllowUnsafeMaxAge
           : kLaxAllowUnsafeMaxAge;
+
+  bool should_apply_same_site_lax_by_default =
+      cookie_util::IsSameSiteByDefaultCookiesEnabled();
+  if (access_semantics == CookieAccessSemantics::LEGACY) {
+    should_apply_same_site_lax_by_default = false;
+  } else if (access_semantics == CookieAccessSemantics::NONLEGACY) {
+    should_apply_same_site_lax_by_default = true;
+  }
+
   switch (SameSite()) {
     // If a cookie does not have a SameSite attribute, the effective SameSite
     // mode depends on the SameSiteByDefaultCookies setting and whether the
     // cookie is recently-created.
     case CookieSameSite::UNSPECIFIED:
-      return cookie_util::IsSameSiteByDefaultCookiesEnabled()
+      return should_apply_same_site_lax_by_default
                  ? (IsRecentlyCreated(lax_allow_unsafe_threshold_age)
                         ? CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE
                         : CookieEffectiveSameSite::LAX_MODE)
diff --git a/net/cookies/canonical_cookie.h b/net/cookies/canonical_cookie.h
index 007a3a6..3385122c 100644
--- a/net/cookies/canonical_cookie.h
+++ b/net/cookies/canonical_cookie.h
@@ -174,7 +174,9 @@
   // method does not check whether a cookie is expired or not!
   CookieInclusionStatus IncludeForRequestURL(
       const GURL& url,
-      const CookieOptions& options) const;
+      const CookieOptions& options,
+      CookieAccessSemantics access_semantics =
+          CookieAccessSemantics::UNKNOWN) const;
 
   // Returns if the cookie with given attributes can be set in context described
   // by |options|, and if no, describes why.
@@ -182,7 +184,9 @@
   // a secure schema, since whether the schema is secure isn't part of
   // |options|.
   CookieInclusionStatus IsSetPermittedInContext(
-      const CookieOptions& options) const;
+      const CookieOptions& options,
+      CookieAccessSemantics access_semantics =
+          CookieAccessSemantics::UNKNOWN) const;
 
   std::string DebugString() const;
 
@@ -218,9 +222,12 @@
 
   // Returns whether the effective SameSite mode is SameSite=None (i.e. no
   // SameSite restrictions).
-  bool IsEffectivelySameSiteNone() const;
+  bool IsEffectivelySameSiteNone(CookieAccessSemantics access_semantics =
+                                     CookieAccessSemantics::UNKNOWN) const;
 
-  CookieEffectiveSameSite GetEffectiveSameSiteForTesting() const;
+  CookieEffectiveSameSite GetEffectiveSameSiteForTesting(
+      CookieAccessSemantics access_semantics =
+          CookieAccessSemantics::UNKNOWN) const;
 
   // Returns the cookie line (e.g. "cookie1=value1; cookie2=value2") represented
   // by |cookies|. The string is built in the same order as the given list.
@@ -263,13 +270,15 @@
 
   // Returns the effective SameSite mode to apply to this cookie. Depends on the
   // value of the given SameSite attribute and whether the
-  // SameSiteByDefaultCookies feature is enabled.
+  // SameSiteByDefaultCookies feature is enabled, as well as the access
+  // semantics of the cookie.
   // Note: If you are converting to a different representation of a cookie, you
   // probably want to use SameSite() instead of this method. Otherwise, if you
   // are considering using this method, consider whether you should use
   // IncludeForRequestURL() or IsSetPermittedInContext() instead of doing the
   // SameSite computation yourself.
-  CookieEffectiveSameSite GetEffectiveSameSite() const;
+  CookieEffectiveSameSite GetEffectiveSameSite(
+      CookieAccessSemantics access_semantics) const;
 
   // Returns whether the cookie was created at most |age_threshold| ago.
   bool IsRecentlyCreated(base::TimeDelta age_threshold) const;
diff --git a/net/cookies/canonical_cookie_unittest.cc b/net/cookies/canonical_cookie_unittest.cc
index 2a6dd2fb..0b45d5d 100644
--- a/net/cookies/canonical_cookie_unittest.cc
+++ b/net/cookies/canonical_cookie_unittest.cc
@@ -438,198 +438,146 @@
   EXPECT_TRUE(cookie->IsOnPath("/test/sample/bar.html"));
 }
 
+struct EffectiveSameSiteTestCase {
+  CookieSameSite same_site;
+  CookieEffectiveSameSite effective_same_site;
+  CookieAccessSemantics access_semantics;
+};
+
+void VerifyEffectiveSameSiteTestCases(
+    base::Time creation_time,
+    base::Time expiry_time,
+    bool is_samesite_by_default_enabled,
+    std::vector<EffectiveSameSiteTestCase> test_cases) {
+  base::test::ScopedFeatureList feature_list;
+  if (is_samesite_by_default_enabled) {
+    feature_list.InitAndEnableFeature(features::kSameSiteByDefaultCookies);
+  } else {
+    feature_list.InitAndDisableFeature(features::kSameSiteByDefaultCookies);
+  }
+
+  for (const auto& test_case : test_cases) {
+    CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
+                           expiry_time, base::Time(), true /* secure */,
+                           false /* httponly */, test_case.same_site,
+                           COOKIE_PRIORITY_DEFAULT);
+    EXPECT_EQ(
+        test_case.effective_same_site,
+        cookie.GetEffectiveSameSiteForTesting(test_case.access_semantics));
+  }
+}
+
 TEST(CanonicalCookieTest, GetEffectiveSameSite) {
-  struct EffectiveSameSiteTestCase {
-    CookieSameSite same_site;
-    CookieEffectiveSameSite effective_same_site;
-  };
+  // Test cases that are always the same, regardless of time or
+  // SameSite-by-default feature status.
+  const std::vector<EffectiveSameSiteTestCase> common_test_cases = {
+      // Explicitly specified SameSite always has the same effective SameSite
+      // regardless of the access semantics.
+      {CookieSameSite::NO_RESTRICTION, CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieAccessSemantics::UNKNOWN},
+      {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::UNKNOWN},
+      {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE,
+       CookieAccessSemantics::UNKNOWN},
+      {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::UNKNOWN},
+      {CookieSameSite::NO_RESTRICTION, CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieAccessSemantics::LEGACY},
+      {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::LEGACY},
+      {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE,
+       CookieAccessSemantics::LEGACY},
+      {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::LEGACY},
+      {CookieSameSite::NO_RESTRICTION, CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieAccessSemantics::NONLEGACY},
+      {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::NONLEGACY},
+      {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE,
+       CookieAccessSemantics::NONLEGACY},
+      {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::NONLEGACY},
+      // UNSPECIFIED always maps to NO_RESTRICTION if LEGACY access semantics.
+      {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieAccessSemantics::LEGACY}};
+
+  // Test cases that differ based on access semantics, feature status, and
+  // whether cookie is recently created:
+
+  std::vector<EffectiveSameSiteTestCase> enabled_recent_test_cases = {
+      {CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
+       CookieAccessSemantics::UNKNOWN},
+      {CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
+       CookieAccessSemantics::NONLEGACY}};
+
+  std::vector<EffectiveSameSiteTestCase> enabled_not_recent_test_cases = {
+      {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::UNKNOWN},
+      {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::NONLEGACY}};
+
+  std::vector<EffectiveSameSiteTestCase> disabled_recent_test_cases = {
+      {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieAccessSemantics::UNKNOWN},
+      {CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
+       CookieAccessSemantics::NONLEGACY}};
+
+  std::vector<EffectiveSameSiteTestCase> disabled_not_recent_test_cases = {
+      {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieAccessSemantics::UNKNOWN},
+      {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE,
+       CookieAccessSemantics::NONLEGACY}};
 
   // Test GetEffectiveSameSite for recently created cookies
   // Session cookie created less than kLaxAllowUnsafeMaxAge ago.
   base::Time now = base::Time::Now();
   base::Time creation_time = now - (kLaxAllowUnsafeMaxAge / 4);
-  {
-    base::test::ScopedFeatureList feature_list;
-    feature_list.InitAndDisableFeature(features::kSameSiteByDefaultCookies);
-
-    const EffectiveSameSiteTestCase test_cases[] = {
-        {CookieSameSite::NO_RESTRICTION,
-         CookieEffectiveSameSite::NO_RESTRICTION},
-        {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE},
-        {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::NO_RESTRICTION}};
-
-    for (const auto& test_case : test_cases) {
-      CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
-                             base::Time(), base::Time(), true /* secure */,
-                             false /* httponly */, test_case.same_site,
-                             COOKIE_PRIORITY_DEFAULT);
-      EXPECT_EQ(test_case.effective_same_site,
-                cookie.GetEffectiveSameSiteForTesting());
-    }
-  }
-  {
-    base::test::ScopedFeatureList feature_list;
-    feature_list.InitAndEnableFeature(features::kSameSiteByDefaultCookies);
-
-    const EffectiveSameSiteTestCase test_cases[] = {
-        {CookieSameSite::NO_RESTRICTION,
-         CookieEffectiveSameSite::NO_RESTRICTION},
-        {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE},
-        {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::UNSPECIFIED,
-         CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE}};
-
-    for (const auto& test_case : test_cases) {
-      CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
-                             base::Time(), base::Time(), true /* secure */,
-                             false /* httponly */, test_case.same_site,
-                             COOKIE_PRIORITY_DEFAULT);
-      EXPECT_EQ(test_case.effective_same_site,
-                cookie.GetEffectiveSameSiteForTesting());
-    }
-  }
+  VerifyEffectiveSameSiteTestCases(creation_time, base::Time(), false,
+                                   common_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, base::Time(), false,
+                                   disabled_recent_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, base::Time(), true,
+                                   common_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, base::Time(), true,
+                                   enabled_recent_test_cases);
 
   // Persistent cookie with max age less than kLaxAllowUnsafeMaxAge.
   base::Time expiry_time = creation_time + (kLaxAllowUnsafeMaxAge / 4);
-  {
-    base::test::ScopedFeatureList feature_list;
-    feature_list.InitAndDisableFeature(features::kSameSiteByDefaultCookies);
-
-    const EffectiveSameSiteTestCase test_cases[] = {
-        {CookieSameSite::NO_RESTRICTION,
-         CookieEffectiveSameSite::NO_RESTRICTION},
-        {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE},
-        {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::NO_RESTRICTION}};
-
-    for (const auto& test_case : test_cases) {
-      CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
-                             expiry_time, base::Time(), true /* secure */,
-                             false /* httponly */, test_case.same_site,
-                             COOKIE_PRIORITY_DEFAULT);
-      EXPECT_EQ(test_case.effective_same_site,
-                cookie.GetEffectiveSameSiteForTesting());
-    }
-  }
-  {
-    base::test::ScopedFeatureList feature_list;
-    feature_list.InitAndEnableFeature(features::kSameSiteByDefaultCookies);
-
-    const EffectiveSameSiteTestCase test_cases[] = {
-        {CookieSameSite::NO_RESTRICTION,
-         CookieEffectiveSameSite::NO_RESTRICTION},
-        {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE},
-        {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::UNSPECIFIED,
-         CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE}};
-
-    for (const auto& test_case : test_cases) {
-      CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
-                             expiry_time, base::Time(), true /* secure */,
-                             false /* httponly */, test_case.same_site,
-                             COOKIE_PRIORITY_DEFAULT);
-      EXPECT_EQ(test_case.effective_same_site,
-                cookie.GetEffectiveSameSiteForTesting());
-    }
-  }
+  VerifyEffectiveSameSiteTestCases(creation_time, expiry_time, false,
+                                   common_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, expiry_time, false,
+                                   disabled_recent_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, expiry_time, true,
+                                   common_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, expiry_time, true,
+                                   enabled_recent_test_cases);
 
   // Test GetEffectiveSameSite for not-recently-created cookies:
   // Session cookie created more than kLaxAllowUnsafeMaxAge ago.
   creation_time = now - (kLaxAllowUnsafeMaxAge * 4);
-  {
-    base::test::ScopedFeatureList feature_list;
-    feature_list.InitAndDisableFeature(features::kSameSiteByDefaultCookies);
+  VerifyEffectiveSameSiteTestCases(creation_time, base::Time(), false,
+                                   common_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, base::Time(), false,
+                                   disabled_not_recent_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, base::Time(), true,
+                                   common_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, base::Time(), true,
+                                   enabled_not_recent_test_cases);
 
-    const EffectiveSameSiteTestCase test_cases[] = {
-        {CookieSameSite::NO_RESTRICTION,
-         CookieEffectiveSameSite::NO_RESTRICTION},
-        {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE},
-        {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::NO_RESTRICTION}};
-
-    for (const auto& test_case : test_cases) {
-      CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
-                             base::Time(), base::Time(), true /* secure */,
-                             false /* httponly */, test_case.same_site,
-                             COOKIE_PRIORITY_DEFAULT);
-      EXPECT_EQ(test_case.effective_same_site,
-                cookie.GetEffectiveSameSiteForTesting());
-    }
-  }
-  {
-    base::test::ScopedFeatureList feature_list;
-    feature_list.InitAndEnableFeature(features::kSameSiteByDefaultCookies);
-
-    const EffectiveSameSiteTestCase test_cases[] = {
-        {CookieSameSite::NO_RESTRICTION,
-         CookieEffectiveSameSite::NO_RESTRICTION},
-        {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE},
-        {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE}};
-
-    for (const auto& test_case : test_cases) {
-      CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
-                             base::Time(), base::Time(), true /* secure */,
-                             false /* httponly */, test_case.same_site,
-                             COOKIE_PRIORITY_DEFAULT);
-      EXPECT_EQ(test_case.effective_same_site,
-                cookie.GetEffectiveSameSiteForTesting());
-    }
-  }
-
-  // Test GetEffectiveSameSite for not-recently-created cookies:
   // Persistent cookie with max age more than kLaxAllowUnsafeMaxAge, created
   // more than kLaxAllowUnsafeMaxAge ago.
   expiry_time = creation_time + (kLaxAllowUnsafeMaxAge * 8);
-  {
-    base::test::ScopedFeatureList feature_list;
-    feature_list.InitAndDisableFeature(features::kSameSiteByDefaultCookies);
-
-    const EffectiveSameSiteTestCase test_cases[] = {
-        {CookieSameSite::NO_RESTRICTION,
-         CookieEffectiveSameSite::NO_RESTRICTION},
-        {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE},
-        {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::NO_RESTRICTION}};
-
-    for (const auto& test_case : test_cases) {
-      CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
-                             expiry_time, base::Time(), true /* secure */,
-                             false /* httponly */, test_case.same_site,
-                             COOKIE_PRIORITY_DEFAULT);
-      EXPECT_EQ(test_case.effective_same_site,
-                cookie.GetEffectiveSameSiteForTesting());
-    }
-  }
-  {
-    base::test::ScopedFeatureList feature_list;
-    feature_list.InitAndEnableFeature(features::kSameSiteByDefaultCookies);
-
-    const EffectiveSameSiteTestCase test_cases[] = {
-        {CookieSameSite::NO_RESTRICTION,
-         CookieEffectiveSameSite::NO_RESTRICTION},
-        {CookieSameSite::LAX_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::STRICT_MODE, CookieEffectiveSameSite::STRICT_MODE},
-        {CookieSameSite::EXTENDED_MODE, CookieEffectiveSameSite::LAX_MODE},
-        {CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE}};
-
-    for (const auto& test_case : test_cases) {
-      CanonicalCookie cookie("A", "2", "example.test", "/", creation_time,
-                             expiry_time, base::Time(), true /* secure */,
-                             false /* httponly */, test_case.same_site,
-                             COOKIE_PRIORITY_DEFAULT);
-      EXPECT_EQ(test_case.effective_same_site,
-                cookie.GetEffectiveSameSiteForTesting());
-    }
-  }
+  VerifyEffectiveSameSiteTestCases(creation_time, expiry_time, false,
+                                   common_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, expiry_time, false,
+                                   disabled_not_recent_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, expiry_time, true,
+                                   common_test_cases);
+  VerifyEffectiveSameSiteTestCases(creation_time, expiry_time, true,
+                                   enabled_not_recent_test_cases);
 }
 
 TEST(CanonicalCookieTest, IncludeForRequestURL) {
@@ -699,222 +647,24 @@
               {CanonicalCookie::CookieInclusionStatus::EXCLUDE_HTTP_ONLY}));
 }
 
-TEST(CanonicalCookieTest, IncludeForRequestURLSameSite) {
-  const base::TimeDelta kLongAge = kLaxAllowUnsafeMaxAge * 4;
-  const base::TimeDelta kShortAge = kLaxAllowUnsafeMaxAge / 4;
+struct IncludeForRequestURLTestCase {
+  std::string cookie_line;
+  CookieSameSite expected_samesite;
+  CookieEffectiveSameSite expected_effective_samesite;
+  CookieOptions::SameSiteCookieContext request_options_samesite_context;
+  CanonicalCookie::CookieInclusionStatus expected_inclusion_status;
+  base::TimeDelta creation_time_delta = base::TimeDelta();
+};
 
-  struct TestCase {
-    std::string cookie_line;
-    bool is_samesite_by_default_enabled;
-    CookieSameSite expected_samesite;
-    CookieEffectiveSameSite expected_effective_samesite;
-    CookieOptions::SameSiteCookieContext request_options_samesite_context;
-    CanonicalCookie::CookieInclusionStatus expected_inclusion_status;
-    base::TimeDelta creation_time_delta = base::TimeDelta();
-  } test_cases[] = {
-      // SameSite-by-default is not enabled:
-      // Strict cookies:
-      {"A=2; SameSite=Strict", false, CookieSameSite::STRICT_MODE,
-       CookieEffectiveSameSite::STRICT_MODE,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
-      {"A=2; SameSite=Strict", false, CookieSameSite::STRICT_MODE,
-       CookieEffectiveSameSite::STRICT_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
-      {"A=2; SameSite=Strict", false, CookieSameSite::STRICT_MODE,
-       CookieEffectiveSameSite::STRICT_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
-      {"A=2; SameSite=Strict", false, CookieSameSite::STRICT_MODE,
-       CookieEffectiveSameSite::STRICT_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus()},
-      // Lax cookies:
-      {"A=2; SameSite=Lax", false, CookieSameSite::LAX_MODE,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_LAX)},
-      {"A=2; SameSite=Lax", false, CookieSameSite::LAX_MODE,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_LAX)},
-      {"A=2; SameSite=Lax", false, CookieSameSite::LAX_MODE,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2; SameSite=Lax", false, CookieSameSite::LAX_MODE,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus()},
-      // None cookies:
-      {"A=2; SameSite=None; Secure", false, CookieSameSite::NO_RESTRICTION,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2; SameSite=None; Secure", false, CookieSameSite::NO_RESTRICTION,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2; SameSite=None; Secure", false, CookieSameSite::NO_RESTRICTION,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2; SameSite=None; Secure", false, CookieSameSite::NO_RESTRICTION,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus()},
-      // Unspecified cookies (without SameSite-by-default):
-      {"A=2", false, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus::MakeFromReasonsForTesting(
-           std::vector<
-               CanonicalCookie::CookieInclusionStatus::ExclusionReason>(),
-           CanonicalCookie::CookieInclusionStatus::
-               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT)},
-      {"A=2", false, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus::MakeFromReasonsForTesting(
-           std::vector<
-               CanonicalCookie::CookieInclusionStatus::ExclusionReason>(),
-           CanonicalCookie::CookieInclusionStatus::
-               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT)},
-      {"A=2", false, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2", false, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus()},
-
-      // SameSite-by-default is enabled:
-      // Strict cookies:
-      {"A=2; SameSite=Strict", true, CookieSameSite::STRICT_MODE,
-       CookieEffectiveSameSite::STRICT_MODE,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
-      {"A=2; SameSite=Strict", true, CookieSameSite::STRICT_MODE,
-       CookieEffectiveSameSite::STRICT_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
-      {"A=2; SameSite=Strict", true, CookieSameSite::STRICT_MODE,
-       CookieEffectiveSameSite::STRICT_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
-      {"A=2; SameSite=Strict", true, CookieSameSite::STRICT_MODE,
-       CookieEffectiveSameSite::STRICT_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus()},
-      // Lax cookies:
-      {"A=2; SameSite=Lax", true, CookieSameSite::LAX_MODE,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_LAX)},
-      {"A=2; SameSite=Lax", true, CookieSameSite::LAX_MODE,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_LAX)},
-      {"A=2; SameSite=Lax", true, CookieSameSite::LAX_MODE,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2; SameSite=Lax", true, CookieSameSite::LAX_MODE,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus()},
-      // None cookies:
-      {"A=2; SameSite=None; Secure", true, CookieSameSite::NO_RESTRICTION,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2; SameSite=None; Secure", true, CookieSameSite::NO_RESTRICTION,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2; SameSite=None; Secure", true, CookieSameSite::NO_RESTRICTION,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus()},
-      {"A=2; SameSite=None; Secure", true, CookieSameSite::NO_RESTRICTION,
-       CookieEffectiveSameSite::NO_RESTRICTION,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus()},
-      // Unspecified recently-created cookies (with SameSite-by-default):
-      {"A=2", true, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::
-               EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX,
-           CanonicalCookie::CookieInclusionStatus::
-               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT),
-       kShortAge},
-      {"A=2", true, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus::MakeFromReasonsForTesting(
-           std::vector<
-               CanonicalCookie::CookieInclusionStatus::ExclusionReason>(),
-           CanonicalCookie::CookieInclusionStatus::
-               WARN_SAMESITE_UNSPECIFIED_LAX_ALLOW_UNSAFE),
-       kShortAge},
-      {"A=2", true, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus(), kShortAge},
-      {"A=2", true, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus(), kShortAge},
-      // Unspecified not-recently-created cookies (with SameSite-by-default):
-      {"A=2", true, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::CROSS_SITE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::
-               EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX,
-           CanonicalCookie::CookieInclusionStatus::
-               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT),
-       kLongAge},
-      {"A=2", true, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
-       CanonicalCookie::CookieInclusionStatus(
-           CanonicalCookie::CookieInclusionStatus::
-               EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX,
-           CanonicalCookie::CookieInclusionStatus::
-               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT),
-       kLongAge},
-      {"A=2", true, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
-       CanonicalCookie::CookieInclusionStatus(), kLongAge},
-      {"A=2", true, CookieSameSite::UNSPECIFIED,
-       CookieEffectiveSameSite::LAX_MODE,
-       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
-       CanonicalCookie::CookieInclusionStatus(), kLongAge},
-  };
-
+void VerifyIncludeForRequestURLTestCases(
+    bool is_samesite_by_default_enabled,
+    CookieAccessSemantics access_semantics,
+    std::vector<IncludeForRequestURLTestCase> test_cases) {
   GURL url("https://example.test");
 
-  int length = sizeof(test_cases) / sizeof(test_cases[0]);
-  for (int i = 0; i < length; ++i) {
-    TestCase test = test_cases[i];
+  for (const auto& test : test_cases) {
     base::test::ScopedFeatureList feature_list;
-    if (test.is_samesite_by_default_enabled) {
+    if (is_samesite_by_default_enabled) {
       feature_list.InitAndEnableFeature(features::kSameSiteByDefaultCookies);
     } else {
       feature_list.InitAndDisableFeature(features::kSameSiteByDefaultCookies);
@@ -925,19 +675,192 @@
         url, test.cookie_line, creation_time, base::nullopt /* server_time */);
     EXPECT_EQ(test.expected_samesite, cookie->SameSite());
     EXPECT_EQ(test.expected_effective_samesite,
-              cookie->GetEffectiveSameSiteForTesting())
-        << "Test case " << i << " failed.";
+              cookie->GetEffectiveSameSiteForTesting(access_semantics));
 
     CookieOptions request_options;
     request_options.set_same_site_cookie_context(
         test.request_options_samesite_context);
 
-    EXPECT_EQ(test.expected_inclusion_status,
-              cookie->IncludeForRequestURL(url, request_options))
-        << "Test case " << i << " failed.";
+    EXPECT_EQ(
+        test.expected_inclusion_status,
+        cookie->IncludeForRequestURL(url, request_options, access_semantics));
   }
 }
 
+TEST(CanonicalCookieTest, IncludeForRequestURLSameSite) {
+  const base::TimeDelta kLongAge = kLaxAllowUnsafeMaxAge * 4;
+  const base::TimeDelta kShortAge = kLaxAllowUnsafeMaxAge / 4;
+
+  // Test cases that are the same regardless of feature status or access
+  // semantics:
+  std::vector<IncludeForRequestURLTestCase> common_test_cases = {
+      // Strict cookies:
+      {"A=2; SameSite=Strict", CookieSameSite::STRICT_MODE,
+       CookieEffectiveSameSite::STRICT_MODE,
+       CookieOptions::SameSiteCookieContext::CROSS_SITE,
+       CanonicalCookie::CookieInclusionStatus(
+           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
+      {"A=2; SameSite=Strict", CookieSameSite::STRICT_MODE,
+       CookieEffectiveSameSite::STRICT_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
+       CanonicalCookie::CookieInclusionStatus(
+           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
+      {"A=2; SameSite=Strict", CookieSameSite::STRICT_MODE,
+       CookieEffectiveSameSite::STRICT_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
+       CanonicalCookie::CookieInclusionStatus(
+           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_STRICT)},
+      {"A=2; SameSite=Strict", CookieSameSite::STRICT_MODE,
+       CookieEffectiveSameSite::STRICT_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
+       CanonicalCookie::CookieInclusionStatus()},
+      // Lax cookies:
+      {"A=2; SameSite=Lax", CookieSameSite::LAX_MODE,
+       CookieEffectiveSameSite::LAX_MODE,
+       CookieOptions::SameSiteCookieContext::CROSS_SITE,
+       CanonicalCookie::CookieInclusionStatus(
+           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_LAX)},
+      {"A=2; SameSite=Lax", CookieSameSite::LAX_MODE,
+       CookieEffectiveSameSite::LAX_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
+       CanonicalCookie::CookieInclusionStatus(
+           CanonicalCookie::CookieInclusionStatus::EXCLUDE_SAMESITE_LAX)},
+      {"A=2; SameSite=Lax", CookieSameSite::LAX_MODE,
+       CookieEffectiveSameSite::LAX_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
+       CanonicalCookie::CookieInclusionStatus()},
+      {"A=2; SameSite=Lax", CookieSameSite::LAX_MODE,
+       CookieEffectiveSameSite::LAX_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
+       CanonicalCookie::CookieInclusionStatus()},
+      // None and Secure cookies:
+      {"A=2; SameSite=None; Secure", CookieSameSite::NO_RESTRICTION,
+       CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieOptions::SameSiteCookieContext::CROSS_SITE,
+       CanonicalCookie::CookieInclusionStatus()},
+      {"A=2; SameSite=None; Secure", CookieSameSite::NO_RESTRICTION,
+       CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
+       CanonicalCookie::CookieInclusionStatus()},
+      {"A=2; SameSite=None; Secure", CookieSameSite::NO_RESTRICTION,
+       CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
+       CanonicalCookie::CookieInclusionStatus()},
+      {"A=2; SameSite=None; Secure", CookieSameSite::NO_RESTRICTION,
+       CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
+       CanonicalCookie::CookieInclusionStatus()}};
+
+  // Test cases where the default is None (either access semantics is LEGACY, or
+  // semantics is UNKNOWN and feature is enabled):
+  std::vector<IncludeForRequestURLTestCase> default_none_test_cases = {
+      // Unspecified cookies (without SameSite-by-default):
+      {"A=2", CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieOptions::SameSiteCookieContext::CROSS_SITE,
+       CanonicalCookie::CookieInclusionStatus::MakeFromReasonsForTesting(
+           std::vector<
+               CanonicalCookie::CookieInclusionStatus::ExclusionReason>(),
+           CanonicalCookie::CookieInclusionStatus::
+               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT)},
+      {"A=2", CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
+       CanonicalCookie::CookieInclusionStatus::MakeFromReasonsForTesting(
+           std::vector<
+               CanonicalCookie::CookieInclusionStatus::ExclusionReason>(),
+           CanonicalCookie::CookieInclusionStatus::
+               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT)},
+      {"A=2", CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
+       CanonicalCookie::CookieInclusionStatus()},
+      {"A=2", CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::NO_RESTRICTION,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
+       CanonicalCookie::CookieInclusionStatus()}};
+
+  // Test cases where the default is Lax (either access semantics is NONLEGACY,
+  // or access semantics is UNKNOWN and feature is enabled):
+  std::vector<IncludeForRequestURLTestCase> default_lax_test_cases = {
+      // Unspecified recently-created cookies (with SameSite-by-default):
+      {"A=2", CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
+       CookieOptions::SameSiteCookieContext::CROSS_SITE,
+       CanonicalCookie::CookieInclusionStatus(
+           CanonicalCookie::CookieInclusionStatus::
+               EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX,
+           CanonicalCookie::CookieInclusionStatus::
+               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT),
+       kShortAge},
+      {"A=2", CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
+       CanonicalCookie::CookieInclusionStatus::MakeFromReasonsForTesting(
+           std::vector<
+               CanonicalCookie::CookieInclusionStatus::ExclusionReason>(),
+           CanonicalCookie::CookieInclusionStatus::
+               WARN_SAMESITE_UNSPECIFIED_LAX_ALLOW_UNSAFE),
+       kShortAge},
+      {"A=2", CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
+       CanonicalCookie::CookieInclusionStatus(), kShortAge},
+      {"A=2", CookieSameSite::UNSPECIFIED,
+       CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
+       CanonicalCookie::CookieInclusionStatus(), kShortAge},
+      // Unspecified not-recently-created cookies (with SameSite-by-default):
+      {"A=2", CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE,
+       CookieOptions::SameSiteCookieContext::CROSS_SITE,
+       CanonicalCookie::CookieInclusionStatus(
+           CanonicalCookie::CookieInclusionStatus::
+               EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX,
+           CanonicalCookie::CookieInclusionStatus::
+               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT),
+       kLongAge},
+      {"A=2", CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX_METHOD_UNSAFE,
+       CanonicalCookie::CookieInclusionStatus(
+           CanonicalCookie::CookieInclusionStatus::
+               EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX,
+           CanonicalCookie::CookieInclusionStatus::
+               WARN_SAMESITE_UNSPECIFIED_CROSS_SITE_CONTEXT),
+       kLongAge},
+      {"A=2", CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_LAX,
+       CanonicalCookie::CookieInclusionStatus(), kLongAge},
+      {"A=2", CookieSameSite::UNSPECIFIED, CookieEffectiveSameSite::LAX_MODE,
+       CookieOptions::SameSiteCookieContext::SAME_SITE_STRICT,
+       CanonicalCookie::CookieInclusionStatus(), kLongAge},
+  };
+
+  VerifyIncludeForRequestURLTestCases(true, CookieAccessSemantics::UNKNOWN,
+                                      common_test_cases);
+  VerifyIncludeForRequestURLTestCases(true, CookieAccessSemantics::UNKNOWN,
+                                      default_lax_test_cases);
+  VerifyIncludeForRequestURLTestCases(true, CookieAccessSemantics::LEGACY,
+                                      common_test_cases);
+  VerifyIncludeForRequestURLTestCases(true, CookieAccessSemantics::LEGACY,
+                                      default_none_test_cases);
+  VerifyIncludeForRequestURLTestCases(true, CookieAccessSemantics::NONLEGACY,
+                                      common_test_cases);
+  VerifyIncludeForRequestURLTestCases(true, CookieAccessSemantics::NONLEGACY,
+                                      default_lax_test_cases);
+  VerifyIncludeForRequestURLTestCases(false, CookieAccessSemantics::UNKNOWN,
+                                      common_test_cases);
+  VerifyIncludeForRequestURLTestCases(false, CookieAccessSemantics::UNKNOWN,
+                                      default_none_test_cases);
+  VerifyIncludeForRequestURLTestCases(false, CookieAccessSemantics::LEGACY,
+                                      common_test_cases);
+  VerifyIncludeForRequestURLTestCases(false, CookieAccessSemantics::LEGACY,
+                                      default_none_test_cases);
+  VerifyIncludeForRequestURLTestCases(false, CookieAccessSemantics::NONLEGACY,
+                                      common_test_cases);
+  VerifyIncludeForRequestURLTestCases(false, CookieAccessSemantics::NONLEGACY,
+                                      default_lax_test_cases);
+}
+
 // Test that non-SameSite, insecure cookies are excluded if both
 // SameSiteByDefaultCookies and CookiesWithoutSameSiteMustBeSecure are enabled.
 TEST(CanonicalCookieTest, IncludeCookiesWithoutSameSiteMustBeSecure) {
@@ -956,6 +879,8 @@
   EXPECT_EQ(CookieEffectiveSameSite::NO_RESTRICTION,
             cookie->GetEffectiveSameSiteForTesting());
 
+  // Test SameSite=None must be Secure.
+  // Features on:
   {
     base::test::ScopedFeatureList feature_list;
     feature_list.InitWithFeatures(
@@ -963,11 +888,47 @@
          features::kCookiesWithoutSameSiteMustBeSecure} /* enabled_features */,
         {} /* disabled_features */);
 
-    EXPECT_TRUE(cookie->IncludeForRequestURL(url, options)
+    EXPECT_TRUE(
+        cookie
+            ->IncludeForRequestURL(url, options, CookieAccessSemantics::UNKNOWN)
+            .HasExactlyExclusionReasonsForTesting(
+                {CanonicalCookie::CookieInclusionStatus::
+                     EXCLUDE_SAMESITE_NONE_INSECURE}));
+    EXPECT_TRUE(
+        cookie
+            ->IncludeForRequestURL(url, options, CookieAccessSemantics::LEGACY)
+            .IsInclude());
+    EXPECT_TRUE(cookie
+                    ->IncludeForRequestURL(url, options,
+                                           CookieAccessSemantics::NONLEGACY)
                     .HasExactlyExclusionReasonsForTesting(
                         {CanonicalCookie::CookieInclusionStatus::
                              EXCLUDE_SAMESITE_NONE_INSECURE}));
   }
+  // Features off:
+  {
+    base::test::ScopedFeatureList feature_list;
+    feature_list.InitWithFeatures(
+        {} /* enabled_features */,
+        {features::kSameSiteByDefaultCookies,
+         features::
+             kCookiesWithoutSameSiteMustBeSecure} /* disabled_features */);
+
+    EXPECT_TRUE(
+        cookie
+            ->IncludeForRequestURL(url, options, CookieAccessSemantics::UNKNOWN)
+            .IsInclude());
+    EXPECT_TRUE(
+        cookie
+            ->IncludeForRequestURL(url, options, CookieAccessSemantics::LEGACY)
+            .IsInclude());
+    // If the semantics is Nonlegacy, only reject the cookie if the
+    // SameSite=None-must-be-Secure feature is enabled.
+    EXPECT_TRUE(cookie
+                    ->IncludeForRequestURL(url, options,
+                                           CookieAccessSemantics::NONLEGACY)
+                    .IsInclude());
+  }
 }
 
 TEST(CanonicalCookieTest, MultipleExclusionReasons) {
@@ -1979,7 +1940,7 @@
                     .IsInclude());
   }
 
-  // Behavior of UNSPECIFIED depends on an experiment.
+  // Behavior of UNSPECIFIED depends on an experiment and CookieAccessSemantics.
   CanonicalCookie cookie_same_site_unspecified(
       "A", "2", "www.example.com", "/test", current_time, base::Time(),
       base::Time(), true /*secure*/, false /*httponly*/,
@@ -1989,14 +1950,43 @@
     base::test::ScopedFeatureList feature_list;
     feature_list.InitAndDisableFeature(features::kSameSiteByDefaultCookies);
 
-    EXPECT_TRUE(
-        cookie_same_site_unspecified.IsSetPermittedInContext(context_cross_site)
-            .IsInclude());
     EXPECT_TRUE(cookie_same_site_unspecified
-                    .IsSetPermittedInContext(context_same_site_lax)
+                    .IsSetPermittedInContext(context_cross_site,
+                                             CookieAccessSemantics::UNKNOWN)
                     .IsInclude());
     EXPECT_TRUE(cookie_same_site_unspecified
-                    .IsSetPermittedInContext(context_same_site_strict)
+                    .IsSetPermittedInContext(context_same_site_lax,
+                                             CookieAccessSemantics::UNKNOWN)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_strict,
+                                             CookieAccessSemantics::UNKNOWN)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_cross_site,
+                                             CookieAccessSemantics::LEGACY)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_lax,
+                                             CookieAccessSemantics::LEGACY)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_strict,
+                                             CookieAccessSemantics::LEGACY)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_cross_site,
+                                             CookieAccessSemantics::NONLEGACY)
+                    .HasExactlyExclusionReasonsForTesting(
+                        {CanonicalCookie::CookieInclusionStatus::
+                             EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX}));
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_lax,
+                                             CookieAccessSemantics::NONLEGACY)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_strict,
+                                             CookieAccessSemantics::NONLEGACY)
                     .IsInclude());
   }
 
@@ -2004,16 +1994,45 @@
     base::test::ScopedFeatureList feature_list;
     feature_list.InitAndEnableFeature(features::kSameSiteByDefaultCookies);
 
-    EXPECT_TRUE(
-        cookie_same_site_unspecified.IsSetPermittedInContext(context_cross_site)
-            .HasExactlyExclusionReasonsForTesting(
-                {CanonicalCookie::CookieInclusionStatus::
-                     EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX}));
     EXPECT_TRUE(cookie_same_site_unspecified
-                    .IsSetPermittedInContext(context_same_site_lax)
+                    .IsSetPermittedInContext(context_cross_site,
+                                             CookieAccessSemantics::UNKNOWN)
+                    .HasExactlyExclusionReasonsForTesting(
+                        {CanonicalCookie::CookieInclusionStatus::
+                             EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX}));
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_lax,
+                                             CookieAccessSemantics::UNKNOWN)
                     .IsInclude());
     EXPECT_TRUE(cookie_same_site_unspecified
-                    .IsSetPermittedInContext(context_same_site_strict)
+                    .IsSetPermittedInContext(context_same_site_strict,
+                                             CookieAccessSemantics::UNKNOWN)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_cross_site,
+                                             CookieAccessSemantics::LEGACY)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_lax,
+                                             CookieAccessSemantics::LEGACY)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_strict,
+                                             CookieAccessSemantics::LEGACY)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_cross_site,
+                                             CookieAccessSemantics::NONLEGACY)
+                    .HasExactlyExclusionReasonsForTesting(
+                        {CanonicalCookie::CookieInclusionStatus::
+                             EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX}));
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_lax,
+                                             CookieAccessSemantics::NONLEGACY)
+                    .IsInclude());
+    EXPECT_TRUE(cookie_same_site_unspecified
+                    .IsSetPermittedInContext(context_same_site_strict,
+                                             CookieAccessSemantics::NONLEGACY)
                     .IsInclude());
   }
 }
diff --git a/net/cookies/cookie_monster.cc b/net/cookies/cookie_monster.cc
index b9b3108..6c2abf8 100644
--- a/net/cookies/cookie_monster.cc
+++ b/net/cookies/cookie_monster.cc
@@ -977,8 +977,8 @@
     // Filter out cookies that should not be included for a request to the
     // given |url|. HTTP only cookies are filtered depending on the passed
     // cookie |options|.
-    CanonicalCookie::CookieInclusionStatus status =
-        (*it)->IncludeForRequestURL(url, options);
+    CanonicalCookie::CookieInclusionStatus status = (*it)->IncludeForRequestURL(
+        url, options, GetAccessSemanticsForCookie(**it));
 
     if (!status.IsInclude()) {
       if (options.return_excluded_cookies())
@@ -1131,7 +1131,9 @@
 
   // See InitializeHistograms() for details.
   int32_t type_sample =
-      !cc_ptr->IsEffectivelySameSiteNone() ? 1 << COOKIE_TYPE_SAME_SITE : 0;
+      !cc_ptr->IsEffectivelySameSiteNone(GetAccessSemanticsForCookie(*cc_ptr))
+          ? 1 << COOKIE_TYPE_SAME_SITE
+          : 0;
   type_sample |= cc_ptr->IsHttpOnly() ? 1 << COOKIE_TYPE_HTTPONLY : 0;
   type_sample |= cc_ptr->IsSecure() ? 1 << COOKIE_TYPE_SECURE : 0;
   histogram_cookie_type_->Add(type_sample);
@@ -1157,7 +1159,7 @@
   }
 
   status.AddExclusionReasonsAndWarningIfAny(
-      cc->IsSetPermittedInContext(options));
+      cc->IsSetPermittedInContext(options, GetAccessSemanticsForCookie(*cc)));
 
   if (!IsCookieableScheme(scheme_lower)) {
     status.AddExclusionReason(
@@ -1168,8 +1170,9 @@
   // are enabled, non-SameSite cookies without the Secure attribute will be
   // rejected. A warning for this would have been added by
   // IsSetPermittedInContext().
-  if (cookie_util::IsCookiesWithoutSameSiteMustBeSecureEnabled() &&
-      cc->IsEffectivelySameSiteNone() && !cc->IsSecure()) {
+  if (GetAccessSemanticsForCookie(*cc) != CookieAccessSemantics::LEGACY &&
+      cookie_util::IsCookiesWithoutSameSiteMustBeSecureEnabled() &&
+      cc->SameSite() == CookieSameSite::NO_RESTRICTION && !cc->IsSecure()) {
     DVLOG(net::cookie_util::kVlogSetCookies)
         << "SetCookie() rejecting insecure cookie with SameSite=None.";
     status.AddExclusionReason(
@@ -1671,6 +1674,13 @@
   return false;
 }
 
+CookieAccessSemantics CookieMonster::GetAccessSemanticsForCookie(
+    const CanonicalCookie& cookie) const {
+  if (cookie_access_delegate_)
+    return cookie_access_delegate_->GetAccessSemantics(cookie);
+  return CookieAccessSemantics::UNKNOWN;
+}
+
 // Test to see if stats should be recorded, and record them if so.
 // The goal here is to get sampling for the average browser-hour of
 // activity.  We won't take samples when the web isn't being surfed,
diff --git a/net/cookies/cookie_monster.h b/net/cookies/cookie_monster.h
index 9fa123f0b..e739587 100644
--- a/net/cookies/cookie_monster.h
+++ b/net/cookies/cookie_monster.h
@@ -533,6 +533,11 @@
 
   bool HasCookieableScheme(const GURL& url);
 
+  // Get the cookie's access semantics (LEGACY or NONLEGACY) from the cookie
+  // access delegate, if it is non-null. Otherwise return UNKNOWN.
+  CookieAccessSemantics GetAccessSemanticsForCookie(
+      const CanonicalCookie& cookie) const;
+
   // Statistics support
 
   // This function should be called repeatedly, and will record
@@ -625,7 +630,6 @@
 
   // Used to determine whether a particular cookie should be subject to legacy
   // or non-legacy access semantics.
-  // TODO(chlily): Hook up to CanonicalCookie::GetEffectiveSameSite.
   std::unique_ptr<CookieAccessDelegate> cookie_access_delegate_;
 
   base::ThreadChecker thread_checker_;
diff --git a/net/cookies/cookie_monster_unittest.cc b/net/cookies/cookie_monster_unittest.cc
index 4592389e..6908bbd9438 100644
--- a/net/cookies/cookie_monster_unittest.cc
+++ b/net/cookies/cookie_monster_unittest.cc
@@ -44,6 +44,7 @@
 #include "net/cookies/cookie_store_unittest.h"
 #include "net/cookies/cookie_util.h"
 #include "net/cookies/parsed_cookie.h"
+#include "net/cookies/test_cookie_access_delegate.h"
 #include "net/log/net_log_with_source.h"
 #include "net/log/test_net_log.h"
 #include "net/log/test_net_log_util.h"
@@ -3626,4 +3627,156 @@
   EXPECT_EQ(1u, this->GetAllCookies(monster.get()).size());
 }
 
+class CookieMonsterLegacyCookieAccessTest : public CookieMonsterTest {
+ public:
+  CookieMonsterLegacyCookieAccessTest()
+      : cm_(std::make_unique<CookieMonster>(nullptr /* store */,
+                                            nullptr /* netlog */)) {
+    std::unique_ptr<TestCookieAccessDelegate> access_delegate =
+        std::make_unique<TestCookieAccessDelegate>();
+    access_delegate_ = access_delegate.get();
+    cm_->SetCookieAccessDelegate(std::move(access_delegate));
+  }
+
+  ~CookieMonsterLegacyCookieAccessTest() override {}
+
+  void SetFeatures(bool is_same_site_by_default_cookies_enabled,
+                   bool is_cookies_without_samesite_must_be_secure_enabled) {
+    feature_list_ = std::make_unique<base::test::ScopedFeatureList>();
+
+    std::vector<base::Feature> enabled;
+    std::vector<base::Feature> disabled;
+
+    if (is_same_site_by_default_cookies_enabled) {
+      enabled.push_back(features::kSameSiteByDefaultCookies);
+    } else {
+      disabled.push_back(features::kSameSiteByDefaultCookies);
+    }
+
+    if (is_cookies_without_samesite_must_be_secure_enabled) {
+      enabled.push_back(features::kCookiesWithoutSameSiteMustBeSecure);
+    } else {
+      disabled.push_back(features::kCookiesWithoutSameSiteMustBeSecure);
+    }
+
+    feature_list_->InitWithFeatures(enabled, disabled);
+  }
+
+ protected:
+  const std::string kDomain = "example.test";
+  const GURL kHttpsUrl = GURL("https://example.test");
+  const GURL kHttpUrl = GURL("http://example.test");
+  std::unique_ptr<CookieMonster> cm_;
+  TestCookieAccessDelegate* access_delegate_;
+  std::unique_ptr<base::test::ScopedFeatureList> feature_list_;
+};
+
+TEST_F(CookieMonsterLegacyCookieAccessTest, SetLegacyNoSameSiteCookie) {
+  SetFeatures(true, true);
+  // Check that setting unspecified-SameSite cookie from cross-site context
+  // fails if not set to Legacy semantics, but succeeds if set to legacy.
+  EXPECT_FALSE(CreateAndSetCookie(cm_.get(), kHttpUrl, "cookie=chocolate_chip",
+                                  CookieOptions()));
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::UNKNOWN);
+  EXPECT_FALSE(CreateAndSetCookie(cm_.get(), kHttpUrl, "cookie=chocolate_chip",
+                                  CookieOptions()));
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::NONLEGACY);
+  EXPECT_FALSE(CreateAndSetCookie(cm_.get(), kHttpUrl, "cookie=chocolate_chip",
+                                  CookieOptions()));
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::LEGACY);
+  EXPECT_TRUE(CreateAndSetCookie(cm_.get(), kHttpUrl, "cookie=chocolate_chip",
+                                 CookieOptions()));
+}
+
+TEST_F(CookieMonsterLegacyCookieAccessTest, GetLegacyNoSameSiteCookie) {
+  // Set an unspecified-SameSite cookie with SameSite features turned off.
+  // Getting the cookie will succeed.
+  SetFeatures(false, false);
+  ASSERT_TRUE(CreateAndSetCookie(cm_.get(), kHttpUrl, "cookie=chocolate_chip",
+                                 CookieOptions()));
+  EXPECT_EQ("cookie=chocolate_chip",
+            GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+  // Turn on the features. Now getting the cookie fails.
+  SetFeatures(true, true);
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::UNKNOWN);
+  EXPECT_EQ("", GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::NONLEGACY);
+  EXPECT_EQ("", GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+  // Set the access semantics to legacy, to be able to get the cookie.
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::LEGACY);
+  EXPECT_EQ("cookie=chocolate_chip",
+            GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+}
+
+TEST_F(CookieMonsterLegacyCookieAccessTest,
+       SetLegacySameSiteNoneInsecureCookie) {
+  SetFeatures(true, true);
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::UNKNOWN);
+  EXPECT_FALSE(CreateAndSetCookie(cm_.get(), kHttpsUrl,
+                                  "cookie=oatmeal_raisin; SameSite=None",
+                                  CookieOptions()));
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::UNKNOWN);
+  EXPECT_FALSE(CreateAndSetCookie(cm_.get(), kHttpsUrl,
+                                  "cookie=oatmeal_raisin; SameSite=None",
+                                  CookieOptions()));
+  // Setting the access semantics to legacy allows setting the cookie.
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::LEGACY);
+  EXPECT_TRUE(CreateAndSetCookie(cm_.get(), kHttpsUrl,
+                                 "cookie=oatmeal_raisin; SameSite=None",
+                                 CookieOptions()));
+  EXPECT_EQ("cookie=oatmeal_raisin",
+            GetCookiesWithOptions(cm_.get(), kHttpsUrl, CookieOptions()));
+}
+
+TEST_F(CookieMonsterLegacyCookieAccessTest,
+       GetLegacySameSiteNoneInsecureCookie) {
+  // Set an SameSite=None insecure cookie with SameSite features turned off.
+  // Getting the cookie will succeed.
+  SetFeatures(false, false);
+  ASSERT_TRUE(CreateAndSetCookie(cm_.get(), kHttpUrl,
+                                 "cookie=oatmeal_raisin; SameSite=None",
+                                 CookieOptions()));
+  EXPECT_EQ("cookie=oatmeal_raisin",
+            GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+  // Turn on the features. Now getting the cookie fails.
+  SetFeatures(true, true);
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::UNKNOWN);
+  EXPECT_EQ("", GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::NONLEGACY);
+  EXPECT_EQ("", GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+  // Set the access semantics to legacy, to be able to get the cookie.
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::LEGACY);
+  EXPECT_EQ("cookie=oatmeal_raisin",
+            GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+}
+
+TEST_F(CookieMonsterLegacyCookieAccessTest, NonlegacyCookie) {
+  // Nonlegacy cookie will have default as Lax.
+  SetFeatures(false, false);
+  access_delegate_->SetExpectationForCookieDomain(
+      kDomain, CookieAccessSemantics::NONLEGACY);
+  EXPECT_FALSE(CreateAndSetCookie(cm_.get(), kHttpUrl, "cookie=chocolate_chip",
+                                  CookieOptions()));
+
+  // The SameSite=None-must-be-Secure rule will only only activate if the
+  // feature is on, even if access semantics is Nonlegacy.
+  EXPECT_TRUE(CreateAndSetCookie(cm_.get(), kHttpUrl,
+                                 "cookie=oatmeal_raisin; SameSite=None",
+                                 CookieOptions()));
+  EXPECT_EQ("cookie=oatmeal_raisin",
+            GetCookiesWithOptions(cm_.get(), kHttpUrl, CookieOptions()));
+}
+
 }  // namespace net
diff --git a/net/cookies/test_cookie_access_delegate.h b/net/cookies/test_cookie_access_delegate.h
index 9c64cb1..49ba1be 100644
--- a/net/cookies/test_cookie_access_delegate.h
+++ b/net/cookies/test_cookie_access_delegate.h
@@ -15,7 +15,7 @@
 // CookieAccessDelegate for testing. You can set the return value for a given
 // cookie_domain (modulo any leading dot). Calling GetAccessSemantics() will
 // then return the given value, or UNKNOWN if you haven't set one.
-class TestCookieAccessDelegate : CookieAccessDelegate {
+class TestCookieAccessDelegate : public CookieAccessDelegate {
  public:
   TestCookieAccessDelegate();
   ~TestCookieAccessDelegate() override;
diff --git a/remoting/client/notification/notification_client.cc b/remoting/client/notification/notification_client.cc
index 352a217..cc3ab89 100644
--- a/remoting/client/notification/notification_client.cc
+++ b/remoting/client/notification/notification_client.cc
@@ -76,7 +76,7 @@
                    const std::string& type_name) {
   const base::Value* value = dict.FindKey(key);
   if (!value) {
-    LOG(ERROR) << "|" << key << "| not found in dictionary.";
+    LOG(WARNING) << "|" << key << "| not found in dictionary.";
     return false;
   }
   if (!(value->*is_t_checker)()) {
@@ -314,6 +314,8 @@
   }
   message->message_id = message_id;
   message->link_url = link_url;
+  message->allow_dont_show_again = false;
+  FindKeyAndGet(rule, "allow_dont_show_again", &message->allow_dont_show_again);
   *out_message_text_filename = message_text_filename;
   *out_link_text_filename = link_text_filename;
   return message;
diff --git a/remoting/client/notification/notification_client_unittest.cc b/remoting/client/notification/notification_client_unittest.cc
index 0525f50..977c48a5 100644
--- a/remoting/client/notification/notification_client_unittest.cc
+++ b/remoting/client/notification/notification_client_unittest.cc
@@ -67,6 +67,7 @@
   rule.SetStringKey("link_text", "link_text.json");
   rule.SetStringKey("link_url", "https://example.com/some_link");
   rule.SetIntKey("percent", 100);
+  rule.SetBoolKey("allow_dont_show_again", true);
   return rule;
 }
 
@@ -84,6 +85,7 @@
   message.message_text = "zh-CN:message";
   message.link_text = "zh-CN:link";
   message.link_url = "https://example.com/some_link";
+  message.allow_dont_show_again = true;
   return message;
 }
 
@@ -312,4 +314,23 @@
   client_->GetNotification(kTestEmail, callback.Get());
 }
 
+TEST_F(NotificationClientTest, AllowDontShowAgainNotSet_DefaultToFalse) {
+  base::Value rules(base::Value::Type::LIST);
+  base::Value rule = CreateDefaultRule();
+  rule.RemoveKey("allow_dont_show_again");
+  rules.Append(std::move(rule));
+  EXPECT_CALL(*fetcher_, FetchJsonFile("notification/rules.json"))
+      .WillOnce(ReturnByMove(std::move(rules)));
+  EXPECT_CALL(*fetcher_, FetchJsonFile("notification/message_text.json"))
+      .WillOnce(ReturnByMove(CreateDefaultTranslations("message")));
+  EXPECT_CALL(*fetcher_, FetchJsonFile("notification/link_text.json"))
+      .WillOnce(ReturnByMove(CreateDefaultTranslations("link")));
+
+  NotificationMessage notification = CreateDefaultNotification();
+  notification.allow_dont_show_again = false;
+  base::MockCallback<NotificationClient::NotificationCallback> callback;
+  EXPECT_CALL(callback, Run(MessageMatches(notification)));
+  client_->GetNotification(kTestEmail, callback.Get());
+}
+
 }  // namespace remoting
\ No newline at end of file
diff --git a/remoting/client/notification/notification_message.h b/remoting/client/notification/notification_message.h
index 244e6ff..45c90b77 100644
--- a/remoting/client/notification/notification_message.h
+++ b/remoting/client/notification/notification_message.h
@@ -28,6 +28,7 @@
   std::string message_text;
   std::string link_text;
   std::string link_url;
+  bool allow_dont_show_again;
 };
 
 }  // namespace remoting
diff --git a/remoting/host/policy_watcher.cc b/remoting/host/policy_watcher.cc
index 51d5028..efbfea0 100644
--- a/remoting/host/policy_watcher.cc
+++ b/remoting/host/policy_watcher.cc
@@ -232,7 +232,7 @@
   // 3) policies not supported on all OS-s (i.e. RemoteAccessHostMatchUsername
   //    is not supported on Windows and therefore policy_templates.json omits
   //    schema for this policy on this particular platform).
-  auto strategy = policy::SCHEMA_ALLOW_UNKNOWN_TOPLEVEL;
+  auto strategy = policy::SCHEMA_ALLOW_UNKNOWN;
 
   std::string path;
   std::string error;
diff --git a/remoting/ios/app/BUILD.gn b/remoting/ios/app/BUILD.gn
index fb68e85..d4a55c8 100644
--- a/remoting/ios/app/BUILD.gn
+++ b/remoting/ios/app/BUILD.gn
@@ -51,6 +51,8 @@
     "host_view_controller.h",
     "host_view_controller.mm",
     "main.mm",
+    "notification_dialog_view_controller.h",
+    "notification_dialog_view_controller.mm",
     "notification_presenter.h",
     "notification_presenter.mm",
     "physical_keyboard_detector.h",
diff --git a/remoting/ios/app/notification_dialog_view_controller.h b/remoting/ios/app/notification_dialog_view_controller.h
new file mode 100644
index 0000000..200abe0
--- /dev/null
+++ b/remoting/ios/app/notification_dialog_view_controller.h
@@ -0,0 +1,28 @@
+// Copyright 2019 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 REMOTING_IOS_APP_NOTIFICATION_DIALOG_VIEW_CONTROLLER_H_
+#define REMOTING_IOS_APP_NOTIFICATION_DIALOG_VIEW_CONTROLLER_H_
+
+#import <UIKit/UIKit.h>
+
+namespace remoting {
+struct NotificationMessage;
+}  // namespace remoting
+
+using NotificationDialogCompletionBlock = void (^)(BOOL isDontShowAgainOn);
+
+// This is the view controller for showing the notification dialog.
+@interface NotificationDialogViewController : UIViewController
+
+- (instancetype)initWithNotificationMessage:
+                    (const remoting::NotificationMessage&)message
+              shouldShowDontShowAgainToggle:(BOOL)shouldShowDontShowAgainToggle;
+
+- (void)presentOnTopVCWithCompletion:
+    (NotificationDialogCompletionBlock)completion;
+
+@end
+
+#endif  // REMOTING_IOS_APP_NOTIFICATION_DIALOG_VIEW_CONTROLLER_H_
diff --git a/remoting/ios/app/notification_dialog_view_controller.mm b/remoting/ios/app/notification_dialog_view_controller.mm
new file mode 100644
index 0000000..1a8a894
--- /dev/null
+++ b/remoting/ios/app/notification_dialog_view_controller.mm
@@ -0,0 +1,248 @@
+// Copyright 2019 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.
+
+#if !defined(__has_feature) || !__has_feature(objc_arc)
+#error "This file requires ARC support."
+#endif
+
+#import "remoting/ios/app/notification_dialog_view_controller.h"
+
+#import "ios/third_party/material_components_ios/src/components/Buttons/src/MaterialButtons.h"
+#import "ios/third_party/material_components_ios/src/components/Dialogs/src/MaterialDialogs.h"
+#import "remoting/ios/app/remoting_theme.h"
+
+#include <algorithm>
+
+#include "base/logging.h"
+#include "base/strings/string_split.h"
+#include "base/strings/sys_string_conversions.h"
+#include "remoting/base/string_resources.h"
+#include "remoting/client/notification/notification_message.h"
+#include "remoting/ios/app/view_utils.h"
+#include "ui/base/l10n/l10n_util.h"
+
+static const CGFloat kLabelInset = 20.f;
+static const CGFloat kSwitchInset = 10.f;
+static const CGFloat kButtonHeight = 48.f;
+static const CGFloat kDontShowAgainFontSize = 14.f;
+static const CGFloat kDontShowAgainViewHeightAdjustment = 10.f;
+
+@implementation NotificationDialogViewController {
+  NSString* _messageText;
+  NSString* _linkText;
+  NSURL* _linkUrl;
+  BOOL _shouldShowDontShowAgainToggle;
+  NotificationDialogCompletionBlock _completion;
+  MDCDialogTransitionController* _transitionController;
+  UILabel* _messageLabel;
+  MDCButton* _linkButton;
+  MDCButton* _dismissButton;
+
+  // These will be nil if |_shouldShowDontShowAgainToggle| is NO.
+  UISwitch* _dontShowAgainSwitch;
+  UILabel* _dontShowAgainLabel;
+}
+
+#pragma mark - UIViewController
+
+- (instancetype)
+      initWithNotificationMessage:(const remoting::NotificationMessage&)message
+    shouldShowDontShowAgainToggle:(BOOL)shouldShowDontShowAgainToggle {
+  self = [super init];
+  if (self) {
+    _messageText = base::SysUTF8ToNSString(message.message_text);
+    _linkText = base::SysUTF8ToNSString(message.link_text);
+    _linkUrl = [NSURL URLWithString:base::SysUTF8ToNSString(message.link_url)];
+    _shouldShowDontShowAgainToggle = shouldShowDontShowAgainToggle;
+
+    _transitionController = [MDCDialogTransitionController new];
+    self.modalPresentationStyle = UIModalPresentationCustom;
+    self.transitioningDelegate = _transitionController;
+  }
+  return self;
+}
+
+- (void)viewDidLoad {
+  [super viewDidLoad];
+
+  self.view.backgroundColor = RemotingTheme.dialogBackgroundColor;
+
+  _messageLabel = [UILabel new];
+  _messageLabel.textColor = RemotingTheme.dialogTextColor;
+  _messageLabel.lineBreakMode = NSLineBreakByWordWrapping;
+  _messageLabel.numberOfLines = 0;
+  _messageLabel.text = _messageText;
+  _messageLabel.translatesAutoresizingMaskIntoConstraints = NO;
+  [self.view addSubview:_messageLabel];
+
+  UIView* dontShowAgainView = [UIView new];
+  dontShowAgainView.translatesAutoresizingMaskIntoConstraints = NO;
+  [self.view addSubview:dontShowAgainView];
+
+  _linkButton = [MDCFlatButton new];
+  [_linkButton setTitle:_linkText forState:UIControlStateNormal];
+  [_linkButton addTarget:self
+                  action:@selector(didTapLinkButton:)
+        forControlEvents:UIControlEventTouchUpInside];
+  [self addButton:_linkButton isPrimary:YES];
+
+  _dismissButton = [MDCFlatButton new];
+  [_dismissButton setTitle:l10n_util::GetNSString(IDS_DISMISS)
+                  forState:UIControlStateNormal];
+  [_dismissButton addTarget:self
+                     action:@selector(didTapDismissButton:)
+           forControlEvents:UIControlEventTouchUpInside];
+  [self addButton:_dismissButton isPrimary:NO];
+
+  [NSLayoutConstraint activateConstraints:@[
+    [_messageLabel.topAnchor constraintEqualToAnchor:self.view.topAnchor
+                                            constant:kLabelInset],
+    [_messageLabel.leadingAnchor constraintEqualToAnchor:self.view.leadingAnchor
+                                                constant:kLabelInset],
+    [_messageLabel.trailingAnchor
+        constraintEqualToAnchor:self.view.trailingAnchor
+                       constant:-kLabelInset],
+
+    [dontShowAgainView.topAnchor
+        constraintEqualToAnchor:_messageLabel.bottomAnchor
+                       constant:kLabelInset],
+    [dontShowAgainView.leadingAnchor
+        constraintEqualToAnchor:self.view.leadingAnchor],
+    [dontShowAgainView.trailingAnchor
+        constraintEqualToAnchor:self.view.trailingAnchor],
+
+    [_dismissButton.topAnchor
+        constraintEqualToAnchor:dontShowAgainView.bottomAnchor],
+    [_dismissButton.heightAnchor constraintEqualToConstant:kButtonHeight],
+    [_dismissButton.bottomAnchor
+        constraintEqualToAnchor:self.view.bottomAnchor],
+    [_dismissButton.leadingAnchor
+        constraintGreaterThanOrEqualToAnchor:self.view.leadingAnchor],
+
+    [_linkButton.topAnchor constraintEqualToAnchor:_dismissButton.topAnchor],
+    [_linkButton.leadingAnchor
+        constraintEqualToAnchor:_dismissButton.trailingAnchor],
+    [_linkButton.trailingAnchor
+        constraintEqualToAnchor:self.view.trailingAnchor],
+    [_linkButton.bottomAnchor
+        constraintEqualToAnchor:_dismissButton.bottomAnchor],
+    [_linkButton.heightAnchor constraintEqualToConstant:kButtonHeight],
+  ]];
+
+  if (_shouldShowDontShowAgainToggle) {
+    // This is to allow user to toggle switch by tapping the label. Tap events
+    // won't be bubbled down to the switch.
+    UITapGestureRecognizer* dontShowAgainTapGestureRecognizer =
+        [[UITapGestureRecognizer alloc]
+            initWithTarget:self
+                    action:@selector(didTapDontShowAgain:)];
+    dontShowAgainTapGestureRecognizer.numberOfTapsRequired = 1;
+    [dontShowAgainView addGestureRecognizer:dontShowAgainTapGestureRecognizer];
+    dontShowAgainView.userInteractionEnabled = YES;
+
+    NSString* dontShowAgainText = l10n_util::GetNSString(IDS_DONT_SHOW_AGAIN);
+
+    _dontShowAgainSwitch = [UISwitch new];
+    _dontShowAgainSwitch.translatesAutoresizingMaskIntoConstraints = NO;
+    _dontShowAgainSwitch.transform = CGAffineTransformMakeScale(0.5, 0.5);
+    _dontShowAgainSwitch.accessibilityLabel = dontShowAgainText;
+    [dontShowAgainView addSubview:_dontShowAgainSwitch];
+
+    _dontShowAgainLabel = [UILabel new];
+    _dontShowAgainLabel.textColor = RemotingTheme.dialogTextColor;
+    _dontShowAgainLabel.font = [UIFont systemFontOfSize:kDontShowAgainFontSize];
+    _dontShowAgainLabel.text = dontShowAgainText;
+    _dontShowAgainLabel.translatesAutoresizingMaskIntoConstraints = NO;
+    [dontShowAgainView addSubview:_dontShowAgainLabel];
+
+    [NSLayoutConstraint activateConstraints:@[
+      [dontShowAgainView.heightAnchor
+          constraintEqualToAnchor:_dontShowAgainLabel.heightAnchor
+                         constant:kDontShowAgainViewHeightAdjustment],
+
+      [_dontShowAgainSwitch.leadingAnchor
+          constraintEqualToAnchor:dontShowAgainView.leadingAnchor
+                         constant:kSwitchInset],
+      [_dontShowAgainSwitch.centerYAnchor
+          constraintEqualToAnchor:dontShowAgainView.centerYAnchor],
+
+      [_dontShowAgainLabel.leadingAnchor
+          constraintEqualToAnchor:_dontShowAgainSwitch.trailingAnchor],
+      [_dontShowAgainLabel.trailingAnchor
+          constraintEqualToAnchor:dontShowAgainView.trailingAnchor
+                         constant:-kLabelInset],
+      [_dontShowAgainLabel.centerYAnchor
+          constraintEqualToAnchor:_dontShowAgainSwitch.centerYAnchor],
+    ]];
+  }
+
+  [self.view setNeedsLayout];
+}
+
+- (void)viewDidLayoutSubviews {
+  CGFloat contentWidth =
+      MAX(_messageLabel.intrinsicContentSize.width + 2 * kLabelInset,
+          _dismissButton.intrinsicContentSize.width +
+              _linkButton.intrinsicContentSize.width);
+  CGFloat contentHeight = _messageLabel.intrinsicContentSize.height +
+                          2 * kLabelInset + kButtonHeight;
+  if (_shouldShowDontShowAgainToggle) {
+    contentWidth =
+        MAX(contentWidth,
+            kSwitchInset + _dontShowAgainSwitch.intrinsicContentSize.width +
+                _dontShowAgainLabel.intrinsicContentSize.width + kLabelInset);
+    contentHeight += _dontShowAgainLabel.intrinsicContentSize.height +
+                     kDontShowAgainViewHeightAdjustment;
+  }
+  self.preferredContentSize = CGSizeMake(contentWidth, contentHeight);
+}
+
+- (void)presentOnTopVCWithCompletion:
+    (NotificationDialogCompletionBlock)completion {
+  DCHECK(completion);
+  DCHECK(!_completion);
+  _completion = completion;
+  [remoting::TopPresentingVC() presentViewController:self
+                                            animated:YES
+                                          completion:nil];
+}
+
+- (void)viewDidDisappear:(BOOL)animated {
+  DCHECK(_completion);
+  _completion(_dontShowAgainSwitch && _dontShowAgainSwitch.on);
+  // Release the block as long as the dialog is disappeared, since it could
+  // potentially have retain loop.
+  _completion = nil;
+}
+
+#pragma mark - Private
+
+- (void)addButton:(UIButton*)button isPrimary:(BOOL)isPrimary {
+  button.translatesAutoresizingMaskIntoConstraints = NO;
+  button.backgroundColor = UIColor.clearColor;
+  UIColor* titleColor = isPrimary
+                            ? RemotingTheme.dialogPrimaryButtonTextColor
+                            : RemotingTheme.dialogSecondaryButtonTextColor;
+  [button setTitleColor:titleColor forState:UIControlStateNormal];
+  [self.view addSubview:button];
+}
+
+- (void)didTapLinkButton:(id)button {
+  [self dismissViewControllerAnimated:YES
+                           completion:^() {
+                             [UIApplication.sharedApplication openURL:_linkUrl
+                                                              options:@{}
+                                                    completionHandler:nil];
+                           }];
+}
+
+- (void)didTapDismissButton:(id)button {
+  [self dismissViewControllerAnimated:YES completion:nil];
+}
+
+- (void)didTapDontShowAgain:(id)sender {
+  [_dontShowAgainSwitch setOn:!_dontShowAgainSwitch.isOn animated:YES];
+}
+
+@end
diff --git a/remoting/ios/app/notification_presenter.mm b/remoting/ios/app/notification_presenter.mm
index 274eb5c1..d4c32ea5 100644
--- a/remoting/ios/app/notification_presenter.mm
+++ b/remoting/ios/app/notification_presenter.mm
@@ -10,8 +10,10 @@
 
 #import "ios/third_party/material_components_ios/src/components/Dialogs/src/MaterialDialogs.h"
 #import "ios/third_party/material_components_ios/src/components/Snackbar/src/MaterialSnackbar.h"
+#import "remoting/ios/app/notification_dialog_view_controller.h"
 #import "remoting/ios/facade/remoting_authentication.h"
 #import "remoting/ios/facade/remoting_service.h"
+#import "remoting/ios/persistence/remoting_preferences.h"
 
 #include "base/bind.h"
 #include "base/logging.h"
@@ -33,6 +35,21 @@
 constexpr base::TimeDelta kFetchNotificationDelay =
     base::TimeDelta::FromSeconds(2);
 
+enum NotificationUiState : unsigned int {
+  NOT_SHOWN = 0,
+  SHOWN_AT_LEAST_ONCE = 1,
+  USER_CHOSE_DONT_SHOW_AGAIN = 2,
+};
+
+NotificationUiState NSNumberToUiState(NSNumber* number) {
+  return number ? static_cast<NotificationUiState>(number.unsignedIntValue)
+                : NOT_SHOWN;
+}
+
+NSNumber* UiStateToNSNumber(NotificationUiState state) {
+  return @(static_cast<unsigned int>(state));
+}
+
 }  // namespace
 
 // static
@@ -101,13 +118,31 @@
 
   state_ = State::FETCHED;
 
+  DCHECK(!notification->message_id.empty());
+
+  std::string last_seen_message_id =
+      base::SysNSStringToUTF8([RemotingPreferences.instance
+          objectForFlag:RemotingFlagLastSeenNotificationMessageId]);
+  NotificationUiState ui_state = NSNumberToUiState([RemotingPreferences.instance
+      objectForFlag:RemotingFlagNotificationUiState]);
+  if (notification->allow_dont_show_again &&
+      ui_state == USER_CHOSE_DONT_SHOW_AGAIN &&
+      last_seen_message_id == notification->message_id) {
+    return;
+  }
+
+  if (last_seen_message_id != notification->message_id) {
+    [RemotingPreferences.instance
+        setObject:base::SysUTF8ToNSString(notification->message_id)
+          forFlag:RemotingFlagLastSeenNotificationMessageId];
+    ui_state = NOT_SHOWN;
+    [RemotingPreferences.instance setObject:UiStateToNSNumber(ui_state)
+                                    forFlag:RemotingFlagNotificationUiState];
+    [RemotingPreferences.instance synchronizeFlags];
+  }
+
   NSURL* url =
       [NSURL URLWithString:base::SysUTF8ToNSString(notification->link_url)];
-  auto open_url_block = ^{
-    [[UIApplication sharedApplication] openURL:url
-                                       options:@{}
-                             completionHandler:nil];
-  };
 
   NSString* message_text_nsstring =
       base::SysUTF8ToNSString(notification->message_text);
@@ -119,7 +154,11 @@
       MDCSnackbarMessage* message = [MDCSnackbarMessage new];
       message.text = message_text_nsstring;
       MDCSnackbarMessageAction* action = [MDCSnackbarMessageAction new];
-      action.handler = open_url_block;
+      action.handler = ^{
+        [[UIApplication sharedApplication] openURL:url
+                                           options:@{}
+                                 completionHandler:nil];
+      };
       action.title = link_text_nsstring;
       message.action = action;
       message.duration = MDCSnackbarMessageDurationMax;
@@ -127,26 +166,21 @@
       break;
     }
     case NotificationMessage::Appearance::DIALOG: {
-      // TODO(yuweih): Implement "Don't show again".
-      MDCAlertController* alert_controller =
-          [MDCAlertController alertControllerWithTitle:nil
-                                               message:message_text_nsstring];
-
-      MDCAlertAction* link_action =
-          [MDCAlertAction actionWithTitle:link_text_nsstring
-                                  handler:^(MDCAlertAction*) {
-                                    open_url_block();
-                                  }];
-      [alert_controller addAction:link_action];
-
-      MDCAlertAction* dismiss_action =
-          [MDCAlertAction actionWithTitle:l10n_util::GetNSString(IDS_DISMISS)
-                                  handler:nil];
-      [alert_controller addAction:dismiss_action];
-
-      [remoting::TopPresentingVC() presentViewController:alert_controller
-                                                animated:YES
-                                              completion:nil];
+      BOOL shouldShowDontShowAgain = notification->allow_dont_show_again &&
+                                     ui_state == SHOWN_AT_LEAST_ONCE;
+      NotificationDialogViewController* dialogVc =
+          [[NotificationDialogViewController alloc]
+                initWithNotificationMessage:*notification
+              shouldShowDontShowAgainToggle:shouldShowDontShowAgain];
+      [dialogVc presentOnTopVCWithCompletion:^(BOOL isDontShowAgainOn) {
+        NotificationUiState new_ui_state = isDontShowAgainOn
+                                               ? USER_CHOSE_DONT_SHOW_AGAIN
+                                               : SHOWN_AT_LEAST_ONCE;
+        [RemotingPreferences.instance
+            setObject:UiStateToNSNumber(new_ui_state)
+              forFlag:RemotingFlagNotificationUiState];
+        [RemotingPreferences.instance synchronizeFlags];
+      }];
       break;
     }
     default:
diff --git a/remoting/ios/app/remoting_theme.h b/remoting/ios/app/remoting_theme.h
index 3adc7b9..1dfcb0c 100644
--- a/remoting/ios/app/remoting_theme.h
+++ b/remoting/ios/app/remoting_theme.h
@@ -17,6 +17,10 @@
 @property(class, nonatomic, readonly) UIColor* connectionViewBackgroundColor;
 @property(class, nonatomic, readonly) UIColor* connectionViewForegroundColor;
 @property(class, nonatomic, readonly) UIColor* firstLaunchViewBackgroundColor;
+@property(class, nonatomic, readonly) UIColor* dialogBackgroundColor;
+@property(class, nonatomic, readonly) UIColor* dialogTextColor;
+@property(class, nonatomic, readonly) UIColor* dialogPrimaryButtonTextColor;
+@property(class, nonatomic, readonly) UIColor* dialogSecondaryButtonTextColor;
 @property(class, nonatomic, readonly) UIColor* flatButtonTextColor;
 @property(class, nonatomic, readonly) UIColor* hostCellTitleColor;
 @property(class, nonatomic, readonly) UIColor* hostCellStatusTextColor;
diff --git a/remoting/ios/app/remoting_theme.mm b/remoting/ios/app/remoting_theme.mm
index c5236ce0..3699ad46 100644
--- a/remoting/ios/app/remoting_theme.mm
+++ b/remoting/ios/app/remoting_theme.mm
@@ -18,6 +18,32 @@
 
 #pragma mark - Colors
 
++ (UIColor*)dialogBackgroundColor {
+  return UIColor.whiteColor;
+}
+
++ (UIColor*)dialogTextColor {
+  return UIColor.blackColor;
+}
+
++ (UIColor*)dialogPrimaryButtonTextColor {
+  static UIColor* color;
+  static dispatch_once_t onceToken;
+  dispatch_once(&onceToken, ^{
+    color = [UIColor colorWithRed:0.29 green:0.58 blue:0.96 alpha:1.0];
+  });
+  return color;
+}
+
++ (UIColor*)dialogSecondaryButtonTextColor {
+  static UIColor* color;
+  static dispatch_once_t onceToken;
+  dispatch_once(&onceToken, ^{
+    color = [UIColor colorWithWhite:0.25f alpha:1.f];
+  });
+  return color;
+}
+
 + (UIColor*)firstLaunchViewBackgroundColor {
   return UIColor.whiteColor;
 }
diff --git a/remoting/ios/persistence/remoting_preferences.h b/remoting/ios/persistence/remoting_preferences.h
index 8ff1539..178417e 100644
--- a/remoting/ios/persistence/remoting_preferences.h
+++ b/remoting/ios/persistence/remoting_preferences.h
@@ -11,6 +11,8 @@
 
 typedef NSString* RemotingFlag NS_STRING_ENUM;
 extern RemotingFlag const RemotingFlagUseWebRTC;
+extern RemotingFlag const RemotingFlagLastSeenNotificationMessageId;
+extern RemotingFlag const RemotingFlagNotificationUiState;
 
 // |RemotingPreferences| is the centralized place to ask for information about
 // defaults and prefrences.
diff --git a/remoting/ios/persistence/remoting_preferences.mm b/remoting/ios/persistence/remoting_preferences.mm
index b9ffe8d..e7edb92 100644
--- a/remoting/ios/persistence/remoting_preferences.mm
+++ b/remoting/ios/persistence/remoting_preferences.mm
@@ -18,6 +18,9 @@
 static NSString* const kFlagKey = @"kFlagKey";
 
 RemotingFlag const RemotingFlagUseWebRTC = @"UseWebRTC";
+RemotingFlag const RemotingFlagLastSeenNotificationMessageId =
+    @"LastSeenNotificationMessageId";
+RemotingFlag const RemotingFlagNotificationUiState = @"NotificationUiState";
 
 static NSString* KeyWithPrefix(NSString* prefix, NSString* key) {
   return [NSString stringWithFormat:@"%@-%@", prefix, key];
diff --git a/remoting/resources/remoting_strings_ml.xtb b/remoting/resources/remoting_strings_ml.xtb
index ac3e024..ec47217 100644
--- a/remoting/resources/remoting_strings_ml.xtb
+++ b/remoting/resources/remoting_strings_ml.xtb
@@ -10,7 +10,7 @@
 <translation id="1297009705180977556"><ph name="HOSTNAME" /> എന്നതിലേക്ക് കണക്‌റ്റ് ചെയ്യുന്നതിൽ പിശക്</translation>
 <translation id="1324095856329524885">(നിങ്ങളുടെ കമ്പ്യൂട്ടറിനായി ഈ ഫീച്ചർ ഇതുവരെ ലഭ്യമല്ല)</translation>
 <translation id="1342297293546459414">ഒരു പങ്കിട്ട കമ്പ്യൂട്ടർ കാണുക, നിയന്ത്രിക്കുക.</translation>
-<translation id="1389790901665088353">Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുക</translation>
+<translation id="1389790901665088353">Chrome റിമോട്ട് ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുക</translation>
 <translation id="1450760146488584666">അഭ്യർത്ഥിച്ച വസ്‌തു നിലവിലില്ല.</translation>
 <translation id="1480046233931937785">ക്രെഡിറ്റുകൾ</translation>
 <translation id="1520828917794284345">അനുയോജ്യമായ രീതിയിൽ ഡെസ്‌ക്‌ടോപ്പിന്റെ വലുപ്പം മാറ്റുക</translation>
@@ -20,15 +20,15 @@
 <translation id="1643640058022401035">ഈ പേജ് വിടുന്നത് നിങ്ങളുടെ ക്രോമോട്ടിംഗ് സെഷൻ അവസാനിപ്പിക്കും.</translation>
 <translation id="1654128982815600832">ഈ കമ്പ്യൂട്ടറിനായി വിദൂര കണക്ഷനുകൾ പ്രാപ്‌തമാക്കുന്നു…</translation>
 <translation id="170207782578677537">ഈ കമ്പ്യൂട്ടർ രജിസ്റ്റർ ചെയ്യുന്നത് പരാജയപ്പെട്ടു.</translation>
-<translation id="174018511426417793">നിങ്ങൾക്ക് രജിസ്റ്റർ ചെയ്‌ത കമ്പ്യൂട്ടറുകളൊന്നുമില്ല. ഒരു കമ്പ്യൂട്ടറിലേക്ക് വിദൂര കണക്ഷനുകൾ പ്രാപ്‌തമാക്കുന്നതിന് അതിൽ Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഇൻസ്റ്റാൾ ചെയ്‌ത് “<ph name="BUTTON_NAME" />” ക്ലിക്ക് ചെയ്യുക.</translation>
+<translation id="174018511426417793">നിങ്ങൾക്ക് രജിസ്റ്റർ ചെയ്‌ത കമ്പ്യൂട്ടറുകളൊന്നുമില്ല. ഒരു കമ്പ്യൂട്ടറിലേക്ക് വിദൂര കണക്ഷനുകൾ പ്രവർത്തനക്ഷമമാക്കുന്നതിന് അതിൽ Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഇൻസ്റ്റാൾ ചെയ്‌ത് “<ph name="BUTTON_NAME" />” ക്ലിക്കുചെയ്യുക.</translation>
 <translation id="1742469581923031760">കണക്റ്റുചെയ്യുന്നു...</translation>
-<translation id="1770394049404108959">എനിക്ക് അപ്ലിക്കേഷൻ തുറക്കാനാകുന്നില്ല.</translation>
+<translation id="1770394049404108959">എനിക്ക് ആപ്പ് തുറക്കാനാകുന്നില്ല.</translation>
 <translation id="177096447311351977">ക്ലയന്റിനായുള്ള ചാനൽ IP: <ph name="CLIENT_GAIA_IDENTIFIER" /> ip='<ph name="CLIENT_IP_ADDRESS_AND_PORT" />' host_ip='<ph name="HOST_IP_ADDRESS_AND_PORT" />' channel='<ph name="CHANNEL_TYPE" />' connection='<ph name="CONNECTION_TYPE" />'.</translation>
 <translation id="1779766957982586368">വിന്‍ഡോ അടയ്ക്കുക</translation>
 <translation id="1841799852846221389">ഈ കമ്പ്യൂട്ടറിനായി വിദൂര കണക്ഷനുകൾ അപ്രാപ്‌തമാക്കുന്നു...</translation>
 <translation id="1897488610212723051">ഇല്ലാതാക്കുക</translation>
 <translation id="195619862187186579">കീബോർഡ് ലേഔട്ടുകൾ</translation>
-<translation id="1996161829609978754">Chrome, ക്രോമോട്ടിംഗ് വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുന്നു.  ഡൗൺലോഡ് ചെയ്യൽ പൂർത്തിയായാൽ തുടരുന്നതിന് മുമ്പായി ഇൻസ്റ്റാളർ പ്രവർത്തിപ്പിക്കുക.</translation>
+<translation id="1996161829609978754">Chrome, Chromoting വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുന്നു.  ഡൗൺലോഡ് ചെയ്യൽ പൂർത്തിയായാൽ തുടരുന്നതിന് മുമ്പായി ഇൻസ്റ്റാളർ പ്രവർത്തിപ്പിക്കുക.</translation>
 <translation id="2009755455353575666">കണക്ഷൻ പരാജയപ്പെട്ടു</translation>
 <translation id="2013884659108657024">Chrome, Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുന്നു.  ഡൗൺലോഡ് ചെയ്യൽ പൂർത്തിയായാൽ തുടരുന്നതിന് മുമ്പായി ഇൻസ്റ്റാളർ പ്രവർത്തിപ്പിക്കുക.</translation>
 <translation id="2013996867038862849">ജോടിയാക്കിയ എല്ലാ ക്ലയന്റുകളെയും ഇല്ലാതാക്കി.</translation>
@@ -73,7 +73,7 @@
 <translation id="2891243864890517178">Mac-ന്‌ വേണ്ടി (OS X Yosemite 10.10-ഉം അതിന്‌ ശേഷമുള്ളവയും)</translation>
 <translation id="2894654864775534701">ഈ കമ്പ്യൂട്ടർ നിലവിൽ മറ്റൊരു അക്കൗണ്ടിലാണ് പങ്കിട്ടിരിക്കുന്നത്.</translation>
 <translation id="2919669478609886916">നിങ്ങൾ നിലവിൽ ഈ മെഷീൻ മറ്റൊരു ഉപയോക്താവുമായി പങ്കിടുകയാണ്. നിങ്ങൾക്ക് ഈ പങ്കിടൽ തുടരണോ?</translation>
-<translation id="2921543551052660690">നിങ്ങൾ മുമ്പ് <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) എന്നതായി സൈൻ ഇൻ ചെയ്‌തു. ആ അക്കൗണ്ടിൽ നിങ്ങളുടെ കമ്പ്യൂട്ടറുകൾ ആക്‌സസ് ചെയ്യാൻ, ആ അക്കൗണ്ട് ഉപയോഗിച്ച് <ph name="LINK_BEGIN" />Chromium-ൽ സൈൻ ഇൻ ചെയ്‌ത്<ph name="LINK_END" /> Chromoting വീണ്ടും ഇൻസ്റ്റാൾ ചെയ്യുക.</translation>
+<translation id="2921543551052660690">നിങ്ങൾ മുമ്പ് <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) എന്നതായി സൈൻ ഇൻ ചെയ്‌തു. ആ അക്കൗണ്ടിൽ നിങ്ങളുടെ കമ്പ്യൂട്ടറുകൾ ആക്‌സസ്സ് ചെയ്യാൻ, ആ അക്കൗണ്ട് ഉപയോഗിച്ച് <ph name="LINK_BEGIN" />Chromium-ൽ സൈൻ ഇൻ ചെയ്‌ത്<ph name="LINK_END" /> Chromoting വീണ്ടും ഇൻസ്റ്റാൾ ചെയ്യുക.</translation>
 <translation id="2926340305933667314">ഈ കമ്പ്യൂട്ടറിലേക്കുള്ള വിദൂര ആക്‌സസ് അപ്രാപ്‌തമാക്കുന്നത് പരാജയപ്പെട്ടു. പിന്നീട് വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="2930135165929238380">ആവശ്യമായ ചില ഘടകങ്ങൾ നഷ്‌ടമായിരിക്കുന്നു. chrome://plugins എന്നതിൽ പോയി നേറ്റീവ് ക്ലയന്റ് പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടോയെന്ന് ഉറപ്പാക്കുക.</translation>
 <translation id="2939145106548231838">ഹോസ്‌റ്റിലേക്ക് പ്രമാണീകരിക്കുക</translation>
@@ -131,27 +131,27 @@
 <translation id="4277463233460010382">ഒരു PIN നൽകാതെ ഒന്നോ അതിലധികമോ ക്ലയന്റുകളെ കണക്റ്റ് ചെയ്യാൻ അനുവദിക്കുന്നതിന് ഈ കമ്പ്യൂട്ടർ കോൺഫിഗർ ചെയ്‌തിരിക്കുന്നു.</translation>
 <translation id="4277736576214464567">ആക്‌സസ് കോഡ് അസാധുവാണ്. വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="4281844954008187215">സേവന നിബന്ധനകൾ</translation>
-<translation id="4361728918881830843">മറ്റൊരു കമ്പ്യൂട്ടറിൽ വിദൂര കണക്ഷൻ പ്രാപ്‌തമാക്കുന്നതിന്, അതിൽ Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഇൻസ്റ്റാൾ ചെയ്‌ത് “<ph name="BUTTON_NAME" />” ക്ലിക്ക് ചെയ്യുക.</translation>
+<translation id="4361728918881830843">മറ്റൊരു കമ്പ്യൂട്ടറിൽ വിദൂര കണക്ഷൻ പ്രവർത്തനക്ഷമമാക്കുന്നതിന്, അതിൽ Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഇൻസ്റ്റാൾ ചെയ്‌ത് “<ph name="BUTTON_NAME" />” ക്ലിക്ക് ചെയ്യുക.</translation>
 <translation id="4394049700291259645">അപ്രാപ്‌തമാക്കുക</translation>
 <translation id="4405930547258349619">കോർ ലൈബ്രറി</translation>
 <translation id="4430435636878359009">ഈ കമ്പ്യൂട്ടറിലേക്കുള്ള വിദൂര കണക്ഷനുകൾ അപ്രാപ്‌തമാക്കുക</translation>
 <translation id="4430915108080446161">ആക്‌സസ് കോഡ് സൃഷ്‌ടിക്കുന്നു...</translation>
 <translation id="4450893287417543264">വീണ്ടും കാണിക്കരുത്</translation>
 <translation id="4472575034687746823">ആരംഭിക്കാം</translation>
-<translation id="4481276415609939789">നിങ്ങൾ രജിസ്റ്റർ ചെയ്‌ത കമ്പ്യൂട്ടറുകളൊന്നുമില്ല. ഒരു കമ്പ്യൂട്ടറിലേക്ക് വിദൂര കണക്ഷനുകൾ പ്രാപ്‌തമാക്കുന്നതിന്, അതിൽ ക്രോമോട്ടിംഗ് ഇൻസ്റ്റാൾ ചെയ്‌ത് “<ph name="BUTTON_NAME" />” ക്ലിക്ക് ചെയ്യുക.</translation>
+<translation id="4481276415609939789">നിങ്ങൾക്ക് രജിസ്റ്റർ ചെയ്‌ത കമ്പ്യൂട്ടറുകളൊന്നുമില്ല. ഒരു കമ്പ്യൂട്ടറിലേക്ക് വിദൂര കണക്ഷനുകൾ പ്രവർത്തനക്ഷമമാക്കുന്നതിന്, അതിൽ Chromoting ഇൻസ്റ്റാൾ ചെയ്‌ത് “<ph name="BUTTON_NAME" />” ക്ലിക്ക് ചെയ്യുക.</translation>
 <translation id="4513946894732546136">ഫീഡ്ബാക്ക്</translation>
 <translation id="4517233780764084060">ശ്രദ്ധിക്കുക: എല്ലാ കീബോർഡ് കുറുക്കുവഴികളും ലഭ്യമാണെന്ന് ഉറപ്പുവരുത്താൻ, നിങ്ങൾക്ക് 'വിൻഡോ ആയി തുറക്കുക' എന്നതിൽ ക്രോമോട്ടിംഗ് കോൺഫിഗർ ചെയ്യാനാകും.</translation>
 <translation id="4563926062592110512">ക്ലയന്റ് വിച്ഛേദിച്ചു: <ph name="CLIENT_USERNAME" />.</translation>
 <translation id="4572065712096155137">ആക്‌സസ്</translation>
 <translation id="4592037108270173918">മൊബൈൽ നെറ്റ്‌വര്‍ക്കിലൂടെ ഒരു ഉപകരണത്തിലേക്ക് കണക്റ്റ് ചെയ്യുമ്പോൾ ഡാറ്റ നിരക്കുകൾ ബാധകമായേക്കാം. തുടരാന്‍ ആഗ്രഹിക്കുന്നുണ്ടോ?</translation>
-<translation id="4619978527973181021">അംഗീകരിച്ച് ഇൻസ്റ്റാളുചെയ്യുക</translation>
+<translation id="4619978527973181021">അംഗീകരിച്ച് ഇൻസ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="4635770493235256822">വിദൂര ഉപകരണങ്ങൾ</translation>
 <translation id="4660011489602794167">കീബോര്‍‌ഡ് കാണിക്കുക</translation>
 <translation id="4703302905453407178">ആവശ്യമുള്ള ഒരു ഘടകം പ്രവർത്തനം നിർത്തി. ഈ പ്രശ്‌നം ഡവലപ്പർമാർക്ക് റിപ്പോർട്ടുചെയ്യുക.</translation>
 <translation id="4703799847237267011">നിങ്ങളുടെ ക്രോമോട്ടിംഗ് സെഷൻ അവസാനിച്ചു.</translation>
 <translation id="4736223761657662401">കണക്ഷൻ ചരിത്രം</translation>
 <translation id="4741792197137897469">പ്രാമാണീകരണം പരാജയപ്പെട്ടു. Chrome-ൽ വീണ്ടും സൈൻ ഇൻ ചെയ്യുക.</translation>
-<translation id="477305884757156764">അപ്ലിക്കേഷന് വേഗത തീരെ കുറവാണ്.</translation>
+<translation id="477305884757156764">ആപ്പിന് വേഗത തീരെ കുറവാണ്.</translation>
 <translation id="4784508858340177375">X സെർവർ ക്രാഷായി അല്ലെങ്കിൽ ആരംഭിക്കുന്നതിൽ പരാജയപ്പെട്ടു.</translation>
 <translation id="4795786176190567663">ആ പ്രവർത്തനം നടത്താൻ നിങ്ങൾക്ക് അനുമതിയില്ല.</translation>
 <translation id="4798680868612952294">മൗസ് ഓപ്ഷനുകൾ</translation>
@@ -162,7 +162,7 @@
 <translation id="4913529628896049296">കണക്ഷനായി കാത്തിരിക്കുന്നു...</translation>
 <translation id="4918086044614829423">സ്വീകരിക്കുക</translation>
 <translation id="492843737083352574">എന്റെ കീബോർഡിലോ മൗസിലോ പ്രശ്‌നങ്ങളുണ്ട്.</translation>
-<translation id="4973800994433240357">ക്രോമോട്ടിംഗ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡുചെയ്യുന്നതിലൂടെ, നിങ്ങൾ Google <ph name="LINK_BEGIN" />സേവനനിബന്ധനകൾ<ph name="LINK_END" /> അംഗീകരിക്കുന്നു.</translation>
+<translation id="4973800994433240357">Chromoting ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുന്നതിലൂടെ, നിങ്ങൾ Google <ph name="LINK_BEGIN" />സേവനനിബന്ധനകൾ<ph name="LINK_END" /> അംഗീകരിക്കുന്നു.</translation>
 <translation id="4974476491460646149"><ph name="HOSTNAME" /> എന്നതിനുള്ള കണക്ഷൻ അടച്ചു</translation>
 <translation id="4985296110227979402">റിമോട്ട് ആക്‌സസിന് വേണ്ടി നിങ്ങൾ, ആദ്യം കമ്പ്യൂട്ടർ സജ്ജമാക്കേണ്ടതുണ്ട്</translation>
 <translation id="5064360042339518108"><ph name="HOSTNAME" /> (ഓഫ്‌ലൈൻ)</translation>
@@ -180,9 +180,9 @@
 <translation id="5327248766486351172">പേര്</translation>
 <translation id="533625276787323658">ഇതിലേക്ക് കണക്‌റ്റുചെയ്യാൻ ഒന്നുമില്ല</translation>
 <translation id="5363265567587775042">“<ph name="SHARE" />” ക്ലിക്ക് ചെയ്‌ത് ആക്‌സസ് കോഡ് നൽകാൻ ആരുടെ കമ്പ്യൂട്ടറാണ് നിങ്ങൾ ആക്‌സസ് ചെയ്യാൻ താൽപ്പര്യപ്പെടുന്നതെന്ന് ഉപയോക്താവിനോട് ചോദിക്കുക.</translation>
-<translation id="5379087427956679853">Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് നിങ്ങളുടെ കമ്പ്യൂട്ടർ വെബിലുടനീളം സുരക്ഷിതമായി പങ്കിടാൻ നിങ്ങളെ അനുവദിക്കുന്നു. രണ്ട് ഉപയോക്താക്കളും <ph name="URL" /> എന്നതിൽ കണ്ടെത്താനാകുന്ന Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് അപ്ലിക്കേഷൻ പ്രവർത്തിപ്പിക്കേണ്ടതുണ്ട്.</translation>
+<translation id="5379087427956679853">Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് നിങ്ങളുടെ കമ്പ്യൂട്ടർ വെബിലുടനീളം സുരക്ഷിതമായി പങ്കിടാൻ നിങ്ങളെ അനുവദിക്കുന്നു. രണ്ട് ഉപയോക്താക്കളും <ph name="URL" /> എന്നതിൽ കണ്ടെത്താനാകുന്ന Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ആപ്പ് പ്രവർത്തിപ്പിക്കേണ്ടതുണ്ട്.</translation>
 <translation id="5397086374758643919">Chrome വിദൂര ഡെസ്‌ക്ടോപ്പ് ഹോസ്റ്റ് അൺഇൻസ്റ്റാളർ</translation>
-<translation id="5419185025274123272">ആപ്പ് റീസെറ്റ് ചെയ്യാനായില്ല. തുടർന്നും ഒരു ബഗ് റിപ്പോർട്ട് നിങ്ങൾക്ക് അയയ്‌ക്കാനാകും.</translation>
+<translation id="5419185025274123272">അപ്ലിക്കേഷൻ റീസെറ്റ് ചെയ്യാനായില്ല. തുടർന്നും ഒരു ബഗ് റിപ്പോർട്ട് നിങ്ങൾക്ക് അയയ്‌ക്കാനാകും.</translation>
 <translation id="5419418238395129586">അവസാന ഓൺലൈൻ: <ph name="DATE" /></translation>
 <translation id="544077782045763683">ഹോസ്റ്റ് ഷട്ട്‌ ഡൗൺ ചെയ്‌തു.</translation>
 <translation id="5463789431147491241">ഈ Mac-ൽ <ph name="PRODUCT_NAME" /> ഉപയോഗിക്കാൻ, ഇനിപ്പറയുന്ന ഘട്ടങ്ങൾ പാലിക്കുക:
@@ -226,13 +226,13 @@
 <translation id="6304318647555713317">ക്ലയന്റ്</translation>
 <translation id="6381670701864002291">മറ്റെന്തെങ്കിലും.</translation>
 <translation id="6398765197997659313">പൂര്‍ണ്ണ സ്ക്രീനില്‍ നിന്ന് പുറത്തുകടക്കുക</translation>
-<translation id="6441316101718669559">ഈ പ്ലാറ്റ്‌ഫോമിൽ ഡെസ്‌ക്‌ടോപ്പ് സംയോജനം പിന്തുണയ്‌ക്കുന്നില്ല. നിങ്ങൾക്ക് തുടർന്നും ആപ്ലിക്കേഷൻ ഉപയോഗിക്കാനാകും, എന്നാൽ ഉപയോക്തൃ അനുഭവം തരംതാഴ്‌ത്തപ്പെടും.</translation>
+<translation id="6441316101718669559">ഈ പ്ലാറ്റ്‌ഫോമിൽ ഡെസ്‌ക്‌ടോപ്പ് സംയോജനം പിന്തുണയ്‌ക്കുന്നില്ല. നിങ്ങൾക്ക് തുടർന്നും ആപ്പ് ഉപയോഗിക്കാനാകും, എന്നാൽ ഉപയോക്തൃ അനുഭവം തരംതാഴ്‌ത്തപ്പെടും.</translation>
 <translation id="652218476070540101">ഈ കമ്പ്യൂട്ടറിനായുള്ള PIN അപ്‌ഡേറ്റ് ചെയ്യുന്നു…</translation>
 <translation id="6527303717912515753">പങ്കിടുക</translation>
-<translation id="6541219117979389420">നിങ്ങളുടെ ഐഡന്റിറ്റിയും (ഇമെയിൽ വിലാസം), Google ഡ്രൈവിലെ ഫയലുകളുടെയും ഫോൾഡറുകളുടെയും പേരുകളും പ്രോപ്പർട്ടികളും ഉൾപ്പെടെയുള്ള സ്വകാര്യ വിവരങ്ങൾ അപ്ലിക്കേഷൻ ലോഗുകളിൽ ഉൾപ്പെട്ടിരിക്കാം.</translation>
+<translation id="6541219117979389420">നിങ്ങളുടെ ഐഡന്റിറ്റിയും (ഇമെയിൽ വിലാസം), Google ഡ്രൈവിലെ ഫയലുകളുടെയും ഫോൾഡറുകളുടെയും പേരുകളും പ്രോപ്പർട്ടികളും ഉൾപ്പെടെയുള്ള സ്വകാര്യ വിവരങ്ങൾ ആപ്പ് ലോഗുകളിൽ ഉൾപ്പെട്ടിരിക്കാം.</translation>
 <translation id="6542902059648396432">ഒരു പ്രശ്‌നം റിപ്പോർട്ടുചെയ്യുക...</translation>
 <translation id="6550675742724504774">ഓപ്ഷനുകൾ</translation>
-<translation id="6570205395680337606">അപ്ലിക്കേഷൻ പുനഃസജ്ജമാക്കുക. സംരക്ഷിക്കാത്ത വർക്ക് ഉണ്ടെങ്കിൽ അത് നഷ്‌ടമാകും.</translation>
+<translation id="6570205395680337606">ആപ്പ് റീസെറ്റ് ചെയ്യുക. സംരക്ഷിക്കാത്ത വർക്ക് ഉണ്ടെങ്കിൽ അത് നഷ്‌ടമാകും.</translation>
 <translation id="6583902294974160967">പിന്തുണ</translation>
 <translation id="6612717000975622067">Ctrl-Alt-Del അയയ്‌ക്കുക</translation>
 <translation id="6654753848497929428">പങ്കിടുക</translation>
@@ -259,7 +259,7 @@
 <translation id="7067321367069083429">ടച്ച് സ്‌ക്രീൻ പോലെ ‌സ്‌ക്രീൻ പ്രവർത്തിക്കുന്നു</translation>
 <translation id="7116737094673640201">Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പിലേക്ക് സ്വാഗതം</translation>
 <translation id="7144878232160441200">വീണ്ടും ശ്രമിക്കുക</translation>
-<translation id="7149517134817561223">Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റിലേക്ക് കമാൻഡുകൾ നൽകുന്നതിനുള്ള അപ്ലിക്കേഷൻ.</translation>
+<translation id="7149517134817561223">Chrome റിമോട്ട് ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റിലേക്ക് കമാൻഡുകൾ നൽകുന്നതിനുള്ള ആപ്പ്.</translation>
 <translation id="7215059001581613786">ആറോ അതിലധികമോ അക്കങ്ങൾ അടങ്ങിയിരിക്കുന്ന PIN നൽകുക.</translation>
 <translation id="7312846573060934304">ഹോസ്‌റ്റ് ഓഫ്ലൈനാണ്.</translation>
 <translation id="7319983568955948908">പങ്കിടുന്നത് നിർത്തുക</translation>
@@ -280,7 +280,7 @@
 <translation id="7810127880729796595">സ്ഥിതിവിവരക്കണക്കുകൾ കാണിക്കുക (കണക്ഷൻ: <ph name="QUALITY" />)</translation>
 <translation id="7836926030608666805">ആവശ്യമുള്ള ചില ഘടകങ്ങൾ കാണുന്നില്ല. നിങ്ങൾ Chrome-ന്റെ ഏറ്റവും പുതിയ പതിപ്പ് ഉപയോഗിക്കുന്നുവെന്ന് ഉറപ്പാക്കി വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="7868137160098754906">വിദൂര കമ്പ്യൂട്ടറിനായി നിങ്ങളുടെ പിൻ നൽകുക.</translation>
-<translation id="7869445566579231750">ഈ അപ്ലിക്കേഷൻ പ്രവർത്തിപ്പിക്കാൻ നിങ്ങൾക്ക് അനുമതിയില്ല.</translation>
+<translation id="7869445566579231750">ഈ ആപ്പ് പ്രവർത്തിപ്പിക്കാൻ നിങ്ങൾക്ക് അനുമതിയില്ല.</translation>
 <translation id="7895403300744144251">റിമോട്ട് കമ്പ്യൂട്ടറിലെ സുരക്ഷാ നയങ്ങൾ നിങ്ങളുടെ അക്കൗണ്ടിൽ നിന്നുള്ള കണക്ഷനുകളെ അനുവദിക്കുന്നില്ല.</translation>
 <translation id="7936528439960309876">വലതുവശത്തേക്ക് ഡോക്കുചെയ്യുക</translation>
 <translation id="7948001860594368197">സ്‌ക്രീൻ ഓപ്‌ഷനുകൾ</translation>
@@ -288,7 +288,7 @@
 <translation id="7981525049612125370">റിമോട്ട് സെഷൻ കാലഹരണപ്പെട്ടു.</translation>
 <translation id="8038111231936746805">(ഡിഫോൾട്ട്)</translation>
 <translation id="8041089156583427627">ഫീഡ്ബാക്ക് അയയ്ക്കുക</translation>
-<translation id="8041721485428375115">Chrome വിദൂര ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുന്നതിലൂടെ, നിങ്ങൾ Google <ph name="LINK_BEGIN" />സേവനനിബന്ധനകൾ<ph name="LINK_END" /> അംഗീകരിക്കുന്നു.</translation>
+<translation id="8041721485428375115">Chrome റിമോട്ട് ഡെസ്‌ക്‌ടോപ്പ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുന്നതിലൂടെ, നിങ്ങൾ Google <ph name="LINK_BEGIN" />സേവനനിബന്ധനകൾ<ph name="LINK_END" /> അംഗീകരിക്കുന്നു.</translation>
 <translation id="8060029310790625334">സഹായ കേന്ദ്രം</translation>
 <translation id="806699900641041263"><ph name="HOSTNAME" /> എന്നതിലേക്ക് കണക്‌റ്റുചെയ്യുന്നു</translation>
 <translation id="8073845705237259513">Chrome റിമോട്ട് ഡെ‌സ്‌ക്ടോപ്പ് ഉപയോഗിക്കുമ്പോൾ, നിങ്ങളുടെ ഉപകരണത്തിൽ ഒരു Google അക്കൗണ്ട് ചേർക്കേണ്ടതായിവരും.</translation>
@@ -319,15 +319,15 @@
 <translation id="8743328882720071828"><ph name="CLIENT_USERNAME" /> എന്നതിനെ നിങ്ങളുടെ കമ്പ്യൂട്ടർ കാണാനും നിയന്ത്രിക്കാനും അനുവദിക്കണോ?</translation>
 <translation id="8747048596626351634">സെഷൻ ക്രാഷായി അല്ലെങ്കിൽ ആരംഭിക്കുന്നതിൽ പരാജയപ്പെട്ടു. വിദൂര കമ്പ്യൂട്ടറിൽ ~/.chrome-വിദൂര-ഡെസ്ക്‌ടോപ്പ്-സെഷൻ നിലവിലുണ്ടെങ്കിൽ, ഡെസ്‌ക്‌ടോപ്പ് അന്തരീക്ഷമോ വിൻഡോ മാനേജരോ പോലെയുള്ള, നീണ്ട നേരം റൺ ചെയ്യുന്ന പൂർവ്വതല (ഫോർഗ്രൗണ്ട്) പ്രോസസ് ആയി അത് ആരംഭിക്കുന്നുവെന്ന് ഉറപ്പാക്കുക.</translation>
 <translation id="8759753423332885148">കൂടുതലറിയുക.</translation>
-<translation id="8791202241915690908">ക്രോമോട്ടിംഗ് ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുക</translation>
+<translation id="8791202241915690908">Chromoting ഹോസ്റ്റ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുക</translation>
 <translation id="8804164990146287819">സ്വകാര്യത നയം</translation>
 <translation id="894763922177556086">നല്ലത്</translation>
 <translation id="895780780740011433">Windows 7-നും അതിന് ശേഷമുള്ളതിനും</translation>
-<translation id="897805526397249209">ഒരു വ്യത്യസ്‌‌ത കമ്പ്യൂട്ടറിലേക്ക് വിദൂര കണക്ഷനുകൾ പ്രാപ്‌തമാക്കുന്നതിന്, അതിൽ ക്രോമോട്ടിംഗ് ഇൻസ്റ്റാൾ ചെയ്‌ത് “<ph name="BUTTON_NAME" />” ക്ലിക്ക് ചെയ്യുക.</translation>
+<translation id="897805526397249209">ഒരു വ്യത്യസ്‌‌ത കമ്പ്യൂട്ടറിലേക്ക് വിദൂര കണക്ഷനുകൾ പ്രവർത്തനക്ഷമമാക്കുന്നതിന്, അതിൽ Chromoting ഇൻസ്റ്റാൾ ചെയ്‌ത് “<ph name="BUTTON_NAME" />” ക്ലിക്കുചെയ്യുക.</translation>
 <translation id="8998327464021325874">Chrome വിദൂര ഡെസ്‌ക്ടോപ്പ് ഹോസ്റ്റ് കൺട്രോളർ</translation>
 <translation id="9016232822027372900">ഏതുവിധേനയും കണക്റ്റുചെയ്യുക</translation>
 <translation id="906458777597946297">വിൻഡോ വലുതാക്കുക</translation>
-<translation id="9111855907838866522">നിങ്ങൾ റിമോട്ട് ഉപകരണത്തിലേക്ക് കണക്റ്റ് ചെയ്തിരിക്കുന്നു. മെനു തുറക്കാൻ, നാല് വിരലുകൾ ഉപയോഗിച്ച് സ്ക്രീനിൽ ടാപ്പ് ചെയ്യുക.</translation>
+<translation id="9111855907838866522">നിങ്ങൾ വിദൂര ഉപകരണത്തിലേക്ക് കണക്റ്റ് ചെയ്തിരിക്കുന്നു. മെനു തുറക്കാൻ, നാല് വിരലുകൾ ഉപയോഗിച്ച് സ്ക്രീനിൽ ടാപ്പ് ചെയ്യുക.</translation>
 <translation id="9126115402994542723">ഈ ഉപകരണത്തിൽ നിന്ന് ഈ ഹോസ്‌റ്റിലേയ്ക്ക് കണക്‌റ്റ് ചെയ്യുമ്പോൾ വീണ്ടും പിൻ നമ്പർ ചോദിക്കരുത്.</translation>
 <translation id="9149580767411232853">വിദൂര ഡെസ്‌ക്‌ടോപ്പ് പൂർണ്ണമായും ദൃശ്യമാക്കുക</translation>
 <translation id="9149992051684092333">നിങ്ങളുടെ ഡെസ്‌ക്‌ടോപ്പ് പങ്കിടുന്നത് ആരംഭിക്കാൻ, നിങ്ങളെ സഹായിക്കുന്ന വ്യക്തിക്ക് താഴെയുള്ള ആക്‌സസ് കോഡ് നൽകുക.</translation>
diff --git a/sandbox/win/src/restricted_token_utils.cc b/sandbox/win/src/restricted_token_utils.cc
index 53f86e0..496fb372 100644
--- a/sandbox/win/src/restricted_token_utils.cc
+++ b/sandbox/win/src/restricted_token_utils.cc
@@ -368,7 +368,8 @@
       &token_lowbox, base_token, TOKEN_ALL_ACCESS, &obj_attr,
       security_capabilities->AppContainerSid,
       security_capabilities->CapabilityCount,
-      security_capabilities->Capabilities, saved_handles_count, saved_handles);
+      security_capabilities->Capabilities, saved_handles_count,
+      saved_handles_count > 0 ? saved_handles : nullptr);
   if (!NT_SUCCESS(status))
     return GetLastErrorFromNtStatus(status);
 
diff --git a/services/device/BUILD.gn b/services/device/BUILD.gn
index d05fa5d..1d6a7ac 100644
--- a/services/device/BUILD.gn
+++ b/services/device/BUILD.gn
@@ -274,6 +274,7 @@
     sources += [
       "generic_sensor/platform_sensor_provider_winrt_unittest.cc",
       "generic_sensor/platform_sensor_reader_winrt_unittests.cc",
+      "geolocation/location_provider_winrt_unittest.cc",
     ]
 
     # Needed for "generic_sensor/platform_sensor_and_provider_unittest_win.cc"
diff --git a/services/device/geolocation/BUILD.gn b/services/device/geolocation/BUILD.gn
index be8abf4..5309eff 100644
--- a/services/device/geolocation/BUILD.gn
+++ b/services/device/geolocation/BUILD.gn
@@ -121,6 +121,15 @@
       "Foundation.framework",
     ]
   }
+
+  if (is_win) {
+    sources += [
+      "location_provider_winrt.cc",
+      "location_provider_winrt.h",
+    ]
+
+    deps += [ "//services/device/public/cpp:device_features" ]
+  }
 }
 
 if (is_android) {
diff --git a/services/device/geolocation/location_arbitrator.cc b/services/device/geolocation/location_arbitrator.cc
index 24391a0..f6eba09 100644
--- a/services/device/geolocation/location_arbitrator.cc
+++ b/services/device/geolocation/location_arbitrator.cc
@@ -156,8 +156,7 @@
 
 std::unique_ptr<LocationProvider>
 LocationArbitrator::NewSystemLocationProvider() {
-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \
-    defined(OS_FUCHSIA)
+#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_FUCHSIA)
   return nullptr;
 #else
   return device::NewSystemLocationProvider();
diff --git a/services/device/geolocation/location_provider_winrt.cc b/services/device/geolocation/location_provider_winrt.cc
new file mode 100644
index 0000000..82c94d4e
--- /dev/null
+++ b/services/device/geolocation/location_provider_winrt.cc
@@ -0,0 +1,90 @@
+// Copyright 2019 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 "services/device/geolocation/location_provider_winrt.h"
+
+#include "base/feature_list.h"
+#include "base/win/core_winrt_util.h"
+#include "services/device/public/cpp/device_features.h"
+#include "services/device/public/cpp/geolocation/geoposition.h"
+
+namespace device {
+namespace {
+bool IsWinRTSupported() {
+  return base::win::ResolveCoreWinRTDelayload() &&
+         base::win::ScopedHString::ResolveCoreWinRTStringDelayload();
+}
+}  // namespace
+
+// LocationProviderWinrt
+LocationProviderWinrt::LocationProviderWinrt() = default;
+
+LocationProviderWinrt::~LocationProviderWinrt() {
+  DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+  StopProvider();
+}
+
+void LocationProviderWinrt::SetUpdateCallback(
+    const LocationProviderUpdateCallback& callback) {
+  DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+  location_update_callback_ = callback;
+}
+
+void LocationProviderWinrt::StartProvider(bool high_accuracy) {
+  DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+  if (permission_granted_)
+    RegisterCallbacks();
+}
+
+void LocationProviderWinrt::StopProvider() {
+  DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+}
+
+const mojom::Geoposition& LocationProviderWinrt::GetPosition() {
+  DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+  return last_position_;
+}
+
+void LocationProviderWinrt::OnPermissionGranted() {
+  DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+  permission_granted_ = true;
+  if (!ValidateGeoposition(last_position_) &&
+      last_position_.error_code == mojom::Geoposition::ErrorCode::NONE) {
+    RegisterCallbacks();
+  }
+}
+
+void LocationProviderWinrt::HandleErrorCondition(
+    mojom::Geoposition::ErrorCode position_error_code,
+    const std::string& position_error_message) {
+  last_position_ = mojom::Geoposition();
+  last_position_.error_code = position_error_code;
+  last_position_.error_message = position_error_message;
+
+  if (location_update_callback_.is_null()) {
+    return;
+  }
+
+  location_update_callback_.Run(this, last_position_);
+}
+
+void LocationProviderWinrt::RegisterCallbacks() {
+  if (permission_granted_) {
+    HandleErrorCondition(mojom::Geoposition::ErrorCode::POSITION_UNAVAILABLE,
+                         "WinRT location provider not yet implemented.");
+  }
+}
+
+// static
+std::unique_ptr<LocationProvider> NewSystemLocationProvider() {
+  if (!base::FeatureList::IsEnabled(
+          features::kWinrtGeolocationImplementation) ||
+      !IsWinRTSupported()) {
+    return nullptr;
+  }
+
+  return std::make_unique<LocationProviderWinrt>();
+}
+
+}  // namespace device
diff --git a/services/device/geolocation/location_provider_winrt.h b/services/device/geolocation/location_provider_winrt.h
new file mode 100644
index 0000000..5947b012
--- /dev/null
+++ b/services/device/geolocation/location_provider_winrt.h
@@ -0,0 +1,43 @@
+// Copyright 2019 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 SERVICES_DEVICE_GEOLOCATION_LOCATION_PROVIDER_WINRT_H_
+#define SERVICES_DEVICE_GEOLOCATION_LOCATION_PROVIDER_WINRT_H_
+
+#include "base/threading/thread_checker.h"
+#include "services/device/public/cpp/geolocation/location_provider.h"
+#include "services/device/public/mojom/geoposition.mojom.h"
+
+namespace device {
+
+// Location provider for Windows 8/10 using the WinRT platform apis
+class LocationProviderWinrt : public LocationProvider {
+ public:
+  LocationProviderWinrt();
+  ~LocationProviderWinrt() override;
+
+  // LocationProvider implementation.
+  void SetUpdateCallback(
+      const LocationProviderUpdateCallback& callback) override;
+  void StartProvider(bool high_accuracy) override;
+  void StopProvider() override;
+  const mojom::Geoposition& GetPosition() override;
+  void OnPermissionGranted() override;
+
+ private:
+  void HandleErrorCondition(mojom::Geoposition::ErrorCode position_error_code,
+                            const std::string& position_error_message);
+  void RegisterCallbacks();
+
+  mojom::Geoposition last_position_;
+  LocationProviderUpdateCallback location_update_callback_;
+  bool permission_granted_ = false;
+  THREAD_CHECKER(thread_checker_);
+
+  DISALLOW_COPY_AND_ASSIGN(LocationProviderWinrt);
+};
+
+}  // namespace device
+
+#endif  // SERVICES_DEVICE_GEOLOCATION_LOCATION_PROVIDER_WINRT_H_
diff --git a/services/device/geolocation/location_provider_winrt_unittest.cc b/services/device/geolocation/location_provider_winrt_unittest.cc
new file mode 100644
index 0000000..7b18443
--- /dev/null
+++ b/services/device/geolocation/location_provider_winrt_unittest.cc
@@ -0,0 +1,91 @@
+// Copyright 2019 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 "services/device/geolocation/location_provider_winrt.h"
+
+#include "base/run_loop.h"
+#include "base/test/task_environment.h"
+#include "services/device/public/cpp/geolocation/geoposition.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace device {
+namespace {
+
+class MockLocationObserver {
+ public:
+  MockLocationObserver() = default;
+  ~MockLocationObserver() = default;
+
+  void InvalidateLastPosition() {
+    last_position_.error_code = mojom::Geoposition::ErrorCode::NONE;
+    EXPECT_FALSE(ValidateGeoposition(last_position_));
+  }
+
+  void OnLocationUpdate(const LocationProvider* provider,
+                        const mojom::Geoposition& position) {
+    last_position_ = position;
+    on_location_update_called_ = true;
+  }
+
+  mojom::Geoposition last_position() { return last_position_; }
+
+  bool on_location_update_called() { return on_location_update_called_; }
+
+ private:
+  mojom::Geoposition last_position_;
+  bool on_location_update_called_ = false;
+};
+
+}  // namespace
+
+class LocationProviderWinrtTest : public testing::Test {
+ protected:
+  LocationProviderWinrtTest()
+      : observer_(std::make_unique<MockLocationObserver>()),
+        callback_(base::BindRepeating(&MockLocationObserver::OnLocationUpdate,
+                                      base::Unretained(observer_.get()))) {}
+
+  void InitializeProvider() {
+    provider_ = std::make_unique<LocationProviderWinrt>();
+    provider_->SetUpdateCallback(callback_);
+  }
+
+  // testing::Test
+  void TearDown() override {}
+
+  base::test::TaskEnvironment task_environment_;
+  const std::unique_ptr<MockLocationObserver> observer_;
+  const LocationProvider::LocationProviderUpdateCallback callback_;
+  std::unique_ptr<LocationProviderWinrt> provider_;
+};
+
+TEST_F(LocationProviderWinrtTest, CreateDestroy) {
+  InitializeProvider();
+  EXPECT_TRUE(provider_);
+  provider_.reset();
+}
+
+// Tests when OnPermissionGranted() called location update is provided.
+TEST_F(LocationProviderWinrtTest, HasPermissions) {
+  InitializeProvider();
+  provider_->OnPermissionGranted();
+  provider_->StartProvider(/*enable_high_accuracy=*/false);
+
+  bool on_location_update_called = observer_->on_location_update_called();
+  EXPECT_TRUE(on_location_update_called);
+
+  EXPECT_FALSE(ValidateGeoposition(observer_->last_position()));
+  EXPECT_EQ(mojom::Geoposition::ErrorCode::POSITION_UNAVAILABLE,
+            observer_->last_position().error_code);
+}
+
+// Tests when OnPermissionGranted() has not been called location update
+// is not provided.
+TEST_F(LocationProviderWinrtTest, NoPermissions) {
+  InitializeProvider();
+  provider_->StartProvider(/*enable_high_accuracy=*/false);
+
+  EXPECT_FALSE(observer_->on_location_update_called());
+}
+}  // namespace device
diff --git a/services/device/public/cpp/device_features.cc b/services/device/public/cpp/device_features.cc
index b98b2bd..4f05b0c 100644
--- a/services/device/public/cpp/device_features.cc
+++ b/services/device/public/cpp/device_features.cc
@@ -14,5 +14,9 @@
 // backend instead of the ISensor API on Windows.
 const base::Feature kWinrtSensorsImplementation{
     "WinrtSensorsImplementation", base::FEATURE_DISABLED_BY_DEFAULT};
+// Enables usage of the Windows.Devices.Geolocation WinRT API for the
+// LocationProvider instead of the NetworkLocationProvider on Windows.
+const base::Feature kWinrtGeolocationImplementation{
+    "WinrtGeolocationImplementation", base::FEATURE_DISABLED_BY_DEFAULT};
 
 }  // namespace features
diff --git a/services/device/public/cpp/device_features.h b/services/device/public/cpp/device_features.h
index c5973371..de55d10 100644
--- a/services/device/public/cpp/device_features.h
+++ b/services/device/public/cpp/device_features.h
@@ -17,6 +17,8 @@
 // in the .cc file.
 DEVICE_FEATURES_EXPORT extern const base::Feature kGenericSensorExtraClasses;
 DEVICE_FEATURES_EXPORT extern const base::Feature kWinrtSensorsImplementation;
+DEVICE_FEATURES_EXPORT extern const base::Feature
+    kWinrtGeolocationImplementation;
 
 }  // namespace features
 
diff --git a/services/preferences/tracked/pref_hash_filter_unittest.cc b/services/preferences/tracked/pref_hash_filter_unittest.cc
index d6b26ebb..c5f80b2 100644
--- a/services/preferences/tracked/pref_hash_filter_unittest.cc
+++ b/services/preferences/tracked/pref_hash_filter_unittest.cc
@@ -1230,7 +1230,7 @@
   // before-write callback is run.
   ASSERT_EQ(
       0u, mock_external_validation_hash_store_contents_->cleared_paths_count());
-  callbacks.first.Run();
+  std::move(callbacks.first).Run();
   ASSERT_EQ(
       2u, mock_external_validation_hash_store_contents_->cleared_paths_count());
 
@@ -1238,7 +1238,7 @@
   ASSERT_EQ(
       0u, mock_external_validation_hash_store_contents_->stored_hashes_count());
 
-  callbacks.second.Run(true);
+  std::move(callbacks.second).Run(true);
 
   ASSERT_EQ(
       2u, mock_external_validation_hash_store_contents_->stored_hashes_count());
@@ -1267,13 +1267,13 @@
 
   ASSERT_FALSE(callbacks.first.is_null());
 
-  callbacks.first.Run();
+  std::move(callbacks.first).Run();
 
   // The pref should have been cleared from the external validation store.
   ASSERT_EQ(
       1u, mock_external_validation_hash_store_contents_->cleared_paths_count());
 
-  callbacks.second.Run(false);
+  std::move(callbacks.second).Run(false);
 
   // Expect no writes to the external validation hash store contents.
   ASSERT_EQ(0u,
diff --git a/services/preferences/tracked/tracked_preferences_migration.cc b/services/preferences/tracked/tracked_preferences_migration.cc
index 92e67b8..ac8e39d 100644
--- a/services/preferences/tracked/tracked_preferences_migration.cc
+++ b/services/preferences/tracked/tracked_preferences_migration.cc
@@ -32,9 +32,9 @@
           unprotected_store_cleaner,
       const base::Callback<void(const std::string& key)>&
           protected_store_cleaner,
-      const base::Callback<void(const base::Closure&)>&
+      const base::Callback<void(base::OnceClosure)>&
           register_on_successful_unprotected_store_write_callback,
-      const base::Callback<void(const base::Closure&)>&
+      const base::Callback<void(base::OnceClosure)>&
           register_on_successful_protected_store_write_callback,
       std::unique_ptr<PrefHashStore> unprotected_pref_hash_store,
       std::unique_ptr<PrefHashStore> protected_pref_hash_store,
@@ -63,9 +63,9 @@
 
   const base::Callback<void(const std::string& key)> unprotected_store_cleaner_;
   const base::Callback<void(const std::string& key)> protected_store_cleaner_;
-  const base::Callback<void(const base::Closure&)>
+  const base::Callback<void(base::OnceClosure)>
       register_on_successful_unprotected_store_write_callback_;
-  const base::Callback<void(const base::Closure&)>
+  const base::Callback<void(base::OnceClosure)>
       register_on_successful_protected_store_write_callback_;
 
   InterceptablePrefFilter::FinalizeFilterOnLoadCallback
@@ -98,7 +98,7 @@
 // once the destination pref store they were migrated to was successfully
 // written to disk. Otherwise, executes the cleanup right away.
 void ScheduleSourcePrefStoreCleanup(
-    const base::Callback<void(const base::Closure&)>&
+    const base::Callback<void(base::OnceClosure)>&
         register_on_successful_destination_store_write_callback,
     const base::Callback<void(const std::string& key)>& source_store_cleaner,
     const std::set<std::string>& keys_to_clean,
@@ -197,9 +197,9 @@
     const base::Callback<void(const std::string& key)>&
         unprotected_store_cleaner,
     const base::Callback<void(const std::string& key)>& protected_store_cleaner,
-    const base::Callback<void(const base::Closure&)>&
+    const base::Callback<void(base::OnceClosure)>&
         register_on_successful_unprotected_store_write_callback,
-    const base::Callback<void(const base::Closure&)>&
+    const base::Callback<void(base::OnceClosure)>&
         register_on_successful_protected_store_write_callback,
     std::unique_ptr<PrefHashStore> unprotected_pref_hash_store,
     std::unique_ptr<PrefHashStore> protected_pref_hash_store,
@@ -214,8 +214,7 @@
       register_on_successful_protected_store_write_callback_(
           register_on_successful_protected_store_write_callback),
       unprotected_pref_hash_store_(std::move(unprotected_pref_hash_store)),
-      protected_pref_hash_store_(std::move(protected_pref_hash_store)) {
-}
+      protected_pref_hash_store_(std::move(protected_pref_hash_store)) {}
 
 TrackedPreferencesMigrator::~TrackedPreferencesMigrator() {}
 
@@ -306,9 +305,9 @@
     const base::Callback<void(const std::string& key)>&
         unprotected_store_cleaner,
     const base::Callback<void(const std::string& key)>& protected_store_cleaner,
-    const base::Callback<void(const base::Closure&)>&
+    const base::Callback<void(base::OnceClosure)>&
         register_on_successful_unprotected_store_write_callback,
-    const base::Callback<void(const base::Closure&)>&
+    const base::Callback<void(base::OnceClosure)>&
         register_on_successful_protected_store_write_callback,
     std::unique_ptr<PrefHashStore> unprotected_pref_hash_store,
     std::unique_ptr<PrefHashStore> protected_pref_hash_store,
diff --git a/services/preferences/tracked/tracked_preferences_migration.h b/services/preferences/tracked/tracked_preferences_migration.h
index 381434a..24f9c72 100644
--- a/services/preferences/tracked/tracked_preferences_migration.h
+++ b/services/preferences/tracked/tracked_preferences_migration.h
@@ -33,9 +33,9 @@
     const base::Callback<void(const std::string& key)>&
         unprotected_store_cleaner,
     const base::Callback<void(const std::string& key)>& protected_store_cleaner,
-    const base::Callback<void(const base::Closure&)>&
+    const base::Callback<void(base::OnceClosure)>&
         register_on_successful_unprotected_store_write_callback,
-    const base::Callback<void(const base::Closure&)>&
+    const base::Callback<void(base::OnceClosure)>&
         register_on_successful_protected_store_write_callback,
     std::unique_ptr<PrefHashStore> unprotected_pref_hash_store,
     std::unique_ptr<PrefHashStore> protected_pref_hash_store,
diff --git a/services/preferences/tracked/tracked_preferences_migration_unittest.cc b/services/preferences/tracked/tracked_preferences_migration_unittest.cc
index fdbdd09..9d1df31 100644
--- a/services/preferences/tracked/tracked_preferences_migration_unittest.cc
+++ b/services/preferences/tracked/tracked_preferences_migration_unittest.cc
@@ -272,13 +272,11 @@
     switch (store_id) {
       case MOCK_UNPROTECTED_PREF_STORE:
         EXPECT_FALSE(unprotected_store_successful_write_callback_.is_null());
-        unprotected_store_successful_write_callback_.Run();
-        unprotected_store_successful_write_callback_.Reset();
+        std::move(unprotected_store_successful_write_callback_).Run();
         break;
       case MOCK_PROTECTED_PREF_STORE:
         EXPECT_FALSE(protected_store_successful_write_callback_.is_null());
-        protected_store_successful_write_callback_.Run();
-        protected_store_successful_write_callback_.Reset();
+        std::move(protected_store_successful_write_callback_).Run();
         break;
     }
   }
@@ -286,15 +284,17 @@
  private:
   void RegisterSuccessfulWriteClosure(
       MockPrefStoreID store_id,
-      const base::Closure& successful_write_closure) {
+      base::OnceClosure successful_write_closure) {
     switch (store_id) {
       case MOCK_UNPROTECTED_PREF_STORE:
         EXPECT_TRUE(unprotected_store_successful_write_callback_.is_null());
-        unprotected_store_successful_write_callback_ = successful_write_closure;
+        unprotected_store_successful_write_callback_ =
+            std::move(successful_write_closure);
         break;
       case MOCK_PROTECTED_PREF_STORE:
         EXPECT_TRUE(protected_store_successful_write_callback_.is_null());
-        protected_store_successful_write_callback_ = successful_write_closure;
+        protected_store_successful_write_callback_ =
+            std::move(successful_write_closure);
         break;
     }
   }
@@ -362,8 +362,8 @@
   SimpleInterceptablePrefFilter mock_unprotected_pref_filter_;
   SimpleInterceptablePrefFilter mock_protected_pref_filter_;
 
-  base::Closure unprotected_store_successful_write_callback_;
-  base::Closure protected_store_successful_write_callback_;
+  base::OnceClosure unprotected_store_successful_write_callback_;
+  base::OnceClosure protected_store_successful_write_callback_;
 
   bool migration_modified_unprotected_store_;
   bool migration_modified_protected_store_;
diff --git a/services/tracing/public/cpp/perfetto/interning_index.h b/services/tracing/public/cpp/perfetto/interning_index.h
index 525cdb6..d9a7cd2 100644
--- a/services/tracing/public/cpp/perfetto/interning_index.h
+++ b/services/tracing/public/cpp/perfetto/interning_index.h
@@ -5,11 +5,11 @@
 #ifndef SERVICES_TRACING_PUBLIC_CPP_PERFETTO_INTERNING_INDEX_H_
 #define SERVICES_TRACING_PUBLIC_CPP_PERFETTO_INTERNING_INDEX_H_
 
+#include <array>
 #include <cstdint>
 #include <tuple>
 
 #include "base/component_export.h"
-#include "base/containers/mru_cache.h"
 
 namespace tracing {
 
@@ -17,7 +17,7 @@
 using InterningID = uint32_t;
 
 struct COMPONENT_EXPORT(TRACING_CPP) InterningIndexEntry {
-  InterningID id;
+  InterningID id = 0;
 
   // Whether the entry was emitted since the last reset of emitted state. If
   // |false|, the sink should (re)emit the entry in the current TracePacket.
@@ -25,29 +25,80 @@
   // We don't remove entries on reset of emitted state, so that we can continue
   // to use their original IDs and avoid unnecessarily incrementing the ID
   // counter.
-  bool was_emitted;
+  bool was_emitted = false;
 };
 
 // Interning index that associates interned values with interning IDs. It can
 // track entries of different types within the same ID space, e.g. so that both
 // copied strings and pointers to static strings can co-exist in the same index.
-// Uses base::MRUCaches to track the ID associations while enforcing an upper
-// bound on the index size.
-template <typename... ValueTypes>
+//
+// The index will cache up to |N| values per ValueType after which it will start
+// replacing them in a FIFO basis. N must be a power of 2 for performance
+// reasons.
+template <size_t N, typename... ValueTypes>
 class COMPONENT_EXPORT(TRACING_CPP) InterningIndex {
  public:
+  // IndexCache is just a pair of std::arrays which arg kept in sync with each
+  // other. This has an advantage over a std::array<pairs> since we can load a
+  // bunch of keys to search in one cache line without loading values.
   template <typename ValueType>
-  using IndexCache = base::MRUCache<ValueType, InterningIndexEntry>;
+  class IndexCache {
+   public:
+    IndexCache() {
+      // Assert that N is a power of two. This allows the "% N" in Insert() to
+      // compile to a bunch of bit shifts which improves performance over an
+      // arbitrary modulo division.
+      static_assert(
+          N && ((N & (N - 1)) == 0),
+          "InterningIndex requires that the cache size be a power of 2.");
+    }
 
-  // Construct a new index with caches for each of the ValueTypes. The cache
-  // size for the n-th ValueType will be limited to max_entry_counts[n] entries.
+    void Clear() {
+      for (auto& val : keys_) {
+        val = ValueType{};
+      }
+    }
+
+    typename std::array<InterningIndexEntry, N>::iterator Find(
+        const ValueType& value) {
+      auto it = std::find(keys_.begin(), keys_.end(), value);
+      // If the find above returns it == keys_.end(), then (it - keys_.begin())
+      // will equal keys_.size() which is equal to values_.size(). So
+      // values_.begin() + values_size() will be values_.end() and we've
+      // returned the correct value. This saves us checking a conditional in
+      // this function.
+      return values_.begin() + (it - keys_.begin());
+    }
+
+    typename std::array<InterningIndexEntry, N>::iterator Insert(
+        const ValueType& key,
+        InterningIndexEntry&& value) {
+      size_t new_position = current_index_++ % N;
+      keys_[new_position] = key;
+      values_[new_position] = std::move(value);
+      return values_.begin() + new_position;
+    }
+
+    typename std::array<InterningIndexEntry, N>::iterator begin() {
+      return values_.begin();
+    }
+    typename std::array<InterningIndexEntry, N>::iterator end() {
+      return values_.end();
+    }
+
+   private:
+    size_t current_index_ = 0;
+    std::array<ValueType, N> keys_{{}};
+    std::array<InterningIndexEntry, N> values_{{}};
+  };
+
+  // Construct a new index with caches for each of the ValueTypes. Every cache
+  // is |N| elements.
   //
-  // For example, to construct an index containing at most 1000 char* pointers
-  // and 100 std::string objects:
-  //     InterningIndex<char*, std::string> index(1000, 100);
-  template <typename... SizeType>
-  InterningIndex(SizeType... max_entry_counts)
-      : entry_caches_(max_entry_counts...) {}
+  // For example, to construct an index containing at most 1024 char* pointers
+  // and 1024 std::string objects:
+  //     InterningIndex<1024, char*, std::string> index;
+  InterningIndex() = default;
 
   // Returns the entry for the given interned |value|, adding it to the index if
   // it didn't exist previously or was evicted from the index. Entries may be
@@ -60,14 +111,14 @@
   InterningIndexEntry LookupOrAdd(const ValueType& value) {
     IndexCache<ValueType>& cache =
         std::get<IndexCache<ValueType>>(entry_caches_);
-    auto it = cache.Get(value);
+    auto it = cache.Find(value);
     if (it == cache.end()) {
-      it = cache.Put(value, InterningIndexEntry{next_id_++, false});
+      it = cache.Insert(value, InterningIndexEntry{next_id_++, false});
     }
-    bool was_emitted = it->second.was_emitted;
+    bool was_emitted = it->was_emitted;
     // The caller will (re)emit the entry, so mark it as emitted.
-    it->second.was_emitted = true;
-    return InterningIndexEntry{it->second.id, was_emitted};
+    it->was_emitted = true;
+    return InterningIndexEntry{it->id, was_emitted};
   }
 
   // Marks all entries as "not emitted", so that they will be reemitted when
@@ -103,7 +154,7 @@
       cache.Clear();
     } else {
       for (auto& entry : cache) {
-        entry.second.was_emitted = false;
+        entry.was_emitted = false;
       }
     }
   }
diff --git a/services/tracing/public/cpp/perfetto/track_event_thread_local_event_sink.cc b/services/tracing/public/cpp/perfetto/track_event_thread_local_event_sink.cc
index a484a2d..2ca0914 100644
--- a/services/tracing/public/cpp/perfetto/track_event_thread_local_event_sink.cc
+++ b/services/tracing/public/cpp/perfetto/track_event_thread_local_event_sink.cc
@@ -169,12 +169,6 @@
     : ThreadLocalEventSink(std::move(trace_writer),
                            session_id,
                            disable_interning),
-      // TODO(eseckler): Tune these values experimentally.
-      interned_event_categories_(1000),
-      interned_event_names_(1000, 100),
-      interned_annotation_names_(1000, 100),
-      interned_source_locations_(1000),
-      interned_log_message_bodies_(100),
       process_id_(TraceLog::GetInstance()->process_id()),
       thread_id_(static_cast<int>(base::PlatformThread::CurrentId())),
       privacy_filtering_enabled_(proto_writer_filtering_enabled) {
diff --git a/services/tracing/public/cpp/perfetto/track_event_thread_local_event_sink.h b/services/tracing/public/cpp/perfetto/track_event_thread_local_event_sink.h
index 52a071a..9a4b90a 100644
--- a/services/tracing/public/cpp/perfetto/track_event_thread_local_event_sink.h
+++ b/services/tracing/public/cpp/perfetto/track_event_thread_local_event_sink.h
@@ -69,12 +69,13 @@
 
   // TODO(eseckler): Make it possible to register new indexes for use from
   // TRACE_EVENT macros.
-  InterningIndex<const char*> interned_event_categories_;
-  InterningIndex<const char*, std::string> interned_event_names_;
-  InterningIndex<const char*, std::string> interned_annotation_names_;
-  InterningIndex<std::tuple<const char*, const char*, int>>
+  // TODO(eseckler): Tune the cache sizes experimentally.
+  InterningIndex<1024, const char*> interned_event_categories_;
+  InterningIndex<1024, const char*, std::string> interned_event_names_;
+  InterningIndex<1024, const char*, std::string> interned_annotation_names_;
+  InterningIndex<1024, std::tuple<const char*, const char*, int>>
       interned_source_locations_;
-  InterningIndex<std::string> interned_log_message_bodies_;
+  InterningIndex<128, std::string> interned_log_message_bodies_;
 
   static std::atomic<uint32_t> incremental_state_reset_id_;
 
diff --git a/services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.h b/services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.h
index 7d0bf610..6d71f9e 100644
--- a/services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.h
+++ b/services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.h
@@ -78,14 +78,15 @@
     const base::PlatformThreadId sampled_thread_id_;
     base::Lock trace_writer_lock_;
     std::unique_ptr<perfetto::TraceWriter> trace_writer_;
-    InterningIndex<size_t> interned_callstacks_{1000};
-    InterningIndex<std::pair<std::string, std::string>,
+    InterningIndex<1024, size_t> interned_callstacks_{};
+    InterningIndex<1024,
+                   std::pair<std::string, std::string>,
                    std::pair<uintptr_t, std::string>>
-        interned_frames_{1000, 1000};
-    InterningIndex<std::string> interned_frame_names_{1000};
-    InterningIndex<std::string> interned_module_names_{1000};
-    InterningIndex<std::string> interned_module_ids_{1000};
-    InterningIndex<uintptr_t> interned_modules_{1000};
+        interned_frames_{};
+    InterningIndex<1024, std::string> interned_frame_names_{};
+    InterningIndex<1024, std::string> interned_module_names_{};
+    InterningIndex<1024, std::string> interned_module_ids_{};
+    InterningIndex<1024, uintptr_t> interned_modules_{};
     bool reset_incremental_state_ = true;
     uint32_t last_incremental_state_reset_id_ = 0;
     int32_t last_emitted_process_priority_ = -1;
diff --git a/testing/buildbot/chromium.android.fyi.json b/testing/buildbot/chromium.android.fyi.json
index f447244..0bcad6e 100644
--- a/testing/buildbot/chromium.android.fyi.json
+++ b/testing/buildbot/chromium.android.fyi.json
@@ -2,33 +2,21 @@
   "AAAAA1 AUTOGENERATED FILE DO NOT EDIT": {},
   "AAAAA2 See generate_buildbot_json.py to make changes": {},
   "Android WebView P FYI (rel)": {
-    "gtest_tests": [
+    "isolated_scripts": [
       {
-        "args": [
-          "--gs-results-bucket=chromium-result-details",
-          "--recover-devices"
-        ],
+        "isolate_name": "chrome_public_wpt",
         "merge": {
-          "args": [
-            "--bucket",
-            "chromium-result-details",
-            "--test-name",
-            "webview_cts_tests"
-          ],
-          "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
+          "args": [],
+          "script": "//testing/merge_scripts/standard_isolated_script_merge.py"
         },
+        "name": "chrome_public_wpt",
         "swarming": {
           "can_use_on_swarming_builders": true,
           "cipd_packages": [
             {
-              "cipd_package": "chromium/android_webview/tools/cts_archive",
-              "location": "android_webview/tools/cts_archive",
-              "revision": "4kDr36wBuZtvbfaEin4U4oeFD7oAuN0flkWDImKBts4C"
-            },
-            {
-              "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
-              "location": "bin",
-              "revision": "git_revision:ff387eadf445b24c935f1cf7d6ddd279f8a6b04c"
+              "cipd_package": "chromium/chrome/test/chromedriver/cipd",
+              "location": "chrome/test/chromedriver/cipd",
+              "revision": "PCCG9OmVmpDaf9oaKhJ3sSxXgINilZ9qpl4oaRU0R60C"
             }
           ],
           "dimension_sets": [
@@ -40,19 +28,40 @@
               "os": "Android"
             }
           ],
-          "output_links": [
+          "expiration": 18000,
+          "hard_timeout": 14400,
+          "shards": 15
+        }
+      },
+      {
+        "isolate_name": "system_webview_wpt",
+        "merge": {
+          "args": [],
+          "script": "//testing/merge_scripts/standard_isolated_script_merge.py"
+        },
+        "name": "system_webview_wpt",
+        "swarming": {
+          "can_use_on_swarming_builders": true,
+          "cipd_packages": [
             {
-              "link": [
-                "https://luci-logdog.appspot.com/v/?s",
-                "=android%2Fswarming%2Flogcats%2F",
-                "${TASK_ID}%2F%2B%2Funified_logcats"
-              ],
-              "name": "shard #${SHARD_INDEX} logcats"
+              "cipd_package": "chromium/chrome/test/chromedriver/cipd",
+              "location": "chrome/test/chromedriver/cipd",
+              "revision": "PCCG9OmVmpDaf9oaKhJ3sSxXgINilZ9qpl4oaRU0R60C"
             }
           ],
-          "shards": 3
-        },
-        "test": "webview_cts_tests"
+          "dimension_sets": [
+            {
+              "device_os": "PQ3A.190801.002",
+              "device_os_flavor": "google",
+              "device_os_type": "userdebug",
+              "device_type": "walleye",
+              "os": "Android"
+            }
+          ],
+          "expiration": 18000,
+          "hard_timeout": 14400,
+          "shards": 15
+        }
       }
     ]
   },
diff --git a/testing/buildbot/chromium.gpu.fyi.json b/testing/buildbot/chromium.gpu.fyi.json
index 06e4904..c1d9691 100644
--- a/testing/buildbot/chromium.gpu.fyi.json
+++ b/testing/buildbot/chromium.gpu.fyi.json
@@ -3773,8 +3773,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -3820,8 +3818,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -4293,8 +4289,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -4340,8 +4334,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -4571,8 +4563,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -4799,8 +4789,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -4845,8 +4833,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -5372,8 +5358,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -5419,8 +5403,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -5964,8 +5946,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -6011,8 +5991,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -6513,8 +6491,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -6560,8 +6536,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -6707,8 +6681,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -6858,8 +6830,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --enable-features=VizDisplayCompositor,UseSkiaRenderer --use-gl=egl --enable-gpu-rasterization --force-gpu-rasterization --enable-oop-rasterization --disable-software-compositing-fallback --disable-headless-mode",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -6957,8 +6927,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --use-vulkan=native --disable-vulkan-fallback-to-gl-for-testing --enable-features=UseSkiaRenderer",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -7449,8 +7417,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -7494,8 +7460,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -8211,8 +8175,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -8257,8 +8219,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -8767,8 +8727,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -8812,8 +8770,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -9360,8 +9316,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -9406,8 +9360,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -9975,8 +9927,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -10020,8 +9970,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -10404,8 +10352,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --enable-features=UseSkiaRenderer",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -10518,8 +10464,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --enable-features=UseSkiaRenderer",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -10605,8 +10549,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --use-vulkan=native --disable-vulkan-fallback-to-gl-for-testing --enable-features=UseSkiaRenderer",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -10806,8 +10748,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --enable-features=UseSkiaRenderer",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -10920,8 +10860,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --enable-features=UseSkiaRenderer",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -11007,8 +10945,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --use-vulkan=native --disable-vulkan-fallback-to-gl-for-testing --enable-features=UseSkiaRenderer",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -11722,8 +11658,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -11768,8 +11702,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -12319,8 +12251,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -12364,8 +12294,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -12923,8 +12851,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -12969,8 +12895,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -13482,8 +13406,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -13526,8 +13448,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -14141,8 +14061,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -14191,8 +14109,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -14754,8 +14670,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -14798,8 +14712,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -15348,8 +15260,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -15394,8 +15304,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -15869,8 +15777,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -15915,8 +15821,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -16385,8 +16289,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -16431,8 +16333,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -17021,8 +16921,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -17067,8 +16965,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -17748,8 +17644,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -17794,8 +17688,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -20846,8 +20738,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -20891,8 +20781,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -21646,8 +21534,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -21692,8 +21578,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -22635,8 +22519,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -22681,8 +22563,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -23450,8 +23330,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -23495,8 +23373,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -24395,8 +24271,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -24441,8 +24315,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -25423,8 +25295,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -25469,8 +25339,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -26533,8 +26401,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -26625,8 +26491,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -28061,8 +27925,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -28115,8 +27977,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -29002,8 +28862,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -29048,8 +28906,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -29750,8 +29606,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -29796,8 +29650,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -30751,8 +30603,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -30806,8 +30656,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -31920,8 +31768,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -31975,8 +31821,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
diff --git a/testing/buildbot/chromium.gpu.json b/testing/buildbot/chromium.gpu.json
index 14a8abb..3ef43bb 100644
--- a/testing/buildbot/chromium.gpu.json
+++ b/testing/buildbot/chromium.gpu.json
@@ -166,8 +166,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -212,8 +210,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -578,8 +574,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -623,8 +617,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -1010,8 +1002,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -1055,8 +1045,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -1432,8 +1420,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -1476,8 +1462,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -1843,8 +1827,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -1887,8 +1869,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -2246,8 +2226,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -2292,8 +2270,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -2685,8 +2661,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -2731,8 +2705,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -3184,8 +3156,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -3229,8 +3199,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -3816,8 +3784,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
@@ -3870,8 +3836,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_revision}",
           "--test-machine-name",
diff --git a/testing/buildbot/client.v8.fyi.json b/testing/buildbot/client.v8.fyi.json
index 35a5ef8..2a07f20 100644
--- a/testing/buildbot/client.v8.fyi.json
+++ b/testing/buildbot/client.v8.fyi.json
@@ -128,8 +128,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -173,8 +171,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "android",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -455,8 +451,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -499,8 +493,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -776,8 +768,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -820,8 +810,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "linux",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -1093,8 +1081,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -1136,8 +1122,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "mac",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -1734,8 +1718,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
@@ -1778,8 +1760,6 @@
           "-v",
           "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc",
           "--dont-restore-color-profile-after-test",
-          "--os-type",
-          "win",
           "--build-revision",
           "${got_cr_revision}",
           "--test-machine-name",
diff --git a/testing/buildbot/gn_isolate_map.pyl b/testing/buildbot/gn_isolate_map.pyl
index 53459ad..b957d16 100644
--- a/testing/buildbot/gn_isolate_map.pyl
+++ b/testing/buildbot/gn_isolate_map.pyl
@@ -656,6 +656,15 @@
     "label": "//chrome/android:chrome_public_test_vr_apk",
     "type": "console_test_launcher",
   },
+  "chrome_public_wpt": {
+    "label": "//chrome/android:chrome_public_wpt",
+    "type": "script",
+    "script": "//testing/scripts/run_android_wpt.py",
+    "args": [
+      "--product=chrome_android",
+      "--apk=apks/ChromePublic.apk",
+    ],
+  },
   "chrome_sandbox": {
     "label": "//sandbox/linux:chrome_sandbox",
     "type": "additional_compile_target",
@@ -2607,6 +2616,16 @@
     "label": "//android_webview/tools/system_webview_shell:system_webview_shell_layout_test_apk",
     "type": "console_test_launcher",
   },
+  "system_webview_wpt": {
+    "label": "//android_webview/test:system_webview_wpt",
+    "type": "script",
+    "script": "//testing/scripts/run_android_wpt.py",
+    "args": [
+      "--product=android_webview",
+      "--apk=apks/SystemWebView.apk",
+      "--system-webview-shell=apks/SystemWebViewShell.apk",
+    ],
+  },
   "telemetry_gpu_integration_test": {
     "args": [
       "../../content/test/gpu/run_gpu_integration_test.py",
diff --git a/testing/buildbot/test_suites.pyl b/testing/buildbot/test_suites.pyl
index 487d0849..bf0bb8b 100644
--- a/testing/buildbot/test_suites.pyl
+++ b/testing/buildbot/test_suites.pyl
@@ -175,8 +175,6 @@
         'name': 'android_webview_pixel_skia_gold_test',
         'args': [
           '--dont-restore-color-profile-after-test',
-          '--os-type',
-          '${os_type}',
           '--build-revision',
           '${got_revision}',
           '--test-machine-name',
@@ -304,6 +302,23 @@
       },
     },
 
+    'chrome_public_wpt': {
+      'chrome_public_wpt': {
+        'swarming': {
+          'shards': 15,
+          'expiration': 18000,
+          'hard_timeout': 14400,
+          'cipd_packages': [
+            {
+              "cipd_package": 'chromium/chrome/test/chromedriver/cipd',
+              'location': 'chrome/test/chromedriver/cipd',
+              'revision': 'PCCG9OmVmpDaf9oaKhJ3sSxXgINilZ9qpl4oaRU0R60C',
+            }
+          ]
+        },
+      },
+    },
+
     'chrome_sizes': {
       'chrome_sizes': {
         'merge': {
@@ -3697,8 +3712,6 @@
         'name': 'egl_pixel_skia_gold_test',
         'args': [
           '--dont-restore-color-profile-after-test',
-          '--os-type',
-          '${os_type}',
           '--build-revision',
           '${got_revision}',
           '--test-machine-name',
@@ -3728,8 +3741,6 @@
         'name': 'skia_renderer_pixel_skia_gold_test',
         'args': [
           '--dont-restore-color-profile-after-test',
-          '--os-type',
-          '${os_type}',
           '--build-revision',
           '${got_revision}',
           '--test-machine-name',
@@ -3777,8 +3788,6 @@
         'name': 'maps_pixel_test',
         'args': [
           '--dont-restore-color-profile-after-test',
-          '--os-type',
-          '${os_type}',
           '--build-revision',
           '${got_revision}',
           '--test-machine-name',
@@ -3836,8 +3845,6 @@
         'name': 'vulkan_pixel_skia_gold_test',
         'args': [
           '--dont-restore-color-profile-after-test',
-          '--os-type',
-          '${os_type}',
           '--build-revision',
           '${got_revision}',
           '--test-machine-name',
@@ -3878,8 +3885,6 @@
         'name': 'maps_pixel_test',
         'args': [
           '--dont-restore-color-profile-after-test',
-          '--os-type',
-          '${os_type}',
           '--build-revision',
           '${got_revision}',
           '--test-machine-name',
@@ -3904,8 +3909,6 @@
         'name': 'pixel_skia_gold_test',
         'args': [
           '--dont-restore-color-profile-after-test',
-          '--os-type',
-          '${os_type}',
           '--build-revision',
           '${got_revision}',
           '--test-machine-name',
@@ -4810,6 +4813,23 @@
       },
     },
 
+    'system_webview_wpt': {
+      'system_webview_wpt': {
+        'swarming': {
+          'shards': 15,
+          'expiration': 18000,
+          'hard_timeout': 14400,
+          'cipd_packages': [
+            {
+              "cipd_package": 'chromium/chrome/test/chromedriver/cipd',
+              'location': 'chrome/test/chromedriver/cipd',
+              'revision': 'PCCG9OmVmpDaf9oaKhJ3sSxXgINilZ9qpl4oaRU0R60C',
+            }
+          ]
+        },
+      },
+    },
+
     'telemetry_perf_unittests_isolated_scripts': {
       'telemetry_perf_unittests': {
         'swarming': {
@@ -5190,6 +5210,11 @@
       'network_service_android_gtests',
     ],
 
+    'android_wpt_scripts': [
+      'chrome_public_wpt',
+      'system_webview_wpt',
+    ],
+
     'bfcache_android_gtests': [
       'bfcache_generic_gtests',
       'bfcache_android_specific_gtests',
diff --git a/testing/buildbot/waterfalls.pyl b/testing/buildbot/waterfalls.pyl
index 140cff5..9f359d0 100644
--- a/testing/buildbot/waterfalls.pyl
+++ b/testing/buildbot/waterfalls.pyl
@@ -670,7 +670,7 @@
           'walleye',
         ],
         'test_suites': {
-          'gtest_tests': 'webview_cts_tests_gtest',
+          'isolated_scripts': 'android_wpt_scripts',
         },
         'use_swarming': True,
         'os_type': 'android',
diff --git a/testing/scripts/run_android_wpt.py b/testing/scripts/run_android_wpt.py
index 2e99ec4..c6560322 100755
--- a/testing/scripts/run_android_wpt.py
+++ b/testing/scripts/run_android_wpt.py
@@ -34,22 +34,20 @@
 SRC_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..'))
 
 BUILD_ANDROID = os.path.join(SRC_DIR, 'build', 'android')
-PLATFORM_TOOLS = os.path.join(SRC_DIR, 'third_party', 'android_sdk', 'public',
-                              'platform-tools')
 
 if BUILD_ANDROID not in sys.path:
   sys.path.append(BUILD_ANDROID)
 
-from pylib.constants import host_paths
-if host_paths.DEVIL_PATH not in sys.path:
-  sys.path.append(host_paths.DEVIL_PATH)
+import devil_chromium
 
+from devil import devil_env
 from devil.android import apk_helper
 from devil.android import device_utils
 from devil.android import flag_changer
 from devil.android.tools import system_app
 from devil.android.tools import webview_app
 
+
 DEFAULT_WEBDRIVER = os.path.join(SRC_DIR, 'chrome', 'test', 'chromedriver',
                                  'cipd', 'linux', 'chromedriver')
 DEFAULT_WPT = os.path.join(SRC_DIR, 'third_party', 'blink', 'web_tests',
@@ -211,6 +209,8 @@
   adapter = WPTAndroidAdapter()
   adapter.parse_args()
 
+  devil_chromium.Initialize()
+
   # Only 1 device is supported for Android locally, this will work well with
   # sharding support via swarming infra.
   device = device_utils.DeviceUtils.HealthyDevices()[0]
@@ -220,7 +220,8 @@
   flags = flag_changer.CustomCommandLineFlags(device, flags_file, all_flags)
 
   # WPT setup for chrome and webview requires that PATH contains adb.
-  os.environ['PATH'] = ':'.join([PLATFORM_TOOLS] +
+  platform_tools_path = os.path.dirname(devil_env.config.FetchPath('adb'))
+  os.environ['PATH'] = ':'.join([platform_tools_path] +
                                 os.environ['PATH'].split(':'))
 
   with flags:
diff --git a/testing/scripts/run_android_wpt.pydeps b/testing/scripts/run_android_wpt.pydeps
index abe084c6..bda77f9 100644
--- a/testing/scripts/run_android_wpt.pydeps
+++ b/testing/scripts/run_android_wpt.pydeps
@@ -1,5 +1,6 @@
 # Generated by running:
 #   build/print_python_deps.py --gn-paths testing/scripts/run_android_wpt.py
+//build/android/devil_chromium.py
 //build/android/pylib/__init__.py
 //build/android/pylib/constants/__init__.py
 //build/android/pylib/constants/host_paths.py
diff --git a/third_party/android_build_tools/art/OWNERS b/third_party/android_build_tools/art/OWNERS
index 440abd95..15d768d1 100644
--- a/third_party/android_build_tools/art/OWNERS
+++ b/third_party/android_build_tools/art/OWNERS
@@ -2,3 +2,5 @@
 jbudorick@chromium.org
 lizeb@chromium.org
 mheikal@chomrium.org
+
+# COMPONENT: Build
diff --git a/third_party/android_crazy_linker/OWNERS b/third_party/android_crazy_linker/OWNERS
index 0fda8e0b..0627108 100644
--- a/third_party/android_crazy_linker/OWNERS
+++ b/third_party/android_crazy_linker/OWNERS
@@ -1,2 +1,4 @@
 digit@chromium.org
 rmcilroy@chromium.org
+
+# COMPONENT: Build
diff --git a/third_party/android_support_test_runner/OWNERS b/third_party/android_support_test_runner/OWNERS
index 2cfd26c3..df1ed5b 100644
--- a/third_party/android_support_test_runner/OWNERS
+++ b/third_party/android_support_test_runner/OWNERS
@@ -1,3 +1,5 @@
 jbudorick@chromium.org
 mikecase@chromium.org
 yolandyan@chromium.org
+
+# COMPONENT: Test>Android
diff --git a/third_party/android_swipe_refresh/OWNERS b/third_party/android_swipe_refresh/OWNERS
index d3930d9..ec059793 100644
--- a/third_party/android_swipe_refresh/OWNERS
+++ b/third_party/android_swipe_refresh/OWNERS
@@ -1 +1,3 @@
 tedchoc@chromium.org
+
+# COMPONENT: UI>Browser>Mobile
diff --git a/third_party/binutils/OWNERS b/third_party/binutils/OWNERS
index f7b05de..f7aafc1 100644
--- a/third_party/binutils/OWNERS
+++ b/third_party/binutils/OWNERS
@@ -1,3 +1,5 @@
 thakis@chromium.org
 thestig@chromium.org
 thomasanderson@chromium.org
+
+# COMPONENT: Build
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
index 2b02717..f323616 100644
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -188,9 +188,6 @@
     "WebRTC-H264WithOpenH264FFmpeg", base::FEATURE_ENABLED_BY_DEFAULT};
 #endif  // BUILDFLAG(RTC_USE_H264) && BUILDFLAG(ENABLE_FFMPEG_VIDEO_DECODERS)
 
-const base::Feature kServiceWorkerIsolateInForeground{
-    "ServiceWorkerIsolateInForeground", base::FEATURE_ENABLED_BY_DEFAULT};
-
 const base::Feature kServiceWorkerImportedScriptUpdateCheck{
     "ServiceWorkerImportedScriptUpdateCheck", base::FEATURE_ENABLED_BY_DEFAULT};
 
diff --git a/third_party/blink/public/BUILD.gn b/third_party/blink/public/BUILD.gn
index 77d1f2f..2ec80bc 100644
--- a/third_party/blink/public/BUILD.gn
+++ b/third_party/blink/public/BUILD.gn
@@ -602,9 +602,6 @@
     "grit/blink_resources.h",
     "blink_resources.pak",
   ]
-  if (is_android) {
-    defines = [ "notouch_build=$notouch_build" ]
-  }
   html_min_css = "$blink_core_output_dir/html.css"
   grit_flags = [
     "-E",
@@ -630,10 +627,6 @@
     ":image_resources",
     "//third_party/blink/renderer/modules/media_controls:media_controls_resources",
   ]
-
-  if (is_android && notouch_build) {
-    public_deps += [ "//third_party/blink/renderer/modules/media_controls:media_controls_touchless_resources" ]
-  }
 }
 
 repack("scaled_resources_100_percent") {
@@ -642,9 +635,6 @@
     "$root_gen_dir/third_party/blink/public/resources/blink_image_resources_100_percent.pak",
     "$root_gen_dir/third_party/blink/renderer/modules/media_controls/resources/media_controls_resources_100_percent.pak",
   ]
-  if (is_android && notouch_build) {
-    sources += [ "$root_gen_dir/third_party/blink/renderer/modules/media_controls/touchless/resources/media_controls_touchless_resources.pak" ]
-  }
   deps = [
     ":scaled_resources",
   ]
@@ -656,9 +646,6 @@
     "$root_gen_dir/third_party/blink/public/resources/blink_image_resources_200_percent.pak",
     "$root_gen_dir/third_party/blink/renderer/modules/media_controls/resources/media_controls_resources_200_percent.pak",
   ]
-  if (is_android && notouch_build) {
-    sources += [ "$root_gen_dir/third_party/blink/renderer/modules/media_controls/touchless/resources/media_controls_touchless_resources.pak" ]
-  }
   deps = [
     ":scaled_resources",
   ]
diff --git a/third_party/blink/public/blink_resources.grd b/third_party/blink/public/blink_resources.grd
index f7b51af..aeabb20 100644
--- a/third_party/blink/public/blink_resources.grd
+++ b/third_party/blink/public/blink_resources.grd
@@ -18,9 +18,6 @@
       <if expr="is_macosx">
         <include name="IDR_UASTYLE_THEME_MAC_CSS" file="../renderer/core/html/resources/mac.css" type="BINDATA" compress="gzip"/>
       </if>
-      <if expr="notouch_build">
-        <include name="IDR_UASTYLE_THEME_TOUCHLESS_CSS" file="../renderer/core/css/touchless.css" type="BINDATA" compress="gzip"/>
-      </if>
       <include name="IDR_UASTYLE_THEME_INPUT_MULTIPLE_FIELDS_CSS" file="../renderer/core/html/resources/input_multiple_fields.css" type="BINDATA" compress="gzip"/>
       <include name="IDR_UASTYLE_THEME_WIN_CSS" file="../renderer/core/html/resources/win.css" type="BINDATA" compress="gzip"/>
       <include name="IDR_UASTYLE_THEME_WIN_QUIRKS_CSS" file="../renderer/core/html/resources/win_quirks.css" type="BINDATA" compress="gzip"/>
diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h
index fea13b4d..281ba198 100644
--- a/third_party/blink/public/common/features.h
+++ b/third_party/blink/public/common/features.h
@@ -55,8 +55,6 @@
 
 BLINK_COMMON_EXPORT extern const base::Feature kResourceLoadViaDataPipe;
 BLINK_COMMON_EXPORT extern const base::Feature
-    kServiceWorkerIsolateInForeground;
-BLINK_COMMON_EXPORT extern const base::Feature
     kServiceWorkerImportedScriptUpdateCheck;
 BLINK_COMMON_EXPORT extern const base::Feature kServiceWorkerUpdateDelay;
 BLINK_COMMON_EXPORT extern const base::Feature kStopInBackground;
diff --git a/third_party/blink/public/mojom/BUILD.gn b/third_party/blink/public/mojom/BUILD.gn
index e9b2320..75d57d9 100644
--- a/third_party/blink/public/mojom/BUILD.gn
+++ b/third_party/blink/public/mojom/BUILD.gn
@@ -229,9 +229,6 @@
     "webauthn/internal_authenticator.mojom",
     "webshare/webshare.mojom",
   ]
-  if (is_android && notouch_build) {
-    sources += [ "media_controls/touchless/media_controls.mojom" ]
-  }
   public_deps = [
     "//components/payments/mojom",
     "//mojo/public/mojom/base",
diff --git a/third_party/blink/public/mojom/media_controls/touchless/OWNERS b/third_party/blink/public/mojom/media_controls/touchless/OWNERS
deleted file mode 100644
index a15fabe6..0000000
--- a/third_party/blink/public/mojom/media_controls/touchless/OWNERS
+++ /dev/null
@@ -1,5 +0,0 @@
-mlamouri@chromium.org
-steimel@chromium.org
-
-per-file *.mojom=set noparent
-per-file *.mojom=file://ipc/SECURITY_OWNERS
diff --git a/third_party/blink/public/mojom/media_controls/touchless/media_controls.mojom b/third_party/blink/public/mojom/media_controls/touchless/media_controls.mojom
deleted file mode 100644
index b244214..0000000
--- a/third_party/blink/public/mojom/media_controls/touchless/media_controls.mojom
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright 2019 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.
-
-[JavaPackage="org.chromium.mediacontrols.touchless.mojom"]
-module blink.mojom;
-
-// Represents a Text Track to be shown in the CAPTIONS sub-menu.
-struct TextTrackMetadata {
-  int32 track_index;
-  string label;
-};
-
-// Represents the current state of the Video showing controls.
-struct VideoState {
-  bool is_muted;
-  bool is_fullscreen;
-};
-
-// The types of menu items that can be shown.
-enum MenuItem {
-  FULLSCREEN,
-  CAPTIONS,
-  MUTE,
-  DOWNLOAD
-};
-
-// Represents the response from the browser for a menu item click.
-struct MenuResponse {
-  // |clicked| returns the menu item clicked on, CANCEL if the menu was closed
-  // without an item being clicked. |track_index| is only used when |clicked|
-  // is CAPTIONS.
-  MenuItem clicked;
-  int32 track_index;
-};
-
-// Mojo service for the browser-drawn media controls.
-interface MediaControlsMenuHost {
-  // Shows the media controls menu with the items specified in |menu_items|.
-  // |text_tracks| is only used if the CAPTIONS menu item is present.
-  // |response| will be null if the menu was canceled.
-  ShowMediaMenu(array<MenuItem> menu_items, VideoState video_state,
-                array<TextTrackMetadata>? text_tracks)
-      => (MenuResponse? response);
-};
-
diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_party/blink/public/platform/web_runtime_features.h
index 08598ad..ead4a63 100644
--- a/third_party/blink/public/platform/web_runtime_features.h
+++ b/third_party/blink/public/platform/web_runtime_features.h
@@ -62,6 +62,9 @@
       const std::string& name,
       bool enable);
 
+  BLINK_PLATFORM_EXPORT static void EnableForcedColors(bool);
+  BLINK_PLATFORM_EXPORT static bool IsForcedColorsEnabled();
+
   BLINK_PLATFORM_EXPORT static void EnableFractionalScrollOffsets(bool);
   BLINK_PLATFORM_EXPORT static bool IsFractionalScrollOffsetsEnabled();
 
@@ -150,7 +153,6 @@
   BLINK_PLATFORM_EXPORT static void EnablePrintBrowser(bool);
   BLINK_PLATFORM_EXPORT static void EnablePresentationAPI(bool);
   BLINK_PLATFORM_EXPORT static void EnablePushMessaging(bool);
-  BLINK_PLATFORM_EXPORT static void EnableRasterInducingScroll(bool);
   BLINK_PLATFORM_EXPORT static void EnableReducedReferrerGranularity(bool);
   BLINK_PLATFORM_EXPORT static void EnableRemotePlaybackAPI(bool);
   BLINK_PLATFORM_EXPORT static void EnableResourceLoadScheduler(bool);
diff --git a/third_party/blink/public/strings/blink_strings.grd b/third_party/blink/public/strings/blink_strings.grd
index 3365c87..06d55e1 100644
--- a/third_party/blink/public/strings/blink_strings.grd
+++ b/third_party/blink/public/strings/blink_strings.grd
@@ -829,18 +829,6 @@
         more options
       </message>
 
-      <message name="IDS_AX_MEDIA_TOUCHLESS_PLAY_PAUSE_ACTION" desc="Accessibility help description for play/pause action on touchless device using DPAD.">
-        select to toggle play pause
-      </message>
-
-      <message name="IDS_AX_MEDIA_TOUCHLESS_SEEK_ACTION" desc="Accessibility help description for seek action on touchless device using DPAD.">
-        left and right to seek
-      </message>
-
-      <message name="IDS_AX_MEDIA_TOUCHLESS_VOLUME_ACTION" desc="Accessibility help description for volume change action on touchless device using DPAD.">
-        up and down to change volume
-      </message>
-
       <message name="IDS_AX_MILLISECOND_FIELD_TEXT" desc="Accessible description of the millisecond field in a date/time control">
         Milliseconds
       </message>
diff --git a/third_party/blink/public/strings/translations/blink_strings_am.xtb b/third_party/blink/public/strings/translations/blink_strings_am.xtb
index 6ad64ce6..f917116 100644
--- a/third_party/blink/public/strings/translations/blink_strings_am.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_am.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">ቀን መራጭ</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">ድምፅ-ከልን አንሳ</translation>
+<translation id="5608153257855394627">አድምቅ</translation>
 <translation id="561939826962581046">ሰዓት</translation>
 <translation id="5630795885300617244">10 ሴ ለመዝለል ወደ ግራ ወይም ቀኝ ሁለቴ መታ ያድርጉ</translation>
 <translation id="5631759159893697722">ረቂቅ</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">አካባቢያዊ ቀን እና ሰዓት መራጭ</translation>
 <translation id="8261464734335370856">ልክ ያልኾነ ሥርዓተ አጻጻፍ</translation>
 <translation id="8284326494547611709">መግለጫ ጽሑፎች</translation>
+<translation id="8346634859695247203">ክፍል</translation>
 <translation id="835897206747267392">ልክ ያልሆነ እሴት።</translation>
 <translation id="8403857369060869934">ያለፈው ጊዜ፦ <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">ክፍለ አካል</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ar.xtb b/third_party/blink/public/strings/translations/blink_strings_ar.xtb
index 300ad87..1976685 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ar.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ar.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">منتقي التاريخ</translation>
 <translation id="5537725057119320332">إرسال</translation>
 <translation id="5546461542133609677">إعادة الصوت</translation>
+<translation id="5608153257855394627">تمييز</translation>
 <translation id="561939826962581046">الوقت</translation>
 <translation id="5630795885300617244">انقر مرّتين جهة اليمين أو اليسار لتخطي 10 ثوانٍ.</translation>
 <translation id="5631759159893697722">نبذة مختصرة</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">منتقي الوقت والتاريخ المحليان</translation>
 <translation id="8261464734335370856">تدقيق إملائي غير صالح</translation>
 <translation id="8284326494547611709">الترجمة والشرح</translation>
+<translation id="8346634859695247203">قسم</translation>
 <translation id="835897206747267392">قيمة غير صحيحة</translation>
 <translation id="8403857369060869934">الوقت المنقضي: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">جزء</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_bg.xtb b/third_party/blink/public/strings/translations/blink_strings_bg.xtb
index 76e9c72..2eaf4f9 100644
--- a/third_party/blink/public/strings/translations/blink_strings_bg.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_bg.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">инструмент за избор на дата</translation>
 <translation id="5537725057119320332">Предаване</translation>
 <translation id="5546461542133609677">пускане на звука</translation>
+<translation id="5608153257855394627">открояване</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Докоснете два пъти стрелката наляво или надясно, за да пропуснете 10 сек</translation>
 <translation id="5631759159893697722">резюме</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">инструмент за избор на дата и час според местното време</translation>
 <translation id="8261464734335370856">Невалиден правопис</translation>
 <translation id="8284326494547611709">Надписи</translation>
+<translation id="8346634859695247203">секция</translation>
 <translation id="835897206747267392">Невалидна стойност.</translation>
 <translation id="8403857369060869934">изминало време: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">част</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_bn.xtb b/third_party/blink/public/strings/translations/blink_strings_bn.xtb
index 35d6246..db6ff084 100644
--- a/third_party/blink/public/strings/translations/blink_strings_bn.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_bn.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">তারিখ চয়নকারি</translation>
 <translation id="5537725057119320332">কাস্ট করুন</translation>
 <translation id="5546461542133609677">সশব্দ</translation>
+<translation id="5608153257855394627">হাইলাইট করা</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">১০ সেকেন্ড আগে পরে করার জন্য বাঁ অথবা ডান দিকে ডবল ট্যাপ করুন</translation>
 <translation id="5631759159893697722">বিমূর্ত</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">স্থানীয় তারিখ ও সময় চয়নকারি</translation>
 <translation id="8261464734335370856">ভুল বানান</translation>
 <translation id="8284326494547611709">পরিচয়লিপিগুলি</translation>
+<translation id="8346634859695247203">বিভাগ</translation>
 <translation id="835897206747267392">ভুল মান৷</translation>
 <translation id="8403857369060869934">অতিবাহিত সময়: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">অংশ</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ca.xtb b/third_party/blink/public/strings/translations/blink_strings_ca.xtb
index 0b9275e..aa438e0 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ca.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ca.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">selector de data</translation>
 <translation id="5537725057119320332">Emet</translation>
 <translation id="5546461542133609677">deixa de silenciar</translation>
+<translation id="5608153257855394627">ressalta</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Fes doble toc a l'esquerra o a la dreta per saltar 10 s</translation>
 <translation id="5631759159893697722">resum</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">selector de data i hora local</translation>
 <translation id="8261464734335370856">L'ortografia no és vàlida</translation>
 <translation id="8284326494547611709">Subtítols</translation>
+<translation id="8346634859695247203">secció</translation>
 <translation id="835897206747267392">Valor no vàlid.</translation>
 <translation id="8403857369060869934">temps transcorregut: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">part</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_cs.xtb b/third_party/blink/public/strings/translations/blink_strings_cs.xtb
index e85c1dd..fd6b7ec 100644
--- a/third_party/blink/public/strings/translations/blink_strings_cs.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_cs.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">výběr data</translation>
 <translation id="5537725057119320332">Odeslat</translation>
 <translation id="5546461542133609677">zapnout zvuk</translation>
+<translation id="5608153257855394627">zvýraznění</translation>
 <translation id="561939826962581046">čas</translation>
 <translation id="5630795885300617244">Dvojitým klepnutím na šipku vlevo nebo vpravo přeskočíte o 10 s</translation>
 <translation id="5631759159893697722">abstrakt</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">výběr místního data a času</translation>
 <translation id="8261464734335370856">Neplatný pravopis</translation>
 <translation id="8284326494547611709">Titulky</translation>
+<translation id="8346634859695247203">oddíl</translation>
 <translation id="835897206747267392">Neplatná hodnota.</translation>
 <translation id="8403857369060869934">uplynulý čas: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">část</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_da.xtb b/third_party/blink/public/strings/translations/blink_strings_da.xtb
index 0d60828..076ee97 100644
--- a/third_party/blink/public/strings/translations/blink_strings_da.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_da.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">datovælger</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">slå lyd til</translation>
+<translation id="5608153257855394627">fremhævning</translation>
 <translation id="561939826962581046">tidspunkt</translation>
 <translation id="5630795885300617244">Tryk to gange til venstre eller højre for at springe ti sekunder over</translation>
 <translation id="5631759159893697722">abstrakt</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">lokal dato- og tidsvælger</translation>
 <translation id="8261464734335370856">Ugyldig stavning</translation>
 <translation id="8284326494547611709">Undertekster</translation>
+<translation id="8346634859695247203">sektion</translation>
 <translation id="835897206747267392">Ugyldig værdi.</translation>
 <translation id="8403857369060869934">forløbet tid: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">del</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_de.xtb b/third_party/blink/public/strings/translations/blink_strings_de.xtb
index 74826b2..3650daa 100644
--- a/third_party/blink/public/strings/translations/blink_strings_de.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_de.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">Datumsauswahl</translation>
 <translation id="5537725057119320332">Übertragen</translation>
 <translation id="5546461542133609677">Ton an</translation>
+<translation id="5608153257855394627">markieren</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Tippen Sie links oder rechts doppelt, um 10 s zu überspringen</translation>
 <translation id="5631759159893697722">Zusammenfassung</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">lokale Datums- und Uhrzeitauswahl</translation>
 <translation id="8261464734335370856">Ungültige Schreibweise</translation>
 <translation id="8284326494547611709">Untertitel</translation>
+<translation id="8346634859695247203">Abschnitt</translation>
 <translation id="835897206747267392">Ungültiger Wert.</translation>
 <translation id="8403857369060869934">verstrichene Zeit: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">Teil</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_el.xtb b/third_party/blink/public/strings/translations/blink_strings_el.xtb
index 5773a36..9862a792 100644
--- a/third_party/blink/public/strings/translations/blink_strings_el.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_el.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">εργαλείο επιλογής ημερομηνίας</translation>
 <translation id="5537725057119320332">Μετάδοση</translation>
 <translation id="5546461542133609677">κατάργηση σίγασης</translation>
+<translation id="5608153257855394627">επισήμανση</translation>
 <translation id="561939826962581046">ώρα</translation>
 <translation id="5630795885300617244">Πατήστε δύο φορές αριστερά ή δεξιά, για να παραβλέψετε 10 δευτ.</translation>
 <translation id="5631759159893697722">περίληψη</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">επιλογέας τοπικής ώρας και ημερομηνίας</translation>
 <translation id="8261464734335370856">Μη έγκυρη ορθογραφία</translation>
 <translation id="8284326494547611709">Υπότιτλοι</translation>
+<translation id="8346634859695247203">ενότητα</translation>
 <translation id="835897206747267392">Μη έγκυρη τιμή.</translation>
 <translation id="8403857369060869934">χρόνος που παρήλθε: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">τμήμα</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_en-GB.xtb b/third_party/blink/public/strings/translations/blink_strings_en-GB.xtb
index 464b490..17a64b2 100644
--- a/third_party/blink/public/strings/translations/blink_strings_en-GB.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_en-GB.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">date picker</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">un-mute</translation>
+<translation id="5608153257855394627">highlight</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Double-tap left or right to skip 10s</translation>
 <translation id="5631759159893697722">abstract</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">local date and time picker</translation>
 <translation id="8261464734335370856">Invalid spelling</translation>
 <translation id="8284326494547611709">Captions</translation>
+<translation id="8346634859695247203">section</translation>
 <translation id="835897206747267392">Invalid value.</translation>
 <translation id="8403857369060869934">elapsed time: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">part</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_es-419.xtb b/third_party/blink/public/strings/translations/blink_strings_es-419.xtb
index 60855b1..0a55531 100644
--- a/third_party/blink/public/strings/translations/blink_strings_es-419.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_es-419.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">selector de fecha</translation>
 <translation id="5537725057119320332">Transmitir</translation>
 <translation id="5546461542133609677">desactivar silencio</translation>
+<translation id="5608153257855394627">destacar</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Presiona dos veces a la derecha o izquierda para omitir 10 s</translation>
 <translation id="5631759159893697722">resumen</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">selector de fecha y hora locales</translation>
 <translation id="8261464734335370856">Ortografía no válida</translation>
 <translation id="8284326494547611709">Subtítulos</translation>
+<translation id="8346634859695247203">sección</translation>
 <translation id="835897206747267392">Valor no válido.</translation>
 <translation id="8403857369060869934">tiempo transcurrido: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">parte</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_es.xtb b/third_party/blink/public/strings/translations/blink_strings_es.xtb
index 02e78cf..12ba77d 100644
--- a/third_party/blink/public/strings/translations/blink_strings_es.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_es.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">selector de fecha</translation>
 <translation id="5537725057119320332">Enviar</translation>
 <translation id="5546461542133609677">activar sonido</translation>
+<translation id="5608153257855394627">destacado</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Toca dos veces a la derecha o a la izquierda para saltar 10 segundos</translation>
 <translation id="5631759159893697722">resumen</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">selector de fecha y hora locales</translation>
 <translation id="8261464734335370856">La ortografía no es válida</translation>
 <translation id="8284326494547611709">Subtítulos</translation>
+<translation id="8346634859695247203">sección</translation>
 <translation id="835897206747267392">Valor no válido</translation>
 <translation id="8403857369060869934">tiempo transcurrido: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">parte</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_et.xtb b/third_party/blink/public/strings/translations/blink_strings_et.xtb
index 9f3b7cc..17edccd5 100644
--- a/third_party/blink/public/strings/translations/blink_strings_et.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_et.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">kuupäeva valija</translation>
 <translation id="5537725057119320332">Ülekanne</translation>
 <translation id="5546461542133609677">vaigistuse tühistamine</translation>
+<translation id="5608153257855394627">esiletõstmine</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">10 sekundi võrra kerimiseks topeltpuudutage vasakul või paremal</translation>
 <translation id="5631759159893697722">abstraktne</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">kohaliku kuupäeva ja kellaaja valija</translation>
 <translation id="8261464734335370856">Õigekirjavead</translation>
 <translation id="8284326494547611709">Subtiitrid</translation>
+<translation id="8346634859695247203">jaotis</translation>
 <translation id="835897206747267392">Kehtetu väärtus.</translation>
 <translation id="8403857369060869934">möödunud aeg: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">osa</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_fa.xtb b/third_party/blink/public/strings/translations/blink_strings_fa.xtb
index 68a16ddb..2780fb6 100644
--- a/third_party/blink/public/strings/translations/blink_strings_fa.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_fa.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">انتخابگر تاریخ</translation>
 <translation id="5537725057119320332">فرستادن</translation>
 <translation id="5546461542133609677">صدادارکردن</translation>
+<translation id="5608153257855394627">برجسته</translation>
 <translation id="561939826962581046">زمان</translation>
 <translation id="5630795885300617244">روی سمت راست یا چپ دو ضربه سریع بزنید تا ۱۰ ثانیه رد شود</translation>
 <translation id="5631759159893697722">انتزاعی</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">انتخابگر تاریخ و زمان محلی</translation>
 <translation id="8261464734335370856">املای نامعتبر</translation>
 <translation id="8284326494547611709">زیرنویس‌ها</translation>
+<translation id="8346634859695247203">بخش</translation>
 <translation id="835897206747267392">مقدار نامعتبر.</translation>
 <translation id="8403857369060869934">زمان سپری‌شده: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">بخش</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_fi.xtb b/third_party/blink/public/strings/translations/blink_strings_fi.xtb
index d06d91b9..a200784 100644
--- a/third_party/blink/public/strings/translations/blink_strings_fi.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_fi.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">päivämäärän valitsin</translation>
 <translation id="5537725057119320332">Lähetä</translation>
 <translation id="5546461542133609677">peruuta mykistys</translation>
+<translation id="5608153257855394627">korosta</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Ohita 10 sekuntia kaksoisnapauttamalla vasemmalle tai oikealle.</translation>
 <translation id="5631759159893697722">tiivistelmä</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">paikallisen päivämäärän ja ajan valitsin</translation>
 <translation id="8261464734335370856">Kirjoitusvirhe</translation>
 <translation id="8284326494547611709">Tekstitykset</translation>
+<translation id="8346634859695247203">osio</translation>
 <translation id="835897206747267392">Virheellinen arvo.</translation>
 <translation id="8403857369060869934">kulunut aika: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">osa</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_fil.xtb b/third_party/blink/public/strings/translations/blink_strings_fil.xtb
index 167d9db..410b00e 100644
--- a/third_party/blink/public/strings/translations/blink_strings_fil.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_fil.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">picker ng petsa</translation>
 <translation id="5537725057119320332">I-cast</translation>
 <translation id="5546461542133609677">i-unmute</translation>
+<translation id="5608153257855394627">i-highlight</translation>
 <translation id="561939826962581046">oras</translation>
 <translation id="5630795885300617244">Mag-double tap sa kaliwa o kanan upang lumaktaw nang 10s</translation>
 <translation id="5631759159893697722">abstract</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">picker ng lokal na petsa at oras</translation>
 <translation id="8261464734335370856">Invalid na spelling</translation>
 <translation id="8284326494547611709">Mga Caption</translation>
+<translation id="8346634859695247203">seksyon</translation>
 <translation id="835897206747267392">Di-wastong halaga.</translation>
 <translation id="8403857369060869934">lumipas na oras: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">bahagi</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_fr.xtb b/third_party/blink/public/strings/translations/blink_strings_fr.xtb
index 6a21e72..72c85b2f 100644
--- a/third_party/blink/public/strings/translations/blink_strings_fr.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_fr.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">outil de sélection de la date</translation>
 <translation id="5537725057119320332">Caster</translation>
 <translation id="5546461542133609677">réactiver le son</translation>
+<translation id="5608153257855394627">mettre en surbrillance</translation>
 <translation id="561939826962581046">horodatage</translation>
 <translation id="5630795885300617244">Appuyez deux fois à gauche/droite pour reculer/avancer de 10 s</translation>
 <translation id="5631759159893697722">résumé</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">outil de sélection de la date et de l'heure locales</translation>
 <translation id="8261464734335370856">Orthographe non valide</translation>
 <translation id="8284326494547611709">Sous-titres</translation>
+<translation id="8346634859695247203">section</translation>
 <translation id="835897206747267392">Valeur incorrecte</translation>
 <translation id="8403857369060869934">temps écoulé : <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">partie</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_gu.xtb b/third_party/blink/public/strings/translations/blink_strings_gu.xtb
index 4d5c13c..4b4eb7c 100644
--- a/third_party/blink/public/strings/translations/blink_strings_gu.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_gu.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">તારીખ પીકર</translation>
 <translation id="5537725057119320332">કાસ્ટ કરો</translation>
 <translation id="5546461542133609677">અનમ્યૂટ કરો</translation>
+<translation id="5608153257855394627">હાઇલાઇટ કરેલું કન્ટેન્ટ</translation>
 <translation id="561939826962581046">સમય</translation>
 <translation id="5630795885300617244">10 સેકન્ડ છોડવા માટે ડાબે અથવા જમણે બે વાર ટૅપ કરો</translation>
 <translation id="5631759159893697722">અમૂર્ત</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">સ્થાનિક તારીખ અને સમય પિકર</translation>
 <translation id="8261464734335370856">અમાન્ય જોડણી</translation>
 <translation id="8284326494547611709">કૅપ્શન્સ</translation>
+<translation id="8346634859695247203">વિભાગ</translation>
 <translation id="835897206747267392">અમાન્ય મૂલ્ય.</translation>
 <translation id="8403857369060869934">વીતેલો સમય: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">ભાગ</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_hi.xtb b/third_party/blink/public/strings/translations/blink_strings_hi.xtb
index 8c31b7f..8609c069 100644
--- a/third_party/blink/public/strings/translations/blink_strings_hi.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_hi.xtb
@@ -54,6 +54,7 @@
 <translation id="2674318244760992338">पाद लेख</translation>
 <translation id="2709516037105925701">ऑटोमैटिक भरना</translation>
 <translation id="2723001399770238859">ऑडियो</translation>
+<translation id="2725963129578236554">टिप्पणियां</translation>
 <translation id="2746543609216772311">मान <ph name="MINIMUM_DATE_OR_TIME" /> या बाद का होना चाहिए.</translation>
 <translation id="2759744352195237655">पॉप अप बटन</translation>
 <translation id="2761667185364618470">अगर आप आगे बढ़ना चाहते हैं तो इस बॉक्‍स को सही का निशान लगाकर चुनें.</translation>
@@ -82,6 +83,7 @@
 <translation id="3822383571486410024">कृपया इस लेख को <ph name="MIN_CHARACTERS" /> वर्णों या ज़्यादा तक बढ़ाएं (वर्तमान में आप <ph name="CURRENT_LENGTH" /> वर्णों का उपयोग कर रहे हैं).</translation>
 <translation id="383465348367842624">'<ph name="ATSIGN" />' के बाद आने वाले भाग में '<ph name="INVALIDCHARACTER" />' प्रतीक शामिल नहीं होना चाहिए.</translation>
 <translation id="3846214748874656680">पूर्णस्क्रीन से बाहर निकलें</translation>
+<translation id="3889183436948184105">बदलाव</translation>
 <translation id="3920932319529768807">निष्कर्ष</translation>
 <translation id="3924558731517983934">ऐप्लिकेशन</translation>
 <translation id="3944740393230681990">प्रस्तावना</translation>
@@ -132,6 +134,7 @@
 <translation id="5516424706154626233">तारीख पिकर</translation>
 <translation id="5537725057119320332">कास्‍ट करें</translation>
 <translation id="5546461542133609677">अनम्यूट करें</translation>
+<translation id="5608153257855394627">हाइलाइट</translation>
 <translation id="561939826962581046">समय</translation>
 <translation id="5630795885300617244">10 सेकंड के लिए 'स्किप' करने के लिए बाएं या दाएं पर दो बार टैप करें</translation>
 <translation id="5631759159893697722">संक्षेप</translation>
@@ -160,6 +163,7 @@
 <translation id="6404546809543547843">ऑडियो समय स्क्रबर</translation>
 <translation id="6443871981718447451">बंद कैप्‍शन मेन्यू दिखाएं</translation>
 <translation id="6453774872122745852">धन्यवाद</translation>
+<translation id="6475115390776617481">लाइव मौजूदगी</translation>
 <translation id="648732519525291180">समय पिकर</translation>
 <translation id="6550675742724504774">विकल्प</translation>
 <translation id="6572309429103589720">गलत व्याकरण</translation>
@@ -183,6 +187,7 @@
 <translation id="6981594929165378967">डालना</translation>
 <translation id="6989848892321993519">कृपया इस लेख को <ph name="MIN_CHARACTERS" /> या उससे ज़्यादा वर्णों तक बढ़ाएं (आप इस समय 1 वर्ण का उपयोग कर रहे हैं).</translation>
 <translation id="7033340931668032222">आवाज़ कम-ज़्यादा करने के लिए ऊपर और नीचे वाले बटन का इस्तेमाल करें</translation>
+<translation id="7034405885550056553">सुझाव</translation>
 <translation id="709897737746224366">कृपया अनुरोधित प्रारूप का मिलान करें.</translation>
 <translation id="7118469954320184356">कोई जानकारी मौजूद नहीं है.</translation>
 <translation id="7139483182332611405">आमुख</translation>
@@ -222,6 +227,7 @@
 <translation id="8208673686607688524">स्थानीय तारीख और समय पिकर (स्थानीय तारीख और समय चुनने की सुविधा)</translation>
 <translation id="8261464734335370856">गलत स्पेलिंग</translation>
 <translation id="8284326494547611709">कैप्शन</translation>
+<translation id="8346634859695247203">सेक्शन</translation>
 <translation id="835897206747267392">अमान्य मान.</translation>
 <translation id="8403857369060869934">बीता हुआ समय: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">भाग</translation>
@@ -243,6 +249,7 @@
 <translation id="8711688047404765493">आउटपुट</translation>
 <translation id="8750798805984357768">कृपया इनमें से कोई विकल्प चुनें.</translation>
 <translation id="8808573423886751634">पाठ</translation>
+<translation id="8822203815165896261">लेखन से जुड़ी जानकारी</translation>
 <translation id="8845239796550121995">अब आपके टीवी पर कास्ट हो रहा है</translation>
 <translation id="8851136666856101339">मुख्य</translation>
 <translation id="8875657656876809964">वीडियो चलाने में गड़बड़ी</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_hr.xtb b/third_party/blink/public/strings/translations/blink_strings_hr.xtb
index c4854cc..8f7b92d 100644
--- a/third_party/blink/public/strings/translations/blink_strings_hr.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_hr.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">alat za odabir datuma</translation>
 <translation id="5537725057119320332">Emitiraj</translation>
 <translation id="5546461542133609677">uključivanje zvuka</translation>
+<translation id="5608153257855394627">istaknuto</translation>
 <translation id="561939826962581046">vrijeme</translation>
 <translation id="5630795885300617244">Dvaput dodirnite lijevo ili desno za preskakanje od 10 s</translation>
 <translation id="5631759159893697722">sažetak</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">alat za odabir lokalnog datuma i vremena</translation>
 <translation id="8261464734335370856">Netočan pravopis</translation>
 <translation id="8284326494547611709">Titlovi</translation>
+<translation id="8346634859695247203">odjeljak</translation>
 <translation id="835897206747267392">Nevažeća vrijednost.</translation>
 <translation id="8403857369060869934">proteklo vrijeme: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">dio</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_hu.xtb b/third_party/blink/public/strings/translations/blink_strings_hu.xtb
index 9b9c99a..2a8a392 100644
--- a/third_party/blink/public/strings/translations/blink_strings_hu.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_hu.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">dátumválasztó</translation>
 <translation id="5537725057119320332">Küldés</translation>
 <translation id="5546461542133609677">némítás feloldása</translation>
+<translation id="5608153257855394627">kiemelés</translation>
 <translation id="561939826962581046">idő</translation>
 <translation id="5630795885300617244">A jobb/bal oldalon duplán koppintva ugorhat előre/vissza 10 másodpercet</translation>
 <translation id="5631759159893697722">absztrakt</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">helyi dátum- és időválasztó</translation>
 <translation id="8261464734335370856">Helyesírási hiba</translation>
 <translation id="8284326494547611709">Feliratok</translation>
+<translation id="8346634859695247203">szakasz</translation>
 <translation id="835897206747267392">Érvénytelen érték.</translation>
 <translation id="8403857369060869934">eltelt idő: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">rész</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_id.xtb b/third_party/blink/public/strings/translations/blink_strings_id.xtb
index 194efac..1c72fc8 100644
--- a/third_party/blink/public/strings/translations/blink_strings_id.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_id.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">pemilih tanggal</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">suarakan</translation>
+<translation id="5608153257855394627">sorotan</translation>
 <translation id="561939826962581046">waktu</translation>
 <translation id="5630795885300617244">Ketuk dua kali ke kiri atau kanan untuk melewati 10 detik</translation>
 <translation id="5631759159893697722">abstrak</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">pemilih tanggal dan waktu lokal</translation>
 <translation id="8261464734335370856">Ejaan tidak valid</translation>
 <translation id="8284326494547611709">Teks</translation>
+<translation id="8346634859695247203">bagian</translation>
 <translation id="835897206747267392">Nilai tidak valid.</translation>
 <translation id="8403857369060869934">waktu berlalu: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">bagian</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_it.xtb b/third_party/blink/public/strings/translations/blink_strings_it.xtb
index 93fad76..7acbfd8 100644
--- a/third_party/blink/public/strings/translations/blink_strings_it.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_it.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">selettore di data</translation>
 <translation id="5537725057119320332">Trasmetti</translation>
 <translation id="5546461542133609677">riattiva audio</translation>
+<translation id="5608153257855394627">evidenzia</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Tocca due volte a sinistra o destra per saltare di 10 secondi</translation>
 <translation id="5631759159893697722">abstract</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">selettore di data e ora locali</translation>
 <translation id="8261464734335370856">Ortografia non valida</translation>
 <translation id="8284326494547611709">Sottotitoli</translation>
+<translation id="8346634859695247203">sezione</translation>
 <translation id="835897206747267392">Valore non valido.</translation>
 <translation id="8403857369060869934">Tempo trascorso: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">parte</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_iw.xtb b/third_party/blink/public/strings/translations/blink_strings_iw.xtb
index 5f094c12..fc9c7f2 100644
--- a/third_party/blink/public/strings/translations/blink_strings_iw.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_iw.xtb
@@ -162,7 +162,7 @@
 <translation id="6404546809543547843">מסתיר משך אודיו</translation>
 <translation id="6443871981718447451">הצגת תפריט כתוביות</translation>
 <translation id="6453774872122745852">תודות</translation>
-<translation id="6475115390776617481">מבצע פעולות עכשיו</translation>
+<translation id="6475115390776617481">עובד/ת על התוכן הזה</translation>
 <translation id="648732519525291180">בוחר שעות</translation>
 <translation id="6550675742724504774">אפשרויות</translation>
 <translation id="6572309429103589720">דקדוק שגוי</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ja.xtb b/third_party/blink/public/strings/translations/blink_strings_ja.xtb
index 50ecb8c..3a096b8c 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ja.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ja.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">日付選択ツール</translation>
 <translation id="5537725057119320332">キャスト</translation>
 <translation id="5546461542133609677">ミュートを解除</translation>
+<translation id="5608153257855394627">ハイライト</translation>
 <translation id="561939826962581046">日時</translation>
 <translation id="5630795885300617244">左または右をダブルタップして 10 秒スキップします</translation>
 <translation id="5631759159893697722">概要</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">ローカル日時選択ツール</translation>
 <translation id="8261464734335370856">スペルが無効です</translation>
 <translation id="8284326494547611709">字幕</translation>
+<translation id="8346634859695247203">セクション</translation>
 <translation id="835897206747267392">値が無効です。</translation>
 <translation id="8403857369060869934">経過時間: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">部</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_kn.xtb b/third_party/blink/public/strings/translations/blink_strings_kn.xtb
index cec1ed2c..b914a2e 100644
--- a/third_party/blink/public/strings/translations/blink_strings_kn.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_kn.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">ದಿನಾಂಕದ ಪಿಕರ್</translation>
 <translation id="5537725057119320332">ಪಾತ್ರವರ್ಗ</translation>
 <translation id="5546461542133609677">ಅನ್‌ಮ್ಯೂಟ್ ಮಾಡು</translation>
+<translation id="5608153257855394627">ಹೈಲೈಟ್</translation>
 <translation id="561939826962581046">ಸಮಯ</translation>
 <translation id="5630795885300617244">10ಸೆ ಸ್ಕಿಪ್ ಮಾಡಲು ಎಡಕ್ಕೆ ಅಥವಾ ಬಲಕ್ಕೆ ಡಬಲ್ ಟ್ಯಾಪ್ ಮಾಡಿ</translation>
 <translation id="5631759159893697722">ಸಾರಾಂಶ</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">ಸ್ಥಳೀಯ ದಿನಾಂಕ ಮತ್ತು ಸಮಯದ ಆಯ್ಕೆ</translation>
 <translation id="8261464734335370856">ಅಮಾನ್ಯ ಕಾಗುಣಿತ</translation>
 <translation id="8284326494547611709">ಶೀರ್ಷಿಕೆಗಳು</translation>
+<translation id="8346634859695247203">ವಿಭಾಗ</translation>
 <translation id="835897206747267392">ಅಮಾನ್ಯ ಮೌಲ್ಯ.</translation>
 <translation id="8403857369060869934">ಕಳೆದುಹೋದ ಸಮಯ: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">ಭಾಗ</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ko.xtb b/third_party/blink/public/strings/translations/blink_strings_ko.xtb
index 9cc15f8..0d935143 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ko.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ko.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">날짜 선택기</translation>
 <translation id="5537725057119320332">전송</translation>
 <translation id="5546461542133609677">음소거 해제</translation>
+<translation id="5608153257855394627">강조표시</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">10초를 건너뛰려면 왼쪽이나 오른쪽을 두 번 탭하세요.</translation>
 <translation id="5631759159893697722">초록</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">로컬 날짜 및 시간 선택도구</translation>
 <translation id="8261464734335370856">맞춤법이 잘못되었습니다.</translation>
 <translation id="8284326494547611709">자막</translation>
+<translation id="8346634859695247203">섹션</translation>
 <translation id="835897206747267392">값이 잘못되었습니다.</translation>
 <translation id="8403857369060869934">경과 시간: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">부</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_lt.xtb b/third_party/blink/public/strings/translations/blink_strings_lt.xtb
index 45e3294..93b4bf4 100644
--- a/third_party/blink/public/strings/translations/blink_strings_lt.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_lt.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">datos rinkiklis</translation>
 <translation id="5537725057119320332">Perduoti</translation>
 <translation id="5546461542133609677">įjungti garsą</translation>
+<translation id="5608153257855394627">paryškinti</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Dukart palieskite kairėn arba dešinėn, kad praleistumėte 10 sek.</translation>
 <translation id="5631759159893697722">santrauka</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">vietos datos ir laiko rinkiklis</translation>
 <translation id="8261464734335370856">Netinkama rašyba</translation>
 <translation id="8284326494547611709">Subtitrai</translation>
+<translation id="8346634859695247203">skiltis</translation>
 <translation id="835897206747267392">Neteisinga vertė.</translation>
 <translation id="8403857369060869934">praėjęs laikas: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">dalis</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_lv.xtb b/third_party/blink/public/strings/translations/blink_strings_lv.xtb
index bc5e61f..7a78d2b 100644
--- a/third_party/blink/public/strings/translations/blink_strings_lv.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_lv.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">datuma atlasītājs</translation>
 <translation id="5537725057119320332">Apraidīt</translation>
 <translation id="5546461542133609677">rādīt</translation>
+<translation id="5608153257855394627">izcēlums</translation>
 <translation id="561939826962581046">laiks</translation>
 <translation id="5630795885300617244">Veiciet dubultskārienu pa labi vai pa kreisi, lai izlaistu 10 s.</translation>
 <translation id="5631759159893697722">kopsavilkums</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">vietējā datuma un laika atlasītājs</translation>
 <translation id="8261464734335370856">Nederīga pareizrakstība</translation>
 <translation id="8284326494547611709">Paraksti</translation>
+<translation id="8346634859695247203">sadaļa</translation>
 <translation id="835897206747267392">Nederīga vērtība.</translation>
 <translation id="8403857369060869934">pagājušais laiks: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">daļa</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ml.xtb b/third_party/blink/public/strings/translations/blink_strings_ml.xtb
index 83ea623..8e43d4d 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ml.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ml.xtb
@@ -85,7 +85,7 @@
 <translation id="3846214748874656680">പൂർണ്ണ സ്‌ക്രീനിൽ നിന്ന് പുറത്തുകടക്കുക</translation>
 <translation id="3889183436948184105">പുനഃപരിശോധന</translation>
 <translation id="3920932319529768807">ഉപസംഹാരം</translation>
-<translation id="3924558731517983934">അപ്ലിക്കേഷൻ</translation>
+<translation id="3924558731517983934">ആപ്പ്</translation>
 <translation id="3944740393230681990">ആമുഖം</translation>
 <translation id="3960700977367013758">സ്‌ക്രോൾ ബാർ</translation>
 <translation id="4103419683916926126">മില്ലിസെക്കൻഡ്</translation>
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">തീയതി പിക്കർ</translation>
 <translation id="5537725057119320332">കാസ്‌റ്റ് ചെയ്യുക</translation>
 <translation id="5546461542133609677">ശബ്‌ദമുള്ളതാക്കുക</translation>
+<translation id="5608153257855394627">ഹൈലൈറ്റ് ചെയ്‌തത്</translation>
 <translation id="561939826962581046">സമയം</translation>
 <translation id="5630795885300617244">10 സെക്കൻഡ് ഒഴിവാക്കാൻ ഇടത്തോട്ടോ വലത്തോട്ടോ ഡബിൾ ടാപ്പ് ചെയ്യുക</translation>
 <translation id="5631759159893697722">സംക്ഷേപം</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">പ്രാദേശിക തീയതിയും സമയ പിക്കറും</translation>
 <translation id="8261464734335370856">അക്ഷരത്തെറ്റ്</translation>
 <translation id="8284326494547611709">അടിക്കുറിപ്പുകൾ</translation>
+<translation id="8346634859695247203">വിഭാഗം</translation>
 <translation id="835897206747267392">അസാധുവായ മൂല്യം.</translation>
 <translation id="8403857369060869934">കഴിഞ്ഞ സമയം: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">ഭാഗം</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_mr.xtb b/third_party/blink/public/strings/translations/blink_strings_mr.xtb
index db9d1648..ec23a6e 100644
--- a/third_party/blink/public/strings/translations/blink_strings_mr.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_mr.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">तारीख निवडक</translation>
 <translation id="5537725057119320332">कास्ट करा</translation>
 <translation id="5546461542133609677">सशब्द करा</translation>
+<translation id="5608153257855394627">हायलाइट</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">10 सेकंद वगळण्यासाठी डावीकडे किंवा उजवीकडे दोनदा टॅप करा</translation>
 <translation id="5631759159893697722">अमूर्त</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">स्थानिक तारीख आणि वेळ पिकर</translation>
 <translation id="8261464734335370856">चुकीचे शब्दलेखन</translation>
 <translation id="8284326494547611709">मथळे</translation>
+<translation id="8346634859695247203">विभाग</translation>
 <translation id="835897206747267392">चुकीचे मूल्य.</translation>
 <translation id="8403857369060869934">गेलेला वेळ: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">भाग</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ms.xtb b/third_party/blink/public/strings/translations/blink_strings_ms.xtb
index 666c73e8..1fb5545e 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ms.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ms.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">pemilih tarikh</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">nyahredam</translation>
+<translation id="5608153257855394627">sorotan</translation>
 <translation id="561939826962581046">masa</translation>
 <translation id="5630795885300617244">Ketik dua kali ke kiri atau kanan untuk melangkau 10s</translation>
 <translation id="5631759159893697722">abstrak</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">pemilih tarikh dan masa setempat</translation>
 <translation id="8261464734335370856">Ejaan tidak sah</translation>
 <translation id="8284326494547611709">Kapsyen</translation>
+<translation id="8346634859695247203">bahagian</translation>
 <translation id="835897206747267392">Nilai tidak sah.</translation>
 <translation id="8403857369060869934">masa berlalu: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">bahagian</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_nl.xtb b/third_party/blink/public/strings/translations/blink_strings_nl.xtb
index 10f1d4a..5d110dd 100644
--- a/third_party/blink/public/strings/translations/blink_strings_nl.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_nl.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">datumkiezer</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">dempen opheffen</translation>
+<translation id="5608153257855394627">markeren</translation>
 <translation id="561939826962581046">tijd</translation>
 <translation id="5630795885300617244">Dubbeltik links of rechts om 10 seconden over te slaan</translation>
 <translation id="5631759159893697722">uittreksel</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">lokale datum- en tijdkiezer</translation>
 <translation id="8261464734335370856">Ongeldige spelling</translation>
 <translation id="8284326494547611709">Ondertiteling</translation>
+<translation id="8346634859695247203">sectie</translation>
 <translation id="835897206747267392">Ongeldige waarde.</translation>
 <translation id="8403857369060869934">verstreken tijd: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">deel</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_no.xtb b/third_party/blink/public/strings/translations/blink_strings_no.xtb
index 2c21f34..8722383 100644
--- a/third_party/blink/public/strings/translations/blink_strings_no.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_no.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">datovelger</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">slå på lyden</translation>
+<translation id="5608153257855394627">fremheving</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Dobbelttrykk på venstre eller høyre side for å hoppe 10 sekunder</translation>
 <translation id="5631759159893697722">abstrakt</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">lokaldato- og -klokkeslettvelger</translation>
 <translation id="8261464734335370856">Stavefeil</translation>
 <translation id="8284326494547611709">Teksting</translation>
+<translation id="8346634859695247203">del</translation>
 <translation id="835897206747267392">Ugyldig verdi</translation>
 <translation id="8403857369060869934">medgått tid: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">del</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_pl.xtb b/third_party/blink/public/strings/translations/blink_strings_pl.xtb
index d751308..8de4b5c 100644
--- a/third_party/blink/public/strings/translations/blink_strings_pl.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_pl.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">selektor daty</translation>
 <translation id="5537725057119320332">Przesyłaj</translation>
 <translation id="5546461542133609677">wyłącz wyciszenie</translation>
+<translation id="5608153257855394627">podświetlenie</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Kliknij dwukrotnie z lewej lub prawej, by przewinąć o 10 s</translation>
 <translation id="5631759159893697722">streszczenie</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">selektor lokalnej daty i godziny</translation>
 <translation id="8261464734335370856">Nieprawidłowa pisownia</translation>
 <translation id="8284326494547611709">Napisy</translation>
+<translation id="8346634859695247203">sekcja</translation>
 <translation id="835897206747267392">Nieprawidłowa wartość.</translation>
 <translation id="8403857369060869934">upłynęło: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">część</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_pt-BR.xtb b/third_party/blink/public/strings/translations/blink_strings_pt-BR.xtb
index 53e2982..003334c 100644
--- a/third_party/blink/public/strings/translations/blink_strings_pt-BR.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_pt-BR.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">seletor de data</translation>
 <translation id="5537725057119320332">Transmitir</translation>
 <translation id="5546461542133609677">ativar som</translation>
+<translation id="5608153257855394627">destaque</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Toque duas vezes na esquerda ou direita para pular 10 s</translation>
 <translation id="5631759159893697722">resumo</translation>
@@ -162,7 +163,7 @@
 <translation id="6404546809543547843">barra de progressão do áudio</translation>
 <translation id="6443871981718447451">mostrar menu de closed captions</translation>
 <translation id="6453774872122745852">agradecimentos</translation>
-<translation id="6475115390776617481">presença ao vivo</translation>
+<translation id="6475115390776617481">há mais alguém aqui</translation>
 <translation id="648732519525291180">seletor de hora</translation>
 <translation id="6550675742724504774">Opções</translation>
 <translation id="6572309429103589720">Gramática inválida</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">seletor de data e hora local</translation>
 <translation id="8261464734335370856">Ortografia inválida</translation>
 <translation id="8284326494547611709">Legendas</translation>
+<translation id="8346634859695247203">seção</translation>
 <translation id="835897206747267392">Valor inválido.</translation>
 <translation id="8403857369060869934">tempo decorrido: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">parte</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_pt-PT.xtb b/third_party/blink/public/strings/translations/blink_strings_pt-PT.xtb
index 74ea9a3..2558095 100644
--- a/third_party/blink/public/strings/translations/blink_strings_pt-PT.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_pt-PT.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">selecionador de data</translation>
 <translation id="5537725057119320332">Transmitir</translation>
 <translation id="5546461542133609677">reativar som</translation>
+<translation id="5608153257855394627">realçar</translation>
 <translation id="561939826962581046">hora</translation>
 <translation id="5630795885300617244">Toque duas vezes à esquerda ou à direita para avançar 10 seg.</translation>
 <translation id="5631759159893697722">resumo</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">selecionador de data e hora locais</translation>
 <translation id="8261464734335370856">Ortografia inválida.</translation>
 <translation id="8284326494547611709">Legendas</translation>
+<translation id="8346634859695247203">secção</translation>
 <translation id="835897206747267392">Valor inválido.</translation>
 <translation id="8403857369060869934">tempo decorrido: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">parte</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ro.xtb b/third_party/blink/public/strings/translations/blink_strings_ro.xtb
index 2df6d9e..613d288 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ro.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ro.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">selector dată</translation>
 <translation id="5537725057119320332">Proiectează</translation>
 <translation id="5546461542133609677">activați sunetul</translation>
+<translation id="5608153257855394627">evidențiază</translation>
 <translation id="561939826962581046">oră</translation>
 <translation id="5630795885300617244">Atinge de două ori spre stânga sau spre dreapta pentru a derula cu 10 secunde</translation>
 <translation id="5631759159893697722">rezumat</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">selector pentru data și ora locală</translation>
 <translation id="8261464734335370856">Ortografie nevalidă</translation>
 <translation id="8284326494547611709">Subtitrări</translation>
+<translation id="8346634859695247203">secțiune</translation>
 <translation id="835897206747267392">Valoare nevalidă.</translation>
 <translation id="8403857369060869934">timp scurs: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">parte</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ru.xtb b/third_party/blink/public/strings/translations/blink_strings_ru.xtb
index 17fc820..fb6f5a17 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ru.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ru.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">окно выбора даты</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">включение звука</translation>
+<translation id="5608153257855394627">выделение</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">Чтобы пропустить 10 секунд, нажмите дважды слева или справа.</translation>
 <translation id="5631759159893697722">аннотация</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">выбор местного времени и даты</translation>
 <translation id="8261464734335370856">Орфографическая ошибка</translation>
 <translation id="8284326494547611709">Титры</translation>
+<translation id="8346634859695247203">раздел</translation>
 <translation id="835897206747267392">Недопустимые данные.</translation>
 <translation id="8403857369060869934">прошло времени: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">часть</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_sk.xtb b/third_party/blink/public/strings/translations/blink_strings_sk.xtb
index a6d10e4..d462f1b6 100644
--- a/third_party/blink/public/strings/translations/blink_strings_sk.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_sk.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">výber dátumu</translation>
 <translation id="5537725057119320332">Prenášať</translation>
 <translation id="5546461542133609677">obnoviť zvuk</translation>
+<translation id="5608153257855394627">zvýraznenie</translation>
 <translation id="561939826962581046">čas</translation>
 <translation id="5630795885300617244">Dvojitým klepnutím doľava alebo doprava preskočíte o 10 s</translation>
 <translation id="5631759159893697722">abstrakt</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">výber miestneho dátumu a času</translation>
 <translation id="8261464734335370856">Neplatný pravopis</translation>
 <translation id="8284326494547611709">Titulky</translation>
+<translation id="8346634859695247203">sekcia</translation>
 <translation id="835897206747267392">Neplatná hodnota.</translation>
 <translation id="8403857369060869934">uplynutý čas: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">časť</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_sl.xtb b/third_party/blink/public/strings/translations/blink_strings_sl.xtb
index 34255342..85cbb48 100644
--- a/third_party/blink/public/strings/translations/blink_strings_sl.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_sl.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">izbirnik datuma</translation>
 <translation id="5537725057119320332">Predvajanje</translation>
 <translation id="5546461542133609677">vklop zvoka</translation>
+<translation id="5608153257855394627">označeno</translation>
 <translation id="561939826962581046">čas</translation>
 <translation id="5630795885300617244">Dvakrat se dotaknite levo ali desno, da preskočite 10 s</translation>
 <translation id="5631759159893697722">izvleček</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">izbirnik lokalnega datuma in ure</translation>
 <translation id="8261464734335370856">Neveljavno črkovanje</translation>
 <translation id="8284326494547611709">Napisi</translation>
+<translation id="8346634859695247203">razdelek</translation>
 <translation id="835897206747267392">Neveljavna vrednost.</translation>
 <translation id="8403857369060869934">pretečeni čas: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">del</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_sr.xtb b/third_party/blink/public/strings/translations/blink_strings_sr.xtb
index bc2ee53..4264b3d17 100644
--- a/third_party/blink/public/strings/translations/blink_strings_sr.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_sr.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">бирач датума</translation>
 <translation id="5537725057119320332">Пребацуј</translation>
 <translation id="5546461542133609677">укључите звук</translation>
+<translation id="5608153257855394627">истакнуто</translation>
 <translation id="561939826962581046">време</translation>
 <translation id="5630795885300617244">Двапут додирните лево или десно да бисте прескочили 10 сек</translation>
 <translation id="5631759159893697722">сажетак</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">бирач локалног датума и времена</translation>
 <translation id="8261464734335370856">Нетачан правопис</translation>
 <translation id="8284326494547611709">Титл</translation>
+<translation id="8346634859695247203">одељак</translation>
 <translation id="835897206747267392">Неважећа вредност.</translation>
 <translation id="8403857369060869934">протекло време: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">део</translation>
@@ -247,7 +249,7 @@
 <translation id="8711688047404765493">излаз</translation>
 <translation id="8750798805984357768">Изаберите неку од ових опција.</translation>
 <translation id="8808573423886751634">поглавље</translation>
-<translation id="8822203815165896261">информације о прављењу садржаја</translation>
+<translation id="8822203815165896261">информације о ауторству</translation>
 <translation id="8845239796550121995">Тренутно се пребацује на ТВ</translation>
 <translation id="8851136666856101339">main</translation>
 <translation id="8875657656876809964">Грешка при пуштању видео снимка</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_sv.xtb b/third_party/blink/public/strings/translations/blink_strings_sv.xtb
index 68bb228..0652b6c 100644
--- a/third_party/blink/public/strings/translations/blink_strings_sv.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_sv.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">datumväljare</translation>
 <translation id="5537725057119320332">Casta</translation>
 <translation id="5546461542133609677">slå på ljudet</translation>
+<translation id="5608153257855394627">markerat</translation>
 <translation id="561939826962581046">tid</translation>
 <translation id="5630795885300617244">Hoppa över 10 s genom att trycka två gånger till vänster/höger</translation>
 <translation id="5631759159893697722">abstract</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">datum- och tidsväljare för lokal tid</translation>
 <translation id="8261464734335370856">Stavfel</translation>
 <translation id="8284326494547611709">Textning</translation>
+<translation id="8346634859695247203">avsnitt</translation>
 <translation id="835897206747267392">Ogiltigt värde.</translation>
 <translation id="8403857369060869934">tid som gått: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">del</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_sw.xtb b/third_party/blink/public/strings/translations/blink_strings_sw.xtb
index 90f22b019..350e8c8 100644
--- a/third_party/blink/public/strings/translations/blink_strings_sw.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_sw.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">kichagua tarehe</translation>
 <translation id="5537725057119320332">Tuma</translation>
 <translation id="5546461542133609677">washa sauti</translation>
+<translation id="5608153257855394627">yaliyoangaziwa</translation>
 <translation id="561939826962581046">wakati</translation>
 <translation id="5630795885300617244">Gusa mara mbili kushoto au kulia ili uruke kwa sekunde 10</translation>
 <translation id="5631759159893697722">ikisiri</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">kiteuzi cha saa na tarehe ya mahali ulipo</translation>
 <translation id="8261464734335370856">Maendelezo si sahihi</translation>
 <translation id="8284326494547611709">Manukuu</translation>
+<translation id="8346634859695247203">sehemu</translation>
 <translation id="835897206747267392">Thamani batili.</translation>
 <translation id="8403857369060869934">muda uliopita: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">sehemu</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_ta.xtb b/third_party/blink/public/strings/translations/blink_strings_ta.xtb
index f5e3d1c..0ffc1ef 100644
--- a/third_party/blink/public/strings/translations/blink_strings_ta.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_ta.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">தேதி தேர்ந்தெடுப்பான்</translation>
 <translation id="5537725057119320332">அலைபரப்பு</translation>
 <translation id="5546461542133609677">ஒலி இயக்கு</translation>
+<translation id="5608153257855394627">தனிப்படுத்தும்</translation>
 <translation id="561939826962581046">நேரம்</translation>
 <translation id="5630795885300617244">10வி தவிர்க்க, இடது அல்லது வலதுபுறம் இருமுறை தட்டவும்</translation>
 <translation id="5631759159893697722">சுருக்கம்</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">உள்ளூர் தேதி &amp; நேரத் தேர்வி</translation>
 <translation id="8261464734335370856">எழுத்துப்பிழை</translation>
 <translation id="8284326494547611709">வசனங்கள்</translation>
+<translation id="8346634859695247203">பிரிவு</translation>
 <translation id="835897206747267392">செல்லாத மதிப்பு.</translation>
 <translation id="8403857369060869934">முடிவடைந்த நேரம்: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">பகுதி</translation>
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 2b04fd1..889049e 100644
--- a/third_party/blink/public/strings/translations/blink_strings_te.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_te.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">తేదీ ఎంపిక</translation>
 <translation id="5537725057119320332">Cast</translation>
 <translation id="5546461542133609677">అన్‌మ్యూట్ చేయి</translation>
+<translation id="5608153257855394627">హైలైట్ చేయి</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">10సె దాటవేయడానికి రెండుసార్లు ఎడమ లేదా కుడివైపుకి నొక్కండి</translation>
 <translation id="5631759159893697722">సంక్షేపం</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">స్థానిక తేదీ మరియు సమయం ఎంపిక</translation>
 <translation id="8261464734335370856">చెల్లని అక్షరక్రమం</translation>
 <translation id="8284326494547611709">ఉపశీర్షికలు</translation>
+<translation id="8346634859695247203">విభాగం</translation>
 <translation id="835897206747267392">చెల్లని విలువ.</translation>
 <translation id="8403857369060869934">గడిచిన సమయం: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">భాగం</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_th.xtb b/third_party/blink/public/strings/translations/blink_strings_th.xtb
index 2a689c5..1fbf2aab 100644
--- a/third_party/blink/public/strings/translations/blink_strings_th.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_th.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">เครื่องมือเลือกวันที่</translation>
 <translation id="5537725057119320332">ส่ง</translation>
 <translation id="5546461542133609677">เปิดเสียง</translation>
+<translation id="5608153257855394627">ไฮไลต์</translation>
 <translation id="561939826962581046">เวลา</translation>
 <translation id="5630795885300617244">แตะ 2 ครั้งที่ด้านขวาหรือซ้ายเพื่อข้ามทีละ 10 วินาที</translation>
 <translation id="5631759159893697722">บทคัดย่อ</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">เครื่องมือเลือกวันที่และเวลาในท้องถิ่น</translation>
 <translation id="8261464734335370856">มีการสะกดผิด</translation>
 <translation id="8284326494547611709">คำบรรยาย</translation>
+<translation id="8346634859695247203">ส่วน</translation>
 <translation id="835897206747267392">ค่าไม่ถูกต้อง</translation>
 <translation id="8403857369060869934">เวลาที่ผ่านไป: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">ภาค</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_tr.xtb b/third_party/blink/public/strings/translations/blink_strings_tr.xtb
index 069de87..09cda4c 100644
--- a/third_party/blink/public/strings/translations/blink_strings_tr.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_tr.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">tarih seçici</translation>
 <translation id="5537725057119320332">Yayınla</translation>
 <translation id="5546461542133609677">sesi aç</translation>
+<translation id="5608153257855394627">vurgula</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">10 sn. atlamak için sola veya sağa iki kez dokunun</translation>
 <translation id="5631759159893697722">özet</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">yerel tarih ve zaman seçici</translation>
 <translation id="8261464734335370856">Geçersiz yazım</translation>
 <translation id="8284326494547611709">Altyazılar</translation>
+<translation id="8346634859695247203">bölüm</translation>
 <translation id="835897206747267392">Geçersiz değer.</translation>
 <translation id="8403857369060869934">geçen süre: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">bölüm</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_uk.xtb b/third_party/blink/public/strings/translations/blink_strings_uk.xtb
index f80ac31..3f69367 100644
--- a/third_party/blink/public/strings/translations/blink_strings_uk.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_uk.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">засіб вибору дати</translation>
 <translation id="5537725057119320332">Трансляція екрана</translation>
 <translation id="5546461542133609677">увімкнути звук</translation>
+<translation id="5608153257855394627">виділити</translation>
 <translation id="561939826962581046">час</translation>
 <translation id="5630795885300617244">Двічі торкніться ліворуч або праворуч, щоб пропустити 10 с</translation>
 <translation id="5631759159893697722">автореферат</translation>
@@ -162,7 +163,7 @@
 <translation id="6404546809543547843">повзунок часу відтворення аудіо</translation>
 <translation id="6443871981718447451">показати меню субтитрів</translation>
 <translation id="6453774872122745852">слова подяки</translation>
-<translation id="6475115390776617481">присутність у реальному часі</translation>
+<translation id="6475115390776617481">дані про присутність у реальному часі</translation>
 <translation id="648732519525291180">засіб вибору часу</translation>
 <translation id="6550675742724504774">Параметри</translation>
 <translation id="6572309429103589720">Граматична помилка</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">засіб вибору місцевих дати й часу</translation>
 <translation id="8261464734335370856">Орфографічна помилка</translation>
 <translation id="8284326494547611709">Субтитри</translation>
+<translation id="8346634859695247203">розділ</translation>
 <translation id="835897206747267392">Недійсне значення</translation>
 <translation id="8403857369060869934">минуло часу: <ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">частина</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_zh-CN.xtb b/third_party/blink/public/strings/translations/blink_strings_zh-CN.xtb
index a8ee4b3..d9bbfd9 100644
--- a/third_party/blink/public/strings/translations/blink_strings_zh-CN.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_zh-CN.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">日期选择器</translation>
 <translation id="5537725057119320332">投射</translation>
 <translation id="5546461542133609677">取消静音</translation>
+<translation id="5608153257855394627">突出显示</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">在左侧或右侧点按两次即可跳过 10 秒</translation>
 <translation id="5631759159893697722">摘要</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">当地日期和时间选择器</translation>
 <translation id="8261464734335370856">拼写无效</translation>
 <translation id="8284326494547611709">字幕</translation>
+<translation id="8346634859695247203">部分</translation>
 <translation id="835897206747267392">值无效。</translation>
 <translation id="8403857369060869934">已播放时间:<ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">部分</translation>
diff --git a/third_party/blink/public/strings/translations/blink_strings_zh-TW.xtb b/third_party/blink/public/strings/translations/blink_strings_zh-TW.xtb
index 4dbc9f55..dfdd43025 100644
--- a/third_party/blink/public/strings/translations/blink_strings_zh-TW.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_zh-TW.xtb
@@ -134,6 +134,7 @@
 <translation id="5516424706154626233">日期選擇器</translation>
 <translation id="5537725057119320332">投放</translation>
 <translation id="5546461542133609677">取消靜音</translation>
+<translation id="5608153257855394627">醒目顯示</translation>
 <translation id="561939826962581046">time</translation>
 <translation id="5630795885300617244">輕觸兩下左側或右側可跳過 10 秒</translation>
 <translation id="5631759159893697722">摘要</translation>
@@ -226,6 +227,7 @@
 <translation id="8208673686607688524">當地日期和時間挑選器</translation>
 <translation id="8261464734335370856">拼字錯誤</translation>
 <translation id="8284326494547611709">字幕</translation>
+<translation id="8346634859695247203">部分</translation>
 <translation id="835897206747267392">無效的值。</translation>
 <translation id="8403857369060869934">經過時間:<ph name="ELAPSED_TIME" /></translation>
 <translation id="8415319359811155763">分輯</translation>
diff --git a/third_party/blink/renderer/core/BUILD.gn b/third_party/blink/renderer/core/BUILD.gn
index 932e138..c1b944e 100644
--- a/third_party/blink/renderer/core/BUILD.gn
+++ b/third_party/blink/renderer/core/BUILD.gn
@@ -29,9 +29,6 @@
 # Config for code that builds as part of core.
 config("config") {
   defines = [ "BLINK_CORE_IMPLEMENTATION=1" ]
-  if (is_android && notouch_build) {
-    defines += [ "ENABLE_TOUCHLESS_UASTYLE_THEME" ]
-  }
 }
 
 config("core_include_dirs") {
diff --git a/third_party/blink/renderer/core/css/touchless.css b/third_party/blink/renderer/core/css/touchless.css
deleted file mode 100644
index a0013b0..0000000
--- a/third_party/blink/renderer/core/css/touchless.css
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2019 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. */
-
-video:focus {
-    outline: none !important;
-    box-shadow: none !important
-}
-
-input[type = text],
-input[type = email],
-input[type = date],
-input[type = datetime],
-input[type = datetime-local],
-input[type = month],
-input[type = number],
-input[type = password],
-input[type = search],
-input[type = time],
-video:-internal-spatial-navigation-interest {
-    outline-offset: -4px
-}
-
-:-internal-spatial-navigation-interest {
-    outline: auto 4px #185ABC !important;
-    box-shadow: none !important
-}
-
-body {
-    user-select: none !important;
-}
diff --git a/third_party/blink/renderer/core/display_lock/display_lock_context.h b/third_party/blink/renderer/core/display_lock/display_lock_context.h
index c5bbb2d..f429d05 100644
--- a/third_party/blink/renderer/core/display_lock/display_lock_context.h
+++ b/third_party/blink/renderer/core/display_lock/display_lock_context.h
@@ -191,10 +191,6 @@
     needs_prepaint_subtree_walk_ = true;
   }
 
-  // TODO(vmpstr): These are deprecated and will be removed soon.
-  LayoutUnit GetLockedContentLogicalWidth() const { return LayoutUnit(); }
-  LayoutUnit GetLockedContentLogicalHeight() const { return LayoutUnit(); }
-
  private:
   friend class DisplayLockContextTest;
   friend class DisplayLockBudgetTest;
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
index b8b6e3fe..f7ba46f 100644
--- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc
@@ -8619,7 +8619,8 @@
 }
 
 bool Document::InForcedColorsMode() const {
-  return RuntimeEnabledFeatures::ForcedColorsEnabled() &&
+  return RuntimeEnabledFeatures::ForcedColorsEnabled() && Platform::Current() &&
+         Platform::Current()->ThemeEngine() &&
          Platform::Current()->ThemeEngine()->ForcedColors() !=
              ForcedColors::kNone;
 }
diff --git a/third_party/blink/renderer/core/exported/web_page_popup_impl.cc b/third_party/blink/renderer/core/exported/web_page_popup_impl.cc
index 60f9986..109534f 100644
--- a/third_party/blink/renderer/core/exported/web_page_popup_impl.cc
+++ b/third_party/blink/renderer/core/exported/web_page_popup_impl.cc
@@ -38,6 +38,7 @@
 #include "third_party/blink/public/web/web_view_client.h"
 #include "third_party/blink/renderer/core/accessibility/ax_object_cache_base.h"
 #include "third_party/blink/renderer/core/dom/context_features.h"
+#include "third_party/blink/renderer/core/dom/document.h"
 #include "third_party/blink/renderer/core/dom/events/event_dispatch_forbidden_scope.h"
 #include "third_party/blink/renderer/core/events/message_event.h"
 #include "third_party/blink/renderer/core/events/web_input_event_conversion.h"
@@ -66,6 +67,7 @@
 #include "third_party/blink/renderer/platform/heap/handle.h"
 #include "third_party/blink/renderer/platform/heap/heap.h"
 #include "third_party/blink/renderer/platform/instrumentation/tracing/trace_event.h"
+#include "third_party/blink/renderer/platform/keyboard_codes.h"
 #include "third_party/blink/renderer/platform/web_test_support.h"
 
 namespace blink {
@@ -406,11 +408,25 @@
     const WebKeyboardEvent& event) {
   if (closing_)
     return WebInputEventResult::kNotHandled;
+
+  if (WebInputEvent::kRawKeyDown == event.GetType()) {
+    Element* focused_element = FocusedElement();
+    if (focused_element && focused_element->IsKeyboardFocusable() &&
+        event.windows_key_code == VKEY_TAB) {
+      // If the tab key is pressed while a keyboard focusable element is
+      // focused, we should not send a corresponding keypress event.
+      suppress_next_keypress_event_ = true;
+    }
+  }
   return MainFrame().GetEventHandler().KeyEvent(event);
 }
 
 WebInputEventResult WebPagePopupImpl::HandleCharEvent(
     const WebKeyboardEvent& event) {
+  if (suppress_next_keypress_event_) {
+    suppress_next_keypress_event_ = false;
+    return WebInputEventResult::kHandledSuppressed;
+  }
   return HandleKeyEvent(event);
 }
 
@@ -455,6 +471,21 @@
   return *To<LocalFrame>(page_->MainFrame());
 }
 
+Element* WebPagePopupImpl::FocusedElement() const {
+  if (!page_)
+    return nullptr;
+
+  LocalFrame* frame = page_->GetFocusController().FocusedFrame();
+  if (!frame)
+    return nullptr;
+
+  Document* document = frame->GetDocument();
+  if (!document)
+    return nullptr;
+
+  return document->FocusedElement();
+}
+
 bool WebPagePopupImpl::IsViewportPointInWindow(int x, int y) {
   WebRect point_in_window(x, y, 0, 0);
   WidgetClient()->ConvertViewportToWindow(&point_in_window);
diff --git a/third_party/blink/renderer/core/exported/web_page_popup_impl.h b/third_party/blink/renderer/core/exported/web_page_popup_impl.h
index 1690ed4..8fea472 100644
--- a/third_party/blink/renderer/core/exported/web_page_popup_impl.h
+++ b/third_party/blink/renderer/core/exported/web_page_popup_impl.h
@@ -44,6 +44,7 @@
 }
 
 namespace blink {
+class Element;
 class Page;
 class PagePopupChromeClient;
 class PagePopupClient;
@@ -138,6 +139,8 @@
   // This may only be called if page_ is non-null.
   LocalFrame& MainFrame() const;
 
+  Element* FocusedElement() const;
+
   bool IsViewportPointInWindow(int x, int y);
 
   // PagePopup function
@@ -167,6 +170,8 @@
   base::TimeTicks raf_aligned_input_start_time_;
   bool is_accelerated_compositing_active_ = false;
 
+  bool suppress_next_keypress_event_ = false;
+
   friend class WebPagePopup;
   friend class PagePopupChromeClient;
 
diff --git a/third_party/blink/renderer/core/html/canvas/html_canvas_element.cc b/third_party/blink/renderer/core/html/canvas/html_canvas_element.cc
index f8636ca..8935a28 100644
--- a/third_party/blink/renderer/core/html/canvas/html_canvas_element.cc
+++ b/third_party/blink/renderer/core/html/canvas/html_canvas_element.cc
@@ -583,6 +583,8 @@
   if (had_resource_provider && old_size == new_size && Is2d()) {
     if (!canvas_is_clear_) {
       canvas_is_clear_ = true;
+      if (canvas2d_bridge_)
+        canvas2d_bridge_->ClearFrame();
       context_->ClearRect(0, 0, width(), height());
     }
     return;
diff --git a/third_party/blink/renderer/core/html/forms/resources/time_picker.css b/third_party/blink/renderer/core/html/forms/resources/time_picker.css
index 678d964..0d3d91c 100644
--- a/third_party/blink/renderer/core/html/forms/resources/time_picker.css
+++ b/third_party/blink/renderer/core/html/forms/resources/time_picker.css
@@ -59,6 +59,10 @@
   font-weight: bold;
 }
 
+.time-column:focus .time-cell.selected {
+  outline: auto 1px -webkit-focus-ring-color;
+}
+
 .submission-controls {
   align-items: center;
   border-top: 1px solid #CECECE;
diff --git a/third_party/blink/renderer/core/html/forms/resources/time_picker.js b/third_party/blink/renderer/core/html/forms/resources/time_picker.js
index 321a32bf..bec6a53 100644
--- a/third_party/blink/renderer/core/html/forms/resources/time_picker.js
+++ b/third_party/blink/renderer/core/html/forms/resources/time_picker.js
@@ -178,27 +178,46 @@
     this.submissionControls_ = new SubmissionControls(
         this.onSubmitButtonClick_, this.onCancelButtonClick_);
     this.append(this.timeColumns_, this.submissionControls_);
-  }
+
+    window.addEventListener('resize', this.onWindowResize_, {once: true});
+    this.addEventListener('keydown', this.onKeyDown_);
+  };
 
   initializeFromConfig_ = (config) => {
     const initialSelection = parseDateTimeString(config.currentValue);
-    this.selectedTime_ = initialSelection ? initialSelection
-                                          : Time.currentTime();
+    this.selectedTime_ =
+        initialSelection ? initialSelection : Time.currentTime();
     this.hasSecond_ = config.hasSecond;
     this.hasMillisecond_ = config.hasMillisecond;
     this.hasAMPM_ = config.hasAMPM;
-  }
+  };
 
   onSubmitButtonClick_ = () => {
-    const selectedValue = this.timeColumns_.selectedValue().toString(this.hasSecond, this.hasMillisecond);
+    const selectedValue = this.timeColumns_.selectedValue().toString(
+        this.hasSecond, this.hasMillisecond);
     window.setTimeout(function() {
       window.pagePopupController.setValueAndClosePopup(0, selectedValue);
     }, 100);
-  }
+  };
 
   onCancelButtonClick_ = () => {
     window.pagePopupController.closePopup();
-  }
+  };
+
+  onWindowResize_ = (event) => {
+    this.timeColumns_.firstChild.focus();
+  };
+
+  onKeyDown_ = (event) => {
+    switch (event.key) {
+      case 'Enter':
+        this.submissionControls_.submitButton.click();
+        break;
+      case 'Escape':
+        this.submissionControls_.cancelButton.click();
+        break;
+    }
+  };
 
   get selectedTime() {
     return this.selectedTime_;
@@ -274,7 +293,7 @@
       this.append(this.ampmColumn_);
       this.width_ += TimePicker.ColumnWidth;
     }
-  }
+  };
 
   get width() {
     return this.width_;
@@ -299,7 +318,7 @@
       }
     }
     return new Time(hour, minute, second, millisecond);
-  }
+  };
 }
 TimeColumns.ClassName = 'time-columns';
 window.customElements.define('time-columns', TimeColumns);
@@ -312,6 +331,7 @@
     super();
 
     this.className = TimeColumn.ClassName;
+    this.tabIndex = 0;
     this.columnType_ = columnType;
     if (this.columnType_ == TimeColumnType.AMPM) {
       this.createAndInitializeAMPMCells_(timePicker);
@@ -320,21 +340,29 @@
     }
 
     this.addEventListener('click', this.onClick_);
-  }
+    this.addEventListener('keydown', this.onKeyDown_);
+  };
 
   createAndInitializeCells_ = (timePicker) => {
     const totalCells = Time.numberOfValues(this.columnType_, timePicker.hasAMPM);
     let currentTime = timePicker.selectedTime.clone();
     let cells = [];
+    let duplicateCells = [];
+    // In order to support a continuous looping navigation for up/down arrows,
+    // the initial list of cells is doubled and middleTimeCell is kept
+    // to inform where the duplicated cells begin.
     for (let i = 0; i < totalCells; i++) {
       let value = currentTime.value(this.columnType_, timePicker.hasAMPM);
       let timeCell = new TimeCell(value, localizeNumber(value));
+      let duplicatedTimeCell = new TimeCell(value, localizeNumber(value));
       cells.push(timeCell);
+      duplicateCells.push(duplicatedTimeCell);
       currentTime.next(this.columnType_);
     }
     this.selectedTimeCell = cells[0];
-    this.append(...cells);
-  }
+    this.middleTimeCell_ = duplicateCells[0];
+    this.append(...cells, ...duplicateCells);
+  };
 
   createAndInitializeAMPMCells_ = (timePicker) => {
     let cells = [];
@@ -351,11 +379,67 @@
       this.append(cells[Label.PM], cells[Label.AM]);
       this.selectedTimeCell = cells[Label.PM];
     }
-  }
+  };
 
   onClick_ = (event) => {
     this.selectedTimeCell = event.target;
-  }
+  };
+
+  /**
+   * Continuous looping navigation for up/down arrows is supported by:
+   *   - moving for ArrowUp to previous cell and for topmost cell which
+   * has no previous, we are moving to the last cell from the first list
+   *   - moving for ArrowDown to next cell and for the last duplicated cell
+   * which has no next, we are moving to the first cell from the duplicated list
+   */
+  onKeyDown_ = (event) => {
+    let eventHandled = false;
+    switch (event.key) {
+      case 'ArrowUp':
+        const previousTimeCell = this.selectedTimeCell.previousSibling;
+        if (previousTimeCell) {
+          this.selectedTimeCell = previousTimeCell;
+          previousTimeCell.scrollIntoViewIfNeeded(false);
+        } else if (this.columnType != TimeColumnType.AMPM) {
+          // move from the topmost cell to the last cell (the last cell is
+          // the first one before the duplicated list).
+          this.selectedTimeCell = this.middleTimeCell.previousSibling;
+          this.selectedTimeCell.scrollIntoView();
+        }
+        eventHandled = true;
+        break;
+      case 'ArrowDown':
+        const nextTimeCell = this.selectedTimeCell.nextSibling;
+        if (nextTimeCell) {
+          this.selectedTimeCell = nextTimeCell;
+          nextTimeCell.scrollIntoViewIfNeeded(false);
+        } else if (this.columnType != TimeColumnType.AMPM) {
+          // move from the last duplicated cell to the first cell
+          // of the duplicated list.
+          this.selectedTimeCell = this.middleTimeCell;
+          this.selectedTimeCell.scrollIntoView(false);
+        }
+        eventHandled = true;
+        break;
+      case 'ArrowLeft':
+        const previousTimeColumn = this.previousSibling;
+        if (previousTimeColumn) {
+          previousTimeColumn.focus();
+        }
+        break;
+      case 'ArrowRight':
+        const nextTimeColumn = this.nextSibling;
+        if (nextTimeColumn) {
+          nextTimeColumn.focus();
+        }
+        break;
+    }
+
+    if (eventHandled) {
+      event.stopPropagation();
+      event.preventDefault();
+    }
+  };
 
   get selectedTimeCell() {
     return this.selectedTimeCell_;
@@ -368,6 +452,14 @@
     this.selectedTimeCell_ = timeCell;
     this.selectedTimeCell_.classList.add('selected');
   }
+
+  get middleTimeCell() {
+    return this.middleTimeCell_;
+  }
+
+  get columnType() {
+    return this.columnType_;
+  }
 }
 TimeColumn.ClassName = 'time-column';
 window.customElements.define('time-column', TimeColumn, {extends: 'ul'});
@@ -382,7 +474,7 @@
     this.className = TimeCell.ClassName;
     this.textContent = localizedValue;
     this.value = value;
-  }
+  };
 }
 TimeCell.ClassName = 'time-cell';
 window.customElements.define('time-cell', TimeCell, {extends: 'li'});
diff --git a/third_party/blink/renderer/core/html/media/html_media_element.cc b/third_party/blink/renderer/core/html/media/html_media_element.cc
index fa996bc..9daab70 100644
--- a/third_party/blink/renderer/core/html/media/html_media_element.cc
+++ b/third_party/blink/renderer/core/html/media/html_media_element.cc
@@ -4119,22 +4119,6 @@
   PauseInternal();
 }
 
-void HTMLMediaElement::DefaultEventHandler(Event& event) {
-  if (event.IsKeyboardEvent() && event.type() == event_type_names::kKeyup &&
-      ShouldShowControls()) {
-    // TODO(bokan): Cleanup magic numbers once https://crbug.com/949766 lands.
-    const int key =
-        static_cast<int>(ToKeyboardEvent(event).KeyEvent()->dom_key);
-    if (key == 0x00200310) {
-      // We need to handle the event here rather than in
-      // MediaControlsTouchlessImpl because it is not sent to JS.
-      GetMediaControls()->ShowContextMenu();
-      event.SetDefaultHandled();
-    }
-  }
-  HTMLElement::DefaultEventHandler(event);
-}
-
 void HTMLMediaElement::AudioSourceProviderImpl::Wrap(
     scoped_refptr<WebAudioSourceProviderImpl> provider) {
   MutexLocker locker(provide_input_lock);
diff --git a/third_party/blink/renderer/core/html/media/html_media_element.h b/third_party/blink/renderer/core/html/media/html_media_element.h
index 03bcf99..db64a429 100644
--- a/third_party/blink/renderer/core/html/media/html_media_element.h
+++ b/third_party/blink/renderer/core/html/media/html_media_element.h
@@ -556,8 +556,6 @@
 
   void OnRemovedFromDocumentTimerFired(TimerBase*);
 
-  void DefaultEventHandler(Event&) override;
-
   Features GetFeatures() override;
 
   TaskRunnerTimer<HTMLMediaElement> load_timer_;
@@ -736,7 +734,6 @@
   friend class Internals;
   friend class TrackDisplayUpdateScope;
   friend class MediaControlsImplTest;
-  friend class MediaControlsTouchlessImplTest;
   friend class HTMLMediaElementTest;
   friend class HTMLMediaElementEventListenersTest;
   friend class HTMLVideoElement;
diff --git a/third_party/blink/renderer/core/html/media/media_controls.h b/third_party/blink/renderer/core/html/media/media_controls.h
index 057adfa..57c9b422 100644
--- a/third_party/blink/renderer/core/html/media/media_controls.h
+++ b/third_party/blink/renderer/core/html/media/media_controls.h
@@ -77,10 +77,6 @@
   virtual HTMLDivElement* PanelElement() = 0;
   virtual void OnMediaControlsEnabledChange() = 0;
 
-  // This is required for showing a context menu upon pressing right soft key
-  // on a touchless device.
-  virtual void ShowContextMenu() = 0;
-
   void Trace(Visitor*) override;
 
  private:
diff --git a/third_party/blink/renderer/core/inspector/browser_protocol.pdl b/third_party/blink/renderer/core/inspector/browser_protocol.pdl
index 507c52b..b50b54e 100644
--- a/third_party/blink/renderer/core/inspector/browser_protocol.pdl
+++ b/third_party/blink/renderer/core/inspector/browser_protocol.pdl
@@ -6058,6 +6058,52 @@
       secure
       info
 
+  # Details about the security state of the page certificate.
+  experimental type CertificateSecurityState extends object
+    properties
+      # Protocol name (e.g. "TLS 1.2" or "QUIC").
+      string protocol
+      # Key Exchange used by the connection, or the empty string if not applicable.
+      string keyExchange
+      # (EC)DH group used by the connection, if applicable.
+      optional string keyExchangeGroup
+      # Cipher name.
+      string cipher
+      # TLS MAC. Note that AEAD ciphers do not have separate MACs.
+      optional string mac
+      # Page certificate.
+      array of string certificate
+      # Certificate subject name.
+      string subjectName
+      # Name of the issuing CA.
+      string issuer
+      # Certificate valid from date.
+      Network.TimeSinceEpoch validFrom
+      # Certificate valid to (expiration) date
+      Network.TimeSinceEpoch validTo
+      # True if the certificate uses a weak signature aglorithm.
+      boolean certifcateHasWeakSignature
+      # True if modern SSL
+      boolean modernSSL
+      # True if the connection is using an obsolete SSL protocol.
+      boolean obsoleteSslProtocol
+      # True if the connection is using an obsolete SSL key exchange.
+      boolean obsoleteSslKeyExchange
+      # True if the connection is using an obsolete SSL cipher.
+      boolean obsoleteSslCipher
+      # True if the connection is using an obsolete SSL signature.
+      boolean obsoleteSslSignature
+
+  # Security state information about the page.
+  experimental type VisibleSecurityState extends object
+    properties
+      # The security level of the page.
+      SecurityState securityState
+      # Security state details about the page certificate.
+      optional CertificateSecurityState certificateSecurityState
+      # Array of security state issues ids.
+      array of string securityStateIssueIds
+
   # An explanation of an factor contributing to the security state.
   type SecurityStateExplanation extends object
     properties
@@ -6142,6 +6188,12 @@
       string requestURL
 
   # The security state of the page changed.
+  experimental event visibleSecurityStateChanged
+    parameters
+      # Security state information about the page.
+      VisibleSecurityState visibleSecurityState
+
+  # The security state of the page changed.
   event securityStateChanged
     parameters
       # Security state.
diff --git a/third_party/blink/renderer/core/layout/BUILD.gn b/third_party/blink/renderer/core/layout/BUILD.gn
index ecc5ac8..0cd72b4 100644
--- a/third_party/blink/renderer/core/layout/BUILD.gn
+++ b/third_party/blink/renderer/core/layout/BUILD.gn
@@ -567,17 +567,10 @@
   }
 
   if (is_android) {
-    if (notouch_build) {
-      sources += [
-        "layout_theme_touchless.cc",
-        "layout_theme_touchless.h",
-      ]
-    } else {
-      sources += [
-        "layout_theme_android.cc",
-        "layout_theme_android.h",
-      ]
-    }
+    sources += [
+      "layout_theme_android.cc",
+      "layout_theme_android.h",
+    ]
   }
 
   if (is_fuchsia) {
diff --git a/third_party/blink/renderer/core/layout/flexible_box_algorithm.cc b/third_party/blink/renderer/core/layout/flexible_box_algorithm.cc
index 152fce3..2ec29ba 100644
--- a/third_party/blink/renderer/core/layout/flexible_box_algorithm.cc
+++ b/third_party/blink/renderer/core/layout/flexible_box_algorithm.cc
@@ -647,7 +647,6 @@
   }
 
   return !child.ShouldApplySizeContainment() &&
-         !child.DisplayLockInducesSizeContainment() &&
          MainAxisOverflowForChild(child) == EOverflow::kVisible;
 }
 
diff --git a/third_party/blink/renderer/core/layout/layout_block.cc b/third_party/blink/renderer/core/layout/layout_block.cc
index d1567c7..be2c95e 100644
--- a/third_party/blink/renderer/core/layout/layout_block.cc
+++ b/third_party/blink/renderer/core/layout/layout_block.cc
@@ -1453,11 +1453,6 @@
           ContentLogicalWidthForSizeContainment() + LayoutUnit(scrollbar_width);
       return;
     }
-  } else if (DisplayLockInducesSizeContainment()) {
-    min_logical_width = max_logical_width =
-        LayoutUnit(scrollbar_width) +
-        GetDisplayLockContext()->GetLockedContentLogicalWidth();
-    return;
   }
 
   if (ChildrenInline()) {
diff --git a/third_party/blink/renderer/core/layout/layout_box.cc b/third_party/blink/renderer/core/layout/layout_box.cc
index 32c44af0..dcf0685f 100644
--- a/third_party/blink/renderer/core/layout/layout_box.cc
+++ b/third_party/blink/renderer/core/layout/layout_box.cc
@@ -2932,10 +2932,6 @@
     computed_values.extent_ = ContentLogicalWidthForSizeContainment() +
                               BorderAndPaddingLogicalWidth() +
                               ScrollbarLogicalWidth();
-  } else if (DisplayLockInducesSizeContainment()) {
-    computed_values.extent_ =
-        BorderAndPaddingLogicalWidth() + ScrollbarLogicalWidth() +
-        GetDisplayLockContext()->GetLockedContentLogicalWidth();
   } else {
     computed_values.extent_ = LogicalWidth();
   }
@@ -3438,9 +3434,6 @@
   if (ShouldApplySizeContainment() && !IsLayoutGrid()) {
     height = ContentLogicalHeightForSizeContainment() +
              BorderAndPaddingLogicalHeight() + ScrollbarLogicalHeight();
-  } else if (DisplayLockInducesSizeContainment()) {
-    height = BorderAndPaddingLogicalHeight() + ScrollbarLogicalHeight() +
-             GetDisplayLockContext()->GetLockedContentLogicalHeight();
   } else {
     height = LogicalHeight();
   }
@@ -3578,17 +3571,10 @@
 LayoutUnit LayoutBox::ComputeLogicalHeightWithoutLayout() const {
   LogicalExtentComputedValues computed_values;
 
-  if (!SelfNeedsLayout()) {
-    if (ShouldApplySizeContainment()) {
-      ComputeLogicalHeight(ContentLogicalHeightForSizeContainment() +
-                               BorderAndPaddingLogicalHeight(),
-                           LayoutUnit(), computed_values);
-    } else if (DisplayLockInducesSizeContainment()) {
-      ComputeLogicalHeight(
-          BorderAndPaddingLogicalHeight() +
-              GetDisplayLockContext()->GetLockedContentLogicalHeight(),
-          LayoutUnit(), computed_values);
-    }
+  if (!SelfNeedsLayout() && ShouldApplySizeContainment()) {
+    ComputeLogicalHeight(ContentLogicalHeightForSizeContainment() +
+                             BorderAndPaddingLogicalHeight(),
+                         LayoutUnit(), computed_values);
   } else {
     // TODO(cbiesinger): We should probably return something other than just
     // border + padding, but for now we have no good way to do anything else
@@ -5760,8 +5746,7 @@
       (Parent() && IsWritingModeRoot()) ||
       (IsOutOfFlowPositioned() &&
        StyleRef().GetPosition() == EPosition::kFixed) ||
-      ShouldApplySizeContainment() || DisplayLockInducesSizeContainment() ||
-      IsFrameSet())
+      ShouldApplySizeContainment() || IsFrameSet())
     return kForbidBreaks;
 
   EBreakInside break_value = BreakInside();
diff --git a/third_party/blink/renderer/core/layout/layout_embedded_object.cc b/third_party/blink/renderer/core/layout/layout_embedded_object.cc
index b0a2c06..6c95dd6 100644
--- a/third_party/blink/renderer/core/layout/layout_embedded_object.cc
+++ b/third_party/blink/renderer/core/layout/layout_embedded_object.cc
@@ -115,7 +115,7 @@
 
 void LayoutEmbeddedObject::ComputeIntrinsicSizingInfo(
     IntrinsicSizingInfo& intrinsic_sizing_info) const {
-  DCHECK(!ShouldApplySizeContainment() && !DisplayLockInducesSizeContainment());
+  DCHECK(!ShouldApplySizeContainment());
   FrameView* frame_view = ChildFrameView();
   if (frame_view && frame_view->GetIntrinsicSizingInfo(intrinsic_sizing_info)) {
     // Handle zoom & vertical writing modes here, as the embedded document
diff --git a/third_party/blink/renderer/core/layout/layout_fieldset.cc b/third_party/blink/renderer/core/layout/layout_fieldset.cc
index 9f3d438..eaf12e75 100644
--- a/third_party/blink/renderer/core/layout/layout_fieldset.cc
+++ b/third_party/blink/renderer/core/layout/layout_fieldset.cc
@@ -35,7 +35,7 @@
 void LayoutFieldset::ComputePreferredLogicalWidths() {
   LayoutBlockFlow::ComputePreferredLogicalWidths();
   // Size-contained elements don't consider their contents for preferred sizing.
-  if (ShouldApplySizeContainment() || DisplayLockInducesSizeContainment())
+  if (ShouldApplySizeContainment())
     return;
 
   if (LayoutBox* legend = FindInFlowLegend()) {
diff --git a/third_party/blink/renderer/core/layout/layout_flexible_box.cc b/third_party/blink/renderer/core/layout/layout_flexible_box.cc
index aa5f1aa..a01e6800 100644
--- a/third_party/blink/renderer/core/layout/layout_flexible_box.cc
+++ b/third_party/blink/renderer/core/layout/layout_flexible_box.cc
@@ -75,12 +75,6 @@
         ContentLogicalWidthForSizeContainment() + scrollbar_width;
     return;
   }
-  if (DisplayLockInducesSizeContainment()) {
-    min_logical_width = max_logical_width =
-        scrollbar_width +
-        GetDisplayLockContext()->GetLockedContentLogicalWidth();
-    return;
-  }
 
   // FIXME: We're ignoring flex-basis here and we shouldn't. We can't start
   // honoring it though until the flex shorthand stops setting it to 0. See
@@ -513,9 +507,6 @@
     if (child.ShouldApplySizeContainment()) {
       child_intrinsic_content_logical_height =
           child.ContentLogicalHeightForSizeContainment();
-    } else if (child.DisplayLockInducesSizeContainment()) {
-      child_intrinsic_content_logical_height =
-          child.GetDisplayLockContext()->GetLockedContentLogicalHeight();
     } else {
       child_intrinsic_content_logical_height =
           child.IntrinsicContentLogicalHeight();
@@ -892,16 +883,12 @@
     // width includes the scrollbar, even for overflow: auto.
     main_axis_extent = child.MaxPreferredLogicalWidth();
   } else {
+    // The needed value here is the logical height. This value does not include
+    // the border/scrollbar/padding size, so we have to add the scrollbar.
     if (child.ShouldApplySizeContainment()) {
       return child.ContentLogicalHeightForSizeContainment() +
              LayoutUnit(child.ScrollbarLogicalHeight());
     }
-    // The needed value here is the logical height. This value does not include
-    // the border/scrollbar/padding size, so we have to add the scrollbar.
-    if (child.DisplayLockInducesSizeContainment()) {
-      return child.GetDisplayLockContext()->GetLockedContentLogicalHeight() +
-             child.ScrollbarLogicalHeight();
-    }
 
     if (child_layout_type == kNeverLayout)
       return LayoutUnit();
@@ -1353,8 +1340,7 @@
     const FlexLayoutAlgorithm& algorithm,
     const LayoutBox& child) const {
   bool result = false;
-  if (!MainAxisIsInlineAxis(child) && !child.ShouldApplySizeContainment() &&
-      !child.DisplayLockInducesSizeContainment()) {
+  if (!MainAxisIsInlineAxis(child) && !child.ShouldApplySizeContainment()) {
     Length child_flex_basis = FlexBasisForChild(child);
     const Length& child_min_size = IsHorizontalFlow()
                                        ? child.StyleRef().MinWidth()
diff --git a/third_party/blink/renderer/core/layout/layout_image.cc b/third_party/blink/renderer/core/layout/layout_image.cc
index b281b01..71066fd 100644
--- a/third_party/blink/renderer/core/layout/layout_image.cc
+++ b/third_party/blink/renderer/core/layout/layout_image.cc
@@ -347,7 +347,7 @@
 
 void LayoutImage::ComputeIntrinsicSizingInfo(
     IntrinsicSizingInfo& intrinsic_sizing_info) const {
-  DCHECK(!ShouldApplySizeContainment() && !DisplayLockInducesSizeContainment());
+  DCHECK(!ShouldApplySizeContainment());
   if (!OverrideIntrinsicSizingInfo(intrinsic_sizing_info)) {
     if (SVGImage* svg_image = EmbeddedSVGImage()) {
       svg_image->GetIntrinsicSizingInfo(intrinsic_sizing_info);
diff --git a/third_party/blink/renderer/core/layout/layout_multi_column_flow_thread.cc b/third_party/blink/renderer/core/layout/layout_multi_column_flow_thread.cc
index fa0e2eee..dd583731 100644
--- a/third_party/blink/renderer/core/layout/layout_multi_column_flow_thread.cc
+++ b/third_party/blink/renderer/core/layout/layout_multi_column_flow_thread.cc
@@ -1343,7 +1343,6 @@
   LayoutUnit gap_extra((column_count - 1) *
                        ColumnGap(*multicol_style, LayoutUnit()));
 
-  DCHECK(!MultiColumnBlockFlow()->DisplayLockInducesSizeContainment());
   if (MultiColumnBlockFlow()->ShouldApplySizeContainment()) {
     min_preferred_logical_width_ = max_preferred_logical_width_ =
         MultiColumnBlockFlow()->ContentLogicalWidthForSizeContainment();
diff --git a/third_party/blink/renderer/core/layout/layout_object.h b/third_party/blink/renderer/core/layout/layout_object.h
index 2b2499f0..dce3b50 100644
--- a/third_party/blink/renderer/core/layout/layout_object.h
+++ b/third_party/blink/renderer/core/layout/layout_object.h
@@ -2432,11 +2432,6 @@
     return context && !context->ShouldLayout(target);
   }
 
-  bool DisplayLockInducesSizeContainment() const {
-    auto* context = GetDisplayLockContext();
-    return context && context->IsLocked();
-  }
-
   bool PrePaintBlockedByDisplayLock(DisplayLockLifecycleTarget target) const {
     auto* context = GetDisplayLockContext();
     return context && !context->ShouldPrePaint(target);
diff --git a/third_party/blink/renderer/core/layout/layout_replaced.cc b/third_party/blink/renderer/core/layout/layout_replaced.cc
index 6f43874..b774588 100644
--- a/third_party/blink/renderer/core/layout/layout_replaced.cc
+++ b/third_party/blink/renderer/core/layout/layout_replaced.cc
@@ -167,13 +167,6 @@
         FloatSize(ContentLogicalSizeForSizeContainment());
     return;
   }
-  if (DisplayLockInducesSizeContainment()) {
-    auto* context = GetDisplayLockContext();
-    intrinsic_sizing_info.size =
-        FloatSize(context->GetLockedContentLogicalWidth(),
-                  context->GetLockedContentLogicalHeight());
-    return;
-  }
 
   ComputeIntrinsicSizingInfo(intrinsic_sizing_info);
 
@@ -668,7 +661,7 @@
 
 void LayoutReplaced::ComputeIntrinsicSizingInfo(
     IntrinsicSizingInfo& intrinsic_sizing_info) const {
-  DCHECK(!ShouldApplySizeContainment() && !DisplayLockInducesSizeContainment());
+  DCHECK(!ShouldApplySizeContainment());
   intrinsic_sizing_info.size = FloatSize(IntrinsicLogicalWidth().ToFloat(),
                                          IntrinsicLogicalHeight().ToFloat());
 
diff --git a/third_party/blink/renderer/core/layout/layout_theme_touchless.cc b/third_party/blink/renderer/core/layout/layout_theme_touchless.cc
deleted file mode 100644
index e973cda2..0000000
--- a/third_party/blink/renderer/core/layout/layout_theme_touchless.cc
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright 2019 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/layout_theme_touchless.h"
-
-#include "third_party/blink/public/resources/grit/blink_resources.h"
-#include "third_party/blink/renderer/platform/data_resource_helper.h"
-
-namespace blink {
-
-scoped_refptr<LayoutTheme> LayoutThemeTouchless::Create() {
-  return base::AdoptRef(new LayoutThemeTouchless());
-}
-
-LayoutTheme& LayoutTheme::NativeTheme() {
-  DEFINE_STATIC_REF(LayoutTheme, layout_theme,
-                    (LayoutThemeTouchless::Create()));
-  return *layout_theme;
-}
-
-LayoutThemeTouchless::~LayoutThemeTouchless() {}
-
-String LayoutThemeTouchless::ExtraDefaultStyleSheet() {
-  return LayoutThemeMobile::ExtraDefaultStyleSheet() +
-         UncompressResourceAsASCIIString(IDR_UASTYLE_THEME_TOUCHLESS_CSS);
-}
-
-bool LayoutThemeTouchless::IsFocusRingOutset() const {
-  return true;
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/core/layout/layout_theme_touchless.h b/third_party/blink/renderer/core/layout/layout_theme_touchless.h
deleted file mode 100644
index 8342879..0000000
--- a/third_party/blink/renderer/core/layout/layout_theme_touchless.h
+++ /dev/null
@@ -1,26 +0,0 @@
-// Copyright 2019 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_LAYOUT_THEME_TOUCHLESS_H_
-#define THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_LAYOUT_THEME_TOUCHLESS_H_
-
-#include "third_party/blink/renderer/core/layout/layout_theme_mobile.h"
-
-namespace blink {
-
-class LayoutThemeTouchless final : public LayoutThemeMobile {
- public:
-  static scoped_refptr<LayoutTheme> Create();
-  bool DelegatesMenuListRendering() const override { return true; }
-
-  String ExtraDefaultStyleSheet() override;
-  bool IsFocusRingOutset() const override;
-
- private:
-  ~LayoutThemeTouchless() override;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_LAYOUT_THEME_TOUCHLESS_H_
diff --git a/third_party/blink/renderer/core/layout/ng/ng_fieldset_layout_algorithm.cc b/third_party/blink/renderer/core/layout/ng/ng_fieldset_layout_algorithm.cc
index 4fb3a16..ffc97a0 100644
--- a/third_party/blink/renderer/core/layout/ng/ng_fieldset_layout_algorithm.cc
+++ b/third_party/blink/renderer/core/layout/ng/ng_fieldset_layout_algorithm.cc
@@ -130,8 +130,7 @@
   // Note that in size containment, we have to consider sizing as if we have no
   // contents, with the conjecture being that legend is part of the contents.
   // Thus, only do this adjustment if we do not contain size.
-  if (!Node().ShouldApplySizeContainment() &&
-      !Node().DisplayLockInducesSizeContainment()) {
+  if (!Node().ShouldApplySizeContainment()) {
     LayoutUnit minimum_border_box_block_size =
         borders_with_legend.BlockSum() + padding.BlockSum();
     border_box_size.block_size =
@@ -154,14 +153,10 @@
   MinMaxSize sizes;
 
   bool apply_size_containment = node_.ShouldApplySizeContainment();
+  // TODO(crbug.com/1011842): Need to consider content-size here.
   if (apply_size_containment) {
     if (input.size_type == NGMinMaxSizeType::kContentBoxSize)
       return sizes;
-  } else if (node_.DisplayLockInducesSizeContainment()) {
-    sizes = node_.GetDisplayLockContext().GetLockedContentLogicalWidth();
-    if (input.size_type == NGMinMaxSizeType::kContentBoxSize)
-      return sizes;
-    apply_size_containment = true;
   }
 
   // Size containment does not consider the legend for sizing.
diff --git a/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.cc b/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.cc
index 83e33bb..3bbf14e 100644
--- a/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.cc
+++ b/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.cc
@@ -81,14 +81,6 @@
     *aspect_ratio = LogicalSize(**computed_inline_size, **computed_block_size);
     return;
   }
-  if (DisplayLockInducesSizeContainment()) {
-    *computed_inline_size =
-        GetDisplayLockContext().GetLockedContentLogicalWidth();
-    *computed_block_size =
-        GetDisplayLockContext().GetLockedContentLogicalHeight();
-    *aspect_ratio = LogicalSize(**computed_inline_size, **computed_block_size);
-    return;
-  }
   IntrinsicSizingInfo legacy_sizing_info;
 
   ToLayoutReplaced(box_)->ComputeIntrinsicSizingInfo(legacy_sizing_info);
diff --git a/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.h b/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.h
index 689bf86d..3ccf93f 100644
--- a/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.h
+++ b/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.h
@@ -197,9 +197,6 @@
     DCHECK(box_->GetDisplayLockContext());
     return *box_->GetDisplayLockContext();
   }
-  bool DisplayLockInducesSizeContainment() const {
-    return box_->DisplayLockInducesSizeContainment();
-  }
   bool LayoutBlockedByDisplayLock(DisplayLockLifecycleTarget target) const {
     return box_->LayoutBlockedByDisplayLock(target);
   }
diff --git a/third_party/blink/renderer/core/layout/ng/ng_length_utils.cc b/third_party/blink/renderer/core/layout/ng/ng_length_utils.cc
index 0217a07..094b31b 100644
--- a/third_party/blink/renderer/core/layout/ng/ng_length_utils.cc
+++ b/third_party/blink/renderer/core/layout/ng/ng_length_utils.cc
@@ -1234,14 +1234,6 @@
     return node.ContentBlockSizeForSizeContainment() +
            border_scrollbar_padding.BlockSum();
   }
-
-  // If display locking induces size containment, then we replace its content
-  // size with the locked content size.
-  if (node.DisplayLockInducesSizeContainment()) {
-    return node.GetDisplayLockContext().GetLockedContentLogicalHeight() +
-           border_scrollbar_padding.BlockSum();
-  }
-
   return current_intrinsic_block_size;
 }
 
@@ -1259,14 +1251,6 @@
     return sizes;
   }
 
-  // Display locked elements override the content size, without considering
-  // children. Note that contain: size (above) takes precedence over display
-  // locking.
-  if (node.DisplayLockInducesSizeContainment()) {
-    sizes += node.GetDisplayLockContext().GetLockedContentLogicalWidth();
-    return sizes;
-  }
-
   // If we don't have children, we can also determine the size immediately.
   if (!node.FirstChild())
     return sizes;
diff --git a/third_party/blink/renderer/core/layout/svg/layout_svg_root.cc b/third_party/blink/renderer/core/layout/svg/layout_svg_root.cc
index 30e10ca..cdaf946 100644
--- a/third_party/blink/renderer/core/layout/svg/layout_svg_root.cc
+++ b/third_party/blink/renderer/core/layout/svg/layout_svg_root.cc
@@ -96,7 +96,7 @@
 
 void LayoutSVGRoot::ComputeIntrinsicSizingInfo(
     IntrinsicSizingInfo& intrinsic_sizing_info) const {
-  DCHECK(!ShouldApplySizeContainment() && !DisplayLockInducesSizeContainment());
+  DCHECK(!ShouldApplySizeContainment());
   UnscaledIntrinsicSizingInfo(intrinsic_sizing_info);
 
   intrinsic_sizing_info.size.Scale(StyleRef().EffectiveZoom());
diff --git a/third_party/blink/renderer/core/paint/paint_layer_painter.cc b/third_party/blink/renderer/core/paint/paint_layer_painter.cc
index 51d2b26..1397aae 100644
--- a/third_party/blink/renderer/core/paint/paint_layer_painter.cc
+++ b/third_party/blink/renderer/core/paint/paint_layer_painter.cc
@@ -781,7 +781,7 @@
           local_painting_info, paint_flags);
     }
 
-    if (RuntimeEnabledFeatures::ForcedColorsEnabled()) {
+    if (paint_layer_.GetLayoutObject().GetDocument().InForcedColorsMode()) {
       PaintForegroundForFragmentsWithPhase(
           PaintPhase::kForcedColorsModeBackplate, layer_fragments, context,
           local_painting_info, paint_flags);
diff --git a/third_party/blink/renderer/core/script/import_map.cc b/third_party/blink/renderer/core/script/import_map.cc
index 4eb8a76..8183804 100644
--- a/third_party/blink/renderer/core/script/import_map.cc
+++ b/third_party/blink/renderer/core/script/import_map.cc
@@ -148,7 +148,7 @@
   if (!parsed) {
     *error_to_rethrow =
         modulator.CreateSyntaxError("Failed to parse import map: invalid JSON");
-    return MakeGarbageCollected<ImportMap>(modulator, SpecifierMap());
+    return MakeGarbageCollected<ImportMap>();
   }
 
   // <spec step="2">If parsed is not a map, then throw a TypeError indicating
@@ -157,7 +157,7 @@
   if (!parsed_map) {
     *error_to_rethrow =
         modulator.CreateTypeError("Failed to parse import map: not an object");
-    return MakeGarbageCollected<ImportMap>(modulator, SpecifierMap());
+    return MakeGarbageCollected<ImportMap>();
   }
 
   // <spec step="3">Let sortedAndNormalizedImports be an empty map.</spec>
@@ -173,7 +173,7 @@
       *error_to_rethrow = modulator.CreateTypeError(
           "Failed to parse import map: \"imports\" "
           "top-level key must be a JSON object.");
-      return MakeGarbageCollected<ImportMap>(modulator, SpecifierMap());
+      return MakeGarbageCollected<ImportMap>();
     }
 
     // <spec step="4.2">Set sortedAndNormalizedImports to the result of sorting
@@ -183,15 +183,94 @@
         imports, base_url, support_builtin_modules, logger);
   }
 
-  // TODO(crbug.com/927181): Process "scopes" entry (Steps 5 and 6).
+  // <spec step="5">Let sortedAndNormalizedScopes be an empty map.</spec>
+  ScopeType sorted_and_normalized_scopes;
+
+  // <spec step="6">If parsed["scopes"] exists, then:</spec>
+  if (parsed_map->Get("scopes")) {
+    // <spec step="6.1">If parsed["scopes"] is not a map, then throw a TypeError
+    // indicating that the "scopes" top-level key must be a JSON object.</spec>
+    JSONObject* scopes = parsed_map->GetJSONObject("scopes");
+    if (!scopes) {
+      *error_to_rethrow = modulator.CreateTypeError(
+          "Failed to parse import map: \"scopes\" "
+          "top-level key must be a JSON object.");
+      return MakeGarbageCollected<ImportMap>();
+    }
+
+    // <spec step="6.2">Set sortedAndNormalizedScopes to the result of sorting
+    // and normalizing scopes given parsed["scopes"] and baseURL.</spec>
+
+    // <specdef
+    // href="https://wicg.github.io/import-maps/#sort-and-normalize-scopes">
+
+    // <spec step="1">Let normalized be an empty map.</spec>
+    ScopeType normalized;
+
+    // <spec step="2">For each scopePrefix -> potentialSpecifierMap of
+    // originalMap,</spec>
+    for (wtf_size_t i = 0; i < scopes->size(); ++i) {
+      const JSONObject::Entry& entry = scopes->at(i);
+
+      JSONObject* specifier_map = scopes->GetJSONObject(entry.first);
+      if (!specifier_map) {
+        // <spec step="2.1">If potentialSpecifierMap is not a map, then throw a
+        // TypeError indicating that the value of the scope with prefix
+        // scopePrefix must be a JSON object.</spec>
+        *error_to_rethrow = modulator.CreateTypeError(
+            "Failed to parse import map: the value of the scope with prefix "
+            "\"" +
+            entry.first + "\" must be a JSON object.");
+        return MakeGarbageCollected<ImportMap>();
+      }
+
+      // <spec step="2.2">Let scopePrefixURL be the result of parsing
+      // scopePrefix with baseURL as the base URL.</spec>
+      const KURL prefix_url(base_url, entry.first);
+
+      // <spec step="2.3">If scopePrefixURL is failure, then:</spec>
+      if (!prefix_url.IsValid()) {
+        // <spec step="2.3.1">Report a warning to the console that the scope
+        // prefix URL was not parseable.</spec>
+        logger.AddConsoleMessage(
+            mojom::ConsoleMessageSource::kOther,
+            mojom::ConsoleMessageLevel::kWarning,
+            "Ignored scope \"" + entry.first + "\": not parsable as a URL.");
+
+        // <spec step="2.3.2">Continue.</spec>
+        continue;
+      }
+
+      // <spec step="2.5">Let normalizedScopePrefix be the serialization of
+      // scopePrefixURL.</spec>
+      //
+      // <spec step="2.6">Set normalized[normalizedScopePrefix] to the result of
+      // sorting and normalizing a specifier map given potentialSpecifierMap and
+      // baseURL.</spec>
+      sorted_and_normalized_scopes.push_back(std::make_pair(
+          prefix_url.GetString(),
+          SortAndNormalizeSpecifierMap(specifier_map, base_url,
+                                       support_builtin_modules, logger)));
+    }
+    // <spec step="3">Return the result of sorting normalized, with an entry a
+    // being less than an entry b if b's key is code unit less than a's
+    // key.</spec>
+    std::sort(sorted_and_normalized_scopes.begin(),
+              sorted_and_normalized_scopes.end(),
+              [](const ScopeEntryType& a, const ScopeEntryType& b) {
+                return CodeUnitCompareLessThan(b.first, a.first);
+              });
+  }
 
   // TODO(hiroshige): Implement Step 7.
 
   // <spec step="8">Return the import map whose imports are
   // sortedAndNormalizedImports and whose scopes scopes are
   // sortedAndNormalizedScopes.</spec>
-  return MakeGarbageCollected<ImportMap>(modulator,
-                                         sorted_and_normalized_imports);
+  return MakeGarbageCollected<ImportMap>(
+      modulator, support_builtin_modules,
+      std::move(sorted_and_normalized_imports),
+      std::move(sorted_and_normalized_scopes));
 }
 
 // <specdef
@@ -321,7 +400,8 @@
 
 // <specdef href="https://wicg.github.io/import-maps/#resolve-an-imports-match">
 base::Optional<ImportMap::MatchResult> ImportMap::MatchPrefix(
-    const ParsedSpecifier& parsed_specifier) const {
+    const ParsedSpecifier& parsed_specifier,
+    const SpecifierMap& specifier_map) const {
   // Do not perform prefix match for non-bare specifiers.
   if (parsed_specifier.GetType() != ParsedSpecifier::Type::kBare)
     return base::nullopt;
@@ -341,7 +421,7 @@
   base::Optional<MatchResult> best_match;
 
   // <spec step="1">For each specifierKey → addresses of specifierMap,</spec>
-  for (auto it = imports_.begin(); it != imports_.end(); ++it) {
+  for (auto it = specifier_map.begin(); it != specifier_map.end(); ++it) {
     // <spec step="1.2">If specifierKey ends with U+002F (/) and
     // normalizedSpecifier starts with specifierKey, then:</spec>
     if (!it->key.EndsWith('/'))
@@ -361,26 +441,70 @@
   return best_match;
 }
 
+ImportMap::ImportMap()
+    : support_builtin_modules_(false),
+      modulator_for_built_in_modules_(nullptr) {}
+
 ImportMap::ImportMap(const Modulator& modulator_for_built_in_modules,
-                     const HashMap<String, Vector<KURL>>& imports)
-    : imports_(imports),
+                     bool support_builtin_modules,
+                     SpecifierMap&& imports,
+                     ScopeType&& scopes)
+    : imports_(std::move(imports)),
+      scopes_(std::move(scopes)),
+      support_builtin_modules_(support_builtin_modules),
       modulator_for_built_in_modules_(&modulator_for_built_in_modules) {}
 
+// <specdef
+// href="https://wicg.github.io/import-maps/#resolve-a-module-specifier">
+base::Optional<KURL> ImportMap::Resolve(const ParsedSpecifier& parsed_specifier,
+                                        const KURL& base_url,
+                                        String* debug_message) const {
+  DCHECK(debug_message);
+
+  // <spec step="8">For each scopePrefix -> scopeImports of importMap's
+  // scopes,</spec>
+  for (const auto& entry : scopes_) {
+    // <spec step="8.1">If scopePrefix is baseURLString, or if scopePrefix ends
+    // with U+002F (/) and baseURLString starts with scopePrefix, then:</spec>
+    if (entry.first == base_url.GetString() ||
+        (entry.first.EndsWith("/") &&
+         base_url.GetString().StartsWith(entry.first))) {
+      // <spec step="8.1.1">Let scopeImportsMatch be the result of resolving an
+      // imports match given normalizedSpecifier and scopeImports.</spec>
+      base::Optional<KURL> scope_match =
+          ResolveImportsMatch(parsed_specifier, entry.second, debug_message);
+
+      // <spec step="8.1.2">If scopeImportsMatch is not null, then return
+      // scopeImportsMatch.</spec>
+      if (scope_match)
+        return scope_match;
+    }
+  }
+
+  // <spec step="9">Let topLevelImportsMatch be the result of resolving an
+  // imports match given normalizedSpecifier and importMap’s imports.</spec>
+  //
+  // <spec step="10">If topLevelImportsMatch is not null, then return
+  // topLevelImportsMatch.</spec>
+  return ResolveImportsMatch(parsed_specifier, imports_, debug_message);
+}
+
 // <specdef href="https://wicg.github.io/import-maps/#resolve-an-imports-match">
 base::Optional<KURL> ImportMap::ResolveImportsMatch(
     const ParsedSpecifier& parsed_specifier,
+    const SpecifierMap& specifier_map,
     String* debug_message) const {
   DCHECK(debug_message);
   const String key = parsed_specifier.GetImportMapKeyString();
 
   // <spec step="1.1">If specifierKey is normalizedSpecifier, then:</spec>
-  MatchResult exact = imports_.find(key);
-  if (exact != imports_.end()) {
+  MatchResult exact = specifier_map.find(key);
+  if (exact != specifier_map.end()) {
     return ResolveImportsMatchInternal(key, exact, debug_message);
   }
 
   // Step 1.2.
-  if (auto prefix_match = MatchPrefix(parsed_specifier)) {
+  if (auto prefix_match = MatchPrefix(parsed_specifier, specifier_map)) {
     return ResolveImportsMatchInternal(key, *prefix_match, debug_message);
   }
 
@@ -427,7 +551,8 @@
     // return url1.</spec>
     //
     // Note: Here we filter out non-existing built-in modules in all cases.
-    if (layered_api::ResolveFetchingURL(*modulator_for_built_in_modules_, url)
+    if (!support_builtin_modules_ ||
+        layered_api::ResolveFetchingURL(*modulator_for_built_in_modules_, url)
             .IsValid()) {
       *debug_message = "Import Map: \"" + key + "\" matches with \"" +
                        matched->key + "\" and is mapped to " +
@@ -451,17 +576,16 @@
     if (!is_first_key)
       builder.Append(",");
     is_first_key = false;
-    builder.Append("\n  \"");
-    builder.Append(it.key);
-    builder.Append("\": [");
+    builder.Append("\n  ");
+    builder.Append(it.key.EncodeForDebugging());
+    builder.Append(": [");
     bool is_first_value = true;
     for (const auto& v : it.value) {
       if (!is_first_value)
         builder.Append(",");
       is_first_value = false;
-      builder.Append("\n    \"");
-      builder.Append(v.GetString());
-      builder.Append("\"");
+      builder.Append("\n    ");
+      builder.Append(v.GetString().EncodeForDebugging());
     }
     builder.Append("\n  ]");
   }
diff --git a/third_party/blink/renderer/core/script/import_map.h b/third_party/blink/renderer/core/script/import_map.h
index 5982fb2..cc38cf9 100644
--- a/third_party/blink/renderer/core/script/import_map.h
+++ b/third_party/blink/renderer/core/script/import_map.h
@@ -32,20 +32,6 @@
                           ConsoleLogger& logger,
                           ScriptValue* error_to_rethrow);
 
-  ImportMap(const Modulator&, const HashMap<String, Vector<KURL>>& imports);
-
-  // https://wicg.github.io/import-maps/#resolve-an-imports-match
-  // Returns nullopt when not mapped by |this| import map (i.e. the import map
-  // doesn't have corresponding keys).
-  // Returns a null URL when resolution fails.
-  base::Optional<KURL> ResolveImportsMatch(const ParsedSpecifier&,
-                                           String* debug_message) const;
-
-  String ToString() const;
-
-  void Trace(Visitor*);
-
- private:
   // <spec href="https://wicg.github.io/import-maps/#specifier-map">A specifier
   // map is an ordered map from strings to lists of URLs.</spec>
   //
@@ -53,9 +39,39 @@
   // are implemented differently from the spec.
   using SpecifierMap = HashMap<String, Vector<KURL>>;
 
+  // <spec href="https://wicg.github.io/import-maps/#import-map-scopes">an
+  // ordered map of URLs to specifier maps.</spec>
+  using ScopeEntryType = std::pair<String, SpecifierMap>;
+  using ScopeType = Vector<ScopeEntryType>;
+
+  // Empty import map.
+  ImportMap();
+
+  ImportMap(const Modulator&,
+            bool support_builtin_modules,
+            SpecifierMap&& imports,
+            ScopeType&& scopes);
+
+  base::Optional<KURL> Resolve(const ParsedSpecifier&,
+                               const KURL& base_url,
+                               String* debug_message) const;
+
+  String ToString() const;
+
+  void Trace(Visitor*);
+
+ private:
   using MatchResult = SpecifierMap::const_iterator;
 
-  base::Optional<MatchResult> MatchPrefix(const ParsedSpecifier&) const;
+  // https://wicg.github.io/import-maps/#resolve-an-imports-match
+  // Returns nullopt when not mapped by |this| import map (i.e. the import map
+  // doesn't have corresponding keys).
+  // Returns a null URL when resolution fails.
+  base::Optional<KURL> ResolveImportsMatch(const ParsedSpecifier&,
+                                           const SpecifierMap&,
+                                           String* debug_message) const;
+  base::Optional<MatchResult> MatchPrefix(const ParsedSpecifier&,
+                                          const SpecifierMap&) const;
   static SpecifierMap SortAndNormalizeSpecifierMap(const JSONObject* imports,
                                                    const KURL& base_url,
                                                    bool support_builtin_modules,
@@ -69,8 +85,10 @@
   // https://wicg.github.io/import-maps/#import-map-imports
   SpecifierMap imports_;
 
-  // TODO(crbug.com/927181): Implement
   // https://wicg.github.io/import-maps/#import-map-scopes.
+  ScopeType scopes_;
+
+  const bool support_builtin_modules_;
 
   Member<const Modulator> modulator_for_built_in_modules_;
 };
diff --git a/third_party/blink/renderer/core/script/modulator_impl_base.cc b/third_party/blink/renderer/core/script/modulator_impl_base.cc
index 7a81f00..b32a3ee 100644
--- a/third_party/blink/renderer/core/script/modulator_impl_base.cc
+++ b/third_party/blink/renderer/core/script/modulator_impl_base.cc
@@ -192,8 +192,8 @@
   base::Optional<KURL> mapped_url;
   if (import_map_) {
     String import_map_debug_message;
-    mapped_url = import_map_->ResolveImportsMatch(parsed_specifier,
-                                                  &import_map_debug_message);
+    mapped_url = import_map_->Resolve(parsed_specifier, base_url,
+                                      &import_map_debug_message);
 
     // Output the resolution log. This is too verbose to be always shown, but
     // will be helpful for Web developers (and also Chromium developers) for
diff --git a/third_party/blink/renderer/devtools/BUILD.gn b/third_party/blink/renderer/devtools/BUILD.gn
index a477297..8107166 100644
--- a/third_party/blink/renderer/devtools/BUILD.gn
+++ b/third_party/blink/renderer/devtools/BUILD.gn
@@ -571,56 +571,7 @@
   "front_end/screencast/ScreencastApp.js",
   "front_end/screencast/screencastView.css",
   "front_end/screencast/ScreencastView.js",
-  "front_end/sdk/ChildTargetManager.js",
-  "front_end/sdk/Connections.js",
-  "front_end/sdk/ConsoleModel.js",
-  "front_end/sdk/ContentProviders.js",
-  "front_end/sdk/CookieModel.js",
-  "front_end/sdk/CookieParser.js",
-  "front_end/sdk/CPUProfileDataModel.js",
-  "front_end/sdk/CPUProfilerModel.js",
-  "front_end/sdk/CSSMatchedStyles.js",
-  "front_end/sdk/CSSMedia.js",
-  "front_end/sdk/CSSMetadata.js",
-  "front_end/sdk/CSSModel.js",
-  "front_end/sdk/CSSProperty.js",
-  "front_end/sdk/CSSRule.js",
-  "front_end/sdk/CSSStyleDeclaration.js",
-  "front_end/sdk/CSSStyleSheetHeader.js",
-  "front_end/sdk/DOMDebuggerModel.js",
-  "front_end/sdk/DebuggerModel.js",
-  "front_end/sdk/DOMModel.js",
-  "front_end/sdk/EmulationModel.js",
-  "front_end/sdk/FilmStripModel.js",
-  "front_end/sdk/HARLog.js",
-  "front_end/sdk/HeapProfilerModel.js",
-  "front_end/sdk/IsolateManager.js",
-  "front_end/sdk/LayerTreeBase.js",
-  "front_end/sdk/LogModel.js",
   "front_end/sdk/module.json",
-  "front_end/sdk/NetworkLog.js",
-  "front_end/sdk/NetworkManager.js",
-  "front_end/sdk/NetworkRequest.js",
-  "front_end/sdk/OverlayModel.js",
-  "front_end/sdk/PaintProfiler.js",
-  "front_end/sdk/PerformanceMetricsModel.js",
-  "front_end/sdk/ProfileTreeModel.js",
-  "front_end/sdk/RemoteObject.js",
-  "front_end/sdk/Resource.js",
-  "front_end/sdk/ResourceTreeModel.js",
-  "front_end/sdk/RuntimeModel.js",
-  "front_end/sdk/ScreenCaptureModel.js",
-  "front_end/sdk/Script.js",
-  "front_end/sdk/SecurityOriginManager.js",
-  "front_end/sdk/ServerTiming.js",
-  "front_end/sdk/ServiceWorkerCacheModel.js",
-  "front_end/sdk/ServiceWorkerManager.js",
-  "front_end/sdk/SourceMap.js",
-  "front_end/sdk/SourceMapManager.js",
-  "front_end/sdk/Target.js",
-  "front_end/sdk/TargetManager.js",
-  "front_end/sdk/TracingManager.js",
-  "front_end/sdk/TracingModel.js",
   "front_end/sdk_test_runner/module.json",
   "front_end/sdk_test_runner/PageMockTestRunner.js",
   "front_end/search/module.json",
@@ -897,6 +848,57 @@
 all_devtools_files += lighthouse_locale_files
 
 all_devtools_modules = [
+  "front_end/sdk/sdk.js",
+  "front_end/sdk/TracingModel.js",
+  "front_end/sdk/TracingManager.js",
+  "front_end/sdk/TargetManager.js",
+  "front_end/sdk/Target.js",
+  "front_end/sdk/SourceMapManager.js",
+  "front_end/sdk/SourceMap.js",
+  "front_end/sdk/ServiceWorkerManager.js",
+  "front_end/sdk/ServiceWorkerCacheModel.js",
+  "front_end/sdk/ServerTiming.js",
+  "front_end/sdk/SecurityOriginManager.js",
+  "front_end/sdk/SDKModel.js",
+  "front_end/sdk/Script.js",
+  "front_end/sdk/ScreenCaptureModel.js",
+  "front_end/sdk/RuntimeModel.js",
+  "front_end/sdk/ResourceTreeModel.js",
+  "front_end/sdk/Resource.js",
+  "front_end/sdk/RemoteObject.js",
+  "front_end/sdk/ProfileTreeModel.js",
+  "front_end/sdk/PerformanceMetricsModel.js",
+  "front_end/sdk/PaintProfiler.js",
+  "front_end/sdk/OverlayModel.js",
+  "front_end/sdk/NetworkRequest.js",
+  "front_end/sdk/NetworkManager.js",
+  "front_end/sdk/NetworkLog.js",
+  "front_end/sdk/LogModel.js",
+  "front_end/sdk/LayerTreeBase.js",
+  "front_end/sdk/IsolateManager.js",
+  "front_end/sdk/HeapProfilerModel.js",
+  "front_end/sdk/HARLog.js",
+  "front_end/sdk/FilmStripModel.js",
+  "front_end/sdk/EmulationModel.js",
+  "front_end/sdk/DOMModel.js",
+  "front_end/sdk/DOMDebuggerModel.js",
+  "front_end/sdk/DebuggerModel.js",
+  "front_end/sdk/CSSStyleSheetHeader.js",
+  "front_end/sdk/CSSStyleDeclaration.js",
+  "front_end/sdk/CSSRule.js",
+  "front_end/sdk/CSSProperty.js",
+  "front_end/sdk/CSSModel.js",
+  "front_end/sdk/CSSMetadata.js",
+  "front_end/sdk/CSSMedia.js",
+  "front_end/sdk/CSSMatchedStyles.js",
+  "front_end/sdk/CPUProfilerModel.js",
+  "front_end/sdk/CPUProfileDataModel.js",
+  "front_end/sdk/CookieParser.js",
+  "front_end/sdk/CookieModel.js",
+  "front_end/sdk/CompilerSourceMappingContentProvider.js",
+  "front_end/sdk/ConsoleModel.js",
+  "front_end/sdk/Connections.js",
+  "front_end/sdk/ChildTargetManager.js",
   "front_end/protocol/protocol.js",
   "front_end/protocol/NodeURL.js",
   "front_end/protocol/InspectorBackend.js",
@@ -1191,6 +1193,57 @@
 ]
 
 copied_devtools_modules = [
+  "$resources_out_dir/sdk/sdk.js",
+  "$resources_out_dir/sdk/TracingModel.js",
+  "$resources_out_dir/sdk/TracingManager.js",
+  "$resources_out_dir/sdk/TargetManager.js",
+  "$resources_out_dir/sdk/Target.js",
+  "$resources_out_dir/sdk/SourceMapManager.js",
+  "$resources_out_dir/sdk/SourceMap.js",
+  "$resources_out_dir/sdk/ServiceWorkerManager.js",
+  "$resources_out_dir/sdk/ServiceWorkerCacheModel.js",
+  "$resources_out_dir/sdk/ServerTiming.js",
+  "$resources_out_dir/sdk/SecurityOriginManager.js",
+  "$resources_out_dir/sdk/SDKModel.js",
+  "$resources_out_dir/sdk/Script.js",
+  "$resources_out_dir/sdk/ScreenCaptureModel.js",
+  "$resources_out_dir/sdk/RuntimeModel.js",
+  "$resources_out_dir/sdk/ResourceTreeModel.js",
+  "$resources_out_dir/sdk/Resource.js",
+  "$resources_out_dir/sdk/RemoteObject.js",
+  "$resources_out_dir/sdk/ProfileTreeModel.js",
+  "$resources_out_dir/sdk/PerformanceMetricsModel.js",
+  "$resources_out_dir/sdk/PaintProfiler.js",
+  "$resources_out_dir/sdk/OverlayModel.js",
+  "$resources_out_dir/sdk/NetworkRequest.js",
+  "$resources_out_dir/sdk/NetworkManager.js",
+  "$resources_out_dir/sdk/NetworkLog.js",
+  "$resources_out_dir/sdk/LogModel.js",
+  "$resources_out_dir/sdk/LayerTreeBase.js",
+  "$resources_out_dir/sdk/IsolateManager.js",
+  "$resources_out_dir/sdk/HeapProfilerModel.js",
+  "$resources_out_dir/sdk/HARLog.js",
+  "$resources_out_dir/sdk/FilmStripModel.js",
+  "$resources_out_dir/sdk/EmulationModel.js",
+  "$resources_out_dir/sdk/DOMModel.js",
+  "$resources_out_dir/sdk/DOMDebuggerModel.js",
+  "$resources_out_dir/sdk/DebuggerModel.js",
+  "$resources_out_dir/sdk/CSSStyleSheetHeader.js",
+  "$resources_out_dir/sdk/CSSStyleDeclaration.js",
+  "$resources_out_dir/sdk/CSSRule.js",
+  "$resources_out_dir/sdk/CSSProperty.js",
+  "$resources_out_dir/sdk/CSSModel.js",
+  "$resources_out_dir/sdk/CSSMetadata.js",
+  "$resources_out_dir/sdk/CSSMedia.js",
+  "$resources_out_dir/sdk/CSSMatchedStyles.js",
+  "$resources_out_dir/sdk/CPUProfilerModel.js",
+  "$resources_out_dir/sdk/CPUProfileDataModel.js",
+  "$resources_out_dir/sdk/CookieParser.js",
+  "$resources_out_dir/sdk/CookieModel.js",
+  "$resources_out_dir/sdk/CompilerSourceMappingContentProvider.js",
+  "$resources_out_dir/sdk/ConsoleModel.js",
+  "$resources_out_dir/sdk/Connections.js",
+  "$resources_out_dir/sdk/ChildTargetManager.js",
   "$resources_out_dir/protocol/protocol.js",
   "$resources_out_dir/protocol/NodeURL.js",
   "$resources_out_dir/protocol/InspectorBackend.js",
@@ -1497,6 +1550,7 @@
       generated_non_autostart_non_remote_modules + devtools_embedder_scripts +
       [
         "$resources_out_dir/devtools_extension_api.js",
+        "$resources_out_dir/SupportedCSSProperties.js",
         "$resources_out_dir/InspectorBackendCommands.js",
       ]
 
diff --git a/third_party/blink/renderer/devtools/front_end/bindings/BlackboxManager.js b/third_party/blink/renderer/devtools/front_end/bindings/BlackboxManager.js
index 9dfcd49..fd784f68c 100644
--- a/third_party/blink/renderer/devtools/front_end/bindings/BlackboxManager.js
+++ b/third_party/blink/renderer/devtools/front_end/bindings/BlackboxManager.js
@@ -150,7 +150,7 @@
       return;
     }
 
-    const mappings = sourceMap.mappings();
+    const mappings = /** @type {!SDK.TextSourceMap} */ (sourceMap).mappings();
     const newRanges = [];
     let currentBlackboxed = false;
     if (mappings[0].lineNumber !== 0 || mappings[0].columnNumber !== 0) {
diff --git a/third_party/blink/renderer/devtools/front_end/color_picker/Spectrum.js b/third_party/blink/renderer/devtools/front_end/color_picker/Spectrum.js
index 1034a32..7bdd505 100644
--- a/third_party/blink/renderer/devtools/front_end/color_picker/Spectrum.js
+++ b/third_party/blink/renderer/devtools/front_end/color_picker/Spectrum.js
@@ -1125,8 +1125,10 @@
     this._swatchInnerElement = swatchElement.createChild('span', 'swatch-inner');
 
     this._swatchOverlayElement = swatchElement.createChild('span', 'swatch-overlay');
-    this._swatchOverlayElement.addEventListener('click', this._onCopyIconClick.bind(this));
+    this._swatchOverlayElement.tabIndex = 0;
+    self.onInvokeElement(this._swatchOverlayElement, this._onCopyText.bind(this));
     this._swatchOverlayElement.addEventListener('mouseout', this._onCopyIconMouseout.bind(this));
+    this._swatchOverlayElement.addEventListener('blur', this._onCopyIconMouseout.bind(this));
     this._swatchCopyIcon = UI.Icon.create('largeicon-copy', 'copy-color-icon');
     this._swatchCopyIcon.title = Common.UIString('Copy color to clipboard');
     this._swatchOverlayElement.appendChild(this._swatchCopyIcon);
@@ -1149,9 +1151,13 @@
     }
   }
 
-  _onCopyIconClick() {
+  /**
+   * @param {!Event} event
+   */
+  _onCopyText(event) {
     this._swatchCopyIcon.setIconType('largeicon-checkmark');
     Host.InspectorFrontendHost.copyText(this._colorString);
+    event.consume();
   }
 
   _onCopyIconMouseout() {
diff --git a/third_party/blink/renderer/devtools/front_end/color_picker/spectrum.css b/third_party/blink/renderer/devtools/front_end/color_picker/spectrum.css
index 90f0c16..3373b42 100644
--- a/third_party/blink/renderer/devtools/front_end/color_picker/spectrum.css
+++ b/third_party/blink/renderer/devtools/front_end/color_picker/spectrum.css
@@ -259,7 +259,8 @@
     padding: 4px;
 }
 
-.swatch-overlay:hover {
+.swatch-overlay:hover,
+.swatch-overlay[data-keyboard-focus="true"]:focus {
     background-color: rgba(0, 0, 0, .3);
     opacity: 1;
 }
diff --git a/third_party/blink/renderer/devtools/front_end/console/consolePinPane.css b/third_party/blink/renderer/devtools/front_end/console/consolePinPane.css
index 32367f4..33b99f8 100644
--- a/third_party/blink/renderer/devtools/front_end/console/consolePinPane.css
+++ b/third_party/blink/renderer/devtools/front_end/console/consolePinPane.css
@@ -5,6 +5,7 @@
  */
 
 .console-pins {
+  max-height: 200px;
   overflow-y: auto;
   background: var(--toolbar-bg-color);
   --error-background-color: hsl(0, 100%, 97%);
diff --git a/third_party/blink/renderer/devtools/front_end/console/consoleView.css b/third_party/blink/renderer/devtools/front_end/console/consoleView.css
index 4fa8cf38..a44d489 100644
--- a/third_party/blink/renderer/devtools/front_end/console/consoleView.css
+++ b/third_party/blink/renderer/devtools/front_end/console/consoleView.css
@@ -490,5 +490,5 @@
 
 .console-view-pinpane {
     flex: none;
-    max-height: 200px;
+    max-height: 50%;
 }
diff --git a/third_party/blink/renderer/devtools/front_end/layers/LayerTreeModel.js b/third_party/blink/renderer/devtools/front_end/layers/LayerTreeModel.js
index 2efd118..e222218 100644
--- a/third_party/blink/renderer/devtools/front_end/layers/LayerTreeModel.js
+++ b/third_party/blink/renderer/devtools/front_end/layers/LayerTreeModel.js
@@ -100,7 +100,7 @@
       const lastPaintRect = this._lastPaintRectByLayerId[layerId];
       const layer = layerTree.layerById(layerId);
       if (layer) {
-        layer._lastPaintRect = lastPaintRect;
+        /** @type {!Layers.AgentLayer} */ (layer)._lastPaintRect = lastPaintRect;
       }
     }
     this._lastPaintRectByLayerId = {};
@@ -117,7 +117,7 @@
       return;
     }
     const layerTree = /** @type {!Layers.AgentLayerTree} */ (this._layerTree);
-    const layer = layerTree.layerById(layerId);
+    const layer = /** @type {!Layers.AgentLayer} */ (layerTree.layerById(layerId));
     if (!layer) {
       this._lastPaintRectByLayerId[layerId] = clipRect;
       return;
@@ -281,9 +281,10 @@
 
   /**
    * @override
-   * @param {!SDK.Layer} child
+   * @param {!SDK.Layer} childParam
    */
-  addChild(child) {
+  addChild(childParam) {
+    const child = /** @type {!Layers.AgentLayer} */ (childParam);
     if (child._parent) {
       console.assert(false, 'Child already has a parent');
     }
diff --git a/third_party/blink/renderer/devtools/front_end/mobile_throttling/ThrottlingSettingsTab.js b/third_party/blink/renderer/devtools/front_end/mobile_throttling/ThrottlingSettingsTab.js
index ef1cc0f..44beae50 100644
--- a/third_party/blink/renderer/devtools/front_end/mobile_throttling/ThrottlingSettingsTab.js
+++ b/third_party/blink/renderer/devtools/front_end/mobile_throttling/ThrottlingSettingsTab.js
@@ -11,7 +11,9 @@
     super(true);
     this.registerRequiredCSS('mobile_throttling/throttlingSettingsTab.css');
 
-    this.contentElement.createChild('div', 'header').textContent = Common.UIString('Network Throttling Profiles');
+    const header = this.contentElement.createChild('div', 'header');
+    header.textContent = ls`Network Throttling Profiles`;
+    UI.ARIAUtils.markAsHeading(header, 1);
 
     const addButton = UI.createTextButton(
         Common.UIString('Add custom profile...'), this._addButtonClicked.bind(this), 'add-conditions-button');
@@ -26,7 +28,6 @@
     this._customSetting.addChangeListener(this._conditionsUpdated, this);
 
     this.setDefaultFocusedElement(addButton);
-    this.contentElement.tabIndex = 0;
   }
 
   /**
diff --git a/third_party/blink/renderer/devtools/front_end/root.js b/third_party/blink/renderer/devtools/front_end/root.js
index 31d9fe6e..25d20558 100644
--- a/third_party/blink/renderer/devtools/front_end/root.js
+++ b/third_party/blink/renderer/devtools/front_end/root.js
@@ -8,4 +8,5 @@
 import './common/common.js';
 import './host/host.js';
 import './protocol/protocol.js';
+import './sdk/sdk.js';
 import './ui/ui.js';
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CPUProfileDataModel.js b/third_party/blink/renderer/devtools/front_end/sdk/CPUProfileDataModel.js
index bf1e624..e509098 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CPUProfileDataModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CPUProfileDataModel.js
@@ -4,7 +4,7 @@
 /**
  * @unrestricted
  */
-SDK.CPUProfileNode = class extends SDK.ProfileNode {
+export class CPUProfileNode extends SDK.ProfileNode {
   /**
    * @param {!Protocol.Profiler.ProfileNode} node
    * @param {number} sampleTime
@@ -25,12 +25,12 @@
     // Compatibility: legacy backends could provide "no reason" for optimized functions.
     this.deoptReason = node.deoptReason && node.deoptReason !== 'no reason' ? node.deoptReason : null;
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.CPUProfileDataModel = class extends SDK.ProfileTreeModel {
+export default class CPUProfileDataModel extends SDK.ProfileTreeModel {
   /**
    * @param {!Protocol.Profiler.Profile} profile
    * @param {?SDK.Target} target
@@ -106,7 +106,7 @@
 
   /**
    * @param {!Array<!Protocol.Profiler.ProfileNode>} nodes
-   * @return {!SDK.CPUProfileNode}
+   * @return {!CPUProfileNode}
    */
   _translateProfileTree(nodes) {
     /**
@@ -171,7 +171,7 @@
     const root = nodes[0];
     /** @type {!Map<number, number>} */
     const idMap = new Map([[root.id, root.id]]);
-    const resultRoot = new SDK.CPUProfileNode(root, sampleTime);
+    const resultRoot = new CPUProfileNode(root, sampleTime);
     const parentNodeStack = root.children.map(() => resultRoot);
     const sourceNodeStack = root.children.map(id => nodeByIdMap.get(id));
     while (sourceNodeStack.length) {
@@ -180,7 +180,7 @@
       if (!sourceNode.children) {
         sourceNode.children = [];
       }
-      const targetNode = new SDK.CPUProfileNode(sourceNode, sampleTime);
+      const targetNode = new CPUProfileNode(sourceNode, sampleTime);
       if (keepNatives || !isNativeNode(sourceNode)) {
         parentNode.children.push(targetNode);
         parentNode = targetNode;
@@ -256,7 +256,7 @@
   }
 
   _buildIdToNodeMap() {
-    /** @type {!Map<number, !SDK.CPUProfileNode>} */
+    /** @type {!Map<number, !CPUProfileNode>} */
     this._idToNode = new Map();
     const idToNode = this._idToNode;
     const stack = [this.profileHead];
@@ -333,8 +333,8 @@
   }
 
   /**
-   * @param {function(number, !SDK.CPUProfileNode, number)} openFrameCallback
-   * @param {function(number, !SDK.CPUProfileNode, number, number, number)} closeFrameCallback
+   * @param {function(number, !CPUProfileNode, number)} openFrameCallback
+   * @param {function(number, !CPUProfileNode, number, number, number)} closeFrameCallback
    * @param {number=} startTime
    * @param {number=} stopTime
    */
@@ -415,7 +415,7 @@
         const duration = sampleTime - start;
         stackChildrenDuration[stackTop - 1] += duration;
         closeFrameCallback(
-            prevNode.depth, /** @type {!SDK.CPUProfileNode} */ (prevNode), start, duration,
+            prevNode.depth, /** @type {!CPUProfileNode} */ (prevNode), start, duration,
             duration - stackChildrenDuration[stackTop]);
         --stackTop;
         if (node.depth === prevNode.depth) {
@@ -451,7 +451,7 @@
       const duration = sampleTime - start;
       stackChildrenDuration[stackTop - 1] += duration;
       closeFrameCallback(
-          node.depth, /** @type {!SDK.CPUProfileNode} */ (node), start, duration,
+          node.depth, /** @type {!CPUProfileNode} */ (node), start, duration,
           duration - stackChildrenDuration[stackTop]);
       --stackTop;
     }
@@ -459,9 +459,21 @@
 
   /**
    * @param {number} index
-   * @return {?SDK.CPUProfileNode}
+   * @return {?CPUProfileNode}
    */
   nodeByIndex(index) {
     return this._idToNode.get(this.samples[index]) || null;
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CPUProfileDataModel = CPUProfileDataModel;
+
+/** @constructor */
+SDK.CPUProfileNode = CPUProfileNode;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CPUProfilerModel.js b/third_party/blink/renderer/devtools/front_end/sdk/CPUProfilerModel.js
index 5377bbb..1b23cc9 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CPUProfilerModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CPUProfilerModel.js
@@ -29,7 +29,7 @@
 /**
  * @implements {Protocol.ProfilerDispatcher}
  */
-SDK.CPUProfilerModel = class extends SDK.SDKModel {
+export default class CPUProfilerModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -69,7 +69,7 @@
       title = Common.UIString('Profile %d', this._nextAnonymousConsoleProfileNumber++);
       this._anonymousConsoleProfileIdToTitle.set(id, title);
     }
-    this._dispatchProfileEvent(SDK.CPUProfilerModel.Events.ConsoleProfileStarted, id, scriptLocation, title);
+    this._dispatchProfileEvent(Events.ConsoleProfileStarted, id, scriptLocation, title);
   }
 
   /**
@@ -86,8 +86,7 @@
     }
     // Make sure ProfilesPanel is initialized and CPUProfileType is created.
     self.runtime.loadModulePromise('profiler').then(() => {
-      this._dispatchProfileEvent(
-          SDK.CPUProfilerModel.Events.ConsoleProfileFinished, id, scriptLocation, title, cpuProfile);
+      this._dispatchProfileEvent(Events.ConsoleProfileFinished, id, scriptLocation, title, cpuProfile);
     });
   }
 
@@ -160,15 +159,27 @@
   bestEffortCoverage() {
     return this._profilerAgent.getBestEffortCoverage().then(result => result || []);
   }
-};
-
-SDK.SDKModel.register(SDK.CPUProfilerModel, SDK.Target.Capability.JS, true);
+}
 
 /** @enum {symbol} */
-SDK.CPUProfilerModel.Events = {
+export const Events = {
   ConsoleProfileStarted: Symbol('ConsoleProfileStarted'),
   ConsoleProfileFinished: Symbol('ConsoleProfileFinished')
 };
 
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CPUProfilerModel = CPUProfilerModel;
+
+/** @enum {symbol} */
+SDK.CPUProfilerModel.Events = Events;
+
+SDK.SDKModel.register(SDK.CPUProfilerModel, SDK.Target.Capability.JS, true);
+
 /** @typedef {!{id: string, scriptLocation: !SDK.DebuggerModel.Location, title: string, cpuProfile: (!Protocol.Profiler.Profile|undefined), cpuProfilerModel: !SDK.CPUProfilerModel}} */
-SDK.CPUProfilerModel.EventData;
+SDK.CPUProfilerModel.EventData;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CSSMatchedStyles.js b/third_party/blink/renderer/devtools/front_end/sdk/CSSMatchedStyles.js
index 3c0080b..aaa227d 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CSSMatchedStyles.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CSSMatchedStyles.js
@@ -4,7 +4,7 @@
 /**
  * @unrestricted
  */
-SDK.CSSMatchedStyles = class {
+export default class CSSMatchedStyles {
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {!SDK.DOMNode} node
@@ -48,7 +48,7 @@
     this._mainDOMCascade = this._buildMainCascade(inlinePayload, attributesPayload, matchedPayload, inheritedPayload);
     this._pseudoDOMCascades = this._buildPseudoCascades(pseudoPayload);
 
-    /** @type {!Map<!SDK.CSSStyleDeclaration, !SDK.CSSMatchedStyles.DOMInheritanceCascade>} */
+    /** @type {!Map<!SDK.CSSStyleDeclaration, !DOMInheritanceCascade>} */
     this._styleToDOMCascade = new Map();
     for (const domCascade of Array.from(this._pseudoDOMCascades.values()).concat(this._mainDOMCascade)) {
       for (const style of domCascade.styles()) {
@@ -133,17 +133,17 @@
    * @param {?Protocol.CSS.CSSStyle} attributesPayload
    * @param {!Array.<!Protocol.CSS.RuleMatch>} matchedPayload
    * @param {!Array.<!Protocol.CSS.InheritedStyleEntry>} inheritedPayload
-   * @return {!SDK.CSSMatchedStyles.DOMInheritanceCascade}
+   * @return {!DOMInheritanceCascade}
    */
   _buildMainCascade(inlinePayload, attributesPayload, matchedPayload, inheritedPayload) {
-    /** @type {!Array<!SDK.CSSMatchedStyles.NodeCascade>} */
+    /** @type {!Array<!NodeCascade>} */
     const nodeCascades = [];
 
     /** @type {!Array<!SDK.CSSStyleDeclaration>} */
     const nodeStyles = [];
 
     /**
-     * @this {SDK.CSSMatchedStyles}
+     * @this {CSSMatchedStyles}
      */
     function addAttributesStyle() {
       if (!attributesPayload) {
@@ -180,7 +180,7 @@
     if (!addedAttributesStyle) {
       addAttributesStyle.call(this);
     }
-    nodeCascades.push(new SDK.CSSMatchedStyles.NodeCascade(this, nodeStyles, false /* isInherited */));
+    nodeCascades.push(new NodeCascade(this, nodeStyles, false /* isInherited */));
 
     // Walk the node structure and identify styles with inherited properties.
     let parentNode = this._node.parentNode;
@@ -213,10 +213,10 @@
         this._inheritedStyles.add(inheritedRule.style);
       }
       parentNode = parentNode.parentNode;
-      nodeCascades.push(new SDK.CSSMatchedStyles.NodeCascade(this, inheritedStyles, true /* isInherited */));
+      nodeCascades.push(new NodeCascade(this, inheritedStyles, true /* isInherited */));
     }
 
-    return new SDK.CSSMatchedStyles.DOMInheritanceCascade(nodeCascades);
+    return new DOMInheritanceCascade(nodeCascades);
 
     /**
      * @param {!Array<!SDK.CSSStyleDeclaration>|!Set<!SDK.CSSStyleDeclaration>} styles
@@ -238,10 +238,10 @@
 
   /**
    * @param {!Array.<!Protocol.CSS.PseudoElementMatches>} pseudoPayload
-   * @return {!Map<!Protocol.DOM.PseudoType, !SDK.CSSMatchedStyles.DOMInheritanceCascade>}
+   * @return {!Map<!Protocol.DOM.PseudoType, !DOMInheritanceCascade>}
    */
   _buildPseudoCascades(pseudoPayload) {
-    /** @type {!Map<!Protocol.DOM.PseudoType, !SDK.CSSMatchedStyles.DOMInheritanceCascade>} */
+    /** @type {!Map<!Protocol.DOM.PseudoType, !DOMInheritanceCascade>} */
     const pseudoCascades = new Map();
     if (!pseudoPayload) {
       return pseudoCascades;
@@ -260,8 +260,8 @@
           this._addMatchingSelectors(pseudoElement, pseudoRule, rules[j].matchingSelectors);
         }
       }
-      const nodeCascade = new SDK.CSSMatchedStyles.NodeCascade(this, pseudoStyles, false /* isInherited */);
-      pseudoCascades.set(entryPayload.pseudoType, new SDK.CSSMatchedStyles.DOMInheritanceCascade([nodeCascade]));
+      const nodeCascade = new NodeCascade(this, pseudoStyles, false /* isInherited */);
+      pseudoCascades.set(entryPayload.pseudoType, new DOMInheritanceCascade([nodeCascade]));
     }
     return pseudoCascades;
   }
@@ -270,7 +270,7 @@
    * @param {!SDK.DOMNode} node
    * @param {!SDK.CSSStyleRule} rule
    * @param {!Array<number>} matchingSelectorIndices
-   * @this {SDK.CSSMatchedStyles}
+   * @this {CSSMatchedStyles}
    */
   _addMatchingSelectors(node, rule, matchingSelectorIndices) {
     for (const matchingSelectorIndex of matchingSelectorIndices) {
@@ -342,7 +342,7 @@
     /**
      * @param {!SDK.DOMNode} node
      * @param {string} selectorText
-     * @this {SDK.CSSMatchedStyles}
+     * @this {CSSMatchedStyles}
      */
     async function querySelector(node, selectorText) {
       const ownerDocument = node.ownerDocument || null;
@@ -492,7 +492,7 @@
 
   /**
    * @param {!SDK.CSSProperty} property
-   * @return {?SDK.CSSMatchedStyles.PropertyState}
+   * @return {?PropertyState}
    */
   propertyState(property) {
     const domCascade = this._styleToDOMCascade.get(property.ownerStyle);
@@ -505,11 +505,11 @@
       domCascade.reset();
     }
   }
-};
+}
 
-SDK.CSSMatchedStyles.NodeCascade = class {
+export class NodeCascade {
   /**
-   * @param {!SDK.CSSMatchedStyles} matchedStyles
+   * @param {!CSSMatchedStyles} matchedStyles
    * @param {!Array<!SDK.CSSStyleDeclaration>} styles
    * @param {boolean} isInherited
    */
@@ -517,7 +517,7 @@
     this._matchedStyles = matchedStyles;
     this._styles = styles;
     this._isInherited = isInherited;
-    /** @type {!Map<!SDK.CSSProperty, !SDK.CSSMatchedStyles.PropertyState>} */
+    /** @type {!Map<!SDK.CSSProperty, !PropertyState>} */
     this._propertiesState = new Map();
     /** @type {!Map.<string, !SDK.CSSProperty>} */
     this._activeProperties = new Map();
@@ -544,42 +544,42 @@
         }
 
         if (!property.activeInStyle()) {
-          this._propertiesState.set(property, SDK.CSSMatchedStyles.PropertyState.Overloaded);
+          this._propertiesState.set(property, PropertyState.Overloaded);
           continue;
         }
 
         const canonicalName = SDK.cssMetadata().canonicalPropertyName(property.name);
         const activeProperty = this._activeProperties.get(canonicalName);
         if (activeProperty && (activeProperty.important || !property.important)) {
-          this._propertiesState.set(property, SDK.CSSMatchedStyles.PropertyState.Overloaded);
+          this._propertiesState.set(property, PropertyState.Overloaded);
           continue;
         }
 
         if (activeProperty) {
-          this._propertiesState.set(activeProperty, SDK.CSSMatchedStyles.PropertyState.Overloaded);
+          this._propertiesState.set(activeProperty, PropertyState.Overloaded);
         }
-        this._propertiesState.set(property, SDK.CSSMatchedStyles.PropertyState.Active);
+        this._propertiesState.set(property, PropertyState.Active);
         this._activeProperties.set(canonicalName, property);
       }
     }
   }
-};
+}
 
-SDK.CSSMatchedStyles.DOMInheritanceCascade = class {
+export class DOMInheritanceCascade {
   /**
-   * @param {!Array<!SDK.CSSMatchedStyles.NodeCascade>} nodeCascades
+   * @param {!Array<!NodeCascade>} nodeCascades
    */
   constructor(nodeCascades) {
     this._nodeCascades = nodeCascades;
-    /** @type {!Map<!SDK.CSSProperty, !SDK.CSSMatchedStyles.PropertyState>} */
+    /** @type {!Map<!SDK.CSSProperty, !PropertyState>} */
     this._propertiesState = new Map();
-    /** @type {!Map<!SDK.CSSMatchedStyles.NodeCascade, !Map<string, string>>} */
+    /** @type {!Map<!NodeCascade, !Map<string, string>>} */
     this._availableCSSVariables = new Map();
-    /** @type {!Map<!SDK.CSSMatchedStyles.NodeCascade, !Map<string, ?string>>} */
+    /** @type {!Map<!NodeCascade, !Map<string, ?string>>} */
     this._computedCSSVariables = new Map();
     this._initialized = false;
 
-    /** @type {!Map<!SDK.CSSStyleDeclaration, !SDK.CSSMatchedStyles.NodeCascade>} */
+    /** @type {!Map<!SDK.CSSStyleDeclaration, !NodeCascade>} */
     this._styleToNodeCascade = new Map();
     for (const nodeCascade of nodeCascades) {
       for (const style of nodeCascade._styles) {
@@ -696,7 +696,7 @@
 
   /**
    * @param {!SDK.CSSProperty} property
-   * @return {?SDK.CSSMatchedStyles.PropertyState}
+   * @return {?PropertyState}
    */
   propertyState(property) {
     this._ensureInitialized();
@@ -721,18 +721,18 @@
       nodeCascade._computeActiveProperties();
       for (const entry of nodeCascade._propertiesState.entries()) {
         const property = /** @type {!SDK.CSSProperty} */ (entry[0]);
-        const state = /** @type {!SDK.CSSMatchedStyles.PropertyState} */ (entry[1]);
-        if (state === SDK.CSSMatchedStyles.PropertyState.Overloaded) {
-          this._propertiesState.set(property, SDK.CSSMatchedStyles.PropertyState.Overloaded);
+        const state = /** @type {!PropertyState} */ (entry[1]);
+        if (state === PropertyState.Overloaded) {
+          this._propertiesState.set(property, PropertyState.Overloaded);
           continue;
         }
         const canonicalName = SDK.cssMetadata().canonicalPropertyName(property.name);
         if (activeProperties.has(canonicalName)) {
-          this._propertiesState.set(property, SDK.CSSMatchedStyles.PropertyState.Overloaded);
+          this._propertiesState.set(property, PropertyState.Overloaded);
           continue;
         }
         activeProperties.set(canonicalName, property);
-        this._propertiesState.set(property, SDK.CSSMatchedStyles.PropertyState.Active);
+        this._propertiesState.set(property, PropertyState.Active);
       }
     }
     // If every longhand of the shorthand is not active, then the shorthand is not active too.
@@ -760,7 +760,7 @@
         continue;
       }
       activeProperties.delete(canonicalName);
-      this._propertiesState.set(shorthandProperty, SDK.CSSMatchedStyles.PropertyState.Overloaded);
+      this._propertiesState.set(shorthandProperty, PropertyState.Overloaded);
     }
 
     // Work inheritance chain backwards to compute visible CSS Variables.
@@ -778,10 +778,28 @@
       this._computedCSSVariables.set(nodeCascade, new Map());
     }
   }
-};
+}
 
 /** @enum {string} */
-SDK.CSSMatchedStyles.PropertyState = {
+export const PropertyState = {
   Active: 'Active',
   Overloaded: 'Overloaded'
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CSSMatchedStyles = CSSMatchedStyles;
+
+/** @constructor */
+SDK.CSSMatchedStyles.NodeCascade = NodeCascade;
+
+/** @constructor */
+SDK.CSSMatchedStyles.DOMInheritanceCascade = DOMInheritanceCascade;
+
+/** @enum {string} */
+SDK.CSSMatchedStyles.PropertyState = PropertyState;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CSSMedia.js b/third_party/blink/renderer/devtools/front_end/sdk/CSSMedia.js
index bf48d89..a56d020 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CSSMedia.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CSSMedia.js
@@ -4,7 +4,7 @@
 /**
  * @unrestricted
  */
-SDK.CSSMediaQuery = class {
+export class CSSMediaQuery {
   /**
    * @param {!Protocol.CSS.MediaQuery} payload
    */
@@ -12,16 +12,16 @@
     this._active = payload.active;
     this._expressions = [];
     for (let j = 0; j < payload.expressions.length; ++j) {
-      this._expressions.push(SDK.CSSMediaQueryExpression.parsePayload(payload.expressions[j]));
+      this._expressions.push(CSSMediaQueryExpression.parsePayload(payload.expressions[j]));
     }
   }
 
   /**
    * @param {!Protocol.CSS.MediaQuery} payload
-   * @return {!SDK.CSSMediaQuery}
+   * @return {!CSSMediaQuery}
    */
   static parsePayload(payload) {
-    return new SDK.CSSMediaQuery(payload);
+    return new CSSMediaQuery(payload);
   }
 
   /**
@@ -32,18 +32,18 @@
   }
 
   /**
-   * @return {!Array.<!SDK.CSSMediaQueryExpression>}
+   * @return {!Array.<!CSSMediaQueryExpression>}
    */
   expressions() {
     return this._expressions;
   }
-};
+}
 
 
 /**
  * @unrestricted
  */
-SDK.CSSMediaQueryExpression = class {
+export class CSSMediaQueryExpression {
   /**
    * @param {!Protocol.CSS.MediaQueryExpression} payload
    */
@@ -57,10 +57,10 @@
 
   /**
    * @param {!Protocol.CSS.MediaQueryExpression} payload
-   * @return {!SDK.CSSMediaQueryExpression}
+   * @return {!CSSMediaQueryExpression}
    */
   static parsePayload(payload) {
-    return new SDK.CSSMediaQueryExpression(payload);
+    return new CSSMediaQueryExpression(payload);
   }
 
   /**
@@ -97,13 +97,13 @@
   computedLength() {
     return this._computedLength;
   }
-};
+}
 
 
 /**
  * @unrestricted
  */
-SDK.CSSMedia = class {
+export default class CSSMedia {
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {!Protocol.CSS.CSSMedia} payload
@@ -116,21 +116,21 @@
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {!Protocol.CSS.CSSMedia} payload
-   * @return {!SDK.CSSMedia}
+   * @return {!CSSMedia}
    */
   static parsePayload(cssModel, payload) {
-    return new SDK.CSSMedia(cssModel, payload);
+    return new CSSMedia(cssModel, payload);
   }
 
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {!Array.<!Protocol.CSS.CSSMedia>} payload
-   * @return {!Array.<!SDK.CSSMedia>}
+   * @return {!Array.<!CSSMedia>}
    */
   static parseMediaArrayPayload(cssModel, payload) {
     const result = [];
     for (let i = 0; i < payload.length; ++i) {
-      result.push(SDK.CSSMedia.parsePayload(cssModel, payload[i]));
+      result.push(CSSMedia.parsePayload(cssModel, payload[i]));
     }
     return result;
   }
@@ -148,7 +148,7 @@
     if (payload.mediaList) {
       this.mediaList = [];
       for (let i = 0; i < payload.mediaList.length; ++i) {
-        this.mediaList.push(SDK.CSSMediaQuery.parsePayload(payload.mediaList[i]));
+        this.mediaList.push(CSSMediaQuery.parsePayload(payload.mediaList[i]));
       }
     }
   }
@@ -168,7 +168,7 @@
   }
 
   /**
-   * @param {!SDK.CSSMedia} other
+   * @param {!CSSMedia} other
    * @return {boolean}
    */
   equal(other) {
@@ -239,11 +239,28 @@
     const lineNumber = Number(this.lineNumberInSource());
     return new SDK.CSSLocation(header, lineNumber, this.columnNumberInSource());
   }
-};
+}
 
-SDK.CSSMedia.Source = {
+export const Source = {
   LINKED_SHEET: 'linkedSheet',
   INLINE_SHEET: 'inlineSheet',
   MEDIA_RULE: 'mediaRule',
   IMPORT_RULE: 'importRule'
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CSSMediaQuery = CSSMediaQuery;
+
+/** @constructor */
+SDK.CSSMediaQueryExpression = CSSMediaQueryExpression;
+
+/** @constructor */
+SDK.CSSMedia = CSSMedia;
+
+SDK.CSSMedia.Source = Source;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CSSMetadata.js b/third_party/blink/renderer/devtools/front_end/sdk/CSSMetadata.js
index 7bf29b84..d4414d7 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CSSMetadata.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CSSMetadata.js
@@ -33,7 +33,7 @@
 /**
  * @unrestricted
  */
-SDK.CSSMetadata = class {
+export default class CSSMetadata {
   /**
    * @param {!Array.<!{name: string, longhands: !Array.<string>, inherited: boolean, svg: boolean}>} properties
    */
@@ -76,7 +76,7 @@
         }
       }
     }
-    this._values.sort(SDK.CSSMetadata._sortPrefixesToEnd);
+    this._values.sort(CSSMetadata._sortPrefixesToEnd);
     this._valuesSet = new Set(this._values);
 
     /** @type {!Array<string>} */
@@ -86,7 +86,7 @@
     for (const name of this._valuesSet) {
       const values = this._specificPropertyValues(name)
                          .filter(value => CSS.supports(name, value))
-                         .sort(SDK.CSSMetadata._sortPrefixesToEnd);
+                         .sort(CSSMetadata._sortPrefixesToEnd);
       const presets = values.map(value => `${name}: ${value}`);
       if (!this.isSVGProperty(name)) {
         this._nameValuePresets.pushAll(presets);
@@ -156,8 +156,7 @@
    * @return {boolean}
    */
   isColorAwareProperty(propertyName) {
-    return !!SDK.CSSMetadata._colorAwareProperties.has(propertyName.toLowerCase()) ||
-        this.isCustomProperty(propertyName.toLowerCase());
+    return !!_colorAwareProperties.has(propertyName.toLowerCase()) || this.isCustomProperty(propertyName.toLowerCase());
   }
 
   /**
@@ -178,7 +177,7 @@
     if (propertyName === 'line-height') {
       return false;
     }
-    return SDK.CSSMetadata._distanceProperties.has(propertyName) || propertyName.startsWith('margin') ||
+    return _distanceProperties.has(propertyName) || propertyName.startsWith('margin') ||
         propertyName.startsWith('padding') || propertyName.indexOf('width') !== -1 ||
         propertyName.indexOf('height') !== -1;
   }
@@ -189,7 +188,7 @@
    */
   isBezierAwareProperty(propertyName) {
     propertyName = propertyName.toLowerCase();
-    return !!SDK.CSSMetadata._bezierAwareProperties.has(propertyName) || this.isCustomProperty(propertyName);
+    return !!_bezierAwareProperties.has(propertyName) || this.isCustomProperty(propertyName);
   }
 
   /**
@@ -248,7 +247,7 @@
    */
   _specificPropertyValues(propertyName) {
     const unprefixedName = propertyName.replace(/^-webkit-/, '');
-    const entry = SDK.CSSMetadata._propertyDataMap[propertyName] || SDK.CSSMetadata._propertyDataMap[unprefixedName];
+    const entry = _propertyDataMap[propertyName] || _propertyDataMap[unprefixedName];
     const keywords = entry && entry.values ? entry.values.slice() : [];
     for (const commonKeyword of ['auto', 'none']) {
       if (CSS.supports(propertyName, commonKeyword)) {
@@ -272,7 +271,7 @@
         acceptedKeywords.push(color);
       }
     }
-    return acceptedKeywords.sort(SDK.CSSMetadata._sortPrefixesToEnd);
+    return acceptedKeywords.sort(CSSMetadata._sortPrefixesToEnd);
   }
 
   /**
@@ -280,7 +279,7 @@
    * @return {number}
    */
   propertyUsageWeight(property) {
-    return SDK.CSSMetadata.Weight[property] || SDK.CSSMetadata.Weight[this.canonicalPropertyName(property)] || 0;
+    return Weight[property] || Weight[this.canonicalPropertyName(property)] || 0;
   }
 
   /**
@@ -289,7 +288,7 @@
    * @return {?{text: string, startColumn: number, endColumn: number}}
    */
   getValuePreset(key, value) {
-    const values = SDK.CSSMetadata._valuePresets.get(key);
+    const values = _valuePresets.get(key);
     let text = values ? values.get(value) : null;
     if (!text) {
       return null;
@@ -304,10 +303,10 @@
     }
     return {text, startColumn, endColumn};
   }
-};
+}
 
-SDK.CSSMetadata.VariableRegex = /(var\(--.*?\))/g;
-SDK.CSSMetadata.URLRegex = /url\(\s*('.+?'|".+?"|[^)]+)\s*\)/g;
+export const VariableRegex = /(var\(--.*?\))/g;
+export const URLRegex = /url\(\s*('.+?'|".+?"|[^)]+)\s*\)/g;
 
 /**
  * Matches an instance of a grid area 'row' definition.
@@ -317,22 +316,22 @@
  * 'grid', 'grid-template', e.g.
  *    [track-name] "a a ." minmax(50px, auto) [track-name]
  */
-SDK.CSSMetadata.GridAreaRowRegex = /((?:\[[\w\- ]+\]\s*)*(?:"[^"]+"|'[^']+'))[^'"\[]*\[?[^'"\[]*/;
+export const GridAreaRowRegex = /((?:\[[\w\- ]+\]\s*)*(?:"[^"]+"|'[^']+'))[^'"\[]*\[?[^'"\[]*/;
 
 /**
- * @return {!SDK.CSSMetadata}
+ * @return {!CSSMetadata}
  */
-SDK.cssMetadata = function() {
-  if (!SDK.CSSMetadata._instance) {
-    SDK.CSSMetadata._instance = new SDK.CSSMetadata(SDK.CSSMetadata._generatedProperties || []);
+export function cssMetadata() {
+  if (!CSSMetadata._instance) {
+    CSSMetadata._instance = new CSSMetadata(CSSMetadata._generatedProperties || []);
   }
-  return SDK.CSSMetadata._instance;
-};
+  return CSSMetadata._instance;
+}
 
 /**
  * The pipe character '|' indicates where text selection should be set.
  */
-SDK.CSSMetadata._imageValuePresetMap = new Map([
+export const _imageValuePresetMap = new Map([
   ['linear-gradient', 'linear-gradient(|45deg, black, transparent|)'],
   ['radial-gradient', 'radial-gradient(|black, transparent|)'],
   ['repeating-linear-gradient', 'repeating-linear-gradient(|45deg, black, transparent 100px|)'],
@@ -340,7 +339,7 @@
   ['url', 'url(||)'],
 ]);
 
-SDK.CSSMetadata._valuePresets = new Map([
+export const _valuePresets = new Map([
   [
     'filter', new Map([
       ['blur', 'blur(|1px|)'],
@@ -356,8 +355,8 @@
       ['url', 'url(||)'],
     ])
   ],
-  ['background', SDK.CSSMetadata._imageValuePresetMap], ['background-image', SDK.CSSMetadata._imageValuePresetMap],
-  ['-webkit-mask-image', SDK.CSSMetadata._imageValuePresetMap],
+  ['background', _imageValuePresetMap], ['background-image', _imageValuePresetMap],
+  ['-webkit-mask-image', _imageValuePresetMap],
   [
     'transform', new Map([
       ['scale', 'scale(|1.5|)'],
@@ -384,18 +383,18 @@
   ]
 ]);
 
-SDK.CSSMetadata._distanceProperties = new Set([
+export const _distanceProperties = new Set([
   'background-position', 'border-spacing', 'bottom', 'font-size', 'height', 'left', 'letter-spacing', 'max-height',
   'max-width', 'min-height', 'min-width', 'right', 'text-indent', 'top', 'width', 'word-spacing', 'grid-row-gap',
   'grid-column-gap', 'row-gap'
 ]);
 
-SDK.CSSMetadata._bezierAwareProperties = new Set([
+export const _bezierAwareProperties = new Set([
   'animation', 'animation-timing-function', 'transition', 'transition-timing-function', '-webkit-animation',
   '-webkit-animation-timing-function', '-webkit-transition', '-webkit-transition-timing-function'
 ]);
 
-SDK.CSSMetadata._colorAwareProperties = new Set([
+export const _colorAwareProperties = new Set([
   'backdrop-filter',
   'background',
   'background-color',
@@ -449,7 +448,7 @@
   '-webkit-text-stroke-color'
 ]);
 
-SDK.CSSMetadata._propertyDataMap = {
+export const _propertyDataMap = {
   'table-layout': {values: ['fixed']},
   'visibility': {values: ['hidden', 'visible', 'collapse']},
   'background-repeat': {values: ['repeat', 'repeat-x', 'repeat-y', 'no-repeat', 'space', 'round']},
@@ -1242,7 +1241,7 @@
 };
 
 // Weight of CSS properties based on their usage from https://www.chromestatus.com/metrics/css/popularity
-SDK.CSSMetadata.Weight = {
+export const Weight = {
   'align-content': 57,
   'align-items': 129,
   'align-self': 55,
@@ -1497,3 +1496,25 @@
   'z-index': 239,
   'zoom': 200
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CSSMetadata = CSSMetadata;
+
+SDK.CSSMetadata.VariableRegex = VariableRegex;
+SDK.CSSMetadata.URLRegex = URLRegex;
+SDK.CSSMetadata.GridAreaRowRegex = GridAreaRowRegex;
+SDK.CSSMetadata._imageValuePresetMap = _imageValuePresetMap;
+SDK.CSSMetadata._valuePresets = _valuePresets;
+SDK.CSSMetadata._distanceProperties = _distanceProperties;
+SDK.CSSMetadata._bezierAwareProperties = _bezierAwareProperties;
+SDK.CSSMetadata._colorAwareProperties = _colorAwareProperties;
+SDK.CSSMetadata._propertyDataMap = _propertyDataMap;
+SDK.CSSMetadata.Weight = Weight;
+
+SDK.cssMetadata = cssMetadata;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CSSModel.js b/third_party/blink/renderer/devtools/front_end/sdk/CSSModel.js
index be54c34..67c5305 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CSSModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CSSModel.js
@@ -31,7 +31,7 @@
 /**
  * @unrestricted
  */
-SDK.CSSModel = class extends SDK.SDKModel {
+export default class CSSModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -41,13 +41,13 @@
     /** @type {!SDK.SourceMapManager<!SDK.CSSStyleSheetHeader>} */
     this._sourceMapManager = new SDK.SourceMapManager(target);
     this._agent = target.cssAgent();
-    this._styleLoader = new SDK.CSSModel.ComputedStyleLoader(this);
+    this._styleLoader = new ComputedStyleLoader(this);
     this._resourceTreeModel = target.model(SDK.ResourceTreeModel);
     if (this._resourceTreeModel) {
       this._resourceTreeModel.addEventListener(
           SDK.ResourceTreeModel.Events.MainFrameNavigated, this._resetStyleSheets, this);
     }
-    target.registerCSSDispatcher(new SDK.CSSDispatcher(this));
+    target.registerCSSDispatcher(new CSSDispatcher(this));
     if (!target.suspended()) {
       this._enable();
     }
@@ -86,7 +86,7 @@
    * @param {string} sourceURL
    * @param {number} lineNumber
    * @param {number} columnNumber
-   * @return {!Array<!SDK.CSSLocation>}
+   * @return {!Array<!CSSLocation>}
    */
   createRawLocationsByURL(sourceURL, lineNumber, columnNumber) {
     const headers = this.headersForSourceURL(sourceURL);
@@ -101,7 +101,7 @@
     for (let index = endIndex - 1;
          index >= 0 && headers[index].startLine === last.startLine && headers[index].startColumn === last.startColumn;
          --index) {
-      locations.push(new SDK.CSSLocation(headers[index], lineNumber, columnNumber));
+      locations.push(new CSSLocation(headers[index], lineNumber, columnNumber));
     }
 
 
@@ -172,7 +172,7 @@
       }
 
       this._domModel.markUndoableState(!majorChange);
-      const edit = new SDK.CSSModel.Edit(styleSheetId, range, text, stylePayloads[0]);
+      const edit = new Edit(styleSheetId, range, text, stylePayloads[0]);
       this._fireStyleSheetChanged(styleSheetId, edit);
       return true;
     } catch (e) {
@@ -197,7 +197,7 @@
         return false;
       }
       this._domModel.markUndoableState();
-      const edit = new SDK.CSSModel.Edit(styleSheetId, range, text, selectorPayload);
+      const edit = new Edit(styleSheetId, range, text, selectorPayload);
       this._fireStyleSheetChanged(styleSheetId, edit);
       return true;
     } catch (e) {
@@ -222,7 +222,7 @@
         return false;
       }
       this._domModel.markUndoableState();
-      const edit = new SDK.CSSModel.Edit(styleSheetId, range, text, payload);
+      const edit = new Edit(styleSheetId, range, text, payload);
       this._fireStyleSheetChanged(styleSheetId, edit);
       return true;
     } catch (e) {
@@ -274,7 +274,7 @@
     if (this._isRuleUsageTrackingEnabled) {
       await this.startCoverage();
     }
-    this.dispatchEventToListeners(SDK.CSSModel.Events.ModelWasEnabled);
+    this.dispatchEventToListeners(Events.ModelWasEnabled);
   }
 
   /**
@@ -317,7 +317,7 @@
 
   /**
    * @param {number} nodeId
-   * @return {!Promise<?SDK.CSSModel.ContrastInfo>}
+   * @return {!Promise<?CSSModel.ContrastInfo>}
    */
   async backgroundColorsPromise(nodeId) {
     const response = this._agent.invoke_getBackgroundColors({nodeId});
@@ -361,7 +361,7 @@
 
   /**
    * @param {!Protocol.DOM.NodeId} nodeId
-   * @return {!Promise<?SDK.CSSModel.InlineStyleResult>}
+   * @return {!Promise<?InlineStyleResult>}
    */
   async inlineStylesPromise(nodeId) {
     const response = await this._agent.invoke_getInlineStylesForNode({nodeId});
@@ -374,7 +374,7 @@
     const attributesStyle = response.attributesStyle ?
         new SDK.CSSStyleDeclaration(this, null, response.attributesStyle, SDK.CSSStyleDeclaration.Type.Attributes) :
         null;
-    return new SDK.CSSModel.InlineStyleResult(inlineStyle, attributesStyle);
+    return new InlineStyleResult(inlineStyle, attributesStyle);
   }
 
   /**
@@ -384,28 +384,27 @@
    * @return {boolean}
    */
   forcePseudoState(node, pseudoClass, enable) {
-    const pseudoClasses = node.marker(SDK.CSSModel.PseudoStateMarker) || [];
+    const pseudoClasses = node.marker(PseudoStateMarker) || [];
     if (enable) {
       if (pseudoClasses.indexOf(pseudoClass) >= 0) {
         return false;
       }
       pseudoClasses.push(pseudoClass);
-      node.setMarker(SDK.CSSModel.PseudoStateMarker, pseudoClasses);
+      node.setMarker(PseudoStateMarker, pseudoClasses);
     } else {
       if (pseudoClasses.indexOf(pseudoClass) < 0) {
         return false;
       }
       pseudoClasses.remove(pseudoClass);
       if (pseudoClasses.length) {
-        node.setMarker(SDK.CSSModel.PseudoStateMarker, pseudoClasses);
+        node.setMarker(PseudoStateMarker, pseudoClasses);
       } else {
-        node.setMarker(SDK.CSSModel.PseudoStateMarker, null);
+        node.setMarker(PseudoStateMarker, null);
       }
     }
 
     this._agent.forcePseudoState(node.id, pseudoClasses);
-    this.dispatchEventToListeners(
-        SDK.CSSModel.Events.PseudoStateForced, {node: node, pseudoClass: pseudoClass, enable: enable});
+    this.dispatchEventToListeners(Events.PseudoStateForced, {node: node, pseudoClass: pseudoClass, enable: enable});
     return true;
   }
 
@@ -414,7 +413,7 @@
    * @return {?Array<string>} state
    */
   pseudoState(node) {
-    return node.marker(SDK.CSSModel.PseudoStateMarker) || [];
+    return node.marker(PseudoStateMarker) || [];
   }
 
   /**
@@ -434,7 +433,7 @@
         return false;
       }
       this._domModel.markUndoableState();
-      const edit = new SDK.CSSModel.Edit(styleSheetId, range, newMediaText, mediaPayload);
+      const edit = new Edit(styleSheetId, range, newMediaText, mediaPayload);
       this._fireStyleSheetChanged(styleSheetId, edit);
       return true;
     } catch (e) {
@@ -457,7 +456,7 @@
         return null;
       }
       this._domModel.markUndoableState();
-      const edit = new SDK.CSSModel.Edit(styleSheetId, ruleLocation, ruleText, rulePayload);
+      const edit = new Edit(styleSheetId, ruleLocation, ruleText, rulePayload);
       this._fireStyleSheetChanged(styleSheetId, edit);
       return new SDK.CSSStyleRule(this, rulePayload);
     } catch (e) {
@@ -486,11 +485,11 @@
   }
 
   mediaQueryResultChanged() {
-    this.dispatchEventToListeners(SDK.CSSModel.Events.MediaQueryResultChanged);
+    this.dispatchEventToListeners(Events.MediaQueryResultChanged);
   }
 
   fontsUpdated() {
-    this.dispatchEventToListeners(SDK.CSSModel.Events.FontsUpdated);
+    this.dispatchEventToListeners(Events.FontsUpdated);
   }
 
   /**
@@ -510,10 +509,10 @@
 
   /**
    * @param {!Protocol.CSS.StyleSheetId} styleSheetId
-   * @param {!SDK.CSSModel.Edit=} edit
+   * @param {!Edit=} edit
    */
   _fireStyleSheetChanged(styleSheetId, edit) {
-    this.dispatchEventToListeners(SDK.CSSModel.Events.StyleSheetChanged, {styleSheetId: styleSheetId, edit: edit});
+    this.dispatchEventToListeners(Events.StyleSheetChanged, {styleSheetId: styleSheetId, edit: edit});
   }
 
   /**
@@ -567,7 +566,7 @@
     }
     styleSheetIds.push(styleSheetHeader.id);
     this._sourceMapManager.attachSourceMap(styleSheetHeader, styleSheetHeader.sourceURL, styleSheetHeader.sourceMapURL);
-    this.dispatchEventToListeners(SDK.CSSModel.Events.StyleSheetAdded, styleSheetHeader);
+    this.dispatchEventToListeners(Events.StyleSheetAdded, styleSheetHeader);
   }
 
   /**
@@ -594,7 +593,7 @@
     }
     this._originalStyleSheetText.remove(header);
     this._sourceMapManager.detachSourceMap(header);
-    this.dispatchEventToListeners(SDK.CSSModel.Events.StyleSheetRemoved, header);
+    this.dispatchEventToListeners(Events.StyleSheetRemoved, header);
   }
 
   /**
@@ -623,7 +622,7 @@
   async setStyleSheetText(styleSheetId, newText, majorChange) {
     const header = /** @type {!SDK.CSSStyleSheetHeader} */ (this._styleSheetIdToHeader.get(styleSheetId));
     console.assert(header);
-    newText = SDK.CSSModel.trimSourceURL(newText);
+    newText = CSSModel.trimSourceURL(newText);
     if (header.hasSourceURL) {
       newText += '\n/*# sourceURL=' + header.sourceURL + ' */';
     }
@@ -650,7 +649,7 @@
   async getStyleSheetText(styleSheetId) {
     try {
       const text = await this._agent.getStyleSheetText(styleSheetId);
-      return text && SDK.CSSModel.trimSourceURL(text);
+      return text && CSSModel.trimSourceURL(text);
     } catch (e) {
       return null;
     }
@@ -662,7 +661,7 @@
     this._styleSheetIdToHeader.clear();
     for (let i = 0; i < headers.length; ++i) {
       this._sourceMapManager.detachSourceMap(headers[i]);
-      this.dispatchEventToListeners(SDK.CSSModel.Events.StyleSheetRemoved, headers[i]);
+      this.dispatchEventToListeners(Events.StyleSheetRemoved, headers[i]);
     }
   }
 
@@ -719,18 +718,10 @@
     super.dispose();
     this._sourceMapManager.dispose();
   }
-};
-
-SDK.SDKModel.register(SDK.CSSModel, SDK.Target.Capability.DOM, true);
-
-/** @typedef {!{range: !Protocol.CSS.SourceRange, styleSheetId: !Protocol.CSS.StyleSheetId, wasUsed: boolean}} */
-SDK.CSSModel.RuleUsage;
-
-/** @typedef {{backgroundColors: ?Array<string>, computedFontSize: string, computedFontWeight: string}} */
-SDK.CSSModel.ContrastInfo;
+}
 
 /** @enum {symbol} */
-SDK.CSSModel.Events = {
+export const Events = {
   FontsUpdated: Symbol('FontsUpdated'),
   MediaQueryResultChanged: Symbol('MediaQueryResultChanged'),
   ModelWasEnabled: Symbol('ModelWasEnabled'),
@@ -740,15 +731,14 @@
   StyleSheetRemoved: Symbol('StyleSheetRemoved')
 };
 
-SDK.CSSModel.MediaTypes =
+export const MediaTypes =
     ['all', 'braille', 'embossed', 'handheld', 'print', 'projection', 'screen', 'speech', 'tty', 'tv'];
-
-SDK.CSSModel.PseudoStateMarker = 'pseudo-state-marker';
+export const PseudoStateMarker = 'pseudo-state-marker';
 
 /**
  * @unrestricted
  */
-SDK.CSSModel.Edit = class {
+export class Edit {
   /**
    * @param {!Protocol.CSS.StyleSheetId} styleSheetId
    * @param {!TextUtils.TextRange} oldRange
@@ -762,9 +752,9 @@
     this.newText = newText;
     this.payload = payload;
   }
-};
+}
 
-SDK.CSSLocation = class {
+export class CSSLocation {
   /**
    * @param {!SDK.CSSStyleSheetHeader} header
    * @param {number} lineNumber
@@ -779,7 +769,7 @@
   }
 
   /**
-   * @return {!SDK.CSSModel}
+   * @return {!CSSModel}
    */
   cssModel() {
     return this._cssModel;
@@ -791,15 +781,15 @@
   header() {
     return this._cssModel.styleSheetHeaderForId(this.styleSheetId);
   }
-};
+}
 
 /**
  * @implements {Protocol.CSSDispatcher}
  * @unrestricted
  */
-SDK.CSSDispatcher = class {
+export class CSSDispatcher {
   /**
-   * @param {!SDK.CSSModel} cssModel
+   * @param {!CSSModel} cssModel
    */
   constructor(cssModel) {
     this._cssModel = cssModel;
@@ -842,14 +832,14 @@
   styleSheetRemoved(id) {
     this._cssModel._styleSheetRemoved(id);
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.CSSModel.ComputedStyleLoader = class {
+export class ComputedStyleLoader {
   /**
-   * @param {!SDK.CSSModel} cssModel
+   * @param {!CSSModel} cssModel
    */
   constructor(cssModel) {
     this._cssModel = cssModel;
@@ -873,7 +863,7 @@
     /**
      * @param {?Array<!Protocol.CSS.CSSComputedStyleProperty>} computedPayload
      * @return {?Map<string, string>}
-     * @this {SDK.CSSModel.ComputedStyleLoader}
+     * @this {ComputedStyleLoader}
      */
     function parsePayload(computedPayload) {
       this._nodeIdToPromise.delete(nodeId);
@@ -887,12 +877,12 @@
       return result;
     }
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.CSSModel.InlineStyleResult = class {
+export class InlineStyleResult {
   /**
    * @param {?SDK.CSSStyleDeclaration} inlineStyle
    * @param {?SDK.CSSStyleDeclaration} attributesStyle
@@ -901,4 +891,42 @@
     this.inlineStyle = inlineStyle;
     this.attributesStyle = attributesStyle;
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CSSModel = CSSModel;
+
+/** @enum {symbol} */
+SDK.CSSModel.Events = Events;
+
+SDK.CSSModel.MediaTypes = MediaTypes;
+SDK.CSSModel.PseudoStateMarker = PseudoStateMarker;
+
+/** @constructor */
+SDK.CSSModel.Edit = Edit;
+
+/** @constructor */
+SDK.CSSModel.ComputedStyleLoader = ComputedStyleLoader;
+
+/** @constructor */
+SDK.CSSModel.InlineStyleResult = InlineStyleResult;
+
+/** @constructor */
+SDK.CSSLocation = CSSLocation;
+
+/** @constructor */
+SDK.CSSDispatcher = CSSDispatcher;
+
+SDK.SDKModel.register(SDK.CSSModel, SDK.Target.Capability.DOM, true);
+
+/** @typedef {!{range: !Protocol.CSS.SourceRange, styleSheetId: !Protocol.CSS.StyleSheetId, wasUsed: boolean}} */
+SDK.CSSModel.RuleUsage;
+
+/** @typedef {{backgroundColors: ?Array<string>, computedFontSize: string, computedFontWeight: string}} */
+SDK.CSSModel.ContrastInfo;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CSSProperty.js b/third_party/blink/renderer/devtools/front_end/sdk/CSSProperty.js
index 737af9b..36fe7eb 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CSSProperty.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CSSProperty.js
@@ -4,7 +4,7 @@
 /**
  * @unrestricted
  */
-SDK.CSSProperty = class {
+export default class CSSProperty {
   /**
    * @param {!SDK.CSSStyleDeclaration} ownerStyle
    * @param {number} index
@@ -37,7 +37,7 @@
    * @param {!SDK.CSSStyleDeclaration} ownerStyle
    * @param {number} index
    * @param {!Protocol.CSS.CSSProperty} payload
-   * @return {!SDK.CSSProperty}
+   * @return {!CSSProperty}
    */
   static parsePayload(ownerStyle, index, payload) {
     // The following default field values are used in the payload:
@@ -45,7 +45,7 @@
     // parsedOk: true
     // implicit: false
     // disabled: false
-    const result = new SDK.CSSProperty(
+    const result = new CSSProperty(
         ownerStyle, index, payload.name, payload.value, payload.important || false, payload.disabled || false,
         ('parsedOk' in payload) ? !!payload.parsedOk : true, !!payload.implicit, payload.text, payload.range);
     return result;
@@ -179,7 +179,7 @@
     const newStyleText = text.replaceRange(range, String.sprintf(';%s;', propertyText));
 
     const tokenizerFactory = await self.runtime.extension(TextUtils.TokenizerFactory).instance();
-    const styleText = SDK.CSSProperty._formatStyle(newStyleText, indentation, endIndentation, tokenizerFactory);
+    const styleText = CSSProperty._formatStyle(newStyleText, indentation, endIndentation, tokenizerFactory);
     return this.ownerStyle.setText(styleText, majorChange);
   }
 
@@ -312,4 +312,13 @@
     const text = disabled ? '/* ' + propertyText + ' */' : this.text.substring(2, propertyText.length - 2).trim();
     return this.setText(text, true, true);
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CSSProperty = CSSProperty;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CSSRule.js b/third_party/blink/renderer/devtools/front_end/sdk/CSSRule.js
index 17269f71..9a861bc 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CSSRule.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CSSRule.js
@@ -1,35 +1,11 @@
 // Copyright 2016 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.
-/**
- * @unrestricted
- */
-SDK.CSSValue = class {
-  /**
-   * @param {!Protocol.CSS.Value} payload
-   */
-  constructor(payload) {
-    this.text = payload.text;
-    if (payload.range) {
-      this.range = TextUtils.TextRange.fromObject(payload.range);
-    }
-  }
-
-  /**
-   * @param {!SDK.CSSModel.Edit} edit
-   */
-  rebase(edit) {
-    if (!this.range) {
-      return;
-    }
-    this.range = this.range.rebaseAfterTextEdit(edit.oldRange, edit.newRange);
-  }
-};
 
 /**
  * @unrestricted
  */
-SDK.CSSRule = class {
+export default class CSSRule {
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {{style: !Protocol.CSS.CSSStyle, styleSheetId: (string|undefined), origin: !Protocol.CSS.StyleSheetOrigin}} payload
@@ -101,12 +77,37 @@
   cssModel() {
     return this._cssModel;
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.CSSStyleRule = class extends SDK.CSSRule {
+export class CSSValue {
+  /**
+   * @param {!Protocol.CSS.Value} payload
+   */
+  constructor(payload) {
+    this.text = payload.text;
+    if (payload.range) {
+      this.range = TextUtils.TextRange.fromObject(payload.range);
+    }
+  }
+
+  /**
+   * @param {!SDK.CSSModel.Edit} edit
+   */
+  rebase(edit) {
+    if (!this.range) {
+      return;
+    }
+    this.range = this.range.rebaseAfterTextEdit(edit.oldRange, edit.newRange);
+  }
+}
+
+/**
+ * @unrestricted
+ */
+export class CSSStyleRule extends CSSRule {
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {!Protocol.CSS.CSSRule} payload
@@ -123,7 +124,7 @@
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {string} selectorText
-   * @return {!SDK.CSSStyleRule}
+   * @return {!CSSStyleRule}
    */
   static createDummyRule(cssModel, selectorText) {
     const dummyPayload = {
@@ -132,17 +133,17 @@
       },
       style: {styleSheetId: '0', range: new TextUtils.TextRange(0, 0, 0, 0), shorthandEntries: [], cssProperties: []}
     };
-    return new SDK.CSSStyleRule(cssModel, /** @type {!Protocol.CSS.CSSRule} */ (dummyPayload));
+    return new CSSStyleRule(cssModel, /** @type {!Protocol.CSS.CSSRule} */ (dummyPayload));
   }
 
   /**
    * @param {!Protocol.CSS.SelectorList} selectorList
    */
   _reinitializeSelectors(selectorList) {
-    /** @type {!Array.<!SDK.CSSValue>} */
+    /** @type {!Array.<!CSSValue>} */
     this.selectors = [];
     for (let i = 0; i < selectorList.selectors.length; ++i) {
-      this.selectors.push(new SDK.CSSValue(selectorList.selectors[i]));
+      this.selectors.push(new CSSValue(selectorList.selectors[i]));
     }
   }
 
@@ -230,42 +231,42 @@
 
     super.rebase(edit);
   }
-};
+}
 
 
 /**
  * @unrestricted
  */
-SDK.CSSKeyframesRule = class {
+export class CSSKeyframesRule {
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {!Protocol.CSS.CSSKeyframesRule} payload
    */
   constructor(cssModel, payload) {
     this._cssModel = cssModel;
-    this._animationName = new SDK.CSSValue(payload.animationName);
-    this._keyframes = payload.keyframes.map(keyframeRule => new SDK.CSSKeyframeRule(cssModel, keyframeRule));
+    this._animationName = new CSSValue(payload.animationName);
+    this._keyframes = payload.keyframes.map(keyframeRule => new CSSKeyframeRule(cssModel, keyframeRule));
   }
 
   /**
-   * @return {!SDK.CSSValue}
+   * @return {!CSSValue}
    */
   name() {
     return this._animationName;
   }
 
   /**
-   * @return {!Array.<!SDK.CSSKeyframeRule>}
+   * @return {!Array.<!CSSKeyframeRule>}
    */
   keyframes() {
     return this._keyframes;
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.CSSKeyframeRule = class extends SDK.CSSRule {
+export class CSSKeyframeRule extends CSSRule {
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {!Protocol.CSS.CSSKeyframeRule} payload
@@ -276,7 +277,7 @@
   }
 
   /**
-   * @return {!SDK.CSSValue}
+   * @return {!CSSValue}
    */
   key() {
     return this._keyText;
@@ -286,7 +287,7 @@
    * @param {!Protocol.CSS.Value} payload
    */
   _reinitializeKey(payload) {
-    this._keyText = new SDK.CSSValue(payload);
+    this._keyText = new CSSValue(payload);
   }
 
   /**
@@ -321,4 +322,25 @@
     }
     return this._cssModel.setKeyframeKey(styleSheetId, range, newKeyText);
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CSSRule = CSSRule;
+
+/** @constructor */
+SDK.CSSValue = CSSValue;
+
+/** @constructor */
+SDK.CSSStyleRule = CSSStyleRule;
+
+/** @constructor */
+SDK.CSSKeyframesRule = CSSKeyframesRule;
+
+/** @constructor */
+SDK.CSSKeyframeRule = CSSKeyframeRule;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CSSStyleDeclaration.js b/third_party/blink/renderer/devtools/front_end/sdk/CSSStyleDeclaration.js
index a22d70c..a6e02f4 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CSSStyleDeclaration.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CSSStyleDeclaration.js
@@ -1,12 +1,13 @@
 // Copyright 2016 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.
-SDK.CSSStyleDeclaration = class {
+
+export default class CSSStyleDeclaration {
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {?SDK.CSSRule} parentRule
    * @param {!Protocol.CSS.CSSStyle} payload
-   * @param {!SDK.CSSStyleDeclaration.Type} type
+   * @param {!Type} type
    */
   constructor(cssModel, parentRule, payload, type) {
     this._cssModel = cssModel;
@@ -100,7 +101,7 @@
     this._leadingProperties = null;
 
     /**
-     * @this {SDK.CSSStyleDeclaration}
+     * @this {CSSStyleDeclaration}
      * @param {!TextUtils.Text} cssText
      * @param {number} startLine
      * @param {number} startColumn
@@ -395,11 +396,23 @@
   appendProperty(name, value, userCallback) {
     this.insertPropertyAt(this.allProperties().length, name, value, userCallback);
   }
-};
+}
 
 /** @enum {string} */
-SDK.CSSStyleDeclaration.Type = {
+export const Type = {
   Regular: 'Regular',
   Inline: 'Inline',
   Attributes: 'Attributes'
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CSSStyleDeclaration = CSSStyleDeclaration;
+
+/** @enum {string} */
+SDK.CSSStyleDeclaration.Type = Type;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CSSStyleSheetHeader.js b/third_party/blink/renderer/devtools/front_end/sdk/CSSStyleSheetHeader.js
index f208dd6c..635b970 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CSSStyleSheetHeader.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CSSStyleSheetHeader.js
@@ -5,7 +5,7 @@
  * @implements {Common.ContentProvider}
  * @unrestricted
  */
-SDK.CSSStyleSheetHeader = class {
+export default class CSSStyleSheetHeader {
   /**
    * @param {!SDK.CSSModel} cssModel
    * @param {!Protocol.CSS.CSSStyleSheetHeader} payload
@@ -170,4 +170,13 @@
   isViaInspector() {
     return this.origin === 'inspector';
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CSSStyleSheetHeader = CSSStyleSheetHeader;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ChildTargetManager.js b/third_party/blink/renderer/devtools/front_end/sdk/ChildTargetManager.js
index c7b726d..5eb79b0 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ChildTargetManager.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/ChildTargetManager.js
@@ -2,10 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+export let _lastAnonymousTargetId = 0;
+
 /**
  * @implements {Protocol.TargetDispatcher}
  */
-SDK.ChildTargetManager = class extends SDK.SDKModel {
+export default class ChildTargetManager extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} parentTarget
    */
@@ -135,8 +137,7 @@
       targetName = targetInfo.title;
     } else if (targetInfo.type !== 'iframe') {
       const parsedURL = targetInfo.url.asParsedURL();
-      targetName = parsedURL ? parsedURL.lastPathComponentWithFragment() :
-                               '#' + (++SDK.ChildTargetManager._lastAnonymousTargetId);
+      targetName = parsedURL ? parsedURL.lastPathComponentWithFragment() : '#' + (++_lastAnonymousTargetId);
     }
 
     let type = SDK.Target.Type.Browser;
@@ -221,9 +222,18 @@
     });
     return {connection, sessionId};
   }
-};
+}
 
-SDK.ChildTargetManager._lastAnonymousTargetId = 0;
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.ChildTargetManager = ChildTargetManager;
+
+SDK.ChildTargetManager._lastAnonymousTargetId = _lastAnonymousTargetId;
 
 /** @type {function({target: !SDK.Target, waitingForDebugger: boolean})|undefined} */
-SDK.ChildTargetManager._attachCallback;
+SDK.ChildTargetManager._attachCallback;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ContentProviders.js b/third_party/blink/renderer/devtools/front_end/sdk/CompilerSourceMappingContentProvider.js
similarity index 91%
rename from third_party/blink/renderer/devtools/front_end/sdk/ContentProviders.js
rename to third_party/blink/renderer/devtools/front_end/sdk/CompilerSourceMappingContentProvider.js
index 203755f..cd90962 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ContentProviders.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CompilerSourceMappingContentProvider.js
@@ -31,7 +31,7 @@
  * @implements {Common.ContentProvider}
  * @unrestricted
  */
-SDK.CompilerSourceMappingContentProvider = class {
+export class CompilerSourceMappingContentProvider {
   /**
    * @param {string} sourceURL
    * @param {!Common.ResourceType} contentType
@@ -79,7 +79,7 @@
      * @param {number} statusCode
      * @param {!Object.<string, string>} headers
      * @param {string} content
-     * @this {SDK.CompilerSourceMappingContentProvider}
+     * @this {CompilerSourceMappingContentProvider}
      */
     function contentLoaded(statusCode, headers, content) {
       if (statusCode >= 400) {
@@ -108,4 +108,13 @@
     }
     return Common.ContentProvider.performSearchInContent(content, query, caseSensitive, isRegex);
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CompilerSourceMappingContentProvider = CompilerSourceMappingContentProvider;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/Connections.js b/third_party/blink/renderer/devtools/front_end/sdk/Connections.js
index d2c0fe6..4674351 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/Connections.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/Connections.js
@@ -5,7 +5,7 @@
 /**
  * @implements {Protocol.Connection}
  */
-SDK.MainConnection = class {
+export class MainConnection {
   constructor() {
     this._onMessage = null;
     this._onDisconnect = null;
@@ -87,12 +87,12 @@
     }
     return Promise.resolve();
   }
-};
+}
 
 /**
  * @implements {Protocol.Connection}
  */
-SDK.WebSocketConnection = class {
+export class WebSocketConnection {
   /**
    * @param {string} url
    * @param {function()} onWebSocketDisconnect
@@ -193,12 +193,12 @@
     });
     return promise;
   }
-};
+}
 
 /**
  * @implements {Protocol.Connection}
  */
-SDK.StubConnection = class {
+export class StubConnection {
   constructor() {
     this._onMessage = null;
     this._onDisconnect = null;
@@ -255,12 +255,12 @@
     this._onMessage = null;
     return Promise.resolve();
   }
-};
+}
 
 /**
  * @implements {Protocol.Connection}
  */
-SDK.ParallelConnection = class {
+export class ParallelConnection {
   /**
    * @param {!Protocol.Connection} connection
    * @param {string} sessionId
@@ -310,33 +310,54 @@
     this._onMessage = null;
     return Promise.resolve();
   }
-};
+}
 
 /**
  * @param {function():!Promise<undefined>} createMainTarget
  * @param {function()} websocketConnectionLost
  * @return {!Promise}
  */
-SDK.initMainConnection = async function(createMainTarget, websocketConnectionLost) {
-  Protocol.Connection.setFactory(SDK._createMainConnection.bind(null, websocketConnectionLost));
+export async function initMainConnection(createMainTarget, websocketConnectionLost) {
+  Protocol.Connection.setFactory(_createMainConnection.bind(null, websocketConnectionLost));
   await createMainTarget();
   Host.InspectorFrontendHost.connectionReady();
   return Promise.resolve();
-};
+}
 
 /**
  * @param {function()} websocketConnectionLost
  * @return {!Protocol.Connection}
  */
-SDK._createMainConnection = function(websocketConnectionLost) {
+export function _createMainConnection(websocketConnectionLost) {
   const wsParam = Root.Runtime.queryParam('ws');
   const wssParam = Root.Runtime.queryParam('wss');
   if (wsParam || wssParam) {
     const ws = wsParam ? `ws://${wsParam}` : `wss://${wssParam}`;
-    return new SDK.WebSocketConnection(ws, websocketConnectionLost);
+    return new WebSocketConnection(ws, websocketConnectionLost);
   } else if (Host.InspectorFrontendHost.isHostedMode()) {
-    return new SDK.StubConnection();
+    return new StubConnection();
   }
 
-  return new SDK.MainConnection();
-};
+  return new MainConnection();
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.MainConnection = MainConnection;
+
+/** @constructor */
+SDK.WebSocketConnection = WebSocketConnection;
+
+/** @constructor */
+SDK.StubConnection = StubConnection;
+
+/** @constructor */
+SDK.ParallelConnection = ParallelConnection;
+
+SDK.initMainConnection = initMainConnection;
+SDK._createMainConnection = _createMainConnection;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ConsoleModel.js b/third_party/blink/renderer/devtools/front_end/sdk/ConsoleModel.js
index 4b6d37e..391e0887 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ConsoleModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/ConsoleModel.js
@@ -28,16 +28,18 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+export const _events = Symbol('SDK.ConsoleModel.events');
+
 /**
  * @implements {SDK.TargetManager.Observer}
  */
-SDK.ConsoleModel = class extends Common.Object {
+export default class ConsoleModel extends Common.Object {
   constructor() {
     super();
 
-    /** @type {!Array.<!SDK.ConsoleMessage>} */
+    /** @type {!Array.<!ConsoleMessage>} */
     this._messages = [];
-    /** @type {!Map<!SDK.RuntimeModel, !Map<number, !SDK.ConsoleMessage>>} */
+    /** @type {!Map<!SDK.RuntimeModel, !Map<number, !ConsoleMessage>>} */
     this._messageByExceptionId = new Map();
     this._warnings = 0;
     this._errors = 0;
@@ -101,7 +103,7 @@
           SDK.RuntimeModel.Events.QueryObjectRequested, this._queryObjectRequested.bind(this, runtimeModel)));
     }
 
-    target[SDK.ConsoleModel._events] = eventListeners;
+    target[_events] = eventListeners;
   }
 
   /**
@@ -113,12 +115,12 @@
     if (runtimeModel) {
       this._messageByExceptionId.delete(runtimeModel);
     }
-    Common.EventTarget.removeEventListeners(target[SDK.ConsoleModel._events] || []);
+    Common.EventTarget.removeEventListeners(target[_events] || []);
   }
 
   /**
    * @param {!SDK.ExecutionContext} executionContext
-   * @param {!SDK.ConsoleMessage} originatingMessage
+   * @param {!ConsoleMessage} originatingMessage
    * @param {string} expression
    * @param {boolean} useCommandLineAPI
    * @param {boolean} awaitPromise
@@ -140,31 +142,29 @@
     }
     await Common.console.showPromise();
     this.dispatchEventToListeners(
-        SDK.ConsoleModel.Events.CommandEvaluated,
+        Events.CommandEvaluated,
         {result: result.object, commandMessage: originatingMessage, exceptionDetails: result.exceptionDetails});
   }
 
   /**
    * @param {!SDK.ExecutionContext} executionContext
    * @param {string} text
-   * @return {!SDK.ConsoleMessage}
+   * @return {!ConsoleMessage}
    */
   addCommandMessage(executionContext, text) {
-    const commandMessage = new SDK.ConsoleMessage(
-        executionContext.runtimeModel, SDK.ConsoleMessage.MessageSource.JS, null, text,
-        SDK.ConsoleMessage.MessageType.Command);
+    const commandMessage =
+        new ConsoleMessage(executionContext.runtimeModel, MessageSource.JS, null, text, MessageType.Command);
     commandMessage.setExecutionContextId(executionContext.id);
     this.addMessage(commandMessage);
     return commandMessage;
   }
 
   /**
-   * @param {!SDK.ConsoleMessage} msg
+   * @param {!ConsoleMessage} msg
    */
   addMessage(msg) {
     msg._pageLoadSequenceNumber = this._pageLoadSequenceNumber;
-    if (msg.source === SDK.ConsoleMessage.MessageSource.ConsoleAPI &&
-        msg.type === SDK.ConsoleMessage.MessageType.Clear) {
+    if (msg.source === MessageSource.ConsoleAPI && msg.type === MessageType.Clear) {
       this._clearIfNecessary();
     }
 
@@ -179,7 +179,7 @@
       modelMap.set(msg._exceptionId, msg);
     }
     this._incrementErrorWarningCount(msg);
-    this.dispatchEventToListeners(SDK.ConsoleModel.Events.MessageAdded, msg);
+    this.dispatchEventToListeners(Events.MessageAdded, msg);
   }
 
   /**
@@ -188,7 +188,7 @@
    */
   _exceptionThrown(runtimeModel, event) {
     const exceptionWithTimestamp = /** @type {!SDK.RuntimeModel.ExceptionWithTimestamp} */ (event.data);
-    const consoleMessage = SDK.ConsoleMessage.fromException(
+    const consoleMessage = ConsoleMessage.fromException(
         runtimeModel, exceptionWithTimestamp.details, undefined, exceptionWithTimestamp.timestamp, undefined);
     consoleMessage.setExceptionId(exceptionWithTimestamp.details.exceptionId);
     this.addMessage(consoleMessage);
@@ -206,8 +206,8 @@
       return;
     }
     this._errors--;
-    exceptionMessage.level = SDK.ConsoleMessage.MessageLevel.Verbose;
-    this.dispatchEventToListeners(SDK.ConsoleModel.Events.MessageUpdated, exceptionMessage);
+    exceptionMessage.level = MessageLevel.Verbose;
+    this.dispatchEventToListeners(Events.MessageUpdated, exceptionMessage);
   }
 
   /**
@@ -216,16 +216,15 @@
    */
   _consoleAPICalled(runtimeModel, event) {
     const call = /** @type {!SDK.RuntimeModel.ConsoleAPICall} */ (event.data);
-    let level = SDK.ConsoleMessage.MessageLevel.Info;
-    if (call.type === SDK.ConsoleMessage.MessageType.Debug) {
-      level = SDK.ConsoleMessage.MessageLevel.Verbose;
-    } else if (
-        call.type === SDK.ConsoleMessage.MessageType.Error || call.type === SDK.ConsoleMessage.MessageType.Assert) {
-      level = SDK.ConsoleMessage.MessageLevel.Error;
-    } else if (call.type === SDK.ConsoleMessage.MessageType.Warning) {
-      level = SDK.ConsoleMessage.MessageLevel.Warning;
-    } else if (call.type === SDK.ConsoleMessage.MessageType.Info || call.type === SDK.ConsoleMessage.MessageType.Log) {
-      level = SDK.ConsoleMessage.MessageLevel.Info;
+    let level = MessageLevel.Info;
+    if (call.type === MessageType.Debug) {
+      level = MessageLevel.Verbose;
+    } else if (call.type === MessageType.Error || call.type === MessageType.Assert) {
+      level = MessageLevel.Error;
+    } else if (call.type === MessageType.Warning) {
+      level = MessageLevel.Warning;
+    } else if (call.type === MessageType.Info || call.type === MessageType.Log) {
+      level = MessageLevel.Info;
     }
     let message = '';
     if (call.args.length && call.args[0].unserializableValue) {
@@ -236,8 +235,8 @@
       message = call.args[0].description;
     }
     const callFrame = call.stackTrace && call.stackTrace.callFrames.length ? call.stackTrace.callFrames[0] : null;
-    const consoleMessage = new SDK.ConsoleMessage(
-        runtimeModel, SDK.ConsoleMessage.MessageSource.ConsoleAPI, level,
+    const consoleMessage = new ConsoleMessage(
+        runtimeModel, MessageSource.ConsoleAPI, level,
         /** @type {string} */ (message), call.type, callFrame ? callFrame.url : undefined,
         callFrame ? callFrame.lineNumber : undefined, callFrame ? callFrame.columnNumber : undefined, call.args,
         call.stackTrace, call.timestamp, call.executionContextId, undefined, undefined, call.context);
@@ -249,9 +248,9 @@
    * @param {!Common.Event} event
    */
   _queryObjectRequested(runtimeModel, event) {
-    const consoleMessage = new SDK.ConsoleMessage(
-        runtimeModel, SDK.ConsoleMessage.MessageSource.ConsoleAPI, SDK.ConsoleMessage.MessageLevel.Info, '',
-        SDK.ConsoleMessage.MessageType.QueryObjectResult, undefined, undefined, undefined, [event.data.objects]);
+    const consoleMessage = new ConsoleMessage(
+        runtimeModel, MessageSource.ConsoleAPI, MessageLevel.Info, '', MessageType.QueryObjectResult, undefined,
+        undefined, undefined, [event.data.objects]);
     this.addMessage(consoleMessage);
   }
 
@@ -278,7 +277,7 @@
   _consoleProfileStarted(cpuProfilerModel, event) {
     const data = /** @type {!SDK.CPUProfilerModel.EventData} */ (event.data);
     this._addConsoleProfileMessage(
-        cpuProfilerModel, SDK.ConsoleMessage.MessageType.Profile, data.scriptLocation,
+        cpuProfilerModel, MessageType.Profile, data.scriptLocation,
         Common.UIString('Profile \'%s\' started.', data.title));
   }
 
@@ -289,7 +288,7 @@
   _consoleProfileFinished(cpuProfilerModel, event) {
     const data = /** @type {!SDK.CPUProfilerModel.EventData} */ (event.data);
     this._addConsoleProfileMessage(
-        cpuProfilerModel, SDK.ConsoleMessage.MessageType.ProfileEnd, data.scriptLocation,
+        cpuProfilerModel, MessageType.ProfileEnd, data.scriptLocation,
         Common.UIString('Profile \'%s\' finished.', data.title));
   }
 
@@ -307,31 +306,31 @@
       lineNumber: scriptLocation.lineNumber,
       columnNumber: scriptLocation.columnNumber || 0
     }];
-    this.addMessage(new SDK.ConsoleMessage(
-        cpuProfilerModel.runtimeModel(), SDK.ConsoleMessage.MessageSource.ConsoleAPI,
-        SDK.ConsoleMessage.MessageLevel.Info, messageText, type, undefined, undefined, undefined, stackTrace));
+    this.addMessage(new ConsoleMessage(
+        cpuProfilerModel.runtimeModel(), MessageSource.ConsoleAPI, MessageLevel.Info, messageText, type, undefined,
+        undefined, undefined, stackTrace));
   }
 
   /**
-   * @param {!SDK.ConsoleMessage} msg
+   * @param {!ConsoleMessage} msg
    */
   _incrementErrorWarningCount(msg) {
-    if (msg.source === SDK.ConsoleMessage.MessageSource.Violation) {
+    if (msg.source === MessageSource.Violation) {
       this._violations++;
       return;
     }
     switch (msg.level) {
-      case SDK.ConsoleMessage.MessageLevel.Warning:
+      case MessageLevel.Warning:
         this._warnings++;
         break;
-      case SDK.ConsoleMessage.MessageLevel.Error:
+      case MessageLevel.Error:
         this._errors++;
         break;
     }
   }
 
   /**
-   * @return {!Array.<!SDK.ConsoleMessage>}
+   * @return {!Array.<!ConsoleMessage>}
    */
   messages() {
     return this._messages;
@@ -353,7 +352,7 @@
     this._errors = 0;
     this._warnings = 0;
     this._violations = 0;
-    this.dispatchEventToListeners(SDK.ConsoleModel.Events.ConsoleCleared);
+    this.dispatchEventToListeners(Events.ConsoleCleared);
   }
 
   /**
@@ -436,10 +435,10 @@
       Common.console.error(message);
     }
   }
-};
+}
 
 /** @enum {symbol} */
-SDK.ConsoleModel.Events = {
+export const Events = {
   ConsoleCleared: Symbol('ConsoleCleared'),
   MessageAdded: Symbol('MessageAdded'),
   MessageUpdated: Symbol('MessageUpdated'),
@@ -450,7 +449,7 @@
 /**
  * @unrestricted
  */
-SDK.ConsoleMessage = class {
+export class ConsoleMessage {
   /**
    * @param {?SDK.RuntimeModel} runtimeModel
    * @param {string} source
@@ -473,9 +472,9 @@
       executionContextId, scriptId, workerId, context) {
     this._runtimeModel = runtimeModel;
     this.source = source;
-    this.level = /** @type {?SDK.ConsoleMessage.MessageLevel} */ (level);
+    this.level = /** @type {?MessageLevel} */ (level);
     this.messageText = messageText;
-    this.type = type || SDK.ConsoleMessage.MessageType.Log;
+    this.type = type || MessageType.Log;
     /** @type {string|undefined} */
     this.url = url || undefined;
     /** @type {number} */
@@ -509,13 +508,12 @@
    * @param {string=} messageType
    * @param {number=} timestamp
    * @param {string=} forceUrl
-   * @return {!SDK.ConsoleMessage}
+   * @return {!ConsoleMessage}
    */
   static fromException(runtimeModel, exceptionDetails, messageType, timestamp, forceUrl) {
-    return new SDK.ConsoleMessage(
-        runtimeModel, SDK.ConsoleMessage.MessageSource.JS, SDK.ConsoleMessage.MessageLevel.Error,
-        SDK.RuntimeModel.simpleTextFromException(exceptionDetails), messageType, forceUrl || exceptionDetails.url,
-        exceptionDetails.lineNumber, exceptionDetails.columnNumber,
+    return new ConsoleMessage(
+        runtimeModel, MessageSource.JS, MessageLevel.Error, SDK.RuntimeModel.simpleTextFromException(exceptionDetails),
+        messageType, forceUrl || exceptionDetails.url, exceptionDetails.lineNumber, exceptionDetails.columnNumber,
         exceptionDetails.exception ?
             [SDK.RemoteObject.fromLocalObject(exceptionDetails.text), exceptionDetails.exception] :
             undefined,
@@ -537,7 +535,7 @@
   }
 
   /**
-   * @param {!SDK.ConsoleMessage} originatingMessage
+   * @param {!ConsoleMessage} originatingMessage
    */
   setOriginatingMessage(originatingMessage) {
     this._originatingConsoleMessage = originatingMessage;
@@ -559,7 +557,7 @@
   }
 
   /**
-   * @return {?SDK.ConsoleMessage}
+   * @return {?ConsoleMessage}
    */
   originatingMessage() {
     return this._originatingConsoleMessage;
@@ -569,38 +567,33 @@
    * @return {boolean}
    */
   isGroupMessage() {
-    return this.type === SDK.ConsoleMessage.MessageType.StartGroup ||
-        this.type === SDK.ConsoleMessage.MessageType.StartGroupCollapsed ||
-        this.type === SDK.ConsoleMessage.MessageType.EndGroup;
+    return this.type === MessageType.StartGroup || this.type === MessageType.StartGroupCollapsed ||
+        this.type === MessageType.EndGroup;
   }
 
   /**
    * @return {boolean}
    */
   isGroupStartMessage() {
-    return this.type === SDK.ConsoleMessage.MessageType.StartGroup ||
-        this.type === SDK.ConsoleMessage.MessageType.StartGroupCollapsed;
+    return this.type === MessageType.StartGroup || this.type === MessageType.StartGroupCollapsed;
   }
 
   /**
    * @return {boolean}
    */
   isErrorOrWarning() {
-    return (
-        this.level === SDK.ConsoleMessage.MessageLevel.Warning || this.level === SDK.ConsoleMessage.MessageLevel.Error);
+    return (this.level === MessageLevel.Warning || this.level === MessageLevel.Error);
   }
 
   /**
    * @return {boolean}
    */
   isGroupable() {
-    const isUngroupableError = this.level === SDK.ConsoleMessage.MessageLevel.Error &&
-        (this.source === SDK.ConsoleMessage.MessageSource.JS ||
-         this.source === SDK.ConsoleMessage.MessageSource.Network);
+    const isUngroupableError = this.level === MessageLevel.Error &&
+        (this.source === MessageSource.JS || this.source === MessageSource.Network);
     return (
-        this.source !== SDK.ConsoleMessage.MessageSource.ConsoleAPI &&
-        this.type !== SDK.ConsoleMessage.MessageType.Command && this.type !== SDK.ConsoleMessage.MessageType.Result &&
-        this.type !== SDK.ConsoleMessage.MessageType.System && !isUngroupableError);
+        this.source !== MessageSource.ConsoleAPI && this.type !== MessageType.Command &&
+        this.type !== MessageType.Result && this.type !== MessageType.System && !isUngroupableError);
   }
 
   /**
@@ -611,7 +604,7 @@
   }
 
   /**
-   * @param {?SDK.ConsoleMessage} msg
+   * @param {?ConsoleMessage} msg
    * @return {boolean}
    */
   isEqual(msg) {
@@ -674,13 +667,13 @@
     }
     return this._isEqualStackTraces(stackTrace1.parent, stackTrace2.parent);
   }
-};
+}
 
 // Note: Keep these constants in sync with the ones in ConsoleTypes.h
 /**
  * @enum {string}
  */
-SDK.ConsoleMessage.MessageSource = {
+export const MessageSource = {
   XML: 'xml',
   JS: 'javascript',
   Network: 'network',
@@ -701,7 +694,7 @@
 /**
  * @enum {string}
  */
-SDK.ConsoleMessage.MessageType = {
+export const MessageType = {
   Log: 'log',
   Debug: 'debug',
   Info: 'info',
@@ -727,30 +720,57 @@
 /**
  * @enum {string}
  */
-SDK.ConsoleMessage.MessageLevel = {
+export const MessageLevel = {
   Verbose: 'verbose',
   Info: 'info',
   Warning: 'warning',
   Error: 'error'
 };
 
-/** @type {!Map<!SDK.ConsoleMessage.MessageSource, string>} */
-SDK.ConsoleMessage.MessageSourceDisplayName = new Map([
-  [SDK.ConsoleMessage.MessageSource.XML, 'xml'], [SDK.ConsoleMessage.MessageSource.JS, 'javascript'],
-  [SDK.ConsoleMessage.MessageSource.Network, 'network'], [SDK.ConsoleMessage.MessageSource.ConsoleAPI, 'console-api'],
-  [SDK.ConsoleMessage.MessageSource.Storage, 'storage'], [SDK.ConsoleMessage.MessageSource.AppCache, 'appcache'],
-  [SDK.ConsoleMessage.MessageSource.Rendering, 'rendering'], [SDK.ConsoleMessage.MessageSource.CSS, 'css'],
-  [SDK.ConsoleMessage.MessageSource.Security, 'security'],
-  [SDK.ConsoleMessage.MessageSource.Deprecation, 'deprecation'], [SDK.ConsoleMessage.MessageSource.Worker, 'worker'],
-  [SDK.ConsoleMessage.MessageSource.Violation, 'violation'],
-  [SDK.ConsoleMessage.MessageSource.Intervention, 'intervention'],
-  [SDK.ConsoleMessage.MessageSource.Recommendation, 'recommendation'],
-  [SDK.ConsoleMessage.MessageSource.Other, 'other']
+/** @type {!Map<!MessageSource, string>} */
+export const MessageSourceDisplayName = new Map([
+  [MessageSource.XML, 'xml'], [MessageSource.JS, 'javascript'], [MessageSource.Network, 'network'],
+  [MessageSource.ConsoleAPI, 'console-api'], [MessageSource.Storage, 'storage'], [MessageSource.AppCache, 'appcache'],
+  [MessageSource.Rendering, 'rendering'], [MessageSource.CSS, 'css'], [MessageSource.Security, 'security'],
+  [MessageSource.Deprecation, 'deprecation'], [MessageSource.Worker, 'worker'], [MessageSource.Violation, 'violation'],
+  [MessageSource.Intervention, 'intervention'], [MessageSource.Recommendation, 'recommendation'],
+  [MessageSource.Other, 'other']
 ]);
 
-SDK.ConsoleModel._events = Symbol('SDK.ConsoleModel.events');
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.ConsoleModel = ConsoleModel;
+
+/** @constructor */
+SDK.ConsoleMessage = ConsoleMessage;
+
+/** @enum {symbol} */
+SDK.ConsoleModel.Events = Events;
+
+/**
+ * @enum {string}
+ */
+SDK.ConsoleMessage.MessageSource = MessageSource;
+
+/**
+ * @enum {string}
+ */
+SDK.ConsoleMessage.MessageType = MessageType;
+
+/**
+ * @enum {string}
+ */
+SDK.ConsoleMessage.MessageLevel = MessageLevel;
+
+SDK.ConsoleMessage.MessageSourceDisplayName = MessageSourceDisplayName;
+SDK.ConsoleModel._events = _events;
 
 /**
  * @type {!SDK.ConsoleModel}
  */
-SDK.consoleModel;
+SDK.consoleModel;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CookieModel.js b/third_party/blink/renderer/devtools/front_end/sdk/CookieModel.js
index 0af455c..05c895b 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CookieModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CookieModel.js
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-SDK.CookieModel = class extends SDK.SDKModel {
+export default class CookieModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -17,7 +17,7 @@
    */
   static cookieMatchesResourceURL(cookie, resourceURL) {
     const url = resourceURL.asParsedURL();
-    if (!url || !SDK.CookieModel.cookieDomainMatchesResourceDomain(cookie.domain(), url.host)) {
+    if (!url || !CookieModel.cookieDomainMatchesResourceDomain(cookie.domain(), url.host)) {
       return false;
     }
     return (
@@ -118,6 +118,15 @@
             cookies.map(cookie => networkAgent.deleteCookies(cookie.name(), undefined, cookie.domain(), cookie.path())))
         .then(callback || function() {});
   }
-};
+}
 
-SDK.SDKModel.register(SDK.CookieModel, SDK.Target.Capability.Network, false);
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CookieModel = CookieModel;
+
+SDK.SDKModel.register(SDK.CookieModel, SDK.Target.Capability.Network, false);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/CookieParser.js b/third_party/blink/renderer/devtools/front_end/sdk/CookieParser.js
index dd197a6..33cdca7 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/CookieParser.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/CookieParser.js
@@ -37,7 +37,7 @@
 /**
  * @unrestricted
  */
-SDK.CookieParser = class {
+export default class CookieParser {
   constructor() {
   }
 
@@ -46,7 +46,7 @@
    * @return {?Array<!SDK.Cookie>}
    */
   static parseCookie(header) {
-    return (new SDK.CookieParser()).parseCookie(header);
+    return (new CookieParser()).parseCookie(header);
   }
 
   /**
@@ -54,7 +54,7 @@
    * @return {?Array<!SDK.Cookie>}
    */
   static parseSetCookie(header) {
-    return (new SDK.CookieParser()).parseSetCookie(header);
+    return (new CookieParser()).parseSetCookie(header);
   }
 
   /**
@@ -77,7 +77,7 @@
       if (kv.key.charAt(0) === '$' && this._lastCookie) {
         this._lastCookie.addAttribute(kv.key.slice(1), kv.value);
       } else if (kv.key.toLowerCase() !== '$version' && typeof kv.value === 'string') {
-        this._addCookie(kv, SDK.Cookie.Type.Request);
+        this._addCookie(kv, Type.Request);
       }
       this._advanceAndCheckCookieDelimiter();
     }
@@ -97,7 +97,7 @@
       if (this._lastCookie) {
         this._lastCookie.addAttribute(kv.key, kv.value);
       } else {
-        this._addCookie(kv, SDK.Cookie.Type.Response);
+        this._addCookie(kv, Type.Response);
       }
       if (this._advanceAndCheckCookieDelimiter()) {
         this._flushCookie();
@@ -133,7 +133,7 @@
   }
 
   /**
-   * @return {?SDK.CookieParser.KeyValue}
+   * @return {?KeyValue}
    */
   _extractKeyValue() {
     if (!this._input || !this._input.length) {
@@ -150,7 +150,7 @@
       return null;
     }
 
-    const result = new SDK.CookieParser.KeyValue(
+    const result = new KeyValue(
         keyValueMatch[1], keyValueMatch[2] && keyValueMatch[2].trim(), this._originalInputLength - this._input.length);
     this._lastCookieLine += keyValueMatch[0];
     this._input = this._input.slice(keyValueMatch[0].length);
@@ -171,8 +171,8 @@
   }
 
   /**
-   * @param {!SDK.CookieParser.KeyValue} keyValue
-   * @param {!SDK.Cookie.Type} type
+   * @param {!KeyValue} keyValue
+   * @param {!Type} type
    */
   _addCookie(keyValue, type) {
     if (this._lastCookie) {
@@ -186,12 +186,12 @@
     this._lastCookiePosition = keyValue.position;
     this._cookies.push(this._lastCookie);
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.CookieParser.KeyValue = class {
+export class KeyValue {
   /**
    * @param {string} key
    * @param {string|undefined} value
@@ -202,17 +202,17 @@
     this.value = value;
     this.position = position;
   }
-};
+}
 
 
 /**
  * @unrestricted
  */
-SDK.Cookie = class {
+export class Cookie {
   /**
    * @param {string} name
    * @param {string} value
-   * @param {?SDK.Cookie.Type} type
+   * @param {?Type} type
    */
   constructor(name, value, type) {
     this._name = name;
@@ -264,7 +264,7 @@
   }
 
   /**
-   * @return {?SDK.Cookie.Type}
+   * @return {?Type}
    */
   type() {
     return this._type;
@@ -402,12 +402,12 @@
   getCookieLine() {
     return this._cookieLine;
   }
-};
+}
 
 /**
  * @enum {number}
  */
-SDK.Cookie.Type = {
+export const Type = {
   Request: 0,
   Response: 1
 };
@@ -415,7 +415,7 @@
 /**
  * @enum {string}
  */
-SDK.Cookie.Attributes = {
+export const Attributes = {
   Name: 'name',
   Value: 'value',
   Size: 'size',
@@ -426,3 +426,28 @@
   Secure: 'secure',
   SameSite: 'sameSite',
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.CookieParser = CookieParser;
+
+/** @constructor */
+SDK.CookieParser.KeyValue = KeyValue;
+
+/** @constructor */
+SDK.Cookie = Cookie;
+
+/**
+ * @enum {number}
+ */
+SDK.Cookie.Type = Type;
+
+/**
+ * @enum {string}
+ */
+SDK.Cookie.Attributes = Attributes;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/DOMDebuggerModel.js b/third_party/blink/renderer/devtools/front_end/sdk/DOMDebuggerModel.js
index 78092b3..bf482925 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/DOMDebuggerModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/DOMDebuggerModel.js
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-SDK.DOMDebuggerModel = class extends SDK.SDKModel {
+export default class DOMDebuggerModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -14,7 +14,7 @@
     this._domModel.addEventListener(SDK.DOMModel.Events.DocumentUpdated, this._documentUpdated, this);
     this._domModel.addEventListener(SDK.DOMModel.Events.NodeRemoved, this._nodeRemoved, this);
 
-    /** @type {!Array<!SDK.DOMDebuggerModel.DOMBreakpoint>} */
+    /** @type {!Array<!DOMBreakpoint>} */
     this._domBreakpoints = [];
     this._domBreakpointsSetting = Common.settings.createLocalSetting('domBreakpoints', []);
     if (this._domModel.existingDocument()) {
@@ -61,7 +61,7 @@
   }
 
   /**
-   * @return {!Array<!SDK.DOMDebuggerModel.DOMBreakpoint>}
+   * @return {!Array<!DOMBreakpoint>}
    */
   domBreakpoints() {
     return this._domBreakpoints.slice();
@@ -79,7 +79,7 @@
   /**
    * @param {!SDK.DOMNode} node
    * @param {!SDK.DOMDebuggerModel.DOMBreakpoint.Type} type
-   * @return {!SDK.DOMDebuggerModel.DOMBreakpoint}
+   * @return {!DOMBreakpoint}
    */
   setDOMBreakpoint(node, type) {
     for (const breakpoint of this._domBreakpoints) {
@@ -88,11 +88,11 @@
         return breakpoint;
       }
     }
-    const breakpoint = new SDK.DOMDebuggerModel.DOMBreakpoint(this, node, type, true);
+    const breakpoint = new DOMBreakpoint(this, node, type, true);
     this._domBreakpoints.push(breakpoint);
     this._saveDOMBreakpoints();
     this._enableDOMBreakpoint(breakpoint);
-    this.dispatchEventToListeners(SDK.DOMDebuggerModel.Events.DOMBreakpointAdded, breakpoint);
+    this.dispatchEventToListeners(Events.DOMBreakpointAdded, breakpoint);
     return breakpoint;
   }
 
@@ -109,7 +109,7 @@
   }
 
   /**
-   * @param {!SDK.DOMDebuggerModel.DOMBreakpoint} breakpoint
+   * @param {!DOMBreakpoint} breakpoint
    * @param {boolean} enabled
    */
   toggleDOMBreakpoint(breakpoint, enabled) {
@@ -122,24 +122,23 @@
     } else {
       this._disableDOMBreakpoint(breakpoint);
     }
-    this.dispatchEventToListeners(SDK.DOMDebuggerModel.Events.DOMBreakpointToggled, breakpoint);
+    this.dispatchEventToListeners(Events.DOMBreakpointToggled, breakpoint);
   }
 
   /**
-   * @param {!SDK.DOMDebuggerModel.DOMBreakpoint} breakpoint
+   * @param {!DOMBreakpoint} breakpoint
    */
   _enableDOMBreakpoint(breakpoint) {
     this._agent.setDOMBreakpoint(breakpoint.node.id, breakpoint.type);
-    breakpoint.node.setMarker(SDK.DOMDebuggerModel.DOMBreakpoint.Marker, true);
+    breakpoint.node.setMarker(Marker, true);
   }
 
   /**
-   * @param {!SDK.DOMDebuggerModel.DOMBreakpoint} breakpoint
+   * @param {!DOMBreakpoint} breakpoint
    */
   _disableDOMBreakpoint(breakpoint) {
     this._agent.removeDOMBreakpoint(breakpoint.node.id, breakpoint.type);
-    breakpoint.node.setMarker(
-        SDK.DOMDebuggerModel.DOMBreakpoint.Marker, this._nodeHasBreakpoints(breakpoint.node) ? true : null);
+    breakpoint.node.setMarker(Marker, this._nodeHasBreakpoints(breakpoint.node) ? true : null);
   }
 
   /**
@@ -185,7 +184,7 @@
   _documentUpdated() {
     const removed = this._domBreakpoints;
     this._domBreakpoints = [];
-    this.dispatchEventToListeners(SDK.DOMDebuggerModel.Events.DOMBreakpointsRemoved, removed);
+    this.dispatchEventToListeners(Events.DOMBreakpointsRemoved, removed);
 
     const currentURL = this._currentURL();
     for (const breakpoint of this._domBreakpointsSetting.get()) {
@@ -197,24 +196,24 @@
     /**
      * @param {!{type: !SDK.DOMDebuggerModel.DOMBreakpoint.Type, enabled: boolean}} breakpoint
      * @param {?number} nodeId
-     * @this {SDK.DOMDebuggerModel}
+     * @this {DOMDebuggerModel}
      */
     function appendBreakpoint(breakpoint, nodeId) {
       const node = nodeId ? this._domModel.nodeForId(nodeId) : null;
       if (!node) {
         return;
       }
-      const domBreakpoint = new SDK.DOMDebuggerModel.DOMBreakpoint(this, node, breakpoint.type, breakpoint.enabled);
+      const domBreakpoint = new DOMBreakpoint(this, node, breakpoint.type, breakpoint.enabled);
       this._domBreakpoints.push(domBreakpoint);
       if (breakpoint.enabled) {
         this._enableDOMBreakpoint(domBreakpoint);
       }
-      this.dispatchEventToListeners(SDK.DOMDebuggerModel.Events.DOMBreakpointAdded, domBreakpoint);
+      this.dispatchEventToListeners(Events.DOMBreakpointAdded, domBreakpoint);
     }
   }
 
   /**
-   * @param {function(!SDK.DOMDebuggerModel.DOMBreakpoint):boolean} filter
+   * @param {function(!DOMBreakpoint):boolean} filter
    */
   _removeDOMBreakpoints(filter) {
     const removed = [];
@@ -236,7 +235,7 @@
     }
     this._domBreakpoints = left;
     this._saveDOMBreakpoints();
-    this.dispatchEventToListeners(SDK.DOMDebuggerModel.Events.DOMBreakpointsRemoved, removed);
+    this.dispatchEventToListeners(Events.DOMBreakpointsRemoved, removed);
   }
 
   /**
@@ -257,20 +256,20 @@
     }
     this._domBreakpointsSetting.set(breakpoints);
   }
-};
-
-SDK.SDKModel.register(SDK.DOMDebuggerModel, SDK.Target.Capability.DOM, false);
+}
 
 /** @enum {symbol} */
-SDK.DOMDebuggerModel.Events = {
+export const Events = {
   DOMBreakpointAdded: Symbol('DOMBreakpointAdded'),
   DOMBreakpointToggled: Symbol('DOMBreakpointToggled'),
   DOMBreakpointsRemoved: Symbol('DOMBreakpointsRemoved'),
 };
 
-SDK.DOMDebuggerModel.DOMBreakpoint = class {
+export const Marker = 'breakpoint-marker';
+
+export class DOMBreakpoint {
   /**
-   * @param {!SDK.DOMDebuggerModel} domDebuggerModel
+   * @param {!DOMDebuggerModel} domDebuggerModel
    * @param {!SDK.DOMNode} node
    * @param {!SDK.DOMDebuggerModel.DOMBreakpoint.Type} type
    * @param {boolean} enabled
@@ -281,16 +280,11 @@
     this.type = type;
     this.enabled = enabled;
   }
-};
+}
 
-/** @typedef {Protocol.DOMDebugger.DOMBreakpointType} */
-SDK.DOMDebuggerModel.DOMBreakpoint.Type = Protocol.DOMDebugger.DOMBreakpointType;
-
-SDK.DOMDebuggerModel.DOMBreakpoint.Marker = 'breakpoint-marker';
-
-SDK.EventListener = class {
+export class EventListener {
   /**
-   * @param {!SDK.DOMDebuggerModel} domDebuggerModel
+   * @param {!DOMDebuggerModel} domDebuggerModel
    * @param {!SDK.RemoteObject} eventTarget
    * @param {string} type
    * @param {boolean} useCapture
@@ -300,7 +294,7 @@
    * @param {?SDK.RemoteObject} originalHandler
    * @param {!SDK.DebuggerModel.Location} location
    * @param {?SDK.RemoteObject} customRemoveFunction
-   * @param {!SDK.EventListener.Origin=} origin
+   * @param {!EventListener.Origin=} origin
    */
   constructor(
       domDebuggerModel, eventTarget, type, useCapture, passive, once, handler, originalHandler, location,
@@ -317,11 +311,11 @@
     const script = location.script();
     this._sourceURL = script ? script.contentURL() : '';
     this._customRemoveFunction = customRemoveFunction;
-    this._origin = origin || SDK.EventListener.Origin.Raw;
+    this._origin = origin || EventListener.Origin.Raw;
   }
 
   /**
-   * @return {!SDK.DOMDebuggerModel}
+   * @return {!DOMDebuggerModel}
    */
   domDebuggerModel() {
     return this._domDebuggerModel;
@@ -387,7 +381,7 @@
    * @return {boolean}
    */
   canRemove() {
-    return !!this._customRemoveFunction || this._origin !== SDK.EventListener.Origin.FrameworkUser;
+    return !!this._customRemoveFunction || this._origin !== EventListener.Origin.FrameworkUser;
   }
 
   /**
@@ -398,7 +392,7 @@
       return Promise.resolve();
     }
 
-    if (this._origin !== SDK.EventListener.Origin.FrameworkUser) {
+    if (this._origin !== EventListener.Origin.FrameworkUser) {
       /**
        * @param {string} type
        * @param {function()} listener
@@ -447,7 +441,7 @@
    * @return {boolean}
    */
   canTogglePassive() {
-    return this._origin !== SDK.EventListener.Origin.FrameworkUser;
+    return this._origin !== EventListener.Origin.FrameworkUser;
   }
 
   /**
@@ -476,14 +470,14 @@
   }
 
   /**
-   * @return {!SDK.EventListener.Origin}
+   * @return {!EventListener.Origin}
    */
   origin() {
     return this._origin;
   }
 
   markAsFramework() {
-    this._origin = SDK.EventListener.Origin.Framework;
+    this._origin = EventListener.Origin.Framework;
   }
 
   /**
@@ -493,16 +487,16 @@
     return this._type === 'touchstart' || this._type === 'touchmove' || this._type === 'mousewheel' ||
         this._type === 'wheel';
   }
-};
+}
 
 /** @enum {string} */
-SDK.EventListener.Origin = {
+EventListener.Origin = {
   Raw: 'Raw',
   Framework: 'Framework',
   FrameworkUser: 'FrameworkUser'
 };
 
-SDK.DOMDebuggerModel.EventListenerBreakpoint = class {
+export class EventListenerBreakpoint {
   /**
    * @param {string} instrumentationName
    * @param {string} eventName
@@ -541,13 +535,13 @@
       return;
     }
     this._enabled = enabled;
-    for (const model of SDK.targetManager.models(SDK.DOMDebuggerModel)) {
+    for (const model of SDK.targetManager.models(DOMDebuggerModel)) {
       this._updateOnModel(model);
     }
   }
 
   /**
-   * @param {!SDK.DOMDebuggerModel} model
+   * @param {!DOMDebuggerModel} model
    */
   _updateOnModel(model) {
     if (this._instrumentationName) {
@@ -573,15 +567,15 @@
   title() {
     return this._title;
   }
-};
+}
 
-SDK.DOMDebuggerModel.EventListenerBreakpoint._listener = 'listener:';
-SDK.DOMDebuggerModel.EventListenerBreakpoint._instrumentation = 'instrumentation:';
+EventListenerBreakpoint._listener = 'listener:';
+EventListenerBreakpoint._instrumentation = 'instrumentation:';
 
 /**
- * @implements {SDK.SDKModelObserver<!SDK.DOMDebuggerModel>}
+ * @implements {SDK.SDKModelObserver<!DOMDebuggerModel>}
  */
-SDK.DOMDebuggerManager = class {
+export class DOMDebuggerManager {
   constructor() {
     this._xhrBreakpointsSetting = Common.settings.createLocalSetting('xhrBreakpoints', []);
     /** @type {!Map<string, boolean>} */
@@ -590,7 +584,7 @@
       this._xhrBreakpoints.set(breakpoint.url, breakpoint.enabled);
     }
 
-    /** @type {!Array<!SDK.DOMDebuggerModel.EventListenerBreakpoint>} */
+    /** @type {!Array<!EventListenerBreakpoint>} */
     this._eventListenerBreakpoints = [];
     this._createInstrumentationBreakpoints(
         Common.UIString('Animation'),
@@ -712,7 +706,7 @@
   _createInstrumentationBreakpoints(category, instrumentationNames) {
     for (const instrumentationName of instrumentationNames) {
       this._eventListenerBreakpoints.push(
-          new SDK.DOMDebuggerModel.EventListenerBreakpoint(instrumentationName, '', [], category, instrumentationName));
+          new EventListenerBreakpoint(instrumentationName, '', [], category, instrumentationName));
     }
   }
 
@@ -724,14 +718,14 @@
   _createEventListenerBreakpoints(category, eventNames, eventTargetNames) {
     for (const eventName of eventNames) {
       this._eventListenerBreakpoints.push(
-          new SDK.DOMDebuggerModel.EventListenerBreakpoint('', eventName, eventTargetNames, category, eventName));
+          new EventListenerBreakpoint('', eventName, eventTargetNames, category, eventName));
     }
   }
 
   /**
    * @param {string} eventName
    * @param {string=} eventTargetName
-   * @return {?SDK.DOMDebuggerModel.EventListenerBreakpoint}
+   * @return {?EventListenerBreakpoint}
    */
   _resolveEventListenerBreakpoint(eventName, eventTargetName) {
     const instrumentationPrefix = 'instrumentation:';
@@ -764,7 +758,7 @@
   }
 
   /**
-   * @return {!Array<!SDK.DOMDebuggerModel.EventListenerBreakpoint>}
+   * @return {!Array<!EventListenerBreakpoint>}
    */
   eventListenerBreakpoints() {
     return this._eventListenerBreakpoints.slice();
@@ -797,7 +791,7 @@
 
   /**
    * @param {!Object} auxData
-   * @return {?SDK.DOMDebuggerModel.EventListenerBreakpoint}
+   * @return {?EventListenerBreakpoint}
    */
   resolveEventListenerBreakpoint(auxData) {
     return this._resolveEventListenerBreakpoint(auxData['eventName'], auxData['targetName']);
@@ -825,7 +819,7 @@
   addXHRBreakpoint(url, enabled) {
     this._xhrBreakpoints.set(url, enabled);
     if (enabled) {
-      for (const model of SDK.targetManager.models(SDK.DOMDebuggerModel)) {
+      for (const model of SDK.targetManager.models(DOMDebuggerModel)) {
         model._agent.setXHRBreakpoint(url);
       }
     }
@@ -839,7 +833,7 @@
     const enabled = this._xhrBreakpoints.get(url);
     this._xhrBreakpoints.delete(url);
     if (enabled) {
-      for (const model of SDK.targetManager.models(SDK.DOMDebuggerModel)) {
+      for (const model of SDK.targetManager.models(DOMDebuggerModel)) {
         model._agent.removeXHRBreakpoint(url);
       }
     }
@@ -852,7 +846,7 @@
    */
   toggleXHRBreakpoint(url, enabled) {
     this._xhrBreakpoints.set(url, enabled);
-    for (const model of SDK.targetManager.models(SDK.DOMDebuggerModel)) {
+    for (const model of SDK.targetManager.models(DOMDebuggerModel)) {
       if (enabled) {
         model._agent.setXHRBreakpoint(url);
       } else {
@@ -864,7 +858,7 @@
 
   /**
    * @override
-   * @param {!SDK.DOMDebuggerModel} domDebuggerModel
+   * @param {!DOMDebuggerModel} domDebuggerModel
    */
   modelAdded(domDebuggerModel) {
     for (const url of this._xhrBreakpoints.keys()) {
@@ -881,11 +875,42 @@
 
   /**
    * @override
-   * @param {!SDK.DOMDebuggerModel} domDebuggerModel
+   * @param {!DOMDebuggerModel} domDebuggerModel
    */
   modelRemoved(domDebuggerModel) {
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.DOMDebuggerModel = DOMDebuggerModel;
+
+/** @enum {symbol} */
+SDK.DOMDebuggerModel.Events = Events;
+
+/** @constructor */
+SDK.DOMDebuggerModel.DOMBreakpoint = DOMBreakpoint;
+
+SDK.DOMDebuggerModel.DOMBreakpoint.Marker = Marker;
+
+/** @constructor */
+SDK.DOMDebuggerModel.EventListenerBreakpoint = EventListenerBreakpoint;
+
+/** @constructor */
+SDK.EventListener = EventListener;
+
+/** @constructor */
+SDK.DOMDebuggerManager = DOMDebuggerManager;
+
+SDK.SDKModel.register(SDK.DOMDebuggerModel, SDK.Target.Capability.DOM, false);
+
+/** @typedef {Protocol.DOMDebugger.DOMBreakpointType} */
+SDK.DOMDebuggerModel.DOMBreakpoint.Type = Protocol.DOMDebugger.DOMBreakpointType;
 
 /** @type {!SDK.DOMDebuggerManager} */
 SDK.domDebuggerManager;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/DOMModel.js b/third_party/blink/renderer/devtools/front_end/sdk/DOMModel.js
index 3da5220..328d028 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/DOMModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/DOMModel.js
@@ -32,17 +32,17 @@
 /**
  * @unrestricted
  */
-SDK.DOMNode = class {
+export class DOMNode {
   /**
-   * @param {!SDK.DOMModel} domModel
+   * @param {!DOMModel} domModel
    */
   constructor(domModel) {
     this._domModel = domModel;
   }
 
   /**
-   * @param {!SDK.DOMModel} domModel
-   * @param {?SDK.DOMDocument} doc
+   * @param {!DOMModel} domModel
+   * @param {?DOMDocument} doc
    * @param {boolean} isInShadowTree
    * @param {!Protocol.DOM.Node} payload
    * @return {!SDK.DOMNode}
@@ -54,7 +54,7 @@
   }
 
   /**
-   * @param {?SDK.DOMDocument} doc
+   * @param {?DOMDocument} doc
    * @param {boolean} isInShadowTree
    * @param {!Protocol.DOM.Node} payload
    */
@@ -114,12 +114,12 @@
     }
 
     if (payload.contentDocument) {
-      this._contentDocument = new SDK.DOMDocument(this._domModel, payload.contentDocument);
+      this._contentDocument = new DOMDocument(this._domModel, payload.contentDocument);
       this._contentDocument.parentNode = this;
       this._children = [];
     } else if ((payload.nodeName === 'IFRAME' || payload.nodeName === 'PORTAL') && payload.frameId) {
       const childTarget = SDK.targetManager.targetById(payload.frameId);
-      const childModel = childTarget ? childTarget.model(SDK.DOMModel) : null;
+      const childModel = childTarget ? childTarget.model(DOMModel) : null;
       if (childModel) {
         this._childDocumentPromiseForTesting = childModel.requestDocument();
       }
@@ -181,7 +181,7 @@
   }
 
   /**
-   * @return {!SDK.DOMModel}
+   * @return {!DOMModel}
    */
   domModel() {
     return this._domModel;
@@ -328,7 +328,7 @@
   }
 
   /**
-   * @return {!Array.<!SDK.DOMNodeShortcut>}
+   * @return {!Array.<!DOMNodeShortcut>}
    */
   distributedNodes() {
     return this._distributedNodes || [];
@@ -719,7 +719,7 @@
     node.parentNode = null;
     this._subtreeMarkerCount -= node._subtreeMarkerCount;
     if (node._subtreeMarkerCount) {
-      this._domModel.dispatchEventToListeners(SDK.DOMModel.Events.MarkersChanged, this);
+      this._domModel.dispatchEventToListeners(Events.MarkersChanged, this);
     }
     this._renumber();
   }
@@ -760,7 +760,7 @@
     this._distributedNodes = [];
     for (const payload of payloads) {
       this._distributedNodes.push(
-          new SDK.DOMNodeShortcut(this._domModel.target(), payload.backendNodeId, payload.nodeType, payload.nodeName));
+          new DOMNodeShortcut(this._domModel.target(), payload.backendNodeId, payload.nodeType, payload.nodeName));
     }
   }
 
@@ -876,7 +876,7 @@
         --node._subtreeMarkerCount;
       }
       for (let node = this; node; node = node.parentNode) {
-        this._domModel.dispatchEventToListeners(SDK.DOMModel.Events.MarkersChanged, node);
+        this._domModel.dispatchEventToListeners(Events.MarkersChanged, node);
       }
       return;
     }
@@ -888,7 +888,7 @@
     }
     this._markers.set(name, value);
     for (let node = this; node; node = node.parentNode) {
-      this._domModel.dispatchEventToListeners(SDK.DOMModel.Events.MarkersChanged, node);
+      this._domModel.dispatchEventToListeners(Events.MarkersChanged, node);
     }
   }
 
@@ -1060,12 +1060,12 @@
     }
     return lowerCaseName;
   }
-};
+}
 
 /**
  * @enum {string}
  */
-SDK.DOMNode.PseudoElementNames = {
+DOMNode.PseudoElementNames = {
   Before: 'before',
   After: 'after'
 };
@@ -1073,25 +1073,22 @@
 /**
  * @enum {string}
  */
-SDK.DOMNode.ShadowRootTypes = {
+DOMNode.ShadowRootTypes = {
   UserAgent: 'user-agent',
   Open: 'open',
   Closed: 'closed'
 };
 
-/** @typedef {{name: string, value: string, _node: SDK.DOMNode}} */
-SDK.DOMNode.Attribute;
-
 /**
  * @unrestricted
  */
-SDK.DeferredDOMNode = class {
+export class DeferredDOMNode {
   /**
    * @param {!SDK.Target} target
    * @param {number} backendNodeId
    */
   constructor(target, backendNodeId) {
-    this._domModel = /** @type {!SDK.DOMModel} */ (target.model(SDK.DOMModel));
+    this._domModel = /** @type {!DOMModel} */ (target.model(DOMModel));
     this._backendNodeId = backendNodeId;
   }
 
@@ -1118,7 +1115,7 @@
   }
 
   /**
-   * @return {!SDK.DOMModel}
+   * @return {!DOMModel}
    */
   domModel() {
     return this._domModel;
@@ -1127,12 +1124,12 @@
   highlight() {
     this._domModel.overlayModel().highlightInOverlay({deferredNode: this});
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.DOMNodeShortcut = class {
+export class DOMNodeShortcut {
   /**
    * @param {!SDK.Target} target
    * @param {number} backendNodeId
@@ -1144,14 +1141,14 @@
     this.nodeName = nodeName;
     this.deferredNode = new SDK.DeferredDOMNode(target, backendNodeId);
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.DOMDocument = class extends SDK.DOMNode {
+export class DOMDocument extends DOMNode {
   /**
-   * @param {!SDK.DOMModel} domModel
+   * @param {!DOMModel} domModel
    * @param {!Protocol.DOM.Node} payload
    */
   constructor(domModel, payload) {
@@ -1160,12 +1157,12 @@
     this.documentURL = payload.documentURL || '';
     this.baseURL = payload.baseURL || '';
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.DOMModel = class extends SDK.SDKModel {
+export default class DOMModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -1176,11 +1173,11 @@
 
     /** @type {!Object.<number, !SDK.DOMNode>} */
     this._idToDOMNode = {};
-    /** @type {?SDK.DOMDocument} */
+    /** @type {?DOMDocument} */
     this._document = null;
     /** @type {!Set<number>} */
     this._attributeLoadNodeIds = new Set();
-    target.registerDOMDispatcher(new SDK.DOMDispatcher(this));
+    target.registerDOMDispatcher(new DOMDispatcher(this));
 
     this._runtimeModel = /** @type {!SDK.RuntimeModel} */ (target.model(SDK.RuntimeModel));
 
@@ -1215,7 +1212,7 @@
   }
 
   static cancelSearch() {
-    for (const domModel of SDK.targetManager.models(SDK.DOMModel)) {
+    for (const domModel of SDK.targetManager.models(DOMModel)) {
       domModel._cancelSearch();
     }
   }
@@ -1224,7 +1221,7 @@
    * @param {!SDK.DOMNode} node
    */
   _scheduleMutationEvent(node) {
-    if (!this.hasEventListeners(SDK.DOMModel.Events.DOMMutated)) {
+    if (!this.hasEventListeners(Events.DOMMutated)) {
       return;
     }
 
@@ -1232,21 +1229,21 @@
     Promise.resolve().then(callObserve.bind(this, node, this._lastMutationId));
 
     /**
-     * @this {SDK.DOMModel}
+     * @this {DOMModel}
      * @param {!SDK.DOMNode} node
      * @param {number} mutationId
      */
     function callObserve(node, mutationId) {
-      if (!this.hasEventListeners(SDK.DOMModel.Events.DOMMutated) || this._lastMutationId !== mutationId) {
+      if (!this.hasEventListeners(Events.DOMMutated) || this._lastMutationId !== mutationId) {
         return;
       }
 
-      this.dispatchEventToListeners(SDK.DOMModel.Events.DOMMutated, node);
+      this.dispatchEventToListeners(Events.DOMMutated, node);
     }
   }
 
   /**
-   * @return {!Promise<!SDK.DOMDocument>}
+   * @return {!Promise<!DOMDocument>}
    */
   requestDocument() {
     if (this._document) {
@@ -1259,7 +1256,7 @@
   }
 
   /**
-   * @return {!Promise<?SDK.DOMDocument>}
+   * @return {!Promise<?DOMDocument>}
    */
   async _requestDocument() {
     const documentPayload = await this._agent.getDocument();
@@ -1289,17 +1286,16 @@
       this._frameOwnerNode._children = [];
       if (this._document) {
         this._document.parentNode = this._frameOwnerNode;
-        this.dispatchEventToListeners(SDK.DOMModel.Events.NodeInserted, this._document);
+        this.dispatchEventToListeners(Events.NodeInserted, this._document);
       } else if (oldDocument) {
-        this.dispatchEventToListeners(
-            SDK.DOMModel.Events.NodeRemoved, {node: oldDocument, parent: this._frameOwnerNode});
+        this.dispatchEventToListeners(Events.NodeRemoved, {node: oldDocument, parent: this._frameOwnerNode});
       }
     }
     return this._document;
   }
 
   /**
-   * @return {?SDK.DOMDocument}
+   * @return {?DOMDocument}
    */
   existingDocument() {
     return this._document;
@@ -1374,7 +1370,7 @@
     }
 
     node._setAttribute(name, value);
-    this.dispatchEventToListeners(SDK.DOMModel.Events.AttrModified, {node: node, name: name});
+    this.dispatchEventToListeners(Events.AttrModified, {node: node, name: name});
     this._scheduleMutationEvent(node);
   }
 
@@ -1388,7 +1384,7 @@
       return;
     }
     node._removeAttribute(name);
-    this.dispatchEventToListeners(SDK.DOMModel.Events.AttrRemoved, {node: node, name: name});
+    this.dispatchEventToListeners(Events.AttrRemoved, {node: node, name: name});
     this._scheduleMutationEvent(node);
   }
 
@@ -1415,7 +1411,7 @@
           return;
         }
         if (node._setAttributesPayload(attributes)) {
-          this.dispatchEventToListeners(SDK.DOMModel.Events.AttrModified, {node: node, name: 'style'});
+          this.dispatchEventToListeners(Events.AttrModified, {node: node, name: 'style'});
           this._scheduleMutationEvent(node);
         }
       });
@@ -1430,7 +1426,7 @@
   _characterDataModified(nodeId, newValue) {
     const node = this._idToDOMNode[nodeId];
     node._nodeValue = newValue;
-    this.dispatchEventToListeners(SDK.DOMModel.Events.CharacterDataModified, node);
+    this.dispatchEventToListeners(Events.CharacterDataModified, node);
     this._scheduleMutationEvent(node);
   }
 
@@ -1458,14 +1454,14 @@
   _setDocument(payload) {
     this._idToDOMNode = {};
     if (payload && 'nodeId' in payload) {
-      this._document = new SDK.DOMDocument(this, payload);
+      this._document = new DOMDocument(this, payload);
     } else {
       this._document = null;
     }
     SDK.domModelUndoStack._dispose(this);
 
     if (!this.parentModel()) {
-      this.dispatchEventToListeners(SDK.DOMModel.Events.DocumentUpdated, this);
+      this.dispatchEventToListeners(Events.DocumentUpdated, this);
     }
   }
 
@@ -1474,7 +1470,7 @@
    */
   _setDetachedRoot(payload) {
     if (payload.nodeName === '#document') {
-      new SDK.DOMDocument(this, payload);
+      new DOMDocument(this, payload);
     } else {
       SDK.DOMNode.create(this, null, false, payload);
     }
@@ -1501,7 +1497,7 @@
   _childNodeCountUpdated(nodeId, newValue) {
     const node = this._idToDOMNode[nodeId];
     node._childNodeCount = newValue;
-    this.dispatchEventToListeners(SDK.DOMModel.Events.ChildNodeCountUpdated, node);
+    this.dispatchEventToListeners(Events.ChildNodeCountUpdated, node);
     this._scheduleMutationEvent(node);
   }
 
@@ -1515,7 +1511,7 @@
     const prev = this._idToDOMNode[prevId];
     const node = parent._insertChild(prev, payload);
     this._idToDOMNode[node.id] = node;
-    this.dispatchEventToListeners(SDK.DOMModel.Events.NodeInserted, node);
+    this.dispatchEventToListeners(Events.NodeInserted, node);
     this._scheduleMutationEvent(node);
   }
 
@@ -1528,7 +1524,7 @@
     const node = this._idToDOMNode[nodeId];
     parent._removeChild(node);
     this._unbind(node);
-    this.dispatchEventToListeners(SDK.DOMModel.Events.NodeRemoved, {node: node, parent: parent});
+    this.dispatchEventToListeners(Events.NodeRemoved, {node: node, parent: parent});
     this._scheduleMutationEvent(node);
   }
 
@@ -1545,7 +1541,7 @@
     node.parentNode = host;
     this._idToDOMNode[node.id] = node;
     host._shadowRoots.unshift(node);
-    this.dispatchEventToListeners(SDK.DOMModel.Events.NodeInserted, node);
+    this.dispatchEventToListeners(Events.NodeInserted, node);
     this._scheduleMutationEvent(node);
   }
 
@@ -1564,7 +1560,7 @@
     }
     host._removeChild(root);
     this._unbind(root);
-    this.dispatchEventToListeners(SDK.DOMModel.Events.NodeRemoved, {node: root, parent: host});
+    this.dispatchEventToListeners(Events.NodeRemoved, {node: root, parent: host});
     this._scheduleMutationEvent(root);
   }
 
@@ -1582,7 +1578,7 @@
     this._idToDOMNode[node.id] = node;
     console.assert(!parent._pseudoElements.get(node.pseudoType()));
     parent._pseudoElements.set(node.pseudoType(), node);
-    this.dispatchEventToListeners(SDK.DOMModel.Events.NodeInserted, node);
+    this.dispatchEventToListeners(Events.NodeInserted, node);
     this._scheduleMutationEvent(node);
   }
 
@@ -1601,7 +1597,7 @@
     }
     parent._removeChild(pseudoElement);
     this._unbind(pseudoElement);
-    this.dispatchEventToListeners(SDK.DOMModel.Events.NodeRemoved, {node: pseudoElement, parent: parent});
+    this.dispatchEventToListeners(Events.NodeRemoved, {node: pseudoElement, parent: parent});
     this._scheduleMutationEvent(pseudoElement);
   }
 
@@ -1615,7 +1611,7 @@
       return;
     }
     insertionPoint._setDistributedNodePayloads(distributedNodes);
-    this.dispatchEventToListeners(SDK.DOMModel.Events.DistributedNodesChanged, insertionPoint);
+    this.dispatchEventToListeners(Events.DistributedNodesChanged, insertionPoint);
     this._scheduleMutationEvent(insertionPoint);
   }
 
@@ -1751,18 +1747,16 @@
   }
 
   /**
-   * @return {?SDK.DOMModel}
+   * @return {?DOMModel}
    */
   parentModel() {
     const parentTarget = this.target().parentTarget();
-    return parentTarget ? parentTarget.model(SDK.DOMModel) : null;
+    return parentTarget ? parentTarget.model(DOMModel) : null;
   }
-};
-
-SDK.SDKModel.register(SDK.DOMModel, SDK.Target.Capability.DOM, true);
+}
 
 /** @enum {symbol} */
-SDK.DOMModel.Events = {
+export const Events = {
   AttrModified: Symbol('AttrModified'),
   AttrRemoved: Symbol('AttrRemoved'),
   CharacterDataModified: Symbol('CharacterDataModified'),
@@ -1775,14 +1769,13 @@
   MarkersChanged: Symbol('MarkersChanged')
 };
 
-
 /**
  * @implements {Protocol.DOMDispatcher}
  * @unrestricted
  */
-SDK.DOMDispatcher = class {
+export class DOMDispatcher {
   /**
-   * @param {!SDK.DOMModel} domModel
+   * @param {!DOMModel} domModel
    */
   constructor(domModel) {
     this._domModel = domModel;
@@ -1912,19 +1905,19 @@
   distributedNodesUpdated(insertionPointId, distributedNodes) {
     this._domModel._distributedNodesUpdated(insertionPointId, distributedNodes);
   }
-};
+}
 
-SDK.DOMModelUndoStack = class {
+export class DOMModelUndoStack {
   constructor() {
-    /** @type {!Array<!SDK.DOMModel>} */
+    /** @type {!Array<!DOMModel>} */
     this._stack = [];
     this._index = 0;
-    /** @type {?SDK.DOMModel} */
+    /** @type {?DOMModel} */
     this._lastModelWithMinorChange = null;
   }
 
   /**
-   * @param {!SDK.DOMModel} model
+   * @param {!DOMModel} model
    * @param {boolean} minorChange
    */
   _markUndoableState(model, minorChange) {
@@ -1979,7 +1972,7 @@
   }
 
   /**
-   * @param {!SDK.DOMModel} model
+   * @param {!DOMModel} model
    */
   _dispose(model) {
     let shift = 0;
@@ -1994,6 +1987,41 @@
       this._lastModelWithMinorChange = null;
     }
   }
-};
+}
 
-SDK.domModelUndoStack = new SDK.DOMModelUndoStack();
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.DOMModel = DOMModel;
+
+/** @enum {symbol} */
+SDK.DOMModel.Events = Events;
+
+/** @constructor */
+SDK.DeferredDOMNode = DeferredDOMNode;
+
+/** @constructor */
+SDK.DOMNodeShortcut = DOMNodeShortcut;
+
+/** @constructor */
+SDK.DOMDocument = DOMDocument;
+
+/** @constructor */
+SDK.DOMDispatcher = DOMDispatcher;
+
+/** @constructor */
+SDK.DOMModelUndoStack = DOMModelUndoStack;
+
+/** @constructor */
+SDK.DOMNode = DOMNode;
+
+SDK.domModelUndoStack = new DOMModelUndoStack();
+
+/** @typedef {{name: string, value: string, _node: SDK.DOMNode}} */
+SDK.DOMNode.Attribute;
+
+SDK.SDKModel.register(DOMModel, SDK.Target.Capability.DOM, true);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/DebuggerModel.js b/third_party/blink/renderer/devtools/front_end/sdk/DebuggerModel.js
index ead515ca..c983db0 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/DebuggerModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/DebuggerModel.js
@@ -31,14 +31,14 @@
 /**
  * @unrestricted
  */
-SDK.DebuggerModel = class extends SDK.SDKModel {
+export default class DebuggerModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
   constructor(target) {
     super(target);
 
-    target.registerDebuggerDispatcher(new SDK.DebuggerDispatcher(this));
+    target.registerDebuggerDispatcher(new DebuggerDispatcher(this));
     this._agent = target.debuggerAgent();
     this._runtimeModel = /** @type {!SDK.RuntimeModel} */ (target.model(SDK.RuntimeModel));
 
@@ -47,7 +47,7 @@
     /** @type {!Map<string, !SDK.Script>} */
     this._sourceMapIdToScript = new Map();
 
-    /** @type {?SDK.DebuggerPausedDetails} */
+    /** @type {?DebuggerPausedDetails} */
     this._debuggerPausedDetails = null;
     /** @type {!Map<string, !SDK.Script>} */
     this._scripts = new Map();
@@ -133,7 +133,7 @@
     if (SDK.DebuggerModel._scheduledPauseOnAsyncCall) {
       this._pauseOnAsyncCall(SDK.DebuggerModel._scheduledPauseOnAsyncCall);
     }
-    this.dispatchEventToListeners(SDK.DebuggerModel.Events.DebuggerWasEnabled, this);
+    this.dispatchEventToListeners(Events.DebuggerWasEnabled, this);
     return enablePromise;
   }
 
@@ -146,7 +146,7 @@
     }
     SDK.DebuggerModel._debuggerIdToModel.set(debuggerId, this);
     this._debuggerId = debuggerId;
-    this.dispatchEventToListeners(SDK.DebuggerModel.Events.DebuggerIsReadyToPause, this);
+    this.dispatchEventToListeners(Events.DebuggerIsReadyToPause, this);
   }
 
   /**
@@ -158,7 +158,7 @@
 
   /**
    * @param {string} debuggerId
-   * @return {?SDK.DebuggerModel}
+   * @return {?DebuggerModel}
    */
   static modelForDebuggerId(debuggerId) {
     return SDK.DebuggerModel._debuggerIdToModel.get(debuggerId) || null;
@@ -177,7 +177,7 @@
     this._isPausing = false;
     this._asyncStackTracesStateChanged();
     this.globalObjectCleared();
-    this.dispatchEventToListeners(SDK.DebuggerModel.Events.DebuggerWasDisabled);
+    this.dispatchEventToListeners(Events.DebuggerWasDisabled);
     SDK.DebuggerModel._debuggerIdToModel.delete(this._debuggerId);
     return disablePromise;
   }
@@ -208,11 +208,11 @@
   _pauseOnExceptionStateChanged() {
     let state;
     if (!Common.moduleSetting('pauseOnExceptionEnabled').get()) {
-      state = SDK.DebuggerModel.PauseOnExceptionsState.DontPauseOnExceptions;
+      state = PauseOnExceptionsState.DontPauseOnExceptions;
     } else if (Common.moduleSetting('pauseOnCaughtException').get()) {
-      state = SDK.DebuggerModel.PauseOnExceptionsState.PauseOnAllExceptions;
+      state = PauseOnExceptionsState.PauseOnAllExceptions;
     } else {
-      state = SDK.DebuggerModel.PauseOnExceptionsState.PauseOnUncaughtExceptions;
+      state = PauseOnExceptionsState.PauseOnUncaughtExceptions;
     }
 
     this._agent.setPauseOnExceptions(state);
@@ -299,7 +299,7 @@
     }
     let locations = [];
     if (response.locations) {
-      locations = response.locations.map(payload => SDK.DebuggerModel.Location.fromPayload(this, payload));
+      locations = response.locations.map(payload => Location.fromPayload(this, payload));
     }
     return {locations: locations, breakpointId: response.breakpointId};
   }
@@ -325,7 +325,7 @@
     }
     let locations = [];
     if (response.locations) {
-      locations = response.locations.map(payload => SDK.DebuggerModel.Location.fromPayload(this, payload));
+      locations = response.locations.map(payload => Location.fromPayload(this, payload));
     }
     return {locations: locations, breakpointId: response.breakpointId};
   }
@@ -346,7 +346,7 @@
     }
     let actualLocation = [];
     if (response.actualLocation) {
-      actualLocation = [SDK.DebuggerModel.Location.fromPayload(this, response.actualLocation)];
+      actualLocation = [Location.fromPayload(this, response.actualLocation)];
     }
     return {locations: actualLocation, breakpointId: response.breakpointId};
   }
@@ -363,10 +363,10 @@
   }
 
   /**
-   * @param {!SDK.DebuggerModel.Location} startLocation
-   * @param {?SDK.DebuggerModel.Location} endLocation
+   * @param {!Location} startLocation
+   * @param {?Location} endLocation
    * @param {boolean} restrictToFunction
-   * @return {!Promise<!Array<!SDK.DebuggerModel.BreakLocation>>}
+   * @return {!Promise<!Array<!BreakLocation>>}
    */
   async getPossibleBreakpoints(startLocation, endLocation, restrictToFunction) {
     const response = await this._agent.invoke_getPossibleBreakpoints({
@@ -377,7 +377,7 @@
     if (response[Protocol.Error] || !response.locations) {
       return [];
     }
-    return response.locations.map(location => SDK.DebuggerModel.BreakLocation.fromPayload(this, location));
+    return response.locations.map(location => BreakLocation.fromPayload(this, location));
   }
 
   /**
@@ -394,15 +394,14 @@
    * @param {!Protocol.Debugger.Location} location
    */
   _breakpointResolved(breakpointId, location) {
-    this._breakpointResolvedEventTarget.dispatchEventToListeners(
-        breakpointId, SDK.DebuggerModel.Location.fromPayload(this, location));
+    this._breakpointResolvedEventTarget.dispatchEventToListeners(breakpointId, Location.fromPayload(this, location));
   }
 
   globalObjectCleared() {
     this._setDebuggerPausedDetails(null);
     this._reset();
     // TODO(dgozman): move clients to ExecutionContextDestroyed/ScriptCollected events.
-    this.dispatchEventToListeners(SDK.DebuggerModel.Events.GlobalObjectCleared, this);
+    this.dispatchEventToListeners(Events.GlobalObjectCleared, this);
   }
 
   _reset() {
@@ -494,21 +493,21 @@
   }
 
   /**
-   * @return {?Array.<!SDK.DebuggerModel.CallFrame>}
+   * @return {?Array.<!CallFrame>}
    */
   get callFrames() {
     return this._debuggerPausedDetails ? this._debuggerPausedDetails.callFrames : null;
   }
 
   /**
-   * @return {?SDK.DebuggerPausedDetails}
+   * @return {?DebuggerPausedDetails}
    */
   debuggerPausedDetails() {
     return this._debuggerPausedDetails;
   }
 
   /**
-   * @param {?SDK.DebuggerPausedDetails} debuggerPausedDetails
+   * @param {?DebuggerPausedDetails} debuggerPausedDetails
    * @return {boolean}
    */
   _setDebuggerPausedDetails(debuggerPausedDetails) {
@@ -520,7 +519,7 @@
           return false;
         }
       }
-      this.dispatchEventToListeners(SDK.DebuggerModel.Events.DebuggerPaused, this);
+      this.dispatchEventToListeners(Events.DebuggerPaused, this);
     }
     if (debuggerPausedDetails) {
       this.setSelectedCallFrame(debuggerPausedDetails.callFrames[0]);
@@ -531,7 +530,7 @@
   }
 
   /**
-   * @param {?function(!SDK.DebuggerPausedDetails):boolean} callback
+   * @param {?function(!DebuggerPausedDetails):boolean} callback
    */
   setBeforePausedCallback(callback) {
     this._beforePausedCallback = callback;
@@ -560,8 +559,8 @@
       return;
     }
 
-    const pausedDetails = new SDK.DebuggerPausedDetails(
-        this, callFrames, reason, auxData, breakpointIds, asyncStackTrace, asyncStackTraceId);
+    const pausedDetails =
+        new DebuggerPausedDetails(this, callFrames, reason, auxData, breakpointIds, asyncStackTrace, asyncStackTraceId);
 
     if (pausedDetails && this._continueToLocationCallback) {
       const callback = this._continueToLocationCallback;
@@ -580,7 +579,7 @@
 
   _resumedScript() {
     this._setDebuggerPausedDetails(null);
-    this.dispatchEventToListeners(SDK.DebuggerModel.Events.DebuggerResumed, this);
+    this.dispatchEventToListeners(Events.DebuggerResumed, this);
   }
 
   /**
@@ -618,7 +617,7 @@
         this._internString(hash), isContentScript, isLiveEdit, sourceMapURL, hasSourceURLComment, length,
         originStackTrace);
     this._registerScript(script);
-    this.dispatchEventToListeners(SDK.DebuggerModel.Events.ParsedScriptSource, script);
+    this.dispatchEventToListeners(Events.ParsedScriptSource, script);
 
     const sourceMapId =
         SDK.DebuggerModel._sourceMapId(script.executionContextId, script.sourceURL, script.sourceMapURL);
@@ -707,7 +706,7 @@
     const scriptsToDiscard = this._discardableScripts.splice(0, 100);
     for (const script of scriptsToDiscard) {
       this._unregisterScript(script);
-      this.dispatchEventToListeners(SDK.DebuggerModel.Events.DiscardedAnonymousScriptSource, script);
+      this.dispatchEventToListeners(Events.DiscardedAnonymousScriptSource, script);
     }
   }
 
@@ -715,17 +714,17 @@
    * @param {!SDK.Script} script
    * @param {number} lineNumber
    * @param {number} columnNumber
-   * @return {?SDK.DebuggerModel.Location}
+   * @return {?Location}
    */
   createRawLocation(script, lineNumber, columnNumber) {
-    return new SDK.DebuggerModel.Location(this, script.scriptId, lineNumber, columnNumber);
+    return new Location(this, script.scriptId, lineNumber, columnNumber);
   }
 
   /**
    * @param {string} sourceURL
    * @param {number} lineNumber
    * @param {number} columnNumber
-   * @return {?SDK.DebuggerModel.Location}
+   * @return {?Location}
    */
   createRawLocationByURL(sourceURL, lineNumber, columnNumber) {
     let closestScript = null;
@@ -744,15 +743,14 @@
       closestScript = script;
       break;
     }
-    return closestScript ? new SDK.DebuggerModel.Location(this, closestScript.scriptId, lineNumber, columnNumber) :
-                           null;
+    return closestScript ? new Location(this, closestScript.scriptId, lineNumber, columnNumber) : null;
   }
 
   /**
    * @param {!Protocol.Runtime.ScriptId} scriptId
    * @param {number} lineNumber
    * @param {number} columnNumber
-   * @return {?SDK.DebuggerModel.Location}
+   * @return {?Location}
    */
   createRawLocationByScriptId(scriptId, lineNumber, columnNumber) {
     const script = this.scriptForId(scriptId);
@@ -761,7 +759,7 @@
 
   /**
    * @param {!Protocol.Runtime.StackTrace} stackTrace
-   * @return {!Array<!SDK.DebuggerModel.Location>}
+   * @return {!Array<!Location>}
    */
   createRawLocationsByStackTrace(stackTrace) {
     const frames = [];
@@ -797,18 +795,18 @@
   }
 
   /**
-   * @param {?SDK.DebuggerModel.CallFrame} callFrame
+   * @param {?CallFrame} callFrame
    */
   setSelectedCallFrame(callFrame) {
     if (this._selectedCallFrame === callFrame) {
       return;
     }
     this._selectedCallFrame = callFrame;
-    this.dispatchEventToListeners(SDK.DebuggerModel.Events.CallFrameSelected, this);
+    this.dispatchEventToListeners(Events.CallFrameSelected, this);
   }
 
   /**
-   * @return {?SDK.DebuggerModel.CallFrame}
+   * @return {?CallFrame}
    */
   selectedCallFrame() {
     return this._selectedCallFrame;
@@ -833,7 +831,7 @@
     /**
      * @param {!SDK.GetPropertiesResult} response
      * @return {?SDK.DebuggerModel.FunctionDetails}
-     * @this {!SDK.DebuggerModel}
+     * @this {!DebuggerModel}
      */
     function buildDetails(response) {
       if (!response) {
@@ -952,32 +950,27 @@
     }
     return this._stringMap.get(string);
   }
-};
+}
 
 /** @type {!Map<string, !SDK.DebuggerModel>} */
-SDK.DebuggerModel._debuggerIdToModel = new Map();
+export const _debuggerIdToModel = new Map();
 
 /** @type {?Protocol.Runtime.StackTraceId} */
-SDK.DebuggerModel._scheduledPauseOnAsyncCall = null;
-
-SDK.SDKModel.register(SDK.DebuggerModel, SDK.Target.Capability.JS, true);
-
-/** @typedef {{location: ?SDK.DebuggerModel.Location, functionName: string}} */
-SDK.DebuggerModel.FunctionDetails;
+export const _scheduledPauseOnAsyncCall = null;
 
 /**
  * Keep these in sync with WebCore::V8Debugger
  *
  * @enum {string}
  */
-SDK.DebuggerModel.PauseOnExceptionsState = {
+export const PauseOnExceptionsState = {
   DontPauseOnExceptions: 'none',
   PauseOnAllExceptions: 'all',
   PauseOnUncaughtExceptions: 'uncaught'
 };
 
 /** @enum {symbol} */
-SDK.DebuggerModel.Events = {
+export const Events = {
   DebuggerWasEnabled: Symbol('DebuggerWasEnabled'),
   DebuggerWasDisabled: Symbol('DebuggerWasDisabled'),
   DebuggerPaused: Symbol('DebuggerPaused'),
@@ -992,7 +985,7 @@
 };
 
 /** @enum {string} */
-SDK.DebuggerModel.BreakReason = {
+export const BreakReason = {
   DOM: 'DOM',
   EventListener: 'EventListener',
   XHR: 'XHR',
@@ -1005,37 +998,30 @@
 };
 
 /** @enum {string} */
-SDK.DebuggerModel.BreakLocationType = {
+export const BreakLocationType = {
   Return: 'return',
   Call: 'call',
   DebuggerStatement: 'debuggerStatement'
 };
 
-SDK.DebuggerEventTypes = {
+export const DebuggerEventTypes = {
   JavaScriptPause: 0,
   JavaScriptBreakpoint: 1,
   NativeBreakpoint: 2
 };
 
-SDK.DebuggerModel.ContinueToLocationTargetCallFrames = {
+export const ContinueToLocationTargetCallFrames = {
   Any: 'any',
   Current: 'current'
 };
 
-/** @typedef {{
- *    breakpointId: ?Protocol.Debugger.BreakpointId,
- *    locations: !Array<!SDK.DebuggerModel.Location>
- *  }}
- */
-SDK.DebuggerModel.SetBreakpointResult;
-
 /**
  * @extends {Protocol.DebuggerDispatcher}
  * @unrestricted
  */
-SDK.DebuggerDispatcher = class {
+export class DebuggerDispatcher {
   /**
-   * @param {!SDK.DebuggerModel} debuggerModel
+   * @param {!DebuggerModel} debuggerModel
    */
   constructor(debuggerModel) {
     this._debuggerModel = debuggerModel;
@@ -1122,14 +1108,14 @@
   breakpointResolved(breakpointId, location) {
     this._debuggerModel._breakpointResolved(breakpointId, location);
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.DebuggerModel.Location = class {
+export class Location {
   /**
-   * @param {!SDK.DebuggerModel} debuggerModel
+   * @param {!DebuggerModel} debuggerModel
    * @param {string} scriptId
    * @param {number} lineNumber
    * @param {number=} columnNumber
@@ -1142,12 +1128,12 @@
   }
 
   /**
-   * @param {!SDK.DebuggerModel} debuggerModel
+   * @param {!DebuggerModel} debuggerModel
    * @param {!Protocol.Debugger.Location} payload
-   * @return {!SDK.DebuggerModel.Location}
+   * @return {!Location}
    */
   static fromPayload(debuggerModel, payload) {
-    return new SDK.DebuggerModel.Location(debuggerModel, payload.scriptId, payload.lineNumber, payload.columnNumber);
+    return new Location(debuggerModel, payload.scriptId, payload.lineNumber, payload.columnNumber);
   }
 
   /**
@@ -1171,13 +1157,12 @@
     if (pausedCallback) {
       this.debuggerModel._continueToLocationCallback = this._paused.bind(this, pausedCallback);
     }
-    this.debuggerModel._agent.continueToLocation(
-        this.payload(), SDK.DebuggerModel.ContinueToLocationTargetCallFrames.Current);
+    this.debuggerModel._agent.continueToLocation(this.payload(), ContinueToLocationTargetCallFrames.Current);
   }
 
   /**
    * @param {function()|undefined} pausedCallback
-   * @param {!SDK.DebuggerPausedDetails} debuggerPausedDetails
+   * @param {!DebuggerPausedDetails} debuggerPausedDetails
    * @return {boolean}
    */
   _paused(pausedCallback, debuggerPausedDetails) {
@@ -1196,14 +1181,14 @@
   id() {
     return this.debuggerModel.target().id() + ':' + this.scriptId + ':' + this.lineNumber + ':' + this.columnNumber;
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.DebuggerModel.BreakLocation = class extends SDK.DebuggerModel.Location {
+export class BreakLocation extends Location {
   /**
-   * @param {!SDK.DebuggerModel} debuggerModel
+   * @param {!DebuggerModel} debuggerModel
    * @param {string} scriptId
    * @param {number} lineNumber
    * @param {number=} columnNumber
@@ -1218,22 +1203,21 @@
 
   /**
    * @override
-   * @param {!SDK.DebuggerModel} debuggerModel
+   * @param {!DebuggerModel} debuggerModel
    * @param {!Protocol.Debugger.BreakLocation} payload
-   * @return {!SDK.DebuggerModel.BreakLocation}
+   * @return {!BreakLocation}
    */
   static fromPayload(debuggerModel, payload) {
-    return new SDK.DebuggerModel.BreakLocation(
-        debuggerModel, payload.scriptId, payload.lineNumber, payload.columnNumber, payload.type);
+    return new BreakLocation(debuggerModel, payload.scriptId, payload.lineNumber, payload.columnNumber, payload.type);
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.DebuggerModel.CallFrame = class {
+export class CallFrame {
   /**
-   * @param {!SDK.DebuggerModel} debuggerModel
+   * @param {!DebuggerModel} debuggerModel
    * @param {!SDK.Script} script
    * @param {!Protocol.Debugger.CallFrame} payload
    */
@@ -1241,27 +1225,27 @@
     this.debuggerModel = debuggerModel;
     this._script = script;
     this._payload = payload;
-    this._location = SDK.DebuggerModel.Location.fromPayload(debuggerModel, payload.location);
+    this._location = Location.fromPayload(debuggerModel, payload.location);
     this._scopeChain = [];
     this._localScope = null;
     for (let i = 0; i < payload.scopeChain.length; ++i) {
-      const scope = new SDK.DebuggerModel.Scope(this, i);
+      const scope = new Scope(this, i);
       this._scopeChain.push(scope);
       if (scope.type() === Protocol.Debugger.ScopeType.Local) {
         this._localScope = scope;
       }
     }
     if (payload.functionLocation) {
-      this._functionLocation = SDK.DebuggerModel.Location.fromPayload(debuggerModel, payload.functionLocation);
+      this._functionLocation = Location.fromPayload(debuggerModel, payload.functionLocation);
     }
     this._returnValue =
         payload.returnValue ? this.debuggerModel._runtimeModel.createRemoteObject(payload.returnValue) : null;
   }
 
   /**
-   * @param {!SDK.DebuggerModel} debuggerModel
+   * @param {!DebuggerModel} debuggerModel
    * @param {!Array.<!Protocol.Debugger.CallFrame>} callFrames
-   * @return {!Array.<!SDK.DebuggerModel.CallFrame>}
+   * @return {!Array.<!CallFrame>}
    */
   static fromPayloadArray(debuggerModel, callFrames) {
     const result = [];
@@ -1269,7 +1253,7 @@
       const callFrame = callFrames[i];
       const script = debuggerModel.scriptForId(callFrame.location.scriptId);
       if (script) {
-        result.push(new SDK.DebuggerModel.CallFrame(debuggerModel, script, callFrame));
+        result.push(new CallFrame(debuggerModel, script, callFrame));
       }
     }
     return result;
@@ -1290,14 +1274,14 @@
   }
 
   /**
-   * @return {!Array.<!SDK.DebuggerModel.Scope>}
+   * @return {!Array.<!Scope>}
    */
   scopeChain() {
     return this._scopeChain;
   }
 
   /**
-   * @return {?SDK.DebuggerModel.Scope}
+   * @return {?Scope}
    */
   localScope() {
     return this._localScope;
@@ -1347,14 +1331,14 @@
   }
 
   /**
-   * @return {!SDK.DebuggerModel.Location}
+   * @return {!Location}
    */
   location() {
     return this._location;
   }
 
   /**
-   * @return {?SDK.DebuggerModel.Location}
+   * @return {?Location}
    */
   functionLocation() {
     return this._functionLocation || null;
@@ -1399,15 +1383,14 @@
       this.debuggerModel.stepInto();
     }
   }
-};
-
+}
 
 /**
  * @unrestricted
  */
-SDK.DebuggerModel.Scope = class {
+export class Scope {
   /**
-   * @param {!SDK.DebuggerModel.CallFrame} callFrame
+   * @param {!CallFrame} callFrame
    * @param {number} ordinal
    */
   constructor(callFrame, ordinal) {
@@ -1416,16 +1399,14 @@
     this._type = this._payload.type;
     this._name = this._payload.name;
     this._ordinal = ordinal;
-    this._startLocation = this._payload.startLocation ?
-        SDK.DebuggerModel.Location.fromPayload(callFrame.debuggerModel, this._payload.startLocation) :
-        null;
-    this._endLocation = this._payload.endLocation ?
-        SDK.DebuggerModel.Location.fromPayload(callFrame.debuggerModel, this._payload.endLocation) :
-        null;
+    this._startLocation =
+        this._payload.startLocation ? Location.fromPayload(callFrame.debuggerModel, this._payload.startLocation) : null;
+    this._endLocation =
+        this._payload.endLocation ? Location.fromPayload(callFrame.debuggerModel, this._payload.endLocation) : null;
   }
 
   /**
-   * @return {!SDK.DebuggerModel.CallFrame}
+   * @return {!CallFrame}
    */
   callFrame() {
     return this._callFrame;
@@ -1472,14 +1453,14 @@
   }
 
   /**
-   * @return {?SDK.DebuggerModel.Location}
+   * @return {?Location}
    */
   startLocation() {
     return this._startLocation;
   }
 
   /**
-   * @return {?SDK.DebuggerModel.Location}
+   * @return {?Location}
    */
   endLocation() {
     return this._endLocation;
@@ -1514,14 +1495,14 @@
         this._type !== Protocol.Debugger.ScopeType.With && this._type !== Protocol.Debugger.ScopeType.Global;
     return declarativeScope ? '' : (this._payload.object.description || '');
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.DebuggerPausedDetails = class {
+export class DebuggerPausedDetails {
   /**
-   * @param {!SDK.DebuggerModel} debuggerModel
+   * @param {!DebuggerModel} debuggerModel
    * @param {!Array.<!Protocol.Debugger.CallFrame>} callFrames
    * @param {string} reason
    * @param {!Object|undefined} auxData
@@ -1531,7 +1512,7 @@
    */
   constructor(debuggerModel, callFrames, reason, auxData, breakpointIds, asyncStackTrace, asyncStackTraceId) {
     this.debuggerModel = debuggerModel;
-    this.callFrames = SDK.DebuggerModel.CallFrame.fromPayloadArray(debuggerModel, callFrames);
+    this.callFrames = CallFrame.fromPayloadArray(debuggerModel, callFrames);
     this.reason = reason;
     this.auxData = auxData;
     this.breakpointIds = breakpointIds;
@@ -1545,8 +1526,7 @@
    * @return {?SDK.RemoteObject}
    */
   exception() {
-    if (this.reason !== SDK.DebuggerModel.BreakReason.Exception &&
-        this.reason !== SDK.DebuggerModel.BreakReason.PromiseRejection) {
+    if (this.reason !== BreakReason.Exception && this.reason !== BreakReason.PromiseRejection) {
       return null;
     }
     return this.debuggerModel._runtimeModel.createRemoteObject(
@@ -1573,4 +1553,65 @@
     }
     return asyncStackTrace;
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.DebuggerModel = DebuggerModel;
+
+/** @enum {string} */
+SDK.DebuggerModel.PauseOnExceptionsState = PauseOnExceptionsState;
+
+/** @enum {symbol} */
+SDK.DebuggerModel.Events = Events;
+
+/** @enum {string} */
+SDK.DebuggerModel.BreakReason = BreakReason;
+
+/** @enum {string} */
+SDK.DebuggerModel.BreakLocationType = BreakLocationType;
+
+SDK.DebuggerModel.ContinueToLocationTargetCallFrames = ContinueToLocationTargetCallFrames;
+
+/** @constructor */
+SDK.DebuggerModel.Location = Location;
+
+/** @constructor */
+SDK.DebuggerModel.BreakLocation = BreakLocation;
+
+/** @constructor */
+SDK.DebuggerModel.CallFrame = CallFrame;
+
+/** @constructor */
+SDK.DebuggerModel.Scope = Scope;
+
+/** @constructor */
+SDK.DebuggerPausedDetails = DebuggerPausedDetails;
+
+/** @constructor */
+SDK.DebuggerDispatcher = DebuggerDispatcher;
+
+SDK.DebuggerEventTypes = DebuggerEventTypes;
+
+SDK.SDKModel.register(SDK.DebuggerModel, SDK.Target.Capability.JS, true);
+
+/** @typedef {{location: ?Location, functionName: string}} */
+SDK.DebuggerModel.FunctionDetails;
+
+/** @typedef {{
+ *    breakpointId: ?Protocol.Debugger.BreakpointId,
+ *    locations: !Array<!Location>
+ *  }}
+ */
+SDK.DebuggerModel.SetBreakpointResult;
+
+/** @type {!Map<string, !SDK.DebuggerModel>} */
+SDK.DebuggerModel._debuggerIdToModel = _debuggerIdToModel;
+
+/** @type {?Protocol.Runtime.StackTraceId} */
+SDK.DebuggerModel._scheduledPauseOnAsyncCall = _scheduledPauseOnAsyncCall;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/EmulationModel.js b/third_party/blink/renderer/devtools/front_end/sdk/EmulationModel.js
index baa59bf6..da07a4e 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/EmulationModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/EmulationModel.js
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-SDK.EmulationModel = class extends SDK.SDKModel {
+export default class EmulationModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -90,7 +90,7 @@
   }
 
   /**
-   * @param {?SDK.EmulationModel.Geolocation} geolocation
+   * @param {?Geolocation} geolocation
    */
   emulateGeolocation(geolocation) {
     if (!geolocation) {
@@ -102,12 +102,12 @@
       this._emulationAgent.setGeolocationOverride();
     } else {
       this._emulationAgent.setGeolocationOverride(
-          geolocation.latitude, geolocation.longitude, SDK.EmulationModel.Geolocation.DefaultMockAccuracy);
+          geolocation.latitude, geolocation.longitude, Geolocation.DefaultMockAccuracy);
     }
   }
 
   /**
-   * @param {?SDK.EmulationModel.DeviceOrientation} deviceOrientation
+   * @param {?DeviceOrientation} deviceOrientation
    */
   emulateDeviceOrientation(deviceOrientation) {
     if (deviceOrientation) {
@@ -195,11 +195,9 @@
     ];
     this._emulateCSSMedia(type, features);
   }
-};
+}
 
-SDK.SDKModel.register(SDK.EmulationModel, SDK.Target.Capability.Emulation, true);
-
-SDK.EmulationModel.Geolocation = class {
+export class Geolocation {
   /**
    * @param {number} latitude
    * @param {number} longitude
@@ -212,7 +210,7 @@
   }
 
   /**
-   * @return {!SDK.EmulationModel.Geolocation}
+   * @return {!Geolocation}
    */
   static parseSetting(value) {
     if (value) {
@@ -220,27 +218,26 @@
       if (splitError.length === 2) {
         const splitPosition = splitError[0].split('@');
         if (splitPosition.length === 2) {
-          return new SDK.EmulationModel.Geolocation(
-              parseFloat(splitPosition[0]), parseFloat(splitPosition[1]), !!splitError[1]);
+          return new Geolocation(parseFloat(splitPosition[0]), parseFloat(splitPosition[1]), !!splitError[1]);
         }
       }
     }
-    return new SDK.EmulationModel.Geolocation(0, 0, false);
+    return new Geolocation(0, 0, false);
   }
 
   /**
    * @param {string} latitudeString
    * @param {string} longitudeString
    * @param {string} errorStatus
-   * @return {?SDK.EmulationModel.Geolocation}
+   * @return {?Geolocation}
    */
   static parseUserInput(latitudeString, longitudeString, errorStatus) {
     if (!latitudeString && !longitudeString) {
       return null;
     }
 
-    const {valid: isLatitudeValid} = SDK.EmulationModel.Geolocation.latitudeValidator(latitudeString);
-    const {valid: isLongitudeValid} = SDK.EmulationModel.Geolocation.longitudeValidator(longitudeString);
+    const {valid: isLatitudeValid} = Geolocation.latitudeValidator(latitudeString);
+    const {valid: isLongitudeValid} = Geolocation.longitudeValidator(longitudeString);
 
     if (!isLatitudeValid && !isLongitudeValid) {
       return null;
@@ -248,7 +245,7 @@
 
     const latitude = isLatitudeValid ? parseFloat(latitudeString) : -1;
     const longitude = isLongitudeValid ? parseFloat(longitudeString) : -1;
-    return new SDK.EmulationModel.Geolocation(latitude, longitude, !!errorStatus);
+    return new Geolocation(latitude, longitude, !!errorStatus);
   }
 
   /**
@@ -277,11 +274,11 @@
   toSetting() {
     return this.latitude + '@' + this.longitude + ':' + (this.error || '');
   }
-};
+}
 
-SDK.EmulationModel.Geolocation.DefaultMockAccuracy = 150;
+Geolocation.DefaultMockAccuracy = 150;
 
-SDK.EmulationModel.DeviceOrientation = class {
+export class DeviceOrientation {
   /**
    * @param {number} alpha
    * @param {number} beta
@@ -294,27 +291,27 @@
   }
 
   /**
-   * @return {!SDK.EmulationModel.DeviceOrientation}
+   * @return {!DeviceOrientation}
    */
   static parseSetting(value) {
     if (value) {
       const jsonObject = JSON.parse(value);
-      return new SDK.EmulationModel.DeviceOrientation(jsonObject.alpha, jsonObject.beta, jsonObject.gamma);
+      return new DeviceOrientation(jsonObject.alpha, jsonObject.beta, jsonObject.gamma);
     }
-    return new SDK.EmulationModel.DeviceOrientation(0, 0, 0);
+    return new DeviceOrientation(0, 0, 0);
   }
 
   /**
-   * @return {?SDK.EmulationModel.DeviceOrientation}
+   * @return {?DeviceOrientation}
    */
   static parseUserInput(alphaString, betaString, gammaString) {
     if (!alphaString && !betaString && !gammaString) {
       return null;
     }
 
-    const {valid: isAlphaValid} = SDK.EmulationModel.DeviceOrientation.validator(alphaString);
-    const {valid: isBetaValid} = SDK.EmulationModel.DeviceOrientation.validator(betaString);
-    const {valid: isGammaValid} = SDK.EmulationModel.DeviceOrientation.validator(gammaString);
+    const {valid: isAlphaValid} = DeviceOrientation.validator(alphaString);
+    const {valid: isBetaValid} = DeviceOrientation.validator(betaString);
+    const {valid: isGammaValid} = DeviceOrientation.validator(gammaString);
 
     if (!isAlphaValid && !isBetaValid && !isGammaValid) {
       return null;
@@ -324,7 +321,7 @@
     const beta = isBetaValid ? parseFloat(betaString) : -1;
     const gamma = isGammaValid ? parseFloat(gammaString) : -1;
 
-    return new SDK.EmulationModel.DeviceOrientation(alpha, beta, gamma);
+    return new DeviceOrientation(alpha, beta, gamma);
   }
 
   /**
@@ -342,4 +339,21 @@
   toSetting() {
     return JSON.stringify(this);
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.EmulationModel = EmulationModel;
+
+/** @constructor */
+SDK.EmulationModel.Geolocation = Geolocation;
+
+/** @constructor */
+SDK.EmulationModel.DeviceOrientation = DeviceOrientation;
+
+SDK.SDKModel.register(EmulationModel, SDK.Target.Capability.Emulation, true);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/FilmStripModel.js b/third_party/blink/renderer/devtools/front_end/sdk/FilmStripModel.js
index 35deaea..c8fe3f8 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/FilmStripModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/FilmStripModel.js
@@ -7,7 +7,7 @@
 /**
  * @unrestricted
  */
-SDK.FilmStripModel = class {
+export default class FilmStripModel {
   /**
    * @param {!SDK.TracingModel} tracingModel
    * @param {number=} zeroTime
@@ -24,7 +24,7 @@
     this._zeroTime = zeroTime || tracingModel.minimumRecordTime();
     this._spanTime = tracingModel.maximumRecordTime() - this._zeroTime;
 
-    /** @type {!Array<!SDK.FilmStripModel.Frame>} */
+    /** @type {!Array<!Frame>} */
     this._frames = [];
     const browserMain = SDK.TracingModel.browserMainThread(tracingModel);
     if (!browserMain) {
@@ -37,23 +37,23 @@
       if (event.startTime < this._zeroTime) {
         continue;
       }
-      if (!event.hasCategory(SDK.FilmStripModel._category)) {
+      if (!event.hasCategory(_category)) {
         continue;
       }
-      if (event.name === SDK.FilmStripModel.TraceEvents.CaptureFrame) {
+      if (event.name === TraceEvents.CaptureFrame) {
         const data = event.args['data'];
         if (data) {
-          this._frames.push(SDK.FilmStripModel.Frame._fromEvent(this, event, this._frames.length));
+          this._frames.push(Frame._fromEvent(this, event, this._frames.length));
         }
-      } else if (event.name === SDK.FilmStripModel.TraceEvents.Screenshot) {
-        this._frames.push(SDK.FilmStripModel.Frame._fromSnapshot(
-            this, /** @type {!SDK.TracingModel.ObjectSnapshot} */ (event), this._frames.length));
+      } else if (event.name === TraceEvents.Screenshot) {
+        this._frames.push(
+            Frame._fromSnapshot(this, /** @type {!SDK.TracingModel.ObjectSnapshot} */ (event), this._frames.length));
       }
     }
   }
 
   /**
-   * @return {!Array<!SDK.FilmStripModel.Frame>}
+   * @return {!Array<!Frame>}
    */
   frames() {
     return this._frames;
@@ -75,17 +75,17 @@
 
   /**
    * @param {number} timestamp
-   * @return {?SDK.FilmStripModel.Frame}
+   * @return {?Frame}
    */
   frameByTimestamp(timestamp) {
     const index = this._frames.upperBound(timestamp, (timestamp, frame) => timestamp - frame.timestamp) - 1;
     return index >= 0 ? this._frames[index] : null;
   }
-};
+}
 
-SDK.FilmStripModel._category = 'disabled-by-default-devtools.screenshot';
+export const _category = 'disabled-by-default-devtools.screenshot';
 
-SDK.FilmStripModel.TraceEvents = {
+export const TraceEvents = {
   CaptureFrame: 'CaptureFrame',
   Screenshot: 'Screenshot'
 };
@@ -93,9 +93,9 @@
 /**
  * @unrestricted
  */
-SDK.FilmStripModel.Frame = class {
+export class Frame {
   /**
-   * @param {!SDK.FilmStripModel} model
+   * @param {!FilmStripModel} model
    * @param {number} timestamp
    * @param {number} index
    */
@@ -110,31 +110,31 @@
   }
 
   /**
-   * @param {!SDK.FilmStripModel} model
+   * @param {!FilmStripModel} model
    * @param {!SDK.TracingModel.Event} event
    * @param {number} index
-   * @return {!SDK.FilmStripModel.Frame}
+   * @return {!Frame}
    */
   static _fromEvent(model, event, index) {
-    const frame = new SDK.FilmStripModel.Frame(model, event.startTime, index);
+    const frame = new Frame(model, event.startTime, index);
     frame._imageData = event.args['data'];
     return frame;
   }
 
   /**
-   * @param {!SDK.FilmStripModel} model
+   * @param {!FilmStripModel} model
    * @param {!SDK.TracingModel.ObjectSnapshot} snapshot
    * @param {number} index
-   * @return {!SDK.FilmStripModel.Frame}
+   * @return {!Frame}
    */
   static _fromSnapshot(model, snapshot, index) {
-    const frame = new SDK.FilmStripModel.Frame(model, snapshot.startTime, index);
+    const frame = new Frame(model, snapshot.startTime, index);
     frame._snapshot = snapshot;
     return frame;
   }
 
   /**
-   * @return {!SDK.FilmStripModel}
+   * @return {!FilmStripModel}
    */
   model() {
     return this._model;
@@ -150,4 +150,19 @@
 
     return /** @type {!Promise<?string>} */ (this._snapshot.objectPromise());
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.FilmStripModel = FilmStripModel;
+
+SDK.FilmStripModel._category = _category;
+SDK.FilmStripModel.TraceEvents = TraceEvents;
+
+/** @constructor */
+SDK.FilmStripModel.Frame = Frame;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/HARLog.js b/third_party/blink/renderer/devtools/front_end/sdk/HARLog.js
index 221528e..eb6e145b 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/HARLog.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/HARLog.js
@@ -36,7 +36,7 @@
 /**
  * @unrestricted
  */
-SDK.HARLog = class {
+export default class HARLog {
   /**
    * @param {!SDK.NetworkRequest} request
    * @param {number} monotonicTime
@@ -51,10 +51,10 @@
    * @return {!Promise<!Object>}
    */
   static async build(requests) {
-    const log = new SDK.HARLog();
+    const log = new HARLog();
     const entryPromises = [];
     for (const request of requests) {
-      entryPromises.push(SDK.HARLog.Entry.build(request));
+      entryPromises.push(Entry.build(request));
     }
     const entries = await Promise.all(entryPromises);
     return {version: '1.2', creator: log._creator(), pages: log._buildPages(requests), entries: entries};
@@ -92,7 +92,7 @@
    */
   _convertPage(page, request) {
     return {
-      startedDateTime: SDK.HARLog.pseudoWallTime(request, page.startTime).toJSON(),
+      startedDateTime: HARLog.pseudoWallTime(request, page.startTime).toJSON(),
       id: 'page_' + page.id,
       title: page.url,  // We don't have actual page title here. URL is probably better than nothing.
       pageTimings: {
@@ -112,14 +112,14 @@
     if (time === -1 || startTime === -1) {
       return -1;
     }
-    return SDK.HARLog.Entry._toMilliseconds(time - startTime);
+    return Entry._toMilliseconds(time - startTime);
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.HARLog.Entry = class {
+export class Entry {
   /**
    * @param {!SDK.NetworkRequest} request
    */
@@ -140,7 +140,7 @@
    * @return {!Promise<!Object>}
    */
   static async build(request) {
-    const harEntry = new SDK.HARLog.Entry(request);
+    const harEntry = new Entry(request);
     let ipAddress = harEntry._request.remoteAddress();
     const portPositionInString = ipAddress.lastIndexOf(':');
     if (portPositionInString !== -1) {
@@ -168,7 +168,7 @@
     }
 
     const entry = {
-      startedDateTime: SDK.HARLog.pseudoWallTime(harEntry._request, harEntry._request.issueTime()).toJSON(),
+      startedDateTime: HARLog.pseudoWallTime(harEntry._request, harEntry._request.issueTime()).toJSON(),
       time: time,
       request: await harEntry._buildRequest(),
       response: harEntry._buildResponse(),
@@ -278,8 +278,8 @@
     const result = {blocked: -1, dns: -1, ssl: -1, connect: -1, send: 0, wait: 0, receive: 0, _blocked_queueing: -1};
 
     const queuedTime = (issueTime < startTime) ? startTime - issueTime : -1;
-    result.blocked = SDK.HARLog.Entry._toMilliseconds(queuedTime);
-    result._blocked_queueing = SDK.HARLog.Entry._toMilliseconds(queuedTime);
+    result.blocked = Entry._toMilliseconds(queuedTime);
+    result._blocked_queueing = Entry._toMilliseconds(queuedTime);
 
     let highestTime = 0;
     if (timing) {
@@ -328,11 +328,11 @@
 
     const requestTime = timing ? timing.requestTime : startTime;
     const waitStart = highestTime;
-    const waitEnd = SDK.HARLog.Entry._toMilliseconds(this._request.responseReceivedTime - requestTime);
+    const waitEnd = Entry._toMilliseconds(this._request.responseReceivedTime - requestTime);
     result.wait = waitEnd - waitStart;
 
     const receiveStart = waitEnd;
-    const receiveEnd = SDK.HARLog.Entry._toMilliseconds(this._request.endTime - requestTime);
+    const receiveEnd = Entry._toMilliseconds(this._request.endTime - requestTime);
     result.receive = Math.max(receiveEnd - receiveStart, 0);
 
     return result;
@@ -396,7 +396,7 @@
       value: cookie.value(),
       path: cookie.path(),
       domain: cookie.domain(),
-      expires: cookie.expiresDate(SDK.HARLog.pseudoWallTime(this._request, this._request.startTime)),
+      expires: cookie.expiresDate(HARLog.pseudoWallTime(this._request, this._request.startTime)),
       httpOnly: cookie.httpOnly(),
       secure: cookie.secure()
     };
@@ -447,7 +447,19 @@
     }
     return this._request.resourceSize - this.responseBodySize;
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.HARLog = HARLog;
+
+/** @constructor */
+SDK.HARLog.Entry = Entry;
 
 /** @typedef {!{
   blocked: number,
@@ -460,4 +472,4 @@
   _blocked_queueing: number,
   _blocked_proxy: (number|undefined)
 }} */
-SDK.HARLog.Entry.Timing;
+SDK.HARLog.Entry.Timing;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/HeapProfilerModel.js b/third_party/blink/renderer/devtools/front_end/sdk/HeapProfilerModel.js
index 22031cc..05de2ea 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/HeapProfilerModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/HeapProfilerModel.js
@@ -1,13 +1,13 @@
 /**
  * @unrestricted
  */
-SDK.HeapProfilerModel = class extends SDK.SDKModel {
+export default class HeapProfilerModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
   constructor(target) {
     super(target);
-    target.registerHeapProfilerDispatcher(new SDK.HeapProfilerDispatcher(this));
+    target.registerHeapProfilerDispatcher(new HeapProfilerDispatcher(this));
     this._enabled = false;
     this._heapProfilerAgent = target.heapProfilerAgent();
     this._memoryAgent = target.memoryAgent();
@@ -75,7 +75,7 @@
   }
 
   /**
-   * @return {!Promise<!SDK.HeapProfilerModel.NativeHeapProfile>}
+   * @return {!Promise<!NativeHeapProfile>}
    */
   async stopNativeSampling() {
     const rawProfile = /** @type {!Protocol.Memory.SamplingProfile} */ (await this._memoryAgent.getSamplingProfile());
@@ -84,7 +84,7 @@
   }
 
   /**
-   * @return {!Promise<!SDK.HeapProfilerModel.NativeHeapProfile>}
+   * @return {!Promise<!NativeHeapProfile>}
    */
   async takeNativeSnapshot() {
     const rawProfile =
@@ -93,7 +93,7 @@
   }
 
   /**
-   * @return {!Promise<!SDK.HeapProfilerModel.NativeHeapProfile>}
+   * @return {!Promise<!NativeHeapProfile>}
    */
   async takeNativeBrowserSnapshot() {
     const rawProfile =
@@ -103,7 +103,7 @@
 
   /**
    * @param {!Protocol.Memory.SamplingProfile} rawProfile
-   * @return {!SDK.HeapProfilerModel.NativeHeapProfile}
+   * @return {!NativeHeapProfile}
    */
   _convertNativeProfile(rawProfile) {
     const head = /** @type {!Protocol.HeapProfiler.SamplingHeapProfileNode} */
@@ -132,7 +132,7 @@
     }
     convertChildren(head);
 
-    return new SDK.HeapProfilerModel.NativeHeapProfile(head, rawProfile.modules);
+    return new NativeHeapProfile(head, rawProfile.modules);
   }
 
   /**
@@ -196,7 +196,7 @@
    * @param {!Array<number>} samples
    */
   heapStatsUpdate(samples) {
-    this.dispatchEventToListeners(SDK.HeapProfilerModel.Events.HeapStatsUpdate, samples);
+    this.dispatchEventToListeners(Events.HeapStatsUpdate, samples);
   }
 
   /**
@@ -204,15 +204,14 @@
    * @param {number} timestamp
    */
   lastSeenObjectId(lastSeenObjectId, timestamp) {
-    this.dispatchEventToListeners(
-        SDK.HeapProfilerModel.Events.LastSeenObjectId, {lastSeenObjectId: lastSeenObjectId, timestamp: timestamp});
+    this.dispatchEventToListeners(Events.LastSeenObjectId, {lastSeenObjectId: lastSeenObjectId, timestamp: timestamp});
   }
 
   /**
    * @param {string} chunk
    */
   addHeapSnapshotChunk(chunk) {
-    this.dispatchEventToListeners(SDK.HeapProfilerModel.Events.AddHeapSnapshotChunk, chunk);
+    this.dispatchEventToListeners(Events.AddHeapSnapshotChunk, chunk);
   }
 
   /**
@@ -221,19 +220,16 @@
    * @param {boolean=} finished
    */
   reportHeapSnapshotProgress(done, total, finished) {
-    this.dispatchEventToListeners(
-        SDK.HeapProfilerModel.Events.ReportHeapSnapshotProgress, {done: done, total: total, finished: finished});
+    this.dispatchEventToListeners(Events.ReportHeapSnapshotProgress, {done: done, total: total, finished: finished});
   }
 
   resetProfiles() {
-    this.dispatchEventToListeners(SDK.HeapProfilerModel.Events.ResetProfiles, this);
+    this.dispatchEventToListeners(Events.ResetProfiles, this);
   }
-};
-
-SDK.SDKModel.register(SDK.HeapProfilerModel, SDK.Target.Capability.JS, false);
+}
 
 /** @enum {symbol} */
-SDK.HeapProfilerModel.Events = {
+export const Events = {
   HeapStatsUpdate: Symbol('HeapStatsUpdate'),
   LastSeenObjectId: Symbol('LastSeenObjectId'),
   AddHeapSnapshotChunk: Symbol('AddHeapSnapshotChunk'),
@@ -245,7 +241,7 @@
  * @implements {Protocol.Profiler.Profile}
  * @extends {Protocol.HeapProfiler.SamplingHeapProfile}
  */
-SDK.HeapProfilerModel.NativeHeapProfile = class {
+export class NativeHeapProfile {
   /**
    * @param {!Protocol.HeapProfiler.SamplingHeapProfileNode} head
    * @param {!Array<!Protocol.Memory.Module>} modules
@@ -254,13 +250,13 @@
     this.head = head;
     this.modules = modules;
   }
-};
+}
 
 /**
  * @extends {Protocol.HeapProfilerDispatcher}
  * @unrestricted
  */
-SDK.HeapProfilerDispatcher = class {
+export class HeapProfilerDispatcher {
   constructor(model) {
     this._heapProfilerModel = model;
   }
@@ -306,4 +302,27 @@
   resetProfiles() {
     this._heapProfilerModel.resetProfiles();
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.HeapProfilerModel = HeapProfilerModel;
+
+/** @enum {symbol} */
+SDK.HeapProfilerModel.Events = Events;
+
+/**
+ * @implements {Protocol.Profiler.Profile}
+ * @extends {Protocol.HeapProfiler.SamplingHeapProfile}
+ */
+SDK.HeapProfilerModel.NativeHeapProfile = NativeHeapProfile;
+
+/** @constructor */
+SDK.HeapProfilerDispatcher = HeapProfilerDispatcher;
+
+SDK.SDKModel.register(SDK.HeapProfilerModel, SDK.Target.Capability.JS, false);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/IsolateManager.js b/third_party/blink/renderer/devtools/front_end/sdk/IsolateManager.js
index ab3cb6d..9ebbf10 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/IsolateManager.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/IsolateManager.js
@@ -5,23 +5,23 @@
 /**
  * @implements {SDK.SDKModelObserver}
  */
-SDK.IsolateManager = class extends Common.Object {
+export default class IsolateManager extends Common.Object {
   constructor() {
     super();
     console.assert(!SDK.isolateManager, 'Use SDK.isolateManager singleton.');
-    /** @type {!Map<string, !SDK.IsolateManager.Isolate>} */
+    /** @type {!Map<string, !Isolate>} */
     this._isolates = new Map();
     // _isolateIdByModel contains null while the isolateId is being retrieved.
     /** @type {!Map<!SDK.RuntimeModel, ?string>} */
     this._isolateIdByModel = new Map();
-    /** @type {!Set<!SDK.IsolateManager.Observer>} */
+    /** @type {!Set<!Observer>} */
     this._observers = new Set();
     SDK.targetManager.observeModels(SDK.RuntimeModel, this);
     this._pollId = 0;
   }
 
   /**
-   * @param {!SDK.IsolateManager.Observer} observer
+   * @param {!Observer} observer
    */
   observeIsolates(observer) {
     if (this._observers.has(observer)) {
@@ -37,7 +37,7 @@
   }
 
   /**
-   * @param {!SDK.IsolateManager.Observer} observer
+   * @param {!Observer} observer
    */
   unobserveIsolates(observer) {
     this._observers.delete(observer);
@@ -71,7 +71,7 @@
     this._isolateIdByModel.set(model, isolateId);
     let isolate = this._isolates.get(isolateId);
     if (!isolate) {
-      isolate = new SDK.IsolateManager.Isolate(isolateId);
+      isolate = new Isolate(isolateId);
       this._isolates.set(isolateId, isolate);
     }
     isolate._models.add(model);
@@ -112,14 +112,14 @@
 
   /**
    * @param {!SDK.RuntimeModel} model
-   * @return {?SDK.IsolateManager.Isolate}
+   * @return {?Isolate}
    */
   isolateByModel(model) {
     return this._isolates.get(this._isolateIdByModel.get(model) || '') || null;
   }
 
   /**
-   * @return {!IteratorIterable<!SDK.IsolateManager.Isolate>}
+   * @return {!IteratorIterable<!Isolate>}
    */
   isolates() {
     return this._isolates.values();
@@ -129,41 +129,42 @@
     const pollId = this._pollId;
     while (pollId === this._pollId) {
       await Promise.all(Array.from(this.isolates(), isolate => isolate._update()));
-      await new Promise(r => setTimeout(r, SDK.IsolateManager.PollIntervalMs));
+      await new Promise(r => setTimeout(r, PollIntervalMs));
     }
   }
-};
+}
 
 /**
  * @interface
  */
-SDK.IsolateManager.Observer = function() {};
-
-SDK.IsolateManager.Observer.prototype = {
+export class Observer {
   /**
-   * @param {!SDK.IsolateManager.Isolate} isolate
+   * @param {!Isolate} isolate
    */
-  isolateAdded(isolate) {},
+  isolateAdded(isolate) {
+  }
 
   /**
-   * @param {!SDK.IsolateManager.Isolate} isolate
+   * @param {!Isolate} isolate
    */
-  isolateRemoved(isolate) {},
+  isolateRemoved(isolate) {
+  }
   /**
-   * @param {!SDK.IsolateManager.Isolate} isolate
+   * @param {!Isolate} isolate
    */
-  isolateChanged(isolate) {},
-};
+  isolateChanged(isolate) {
+  }
+}
 
 /** @enum {symbol} */
-SDK.IsolateManager.Events = {
+export const Events = {
   MemoryChanged: Symbol('MemoryChanged')
 };
 
-SDK.IsolateManager.MemoryTrendWindowMs = 120e3;
-SDK.IsolateManager.PollIntervalMs = 2e3;
+export const MemoryTrendWindowMs = 120e3;
+export const PollIntervalMs = 2e3;
 
-SDK.IsolateManager.Isolate = class {
+export class Isolate {
   /**
    * @param {string} id
    */
@@ -172,8 +173,8 @@
     /** @type {!Set<!SDK.RuntimeModel>} */
     this._models = new Set();
     this._usedHeapSize = 0;
-    const count = SDK.IsolateManager.MemoryTrendWindowMs / SDK.IsolateManager.PollIntervalMs;
-    this._memoryTrend = new SDK.IsolateManager.MemoryTrend(count);
+    const count = MemoryTrendWindowMs / PollIntervalMs;
+    this._memoryTrend = new MemoryTrend(count);
   }
 
   /**
@@ -213,7 +214,7 @@
     }
     this._usedHeapSize = usage.usedSize;
     this._memoryTrend.add(this._usedHeapSize);
-    SDK.isolateManager.dispatchEventToListeners(SDK.IsolateManager.Events.MemoryChanged, this);
+    SDK.isolateManager.dispatchEventToListeners(Events.MemoryChanged, this);
   }
 
   /**
@@ -236,12 +237,12 @@
   usedHeapSizeGrowRate() {
     return this._memoryTrend.fitSlope();
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.IsolateManager.MemoryTrend = class {
+export class MemoryTrend {
   /**
    * @param {number} maxCount
    */
@@ -303,6 +304,30 @@
     const n = this.count();
     return n < 2 ? 0 : (this._sxy - this._sx * this._sy / n) / (this._sxx - this._sx * this._sx / n);
   }
-};
+}
 
-SDK.isolateManager = new SDK.IsolateManager();
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.IsolateManager = IsolateManager;
+
+/** @interface */
+SDK.IsolateManager.Observer = Observer;
+
+/** @enum {symbol} */
+SDK.IsolateManager.Events = Events;
+
+SDK.IsolateManager.MemoryTrendWindowMs = MemoryTrendWindowMs;
+SDK.IsolateManager.PollIntervalMs = PollIntervalMs;
+
+/** @constructor */
+SDK.IsolateManager.Isolate = Isolate;
+
+/** @constructor */
+SDK.IsolateManager.MemoryTrend = MemoryTrend;
+
+SDK.isolateManager = new IsolateManager();
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/LayerTreeBase.js b/third_party/blink/renderer/devtools/front_end/sdk/LayerTreeBase.js
index 31541a8..cdd4a23 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/LayerTreeBase.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/LayerTreeBase.js
@@ -1,150 +1,165 @@
 // Copyright 2016 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.
-/** @typedef {!{
-        rect: !Protocol.DOM.Rect,
-        snapshot: !SDK.PaintProfilerSnapshot
-    }}
-*/
-SDK.SnapshotWithRect;
 
 /**
  * @interface
  */
-SDK.Layer = function() {};
-
-SDK.Layer.prototype = {
+export class Layer {
   /**
    * @return {string}
    */
-  id() {},
+  id() {
+  }
 
   /**
    * @return {?string}
    */
-  parentId() {},
+  parentId() {
+  }
 
   /**
-   * @return {?SDK.Layer}
+   * @return {?Layer}
    */
-  parent() {},
+  parent() {
+  }
 
   /**
    * @return {boolean}
    */
-  isRoot() {},
+  isRoot() {
+  }
 
   /**
-   * @return {!Array.<!SDK.Layer>}
+   * @return {!Array.<!Layer>}
    */
-  children() {},
+  children() {
+  }
 
   /**
-   * @param {!SDK.Layer} child
+   * @param {!Layer} child
    */
-  addChild(child) {},
+  addChild(child) {
+  }
 
   /**
    * @return {?SDK.DOMNode}
    */
-  node() {},
+  node() {
+  }
 
   /**
    * @return {?SDK.DOMNode}
    */
-  nodeForSelfOrAncestor() {},
+  nodeForSelfOrAncestor() {
+  }
 
   /**
    * @return {number}
    */
-  offsetX() {},
+  offsetX() {
+  }
 
   /**
    * @return {number}
    */
-  offsetY() {},
+  offsetY() {
+  }
 
   /**
    * @return {number}
    */
-  width() {},
+  width() {
+  }
 
   /**
    * @return {number}
    */
-  height() {},
+  height() {
+  }
 
   /**
    * @return {?Array.<number>}
    */
-  transform() {},
+  transform() {
+  }
 
   /**
    * @return {!Array.<number>}
    */
-  quad() {},
+  quad() {
+  }
 
   /**
    * @return {!Array.<number>}
    */
-  anchorPoint() {},
+  anchorPoint() {
+  }
 
   /**
    * @return {boolean}
    */
-  invisible() {},
+  invisible() {
+  }
 
   /**
    * @return {number}
    */
-  paintCount() {},
+  paintCount() {
+  }
 
   /**
    * @return {?Protocol.DOM.Rect}
    */
-  lastPaintRect() {},
+  lastPaintRect() {
+  }
 
   /**
    * @return {!Array.<!Protocol.LayerTree.ScrollRect>}
    */
-  scrollRects() {},
+  scrollRects() {
+  }
 
   /**
-   * @return {?SDK.Layer.StickyPositionConstraint}
+   * @return {?Layer.StickyPositionConstraint}
    */
-  stickyPositionConstraint() {},
+  stickyPositionConstraint() {
+  }
 
   /**
    * @return {number}
    */
-  gpuMemoryUsage() {},
+  gpuMemoryUsage() {
+  }
 
   /**
    * @return {!Promise<!Array<string>>}
    */
-  requestCompositingReasons() {},
+  requestCompositingReasons() {
+  }
 
   /**
    * @return {boolean}
    */
-  drawsContent() {},
+  drawsContent() {
+  }
 
   /**
    * @return {!Array<!Promise<?SDK.SnapshotWithRect>>}
    */
   snapshots() {}
-};
+}
 
-SDK.Layer.ScrollRectType = {
+Layer.ScrollRectType = {
   NonFastScrollable: 'NonFastScrollable',
   TouchEventHandler: 'TouchEventHandler',
   WheelEventHandler: 'WheelEventHandler',
   RepaintsOnScroll: 'RepaintsOnScroll'
 };
 
-SDK.Layer.StickyPositionConstraint = class {
+export class StickyPositionConstraint {
   /**
-   * @param {?SDK.LayerTreeBase} layerTree
+   * @param {?LayerTreeBase} layerTree
    * @param {!Protocol.LayerTree.StickyPositionConstraint} constraint
    * @struct
    */
@@ -153,13 +168,13 @@
     this._stickyBoxRect = constraint.stickyBoxRect;
     /** @type {!Protocol.DOM.Rect} */
     this._containingBlockRect = constraint.containingBlockRect;
-    /** @type {?SDK.Layer} */
+    /** @type {?Layer} */
     this._nearestLayerShiftingStickyBox = null;
     if (layerTree && constraint.nearestLayerShiftingStickyBox) {
       this._nearestLayerShiftingStickyBox = layerTree.layerById(constraint.nearestLayerShiftingStickyBox);
     }
 
-    /** @type {?SDK.Layer} */
+    /** @type {?Layer} */
     this._nearestLayerShiftingContainingBlock = null;
     if (layerTree && constraint.nearestLayerShiftingContainingBlock) {
       this._nearestLayerShiftingContainingBlock = layerTree.layerById(constraint.nearestLayerShiftingContainingBlock);
@@ -181,24 +196,24 @@
   }
 
   /**
-   * @return {?SDK.Layer}
+   * @return {?Layer}
    */
   nearestLayerShiftingStickyBox() {
     return this._nearestLayerShiftingStickyBox;
   }
 
   /**
-   * @return {?SDK.Layer}
+   * @return {?Layer}
    */
   nearestLayerShiftingContainingBlock() {
     return this._nearestLayerShiftingContainingBlock;
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.LayerTreeBase = class {
+export default class LayerTreeBase {
   /**
    * @param {?SDK.Target} target
    */
@@ -220,14 +235,14 @@
   }
 
   /**
-   * @return {?SDK.Layer}
+   * @return {?Layer}
    */
   root() {
     return this._root;
   }
 
   /**
-   * @param {?SDK.Layer} root
+   * @param {?Layer} root
    * @protected
    */
   setRoot(root) {
@@ -235,14 +250,14 @@
   }
 
   /**
-   * @return {?SDK.Layer}
+   * @return {?Layer}
    */
   contentRoot() {
     return this._contentRoot;
   }
 
   /**
-   * @param {?SDK.Layer} contentRoot
+   * @param {?Layer} contentRoot
    * @protected
    */
   setContentRoot(contentRoot) {
@@ -250,8 +265,8 @@
   }
 
   /**
-   * @param {function(!SDK.Layer)} callback
-   * @param {?SDK.Layer=} root
+   * @param {function(!Layer)} callback
+   * @param {?Layer=} root
    * @return {boolean}
    */
   forEachLayer(callback, root) {
@@ -266,7 +281,7 @@
 
   /**
    * @param {string} id
-   * @return {?SDK.Layer}
+   * @return {?Layer}
    */
   layerById(id) {
     return this._layersById[id] || null;
@@ -319,4 +334,26 @@
   _nodeForId(id) {
     return this._domModel ? this._domModel.nodeForId(id) : null;
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @interface */
+SDK.Layer = Layer;
+
+/** @constructor */
+SDK.LayerTreeBase = LayerTreeBase;
+
+/** @constructor */
+SDK.Layer.StickyPositionConstraint = StickyPositionConstraint;
+
+/** @typedef {!{
+        rect: !Protocol.DOM.Rect,
+        snapshot: !SDK.PaintProfilerSnapshot
+    }}
+*/
+SDK.SnapshotWithRect;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/LogModel.js b/third_party/blink/renderer/devtools/front_end/sdk/LogModel.js
index dd9ec8c2..18778a16 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/LogModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/LogModel.js
@@ -5,7 +5,7 @@
 /**
  * @implements {Protocol.LogDispatcher}
  */
-SDK.LogModel = class extends SDK.SDKModel {
+export default class LogModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -28,17 +28,29 @@
    * @param {!Protocol.Log.LogEntry} payload
    */
   entryAdded(payload) {
-    this.dispatchEventToListeners(SDK.LogModel.Events.EntryAdded, {logModel: this, entry: payload});
+    this.dispatchEventToListeners(Events.EntryAdded, {logModel: this, entry: payload});
   }
 
   requestClear() {
     this._logAgent.clear();
   }
-};
-
-SDK.SDKModel.register(SDK.LogModel, SDK.Target.Capability.Log, true);
+}
 
 /** @enum {symbol} */
-SDK.LogModel.Events = {
+export const Events = {
   EntryAdded: Symbol('EntryAdded')
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.LogModel = LogModel;
+
+/** @enum {symbol} */
+SDK.LogModel.Events = Events;
+
+SDK.SDKModel.register(SDK.LogModel, SDK.Target.Capability.Log, true);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/NetworkLog.js b/third_party/blink/renderer/devtools/front_end/sdk/NetworkLog.js
index 4d07acaf..34c53a22a 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/NetworkLog.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/NetworkLog.js
@@ -31,14 +31,14 @@
 /**
  * @implements {SDK.SDKModelObserver<!SDK.NetworkManager>}
  */
-SDK.NetworkLog = class extends Common.Object {
+export default class NetworkLog extends Common.Object {
   constructor() {
     super();
     /** @type {!Array<!SDK.NetworkRequest>} */
     this._requests = [];
     /** @type {!Set<!SDK.NetworkRequest>} */
     this._requestsSet = new Set();
-    /** @type {!Map<!SDK.NetworkManager, !SDK.NetworkLog.PageLoad>} */
+    /** @type {!Map<!SDK.NetworkManager, !PageLoad>} */
     this._pageLoadForManager = new Map();
     this._isRecording = true;
     SDK.targetManager.observeModels(SDK.NetworkManager, this);
@@ -72,7 +72,7 @@
           SDK.ResourceTreeModel.Events.DOMContentLoaded, this._onDOMContentLoaded.bind(this, resourceTreeModel)));
     }
 
-    networkManager[SDK.NetworkLog._events] = eventListeners;
+    networkManager[_events] = eventListeners;
   }
 
   /**
@@ -87,7 +87,7 @@
    * @param {!SDK.NetworkManager} networkManager
    */
   _removeNetworkManagerListeners(networkManager) {
-    Common.EventTarget.removeEventListeners(networkManager[SDK.NetworkLog._events]);
+    Common.EventTarget.removeEventListeners(networkManager[_events]);
   }
 
   /**
@@ -155,9 +155,9 @@
    * @param {!SDK.NetworkRequest} request
    */
   _initializeInitiatorSymbolIfNeeded(request) {
-    if (!request[SDK.NetworkLog._initiatorDataSymbol]) {
+    if (!request[_initiatorDataSymbol]) {
       /** @type {!{info: ?SDK.NetworkLog._InitiatorInfo, chain: !Set<!SDK.NetworkRequest>, request: (?SDK.NetworkRequest|undefined)}} */
-      request[SDK.NetworkLog._initiatorDataSymbol] = {
+      request[_initiatorDataSymbol] = {
         info: null,
         chain: null,
         request: undefined,
@@ -171,8 +171,8 @@
    */
   initiatorInfoForRequest(request) {
     this._initializeInitiatorSymbolIfNeeded(request);
-    if (request[SDK.NetworkLog._initiatorDataSymbol].info) {
-      return request[SDK.NetworkLog._initiatorDataSymbol].info;
+    if (request[_initiatorDataSymbol].info) {
+      return request[_initiatorDataSymbol].info;
     }
 
     let type = SDK.NetworkRequest.InitiatorType.Other;
@@ -221,7 +221,7 @@
       }
     }
 
-    request[SDK.NetworkLog._initiatorDataSymbol].info = {
+    request[_initiatorDataSymbol].info = {
       type: type,
       url: url,
       lineNumber: lineNumber,
@@ -229,7 +229,7 @@
       scriptId: scriptId,
       stack: initiatorStack
     };
-    return request[SDK.NetworkLog._initiatorDataSymbol].info;
+    return request[_initiatorDataSymbol].info;
   }
 
   /**
@@ -256,7 +256,7 @@
   _initiatorChain(request) {
     this._initializeInitiatorSymbolIfNeeded(request);
     let initiatorChainCache =
-        /** @type {?Set<!SDK.NetworkRequest>} */ (request[SDK.NetworkLog._initiatorDataSymbol].chain);
+        /** @type {?Set<!SDK.NetworkRequest>} */ (request[_initiatorDataSymbol].chain);
     if (initiatorChainCache) {
       return initiatorChainCache;
     }
@@ -265,8 +265,8 @@
 
     let checkRequest = request;
     do {
-      if (checkRequest[SDK.NetworkLog._initiatorDataSymbol].chain) {
-        initiatorChainCache.addAll(checkRequest[SDK.NetworkLog._initiatorDataSymbol].chain);
+      if (checkRequest[_initiatorDataSymbol].chain) {
+        initiatorChainCache.addAll(checkRequest[_initiatorDataSymbol].chain);
         break;
       }
       if (initiatorChainCache.has(checkRequest)) {
@@ -275,7 +275,7 @@
       initiatorChainCache.add(checkRequest);
       checkRequest = this._initiatorRequest(checkRequest);
     } while (checkRequest);
-    request[SDK.NetworkLog._initiatorDataSymbol].chain = initiatorChainCache;
+    request[_initiatorDataSymbol].chain = initiatorChainCache;
     return initiatorChainCache;
   }
 
@@ -285,14 +285,13 @@
    */
   _initiatorRequest(request) {
     this._initializeInitiatorSymbolIfNeeded(request);
-    if (request[SDK.NetworkLog._initiatorDataSymbol].request !== undefined) {
-      return request[SDK.NetworkLog._initiatorDataSymbol].request;
+    if (request[_initiatorDataSymbol].request !== undefined) {
+      return request[_initiatorDataSymbol].request;
     }
     const url = this.initiatorInfoForRequest(request).url;
     const networkManager = SDK.NetworkManager.forRequest(request);
-    request[SDK.NetworkLog._initiatorDataSymbol].request =
-        networkManager ? this._requestByManagerAndURL(networkManager, url) : null;
-    return request[SDK.NetworkLog._initiatorDataSymbol].request;
+    request[_initiatorDataSymbol].request = networkManager ? this._requestByManagerAndURL(networkManager, url) : null;
+    return request[_initiatorDataSymbol].request;
   }
 
   _willReloadPage() {
@@ -316,7 +315,7 @@
     const oldRequestsSet = this._requestsSet;
     this._requests = [];
     this._requestsSet = new Set();
-    this.dispatchEventToListeners(SDK.NetworkLog.Events.Reset);
+    this.dispatchEventToListeners(Events.Reset);
 
     // Preserve requests from the new session.
     let currentPageLoad = null;
@@ -326,7 +325,7 @@
         continue;
       }
       if (!currentPageLoad) {
-        currentPageLoad = new SDK.NetworkLog.PageLoad(request);
+        currentPageLoad = new PageLoad(request);
         let redirectSource = request.redirectSource();
         while (redirectSource) {
           requestsToAdd.push(redirectSource);
@@ -357,14 +356,14 @@
       this._requests.push(request);
       this._requestsSet.add(request);
       currentPageLoad.bindRequest(request);
-      this.dispatchEventToListeners(SDK.NetworkLog.Events.RequestAdded, request);
+      this.dispatchEventToListeners(Events.RequestAdded, request);
     }
 
     if (Common.moduleSetting('network_log.preserve-log').get()) {
       for (const request of oldRequestsSet) {
         this._requests.push(request);
         this._requestsSet.add(request);
-        this.dispatchEventToListeners(SDK.NetworkLog.Events.RequestAdded, request);
+        this.dispatchEventToListeners(Events.RequestAdded, request);
       }
     }
 
@@ -383,7 +382,7 @@
     for (const request of requests) {
       this._requests.push(request);
       this._requestsSet.add(request);
-      this.dispatchEventToListeners(SDK.NetworkLog.Events.RequestAdded, request);
+      this.dispatchEventToListeners(Events.RequestAdded, request);
     }
   }
 
@@ -399,7 +398,7 @@
     if (pageLoad) {
       pageLoad.bindRequest(request);
     }
-    this.dispatchEventToListeners(SDK.NetworkLog.Events.RequestAdded, request);
+    this.dispatchEventToListeners(Events.RequestAdded, request);
   }
 
   /**
@@ -410,7 +409,7 @@
     if (!this._requestsSet.has(request)) {
       return;
     }
-    this.dispatchEventToListeners(SDK.NetworkLog.Events.RequestUpdated, request);
+    this.dispatchEventToListeners(Events.RequestUpdated, request);
   }
 
   /**
@@ -418,7 +417,7 @@
    */
   _onRequestRedirect(event) {
     const request = /** @type {!SDK.NetworkRequest} */ (event.data);
-    delete request[SDK.NetworkLog._initiatorDataSymbol];
+    delete request[_initiatorDataSymbol];
   }
 
   /**
@@ -454,7 +453,7 @@
       }
     }
 
-    this.dispatchEventToListeners(SDK.NetworkLog.Events.Reset);
+    this.dispatchEventToListeners(Events.Reset);
   }
 
   /**
@@ -485,7 +484,7 @@
     if (!request) {
       return;
     }
-    consoleMessage[SDK.NetworkLog._requestSymbol] = request;
+    consoleMessage[_requestSymbol] = request;
     const initiator = request.initiator();
     if (initiator) {
       consoleMessage.stackTrace = initiator.stack || undefined;
@@ -501,16 +500,16 @@
    * @return {?SDK.NetworkRequest}
    */
   static requestForConsoleMessage(consoleMessage) {
-    return consoleMessage[SDK.NetworkLog._requestSymbol] || null;
+    return consoleMessage[_requestSymbol] || null;
   }
-};
+}
 
-SDK.NetworkLog.PageLoad = class {
+export class PageLoad {
   /**
    * @param {!SDK.NetworkRequest} mainRequest
    */
   constructor(mainRequest) {
-    this.id = ++SDK.NetworkLog.PageLoad._lastIdentifier;
+    this.id = ++PageLoad._lastIdentifier;
     this.url = mainRequest.url();
     this.startTime = mainRequest.startTime;
     /** @type {number} */
@@ -531,53 +530,70 @@
       await this.mainRequest.once(SDK.NetworkRequest.Events.FinishedLoading);
     }
     const saveDataHeader = this.mainRequest.requestHeaderValue('Save-Data');
-    if (!SDK.NetworkLog.PageLoad._dataSaverMessageWasShown && saveDataHeader && saveDataHeader === 'on') {
+    if (!PageLoad._dataSaverMessageWasShown && saveDataHeader && saveDataHeader === 'on') {
       const message = Common.UIString(
           'Consider disabling %s while debugging. For more info see: %s', Common.UIString('Chrome Data Saver'),
           'https://support.google.com/chrome/?p=datasaver');
       manager.dispatchEventToListeners(
           SDK.NetworkManager.Events.MessageGenerated,
           {message: message, requestId: this.mainRequest.requestId(), warning: true});
-      SDK.NetworkLog.PageLoad._dataSaverMessageWasShown = true;
+      PageLoad._dataSaverMessageWasShown = true;
     }
   }
 
   /**
    * @param {!SDK.NetworkRequest} request
-   * @return {?SDK.NetworkLog.PageLoad}
+   * @return {?PageLoad}
    */
   static forRequest(request) {
-    return request[SDK.NetworkLog.PageLoad._pageLoadForRequestSymbol] || null;
+    return request[PageLoad._pageLoadForRequestSymbol] || null;
   }
 
   /**
    * @param {!SDK.NetworkRequest} request
    */
   bindRequest(request) {
-    request[SDK.NetworkLog.PageLoad._pageLoadForRequestSymbol] = this;
+    request[PageLoad._pageLoadForRequestSymbol] = this;
   }
-};
+}
 
-SDK.NetworkLog.PageLoad._lastIdentifier = 0;
-SDK.NetworkLog.PageLoad._pageLoadForRequestSymbol = Symbol('PageLoadForRequest');
-SDK.NetworkLog._requestSymbol = Symbol('_request');
+PageLoad._lastIdentifier = 0;
+PageLoad._pageLoadForRequestSymbol = Symbol('PageLoadForRequest');
+PageLoad._dataSaverMessageWasShown = false;
 
-SDK.NetworkLog.PageLoad._dataSaverMessageWasShown = false;
+export const _requestSymbol = Symbol('_request');
 
-/** @typedef {!{initiators: !Set<!SDK.NetworkRequest>, initiated: !Set<!SDK.NetworkRequest>}} */
-SDK.NetworkLog.InitiatorGraph;
-
-SDK.NetworkLog.Events = {
+export const Events = {
   Reset: Symbol('Reset'),
   RequestAdded: Symbol('RequestAdded'),
   RequestUpdated: Symbol('RequestUpdated')
 };
 
+export const _initiatorDataSymbol = Symbol('InitiatorData');
+export const _events = Symbol('SDK.NetworkLog.events');
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.NetworkLog = NetworkLog;
+
+/** @constructor */
+SDK.NetworkLog.PageLoad = PageLoad;
+
+SDK.NetworkLog._requestSymbol = _requestSymbol;
+SDK.NetworkLog.Events = Events;
+SDK.NetworkLog._initiatorDataSymbol = _initiatorDataSymbol;
+SDK.NetworkLog._events = _events;
+
+/** @type {!NetworkLog} */
+SDK.networkLog = new NetworkLog();
+
+/** @typedef {!{initiators: !Set<!SDK.NetworkRequest>, initiated: !Set<!SDK.NetworkRequest>}} */
+SDK.NetworkLog.InitiatorGraph;
+
 /** @typedef {!{type: !SDK.NetworkRequest.InitiatorType, url: string, lineNumber: number, columnNumber: number, scriptId: ?string, stack: ?Protocol.Runtime.StackTrace}} */
 SDK.NetworkLog._InitiatorInfo;
-
-SDK.NetworkLog._initiatorDataSymbol = Symbol('InitiatorData');
-SDK.NetworkLog._events = Symbol('SDK.NetworkLog.events');
-
-/** @type {!SDK.NetworkLog} */
-SDK.networkLog = new SDK.NetworkLog();
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/NetworkManager.js b/third_party/blink/renderer/devtools/front_end/sdk/NetworkManager.js
index a9a33290..7580ef2 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/NetworkManager.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/NetworkManager.js
@@ -31,20 +31,20 @@
 /**
  * @unrestricted
  */
-SDK.NetworkManager = class extends SDK.SDKModel {
+export default class NetworkManager extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
   constructor(target) {
     super(target);
-    this._dispatcher = new SDK.NetworkDispatcher(this);
+    this._dispatcher = new NetworkDispatcher(this);
     this._networkAgent = target.networkAgent();
     target.registerNetworkDispatcher(this._dispatcher);
     if (Common.moduleSetting('cacheDisabled').get()) {
       this._networkAgent.setCacheDisabled(true);
     }
 
-    this._networkAgent.enable(undefined, undefined, SDK.NetworkManager.MAX_EAGER_POST_REQUEST_BODY_LENGTH);
+    this._networkAgent.enable(undefined, undefined, MAX_EAGER_POST_REQUEST_BODY_LENGTH);
 
     this._bypassServiceWorkerSetting = Common.settings.createSetting('bypassServiceWorker', false);
     if (this._bypassServiceWorkerSetting.get()) {
@@ -57,10 +57,10 @@
 
   /**
    * @param {!SDK.NetworkRequest} request
-   * @return {?SDK.NetworkManager}
+   * @return {?NetworkManager}
    */
   static forRequest(request) {
-    return request[SDK.NetworkManager._networkManagerForRequestSymbol];
+    return request[_networkManagerForRequestSymbol];
   }
 
   /**
@@ -68,15 +68,14 @@
    * @return {boolean}
    */
   static canReplayRequest(request) {
-    return !!request[SDK.NetworkManager._networkManagerForRequestSymbol] &&
-        request.resourceType() === Common.resourceTypes.XHR;
+    return !!request[_networkManagerForRequestSymbol] && request.resourceType() === Common.resourceTypes.XHR;
   }
 
   /**
    * @param {!SDK.NetworkRequest} request
    */
   static replayRequest(request) {
-    const manager = request[SDK.NetworkManager._networkManagerForRequestSymbol];
+    const manager = request[_networkManagerForRequestSymbol];
     if (!manager) {
       return;
     }
@@ -91,7 +90,7 @@
    * @return {!Promise<!Array<!Common.ContentProvider.SearchMatch>>}
    */
   static async searchInRequest(request, query, caseSensitive, isRegex) {
-    const manager = SDK.NetworkManager.forRequest(request);
+    const manager = NetworkManager.forRequest(request);
     if (!manager) {
       return [];
     }
@@ -111,7 +110,7 @@
     if (!request.finished) {
       await request.once(SDK.NetworkRequest.Events.FinishedLoading);
     }
-    const manager = SDK.NetworkManager.forRequest(request);
+    const manager = NetworkManager.forRequest(request);
     if (!manager) {
       return {error: 'No network manager for request', content: null, encoded: false};
     }
@@ -125,7 +124,7 @@
    * @return {!Promise<?string>}
    */
   static requestPostData(request) {
-    const manager = SDK.NetworkManager.forRequest(request);
+    const manager = NetworkManager.forRequest(request);
     if (manager) {
       return manager._networkAgent.getRequestPostData(request.backendRequestId());
     }
@@ -142,10 +141,10 @@
     if (!conditions.download && !conditions.upload) {
       return Protocol.Network.ConnectionType.None;
     }
-    let types = SDK.NetworkManager._connectionTypes;
+    let types = NetworkManager._connectionTypes;
     if (!types) {
-      SDK.NetworkManager._connectionTypes = [];
-      types = SDK.NetworkManager._connectionTypes;
+      NetworkManager._connectionTypes = [];
+      types = NetworkManager._connectionTypes;
       types.push(['2g', Protocol.Network.ConnectionType.Cellular2g]);
       types.push(['3g', Protocol.Network.ConnectionType.Cellular3g]);
       types.push(['4g', Protocol.Network.ConnectionType.Cellular4g]);
@@ -199,12 +198,10 @@
   _bypassServiceWorkerChanged() {
     this._networkAgent.setBypassServiceWorker(this._bypassServiceWorkerSetting.get());
   }
-};
-
-SDK.SDKModel.register(SDK.NetworkManager, SDK.Target.Capability.Network, true);
+}
 
 /** @enum {symbol} */
-SDK.NetworkManager.Events = {
+export const Events = {
   RequestStarted: Symbol('RequestStarted'),
   RequestUpdated: Symbol('RequestUpdated'),
   RequestFinished: Symbol('RequestFinished'),
@@ -214,10 +211,7 @@
   RequestRedirected: Symbol('RequestRedirected'),
 };
 
-/** @typedef {{message: string, requestId: string, warning: boolean}} */
-SDK.NetworkManager.Message;
-
-SDK.NetworkManager._MIMETypes = {
+export const _MIMETypes = {
   'text/html': {'document': true},
   'text/xml': {'document': true},
   'text/plain': {'document': true},
@@ -228,18 +222,8 @@
   'text/vtt': {'texttrack': true},
 };
 
-/**
- * @typedef {{
- *   download: number,
- *   upload: number,
- *   latency: number,
- *   title: string,
- * }}
- **/
-SDK.NetworkManager.Conditions;
-
 /** @type {!SDK.NetworkManager.Conditions} */
-SDK.NetworkManager.NoThrottlingConditions = {
+export const NoThrottlingConditions = {
   title: ls`Online`,
   download: -1,
   upload: -1,
@@ -247,7 +231,7 @@
 };
 
 /** @type {!SDK.NetworkManager.Conditions} */
-SDK.NetworkManager.OfflineConditions = {
+export const OfflineConditions = {
   title: Common.UIString('Offline'),
   download: 0,
   upload: 0,
@@ -255,7 +239,7 @@
 };
 
 /** @type {!SDK.NetworkManager.Conditions} */
-SDK.NetworkManager.Slow3GConditions = {
+export const Slow3GConditions = {
   title: Common.UIString('Slow 3G'),
   download: 500 * 1024 / 8 * .8,
   upload: 500 * 1024 / 8 * .8,
@@ -263,27 +247,23 @@
 };
 
 /** @type {!SDK.NetworkManager.Conditions} */
-SDK.NetworkManager.Fast3GConditions = {
+export const Fast3GConditions = {
   title: Common.UIString('Fast 3G'),
   download: 1.6 * 1024 * 1024 / 8 * .9,
   upload: 750 * 1024 / 8 * .9,
   latency: 150 * 3.75,
 };
 
-/** @typedef {{url: string, enabled: boolean}} */
-SDK.NetworkManager.BlockedPattern;
-
-SDK.NetworkManager._networkManagerForRequestSymbol = Symbol('NetworkManager');
-
-SDK.NetworkManager.MAX_EAGER_POST_REQUEST_BODY_LENGTH = 64 * 1024;  // bytes
+export const _networkManagerForRequestSymbol = Symbol('NetworkManager');
+export const MAX_EAGER_POST_REQUEST_BODY_LENGTH = 64 * 1024;  // bytes
 
 /**
  * @implements {Protocol.NetworkDispatcher}
  * @unrestricted
  */
-SDK.NetworkDispatcher = class {
+export class NetworkDispatcher {
   /**
-   * @param {!SDK.NetworkManager} manager
+   * @param {!NetworkManager} manager
    */
   constructor(manager) {
     this._manager = manager;
@@ -370,7 +350,7 @@
 
     networkRequest.timing = response.timing;
 
-    networkRequest.protocol = response.protocol;
+    networkRequest.protocol = response.protocol || '';
 
     networkRequest.setSecurityState(response.securityState);
 
@@ -379,8 +359,7 @@
           'Resource interpreted as %s but transferred with MIME type %s: "%s".', networkRequest.resourceType().title(),
           networkRequest.mimeType, networkRequest.url());
       this._manager.dispatchEventToListeners(
-          SDK.NetworkManager.Events.MessageGenerated,
-          {message: message, requestId: networkRequest.requestId(), warning: true});
+          Events.MessageGenerated, {message: message, requestId: networkRequest.requestId(), warning: true});
     }
 
     if (response.securityDetails) {
@@ -414,8 +393,8 @@
       return true;
     }  // Might be not known for cached resources with null responses.
 
-    if (networkRequest.mimeType in SDK.NetworkManager._MIMETypes) {
-      return resourceType.name() in SDK.NetworkManager._MIMETypes[networkRequest.mimeType];
+    if (networkRequest.mimeType in _MIMETypes) {
+      return resourceType.name() in _MIMETypes[networkRequest.mimeType];
     }
 
     return false;
@@ -466,7 +445,7 @@
 
     this._updateNetworkRequestWithResponse(networkRequest, info.outerResponse);
     this._updateNetworkRequest(networkRequest);
-    this._manager.dispatchEventToListeners(SDK.NetworkManager.Events.ResponseReceived, networkRequest);
+    this._manager.dispatchEventToListeners(Events.ResponseReceived, networkRequest);
   }
 
   /**
@@ -499,7 +478,7 @@
             requestId, loaderId, time, Protocol.Network.ResourceType.Other, redirectResponse, frameId);
       }
       networkRequest = this._appendRedirect(requestId, time, request.url);
-      this._manager.dispatchEventToListeners(SDK.NetworkManager.Events.RequestRedirected, networkRequest);
+      this._manager.dispatchEventToListeners(Events.RequestRedirected, networkRequest);
     } else {
       networkRequest =
           this._createNetworkRequest(requestId, frameId || '', loaderId, request.url, documentURL, initiator);
@@ -539,7 +518,7 @@
    */
   responseReceived(requestId, loaderId, time, resourceType, response, frameId) {
     const networkRequest = this._inflightRequestsById[requestId];
-    const lowercaseHeaders = SDK.NetworkManager.lowercaseHeaders(response.headers);
+    const lowercaseHeaders = NetworkManager.lowercaseHeaders(response.headers);
     if (!networkRequest) {
       // We missed the requestWillBeSent.
       const eventData = {};
@@ -550,7 +529,7 @@
       eventData.mimeType = response.mimeType;
       const lastModifiedHeader = lowercaseHeaders['last-modified'];
       eventData.lastModified = lastModifiedHeader ? new Date(lastModifiedHeader) : null;
-      this._manager.dispatchEventToListeners(SDK.NetworkManager.Events.RequestUpdateDropped, eventData);
+      this._manager.dispatchEventToListeners(Events.RequestUpdateDropped, eventData);
       return;
     }
 
@@ -568,14 +547,14 @@
             'Set-Cookie header is ignored in response from url: %s. Cookie length should be less than or equal to 4096 characters.',
             response.url);
         this._manager.dispatchEventToListeners(
-            SDK.NetworkManager.Events.MessageGenerated, {message: message, requestId: requestId, warning: true});
+            Events.MessageGenerated, {message: message, requestId: requestId, warning: true});
       }
     }
 
     this._updateNetworkRequestWithResponse(networkRequest, response);
 
     this._updateNetworkRequest(networkRequest);
-    this._manager.dispatchEventToListeners(SDK.NetworkManager.Events.ResponseReceived, networkRequest);
+    this._manager.dispatchEventToListeners(Events.ResponseReceived, networkRequest);
   }
 
   /**
@@ -645,7 +624,7 @@
       if (blockedReason === Protocol.Network.BlockedReason.Inspector) {
         const message = Common.UIString('Request was blocked by DevTools: "%s".', networkRequest.url());
         this._manager.dispatchEventToListeners(
-            SDK.NetworkManager.Events.MessageGenerated, {message: message, requestId: requestId, warning: true});
+            Events.MessageGenerated, {message: message, requestId: requestId, warning: true});
       }
     }
     networkRequest.localizedFailDescription = localizedDescription;
@@ -661,7 +640,7 @@
    */
   webSocketCreated(requestId, requestURL, initiator) {
     const networkRequest = new SDK.NetworkRequest(requestId, requestURL, '', '', '', initiator || null);
-    networkRequest[SDK.NetworkManager._networkManagerForRequestSymbol] = this._manager;
+    networkRequest[_networkManagerForRequestSymbol] = this._manager;
     networkRequest.setResourceType(Common.resourceTypes.WebSocket);
     this._startNetworkRequest(networkRequest);
   }
@@ -815,7 +794,7 @@
   requestIntercepted(
       interceptionId, request, frameId, resourceType, isNavigationRequest, isDownload, redirectUrl, authChallenge,
       responseErrorReason, responseStatusCode, responseHeaders, requestId) {
-    SDK.multitargetNetworkManager._requestIntercepted(new SDK.MultitargetNetworkManager.InterceptedRequest(
+    SDK.multitargetNetworkManager._requestIntercepted(new InterceptedRequest(
         this._manager.target().networkAgent(), interceptionId, request, frameId, resourceType, isNavigationRequest,
         isDownload, redirectUrl, authChallenge, responseErrorReason, responseStatusCode, responseHeaders, requestId));
   }
@@ -909,12 +888,12 @@
     if (!request) {
       return null;
     }
-    const oldDispatcher = SDK.NetworkManager.forRequest(request)._dispatcher;
+    const oldDispatcher = NetworkManager.forRequest(request)._dispatcher;
     delete oldDispatcher._inflightRequestsById[requestId];
     delete oldDispatcher._inflightRequestsByURL[request.url()];
     this._inflightRequestsById[requestId] = request;
     this._inflightRequestsByURL[request.url()] = request;
-    request[SDK.NetworkManager._networkManagerForRequestSymbol] = this._manager;
+    request[_networkManagerForRequestSymbol] = this._manager;
     return request;
   }
 
@@ -930,14 +909,14 @@
       SDK.multitargetNetworkManager._inflightMainResourceRequests.set(networkRequest.requestId(), networkRequest);
     }
 
-    this._manager.dispatchEventToListeners(SDK.NetworkManager.Events.RequestStarted, networkRequest);
+    this._manager.dispatchEventToListeners(Events.RequestStarted, networkRequest);
   }
 
   /**
    * @param {!SDK.NetworkRequest} networkRequest
    */
   _updateNetworkRequest(networkRequest) {
-    this._manager.dispatchEventToListeners(SDK.NetworkManager.Events.RequestUpdated, networkRequest);
+    this._manager.dispatchEventToListeners(Events.RequestUpdated, networkRequest);
   }
 
   /**
@@ -959,7 +938,7 @@
         networkRequest.setTransferSize(encodedDataLength);
       }
     }
-    this._manager.dispatchEventToListeners(SDK.NetworkManager.Events.RequestFinished, networkRequest);
+    this._manager.dispatchEventToListeners(Events.RequestFinished, networkRequest);
     delete this._inflightRequestsById[networkRequest.requestId()];
     delete this._inflightRequestsByURL[networkRequest.url()];
     SDK.multitargetNetworkManager._inflightMainResourceRequests.delete(networkRequest.requestId());
@@ -969,8 +948,7 @@
           `Cross-Origin Read Blocking (CORB) blocked cross-origin response %s with MIME type %s. See https://www.chromestatus.com/feature/5629709824032768 for more details.`,
           networkRequest.url(), networkRequest.mimeType);
       this._manager.dispatchEventToListeners(
-          SDK.NetworkManager.Events.MessageGenerated,
-          {message: message, requestId: networkRequest.requestId(), warning: true});
+          Events.MessageGenerated, {message: message, requestId: networkRequest.requestId(), warning: true});
     }
 
     if (Common.moduleSetting('monitoringXHREnabled').get() &&
@@ -988,8 +966,7 @@
       }
 
       this._manager.dispatchEventToListeners(
-          SDK.NetworkManager.Events.MessageGenerated,
-          {message: message, requestId: networkRequest.requestId(), warning: false});
+          Events.MessageGenerated, {message: message, requestId: networkRequest.requestId(), warning: false});
     }
   }
 
@@ -1003,16 +980,16 @@
    */
   _createNetworkRequest(requestId, frameId, loaderId, url, documentURL, initiator) {
     const request = new SDK.NetworkRequest(requestId, url, documentURL, frameId, loaderId, initiator);
-    request[SDK.NetworkManager._networkManagerForRequestSymbol] = this._manager;
+    request[_networkManagerForRequestSymbol] = this._manager;
     return request;
   }
-};
+}
 
 /**
- * @implements {SDK.SDKModelObserver<!SDK.NetworkManager>}
+ * @implements {SDK.SDKModelObserver<!NetworkManager>}
  * @unrestricted
  */
-SDK.MultitargetNetworkManager = class extends Common.Object {
+export class MultitargetNetworkManager extends Common.Object {
   constructor() {
     super();
     this._userAgentOverride = '';
@@ -1021,7 +998,7 @@
     /** @type {!Map<string, !SDK.NetworkRequest>} */
     this._inflightMainResourceRequests = new Map();
     /** @type {!SDK.NetworkManager.Conditions} */
-    this._networkConditions = SDK.NetworkManager.NoThrottlingConditions;
+    this._networkConditions = NoThrottlingConditions;
     /** @type {?Promise} */
     this._updatingInterceptionPatternsPromise = null;
 
@@ -1034,7 +1011,7 @@
     /** @type {!Platform.Multimap<!SDK.MultitargetNetworkManager.RequestInterceptor, !SDK.MultitargetNetworkManager.InterceptionPattern>} */
     this._urlsForRequestInterceptor = new Platform.Multimap();
 
-    SDK.targetManager.observeModels(SDK.NetworkManager, this);
+    SDK.targetManager.observeModels(NetworkManager, this);
   }
 
   /**
@@ -1057,7 +1034,7 @@
 
   /**
    * @override
-   * @param {!SDK.NetworkManager} networkManager
+   * @param {!NetworkManager} networkManager
    */
   modelAdded(networkManager) {
     const networkAgent = networkManager.target().networkAgent();
@@ -1081,11 +1058,11 @@
 
   /**
    * @override
-   * @param {!SDK.NetworkManager} networkManager
+   * @param {!NetworkManager} networkManager
    */
   modelRemoved(networkManager) {
     for (const entry of this._inflightMainResourceRequests) {
-      const manager = SDK.NetworkManager.forRequest(/** @type {!SDK.NetworkRequest} */ (entry[1]));
+      const manager = NetworkManager.forRequest(/** @type {!SDK.NetworkRequest} */ (entry[1]));
       if (manager !== networkManager) {
         continue;
       }
@@ -1117,7 +1094,7 @@
     for (const agent of this._agents) {
       this._updateNetworkConditions(agent);
     }
-    this.dispatchEventToListeners(SDK.MultitargetNetworkManager.Events.ConditionsChanged);
+    this.dispatchEventToListeners(MultitargetNetworkManager.Events.ConditionsChanged);
   }
 
   /**
@@ -1137,7 +1114,7 @@
     } else {
       networkAgent.emulateNetworkConditions(
           this.isOffline(), conditions.latency, conditions.download < 0 ? 0 : conditions.download,
-          conditions.upload < 0 ? 0 : conditions.upload, SDK.NetworkManager._connectionType(conditions));
+          conditions.upload < 0 ? 0 : conditions.upload, NetworkManager._connectionType(conditions));
     }
   }
 
@@ -1176,7 +1153,7 @@
     if (!this._customUserAgent) {
       this._updateUserAgentOverride();
     }
-    this.dispatchEventToListeners(SDK.MultitargetNetworkManager.Events.UserAgentChanged);
+    this.dispatchEventToListeners(MultitargetNetworkManager.Events.UserAgentChanged);
   }
 
   /**
@@ -1222,7 +1199,7 @@
   setBlockedPatterns(patterns) {
     this._blockedPatternsSetting.set(patterns);
     this._updateBlockedPatterns();
-    this.dispatchEventToListeners(SDK.MultitargetNetworkManager.Events.BlockedPatternsChanged);
+    this.dispatchEventToListeners(MultitargetNetworkManager.Events.BlockedPatternsChanged);
   }
 
   /**
@@ -1234,7 +1211,7 @@
     }
     this._blockingEnabledSetting.set(enabled);
     this._updateBlockedPatterns();
-    this.dispatchEventToListeners(SDK.MultitargetNetworkManager.Events.BlockedPatternsChanged);
+    this.dispatchEventToListeners(MultitargetNetworkManager.Events.BlockedPatternsChanged);
   }
 
   _updateBlockedPatterns() {
@@ -1300,12 +1277,12 @@
     for (const agent of this._agents) {
       promises.push(agent.setRequestInterception(this._urlsForRequestInterceptor.valuesArray()));
     }
-    this.dispatchEventToListeners(SDK.MultitargetNetworkManager.Events.InterceptorsChanged);
+    this.dispatchEventToListeners(MultitargetNetworkManager.Events.InterceptorsChanged);
     return Promise.all(promises);
   }
 
   /**
-   * @param {!SDK.MultitargetNetworkManager.InterceptedRequest} interceptedRequest
+   * @param {!InterceptedRequest} interceptedRequest
    */
   async _requestIntercepted(interceptedRequest) {
     for (const requestInterceptor of this._urlsForRequestInterceptor.keysArray()) {
@@ -1358,17 +1335,17 @@
 
     Host.ResourceLoader.load(url, headers, callback);
   }
-};
+}
 
 /** @enum {symbol} */
-SDK.MultitargetNetworkManager.Events = {
+MultitargetNetworkManager.Events = {
   BlockedPatternsChanged: Symbol('BlockedPatternsChanged'),
   ConditionsChanged: Symbol('ConditionsChanged'),
   UserAgentChanged: Symbol('UserAgentChanged'),
   InterceptorsChanged: Symbol('InterceptorsChanged')
 };
 
-SDK.MultitargetNetworkManager.InterceptedRequest = class {
+export class InterceptedRequest {
   /**
    * @param {!Protocol.NetworkAgent} networkAgent
    * @param {!Protocol.Network.InterceptionId} interceptionId
@@ -1472,7 +1449,7 @@
     const error = response[Protocol.Error] || null;
     return {error: error, content: error ? null : response.body, encoded: response.base64Encoded};
   }
-};
+}
 
 /**
  * Helper class to match requests created from requestWillBeSent with
@@ -1568,13 +1545,69 @@
   }
 }
 
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.NetworkManager = NetworkManager;
+
+/** @enum {symbol} */
+SDK.NetworkManager.Events = Events;
+
+SDK.NetworkManager._MIMETypes = _MIMETypes;
+
+/** @type {!SDK.NetworkManager.Conditions} */
+SDK.NetworkManager.NoThrottlingConditions = NoThrottlingConditions;
+
+/** @type {!SDK.NetworkManager.Conditions} */
+SDK.NetworkManager.OfflineConditions = OfflineConditions;
+
+/** @type {!SDK.NetworkManager.Conditions} */
+SDK.NetworkManager.Slow3GConditions = Slow3GConditions;
+
+/** @type {!SDK.NetworkManager.Conditions} */
+SDK.NetworkManager.Fast3GConditions = Fast3GConditions;
+
+SDK.NetworkManager._networkManagerForRequestSymbol = _networkManagerForRequestSymbol;
+SDK.NetworkManager.MAX_EAGER_POST_REQUEST_BODY_LENGTH = MAX_EAGER_POST_REQUEST_BODY_LENGTH;
+
+/** @constructor */
+SDK.NetworkDispatcher = NetworkDispatcher;
+
+/** @constructor */
+SDK.MultitargetNetworkManager = MultitargetNetworkManager;
+
+/** @constructor */
+SDK.MultitargetNetworkManager.InterceptedRequest = InterceptedRequest;
+
+/** @typedef {{url: string, enabled: boolean}} */
+SDK.NetworkManager.BlockedPattern;
+
+/**
+ * @typedef {{
+  *   download: number,
+  *   upload: number,
+  *   latency: number,
+  *   title: string,
+  * }}
+  */
+SDK.NetworkManager.Conditions;
+
+/** @typedef {{message: string, requestId: string, warning: boolean}} */
+SDK.NetworkManager.Message;
+
 /** @typedef {!{urlPattern: string, interceptionStage: !Protocol.Network.InterceptionStage}} */
 SDK.MultitargetNetworkManager.InterceptionPattern;
 
-/** @typedef {!function(!SDK.MultitargetNetworkManager.InterceptedRequest):!Promise} */
+/** @typedef {!function(!InterceptedRequest):!Promise} */
 SDK.MultitargetNetworkManager.RequestInterceptor;
 
 /**
- * @type {!SDK.MultitargetNetworkManager}
+ * @type {!MultitargetNetworkManager}
  */
 SDK.multitargetNetworkManager;
+
+SDK.SDKModel.register(SDK.NetworkManager, SDK.Target.Capability.Network, true);
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/NetworkRequest.js b/third_party/blink/renderer/devtools/front_end/sdk/NetworkRequest.js
index 5e74e634..1e7f1697 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/NetworkRequest.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/NetworkRequest.js
@@ -31,7 +31,7 @@
  * @implements {Common.ContentProvider}
  * @unrestricted
  */
-SDK.NetworkRequest = class extends Common.Object {
+export default class NetworkRequest extends Common.Object {
   /**
    * @param {!Protocol.Network.RequestId} requestId
    * @param {string} url
@@ -51,9 +51,9 @@
     this._loaderId = loaderId;
     /** @type {?Protocol.Network.Initiator} */
     this._initiator = initiator;
-    /** @type {?SDK.NetworkRequest} */
+    /** @type {?NetworkRequest} */
     this._redirectSource = null;
-    /** @type {?SDK.NetworkRequest} */
+    /** @type {?NetworkRequest} */
     this._redirectDestination = null;
     this._issueTime = -1;
     this._startTime = -1;
@@ -65,6 +65,7 @@
     this.statusText = '';
     this.requestMethod = '';
     this.requestTime = 0;
+    /** @type {string} */
     this.protocol = '';
     /** @type {!Protocol.Security.MixedContentType} */
     this.mixedContentType = Protocol.Security.MixedContentType.None;
@@ -125,7 +126,7 @@
   }
 
   /**
-   * @param {!SDK.NetworkRequest} other
+   * @param {!NetworkRequest} other
    * @return {number}
    */
   indentityCompare(other) {
@@ -215,7 +216,7 @@
    */
   setRemoteAddress(ip, port) {
     this._remoteAddress = ip + ':' + port;
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.RemoteAddressChanged, this);
+    this.dispatchEventToListeners(Events.RemoteAddressChanged, this);
   }
 
   /**
@@ -334,7 +335,7 @@
         this._responseReceivedTime = x;
       }
     }
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.TimingChanged, this);
+    this.dispatchEventToListeners(Events.TimingChanged, this);
   }
 
   /**
@@ -410,7 +411,7 @@
     this._finished = x;
 
     if (x) {
-      this.dispatchEventToListeners(SDK.NetworkRequest.Events.FinishedLoading, this);
+      this.dispatchEventToListeners(Events.FinishedLoading, this);
     }
   }
 
@@ -551,7 +552,7 @@
     }
 
     this._timing = timingInfo;
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.TimingChanged, this);
+    this.dispatchEventToListeners(Events.TimingChanged, this);
   }
 
   /**
@@ -670,28 +671,28 @@
   }
 
   /**
-   * @return {?SDK.NetworkRequest}
+   * @return {?NetworkRequest}
    */
   redirectSource() {
     return this._redirectSource;
   }
 
   /**
-   * @param {?SDK.NetworkRequest} originatingRequest
+   * @param {?NetworkRequest} originatingRequest
    */
   setRedirectSource(originatingRequest) {
     this._redirectSource = originatingRequest;
   }
 
   /**
-   * @return {?SDK.NetworkRequest}
+   * @return {?NetworkRequest}
    */
   redirectDestination() {
     return this._redirectDestination;
   }
 
   /**
-   * @param {?SDK.NetworkRequest} redirectDestination
+   * @param {?NetworkRequest} redirectDestination
    */
   setRedirectDestination(redirectDestination) {
     this._redirectDestination = redirectDestination;
@@ -711,7 +712,7 @@
     this._requestHeaders = headers;
     delete this._requestCookies;
 
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.RequestHeadersChanged);
+    this.dispatchEventToListeners(Events.RequestHeadersChanged);
   }
 
   /**
@@ -727,7 +728,7 @@
   setRequestHeadersText(text) {
     this._requestHeadersText = text;
 
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.RequestHeadersChanged);
+    this.dispatchEventToListeners(Events.RequestHeadersChanged);
   }
 
   /**
@@ -816,7 +817,7 @@
     delete this._responseCookies;
     this._responseHeaderValues = {};
 
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.ResponseHeadersChanged);
+    this.dispatchEventToListeners(Events.ResponseHeadersChanged);
   }
 
   /**
@@ -832,7 +833,7 @@
   set responseHeadersText(x) {
     this._responseHeadersText = x;
 
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.ResponseHeadersChanged);
+    this.dispatchEventToListeners(Events.ResponseHeadersChanged);
   }
 
   /**
@@ -1263,13 +1264,8 @@
    * @param {number} time
    */
   addProtocolFrameError(errorMessage, time) {
-    this.addFrame({
-      type: SDK.NetworkRequest.WebSocketFrameType.Error,
-      text: errorMessage,
-      time: this.pseudoWallTime(time),
-      opCode: -1,
-      mask: false
-    });
+    this.addFrame(
+        {type: WebSocketFrameType.Error, text: errorMessage, time: this.pseudoWallTime(time), opCode: -1, mask: false});
   }
 
   /**
@@ -1278,7 +1274,7 @@
    * @param {boolean} sent
    */
   addProtocolFrame(response, time, sent) {
-    const type = sent ? SDK.NetworkRequest.WebSocketFrameType.Send : SDK.NetworkRequest.WebSocketFrameType.Receive;
+    const type = sent ? WebSocketFrameType.Send : WebSocketFrameType.Receive;
     this.addFrame({
       type: type,
       text: response.payloadData,
@@ -1293,7 +1289,7 @@
    */
   addFrame(frame) {
     this._frames.push(frame);
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.WebsocketFrameAdded, frame);
+    this.dispatchEventToListeners(Events.WebsocketFrameAdded, frame);
   }
 
   /**
@@ -1312,7 +1308,7 @@
   addEventSourceMessage(time, eventName, eventId, data) {
     const message = {time: this.pseudoWallTime(time), eventName: eventName, eventId: eventId, data: data};
     this._eventSourceMessages.push(message);
-    this.dispatchEventToListeners(SDK.NetworkRequest.Events.EventSourceMessageAdded, message);
+    this.dispatchEventToListeners(Events.EventSourceMessageAdded, message);
   }
 
   /**
@@ -1416,10 +1412,10 @@
   blockedResponseCookies() {
     return this._blockedResponseCookies;
   }
-};
+}
 
 /** @enum {symbol} */
-SDK.NetworkRequest.Events = {
+export const Events = {
   FinishedLoading: Symbol('FinishedLoading'),
   TimingChanged: Symbol('TimingChanged'),
   RemoteAddressChanged: Symbol('RemoteAddressChanged'),
@@ -1430,7 +1426,7 @@
 };
 
 /** @enum {string} */
-SDK.NetworkRequest.InitiatorType = {
+export const InitiatorType = {
   Other: 'other',
   Parser: 'parser',
   Redirect: 'redirect',
@@ -1439,30 +1435,18 @@
   SignedExchange: 'signedExchange'
 };
 
-/** @typedef {!{name: string, value: string}} */
-SDK.NetworkRequest.NameValue;
-
 /** @enum {string} */
-SDK.NetworkRequest.WebSocketFrameType = {
+export const WebSocketFrameType = {
   Send: 'send',
   Receive: 'receive',
   Error: 'error'
 };
 
-/** @typedef {!{type: SDK.NetworkRequest.WebSocketFrameType, time: number, text: string, opCode: number, mask: boolean}} */
-SDK.NetworkRequest.WebSocketFrame;
-
-/** @typedef {!{time: number, eventName: string, eventId: string, data: string}} */
-SDK.NetworkRequest.EventSourceMessage;
-
-/** @typedef {!{error: ?string, content: ?string, encoded: boolean}} */
-SDK.NetworkRequest.ContentData;
-
 /**
  * @param {!Protocol.Network.CookieBlockedReason} blockedReason
  * @return {string}
  */
-SDK.NetworkRequest.cookieBlockedReasonToUiString = function(blockedReason) {
+export const cookieBlockedReasonToUiString = function(blockedReason) {
   switch (blockedReason) {
     case Protocol.Network.CookieBlockedReason.SecureOnly:
       return ls`This cookie had the "Secure" attribute and the connection was not secure.`;
@@ -1498,7 +1482,7 @@
  * @param {!Protocol.Network.SetCookieBlockedReason} blockedReason
  * @return {string}
  */
-SDK.NetworkRequest.setCookieBlockedReasonToUiString = function(blockedReason) {
+export const setCookieBlockedReasonToUiString = function(blockedReason) {
   switch (blockedReason) {
     case Protocol.Network.SetCookieBlockedReason.SecureOnly:
       return ls
@@ -1540,7 +1524,7 @@
  * @param {!Protocol.Network.CookieBlockedReason} blockedReason
  * @return {?SDK.Cookie.Attributes}
  */
-SDK.NetworkRequest.cookieBlockedReasonToAttribute = function(blockedReason) {
+export const cookieBlockedReasonToAttribute = function(blockedReason) {
   switch (blockedReason) {
     case Protocol.Network.CookieBlockedReason.SecureOnly:
       return SDK.Cookie.Attributes.Secure;
@@ -1565,7 +1549,7 @@
  * @param {!Protocol.Network.SetCookieBlockedReason} blockedReason
  * @return {?SDK.Cookie.Attributes}
  */
-SDK.NetworkRequest.setCookieBlockedReasonToAttribute = function(blockedReason) {
+export const setCookieBlockedReasonToAttribute = function(blockedReason) {
   switch (blockedReason) {
     case Protocol.Network.SetCookieBlockedReason.SecureOnly:
     case Protocol.Network.SetCookieBlockedReason.OverwriteSecure:
@@ -1589,37 +1573,71 @@
   return null;
 };
 
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.NetworkRequest = NetworkRequest;
+
+/** @enum {symbol} */
+SDK.NetworkRequest.Events = Events;
+
+/** @enum {string} */
+SDK.NetworkRequest.InitiatorType = InitiatorType;
+
+/** @enum {string} */
+SDK.NetworkRequest.WebSocketFrameType = WebSocketFrameType;
+
+SDK.NetworkRequest.cookieBlockedReasonToUiString = cookieBlockedReasonToUiString;
+SDK.NetworkRequest.setCookieBlockedReasonToUiString = setCookieBlockedReasonToUiString;
+SDK.NetworkRequest.cookieBlockedReasonToAttribute = cookieBlockedReasonToAttribute;
+SDK.NetworkRequest.setCookieBlockedReasonToAttribute = setCookieBlockedReasonToAttribute;
+
+/** @typedef {!{name: string, value: string}} */
+SDK.NetworkRequest.NameValue;
+
+/** @typedef {!{type: WebSocketFrameType, time: number, text: string, opCode: number, mask: boolean}} */
+SDK.NetworkRequest.WebSocketFrame;
+
+/** @typedef {!{time: number, eventName: string, eventId: string, data: string}} */
+SDK.NetworkRequest.EventSourceMessage;
+
+/** @typedef {!{error: ?string, content: ?string, encoded: boolean}} */
+SDK.NetworkRequest.ContentData;
 
 /**
  * @typedef {!{
- *   blockedReasons: !Array<!Protocol.Network.CookieBlockedReason>,
- *   cookie: !SDK.Cookie
- * }}
- */
+  *   blockedReasons: !Array<!Protocol.Network.CookieBlockedReason>,
+  *   cookie: !SDK.Cookie
+  * }}
+  */
 SDK.NetworkRequest.BlockedCookieWithReason;
 
 /**
- * @typedef {!{
- *   blockedRequestCookies: !Array<!SDK.NetworkRequest.BlockedCookieWithReason>,
- *   requestHeaders: !Array<!SDK.NetworkRequest.NameValue>
- * }}
- */
+  * @typedef {!{
+  *   blockedRequestCookies: !Array<!SDK.NetworkRequest.BlockedCookieWithReason>,
+  *   requestHeaders: !Array<!SDK.NetworkRequest.NameValue>
+  * }}
+  */
 SDK.NetworkRequest.ExtraRequestInfo;
 
 /**
- * @typedef {!{
- *   blockedReasons: !Array<!Protocol.Network.SetCookieBlockedReason>,
- *   cookieLine: string,
- *   cookie: ?SDK.Cookie
- * }}
- */
+  * @typedef {!{
+  *   blockedReasons: !Array<!Protocol.Network.SetCookieBlockedReason>,
+  *   cookieLine: string,
+  *   cookie: ?SDK.Cookie
+  * }}
+  */
 SDK.NetworkRequest.BlockedSetCookieWithReason;
 
 /**
- * @typedef {!{
- *   blockedResponseCookies: !Array<!SDK.NetworkRequest.BlockedSetCookieWithReason>,
- *   responseHeaders: !Array<!SDK.NetworkRequest.NameValue>,
- *   responseHeadersText: (string|undefined)
- * }}
- */
-SDK.NetworkRequest.ExtraResponseInfo;
+  * @typedef {!{
+  *   blockedResponseCookies: !Array<!SDK.NetworkRequest.BlockedSetCookieWithReason>,
+  *   responseHeaders: !Array<!SDK.NetworkRequest.NameValue>,
+  *   responseHeadersText: (string|undefined)
+  * }}
+  */
+SDK.NetworkRequest.ExtraResponseInfo;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/OverlayModel.js b/third_party/blink/renderer/devtools/front_end/sdk/OverlayModel.js
index 27c52b90..ce130adb 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/OverlayModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/OverlayModel.js
@@ -5,7 +5,7 @@
 /**
  * @implements {Protocol.OverlayDispatcher}
  */
-SDK.OverlayModel = class extends SDK.SDKModel {
+export default class OverlayModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -30,7 +30,7 @@
 
     this._inspectModeEnabled = false;
     this._hideHighlightTimeout = null;
-    this._defaultHighlighter = new SDK.OverlayModel.DefaultHighlighter(this);
+    this._defaultHighlighter = new DefaultHighlighter(this);
     this._highlighter = this._defaultHighlighter;
 
     this._showPaintRectsSetting = Common.moduleSetting('showPaintRects');
@@ -60,17 +60,17 @@
   }
 
   static hideDOMNodeHighlight() {
-    for (const overlayModel of SDK.targetManager.models(SDK.OverlayModel)) {
+    for (const overlayModel of SDK.targetManager.models(OverlayModel)) {
       overlayModel._delayedHideHighlight(0);
     }
   }
 
   static async muteHighlight() {
-    return Promise.all(SDK.targetManager.models(SDK.OverlayModel).map(model => model.suspendModel()));
+    return Promise.all(SDK.targetManager.models(OverlayModel).map(model => model.suspendModel()));
   }
 
   static async unmuteHighlight() {
-    return Promise.all(SDK.targetManager.models(SDK.OverlayModel).map(model => model.resumeModel()));
+    return Promise.all(SDK.targetManager.models(OverlayModel).map(model => model.resumeModel()));
   }
 
   /**
@@ -164,7 +164,7 @@
   }
 
   /**
-   * @param {?SDK.OverlayModel.Highlighter} highlighter
+   * @param {?Highlighter} highlighter
    */
   setHighlighter(highlighter) {
     this._highlighter = highlighter || this._defaultHighlighter;
@@ -178,7 +178,7 @@
   async setInspectMode(mode, showStyles = true) {
     await this._domModel.requestDocument();
     this._inspectModeEnabled = mode !== Protocol.Overlay.InspectMode.None;
-    this.dispatchEventToListeners(SDK.OverlayModel.Events.InspectModeWillBeToggled, this);
+    this.dispatchEventToListeners(Events.InspectModeWillBeToggled, this);
     this._highlighter.setInspectMode(mode, this._buildHighlightConfig('all', showStyles));
   }
 
@@ -279,7 +279,7 @@
   nodeHighlightRequested(nodeId) {
     const node = this._domModel.nodeForId(nodeId);
     if (node) {
-      this.dispatchEventToListeners(SDK.OverlayModel.Events.HighlightNodeRequested, node);
+      this.dispatchEventToListeners(Events.HighlightNodeRequested, node);
     }
   }
 
@@ -287,7 +287,7 @@
    * @param {function(!SDK.DOMNode)} handler
    */
   static setInspectNodeHandler(handler) {
-    SDK.OverlayModel._inspectNodeHandler = handler;
+    OverlayModel._inspectNodeHandler = handler;
   }
 
   /**
@@ -296,16 +296,16 @@
    */
   inspectNodeRequested(backendNodeId) {
     const deferredNode = new SDK.DeferredDOMNode(this.target(), backendNodeId);
-    if (SDK.OverlayModel._inspectNodeHandler) {
+    if (OverlayModel._inspectNodeHandler) {
       deferredNode.resolvePromise().then(node => {
         if (node) {
-          SDK.OverlayModel._inspectNodeHandler(node);
+          OverlayModel._inspectNodeHandler(node);
         }
       });
     } else {
       Common.Revealer.reveal(deferredNode);
     }
-    this.dispatchEventToListeners(SDK.OverlayModel.Events.ExitedInspectMode);
+    this.dispatchEventToListeners(Events.ExitedInspectMode);
   }
 
   /**
@@ -313,22 +313,20 @@
    * @param {!Protocol.Page.Viewport} viewport
    */
   screenshotRequested(viewport) {
-    this.dispatchEventToListeners(SDK.OverlayModel.Events.ScreenshotRequested, viewport);
-    this.dispatchEventToListeners(SDK.OverlayModel.Events.ExitedInspectMode);
+    this.dispatchEventToListeners(Events.ScreenshotRequested, viewport);
+    this.dispatchEventToListeners(Events.ExitedInspectMode);
   }
 
   /**
    * @override
    */
   inspectModeCanceled() {
-    this.dispatchEventToListeners(SDK.OverlayModel.Events.ExitedInspectMode);
+    this.dispatchEventToListeners(Events.ExitedInspectMode);
   }
-};
-
-SDK.SDKModel.register(SDK.OverlayModel, SDK.Target.Capability.DOM, true);
+}
 
 /** @enum {symbol} */
-SDK.OverlayModel.Events = {
+export const Events = {
   InspectModeWillBeToggled: Symbol('InspectModeWillBeToggled'),
   ExitedInspectMode: Symbol('InspectModeExited'),
   HighlightNodeRequested: Symbol('HighlightNodeRequested'),
@@ -338,40 +336,34 @@
 /**
  * @interface
  */
-SDK.OverlayModel.Highlighter = function() {};
-
-/** @typedef {{node: (!SDK.DOMNode|undefined),
-               deferredNode: (!SDK.DeferredDOMNode|undefined),
-               selectorList: (string|undefined),
-               object:(!SDK.RemoteObject|undefined)}} */
-SDK.OverlayModel.HighlightData;
-
-SDK.OverlayModel.Highlighter.prototype = {
+export class Highlighter {
   /**
    * @param {!SDK.OverlayModel.HighlightData} data
    * @param {!Protocol.Overlay.HighlightConfig} config
    */
-  highlightInOverlay(data, config) {},
+  highlightInOverlay(data, config) {
+  }
 
   /**
    * @param {!Protocol.Overlay.InspectMode} mode
    * @param {!Protocol.Overlay.HighlightConfig} config
    * @return {!Promise}
    */
-  setInspectMode(mode, config) {},
+  setInspectMode(mode, config) {
+  }
 
   /**
    * @param {!Protocol.Page.FrameId} frameId
    */
   highlightFrame(frameId) {}
-};
+}
 
 /**
- * @implements {SDK.OverlayModel.Highlighter}
+ * @implements {Highlighter}
  */
-SDK.OverlayModel.DefaultHighlighter = class {
+export class DefaultHighlighter {
   /**
-   * @param {!SDK.OverlayModel} model
+   * @param {!OverlayModel} model
    */
   constructor(model) {
     this._model = model;
@@ -413,4 +405,34 @@
         frameId, Common.Color.PageHighlight.Content.toProtocolRGBA(),
         Common.Color.PageHighlight.ContentOutline.toProtocolRGBA());
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.OverlayModel = OverlayModel;
+
+/** @enum {symbol} */
+SDK.OverlayModel.Events = Events;
+
+/**
+ * @interface
+ */
+SDK.OverlayModel.Highlighter = Highlighter;
+
+/**
+ * @implements {Highlighter}
+ */
+SDK.OverlayModel.DefaultHighlighter = DefaultHighlighter;
+
+SDK.SDKModel.register(SDK.OverlayModel, SDK.Target.Capability.DOM, true);
+
+/** @typedef {{node: (!SDK.DOMNode|undefined),
+  deferredNode: (!SDK.DeferredDOMNode|undefined),
+  selectorList: (string|undefined),
+  object:(!SDK.RemoteObject|undefined)}} */
+SDK.OverlayModel.HighlightData;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/PaintProfiler.js b/third_party/blink/renderer/devtools/front_end/sdk/PaintProfiler.js
index 33cfd7cb..7743cdb 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/PaintProfiler.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/PaintProfiler.js
@@ -28,7 +28,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-SDK.PaintProfilerModel = class extends SDK.SDKModel {
+export class PaintProfilerModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -39,16 +39,16 @@
 
   /**
    * @param {!Array.<!SDK.PictureFragment>} fragments
-   * @return {!Promise<?SDK.PaintProfilerSnapshot>}
+   * @return {!Promise<?PaintProfilerSnapshot>}
    */
   async loadSnapshotFromFragments(fragments) {
     const snapshotId = await this._layerTreeAgent.loadSnapshot(fragments);
-    return snapshotId && new SDK.PaintProfilerSnapshot(this, snapshotId);
+    return snapshotId && new PaintProfilerSnapshot(this, snapshotId);
   }
 
   /**
    * @param {string} encodedPicture
-   * @return {!Promise<?SDK.PaintProfilerSnapshot>}
+   * @return {!Promise<?PaintProfilerSnapshot>}
    */
   loadSnapshot(encodedPicture) {
     const fragment = {x: 0, y: 0, picture: encodedPicture};
@@ -57,24 +57,17 @@
 
   /**
    * @param {string} layerId
-   * @return {!Promise<?SDK.PaintProfilerSnapshot>}
+   * @return {!Promise<?PaintProfilerSnapshot>}
    */
   async makeSnapshot(layerId) {
     const snapshotId = await this._layerTreeAgent.makeSnapshot(layerId);
-    return snapshotId && new SDK.PaintProfilerSnapshot(this, snapshotId);
+    return snapshotId && new PaintProfilerSnapshot(this, snapshotId);
   }
-};
+}
 
-SDK.SDKModel.register(SDK.PaintProfilerModel, SDK.Target.Capability.DOM, false);
-
-/**
- * @typedef {!{x: number, y: number, picture: string}}
- */
-SDK.PictureFragment;
-
-SDK.PaintProfilerSnapshot = class {
+export class PaintProfilerSnapshot {
   /**
-   * @param {!SDK.PaintProfilerModel} paintProfilerModel
+   * @param {!PaintProfilerModel} paintProfilerModel
    * @param {string} snapshotId
    */
   constructor(paintProfilerModel, snapshotId) {
@@ -114,25 +107,19 @@
   }
 
   /**
-   * @return {!Promise<?Array<!SDK.PaintProfilerLogItem>>}
+   * @return {!Promise<?Array<!PaintProfilerLogItem>>}
    */
   async commandLog() {
     const log = await this._paintProfilerModel._layerTreeAgent.snapshotCommandLog(this._id);
     return log &&
-        log.map(
-            (entry, index) => new SDK.PaintProfilerLogItem(/** @type {!SDK.RawPaintProfilerLogItem} */ (entry), index));
+        log.map((entry, index) => new PaintProfilerLogItem(/** @type {!SDK.RawPaintProfilerLogItem} */ (entry), index));
   }
-};
-
-/**
- * @typedef {!{method: string, params: ?Object<string, *>}}
- */
-SDK.RawPaintProfilerLogItem;
+}
 
 /**
  * @unrestricted
  */
-SDK.PaintProfilerLogItem = class {
+export class PaintProfilerLogItem {
   /**
    * @param {!SDK.RawPaintProfilerLogItem} rawEntry
    * @param {number} commandIndex
@@ -142,4 +129,31 @@
     this.params = rawEntry.params;
     this.commandIndex = commandIndex;
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.PaintProfilerModel = PaintProfilerModel;
+
+/** @constructor */
+SDK.PaintProfilerSnapshot = PaintProfilerSnapshot;
+
+/** @constructor */
+SDK.PaintProfilerLogItem = PaintProfilerLogItem;
+
+/**
+ * @typedef {!{x: number, y: number, picture: string}}
+ */
+SDK.PictureFragment;
+
+/**
+ * @typedef {!{method: string, params: ?Object<string, *>}}
+ */
+SDK.RawPaintProfilerLogItem;
+
+SDK.SDKModel.register(PaintProfilerModel, SDK.Target.Capability.DOM, false);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/PerformanceMetricsModel.js b/third_party/blink/renderer/devtools/front_end/sdk/PerformanceMetricsModel.js
index 8eb49d4..0cef268 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/PerformanceMetricsModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/PerformanceMetricsModel.js
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-SDK.PerformanceMetricsModel = class extends SDK.SDKModel {
+export default class PerformanceMetricsModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -10,8 +10,8 @@
     super(target);
     this._agent = target.performanceAgent();
 
-    const mode = SDK.PerformanceMetricsModel.MetricMode;
-    /** @type {!Map<string, !SDK.PerformanceMetricsModel.MetricMode>} */
+    const mode = MetricMode;
+    /** @type {!Map<string, !MetricMode>} */
     this._metricModes = new Map([
       ['TaskDuration', mode.CumulativeTime], ['ScriptDuration', mode.CumulativeTime],
       ['LayoutDuration', mode.CumulativeTime], ['RecalcStyleDuration', mode.CumulativeTime],
@@ -51,14 +51,14 @@
       }
       let value;
       switch (this._metricModes.get(metric.name)) {
-        case SDK.PerformanceMetricsModel.MetricMode.CumulativeTime:
+        case MetricMode.CumulativeTime:
           value = data.lastTimestamp ?
               Number.constrain((metric.value - data.lastValue) * 1000 / (timestamp - data.lastTimestamp), 0, 1) :
               0;
           data.lastValue = metric.value;
           data.lastTimestamp = timestamp;
           break;
-        case SDK.PerformanceMetricsModel.MetricMode.CumulativeCount:
+        case MetricMode.CumulativeCount:
           value = data.lastTimestamp ?
               Math.max(0, (metric.value - data.lastValue) * 1000 / (timestamp - data.lastTimestamp)) :
               0;
@@ -73,12 +73,24 @@
     }
     return {metrics: metrics, timestamp: timestamp};
   }
-};
+}
 
 /** @enum {symbol} */
-SDK.PerformanceMetricsModel.MetricMode = {
+export const MetricMode = {
   CumulativeTime: Symbol('CumulativeTime'),
   CumulativeCount: Symbol('CumulativeCount'),
 };
 
-SDK.SDKModel.register(SDK.PerformanceMetricsModel, SDK.Target.Capability.DOM, false);
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.PerformanceMetricsModel = PerformanceMetricsModel;
+
+/** @enum {symbol} */
+SDK.PerformanceMetricsModel.MetricMode = MetricMode;
+
+SDK.SDKModel.register(SDK.PerformanceMetricsModel, SDK.Target.Capability.DOM, false);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ProfileTreeModel.js b/third_party/blink/renderer/devtools/front_end/sdk/ProfileTreeModel.js
index 856b44a..df9ead5 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ProfileTreeModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/ProfileTreeModel.js
@@ -4,7 +4,7 @@
 /**
  * @unrestricted
  */
-SDK.ProfileNode = class {
+export class ProfileNode {
   /**
    * @param {!Protocol.Runtime.CallFrame} callFrame
    */
@@ -19,9 +19,9 @@
     this.total = 0;
     /** @type {number} */
     this.id = 0;
-    /** @type {?SDK.ProfileNode} */
+    /** @type {?ProfileNode} */
     this.parent = null;
-    /** @type {!Array<!SDK.ProfileNode>} */
+    /** @type {!Array<!ProfileNode>} */
     this.children = [];
   }
 
@@ -59,12 +59,12 @@
   get columnNumber() {
     return this.callFrame.columnNumber;
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.ProfileTreeModel = class {
+export default class ProfileTreeModel {
   /**
    * @param {?SDK.Target=} target
    */
@@ -73,7 +73,7 @@
   }
 
   /**
-   * @param {!SDK.ProfileNode} root
+   * @param {!ProfileNode} root
    * @protected
    */
   initialize(root) {
@@ -108,7 +108,7 @@
   }
 
   /**
-   * @param {!SDK.ProfileNode} root
+   * @param {!ProfileNode} root
    * @return {number}
    */
   _calculateTotals(root) {
@@ -133,4 +133,16 @@
   target() {
     return this._target;
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.ProfileTreeModel = ProfileTreeModel;
+
+/** @constructor */
+SDK.ProfileNode = ProfileNode;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/RemoteObject.js b/third_party/blink/renderer/devtools/front_end/sdk/RemoteObject.js
index bbd9834..c97ff79 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/RemoteObject.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/RemoteObject.js
@@ -27,31 +27,22 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
-/**
- * @typedef {{object: ?SDK.RemoteObject, wasThrown: (boolean|undefined)}}
- */
-SDK.CallFunctionResult;
 
-/**
- * @typedef {{properties: ?Array<!SDK.RemoteObjectProperty>, internalProperties: ?Array<!SDK.RemoteObjectProperty>}}
- */
-SDK.GetPropertiesResult;
-
-SDK.RemoteObject = class {
+export default class RemoteObject {
   /**
    * This may not be an interface due to "instanceof SDK.RemoteObject" checks in the code.
    */
 
   /**
    * @param {*} value
-   * @return {!SDK.RemoteObject}
+   * @return {!RemoteObject}
    */
   static fromLocalObject(value) {
-    return new SDK.LocalJSONObject(value);
+    return new LocalJSONObject(value);
   }
 
   /**
-   * @param {!SDK.RemoteObject} remoteObject
+   * @param {!RemoteObject} remoteObject
    * @return {string}
    */
   static type(remoteObject) {
@@ -72,12 +63,11 @@
    * @return {string}
    */
   static arrayNameFromDescription(description) {
-    return description.replace(SDK.RemoteObject._descriptionLengthParenRegex, '')
-        .replace(SDK.RemoteObject._descriptionLengthSquareRegex, '');
+    return description.replace(_descriptionLengthParenRegex, '').replace(_descriptionLengthSquareRegex, '');
   }
 
   /**
-   * @param {!SDK.RemoteObject|!Protocol.Runtime.RemoteObject|!Protocol.Runtime.ObjectPreview} object
+   * @param {!RemoteObject|!Protocol.Runtime.RemoteObject|!Protocol.Runtime.ObjectPreview} object
    * @return {number}
    */
   static arrayLength(object) {
@@ -86,8 +76,8 @@
     }
     // Array lengths in V8-generated descriptions switched from square brackets to parentheses.
     // Both formats are checked in case the front end is dealing with an old version of V8.
-    const parenMatches = object.description.match(SDK.RemoteObject._descriptionLengthParenRegex);
-    const squareMatches = object.description.match(SDK.RemoteObject._descriptionLengthSquareRegex);
+    const parenMatches = object.description.match(_descriptionLengthParenRegex);
+    const squareMatches = object.description.match(_descriptionLengthSquareRegex);
     return parenMatches ? parseInt(parenMatches[1], 10) : (squareMatches ? parseInt(squareMatches[1], 10) : 0);
   }
 
@@ -100,11 +90,10 @@
     if (type === 'number') {
       const description = String(object);
       if (object === 0 && 1 / object < 0) {
-        return SDK.RemoteObject.UnserializableNumber.Negative0;
+        return UnserializableNumber.Negative0;
       }
-      if (description === SDK.RemoteObject.UnserializableNumber.NaN ||
-          description === SDK.RemoteObject.UnserializableNumber.Infinity ||
-          description === SDK.RemoteObject.UnserializableNumber.NegativeInfinity) {
+      if (description === UnserializableNumber.NaN || description === UnserializableNumber.Infinity ||
+          description === UnserializableNumber.NegativeInfinity) {
         return description;
       }
     }
@@ -115,7 +104,7 @@
   }
 
   /**
-   * @param {!Protocol.Runtime.RemoteObject|!SDK.RemoteObject|number|string|boolean|undefined|null|bigint} object
+   * @param {!Protocol.Runtime.RemoteObject|!RemoteObject|number|string|boolean|undefined|null|bigint} object
    * @return {!Protocol.Runtime.CallArgument}
    */
   static toCallArgument(object) {
@@ -123,7 +112,7 @@
     if (type === 'undefined') {
       return {};
     }
-    const unserializableDescription = SDK.RemoteObject.unserializableDescription(object);
+    const unserializableDescription = RemoteObject.unserializableDescription(object);
     if (type === 'number') {
       if (unserializableDescription !== null) {
         return {unserializableValue: unserializableDescription};
@@ -141,9 +130,9 @@
       return {value: null};
     }
 
-    // The unserializableValue is a function on SDK.RemoteObject's and a simple property on
+    // The unserializableValue is a function on RemoteObject's and a simple property on
     // Protocol.Runtime.RemoteObject's.
-    if (object instanceof SDK.RemoteObject) {
+    if (object instanceof RemoteObject) {
       const unserializableValue = object.unserializableValue();
       if (unserializableValue !== undefined) {
         return {unserializableValue: unserializableValue};
@@ -160,7 +149,7 @@
   }
 
   /**
-   * @param {!SDK.RemoteObject} object
+   * @param {!RemoteObject} object
    * @param {boolean} generatePreview
    * @return {!Promise<!SDK.GetPropertiesResult>}
    */
@@ -341,10 +330,9 @@
   isNode() {
     return false;
   }
-};
+}
 
-
-SDK.RemoteObjectImpl = class extends SDK.RemoteObject {
+export class RemoteObjectImpl extends RemoteObject {
   /**
    * @param {!SDK.RuntimeModel} runtimeModel
    * @param {string|undefined} objectId
@@ -384,10 +372,10 @@
       this._hasChildren = false;
       if (typeof unserializableValue === 'string') {
         this._unserializableValue = unserializableValue;
-        if (unserializableValue === SDK.RemoteObject.UnserializableNumber.Infinity ||
-            unserializableValue === SDK.RemoteObject.UnserializableNumber.NegativeInfinity ||
-            unserializableValue === SDK.RemoteObject.UnserializableNumber.Negative0 ||
-            unserializableValue === SDK.RemoteObject.UnserializableNumber.NaN) {
+        if (unserializableValue === UnserializableNumber.Infinity ||
+            unserializableValue === UnserializableNumber.NegativeInfinity ||
+            unserializableValue === UnserializableNumber.Negative0 ||
+            unserializableValue === UnserializableNumber.NaN) {
           this._value = Number(unserializableValue);
         } else if (type === 'bigint' && unserializableValue.endsWith('n')) {
           this._value = BigInt(unserializableValue.substring(0, unserializableValue.length - 1));
@@ -527,7 +515,7 @@
     for (const property of properties) {
       const propertyValue = property.value ? this._runtimeModel.createRemoteObject(property.value) : null;
       const propertySymbol = property.symbol ? this._runtimeModel.createRemoteObject(property.symbol) : null;
-      const remoteProperty = new SDK.RemoteObjectProperty(
+      const remoteProperty = new RemoteObjectProperty(
           property.name, propertyValue, !!property.enumerable, !!property.writable, !!property.isOwn,
           !!property.wasThrown, propertySymbol);
 
@@ -543,7 +531,7 @@
     }
     for (const property of privateProperties) {
       const propertyValue = this._runtimeModel.createRemoteObject(property.value);
-      const remoteProperty = new SDK.RemoteObjectProperty(
+      const remoteProperty = new RemoteObjectProperty(
           property.name, propertyValue, true, true, true, false, undefined, false, undefined, true);
       result.push(remoteProperty);
     }
@@ -557,8 +545,8 @@
         continue;
       }
       const propertyValue = this._runtimeModel.createRemoteObject(property.value);
-      internalPropertiesResult.push(new SDK.RemoteObjectProperty(
-          property.name, propertyValue, true, false, undefined, undefined, undefined, true));
+      internalPropertiesResult.push(
+          new RemoteObjectProperty(property.name, propertyValue, true, false, undefined, undefined, undefined, true));
     }
     return {properties: result, internalProperties: internalPropertiesResult};
   }
@@ -582,7 +570,7 @@
     }
 
     if (typeof name === 'string') {
-      name = SDK.RemoteObject.toCallArgument(name);
+      name = RemoteObject.toCallArgument(name);
     }
 
     const resultPromise = this.doSetObjectPropertyValue(response.result, name);
@@ -606,7 +594,7 @@
     // where property was defined; so do we.
     const setPropertyValueFunction = 'function(a, b) { this[a] = b; }';
 
-    const argv = [name, SDK.RemoteObject.toCallArgument(result)];
+    const argv = [name, RemoteObject.toCallArgument(result)];
     const response = await this._runtimeAgent.invoke_callFunctionOn(
         {objectId: this._objectId, functionDeclaration: setPropertyValueFunction, arguments: argv, silent: true});
     const error = response[Protocol.Error];
@@ -685,7 +673,7 @@
    * @return {number}
    */
   arrayLength() {
-    return SDK.RemoteObject.arrayLength(this);
+    return RemoteObject.arrayLength(this);
   }
 
   /**
@@ -711,14 +699,13 @@
   isNode() {
     return !!this._objectId && this.type === 'object' && this.subtype === 'node';
   }
-};
+}
 
-
-SDK.ScopeRemoteObject = class extends SDK.RemoteObjectImpl {
+export class ScopeRemoteObject extends RemoteObjectImpl {
   /**
    * @param {!SDK.RuntimeModel} runtimeModel
    * @param {string|undefined} objectId
-   * @param {!SDK.ScopeRef} scopeRef
+   * @param {!ScopeRef} scopeRef
    * @param {string} type
    * @param {string|undefined} subtype
    * @param {*} value
@@ -773,7 +760,7 @@
   async doSetObjectPropertyValue(result, argumentName) {
     const name = /** @type {string} */ (argumentName.value);
     const error = await this.debuggerModel().setVariableValue(
-        this._scopeRef.number, name, SDK.RemoteObject.toCallArgument(result), this._scopeRef.callFrameId);
+        this._scopeRef.number, name, RemoteObject.toCallArgument(result), this._scopeRef.callFrameId);
     if (error) {
       return error;
     }
@@ -785,9 +772,9 @@
       }
     }
   }
-};
+}
 
-SDK.ScopeRef = class {
+export class ScopeRef {
   /**
    * @param {number} number
    * @param {string=} callFrameId
@@ -796,22 +783,22 @@
     this.number = number;
     this.callFrameId = callFrameId;
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.RemoteObjectProperty = class {
+export class RemoteObjectProperty {
   /**
    * @param {string} name
-   * @param {?SDK.RemoteObject} value
+   * @param {?RemoteObject} value
    * @param {boolean=} enumerable
    * @param {boolean=} writable
    * @param {boolean=} isOwn
    * @param {boolean=} wasThrown
-   * @param {?SDK.RemoteObject=} symbol
+   * @param {?RemoteObject=} symbol
    * @param {boolean=} synthetic
-   * @param {function(string):!Promise<?SDK.RemoteObject>=} syntheticSetter
+   * @param {function(string):!Promise<?RemoteObject>=} syntheticSetter
    * @param {boolean=} isPrivate
    */
   constructor(name, value, enumerable, writable, isOwn, wasThrown, symbol, synthetic, syntheticSetter, isPrivate) {
@@ -855,7 +842,7 @@
   isAccessorProperty() {
     return !!(this.getter || this.setter);
   }
-};
+}
 
 // Below is a wrapper around a local object that implements the RemoteObject interface,
 // which can be used by the UI code (primarily ObjectPropertiesSection).
@@ -863,7 +850,7 @@
 // for traversing prototypes, extracting class names via constructor, handling properties
 // or functions.
 
-SDK.LocalJSONObject = class extends SDK.RemoteObject {
+export class LocalJSONObject extends RemoteObject {
   /**
    * @param {*} value
    */
@@ -872,7 +859,7 @@
     this._value = value;
     /** @type {string} */
     this._cachedDescription;
-    /** @type {!Array<!SDK.RemoteObjectProperty>} */
+    /** @type {!Array<!RemoteObjectProperty>} */
     this._cachedChildren;
   }
 
@@ -897,7 +884,7 @@
    * @return {string|undefined}
    */
   unserializableValue() {
-    const unserializableDescription = SDK.RemoteObject.unserializableDescription(this._value);
+    const unserializableDescription = RemoteObject.unserializableDescription(this._value);
     return unserializableDescription || undefined;
   }
 
@@ -911,18 +898,18 @@
     }
 
     /**
-     * @param {!SDK.RemoteObjectProperty} property
+     * @param {!RemoteObjectProperty} property
      * @return {string}
-     * @this {SDK.LocalJSONObject}
+     * @this {LocalJSONObject}
      */
     function formatArrayItem(property) {
       return this._formatValue(property.value);
     }
 
     /**
-     * @param {!SDK.RemoteObjectProperty} property
+     * @param {!RemoteObjectProperty} property
      * @return {string}
-     * @this {SDK.LocalJSONObject}
+     * @this {LocalJSONObject}
      */
     function formatObjectItem(property) {
       let name = property.name;
@@ -954,7 +941,7 @@
   }
 
   /**
-   * @param {?SDK.RemoteObject} value
+   * @param {?RemoteObject} value
    * @return {string}
    */
   _formatValue(value) {
@@ -971,7 +958,7 @@
   /**
    * @param {string} prefix
    * @param {string} suffix
-   * @param {function(!SDK.RemoteObjectProperty)} formatProperty
+   * @param {function(!RemoteObjectProperty)} formatProperty
    * @return {string}
    */
   _concatenate(prefix, suffix, formatProperty) {
@@ -1059,7 +1046,7 @@
   }
 
   /**
-   * @return {!Array.<!SDK.RemoteObjectProperty>}
+   * @return {!Array.<!RemoteObjectProperty>}
    */
   _children() {
     if (!this.hasChildren) {
@@ -1069,14 +1056,14 @@
 
     /**
      * @param {string} propName
-     * @return {!SDK.RemoteObjectProperty}
+     * @return {!RemoteObjectProperty}
      */
     function buildProperty(propName) {
       let propValue = value[propName];
-      if (!(propValue instanceof SDK.RemoteObject)) {
-        propValue = SDK.RemoteObject.fromLocalObject(propValue);
+      if (!(propValue instanceof RemoteObject)) {
+        propValue = RemoteObject.fromLocalObject(propValue);
       }
-      return new SDK.RemoteObjectProperty(propName, propValue);
+      return new RemoteObjectProperty(propName, propValue);
     }
     if (!this._cachedChildren) {
       this._cachedChildren = Object.keys(value).map(buildProperty);
@@ -1110,8 +1097,10 @@
       wasThrown = true;
     }
 
-    return Promise.resolve(/** @type {!SDK.CallFunctionResult} */ (
-        {object: SDK.RemoteObject.fromLocalObject(result), wasThrown: wasThrown}));
+    const object = RemoteObject.fromLocalObject(result);
+
+    return Promise.resolve(
+        /** @type {!SDK.CallFunctionResult} */ ({object, wasThrown}));
   }
 
   /**
@@ -1134,30 +1123,30 @@
 
     return Promise.resolve(result);
   }
-};
+}
 
-SDK.RemoteArray = class {
+export class RemoteArray {
   /**
-   * @param {!SDK.RemoteObject} object
+   * @param {!RemoteObject} object
    */
   constructor(object) {
     this._object = object;
   }
 
   /**
-   * @param {?SDK.RemoteObject} object
-   * @return {!SDK.RemoteArray}
+   * @param {?RemoteObject} object
+   * @return {!RemoteArray}
    */
   static objectAsArray(object) {
     if (!object || object.type !== 'object' || (object.subtype !== 'array' && object.subtype !== 'typedarray')) {
       throw new Error('Object is empty or not an array');
     }
-    return new SDK.RemoteArray(object);
+    return new RemoteArray(object);
   }
 
   /**
-   * @param {!Array<!SDK.RemoteObject>} objects
-   * @return {!Promise<!SDK.RemoteArray>}
+   * @param {!Array<!RemoteObject>} objects
+   * @return {!Promise<!RemoteArray>}
    */
   static createFromRemoteObjects(objects) {
     if (!objects.length) {
@@ -1165,7 +1154,7 @@
     }
     const objectArguments = [];
     for (let i = 0; i < objects.length; ++i) {
-      objectArguments.push(SDK.RemoteObject.toCallArgument(objects[i]));
+      objectArguments.push(RemoteObject.toCallArgument(objects[i]));
     }
     return objects[0].callFunction(createArray, objectArguments).then(returnRemoteArray);
 
@@ -1181,25 +1170,25 @@
 
     /**
      * @param {!SDK.CallFunctionResult} result
-     * @return {!SDK.RemoteArray}
+     * @return {!RemoteArray}
      */
     function returnRemoteArray(result) {
       if (result.wasThrown || !result.object) {
         throw new Error('Call function throws exceptions or returns empty value');
       }
-      return SDK.RemoteArray.objectAsArray(result.object);
+      return RemoteArray.objectAsArray(result.object);
     }
   }
 
   /**
    * @param {number} index
-   * @return {!Promise<!SDK.RemoteObject>}
+   * @return {!Promise<!RemoteObject>}
    */
   at(index) {
     if (index < 0 || index > this._object.arrayLength()) {
       throw new Error('Out of range');
     }
-    return this._object.callFunction(at, [SDK.RemoteObject.toCallArgument(index)]).then(assertCallFunctionResult);
+    return this._object.callFunction(at, [RemoteObject.toCallArgument(index)]).then(assertCallFunctionResult);
 
     /**
      * @suppressReceiverCheck
@@ -1213,7 +1202,7 @@
 
     /**
      * @param {!SDK.CallFunctionResult} result
-     * @return {!SDK.RemoteObject}
+     * @return {!RemoteObject}
      */
     function assertCallFunctionResult(result) {
       if (result.wasThrown || !result.object) {
@@ -1231,7 +1220,7 @@
   }
 
   /**
-   * @param {function(!SDK.RemoteObject):!Promise<T>} func
+   * @param {function(!RemoteObject):!Promise<T>} func
    * @return {!Promise<!Array<T>>}
    * @template T
    */
@@ -1244,43 +1233,42 @@
   }
 
   /**
-   * @return {!SDK.RemoteObject}
+   * @return {!RemoteObject}
    */
   object() {
     return this._object;
   }
-};
+}
 
-
-SDK.RemoteFunction = class {
+export class RemoteFunction {
   /**
-   * @param {!SDK.RemoteObject} object
+   * @param {!RemoteObject} object
    */
   constructor(object) {
     this._object = object;
   }
 
   /**
-   * @param {?SDK.RemoteObject} object
-   * @return {!SDK.RemoteFunction}
+   * @param {?RemoteObject} object
+   * @return {!RemoteFunction}
    */
   static objectAsFunction(object) {
     if (!object || object.type !== 'function') {
       throw new Error('Object is empty or not a function');
     }
-    return new SDK.RemoteFunction(object);
+    return new RemoteFunction(object);
   }
 
   /**
-   * @return {!Promise<!SDK.RemoteObject>}
+   * @return {!Promise<!RemoteObject>}
    */
   targetFunction() {
     return this._object.getOwnProperties(false /* generatePreview */).then(targetFunction.bind(this));
 
     /**
      * @param {!SDK.GetPropertiesResult} ownProperties
-     * @return {!SDK.RemoteObject}
-     * @this {SDK.RemoteFunction}
+     * @return {!RemoteObject}
+     * @this {RemoteFunction}
      */
     function targetFunction(ownProperties) {
       if (!ownProperties.internalProperties) {
@@ -1303,9 +1291,9 @@
     return this.targetFunction().then(functionDetails.bind(this));
 
     /**
-     * @param {!SDK.RemoteObject} targetFunction
+     * @param {!RemoteObject} targetFunction
      * @return {!Promise<?SDK.DebuggerModel.FunctionDetails>}
-     * @this {SDK.RemoteFunction}
+     * @this {RemoteFunction}
      */
     function functionDetails(targetFunction) {
       const boundReleaseFunctionDetails =
@@ -1314,7 +1302,7 @@
     }
 
     /**
-     * @param {?SDK.RemoteObject} targetFunction
+     * @param {?RemoteObject} targetFunction
      * @param {?SDK.DebuggerModel.FunctionDetails} functionDetails
      * @return {?SDK.DebuggerModel.FunctionDetails}
      */
@@ -1327,32 +1315,76 @@
   }
 
   /**
-   * @return {!SDK.RemoteObject}
+   * @return {!RemoteObject}
    */
   object() {
     return this._object;
   }
-};
+}
 
 /**
  * @const
  * @type {!RegExp}
  */
-SDK.RemoteObject._descriptionLengthParenRegex = /\(([0-9]+)\)/;
+export const _descriptionLengthParenRegex = /\(([0-9]+)\)/;
 
 /**
  * @const
  * @type {!RegExp}
  */
-SDK.RemoteObject._descriptionLengthSquareRegex = /\[([0-9]+)\]/;
+export const _descriptionLengthSquareRegex = /\[([0-9]+)\]/;
 
 /**
  * @const
  * @enum {!Protocol.Runtime.UnserializableValue}
  */
-SDK.RemoteObject.UnserializableNumber = {
+export const UnserializableNumber = {
   Negative0: /** @type {!Protocol.Runtime.UnserializableValue} */ ('-0'),
   NaN: /** @type {!Protocol.Runtime.UnserializableValue} */ ('NaN'),
   Infinity: /** @type {!Protocol.Runtime.UnserializableValue} */ ('Infinity'),
   NegativeInfinity: /** @type {!Protocol.Runtime.UnserializableValue} */ ('-Infinity')
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.RemoteObject = RemoteObject;
+
+SDK.RemoteObject._descriptionLengthParenRegex = _descriptionLengthParenRegex;
+SDK.RemoteObject._descriptionLengthSquareRegex = _descriptionLengthSquareRegex;
+SDK.RemoteObject.UnserializableNumber = UnserializableNumber;
+
+/** @constructor */
+SDK.RemoteObjectImpl = RemoteObjectImpl;
+
+/** @constructor */
+SDK.ScopeRemoteObject = ScopeRemoteObject;
+
+/** @constructor */
+SDK.ScopeRef = ScopeRef;
+
+/** @constructor */
+SDK.RemoteObjectProperty = RemoteObjectProperty;
+
+/** @constructor */
+SDK.LocalJSONObject = LocalJSONObject;
+
+/** @constructor */
+SDK.RemoteArray = RemoteArray;
+
+/** @constructor */
+SDK.RemoteFunction = RemoteFunction;
+
+/**
+ * @typedef {{object: ?RemoteObject, wasThrown: (boolean|undefined)}}
+ */
+SDK.CallFunctionResult;
+
+/**
+ * @typedef {{properties: ?Array<!RemoteObjectProperty>, internalProperties: ?Array<!RemoteObjectProperty>}}
+ */
+SDK.GetPropertiesResult;
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/Resource.js b/third_party/blink/renderer/devtools/front_end/sdk/Resource.js
index 095c6b1..4594963 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/Resource.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/Resource.js
@@ -29,7 +29,7 @@
  * @implements {Common.ContentProvider}
  * @unrestricted
  */
-SDK.Resource = class {
+export default class Resource {
   /**
    * @param {!SDK.ResourceTreeModel} resourceTreeModel
    * @param {?SDK.NetworkRequest} request
@@ -296,4 +296,13 @@
   frame() {
     return this._resourceTreeModel.frameForId(this._frameId);
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.Resource = Resource;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ResourceTreeModel.js b/third_party/blink/renderer/devtools/front_end/sdk/ResourceTreeModel.js
index 2ae93013..01d14df 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ResourceTreeModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/ResourceTreeModel.js
@@ -28,7 +28,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-SDK.ResourceTreeModel = class extends SDK.SDKModel {
+export default class ResourceTreeModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -47,13 +47,13 @@
 
     target.registerPageDispatcher(new SDK.PageDispatcher(this));
 
-    /** @type {!Map<string, !SDK.ResourceTreeFrame>} */
+    /** @type {!Map<string, !ResourceTreeFrame>} */
     this._frames = new Map();
     this._cachedResourcesProcessed = false;
     this._pendingReloadOptions = null;
     this._reloadSuspensionCount = 0;
     this._isInterstitialShowing = false;
-    /** @type {?SDK.ResourceTreeFrame} */
+    /** @type {?ResourceTreeFrame} */
     this.mainFrame = null;
 
     this._agent.getResourceTree().then(this._processCachedResources.bind(this));
@@ -61,11 +61,11 @@
 
   /**
    * @param {!SDK.NetworkRequest} request
-   * @return {?SDK.ResourceTreeFrame}
+   * @return {?ResourceTreeFrame}
    */
   static frameForRequest(request) {
     const networkManager = SDK.NetworkManager.forRequest(request);
-    const resourceTreeModel = networkManager ? networkManager.target().model(SDK.ResourceTreeModel) : null;
+    const resourceTreeModel = networkManager ? networkManager.target().model(ResourceTreeModel) : null;
     if (!resourceTreeModel) {
       return null;
     }
@@ -73,11 +73,11 @@
   }
 
   /**
-   * @return {!Array.<!SDK.ResourceTreeFrame>}
+   * @return {!Array.<!ResourceTreeFrame>}
    */
   static frames() {
     let result = [];
-    for (const resourceTreeModel of SDK.targetManager.models(SDK.ResourceTreeModel)) {
+    for (const resourceTreeModel of SDK.targetManager.models(ResourceTreeModel)) {
       result = result.concat(resourceTreeModel._frames.valuesArray());
     }
     return result;
@@ -88,7 +88,7 @@
    * @return {?SDK.Resource}
    */
   static resourceForURL(url) {
-    for (const resourceTreeModel of SDK.targetManager.models(SDK.ResourceTreeModel)) {
+    for (const resourceTreeModel of SDK.targetManager.models(ResourceTreeModel)) {
       const mainFrame = resourceTreeModel.mainFrame;
       const result = mainFrame ? mainFrame.resourceForURL(url) : null;
       if (result) {
@@ -103,7 +103,7 @@
    * @param {string=} scriptToEvaluateOnLoad
    */
   static reloadAllPages(bypassCache, scriptToEvaluateOnLoad) {
-    for (const resourceTreeModel of SDK.targetManager.models(SDK.ResourceTreeModel)) {
+    for (const resourceTreeModel of SDK.targetManager.models(ResourceTreeModel)) {
       if (!resourceTreeModel.target().parentTarget()) {
         resourceTreeModel.reloadPage(bypassCache, scriptToEvaluateOnLoad);
       }
@@ -122,7 +122,7 @@
    */
   _processCachedResources(mainFramePayload) {
     if (mainFramePayload) {
-      this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.WillLoadCachedResources);
+      this.dispatchEventToListeners(Events.WillLoadCachedResources);
       this._addFramesRecursively(null, mainFramePayload);
       this.target().setInspectedURL(mainFramePayload.frame.url);
     }
@@ -132,7 +132,7 @@
       runtimeModel.setExecutionContextComparator(this._executionContextComparator.bind(this));
       runtimeModel.fireExecutionContextOrderChanged();
     }
-    this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.CachedResourcesLoaded, this);
+    this.dispatchEventToListeners(Events.CachedResourcesLoaded, this);
   }
 
   /**
@@ -150,7 +150,7 @@
   }
 
   /**
-   * @param {!SDK.ResourceTreeFrame} frame
+   * @param {!ResourceTreeFrame} frame
    * @param {boolean=} aboutToNavigate
    */
   _addFrame(frame, aboutToNavigate) {
@@ -158,7 +158,7 @@
     if (frame.isMainFrame()) {
       this.mainFrame = frame;
     }
-    this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.FrameAdded, frame);
+    this.dispatchEventToListeners(Events.FrameAdded, frame);
     this._updateSecurityOrigins();
   }
 
@@ -166,7 +166,7 @@
    * @param {!Protocol.Page.FrameId} frameId
    * @param {?Protocol.Page.FrameId} parentFrameId
    * @param {!Protocol.Runtime.StackTrace=} stackTrace
-   * @return {?SDK.ResourceTreeFrame}
+   * @return {?ResourceTreeFrame}
    */
   _frameAttached(frameId, parentFrameId, stackTrace) {
     const parentFrame = parentFrameId ? (this._frames.get(parentFrameId) || null) : null;
@@ -178,7 +178,7 @@
       return null;
     }
 
-    const frame = new SDK.ResourceTreeFrame(this, parentFrame, frameId, null, stackTrace || null);
+    const frame = new ResourceTreeFrame(this, parentFrame, frameId, null, stackTrace || null);
     if (parentFrameId && !parentFrame) {
       frame._crossTargetParentFrameId = parentFrameId;
     }
@@ -206,18 +206,18 @@
       console.assert(frame);
     }
 
-    this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.FrameWillNavigate, frame);
+    this.dispatchEventToListeners(Events.FrameWillNavigate, frame);
     frame._navigate(framePayload);
-    this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.FrameNavigated, frame);
+    this.dispatchEventToListeners(Events.FrameNavigated, frame);
 
     if (frame.isMainFrame()) {
-      this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.MainFrameNavigated, frame);
+      this.dispatchEventToListeners(Events.MainFrameNavigated, frame);
     }
 
     // Fill frame with retained resources (the ones loaded using new loader).
     const resources = frame.resources();
     for (let i = 0; i < resources.length; ++i) {
-      this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.ResourceAdded, resources[i]);
+      this.dispatchEventToListeners(Events.ResourceAdded, resources[i]);
     }
 
     if (frame.isMainFrame()) {
@@ -294,7 +294,7 @@
 
   /**
    * @param {!Protocol.Page.FrameId} frameId
-   * @return {!SDK.ResourceTreeFrame}
+   * @return {!ResourceTreeFrame}
    */
   frameForId(frameId) {
     return this._frames.get(frameId);
@@ -312,7 +312,7 @@
   }
 
   /**
-   * @return {!Array<!SDK.ResourceTreeFrame>}
+   * @return {!Array<!ResourceTreeFrame>}
    */
   frames() {
     return this._frames.valuesArray();
@@ -328,12 +328,12 @@
   }
 
   /**
-   * @param {?SDK.ResourceTreeFrame} parentFrame
+   * @param {?ResourceTreeFrame} parentFrame
    * @param {!Protocol.Page.FrameResourceTree} frameTreePayload
    */
   _addFramesRecursively(parentFrame, frameTreePayload) {
     const framePayload = frameTreePayload.frame;
-    const frame = new SDK.ResourceTreeFrame(this, parentFrame, framePayload.id, framePayload, null);
+    const frame = new ResourceTreeFrame(this, parentFrame, framePayload.id, framePayload, null);
     if (!parentFrame && framePayload.parentId) {
       frame._crossTargetParentFrameId = framePayload.parentId;
     }
@@ -392,14 +392,14 @@
   reloadPage(bypassCache, scriptToEvaluateOnLoad) {
     // Only dispatch PageReloadRequested upon first reload request to simplify client logic.
     if (!this._pendingReloadOptions) {
-      this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.PageReloadRequested, this);
+      this.dispatchEventToListeners(Events.PageReloadRequested, this);
     }
     if (this._reloadSuspensionCount) {
       this._pendingReloadOptions = [bypassCache, scriptToEvaluateOnLoad];
       return;
     }
     this._pendingReloadOptions = null;
-    this.dispatchEventToListeners(SDK.ResourceTreeModel.Events.WillReloadPage);
+    this.dispatchEventToListeners(Events.WillReloadPage);
     this._agent.reload(bypassCache, scriptToEvaluateOnLoad);
   }
 
@@ -455,8 +455,8 @@
    */
   _executionContextComparator(a, b) {
     /**
-     * @param {!SDK.ResourceTreeFrame} frame
-     * @return {!Array<!SDK.ResourceTreeFrame>}
+     * @param {!ResourceTreeFrame} frame
+     * @return {!Array<!ResourceTreeFrame>}
      */
     function framePath(frame) {
       let currentFrame = frame;
@@ -543,22 +543,10 @@
     const data = this._getSecurityOriginData();
     return data.mainSecurityOrigin || data.unreachableMainSecurityOrigin;
   }
-};
-
-SDK.SDKModel.register(SDK.ResourceTreeModel, SDK.Target.Capability.DOM, true);
-
-
-/**
- * @typedef {{
- *      securityOrigins: !Set<string>,
- *      mainSecurityOrigin: ?string,
- *      unreachableMainSecurityOrigin: ?string
- * }}
- */
-SDK.ResourceTreeModel.SecurityOriginData;
+}
 
 /** @enum {symbol} */
-SDK.ResourceTreeModel.Events = {
+export const Events = {
   FrameAdded: Symbol('FrameAdded'),
   FrameNavigated: Symbol('FrameNavigated'),
   FrameDetached: Symbol('FrameDetached'),
@@ -577,14 +565,13 @@
   InterstitialHidden: Symbol('InterstitialHidden')
 };
 
-
 /**
  * @unrestricted
  */
-SDK.ResourceTreeFrame = class {
+export class ResourceTreeFrame {
   /**
-   * @param {!SDK.ResourceTreeModel} model
-   * @param {?SDK.ResourceTreeFrame} parentFrame
+   * @param {!ResourceTreeModel} model
+   * @param {?ResourceTreeFrame} parentFrame
    * @param {!Protocol.Page.FrameId} frameId
    * @param {?Protocol.Page.Frame} payload
    * @param {?Protocol.Runtime.StackTrace} creationStackTrace
@@ -608,7 +595,7 @@
     this._creationStackTrace = creationStackTrace;
 
     /**
-     * @type {!Array.<!SDK.ResourceTreeFrame>}
+     * @type {!Array.<!ResourceTreeFrame>}
      */
     this._childFrames = [];
 
@@ -642,7 +629,7 @@
   }
 
   /**
-   * @return {!SDK.ResourceTreeModel}
+   * @return {!ResourceTreeModel}
    */
   resourceTreeModel() {
     return this._model;
@@ -691,21 +678,21 @@
   }
 
   /**
-   * @return {?SDK.ResourceTreeFrame}
+   * @return {?ResourceTreeFrame}
    */
   get parentFrame() {
     return this._parentFrame;
   }
 
   /**
-   * @return {!Array.<!SDK.ResourceTreeFrame>}
+   * @return {!Array.<!ResourceTreeFrame>}
    */
   get childFrames() {
     return this._childFrames;
   }
 
   /**
-   * @return {?SDK.ResourceTreeFrame}
+   * @return {?ResourceTreeFrame}
    */
   crossTargetParentFrame() {
     if (!this._crossTargetParentFrameId) {
@@ -714,7 +701,7 @@
     if (!this._model.target().parentTarget()) {
       return null;
     }
-    const parentModel = this._model.target().parentTarget().model(SDK.ResourceTreeModel);
+    const parentModel = this._model.target().parentTarget().model(ResourceTreeModel);
     if (!parentModel) {
       return null;
     }
@@ -762,7 +749,7 @@
   }
 
   /**
-   * @param {!SDK.ResourceTreeFrame} frame
+   * @param {!ResourceTreeFrame} frame
    */
   _removeChildFrame(frame) {
     this._childFrames.remove(frame);
@@ -780,7 +767,7 @@
   _remove() {
     this._removeChildFrames();
     this._model._frames.delete(this.id);
-    this._model.dispatchEventToListeners(SDK.ResourceTreeModel.Events.FrameDetached, this);
+    this._model.dispatchEventToListeners(Events.FrameDetached, this);
   }
 
   /**
@@ -792,7 +779,7 @@
       return;
     }
     this._resourcesMap[resource.url] = resource;
-    this._model.dispatchEventToListeners(SDK.ResourceTreeModel.Events.ResourceAdded, resource);
+    this._model.dispatchEventToListeners(Events.ResourceAdded, resource);
   }
 
   /**
@@ -808,7 +795,7 @@
         this._model, request, request.url(), request.documentURL, request.frameId, request.loaderId,
         request.resourceType(), request.mimeType, null, null);
     this._resourcesMap[resource.url] = resource;
-    this._model.dispatchEventToListeners(SDK.ResourceTreeModel.Events.ResourceAdded, resource);
+    this._model.dispatchEventToListeners(Events.ResourceAdded, resource);
   }
 
   /**
@@ -872,16 +859,15 @@
     }
     return Common.UIString('<iframe>');
   }
-};
-
+}
 
 /**
  * @implements {Protocol.PageDispatcher}
  * @unrestricted
  */
-SDK.PageDispatcher = class {
+export class PageDispatcher {
   /**
-   * @param {!SDK.ResourceTreeModel} resourceTreeModel
+   * @param {!ResourceTreeModel} resourceTreeModel
    */
   constructor(resourceTreeModel) {
     this._resourceTreeModel = resourceTreeModel;
@@ -892,7 +878,7 @@
    * @param {number} time
    */
   domContentEventFired(time) {
-    this._resourceTreeModel.dispatchEventToListeners(SDK.ResourceTreeModel.Events.DOMContentLoaded, time);
+    this._resourceTreeModel.dispatchEventToListeners(Events.DOMContentLoaded, time);
   }
 
   /**
@@ -901,7 +887,7 @@
    */
   loadEventFired(time) {
     this._resourceTreeModel.dispatchEventToListeners(
-        SDK.ResourceTreeModel.Events.Load, {resourceTreeModel: this._resourceTreeModel, loadTime: time});
+        Events.Load, {resourceTreeModel: this._resourceTreeModel, loadTime: time});
   }
 
   /**
@@ -912,7 +898,7 @@
    * @param {number} time
    */
   lifecycleEvent(frameId, loaderId, name, time) {
-    this._resourceTreeModel.dispatchEventToListeners(SDK.ResourceTreeModel.Events.LifecycleEvent, {frameId, name});
+    this._resourceTreeModel.dispatchEventToListeners(Events.LifecycleEvent, {frameId, name});
   }
 
   /**
@@ -989,7 +975,7 @@
    * @override
    */
   frameResized() {
-    this._resourceTreeModel.dispatchEventToListeners(SDK.ResourceTreeModel.Events.FrameResized, null);
+    this._resourceTreeModel.dispatchEventToListeners(Events.FrameResized, null);
   }
 
   /**
@@ -1035,7 +1021,7 @@
    */
   interstitialShown() {
     this._resourceTreeModel._isInterstitialShowing = true;
-    this._resourceTreeModel.dispatchEventToListeners(SDK.ResourceTreeModel.Events.InterstitialShown);
+    this._resourceTreeModel.dispatchEventToListeners(Events.InterstitialShown);
   }
 
   /**
@@ -1043,7 +1029,7 @@
    */
   interstitialHidden() {
     this._resourceTreeModel._isInterstitialShowing = false;
-    this._resourceTreeModel.dispatchEventToListeners(SDK.ResourceTreeModel.Events.InterstitialHidden);
+    this._resourceTreeModel.dispatchEventToListeners(Events.InterstitialHidden);
   }
 
   /**
@@ -1078,4 +1064,33 @@
    */
   downloadWillBegin(frameId, url) {
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.ResourceTreeModel = ResourceTreeModel;
+
+/** @enum {symbol} */
+SDK.ResourceTreeModel.Events = Events;
+
+/** @constructor */
+SDK.ResourceTreeFrame = ResourceTreeFrame;
+
+/** @constructor */
+SDK.PageDispatcher = PageDispatcher;
+
+/**
+ * @typedef {{
+  *      securityOrigins: !Set<string>,
+  *      mainSecurityOrigin: ?string,
+  *      unreachableMainSecurityOrigin: ?string
+  * }}
+  */
+SDK.ResourceTreeModel.SecurityOriginData;
+
+SDK.SDKModel.register(ResourceTreeModel, SDK.Target.Capability.DOM, true);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/RuntimeModel.js b/third_party/blink/renderer/devtools/front_end/sdk/RuntimeModel.js
index 56b983c..8783f91 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/RuntimeModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/RuntimeModel.js
@@ -31,7 +31,7 @@
 /**
  * @unrestricted
  */
-SDK.RuntimeModel = class extends SDK.SDKModel {
+export default class RuntimeModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -39,11 +39,11 @@
     super(target);
 
     this._agent = target.runtimeAgent();
-    this.target().registerRuntimeDispatcher(new SDK.RuntimeDispatcher(this));
+    this.target().registerRuntimeDispatcher(new RuntimeDispatcher(this));
     this._agent.enable();
-    /** @type {!Map<number, !SDK.ExecutionContext>} */
+    /** @type {!Map<number, !ExecutionContext>} */
     this._executionContextById = new Map();
-    this._executionContextComparator = SDK.ExecutionContext.comparator;
+    this._executionContextComparator = ExecutionContext.comparator;
     /** @type {?boolean} */
     this._hasSideEffectSupport = null;
 
@@ -80,28 +80,28 @@
   }
 
   /**
-   * @return {!Array.<!SDK.ExecutionContext>}
+   * @return {!Array.<!ExecutionContext>}
    */
   executionContexts() {
     return this._executionContextById.valuesArray().sort(this.executionContextComparator());
   }
 
   /**
-   * @param {function(!SDK.ExecutionContext,!SDK.ExecutionContext)} comparator
+   * @param {function(!ExecutionContext,!ExecutionContext)} comparator
    */
   setExecutionContextComparator(comparator) {
     this._executionContextComparator = comparator;
   }
 
   /**
-   * @return {function(!SDK.ExecutionContext,!SDK.ExecutionContext)} comparator
+   * @return {function(!ExecutionContext,!ExecutionContext)} comparator
    */
   executionContextComparator() {
     return this._executionContextComparator;
   }
 
   /**
-   * @return {?SDK.ExecutionContext}
+   * @return {?ExecutionContext}
    */
   defaultExecutionContext() {
     for (const context of this.executionContexts()) {
@@ -114,7 +114,7 @@
 
   /**
    * @param {!Protocol.Runtime.ExecutionContextId} id
-   * @return {?SDK.ExecutionContext}
+   * @return {?ExecutionContext}
    */
   executionContext(id) {
     return this._executionContextById.get(id) || null;
@@ -126,9 +126,9 @@
   _executionContextCreated(context) {
     const data = context.auxData || {isDefault: true};
     const executionContext =
-        new SDK.ExecutionContext(this, context.id, context.name, context.origin, data['isDefault'], data['frameId']);
+        new ExecutionContext(this, context.id, context.name, context.origin, data['isDefault'], data['frameId']);
     this._executionContextById.set(executionContext.id, executionContext);
-    this.dispatchEventToListeners(SDK.RuntimeModel.Events.ExecutionContextCreated, executionContext);
+    this.dispatchEventToListeners(Events.ExecutionContextCreated, executionContext);
   }
 
   /**
@@ -141,11 +141,11 @@
     }
     this.debuggerModel().executionContextDestroyed(executionContext);
     this._executionContextById.delete(executionContextId);
-    this.dispatchEventToListeners(SDK.RuntimeModel.Events.ExecutionContextDestroyed, executionContext);
+    this.dispatchEventToListeners(Events.ExecutionContextDestroyed, executionContext);
   }
 
   fireExecutionContextOrderChanged() {
-    this.dispatchEventToListeners(SDK.RuntimeModel.Events.ExecutionContextOrderChanged, this);
+    this.dispatchEventToListeners(Events.ExecutionContextOrderChanged, this);
   }
 
   _executionContextsCleared() {
@@ -153,7 +153,7 @@
     const contexts = this.executionContexts();
     this._executionContextById.clear();
     for (let i = 0; i < contexts.length; ++i) {
-      this.dispatchEventToListeners(SDK.RuntimeModel.Events.ExecutionContextDestroyed, contexts[i]);
+      this.dispatchEventToListeners(Events.ExecutionContextDestroyed, contexts[i]);
     }
   }
 
@@ -411,7 +411,7 @@
       Common.console.error(result.error);
       return;
     }
-    this.dispatchEventToListeners(SDK.RuntimeModel.Events.QueryObjectRequested, {objects: result.objects});
+    this.dispatchEventToListeners(Events.QueryObjectRequested, {objects: result.objects});
   }
 
   /**
@@ -436,14 +436,14 @@
    */
   exceptionThrown(timestamp, exceptionDetails) {
     const exceptionWithTimestamp = {timestamp: timestamp, details: exceptionDetails};
-    this.dispatchEventToListeners(SDK.RuntimeModel.Events.ExceptionThrown, exceptionWithTimestamp);
+    this.dispatchEventToListeners(Events.ExceptionThrown, exceptionWithTimestamp);
   }
 
   /**
    * @param {number} exceptionId
    */
   _exceptionRevoked(exceptionId) {
-    this.dispatchEventToListeners(SDK.RuntimeModel.Events.ExceptionRevoked, exceptionId);
+    this.dispatchEventToListeners(Events.ExceptionRevoked, exceptionId);
   }
 
   /**
@@ -463,7 +463,7 @@
       stackTrace: stackTrace,
       context: context
     };
-    this.dispatchEventToListeners(SDK.RuntimeModel.Events.ConsoleAPICalled, consoleAPICall);
+    this.dispatchEventToListeners(Events.ConsoleAPICalled, consoleAPICall);
   }
 
   /**
@@ -506,12 +506,12 @@
     }
     // Check for a positive throwOnSideEffect response without triggering side effects.
     const response = await this._agent.invoke_evaluate({
-      expression: String.escapeInvalidUnicodeCharacters(SDK.RuntimeModel._sideEffectTestExpression),
+      expression: String.escapeInvalidUnicodeCharacters(_sideEffectTestExpression),
       contextId: testContext.id,
       throwOnSideEffect: true
     });
 
-    this._hasSideEffectSupport = SDK.RuntimeModel.isSideEffectFailure(response);
+    this._hasSideEffectSupport = RuntimeModel.isSideEffectFailure(response);
     return this._hasSideEffectSupport;
   }
 
@@ -521,9 +521,7 @@
   terminateExecution() {
     return this._agent.invoke_terminateExecution({});
   }
-};
-
-SDK.SDKModel.register(SDK.RuntimeModel, SDK.Target.Capability.JS, true);
+}
 
 /**
  * This expression:
@@ -533,10 +531,10 @@
  * @const
  * @type {string}
  */
-SDK.RuntimeModel._sideEffectTestExpression = '(async function(){ await 1; })()';
+export const _sideEffectTestExpression = '(async function(){ await 1; })()';
 
 /** @enum {symbol} */
-SDK.RuntimeModel.Events = {
+export const Events = {
   ExecutionContextCreated: Symbol('ExecutionContextCreated'),
   ExecutionContextDestroyed: Symbol('ExecutionContextDestroyed'),
   ExecutionContextChanged: Symbol('ExecutionContextChanged'),
@@ -547,63 +545,13 @@
   QueryObjectRequested: Symbol('QueryObjectRequested'),
 };
 
-/** @typedef {{timestamp: number, details: !Protocol.Runtime.ExceptionDetails}} */
-SDK.RuntimeModel.ExceptionWithTimestamp;
-
-/** @typedef {{
- *    scriptId: (Protocol.Runtime.ScriptId|undefined),
- *    exceptionDetails: (!Protocol.Runtime.ExceptionDetails|undefined)
- *  }}
- */
-SDK.RuntimeModel.CompileScriptResult;
-
-/** @typedef {{
- *    expression: string,
- *    objectGroup: (string|undefined),
- *    includeCommandLineAPI: (boolean|undefined),
- *    silent: (boolean|undefined),
- *    returnByValue: (boolean|undefined),
- *    generatePreview: (boolean|undefined),
- *    throwOnSideEffect: (boolean|undefined),
- *    timeout: (number|undefined),
- *    disableBreaks: (boolean|undefined)
- *  }}
- */
-SDK.RuntimeModel.EvaluationOptions;
-
-/** @typedef {{
- *    object: (!SDK.RemoteObject|undefined),
- *    exceptionDetails: (!Protocol.Runtime.ExceptionDetails|undefined),
- *    error: (!Protocol.Error|undefined)}
- *  }}
- */
-SDK.RuntimeModel.EvaluationResult;
-
-/** @typedef {{
- *    objects: (!SDK.RemoteObject|undefined),
- *    error: (!Protocol.Error|undefined)}
- *  }}
- */
-SDK.RuntimeModel.QueryObjectResult;
-
-/**
- * @typedef {{
- *    type: string,
- *    args: !Array<!Protocol.Runtime.RemoteObject>,
- *    executionContextId: number,
- *    timestamp: number,
- *    stackTrace: (!Protocol.Runtime.StackTrace|undefined)
- * }}
- */
-SDK.RuntimeModel.ConsoleAPICall;
-
 /**
  * @extends {Protocol.RuntimeDispatcher}
  * @unrestricted
  */
-SDK.RuntimeDispatcher = class {
+export class RuntimeDispatcher {
   /**
-   * @param {!SDK.RuntimeModel} runtimeModel
+   * @param {!RuntimeModel} runtimeModel
    */
   constructor(runtimeModel) {
     this._runtimeModel = runtimeModel;
@@ -671,14 +619,14 @@
   inspectRequested(payload, hints) {
     this._runtimeModel._inspectRequested(payload, hints);
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.ExecutionContext = class {
+export class ExecutionContext {
   /**
-   * @param {!SDK.RuntimeModel} runtimeModel
+   * @param {!RuntimeModel} runtimeModel
    * @param {number} id
    * @param {string} name
    * @param {string} origin
@@ -704,8 +652,8 @@
   }
 
   /**
-   * @param {!SDK.ExecutionContext} a
-   * @param {!SDK.ExecutionContext} b
+   * @param {!ExecutionContext} a
+   * @param {!ExecutionContext} b
    * @return {number}
    */
   static comparator(a, b) {
@@ -884,7 +832,7 @@
    */
   setLabel(label) {
     this._setLabel(label);
-    this.runtimeModel.dispatchEventToListeners(SDK.RuntimeModel.Events.ExecutionContextChanged, this);
+    this.runtimeModel.dispatchEventToListeners(Events.ExecutionContextChanged, this);
   }
 
   /**
@@ -902,4 +850,76 @@
     const parsedUrl = this.origin.asParsedURL();
     this._label = parsedUrl ? parsedUrl.lastPathComponentWithFragment() : '';
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.RuntimeModel = RuntimeModel;
+
+SDK.RuntimeModel._sideEffectTestExpression = _sideEffectTestExpression;
+
+/** @enum {symbol} */
+SDK.RuntimeModel.Events = Events;
+
+/** @constructor */
+SDK.RuntimeDispatcher = RuntimeDispatcher;
+
+/** @constructor */
+SDK.ExecutionContext = ExecutionContext;
+
+/** @typedef {{
+ *    scriptId: (Protocol.Runtime.ScriptId|undefined),
+ *    exceptionDetails: (!Protocol.Runtime.ExceptionDetails|undefined)
+ *  }}
+ */
+SDK.RuntimeModel.CompileScriptResult;
+
+/** @typedef {{
+ *    expression: string,
+ *    objectGroup: (string|undefined),
+ *    includeCommandLineAPI: (boolean|undefined),
+ *    silent: (boolean|undefined),
+ *    returnByValue: (boolean|undefined),
+ *    generatePreview: (boolean|undefined),
+ *    throwOnSideEffect: (boolean|undefined),
+ *    timeout: (number|undefined),
+ *    disableBreaks: (boolean|undefined)
+ *  }}
+ */
+SDK.RuntimeModel.EvaluationOptions;
+
+/** @typedef {{
+ *    object: (!SDK.RemoteObject|undefined),
+ *    exceptionDetails: (!Protocol.Runtime.ExceptionDetails|undefined),
+ *    error: (!Protocol.Error|undefined)}
+ *  }}
+ */
+SDK.RuntimeModel.EvaluationResult;
+
+/** @typedef {{
+ *    objects: (!SDK.RemoteObject|undefined),
+ *    error: (!Protocol.Error|undefined)}
+ *  }}
+ */
+SDK.RuntimeModel.QueryObjectResult;
+
+/**
+ * @typedef {{
+ *    type: string,
+ *    args: !Array<!Protocol.Runtime.RemoteObject>,
+ *    executionContextId: number,
+ *    timestamp: number,
+ *    stackTrace: (!Protocol.Runtime.StackTrace|undefined)
+ * }}
+ */
+SDK.RuntimeModel.ConsoleAPICall;
+
+/** @typedef {{timestamp: number, details: !Protocol.Runtime.ExceptionDetails}} */
+SDK.RuntimeModel.ExceptionWithTimestamp;
+
+SDK.SDKModel.register(SDK.RuntimeModel, SDK.Target.Capability.JS, true);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/SDKModel.js b/third_party/blink/renderer/devtools/front_end/sdk/SDKModel.js
new file mode 100644
index 0000000..3964134
--- /dev/null
+++ b/third_party/blink/renderer/devtools/front_end/sdk/SDKModel.js
@@ -0,0 +1,87 @@
+/*
+ * Copyright 2019 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.
+ */
+
+/** @type {!Map<function(new:SDK.SDKModel, !SDK.Target), !{capabilities: number, autostart: boolean}>} */
+const _registeredModels = new Map();
+
+/**
+ * @unrestricted
+ */
+export default class SDKModel extends Common.Object {
+  /**
+   * @param {!SDK.Target} target
+   */
+  constructor(target) {
+    super();
+    this._target = target;
+  }
+
+  /**
+   * @return {!SDK.Target}
+   */
+  target() {
+    return this._target;
+  }
+
+  /**
+   * Override this method to perform tasks that are required to suspend the
+   * model and that still need other models in an unsuspended state.
+   * @param {string=} reason - optionally provide a reason, the model can respond accordingly
+   * @return {!Promise}
+   */
+  preSuspendModel(reason) {
+    return Promise.resolve();
+  }
+
+  /**
+   * @param {string=} reason - optionally provide a reason, the model can respond accordingly
+   * @return {!Promise}
+   */
+  suspendModel(reason) {
+    return Promise.resolve();
+  }
+
+  /**
+   * @return {!Promise}
+   */
+  resumeModel() {
+    return Promise.resolve();
+  }
+
+  /**
+   * Override this method to perform tasks that are required to after resuming
+   * the model and that require all models already in an unsuspended state.
+   * @return {!Promise}
+   */
+  postResumeModel() {
+    return Promise.resolve();
+  }
+
+  dispose() {
+  }
+
+  /**
+   * @param {function(new:SDKModel, !SDK.Target)} modelClass
+   * @param {number} capabilities
+   * @param {boolean} autostart
+   */
+  static register(modelClass, capabilities, autostart) {
+    _registeredModels.set(modelClass, {capabilities, autostart});
+  }
+
+  static get registeredModels() {
+    return _registeredModels;
+  }
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.SDKModel = SDKModel;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ScreenCaptureModel.js b/third_party/blink/renderer/devtools/front_end/sdk/ScreenCaptureModel.js
index 00fe7ce..306a0c89 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ScreenCaptureModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/ScreenCaptureModel.js
@@ -5,7 +5,7 @@
 /**
  * @implements {Protocol.PageDispatcher}
  */
-SDK.ScreenCaptureModel = class extends SDK.SDKModel {
+export default class ScreenCaptureModel extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -253,6 +253,15 @@
    */
   downloadWillBegin(frameId, url) {
   }
-};
+}
 
-SDK.SDKModel.register(SDK.ScreenCaptureModel, SDK.Target.Capability.ScreenCapture, false);
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.ScreenCaptureModel = ScreenCaptureModel;
+
+SDK.SDKModel.register(SDK.ScreenCaptureModel, SDK.Target.Capability.ScreenCapture, false);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/Script.js b/third_party/blink/renderer/devtools/front_end/sdk/Script.js
index f3501c1d..678d7d1 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/Script.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/Script.js
@@ -27,7 +27,7 @@
  * @implements {Common.ContentProvider}
  * @unrestricted
  */
-SDK.Script = class {
+export default class Script {
   /**
    * @param {!SDK.DebuggerModel} debuggerModel
    * @param {string} scriptId
@@ -85,7 +85,7 @@
       return source;
     }
     const sourceURLLine = source.substr(sourceURLLineIndex + 1);
-    if (!sourceURLLine.match(SDK.Script.sourceURLRegex)) {
+    if (!sourceURLLine.match(sourceURLRegex)) {
       return source;
     }
     return source.substr(0, sourceURLLineIndex);
@@ -149,7 +149,7 @@
     }
     const source = await this.debuggerModel.target().debuggerAgent().getScriptSource(this.scriptId);
     if (source && this.hasSourceURL) {
-      this._source = SDK.Script._trimSourceURLComment(source);
+      this._source = Script._trimSourceURLComment(source);
     } else {
       this._source = source || '';
     }
@@ -204,7 +204,7 @@
    * @param {function(?Protocol.Error, !Protocol.Runtime.ExceptionDetails=, !Array.<!Protocol.Debugger.CallFrame>=, !Protocol.Runtime.StackTrace=, !Protocol.Runtime.StackTraceId=, boolean=)} callback
    */
   async editSource(newSource, callback) {
-    newSource = SDK.Script._trimSourceURLComment(newSource);
+    newSource = Script._trimSourceURLComment(newSource);
     // We append correct sourceURL to script for consistency only. It's not actually needed for things to work correctly.
     newSource = this._appendSourceURLCommentIfNeeded(newSource);
 
@@ -278,6 +278,17 @@
     const beforeEnd = lineNumber < this.endLine || (lineNumber === this.endLine && columnNumber <= this.endColumn);
     return afterStart && beforeEnd;
   }
-};
+}
 
-SDK.Script.sourceURLRegex = /^[\040\t]*\/\/[@#] sourceURL=\s*(\S*?)\s*$/;
+export const sourceURLRegex = /^[\040\t]*\/\/[@#] sourceURL=\s*(\S*?)\s*$/;
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.Script = Script;
+
+SDK.Script.sourceURLRegex = sourceURLRegex;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/SecurityOriginManager.js b/third_party/blink/renderer/devtools/front_end/sdk/SecurityOriginManager.js
index 62c35c1..6ac8b1134 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/SecurityOriginManager.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/SecurityOriginManager.js
@@ -4,7 +4,7 @@
 /**
  * @unrestricted
  */
-SDK.SecurityOriginManager = class extends SDK.SDKModel {
+export default class SecurityOriginManager extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
@@ -31,13 +31,13 @@
 
     for (const origin of oldOrigins) {
       if (!this._securityOrigins.has(origin)) {
-        this.dispatchEventToListeners(SDK.SecurityOriginManager.Events.SecurityOriginRemoved, origin);
+        this.dispatchEventToListeners(Events.SecurityOriginRemoved, origin);
       }
     }
 
     for (const origin of this._securityOrigins) {
       if (!oldOrigins.has(origin)) {
-        this.dispatchEventToListeners(SDK.SecurityOriginManager.Events.SecurityOriginAdded, origin);
+        this.dispatchEventToListeners(Events.SecurityOriginAdded, origin);
       }
     }
   }
@@ -70,19 +70,31 @@
   setMainSecurityOrigin(securityOrigin, unreachableSecurityOrigin) {
     this._mainSecurityOrigin = securityOrigin;
     this._unreachableMainSecurityOrigin = unreachableSecurityOrigin || null;
-    this.dispatchEventToListeners(SDK.SecurityOriginManager.Events.MainSecurityOriginChanged, {
+    this.dispatchEventToListeners(Events.MainSecurityOriginChanged, {
       mainSecurityOrigin: this._mainSecurityOrigin,
       unreachableMainSecurityOrigin: this._unreachableMainSecurityOrigin
     });
   }
-};
-
-// TODO(jarhar): this is the only usage of Capability.None. Do something about it!
-SDK.SDKModel.register(SDK.SecurityOriginManager, SDK.Target.Capability.None, false);
+}
 
 /** @enum {symbol} */
-SDK.SecurityOriginManager.Events = {
+export const Events = {
   SecurityOriginAdded: Symbol('SecurityOriginAdded'),
   SecurityOriginRemoved: Symbol('SecurityOriginRemoved'),
   MainSecurityOriginChanged: Symbol('MainSecurityOriginChanged')
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.SecurityOriginManager = SecurityOriginManager;
+
+/** @enum {symbol} */
+SDK.SecurityOriginManager.Events = Events;
+
+// TODO(jarhar): this is the only usage of Capability.None. Do something about it!
+SDK.SDKModel.register(SDK.SecurityOriginManager, SDK.Target.Capability.None, false);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ServerTiming.js b/third_party/blink/renderer/devtools/front_end/sdk/ServerTiming.js
index 6174660..c055a47 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ServerTiming.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/ServerTiming.js
@@ -4,7 +4,7 @@
 /**
  * @unrestricted
  */
-SDK.ServerTiming = class {
+export default class ServerTiming {
   /**
    * @param {string} metric
    * @param {?number} value
@@ -18,7 +18,7 @@
 
   /**
    * @param {!Array<!SDK.NetworkRequest.NameValue>} headers
-   * @return {?Array<!SDK.ServerTiming>}
+   * @return {?Array<!ServerTiming>}
    */
   static parseHeaders(headers) {
     const rawServerTimingHeaders = headers.filter(item => item.name.toLowerCase() === 'server-timing');
@@ -29,7 +29,7 @@
     const serverTimings = rawServerTimingHeaders.reduce((memo, header) => {
       const timing = this.createFromHeaderValue(header.value);
       memo.pushAll(timing.map(function(entry) {
-        return new SDK.ServerTiming(
+        return new ServerTiming(
             entry.name, entry.hasOwnProperty('dur') ? entry.dur : null, entry.hasOwnProperty('desc') ? entry.desc : '');
       }));
       return memo;
@@ -195,4 +195,13 @@
   static showWarning(msg) {
     Common.console.warn(Common.UIString(`ServerTiming: ${msg}`));
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.ServerTiming = ServerTiming;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ServiceWorkerCacheModel.js b/third_party/blink/renderer/devtools/front_end/sdk/ServiceWorkerCacheModel.js
index b1e9d67b..c432d20 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ServiceWorkerCacheModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/ServiceWorkerCacheModel.js
@@ -5,7 +5,7 @@
  * @implements {Protocol.StorageDispatcher}
  * @unrestricted
  */
-SDK.ServiceWorkerCacheModel = class extends SDK.SDKModel {
+export default class ServiceWorkerCacheModel extends SDK.SDKModel {
   /**
    * Invariant: This model can only be constructed on a ServiceWorker target.
    * @param {!SDK.Target} target
@@ -14,7 +14,7 @@
     super(target);
     target.registerStorageDispatcher(this);
 
-    /** @type {!Map<string, !SDK.ServiceWorkerCacheModel.Cache>} */
+    /** @type {!Map<string, !Cache>} */
     this._caches = new Map();
 
     this._cacheAgent = target.cacheStorageAgent();
@@ -65,7 +65,7 @@
   }
 
   /**
-   * @param {!SDK.ServiceWorkerCacheModel.Cache} cache
+   * @param {!Cache} cache
    */
   async deleteCache(cache) {
     const response = await this._cacheAgent.invoke_deleteCache({cacheId: cache.cacheId});
@@ -78,7 +78,7 @@
   }
 
   /**
-   * @param {!SDK.ServiceWorkerCacheModel.Cache} cache
+   * @param {!Cache} cache
    * @param {string} request
    * @return {!Promise}
    */
@@ -93,7 +93,7 @@
   }
 
   /**
-   * @param {!SDK.ServiceWorkerCacheModel.Cache} cache
+   * @param {!Cache} cache
    * @param {number} skipCount
    * @param {number} pageSize
    * @param {string} pathFilter
@@ -104,7 +104,7 @@
   }
 
   /**
-   * @return {!Array.<!SDK.ServiceWorkerCacheModel.Cache>}
+   * @return {!Array.<!Cache>}
    */
   caches() {
     const caches = new Array();
@@ -179,8 +179,8 @@
    */
   _updateCacheNames(securityOrigin, cachesJson) {
     /**
-     * @param {!SDK.ServiceWorkerCacheModel.Cache} cache
-     * @this {SDK.ServiceWorkerCacheModel}
+     * @param {!Cache} cache
+     * @this {ServiceWorkerCacheModel}
      */
     function deleteAndSaveOldCaches(cache) {
       if (cache.securityOrigin === securityOrigin && !updatingCachesIds.has(cache.cacheId)) {
@@ -191,14 +191,13 @@
 
     /** @type {!Set<string>} */
     const updatingCachesIds = new Set();
-    /** @type {!Map<string, !SDK.ServiceWorkerCacheModel.Cache>} */
+    /** @type {!Map<string, !Cache>} */
     const newCaches = new Map();
-    /** @type {!Map<string, !SDK.ServiceWorkerCacheModel.Cache>} */
+    /** @type {!Map<string, !Cache>} */
     const oldCaches = new Map();
 
     for (const cacheJson of cachesJson) {
-      const cache =
-          new SDK.ServiceWorkerCacheModel.Cache(this, cacheJson.securityOrigin, cacheJson.cacheName, cacheJson.cacheId);
+      const cache = new Cache(this, cacheJson.securityOrigin, cacheJson.cacheName, cacheJson.cacheId);
       updatingCachesIds.add(cache.cacheId);
       if (this._caches.has(cache.cacheId)) {
         continue;
@@ -228,21 +227,21 @@
   }
 
   /**
-   * @param {!SDK.ServiceWorkerCacheModel.Cache} cache
+   * @param {!Cache} cache
    */
   _cacheAdded(cache) {
-    this.dispatchEventToListeners(SDK.ServiceWorkerCacheModel.Events.CacheAdded, {model: this, cache: cache});
+    this.dispatchEventToListeners(Events.CacheAdded, {model: this, cache: cache});
   }
 
   /**
-   * @param {!SDK.ServiceWorkerCacheModel.Cache} cache
+   * @param {!Cache} cache
    */
   _cacheRemoved(cache) {
-    this.dispatchEventToListeners(SDK.ServiceWorkerCacheModel.Events.CacheRemoved, {model: this, cache: cache});
+    this.dispatchEventToListeners(Events.CacheRemoved, {model: this, cache: cache});
   }
 
   /**
-   * @param {!SDK.ServiceWorkerCacheModel.Cache} cache
+   * @param {!Cache} cache
    * @param {number} skipCount
    * @param {number} pageSize
    * @param {string} pathFilter
@@ -278,8 +277,7 @@
    * @override
    */
   cacheStorageContentUpdated(origin, cacheName) {
-    this.dispatchEventToListeners(
-        SDK.ServiceWorkerCacheModel.Events.CacheStorageContentUpdated, {origin: origin, cacheName: cacheName});
+    this.dispatchEventToListeners(Events.CacheStorageContentUpdated, {origin: origin, cacheName: cacheName});
   }
 
   /**
@@ -297,12 +295,10 @@
    */
   indexedDBContentUpdated(origin, databaseName, objectStoreName) {
   }
-};
-
-SDK.SDKModel.register(SDK.ServiceWorkerCacheModel, SDK.Target.Capability.Storage, false);
+}
 
 /** @enum {symbol} */
-SDK.ServiceWorkerCacheModel.Events = {
+export const Events = {
   CacheAdded: Symbol('CacheAdded'),
   CacheRemoved: Symbol('CacheRemoved'),
   CacheStorageContentUpdated: Symbol('CacheStorageContentUpdated')
@@ -311,9 +307,9 @@
 /**
  * @unrestricted
  */
-SDK.ServiceWorkerCacheModel.Cache = class {
+export class Cache {
   /**
-   * @param {!SDK.ServiceWorkerCacheModel} model
+   * @param {!ServiceWorkerCacheModel} model
    * @param {string} securityOrigin
    * @param {string} cacheName
    * @param {string} cacheId
@@ -326,7 +322,7 @@
   }
 
   /**
-   * @param {!SDK.ServiceWorkerCacheModel.Cache} cache
+   * @param {!Cache} cache
    * @return {boolean}
    */
   equals(cache) {
@@ -349,4 +345,21 @@
   requestCachedResponse(url, requestHeaders) {
     return this._model._cacheAgent.requestCachedResponse(this.cacheId, url, requestHeaders);
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.ServiceWorkerCacheModel = ServiceWorkerCacheModel;
+
+/** @enum {symbol} */
+SDK.ServiceWorkerCacheModel.Events = Events;
+
+/** @constructor */
+SDK.ServiceWorkerCacheModel.Cache = Cache;
+
+SDK.SDKModel.register(SDK.ServiceWorkerCacheModel, SDK.Target.Capability.Storage, false);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/ServiceWorkerManager.js b/third_party/blink/renderer/devtools/front_end/sdk/ServiceWorkerManager.js
index 993862b..3cc255c 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/ServiceWorkerManager.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/ServiceWorkerManager.js
@@ -31,16 +31,16 @@
 /**
  * @unrestricted
  */
-SDK.ServiceWorkerManager = class extends SDK.SDKModel {
+export default class ServiceWorkerManager extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
   constructor(target) {
     super(target);
-    target.registerServiceWorkerDispatcher(new SDK.ServiceWorkerDispatcher(this));
+    target.registerServiceWorkerDispatcher(new ServiceWorkerDispatcher(this));
     this._lastAnonymousTargetId = 0;
     this._agent = target.serviceWorkerAgent();
-    /** @type {!Map.<string, !SDK.ServiceWorkerRegistration>} */
+    /** @type {!Map.<string, !ServiceWorkerRegistration>} */
     this._registrations = new Map();
     this.enable();
     this._forceUpdateSetting = Common.settings.createSetting('serviceWorkerUpdateOnReload', false);
@@ -48,7 +48,7 @@
       this._forceUpdateSettingChanged();
     }
     this._forceUpdateSetting.addChangeListener(this._forceUpdateSettingChanged, this);
-    new SDK.ServiceWorkerContextNamer(target, this);
+    new ServiceWorkerContextNamer(target, this);
   }
 
   enable() {
@@ -69,7 +69,7 @@
   }
 
   /**
-   * @return {!Map.<string, !SDK.ServiceWorkerRegistration>}
+   * @return {!Map.<string, !ServiceWorkerRegistration>}
    */
   registrations() {
     return this._registrations;
@@ -90,7 +90,7 @@
 
   /**
    * @param {string} versionId
-   * @return {?SDK.ServiceWorkerVersion}
+   * @return {?ServiceWorkerVersion}
    */
   findVersion(versionId) {
     for (const registration of this.registrations().values()) {
@@ -112,7 +112,7 @@
     }
     if (registration._isRedundant()) {
       this._registrations.delete(registrationId);
-      this.dispatchEventToListeners(SDK.ServiceWorkerManager.Events.RegistrationDeleted, registration);
+      this.dispatchEventToListeners(Events.RegistrationDeleted, registration);
       return;
     }
     registration._deleting = true;
@@ -215,18 +215,18 @@
     for (const payload of registrations) {
       let registration = this._registrations.get(payload.registrationId);
       if (!registration) {
-        registration = new SDK.ServiceWorkerRegistration(payload);
+        registration = new ServiceWorkerRegistration(payload);
         this._registrations.set(payload.registrationId, registration);
-        this.dispatchEventToListeners(SDK.ServiceWorkerManager.Events.RegistrationUpdated, registration);
+        this.dispatchEventToListeners(Events.RegistrationUpdated, registration);
         continue;
       }
       registration._update(payload);
 
       if (registration._shouldBeRemoved()) {
         this._registrations.delete(registration.id);
-        this.dispatchEventToListeners(SDK.ServiceWorkerManager.Events.RegistrationDeleted, registration);
+        this.dispatchEventToListeners(Events.RegistrationDeleted, registration);
       } else {
-        this.dispatchEventToListeners(SDK.ServiceWorkerManager.Events.RegistrationUpdated, registration);
+        this.dispatchEventToListeners(Events.RegistrationUpdated, registration);
       }
     }
   }
@@ -235,7 +235,7 @@
    * @param {!Array.<!Protocol.ServiceWorker.ServiceWorkerVersion>} versions
    */
   _workerVersionUpdated(versions) {
-    /** @type {!Set.<!SDK.ServiceWorkerRegistration>} */
+    /** @type {!Set.<!ServiceWorkerRegistration>} */
     const registrations = new Set();
     for (const payload of versions) {
       const registration = this._registrations.get(payload.registrationId);
@@ -248,9 +248,9 @@
     for (const registration of registrations) {
       if (registration._shouldBeRemoved()) {
         this._registrations.delete(registration.id);
-        this.dispatchEventToListeners(SDK.ServiceWorkerManager.Events.RegistrationDeleted, registration);
+        this.dispatchEventToListeners(Events.RegistrationDeleted, registration);
       } else {
-        this.dispatchEventToListeners(SDK.ServiceWorkerManager.Events.RegistrationUpdated, registration);
+        this.dispatchEventToListeners(Events.RegistrationUpdated, registration);
       }
     }
   }
@@ -264,8 +264,7 @@
       return;
     }
     registration.errors.push(payload);
-    this.dispatchEventToListeners(
-        SDK.ServiceWorkerManager.Events.RegistrationErrorAdded, {registration: registration, error: payload});
+    this.dispatchEventToListeners(Events.RegistrationErrorAdded, {registration: registration, error: payload});
   }
 
   /**
@@ -278,12 +277,10 @@
   _forceUpdateSettingChanged() {
     this._agent.setForceUpdateOnPageLoad(this._forceUpdateSetting.get());
   }
-};
-
-SDK.SDKModel.register(SDK.ServiceWorkerManager, SDK.Target.Capability.ServiceWorker, true);
+}
 
 /** @enum {symbol} */
-SDK.ServiceWorkerManager.Events = {
+export const Events = {
   RegistrationUpdated: Symbol('RegistrationUpdated'),
   RegistrationErrorAdded: Symbol('RegistrationErrorAdded'),
   RegistrationDeleted: Symbol('RegistrationDeleted')
@@ -293,9 +290,9 @@
  * @implements {Protocol.ServiceWorkerDispatcher}
  * @unrestricted
  */
-SDK.ServiceWorkerDispatcher = class {
+export class ServiceWorkerDispatcher {
   /**
-   * @param {!SDK.ServiceWorkerManager} manager
+   * @param {!ServiceWorkerManager} manager
    */
   constructor(manager) {
     this._manager = manager;
@@ -324,14 +321,14 @@
   workerErrorReported(errorMessage) {
     this._manager._workerErrorReported(errorMessage);
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.ServiceWorkerVersion = class {
+export class ServiceWorkerVersion {
   /**
-   * @param {!SDK.ServiceWorkerRegistration} registration
+   * @param {!ServiceWorkerRegistration} registration
    * @param {!Protocol.ServiceWorker.ServiceWorkerVersion} payload
    */
   constructor(registration, payload) {
@@ -448,20 +445,20 @@
    */
   mode() {
     if (this.isNew() || this.isInstalling()) {
-      return SDK.ServiceWorkerVersion.Modes.Installing;
+      return ServiceWorkerVersion.Modes.Installing;
     } else if (this.isInstalled()) {
-      return SDK.ServiceWorkerVersion.Modes.Waiting;
+      return ServiceWorkerVersion.Modes.Waiting;
     } else if (this.isActivating() || this.isActivated()) {
-      return SDK.ServiceWorkerVersion.Modes.Active;
+      return ServiceWorkerVersion.Modes.Active;
     }
-    return SDK.ServiceWorkerVersion.Modes.Redundant;
+    return ServiceWorkerVersion.Modes.Redundant;
   }
-};
+}
 
 /**
  * @type {!Object<string, string>}
  */
-SDK.ServiceWorkerVersion.RunningStatus = {
+ServiceWorkerVersion.RunningStatus = {
   [Protocol.ServiceWorker.ServiceWorkerVersionRunningStatus.Running]: ls`running`,
   [Protocol.ServiceWorker.ServiceWorkerVersionRunningStatus.Starting]: ls`starting`,
   [Protocol.ServiceWorker.ServiceWorkerVersionRunningStatus.Stopped]: ls`stopped`,
@@ -471,7 +468,7 @@
 /**
  * @enum {string}
  */
-SDK.ServiceWorkerVersion.Modes = {
+ServiceWorkerVersion.Modes = {
   Installing: 'installing',
   Waiting: 'waiting',
   Active: 'active',
@@ -481,13 +478,13 @@
 /**
  * @unrestricted
  */
-SDK.ServiceWorkerRegistration = class {
+export class ServiceWorkerRegistration {
   /**
    * @param {!Protocol.ServiceWorker.ServiceWorkerRegistration} payload
    */
   constructor(payload) {
     this._update(payload);
-    /** @type {!Map.<string, !SDK.ServiceWorkerVersion>} */
+    /** @type {!Map.<string, !ServiceWorkerVersion>} */
     this.versions = new Map();
     this._deleting = false;
     /** @type {!Array<!Protocol.ServiceWorker.ServiceWorkerErrorMessage>} */
@@ -515,10 +512,10 @@
   }
 
   /**
-   * @return {!Map<string, !SDK.ServiceWorkerVersion>}
+   * @return {!Map<string, !ServiceWorkerVersion>}
    */
   versionsByMode() {
-    /** @type {!Map<string, !SDK.ServiceWorkerVersion>} */
+    /** @type {!Map<string, !ServiceWorkerVersion>} */
     const result = new Map();
     for (const version of this.versions.values()) {
       result.set(version.mode(), version);
@@ -528,13 +525,13 @@
 
   /**
    * @param {!Protocol.ServiceWorker.ServiceWorkerVersion} payload
-   * @return {!SDK.ServiceWorkerVersion}
+   * @return {!ServiceWorkerVersion}
    */
   _updateVersion(payload) {
     this._fingerprint = Symbol('fingerprint');
     let version = this.versions.get(payload.versionId);
     if (!version) {
-      version = new SDK.ServiceWorkerVersion(this, payload);
+      version = new ServiceWorkerVersion(this, payload);
       this.versions.set(payload.versionId, version);
       return version;
     }
@@ -573,25 +570,23 @@
     this._fingerprint = Symbol('fingerprint');
     this.errors = [];
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.ServiceWorkerContextNamer = class {
+export class ServiceWorkerContextNamer {
   /**
    * @param {!SDK.Target} target
-   * @param {!SDK.ServiceWorkerManager} serviceWorkerManager
+   * @param {!ServiceWorkerManager} serviceWorkerManager
    */
   constructor(target, serviceWorkerManager) {
     this._target = target;
     this._serviceWorkerManager = serviceWorkerManager;
-    /** @type {!Map<string, !SDK.ServiceWorkerVersion>} */
+    /** @type {!Map<string, !ServiceWorkerVersion>} */
     this._versionByTargetId = new Map();
-    serviceWorkerManager.addEventListener(
-        SDK.ServiceWorkerManager.Events.RegistrationUpdated, this._registrationsUpdated, this);
-    serviceWorkerManager.addEventListener(
-        SDK.ServiceWorkerManager.Events.RegistrationDeleted, this._registrationsUpdated, this);
+    serviceWorkerManager.addEventListener(Events.RegistrationUpdated, this._registrationsUpdated, this);
+    serviceWorkerManager.addEventListener(Events.RegistrationDeleted, this._registrationsUpdated, this);
     SDK.targetManager.addModelListener(
         SDK.RuntimeModel, SDK.RuntimeModel.Events.ExecutionContextCreated, this._executionContextCreated, this);
   }
@@ -653,7 +648,7 @@
 
   /**
    * @param {!SDK.ExecutionContext} context
-   * @param {?SDK.ServiceWorkerVersion} version
+   * @param {?ServiceWorkerVersion} version
    */
   _updateContextLabel(context, version) {
     if (!version) {
@@ -664,4 +659,30 @@
     const label = parsedUrl ? parsedUrl.lastPathComponentWithFragment() : context.name;
     context.setLabel(label + ' #' + version.id + ' (' + version.status + ')');
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.ServiceWorkerManager = ServiceWorkerManager;
+
+/** @enum {symbol} */
+SDK.ServiceWorkerManager.Events = Events;
+
+/** @constructor */
+SDK.ServiceWorkerDispatcher = ServiceWorkerDispatcher;
+
+/** @constructor */
+SDK.ServiceWorkerVersion = ServiceWorkerVersion;
+
+/** @constructor */
+SDK.ServiceWorkerRegistration = ServiceWorkerRegistration;
+
+/** @constructor */
+SDK.ServiceWorkerContextNamer = ServiceWorkerContextNamer;
+
+SDK.SDKModel.register(ServiceWorkerManager, SDK.Target.Capability.ServiceWorker, true);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/SourceMap.js b/third_party/blink/renderer/devtools/front_end/sdk/SourceMap.js
index 35a3caa21..ecb06a4 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/SourceMap.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/SourceMap.js
@@ -29,34 +29,80 @@
  */
 
 /**
+ * @interface
+ */
+export default class SourceMap {
+  /**
+   * @return {string}
+   */
+  compiledURL() {
+  }
+
+  /**
+   * @return {string}
+   */
+  url() {
+  }
+
+  /**
+   * @return {!Array<string>}
+   */
+  sourceURLs() {
+  }
+
+  /**
+   * @param {string} sourceURL
+   * @param {!Common.ResourceType} contentType
+   * @return {!Common.ContentProvider}
+   */
+  sourceContentProvider(sourceURL, contentType) {
+  }
+
+  /**
+   * @param {string} sourceURL
+   * @return {?string}
+   */
+  embeddedContentByURL(sourceURL) {
+  }
+
+  /**
+   * @param {number} lineNumber in compiled resource
+   * @param {number} columnNumber in compiled resource
+   * @return {?SourceMapEntry}
+   */
+  findEntry(lineNumber, columnNumber) {
+  }
+}
+
+/**
  * @unrestricted
  */
-SDK.SourceMapV3 = class {
+export class SourceMapV3 {
   constructor() {
     /** @type {number} */ this.version;
     /** @type {string|undefined} */ this.file;
     /** @type {!Array.<string>} */ this.sources;
-    /** @type {!Array.<!SDK.SourceMapV3.Section>|undefined} */ this.sections;
+    /** @type {!Array.<!SourceMapV3.Section>|undefined} */ this.sections;
     /** @type {string} */ this.mappings;
     /** @type {string|undefined} */ this.sourceRoot;
     /** @type {!Array.<string>|undefined} */ this.names;
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.SourceMapV3.Section = class {
+SourceMapV3.Section = class {
   constructor() {
-    /** @type {!SDK.SourceMapV3} */ this.map;
-    /** @type {!SDK.SourceMapV3.Offset} */ this.offset;
+    /** @type {!SourceMapV3} */ this.map;
+    /** @type {!SourceMapV3.Offset} */ this.offset;
   }
 };
 
 /**
  * @unrestricted
  */
-SDK.SourceMapV3.Offset = class {
+SourceMapV3.Offset = class {
   constructor() {
     /** @type {number} */ this.line;
     /** @type {number} */ this.column;
@@ -66,7 +112,7 @@
 /**
  * @unrestricted
  */
-SDK.SourceMapEntry = class {
+export class SourceMapEntry {
   /**
    * @param {number} lineNumber
    * @param {number} columnNumber
@@ -85,8 +131,8 @@
   }
 
   /**
-   * @param {!SDK.SourceMapEntry} entry1
-   * @param {!SDK.SourceMapEntry} entry2
+   * @param {!SourceMapEntry} entry1
+   * @param {!SourceMapEntry} entry2
    * @return {number}
    */
   static compare(entry1, entry2) {
@@ -95,56 +141,14 @@
     }
     return entry1.columnNumber - entry2.columnNumber;
   }
-};
-
-/**
- * @interface
- */
-SDK.SourceMap = function() {};
-
-SDK.SourceMap.prototype = {
-  /**
-   * @return {string}
-   */
-  compiledURL() {},
-
-  /**
-   * @return {string}
-   */
-  url() {},
-
-  /**
-   * @return {!Array<string>}
-   */
-  sourceURLs() {},
-
-  /**
-   * @param {string} sourceURL
-   * @param {!Common.ResourceType} contentType
-   * @return {!Common.ContentProvider}
-   */
-  sourceContentProvider(sourceURL, contentType) {},
-
-  /**
-   * @param {string} sourceURL
-   * @return {?string}
-   */
-  embeddedContentByURL(sourceURL) {},
-
-  /**
-   * @param {number} lineNumber in compiled resource
-   * @param {number} columnNumber in compiled resource
-   * @return {?SDK.SourceMapEntry}
-   */
-  findEntry(lineNumber, columnNumber) {},
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.SourceMap.EditResult = class {
+export class EditResult {
   /**
-   * @param {!SDK.SourceMap} map
+   * @param {!SourceMap} map
    * @param {!Array<!TextUtils.SourceEdit>} compiledEdits
    * @param {!Map<string, string>} newSources
    */
@@ -153,26 +157,26 @@
     this.compiledEdits = compiledEdits;
     this.newSources = newSources;
   }
-};
+}
 
 /**
- * @implements {SDK.SourceMap}
+ * @implements {SourceMap}
  * @unrestricted
  */
-SDK.TextSourceMap = class {
+export class TextSourceMap {
   /**
    * Implements Source Map V3 model. See https://github.com/google/closure-compiler/wiki/Source-Maps
    * for format description.
    * @param {string} compiledURL
    * @param {string} sourceMappingURL
-   * @param {!SDK.SourceMapV3} payload
+   * @param {!SourceMapV3} payload
    */
   constructor(compiledURL, sourceMappingURL, payload) {
-    if (!SDK.TextSourceMap._base64Map) {
+    if (!TextSourceMap._base64Map) {
       const base64Digits = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
-      SDK.TextSourceMap._base64Map = {};
+      TextSourceMap._base64Map = {};
       for (let i = 0; i < base64Digits.length; ++i) {
-        SDK.TextSourceMap._base64Map[base64Digits.charAt(i)] = i;
+        TextSourceMap._base64Map[base64Digits.charAt(i)] = i;
       }
     }
 
@@ -181,9 +185,9 @@
     this._sourceMappingURL = sourceMappingURL;
     this._baseURL = sourceMappingURL.startsWith('data:') ? compiledURL : sourceMappingURL;
 
-    /** @type {?Array<!SDK.SourceMapEntry>} */
+    /** @type {?Array<!SourceMapEntry>} */
     this._mappings = null;
-    /** @type {!Map<string, !SDK.TextSourceMap.SourceInfo>} */
+    /** @type {!Map<string, !TextSourceMap.SourceInfo>} */
     this._sourceInfos = new Map();
     if (this._json.sections) {
       const sectionWithURL = !!this._json.sections.find(section => !!section.url);
@@ -197,8 +201,8 @@
   /**
    * @param {string} sourceMapURL
    * @param {string} compiledURL
-   * @return {!Promise<?SDK.TextSourceMap>}
-   * @this {SDK.TextSourceMap}
+   * @return {!Promise<?TextSourceMap>}
+   * @this {TextSourceMap}
    */
   static load(sourceMapURL, compiledURL) {
     let callback;
@@ -221,8 +225,8 @@
         content = content.substring(content.indexOf('\n'));
       }
       try {
-        const payload = /** @type {!SDK.SourceMapV3} */ (JSON.parse(content));
-        callback(new SDK.TextSourceMap(compiledURL, sourceMapURL, payload));
+        const payload = /** @type {!SourceMapV3} */ (JSON.parse(content));
+        callback(new TextSourceMap(compiledURL, sourceMapURL, payload));
       } catch (e) {
         console.error(e);
         Common.console.warn('DevTools failed to parse SourceMap: ' + sourceMapURL);
@@ -285,7 +289,7 @@
    * @override
    * @param {number} lineNumber in compiled resource
    * @param {number} columnNumber in compiled resource
-   * @return {?SDK.SourceMapEntry}
+   * @return {?SourceMapEntry}
    */
   findEntry(lineNumber, columnNumber) {
     const mappings = this.mappings();
@@ -298,7 +302,7 @@
    * @param {string} sourceURL
    * @param {number} lineNumber
    * @param {number} columnNumber
-   * @return {?SDK.SourceMapEntry}
+   * @return {?SourceMapEntry}
    */
   sourceLineMapping(sourceURL, lineNumber, columnNumber) {
     const mappings = this._reversedMappings(sourceURL);
@@ -317,7 +321,7 @@
 
     /**
      * @param {number} lineNumber
-     * @param {!SDK.SourceMapEntry} mapping
+     * @param {!SourceMapEntry} mapping
      * @return {number}
      */
     function lineComparator(lineNumber, mapping) {
@@ -329,7 +333,7 @@
    * @param {string} sourceURL
    * @param {number} lineNumber
    * @param {number} columnNumber
-   * @return {!Array<!SDK.SourceMapEntry>}
+   * @return {!Array<!SourceMapEntry>}
    */
   findReverseEntries(sourceURL, lineNumber, columnNumber) {
     const mappings = this._reversedMappings(sourceURL);
@@ -345,7 +349,7 @@
   }
 
   /**
-   * @return {!Array<!SDK.SourceMapEntry>}
+   * @return {!Array<!SourceMapEntry>}
    */
   mappings() {
     if (this._mappings === null) {
@@ -353,12 +357,12 @@
       this._eachSection(this._parseMap.bind(this));
       this._json = null;
     }
-    return /** @type {!Array<!SDK.SourceMapEntry>} */ (this._mappings);
+    return /** @type {!Array<!SourceMapEntry>} */ (this._mappings);
   }
 
   /**
    * @param {string} sourceURL
-   * @return {!Array.<!SDK.SourceMapEntry>}
+   * @return {!Array.<!SourceMapEntry>}
    */
   _reversedMappings(sourceURL) {
     if (!this._sourceInfos.has(sourceURL)) {
@@ -373,8 +377,8 @@
     return info.reverseMappings;
 
     /**
-     * @param {!SDK.SourceMapEntry} a
-     * @param {!SDK.SourceMapEntry} b
+     * @param {!SourceMapEntry} a
+     * @param {!SourceMapEntry} b
      * @return {number}
      */
     function sourceMappingComparator(a, b) {
@@ -394,7 +398,7 @@
   }
 
   /**
-   * @param {function(!SDK.SourceMapV3, number, number)} callback
+   * @param {function(!SourceMapV3, number, number)} callback
    */
   _eachSection(callback) {
     if (!this._json.sections) {
@@ -407,7 +411,7 @@
   }
 
   /**
-   * @param {!SDK.SourceMapV3} sourceMap
+   * @param {!SourceMapV3} sourceMap
    */
   _parseSources(sourceMap) {
     const sourcesList = [];
@@ -422,14 +426,14 @@
       if (url === this._compiledURL && source) {
         url += Common.UIString('? [sm]');
       }
-      this._sourceInfos.set(url, new SDK.TextSourceMap.SourceInfo(source, null));
+      this._sourceInfos.set(url, new TextSourceMap.SourceInfo(source, null));
       sourcesList.push(url);
     }
-    sourceMap[SDK.TextSourceMap._sourcesListSymbol] = sourcesList;
+    sourceMap[TextSourceMap._sourcesListSymbol] = sourcesList;
   }
 
   /**
-   * @param {!SDK.SourceMapV3} map
+   * @param {!SourceMapV3} map
    * @param {number} lineNumber
    * @param {number} columnNumber
    */
@@ -438,9 +442,9 @@
     let sourceLineNumber = 0;
     let sourceColumnNumber = 0;
     let nameIndex = 0;
-    const sources = map[SDK.TextSourceMap._sourcesListSymbol];
+    const sources = map[TextSourceMap._sourcesListSymbol];
     const names = map.names || [];
-    const stringCharIterator = new SDK.TextSourceMap.StringCharIterator(map.mappings);
+    const stringCharIterator = new TextSourceMap.StringCharIterator(map.mappings);
     let sourceURL = sources[sourceIndex];
 
     while (true) {
@@ -459,7 +463,7 @@
 
       columnNumber += this._decodeVLQ(stringCharIterator);
       if (!stringCharIterator.hasNext() || this._isSeparator(stringCharIterator.peek())) {
-        this._mappings.push(new SDK.SourceMapEntry(lineNumber, columnNumber));
+        this._mappings.push(new SourceMapEntry(lineNumber, columnNumber));
         continue;
       }
 
@@ -473,17 +477,17 @@
 
       if (!stringCharIterator.hasNext() || this._isSeparator(stringCharIterator.peek())) {
         this._mappings.push(
-            new SDK.SourceMapEntry(lineNumber, columnNumber, sourceURL, sourceLineNumber, sourceColumnNumber));
+            new SourceMapEntry(lineNumber, columnNumber, sourceURL, sourceLineNumber, sourceColumnNumber));
         continue;
       }
 
       nameIndex += this._decodeVLQ(stringCharIterator);
-      this._mappings.push(new SDK.SourceMapEntry(
+      this._mappings.push(new SourceMapEntry(
           lineNumber, columnNumber, sourceURL, sourceLineNumber, sourceColumnNumber, names[nameIndex]));
     }
 
     // As per spec, mappings are not necessarily sorted.
-    this._mappings.sort(SDK.SourceMapEntry.compare);
+    this._mappings.sort(SourceMapEntry.compare);
   }
 
   /**
@@ -495,7 +499,7 @@
   }
 
   /**
-   * @param {!SDK.TextSourceMap.StringCharIterator} stringCharIterator
+   * @param {!TextSourceMap.StringCharIterator} stringCharIterator
    * @return {number}
    */
   _decodeVLQ(stringCharIterator) {
@@ -504,10 +508,10 @@
     let shift = 0;
     let digit;
     do {
-      digit = SDK.TextSourceMap._base64Map[stringCharIterator.next()];
-      result += (digit & SDK.TextSourceMap._VLQ_BASE_MASK) << shift;
-      shift += SDK.TextSourceMap._VLQ_BASE_SHIFT;
-    } while (digit & SDK.TextSourceMap._VLQ_CONTINUATION_MASK);
+      digit = TextSourceMap._base64Map[stringCharIterator.next()];
+      result += (digit & TextSourceMap._VLQ_BASE_MASK) << shift;
+      shift += TextSourceMap._VLQ_BASE_SHIFT;
+    } while (digit & TextSourceMap._VLQ_CONTINUATION_MASK);
 
     // Fix the sign.
     const negative = result & 1;
@@ -523,7 +527,7 @@
   reverseMapTextRange(url, textRange) {
     /**
      * @param {!{lineNumber: number, columnNumber: number}} position
-     * @param {!SDK.SourceMapEntry} mapping
+     * @param {!SourceMapEntry} mapping
      * @return {number}
      */
     function comparator(position, mapping) {
@@ -545,17 +549,16 @@
     return new TextUtils.TextRange(
         startMapping.lineNumber, startMapping.columnNumber, endMapping.lineNumber, endMapping.columnNumber);
   }
-};
+}
 
-SDK.TextSourceMap._VLQ_BASE_SHIFT = 5;
-SDK.TextSourceMap._VLQ_BASE_MASK = (1 << 5) - 1;
-SDK.TextSourceMap._VLQ_CONTINUATION_MASK = 1 << 5;
-
+TextSourceMap._VLQ_BASE_SHIFT = 5;
+TextSourceMap._VLQ_BASE_MASK = (1 << 5) - 1;
+TextSourceMap._VLQ_CONTINUATION_MASK = 1 << 5;
 
 /**
  * @unrestricted
  */
-SDK.TextSourceMap.StringCharIterator = class {
+TextSourceMap.StringCharIterator = class {
   /**
    * @param {string} string
    */
@@ -589,10 +592,10 @@
 /**
  * @unrestricted
  */
-SDK.TextSourceMap.SourceInfo = class {
+TextSourceMap.SourceInfo = class {
   /**
    * @param {?string} content
-   * @param {?Array<!SDK.SourceMapEntry>} reverseMappings
+   * @param {?Array<!SourceMapEntry>} reverseMappings
    */
   constructor(content, reverseMappings) {
     this.content = content;
@@ -600,4 +603,25 @@
   }
 };
 
-SDK.TextSourceMap._sourcesListSymbol = Symbol('sourcesList');
+TextSourceMap._sourcesListSymbol = Symbol('sourcesList');
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @interface */
+SDK.SourceMap = SourceMap;
+
+/** @constructor */
+SDK.SourceMapV3 = SourceMapV3;
+
+/** @constructor */
+SDK.SourceMapEntry = SourceMapEntry;
+
+/** @constructor */
+SDK.TextSourceMap = TextSourceMap;
+
+/** @constructor */
+SDK.SourceMap.EditResult = EditResult;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/SourceMapManager.js b/third_party/blink/renderer/devtools/front_end/sdk/SourceMapManager.js
index 4844eca4..c7015b4c 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/SourceMapManager.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/SourceMapManager.js
@@ -5,7 +5,7 @@
 /**
  * @template T
  */
-SDK.SourceMapManager = class extends Common.Object {
+export default class SourceMapManager extends Common.Object {
   /**
    * @param {!SDK.Target} target
    */
@@ -98,7 +98,7 @@
         this._sourceMapByURL.has(editResult.map.url()), 'Cannot apply edit result for non-existing source map');
     this._sourceMapByURL.set(editResult.map.url(), editResult.map);
     this.dispatchEventToListeners(
-        SDK.SourceMapManager.Events.SourceMapChanged, {sourceMap: editResult.map, newSources: editResult.newSources});
+        Events.SourceMapChanged, {sourceMap: editResult.map, newSources: editResult.newSources});
   }
 
   /**
@@ -139,7 +139,7 @@
       return;
     }
 
-    this.dispatchEventToListeners(SDK.SourceMapManager.Events.SourceMapWillAttach, client);
+    this.dispatchEventToListeners(Events.SourceMapWillAttach, client);
 
     if (this._sourceMapByURL.has(sourceMapURL)) {
       attach.call(this, sourceMapURL, client);
@@ -154,7 +154,7 @@
     /**
      * @param {string} sourceMapURL
      * @param {?SDK.SourceMap} sourceMap
-     * @this {SDK.SourceMapManager}
+     * @this {SourceMapManager}
      */
     function onSourceMap(sourceMapURL, sourceMap) {
       this._sourceMapLoadedForTest();
@@ -165,7 +165,7 @@
       }
       if (!sourceMap) {
         for (const client of clients) {
-          this.dispatchEventToListeners(SDK.SourceMapManager.Events.SourceMapFailedToAttach, client);
+          this.dispatchEventToListeners(Events.SourceMapFailedToAttach, client);
         }
         return;
       }
@@ -178,13 +178,12 @@
     /**
      * @param {string} sourceMapURL
      * @param {!T} client
-     * @this {SDK.SourceMapManager}
+     * @this {SourceMapManager}
      */
     function attach(sourceMapURL, client) {
       this._sourceMapURLToClients.set(sourceMapURL, client);
       const sourceMap = this._sourceMapByURL.get(sourceMapURL);
-      this.dispatchEventToListeners(
-          SDK.SourceMapManager.Events.SourceMapAttached, {client: client, sourceMap: sourceMap});
+      this.dispatchEventToListeners(Events.SourceMapAttached, {client: client, sourceMap: sourceMap});
     }
   }
 
@@ -202,7 +201,7 @@
     }
     if (!this._sourceMapURLToClients.hasValue(sourceMapURL, client)) {
       if (this._sourceMapURLToLoadingClients.delete(sourceMapURL, client)) {
-        this.dispatchEventToListeners(SDK.SourceMapManager.Events.SourceMapFailedToAttach, client);
+        this.dispatchEventToListeners(Events.SourceMapFailedToAttach, client);
       }
       return;
     }
@@ -211,8 +210,7 @@
     if (!this._sourceMapURLToClients.has(sourceMapURL)) {
       this._sourceMapByURL.delete(sourceMapURL);
     }
-    this.dispatchEventToListeners(
-        SDK.SourceMapManager.Events.SourceMapDetached, {client: client, sourceMap: sourceMap});
+    this.dispatchEventToListeners(Events.SourceMapDetached, {client: client, sourceMap: sourceMap});
   }
 
   _sourceMapLoadedForTest() {
@@ -222,12 +220,23 @@
     SDK.targetManager.removeEventListener(
         SDK.TargetManager.Events.InspectedURLChanged, this._inspectedURLChanged, this);
   }
-};
+}
 
-SDK.SourceMapManager.Events = {
+export const Events = {
   SourceMapWillAttach: Symbol('SourceMapWillAttach'),
   SourceMapFailedToAttach: Symbol('SourceMapFailedToAttach'),
   SourceMapAttached: Symbol('SourceMapAttached'),
   SourceMapDetached: Symbol('SourceMapDetached'),
   SourceMapChanged: Symbol('SourceMapChanged')
 };
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.SourceMapManager = SourceMapManager;
+
+SDK.SourceMapManager.Events = Events;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/Target.js b/third_party/blink/renderer/devtools/front_end/sdk/Target.js
index 5917c44..715eff0 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/Target.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/Target.js
@@ -7,54 +7,52 @@
 /**
  * @unrestricted
  */
-SDK.Target = class extends Protocol.TargetBase {
+export default class Target extends Protocol.TargetBase {
   /**
    * @param {!SDK.TargetManager} targetManager
    * @param {string} id
    * @param {string} name
-   * @param {!SDK.Target.Type} type
+   * @param {!Type} type
    * @param {?SDK.Target} parentTarget
    * @param {string} sessionId
    * @param {boolean} suspended
    * @param {?Protocol.Connection} connection
    */
   constructor(targetManager, id, name, type, parentTarget, sessionId, suspended, connection) {
-    const needsNodeJSPatching = type === SDK.Target.Type.Node;
+    const needsNodeJSPatching = type === Type.Node;
     super(needsNodeJSPatching, parentTarget, sessionId, connection);
     this._targetManager = targetManager;
     this._name = name;
     this._inspectedURL = '';
     this._capabilitiesMask = 0;
     switch (type) {
-      case SDK.Target.Type.Frame:
-        this._capabilitiesMask = SDK.Target.Capability.Browser | SDK.Target.Capability.Storage |
-            SDK.Target.Capability.DOM | SDK.Target.Capability.JS | SDK.Target.Capability.Log |
-            SDK.Target.Capability.Network | SDK.Target.Capability.Target | SDK.Target.Capability.Tracing |
-            SDK.Target.Capability.Emulation | SDK.Target.Capability.Input | SDK.Target.Capability.Inspector;
+      case Type.Frame:
+        this._capabilitiesMask = Capability.Browser | Capability.Storage | Capability.DOM | Capability.JS |
+            Capability.Log | Capability.Network | Capability.Target | Capability.Tracing | Capability.Emulation |
+            Capability.Input | Capability.Inspector;
         if (!parentTarget) {
           // This matches backend exposing certain capabilities only for the main frame.
-          this._capabilitiesMask |= SDK.Target.Capability.DeviceEmulation | SDK.Target.Capability.ScreenCapture |
-              SDK.Target.Capability.Security | SDK.Target.Capability.ServiceWorker;
+          this._capabilitiesMask |=
+              Capability.DeviceEmulation | Capability.ScreenCapture | Capability.Security | Capability.ServiceWorker;
           // TODO(dgozman): we report service workers for the whole frame tree on the main frame,
           // while we should be able to only cover the subtree corresponding to the target.
         }
         break;
-      case SDK.Target.Type.ServiceWorker:
-        this._capabilitiesMask = SDK.Target.Capability.JS | SDK.Target.Capability.Log | SDK.Target.Capability.Network |
-            SDK.Target.Capability.Target | SDK.Target.Capability.Inspector;
+      case Type.ServiceWorker:
+        this._capabilitiesMask =
+            Capability.JS | Capability.Log | Capability.Network | Capability.Target | Capability.Inspector;
         if (!parentTarget) {
-          this._capabilitiesMask |= SDK.Target.Capability.Browser;
+          this._capabilitiesMask |= Capability.Browser;
         }
         break;
-      case SDK.Target.Type.Worker:
-        this._capabilitiesMask = SDK.Target.Capability.JS | SDK.Target.Capability.Log | SDK.Target.Capability.Network |
-            SDK.Target.Capability.Target;
+      case Type.Worker:
+        this._capabilitiesMask = Capability.JS | Capability.Log | Capability.Network | Capability.Target;
         break;
-      case SDK.Target.Type.Node:
-        this._capabilitiesMask = SDK.Target.Capability.JS;
+      case Type.Node:
+        this._capabilitiesMask = Capability.JS;
         break;
-      case SDK.Target.Type.Browser:
-        this._capabilitiesMask = SDK.Target.Capability.Target;
+      case Type.Browser:
+        this._capabilitiesMask = Capability.Target;
         break;
     }
     this._type = type;
@@ -68,9 +66,9 @@
     this._creatingModels = true;
     // TODO(dgozman): fix this in bindings layer.
     this.model(SDK.ResourceTreeModel);
-    const registered = Array.from(SDK.SDKModel._registeredModels.keys());
+    const registered = Array.from(SDK.SDKModel.registeredModels.keys());
     for (const modelClass of registered) {
-      const info = SDK.SDKModel._registeredModels.get(modelClass);
+      const info = SDK.SDKModel.registeredModels.get(modelClass);
       if (info.autostart || required.has(modelClass)) {
         this.model(modelClass);
       }
@@ -93,7 +91,7 @@
   }
 
   /**
-   * @return {!SDK.Target.Type}
+   * @return {!Type}
    */
   type() {
     return this._type;
@@ -104,7 +102,7 @@
    */
   markAsNodeJSForTest() {
     super.markAsNodeJSForTest();
-    this._type = SDK.Target.Type.Node;
+    this._type = Type.Node;
   }
 
   /**
@@ -129,8 +127,7 @@
    * @return {string}
    */
   decorateLabel(label) {
-    return (this._type === SDK.Target.Type.Worker || this._type === SDK.Target.Type.ServiceWorker) ? '\u2699 ' + label :
-                                                                                                     label;
+    return (this._type === Type.Worker || this._type === Type.ServiceWorker) ? '\u2699 ' + label : label;
   }
 
   /**
@@ -159,7 +156,7 @@
    */
   model(modelClass) {
     if (!this._modelByConstructor.get(modelClass)) {
-      const info = SDK.SDKModel._registeredModels.get(modelClass);
+      const info = SDK.SDKModel.registeredModels.get(modelClass);
       if (info === undefined) {
         throw 'Model class is not registered @' + new Error().stack;
       }
@@ -237,12 +234,12 @@
   suspended() {
     return this._isSuspended;
   }
-};
+}
 
 /**
  * @enum {number}
  */
-SDK.Target.Capability = {
+export const Capability = {
   Browser: 1 << 0,
   DOM: 1 << 1,
   JS: 1 << 2,
@@ -265,7 +262,7 @@
 /**
  * @enum {string}
  */
-SDK.Target.Type = {
+export const Type = {
   Frame: 'frame',
   ServiceWorker: 'service-worker',
   Worker: 'worker',
@@ -273,75 +270,21 @@
   Browser: 'browser',
 };
 
-/**
- * @unrestricted
- */
-SDK.SDKModel = class extends Common.Object {
-  /**
-   * @param {!SDK.Target} target
-   */
-  constructor(target) {
-    super();
-    this._target = target;
-  }
+/* Legacy exported object */
+self.SDK = self.SDK || {};
 
-  /**
-   * @return {!SDK.Target}
-   */
-  target() {
-    return this._target;
-  }
+/* Legacy exported object */
+SDK = SDK || {};
 
-  /**
-   * Override this method to perform tasks that are required to suspend the
-   * model and that still need other models in an unsuspended state.
-   * @param {string=} reason - optionally provide a reason, the model can respond accordingly
-   * @return {!Promise}
-   */
-  preSuspendModel(reason) {
-    return Promise.resolve();
-  }
-
-  /**
-   * @param {string=} reason - optionally provide a reason, the model can respond accordingly
-   * @return {!Promise}
-   */
-  suspendModel(reason) {
-    return Promise.resolve();
-  }
-
-  /**
-   * @return {!Promise}
-   */
-  resumeModel() {
-    return Promise.resolve();
-  }
-
-  /**
-   * Override this method to perform tasks that are required to after resuming
-   * the model and that require all models already in an unsuspended state.
-   * @return {!Promise}
-   */
-  postResumeModel() {
-    return Promise.resolve();
-  }
-
-  dispose() {
-  }
-};
-
+/** @constructor */
+SDK.Target = Target;
 
 /**
- * @param {function(new:SDK.SDKModel, !SDK.Target)} modelClass
- * @param {number} capabilities
- * @param {boolean} autostart
+ * @enum {number}
  */
-SDK.SDKModel.register = function(modelClass, capabilities, autostart) {
-  if (!SDK.SDKModel._registeredModels) {
-    SDK.SDKModel._registeredModels = new Map();
-  }
-  SDK.SDKModel._registeredModels.set(modelClass, {capabilities: capabilities, autostart: autostart});
-};
+SDK.Target.Capability = Capability;
 
-/** @type {!Map<function(new:SDK.SDKModel, !SDK.Target), !{capabilities: number, autostart: boolean}>} */
-SDK.SDKModel._registeredModels;
+/**
+ * @enum {string}
+ */
+SDK.Target.Type = Type;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/TargetManager.js b/third_party/blink/renderer/devtools/front_end/sdk/TargetManager.js
index 5f116a1..bcb3d0b 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/TargetManager.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/TargetManager.js
@@ -4,16 +4,16 @@
  * found in the LICENSE file.
  */
 
-SDK.TargetManager = class extends Common.Object {
+export default class TargetManager extends Common.Object {
   constructor() {
     super();
     /** @type {!Array.<!SDK.Target>} */
     this._targets = [];
-    /** @type {!Array.<!SDK.TargetManager.Observer>} */
+    /** @type {!Array.<!Observer>} */
     this._observers = [];
     /** @type {!Platform.Multimap<symbol, !{modelClass: !Function, thisObject: (!Object|undefined), listener: function(!Common.Event)}>} */
     this._modelListeners = new Platform.Multimap();
-    /** @type {!Platform.Multimap<function(new:SDK.SDKModel, !SDK.Target), !SDK.SDKModelObserver>} */
+    /** @type {!Platform.Multimap<function(new:SDK.SDKModel, !SDK.Target), !SDKModelObserver>} */
     this._modelObservers = new Platform.Multimap();
     this._isSuspended = false;
   }
@@ -27,7 +27,7 @@
       return Promise.resolve();
     }
     this._isSuspended = true;
-    this.dispatchEventToListeners(SDK.TargetManager.Events.SuspendStateChanged);
+    this.dispatchEventToListeners(Events.SuspendStateChanged);
     return Promise.all(this._targets.map(target => target.suspend(reason)));
   }
 
@@ -39,7 +39,7 @@
       return Promise.resolve();
     }
     this._isSuspended = false;
-    this.dispatchEventToListeners(SDK.TargetManager.Events.SuspendStateChanged);
+    this.dispatchEventToListeners(Events.SuspendStateChanged);
     return Promise.all(this._targets.map(target => target.resume()));
   }
 
@@ -75,7 +75,7 @@
 
   /**
    * @param {function(new:T,!SDK.Target)} modelClass
-   * @param {!SDK.SDKModelObserver<T>} observer
+   * @param {!SDKModelObserver<T>} observer
    * @template T
    */
   observeModels(modelClass, observer) {
@@ -88,7 +88,7 @@
 
   /**
    * @param {function(new:T,!SDK.Target)} modelClass
-   * @param {!SDK.SDKModelObserver<T>} observer
+   * @param {!SDKModelObserver<T>} observer
    * @template T
    */
   unobserveModels(modelClass, observer) {
@@ -159,7 +159,7 @@
   }
 
   /**
-   * @param {!SDK.TargetManager.Observer} targetObserver
+   * @param {!Observer} targetObserver
    */
   observeTargets(targetObserver) {
     if (this._observers.indexOf(targetObserver) !== -1) {
@@ -172,7 +172,7 @@
   }
 
   /**
-   * @param {!SDK.TargetManager.Observer} targetObserver
+   * @param {!Observer} targetObserver
    */
   unobserveTargets(targetObserver) {
     this._observers.remove(targetObserver);
@@ -273,10 +273,10 @@
   mainTarget() {
     return this._targets[0] || null;
   }
-};
+}
 
 /** @enum {symbol} */
-SDK.TargetManager.Events = {
+export const Events = {
   AvailableTargetsChanged: Symbol('AvailableTargetsChanged'),
   InspectedURLChanged: Symbol('InspectedURLChanged'),
   NameChanged: Symbol('NameChanged'),
@@ -286,39 +286,57 @@
 /**
  * @interface
  */
-SDK.TargetManager.Observer = function() {};
-
-SDK.TargetManager.Observer.prototype = {
+export class Observer {
   /**
    * @param {!SDK.Target} target
    */
-  targetAdded(target) {},
+  targetAdded(target) {
+  }
 
   /**
    * @param {!SDK.Target} target
    */
-  targetRemoved(target) {},
-};
+  targetRemoved(target) {
+  }
+}
 
 /**
  * @interface
  * @template T
  */
-SDK.SDKModelObserver = function() {};
-
-SDK.SDKModelObserver.prototype = {
+export class SDKModelObserver {
   /**
    * @param {!T} model
    */
-  modelAdded(model) {},
+  modelAdded(model) {
+  }
 
   /**
    * @param {!T} model
    */
-  modelRemoved(model) {},
-};
+  modelRemoved(model) {
+  }
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.TargetManager = TargetManager;
+
+/** @enum {symbol} */
+SDK.TargetManager.Events = Events;
+
+/** @interface */
+SDK.TargetManager.Observer = Observer;
+
+/** @interface */
+SDK.SDKModelObserver = SDKModelObserver;
 
 /**
- * @type {!SDK.TargetManager}
+ * @type {!TargetManager}
  */
-SDK.targetManager = new SDK.TargetManager();
+SDK.targetManager = new TargetManager();
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/TracingManager.js b/third_party/blink/renderer/devtools/front_end/sdk/TracingManager.js
index b87a5d05..7bf2c7c 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/TracingManager.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/TracingManager.js
@@ -3,40 +3,20 @@
  * Use of this source code is governed by a BSD-style license that can be
  * found in the LICENSE file.
  */
-/**
- * @interface
- */
-SDK.TracingManagerClient = function() {};
-
-SDK.TracingManagerClient.prototype = {
-  /**
-   * @param {!Array.<!SDK.TracingManager.EventPayload>} events
-   */
-  traceEventsCollected(events) {},
-  tracingComplete() {},
-  /**
-   * @param {number} usage
-   */
-  tracingBufferUsage(usage) {},
-  /**
-   * @param {number} progress
-   */
-  eventsRetrievalProgress(progress) {}
-};
 
 /**
  * @unrestricted
  */
-SDK.TracingManager = class extends SDK.SDKModel {
+export default class TracingManager extends SDK.SDKModel {
   /**
    * @param {!SDK.Target} target
    */
   constructor(target) {
     super(target);
     this._tracingAgent = target.tracingAgent();
-    target.registerTracingDispatcher(new SDK.TracingDispatcher(this));
+    target.registerTracingDispatcher(new TracingDispatcher(this));
 
-    /** @type {?SDK.TracingManagerClient} */
+    /** @type {?TracingManagerClient} */
     this._activeClient = null;
     this._eventBufferSize = 0;
     this._eventsRetrieved = 0;
@@ -78,7 +58,7 @@
   }
 
   /**
-   * @param {!SDK.TracingManagerClient} client
+   * @param {!TracingManagerClient} client
    * @param {string} categoryFilter
    * @param {string} options
    * @return {!Promise<!Object>}
@@ -93,7 +73,7 @@
       bufferUsageReportingInterval: bufferUsageReportingIntervalMs,
       categories: categoryFilter,
       options: options,
-      transferMode: SDK.TracingManager.TransferMode.ReportEvents
+      transferMode: TransferMode.ReportEvents
     };
     const response = await this._tracingAgent.invoke_start(args);
     if (response[Protocol.Error]) {
@@ -112,40 +92,44 @@
     this._finishing = true;
     this._tracingAgent.end();
   }
-};
+}
 
-SDK.SDKModel.register(SDK.TracingManager, SDK.Target.Capability.Tracing, false);
-
-/** @typedef {!{
-        cat: (string|undefined),
-        pid: number,
-        tid: number,
-        ts: number,
-        ph: string,
-        name: string,
-        args: !Object,
-        dur: number,
-        id: string,
-        id2: (!{global: (string|undefined), local: (string|undefined)}|undefined),
-        scope: string,
-        bind_id: string,
-        s: string
-    }}
- */
-SDK.TracingManager.EventPayload;
-
-SDK.TracingManager.TransferMode = {
+export const TransferMode = {
   ReportEvents: 'ReportEvents',
   ReturnAsStream: 'ReturnAsStream'
 };
 
 /**
+ * @interface
+ */
+export class TracingManagerClient {
+  /**
+   * @param {!Array.<!SDK.TracingManager.EventPayload>} events
+   */
+  traceEventsCollected(events) {
+  }
+
+  tracingComplete() {
+  }
+  /**
+   * @param {number} usage
+   */
+  tracingBufferUsage(usage) {
+  }
+  /**
+   * @param {number} progress
+   */
+  eventsRetrievalProgress(progress) {
+  }
+}
+
+/**
  * @implements {Protocol.TracingDispatcher}
  * @unrestricted
  */
-SDK.TracingDispatcher = class {
+export class TracingDispatcher {
   /**
-   * @param {!SDK.TracingManager} tracingManager
+   * @param {!TracingManager} tracingManager
    */
   constructor(tracingManager) {
     this._tracingManager = tracingManager;
@@ -175,4 +159,41 @@
   tracingComplete() {
     this._tracingManager._tracingComplete();
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.TracingManager = TracingManager;
+
+SDK.TracingManager.TransferMode = TransferMode;
+
+/** @interface */
+SDK.TracingManagerClient = TracingManagerClient;
+
+/** @constructor */
+SDK.TracingDispatcher = TracingDispatcher;
+
+/** @typedef {!{
+        cat: (string|undefined),
+        pid: number,
+        tid: number,
+        ts: number,
+        ph: string,
+        name: string,
+        args: !Object,
+        dur: number,
+        id: string,
+        id2: (!{global: (string|undefined), local: (string|undefined)}|undefined),
+        scope: string,
+        bind_id: string,
+        s: string
+    }}
+ */
+SDK.TracingManager.EventPayload;
+
+SDK.SDKModel.register(SDK.TracingManager, SDK.Target.Capability.Tracing, false);
\ No newline at end of file
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/TracingModel.js b/third_party/blink/renderer/devtools/front_end/sdk/TracingModel.js
index a72f2e0..9f262ee 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/TracingModel.js
+++ b/third_party/blink/renderer/devtools/front_end/sdk/TracingModel.js
@@ -4,27 +4,27 @@
  * found in the LICENSE file.
  */
 
-SDK.TracingModel = class {
+export default class TracingModel {
   /**
-   * @param {!SDK.BackingStorage} backingStorage
+   * @param {!BackingStorage} backingStorage
    */
   constructor(backingStorage) {
     this._backingStorage = backingStorage;
     // Avoid extra reset of the storage as it's expensive.
     this._firstWritePending = true;
-    /** @type {!Map<(number|string), !SDK.TracingModel.Process>} */
+    /** @type {!Map<(number|string), !Process>} */
     this._processById = new Map();
     this._processByName = new Map();
     this._minimumRecordTime = 0;
     this._maximumRecordTime = 0;
     this._devToolsMetadataEvents = [];
-    /** @type {!Array<!SDK.TracingModel.Event>} */
+    /** @type {!Array<!Event>} */
     this._asyncEvents = [];
-    /** @type {!Map<string, !SDK.TracingModel.AsyncEvent>} */
+    /** @type {!Map<string, !AsyncEvent>} */
     this._openAsyncEvents = new Map();
-    /** @type {!Map<string, !Array<!SDK.TracingModel.AsyncEvent>>} */
+    /** @type {!Map<string, !Array<!AsyncEvent>>} */
     this._openNestableAsyncEvents = new Map();
-    /** @type {!Map<string, !SDK.TracingModel.ProfileEventsGroup>} */
+    /** @type {!Map<string, !ProfileEventsGroup>} */
     this._profileGroups = new Map();
     /** @type {!Map<string, !Set<string>>} */
     this._parsedCategories = new Map();
@@ -51,8 +51,7 @@
    * @return {boolean}
    */
   static isAsyncPhase(phase) {
-    return SDK.TracingModel.isNestableAsyncPhase(phase) || phase === 'S' || phase === 'T' || phase === 'F' ||
-        phase === 'p';
+    return TracingModel.isNestableAsyncPhase(phase) || phase === 'S' || phase === 'T' || phase === 'F' || phase === 'p';
   }
 
   /**
@@ -64,13 +63,13 @@
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} event
+   * @param {!Event} event
    * @return {boolean}
    */
   static isTopLevelEvent(event) {
-    return event.hasCategory(SDK.TracingModel.DevToolsTimelineEventCategory) && event.name === 'RunTask' ||
-        event.hasCategory(SDK.TracingModel.LegacyTopLevelEventCategory) ||
-        event.hasCategory(SDK.TracingModel.DevToolsMetadataEventCategory) &&
+    return event.hasCategory(DevToolsTimelineEventCategory) && event.name === 'RunTask' ||
+        event.hasCategory(LegacyTopLevelEventCategory) ||
+        event.hasCategory(DevToolsMetadataEventCategory) &&
         event.name === 'Program';  // Older timelines may have this instead of toplevel.
   }
 
@@ -93,8 +92,8 @@
   }
 
   /**
-   * @param {!SDK.TracingModel} tracingModel
-   * @return {?SDK.TracingModel.Thread}
+   * @param {!TracingModel} tracingModel
+   * @return {?Thread}
    *
    * TODO: Move this to a better place. This is here just for convenience o
    * re-use between modules. This really belongs to a higher level, since it
@@ -131,7 +130,7 @@
   }
 
   /**
-   * @return {!Array.<!SDK.TracingModel.Event>}
+   * @return {!Array.<!Event>}
    */
   devToolsMetadataEvents() {
     return this._devToolsMetadataEvents;
@@ -194,11 +193,11 @@
   _addEvent(payload) {
     let process = this._processById.get(payload.pid);
     if (!process) {
-      process = new SDK.TracingModel.Process(this, payload.pid);
+      process = new Process(this, payload.pid);
       this._processById.set(payload.pid, process);
     }
 
-    const phase = SDK.TracingModel.Phase;
+    const phase = Phase;
     const eventsDelimiter = ',\n';
     this._backingStorage.appendString(this._firstWritePending ? '[' : eventsDelimiter);
     this._firstWritePending = false;
@@ -232,11 +231,11 @@
     // Build async event when we've got events from all threads & processes, so we can sort them and process in the
     // chronological order. However, also add individual async events to the thread flow (above), so we can easily
     // display them on the same chart as other events, should we choose so.
-    if (SDK.TracingModel.isAsyncPhase(payload.ph)) {
+    if (TracingModel.isAsyncPhase(payload.ph)) {
       this._asyncEvents.push(event);
     }
     event._setBackingStorage(backingStorage);
-    if (event.hasCategory(SDK.TracingModel.DevToolsMetadataEventCategory)) {
+    if (event.hasCategory(DevToolsMetadataEventCategory)) {
       this._devToolsMetadataEvents.push(event);
     }
 
@@ -245,25 +244,25 @@
     }
 
     switch (payload.name) {
-      case SDK.TracingModel.MetadataEvent.ProcessSortIndex:
+      case MetadataEvent.ProcessSortIndex:
         process._setSortIndex(payload.args['sort_index']);
         break;
-      case SDK.TracingModel.MetadataEvent.ProcessName:
+      case MetadataEvent.ProcessName:
         const processName = payload.args['name'];
         process._setName(processName);
         this._processByName.set(processName, process);
         break;
-      case SDK.TracingModel.MetadataEvent.ThreadSortIndex:
+      case MetadataEvent.ThreadSortIndex:
         process.threadById(payload.tid)._setSortIndex(payload.args['sort_index']);
         break;
-      case SDK.TracingModel.MetadataEvent.ThreadName:
+      case MetadataEvent.ThreadName:
         process.threadById(payload.tid)._setName(payload.args['name']);
         break;
     }
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} event
+   * @param {!Event} event
    */
   _addSampleEvent(event) {
     const id = `${event.thread.process().id()}:${event.id}`;
@@ -271,13 +270,13 @@
     if (group) {
       group._addChild(event);
     } else {
-      this._profileGroups.set(id, new SDK.TracingModel.ProfileEventsGroup(event));
+      this._profileGroups.set(id, new ProfileEventsGroup(event));
     }
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} event
-   * @return {?SDK.TracingModel.ProfileEventsGroup}
+   * @param {!Event} event
+   * @return {?ProfileEventsGroup}
    */
   profileGroup(event) {
     return this._profileGroups.get(`${event.thread.process().id()}:${event.id}`) || null;
@@ -298,15 +297,15 @@
   }
 
   /**
-   * @return {!Array.<!SDK.TracingModel.Process>}
+   * @return {!Array.<!Process>}
    */
   sortedProcesses() {
-    return SDK.TracingModel.NamedObject._sort(this._processById.valuesArray());
+    return NamedObject._sort(this._processById.valuesArray());
   }
 
   /**
    * @param {string} name
-   * @return {?SDK.TracingModel.Process}
+   * @return {?Process}
    */
   processByName(name) {
     return this._processByName.get(name);
@@ -314,7 +313,7 @@
 
   /**
    * @param {number} pid
-   * @return {?SDK.TracingModel.Process}
+   * @return {?Process}
    */
   processById(pid) {
     return this._processById.get(pid) || null;
@@ -323,7 +322,7 @@
   /**
    * @param {string} processName
    * @param {string} threadName
-   * @return {?SDK.TracingModel.Thread}
+   * @return {?Thread}
    */
   threadByName(processName, threadName) {
     const process = this.processByName(processName);
@@ -331,10 +330,10 @@
   }
 
   _processPendingAsyncEvents() {
-    this._asyncEvents.sort(SDK.TracingModel.Event.compareStartTime);
+    this._asyncEvents.sort(Event.compareStartTime);
     for (let i = 0; i < this._asyncEvents.length; ++i) {
       const event = this._asyncEvents[i];
-      if (SDK.TracingModel.isNestableAsyncPhase(event.phase)) {
+      if (TracingModel.isNestableAsyncPhase(event.phase)) {
         this._addNestableAsyncEvent(event);
       } else {
         this._addAsyncEvent(event);
@@ -362,10 +361,10 @@
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} event
+   * @param {!Event} event
    */
   _addNestableAsyncEvent(event) {
-    const phase = SDK.TracingModel.Phase;
+    const phase = Phase;
     const key = event.categoriesString + '.' + event.id;
     let openEventsStack = this._openNestableAsyncEvents.get(key);
 
@@ -375,7 +374,7 @@
           openEventsStack = [];
           this._openNestableAsyncEvents.set(key, openEventsStack);
         }
-        const asyncEvent = new SDK.TracingModel.AsyncEvent(event);
+        const asyncEvent = new AsyncEvent(event);
         openEventsStack.push(asyncEvent);
         event.thread._addAsyncEvent(asyncEvent);
         break;
@@ -401,10 +400,10 @@
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} event
+   * @param {!Event} event
    */
   _addAsyncEvent(event) {
-    const phase = SDK.TracingModel.Phase;
+    const phase = Phase;
     const key = event.categoriesString + '.' + event.name + '.' + event.id;
     let asyncEvent = this._openAsyncEvents.get(key);
 
@@ -413,7 +412,7 @@
         console.error(`Event ${event.name} has already been started`);
         return;
       }
-      asyncEvent = new SDK.TracingModel.AsyncEvent(event);
+      asyncEvent = new AsyncEvent(event);
       this._openAsyncEvents.set(key, asyncEvent);
       event.thread._addAsyncEvent(asyncEvent);
       return;
@@ -442,7 +441,7 @@
   }
 
   /**
-   * @return {!SDK.BackingStorage}
+   * @return {!BackingStorage}
    */
   backingStorage() {
     return this._backingStorage;
@@ -460,12 +459,12 @@
     }
     return parsedCategories;
   }
-};
+}
 
 /**
  * @enum {string}
  */
-SDK.TracingModel.Phase = {
+export const Phase = {
   Begin: 'B',
   End: 'E',
   Complete: 'X',
@@ -488,7 +487,7 @@
   DeleteObject: 'D'
 };
 
-SDK.TracingModel.MetadataEvent = {
+export const MetadataEvent = {
   ProcessSortIndex: 'process_sort_index',
   ProcessName: 'process_name',
   ThreadSortIndex: 'thread_sort_index',
@@ -497,43 +496,45 @@
 
 // TODO(alph): LegacyTopLevelEventCategory is not recorded since M74 and used for loading
 // legacy profiles. Drop at some point.
-SDK.TracingModel.LegacyTopLevelEventCategory = 'toplevel';
-SDK.TracingModel.DevToolsMetadataEventCategory = 'disabled-by-default-devtools.timeline';
-SDK.TracingModel.DevToolsTimelineEventCategory = 'disabled-by-default-devtools.timeline';
-SDK.TracingModel.FrameLifecycleEventCategory = 'cc,devtools';
+export const LegacyTopLevelEventCategory = 'toplevel';
+
+export const DevToolsMetadataEventCategory = 'disabled-by-default-devtools.timeline';
+export const DevToolsTimelineEventCategory = 'disabled-by-default-devtools.timeline';
+export const FrameLifecycleEventCategory = 'cc,devtools';
 
 /**
  * @interface
  */
-SDK.BackingStorage = function() {};
-
-SDK.BackingStorage.prototype = {
+export class BackingStorage {
   /**
    * @param {string} string
    */
-  appendString(string) {},
+  appendString(string) {
+  }
 
   /**
    * @param {string} string
    * @return {function():!Promise.<?string>}
    */
-  appendAccessibleString(string) {},
+  appendAccessibleString(string) {
+  }
 
-  finishWriting() {},
+  finishWriting() {
+  }
 
   reset() {}
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.TracingModel.Event = class {
+export class Event {
   /**
    * @param {string|undefined} categories
    * @param {string} name
-   * @param {!SDK.TracingModel.Phase} phase
+   * @param {!Phase} phase
    * @param {number} startTime
-   * @param {!SDK.TracingModel.Thread} thread
+   * @param {!Thread} thread
    */
   constructor(categories, name, phase, startTime, thread) {
     /** @type {string} */
@@ -542,11 +543,11 @@
     this._parsedCategories = thread._model._parsedCategoriesForString(this.categoriesString);
     /** @type {string} */
     this.name = name;
-    /** @type {!SDK.TracingModel.Phase} */
+    /** @type {!Phase} */
     this.phase = phase;
     /** @type {number} */
     this.startTime = startTime;
-    /** @type {!SDK.TracingModel.Thread} */
+    /** @type {!Thread} */
     this.thread = thread;
     /** @type {!Object} */
     this.args = {};
@@ -558,19 +559,18 @@
   /**
    * @this {null}
    * @param {!SDK.TracingManager.EventPayload} payload
-   * @param {!SDK.TracingModel.Thread} thread
-   * @return {!SDK.TracingModel.Event}
+   * @param {!Thread} thread
+   * @return {!Event}
    */
   static fromPayload(payload, thread) {
-    const event = new SDK.TracingModel.Event(
-        payload.cat, payload.name, /** @type {!SDK.TracingModel.Phase} */ (payload.ph), payload.ts / 1000, thread);
+    const event = new Event(payload.cat, payload.name, /** @type {!Phase} */ (payload.ph), payload.ts / 1000, thread);
     if (payload.args) {
       event.addArgs(payload.args);
     }
     if (typeof payload.dur === 'number') {
       event.setEndTime((payload.ts + payload.dur) / 1000);
     }
-    const id = SDK.TracingModel._extractId(payload);
+    const id = TracingModel._extractId(payload);
     if (typeof id !== 'undefined') {
       event.id = id;
     }
@@ -582,8 +582,8 @@
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} a
-   * @param {!SDK.TracingModel.Event} b
+   * @param {!Event} a
+   * @param {!Event} b
    * @return {number}
    */
   static compareStartTime(a, b) {
@@ -591,8 +591,8 @@
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} a
-   * @param {!SDK.TracingModel.Event} b
+   * @param {!Event} a
+   * @param {!Event} b
    * @return {number}
    */
   static orderedCompareStartTime(a, b) {
@@ -636,7 +636,7 @@
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} endEvent
+   * @param {!Event} endEvent
    */
   _complete(endEvent) {
     if (endEvent.args) {
@@ -652,17 +652,17 @@
    */
   _setBackingStorage(backingStorage) {
   }
-};
+}
 
-SDK.TracingModel.ObjectSnapshot = class extends SDK.TracingModel.Event {
+export class ObjectSnapshot extends Event {
   /**
    * @param {string|undefined} category
    * @param {string} name
    * @param {number} startTime
-   * @param {!SDK.TracingModel.Thread} thread
+   * @param {!Thread} thread
    */
   constructor(category, name, startTime, thread) {
-    super(category, name, SDK.TracingModel.Phase.SnapshotObject, startTime, thread);
+    super(category, name, Phase.SnapshotObject, startTime, thread);
     /** @type {?function():!Promise<?string>} */
     this._backingStorage = null;
     /** @type {string} */
@@ -675,12 +675,12 @@
    * @override
    * @this {null}
    * @param {!SDK.TracingManager.EventPayload} payload
-   * @param {!SDK.TracingModel.Thread} thread
-   * @return {!SDK.TracingModel.ObjectSnapshot}
+   * @param {!Thread} thread
+   * @return {!ObjectSnapshot}
    */
   static fromPayload(payload, thread) {
-    const snapshot = new SDK.TracingModel.ObjectSnapshot(payload.cat, payload.name, payload.ts / 1000, thread);
-    const id = SDK.TracingModel._extractId(payload);
+    const snapshot = new ObjectSnapshot(payload.cat, payload.name, payload.ts / 1000, thread);
+    const id = TracingModel._extractId(payload);
     if (typeof id !== 'undefined') {
       snapshot.id = id;
     }
@@ -743,15 +743,14 @@
     this._backingStorage = backingStorage;
     this.args = {};
   }
-};
-
+}
 
 /**
  * @unrestricted
  */
-SDK.TracingModel.AsyncEvent = class extends SDK.TracingModel.Event {
+export class AsyncEvent extends Event {
   /**
-   * @param {!SDK.TracingModel.Event} startEvent
+   * @param {!Event} startEvent
    */
   constructor(startEvent) {
     super(startEvent.categoriesString, startEvent.name, startEvent.phase, startEvent.startTime, startEvent.thread);
@@ -760,42 +759,42 @@
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} event
+   * @param {!Event} event
    */
   _addStep(event) {
     this.steps.push(event);
-    if (event.phase === SDK.TracingModel.Phase.AsyncEnd || event.phase === SDK.TracingModel.Phase.NestableAsyncEnd) {
+    if (event.phase === Phase.AsyncEnd || event.phase === Phase.NestableAsyncEnd) {
       this.setEndTime(event.startTime);
       // FIXME: ideally, we shouldn't do this, but this makes the logic of converting
       // async console events to sync ones much simpler.
       this.steps[0].setEndTime(event.startTime);
     }
   }
-};
+}
 
 /**
  * @unrestricted
  */
-SDK.TracingModel.ProfileEventsGroup = class {
+export class ProfileEventsGroup {
   /**
-   * @param {!SDK.TracingModel.Event} event
+   * @param {!Event} event
    */
   constructor(event) {
-    /** @type {!Array<!SDK.TracingModel.Event>} */
+    /** @type {!Array<!Event>} */
     this.children = [event];
   }
 
   /**
-   * @param {!SDK.TracingModel.Event} event
+   * @param {!Event} event
    */
   _addChild(event) {
     this.children.push(event);
   }
-};
+}
 
-SDK.TracingModel.NamedObject = class {
+export class NamedObject {
   /**
-   * @param {!SDK.TracingModel} model
+   * @param {!TracingModel} model
    * @param {number} id
    */
   constructor(model, id) {
@@ -806,12 +805,12 @@
   }
 
   /**
-   * @param {!Array.<!SDK.TracingModel.NamedObject>} array
+   * @param {!Array.<!NamedObject>} array
    */
   static _sort(array) {
     /**
-     * @param {!SDK.TracingModel.NamedObject} a
-     * @param {!SDK.TracingModel.NamedObject} b
+     * @param {!NamedObject} a
+     * @param {!NamedObject} b
      */
     function comparator(a, b) {
       return a._sortIndex !== b._sortIndex ? a._sortIndex - b._sortIndex : a.name().localeCompare(b.name());
@@ -839,16 +838,16 @@
   _setSortIndex(sortIndex) {
     this._sortIndex = sortIndex;
   }
-};
+}
 
-SDK.TracingModel.Process = class extends SDK.TracingModel.NamedObject {
+export class Process extends NamedObject {
   /**
-   * @param {!SDK.TracingModel} model
+   * @param {!TracingModel} model
    * @param {number} id
    */
   constructor(model, id) {
     super(model, id);
-    /** @type {!Map<number, !SDK.TracingModel.Thread>} */
+    /** @type {!Map<number, !Thread>} */
     this._threads = new Map();
     this._threadByName = new Map();
   }
@@ -862,12 +861,12 @@
 
   /**
    * @param {number} id
-   * @return {!SDK.TracingModel.Thread}
+   * @return {!Thread}
    */
   threadById(id) {
     let thread = this._threads.get(id);
     if (!thread) {
-      thread = new SDK.TracingModel.Thread(this, id);
+      thread = new Thread(this, id);
       this._threads.set(id, thread);
     }
     return thread;
@@ -875,7 +874,7 @@
 
   /**
    * @param {string} name
-   * @return {?SDK.TracingModel.Thread}
+   * @return {?Thread}
    */
   threadByName(name) {
     return this._threadByName.get(name) || null;
@@ -883,7 +882,7 @@
 
   /**
    * @param {string} name
-   * @param {!SDK.TracingModel.Thread} thread
+   * @param {!Thread} thread
    */
   _setThreadByName(name, thread) {
     this._threadByName.set(name, thread);
@@ -891,23 +890,23 @@
 
   /**
    * @param {!SDK.TracingManager.EventPayload} payload
-   * @return {?SDK.TracingModel.Event} event
+   * @return {?Event} event
    */
   _addEvent(payload) {
     return this.threadById(payload.tid)._addEvent(payload);
   }
 
   /**
-   * @return {!Array.<!SDK.TracingModel.Thread>}
+   * @return {!Array.<!Thread>}
    */
   sortedThreads() {
-    return SDK.TracingModel.NamedObject._sort(this._threads.valuesArray());
+    return NamedObject._sort(this._threads.valuesArray());
   }
-};
+}
 
-SDK.TracingModel.Thread = class extends SDK.TracingModel.NamedObject {
+export class Thread extends NamedObject {
   /**
-   * @param {!SDK.TracingModel.Process} process
+   * @param {!Process} process
    * @param {number} id
    */
   constructor(process, id) {
@@ -919,9 +918,9 @@
   }
 
   tracingComplete() {
-    this._asyncEvents.sort(SDK.TracingModel.Event.compareStartTime);
-    this._events.sort(SDK.TracingModel.Event.compareStartTime);
-    const phases = SDK.TracingModel.Phase;
+    this._asyncEvents.sort(Event.compareStartTime);
+    this._events.sort(Event.compareStartTime);
+    const phases = Phase;
     const stack = [];
     for (let i = 0; i < this._events.length; ++i) {
       const e = this._events[i];
@@ -955,13 +954,12 @@
 
   /**
    * @param {!SDK.TracingManager.EventPayload} payload
-   * @return {?SDK.TracingModel.Event} event
+   * @return {?Event} event
    */
   _addEvent(payload) {
-    const event = payload.ph === SDK.TracingModel.Phase.SnapshotObject ?
-        SDK.TracingModel.ObjectSnapshot.fromPayload(payload, this) :
-        SDK.TracingModel.Event.fromPayload(payload, this);
-    if (SDK.TracingModel.isTopLevelEvent(event)) {
+    const event = payload.ph === Phase.SnapshotObject ? ObjectSnapshot.fromPayload(payload, this) :
+                                                        Event.fromPayload(payload, this);
+    if (TracingModel.isTopLevelEvent(event)) {
       // Discard nested "top-level" events.
       if (this._lastTopLevelEvent && this._lastTopLevelEvent.endTime > event.startTime) {
         return null;
@@ -973,7 +971,7 @@
   }
 
   /**
-   * @param {!SDK.TracingModel.AsyncEvent} asyncEvent
+   * @param {!AsyncEvent} asyncEvent
    */
   _addAsyncEvent(asyncEvent) {
     this._asyncEvents.push(asyncEvent);
@@ -996,23 +994,63 @@
   }
 
   /**
-   * @return {!SDK.TracingModel.Process}
+   * @return {!Process}
    */
   process() {
     return this._process;
   }
 
   /**
-   * @return {!Array.<!SDK.TracingModel.Event>}
+   * @return {!Array.<!Event>}
    */
   events() {
     return this._events;
   }
 
   /**
-   * @return {!Array.<!SDK.TracingModel.AsyncEvent>}
+   * @return {!Array.<!AsyncEvent>}
    */
   asyncEvents() {
     return this._asyncEvents;
   }
-};
+}
+
+/* Legacy exported object */
+self.SDK = self.SDK || {};
+
+/* Legacy exported object */
+SDK = SDK || {};
+
+/** @constructor */
+SDK.TracingModel = TracingModel;
+
+SDK.TracingModel.Phase = Phase;
+SDK.TracingModel.MetadataEvent = MetadataEvent;
+SDK.TracingModel.LegacyTopLevelEventCategory = LegacyTopLevelEventCategory;
+SDK.TracingModel.DevToolsMetadataEventCategory = DevToolsMetadataEventCategory;
+SDK.TracingModel.DevToolsTimelineEventCategory = DevToolsTimelineEventCategory;
+SDK.TracingModel.FrameLifecycleEventCategory = FrameLifecycleEventCategory;
+
+/** @constructor */
+SDK.TracingModel.Event = Event;
+
+/** @constructor */
+SDK.TracingModel.ObjectSnapshot = ObjectSnapshot;
+
+/** @constructor */
+SDK.TracingModel.AsyncEvent = AsyncEvent;
+
+/** @constructor */
+SDK.TracingModel.ProfileEventsGroup = ProfileEventsGroup;
+
+/** @constructor */
+SDK.TracingModel.NamedObject = NamedObject;
+
+/** @constructor */
+SDK.TracingModel.Process = Process;
+
+/** @constructor */
+SDK.TracingModel.Thread = Thread;
+
+/** @interface */
+SDK.BackingStorage = BackingStorage;
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/module.json b/third_party/blink/renderer/devtools/front_end/sdk/module.json
index 3a1cdb9..a286bdf 100644
--- a/third_party/blink/renderer/devtools/front_end/sdk/module.json
+++ b/third_party/blink/renderer/devtools/front_end/sdk/module.json
@@ -364,11 +364,14 @@
             ]
         }
     ],
-    "scripts": [
+    "scripts": [],
+    "modules": [
+        "sdk.js",
+        "SDKModel.js",
         "Target.js",
         "TargetManager.js",
         "Connections.js",
-        "ContentProviders.js",
+        "CompilerSourceMappingContentProvider.js",
         "CookieModel.js",
         "CookieParser.js",
         "ProfileTreeModel.js",
diff --git a/third_party/blink/renderer/devtools/front_end/sdk/sdk.js b/third_party/blink/renderer/devtools/front_end/sdk/sdk.js
new file mode 100644
index 0000000..b4653c7
--- /dev/null
+++ b/third_party/blink/renderer/devtools/front_end/sdk/sdk.js
@@ -0,0 +1,115 @@
+// Copyright 2019 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.
+
+import './SDKModel.js';
+import './CSSMetadata.js';
+import '../SupportedCSSProperties.js';
+import './Target.js';
+import './TargetManager.js';
+import './ProfileTreeModel.js';
+import './NetworkRequest.js';
+import './NetworkManager.js';
+import './RuntimeModel.js';
+
+import * as ChildTargetManager from './ChildTargetManager.js';
+import * as CompilerSourceMappingContentProvider from './CompilerSourceMappingContentProvider.js';
+import * as Connections from './Connections.js';
+import * as ConsoleModel from './ConsoleModel.js';
+import * as CookieModel from './CookieModel.js';
+import * as CookieParser from './CookieParser.js';
+import * as CPUProfileDataModel from './CPUProfileDataModel.js';
+import * as CPUProfilerModel from './CPUProfilerModel.js';
+import * as CSSMatchedStyles from './CSSMatchedStyles.js';
+import * as CSSMedia from './CSSMedia.js';
+import * as CSSMetadata from './CSSMetadata.js';
+import * as CSSModel from './CSSModel.js';
+import * as CSSProperty from './CSSProperty.js';
+import * as CSSRule from './CSSRule.js';
+import * as CSSStyleDeclaration from './CSSStyleDeclaration.js';
+import * as CSSStyleSheetHeader from './CSSStyleSheetHeader.js';
+import * as DebuggerModel from './DebuggerModel.js';
+import * as DOMDebuggerModel from './DOMDebuggerModel.js';
+import * as DOMModel from './DOMModel.js';
+import * as EmulationModel from './EmulationModel.js';
+import * as FilmStripModel from './FilmStripModel.js';
+import * as HARLog from './HARLog.js';
+import * as HeapProfilerModel from './HeapProfilerModel.js';
+import * as IsolateManager from './IsolateManager.js';
+import * as LayerTreeBase from './LayerTreeBase.js';
+import * as LogModel from './LogModel.js';
+import * as NetworkLog from './NetworkLog.js';
+import * as NetworkManager from './NetworkManager.js';
+import * as NetworkRequest from './NetworkRequest.js';
+import * as OverlayModel from './OverlayModel.js';
+import * as PaintProfiler from './PaintProfiler.js';
+import * as PerformanceMetricsModel from './PerformanceMetricsModel.js';
+import * as ProfileTreeModel from './ProfileTreeModel.js';
+import * as RemoteObject from './RemoteObject.js';
+import * as Resource from './Resource.js';
+import * as ResourceTreeModel from './ResourceTreeModel.js';
+import * as RuntimeModel from './RuntimeModel.js';
+import * as ScreenCaptureModel from './ScreenCaptureModel.js';
+import * as Script from './Script.js';
+import * as SecurityOriginManager from './SecurityOriginManager.js';
+import * as ServerTiming from './ServerTiming.js';
+import * as ServiceWorkerCacheModel from './ServiceWorkerCacheModel.js';
+import * as ServiceWorkerManager from './ServiceWorkerManager.js';
+import * as SourceMap from './SourceMap.js';
+import * as SourceMapManager from './SourceMapManager.js';
+import * as Target from './Target.js';
+import * as TargetManager from './TargetManager.js';
+import * as TracingManager from './TracingManager.js';
+import * as TracingModel from './TracingModel.js';
+
+export {
+  ChildTargetManager,
+  CompilerSourceMappingContentProvider,
+  Connections,
+  ConsoleModel,
+  CookieModel,
+  CookieParser,
+  CPUProfileDataModel,
+  CPUProfilerModel,
+  CSSMatchedStyles,
+  CSSMedia,
+  CSSMetadata,
+  CSSModel,
+  CSSProperty,
+  CSSRule,
+  CSSStyleDeclaration,
+  CSSStyleSheetHeader,
+  DebuggerModel,
+  DOMDebuggerModel,
+  DOMModel,
+  EmulationModel,
+  FilmStripModel,
+  HARLog,
+  HeapProfilerModel,
+  IsolateManager,
+  LayerTreeBase,
+  LogModel,
+  NetworkLog,
+  NetworkManager,
+  NetworkRequest,
+  OverlayModel,
+  PaintProfiler,
+  PerformanceMetricsModel,
+  ProfileTreeModel,
+  RemoteObject,
+  Resource,
+  ResourceTreeModel,
+  RuntimeModel,
+  ScreenCaptureModel,
+  Script,
+  SecurityOriginManager,
+  ServerTiming,
+  ServiceWorkerCacheModel,
+  ServiceWorkerManager,
+  SourceMap,
+  SourceMapManager,
+  Target,
+  TargetManager,
+  TracingManager,
+  TracingModel,
+};
diff --git a/third_party/blink/renderer/devtools/front_end/security/SecurityModel.js b/third_party/blink/renderer/devtools/front_end/security/SecurityModel.js
index e0eb5de..fc4b6a8 100644
--- a/third_party/blink/renderer/devtools/front_end/security/SecurityModel.js
+++ b/third_party/blink/renderer/devtools/front_end/security/SecurityModel.js
@@ -106,6 +106,12 @@
     this._model.dispatchEventToListeners(Security.SecurityModel.Events.SecurityStateChanged, pageSecurityState);
   }
 
+  /**
+   * @override
+   * @param {!Protocol.Security.VisibleSecurityState} visibleSecurityState
+   */
+  visibleSecurityStateChanged(visibleSecurityState) {
+  }
 
   /**
    * @override
diff --git a/third_party/blink/renderer/devtools/front_end/sources/ScriptOriginPlugin.js b/third_party/blink/renderer/devtools/front_end/sources/ScriptOriginPlugin.js
index a731ccc..48132df 100644
--- a/third_party/blink/renderer/devtools/front_end/sources/ScriptOriginPlugin.js
+++ b/third_party/blink/renderer/devtools/front_end/sources/ScriptOriginPlugin.js
@@ -51,7 +51,7 @@
     const locations = Bindings.debuggerWorkspaceBinding.uiLocationToRawLocations(uiSourceCode, 0, 0);
     for (const location of locations) {
       const script = location.script();
-      if (script.originStackTrace) {
+      if (script && script.originStackTrace) {
         return script;
       }
     }
diff --git a/third_party/blink/renderer/devtools/front_end/sources/SourceMapNamesResolver.js b/third_party/blink/renderer/devtools/front_end/sources/SourceMapNamesResolver.js
index 8045d53..f36b919 100644
--- a/third_party/blink/renderer/devtools/front_end/sources/SourceMapNamesResolver.js
+++ b/third_party/blink/renderer/devtools/front_end/sources/SourceMapNamesResolver.js
@@ -282,7 +282,7 @@
   if (!script) {
     return Promise.resolve('');
   }
-  const sourceMap = Bindings.debuggerWorkspaceBinding.sourceMapForScript(script);
+  const sourceMap = /** @type {!SDK.TextSourceMap} */ (Bindings.debuggerWorkspaceBinding.sourceMapForScript(script));
   if (!sourceMap) {
     return Promise.resolve('');
   }
diff --git a/third_party/blink/renderer/devtools/front_end/timeline_model/TracingLayerTree.js b/third_party/blink/renderer/devtools/front_end/timeline_model/TracingLayerTree.js
index c1a1dd5..9ec0ad7 100644
--- a/third_party/blink/renderer/devtools/front_end/timeline_model/TracingLayerTree.js
+++ b/third_party/blink/renderer/devtools/front_end/timeline_model/TracingLayerTree.js
@@ -99,7 +99,7 @@
       Common.console.error(`Tile ${tileId} is missing`);
       return /** @type {!Promise<?SDK.SnapshotWithRect>} */ (Promise.resolve(null));
     }
-    const layer = this.layerById(tile.layer_id);
+    const layer = /** @type {?TimelineModel.TracingLayer} */ (this.layerById(tile.layer_id));
     if (!layer) {
       Common.console.error(`Layer ${tile.layer_id} for tile ${tileId} is not found`);
       return /** @type {!Promise<?SDK.SnapshotWithRect>} */ (Promise.resolve(null));
@@ -238,9 +238,10 @@
 
   /**
    * @override
-   * @param {!SDK.Layer} child
+   * @param {!SDK.Layer} childParam
    */
-  addChild(child) {
+  addChild(childParam) {
+    const child = /** @type {!TimelineModel.TracingLayer} */ (childParam);
     if (child._parent) {
       console.assert(false, 'Child already has a parent');
     }
diff --git a/third_party/blink/renderer/devtools/front_end/ui/KeyboardShortcut.js b/third_party/blink/renderer/devtools/front_end/ui/KeyboardShortcut.js
index 81af952..d0d0511 100644
--- a/third_party/blink/renderer/devtools/front_end/ui/KeyboardShortcut.js
+++ b/third_party/blink/renderer/devtools/front_end/ui/KeyboardShortcut.js
@@ -43,7 +43,7 @@
     if (typeof keyCode === 'string') {
       keyCode = keyCode.charCodeAt(0) - (/^[a-z]/.test(keyCode) ? 32 : 0);
     }
-    modifiers = modifiers || KeyboardShortcut.Modifiers.None;
+    modifiers = modifiers || Modifiers.None;
     return KeyboardShortcut._makeKeyFromCodeAndModifiers(keyCode, modifiers);
   }
 
@@ -52,18 +52,18 @@
    * @return {number}
    */
   static makeKeyFromEvent(keyboardEvent) {
-    let modifiers = KeyboardShortcut.Modifiers.None;
+    let modifiers = Modifiers.None;
     if (keyboardEvent.shiftKey) {
-      modifiers |= KeyboardShortcut.Modifiers.Shift;
+      modifiers |= Modifiers.Shift;
     }
     if (keyboardEvent.ctrlKey) {
-      modifiers |= KeyboardShortcut.Modifiers.Ctrl;
+      modifiers |= Modifiers.Ctrl;
     }
     if (keyboardEvent.altKey) {
-      modifiers |= KeyboardShortcut.Modifiers.Alt;
+      modifiers |= Modifiers.Alt;
     }
     if (keyboardEvent.metaKey) {
-      modifiers |= KeyboardShortcut.Modifiers.Meta;
+      modifiers |= Modifiers.Meta;
     }
 
     // Use either a real or a synthetic keyCode (for events originating from extensions).
@@ -77,7 +77,7 @@
    */
   static makeKeyFromEventIgnoringModifiers(keyboardEvent) {
     const keyCode = keyboardEvent.keyCode || keyboardEvent['__keyCode'];
-    return KeyboardShortcut._makeKeyFromCodeAndModifiers(keyCode, KeyboardShortcut.Modifiers.None);
+    return KeyboardShortcut._makeKeyFromCodeAndModifiers(keyCode, Modifiers.None);
   }
 
   /**
@@ -117,8 +117,8 @@
     let modifiers = 0;
     let keyString;
     for (let i = 0; i < parts.length; ++i) {
-      if (typeof KeyboardShortcut.Modifiers[parts[i]] !== 'undefined') {
-        modifiers |= KeyboardShortcut.Modifiers[parts[i]];
+      if (typeof Modifiers[parts[i]] !== 'undefined') {
+        modifiers |= Modifiers[parts[i]];
         continue;
       }
       console.assert(
@@ -133,7 +133,7 @@
 
     const key = KeyboardShortcut.Keys[keyString] || KeyboardShortcut.KeyBindings[keyString];
     if (key && key.shiftKey) {
-      modifiers |= KeyboardShortcut.Modifiers.Shift;
+      modifiers |= Modifiers.Shift;
     }
     return KeyboardShortcut.makeDescriptor(key ? key : keyString, modifiers);
   }
@@ -184,7 +184,7 @@
    */
   static _modifiersToString(modifiers) {
     const isMac = Host.isMac();
-    const m = KeyboardShortcut.Modifiers;
+    const m = Modifiers;
     const modifierNames = new Map([
       [m.Ctrl, isMac ? 'Ctrl\u2004' : 'Ctrl\u200A+\u200A'], [m.Alt, isMac ? '\u2325\u2004' : 'Alt\u200A+\u200A'],
       [m.Shift, isMac ? '\u21e7\u2004' : 'Shift\u200A+\u200A'], [m.Meta, isMac ? '\u2318\u2004' : 'Win\u200A+\u200A']
@@ -281,11 +281,11 @@
 export const KeyBindings = {};
 
 (function() {
-for (const key in KeyboardShortcut.Keys) {
-  const descriptor = KeyboardShortcut.Keys[key];
+for (const key in Keys) {
+  const descriptor = Keys[key];
   if (typeof descriptor === 'object' && descriptor['code']) {
     const name = typeof descriptor['name'] === 'string' ? descriptor['name'] : key;
-    KeyboardShortcut.KeyBindings[name] = descriptor;
+    KeyBindings[name] = descriptor;
   }
 }
 })();
@@ -314,4 +314,4 @@
 UI.KeyboardShortcut.Key;
 
 /** @typedef {!{key: number, name: string}} */
-UI.KeyboardShortcut.Descriptor;
\ No newline at end of file
+UI.KeyboardShortcut.Descriptor;
diff --git a/third_party/blink/renderer/devtools/front_end/ui/inspectorCommon.css b/third_party/blink/renderer/devtools/front_end/ui/inspectorCommon.css
index 6a8e5fdc..1b166b5 100644
--- a/third_party/blink/renderer/devtools/front_end/ui/inspectorCommon.css
+++ b/third_party/blink/renderer/devtools/front_end/ui/inspectorCommon.css
@@ -166,6 +166,10 @@
     color: inherit;
 }
 
+input::placeholder {
+    color: rgba(0, 0, 0, 0.54);
+}
+
 :host-context(.-theme-with-dark-background) input[type="checkbox"]:not(.-theme-preserve) {
     -webkit-filter: invert(80%);
 }
diff --git a/third_party/blink/renderer/devtools/scripts/compile_frontend.py b/third_party/blink/renderer/devtools/scripts/compile_frontend.py
index 3319a0ff..944ff15 100755
--- a/third_party/blink/renderer/devtools/scripts/compile_frontend.py
+++ b/third_party/blink/renderer/devtools/scripts/compile_frontend.py
@@ -254,6 +254,11 @@
     '--checks-only',
 ]
 
+GENERATED_SKIP_COMPILATION_FILES = [
+    'SupportedCSSProperties.js',
+    'InspectorBackendCommands.js',
+]
+
 
 def check_conditional_dependencies(modules_by_name):
     errors_found = False
@@ -291,11 +296,13 @@
         if "InspectorBackend.js" in file:
             args.extend(['--js', protocol_externs_file])
 
-            # Write a dummy file for InspectorBackendCommands. We don't type-check this file, but we
-            # import it from protocol/protocol.js
-            inspector_backends_commands_file = path.join(temp_frontend_path, 'InspectorBackendCommands.js')
-            modular_build.write_file(inspector_backends_commands_file, '')
-            args.extend(['--js', inspector_backends_commands_file])
+    for file in GENERATED_SKIP_COMPILATION_FILES:
+        # Write a dummy file for skipped compilation files that are autogenerated.
+        # We don't type-check this file, but we import them via ES modules
+        generated_file = path.join(temp_frontend_path, file)
+        modular_build.write_file(generated_file, '')
+        args.extend(['--js', generated_file])
+
     command += args
     command = [arg.replace(DEVTOOLS_FRONTEND_PATH, temp_frontend_path) for arg in command]
     compiler_args_file = tempfile.NamedTemporaryFile(mode='wt', delete=False)
diff --git a/third_party/blink/renderer/modules/BUILD.gn b/third_party/blink/renderer/modules/BUILD.gn
index cb95ccb6..9248871 100644
--- a/third_party/blink/renderer/modules/BUILD.gn
+++ b/third_party/blink/renderer/modules/BUILD.gn
@@ -32,10 +32,6 @@
   defines = [ "BLINK_MODULES_IMPLEMENTATION=1" ]
 }
 
-config("notouch_config") {
-  defines = [ "TOUCHLESS_MEDIA_CONTROLS" ]
-}
-
 make_names("module_names") {
   in_files = [ "indexeddb/indexed_db_names.json5" ]
   output_dir = blink_modules_output_dir
@@ -203,10 +199,6 @@
 
   configs -= [ "//build/config/compiler:default_symbols" ]
   configs += blink_symbols_config
-
-  if (is_android && notouch_build) {
-    configs += [ ":notouch_config" ]
-  }
 }
 
 jumbo_source_set("modules_testing") {
@@ -443,14 +435,6 @@
     sources += [ "payments/skip_to_gpay_utils_test.cc" ]
   }
 
-  if (is_android && notouch_build) {
-    sources += [
-      "media_controls/touchless/media_controls_touchless_impl_test.cc",
-      "media_controls/touchless/test_media_controls_menu_host.cc",
-      "media_controls/touchless/test_media_controls_menu_host.h",
-    ]
-  }
-
   configs += [
     "//third_party/blink/renderer:config",
     "//third_party/blink/renderer:inside_blink",
diff --git a/third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.cc b/third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.cc
index cd0221f..b7a829c 100644
--- a/third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.cc
+++ b/third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.cc
@@ -1184,8 +1184,11 @@
   PostNotification(obj, ax::mojom::Event::kCheckedStateChanged);
 
   AXObject* listbox = obj->ParentObjectUnignored();
-  if (listbox && listbox->RoleValue() == ax::mojom::Role::kListBox)
+  if (listbox && listbox->RoleValue() == ax::mojom::Role::kListBox) {
+    // Ensure listbox options are in sync as selection status may have changed
+    MarkAXObjectDirty(listbox, true);
     PostNotification(listbox, ax::mojom::Event::kSelectedChildrenChanged);
+  }
 }
 
 void AXObjectCacheImpl::HandleNodeLostFocusWithCleanLayout(Node* node) {
diff --git a/third_party/blink/renderer/modules/accessibility/ax_position.cc b/third_party/blink/renderer/modules/accessibility/ax_position.cc
index 15ebb4b..fd7dd48d 100644
--- a/third_party/blink/renderer/modules/accessibility/ax_position.cc
+++ b/third_party/blink/renderer/modules/accessibility/ax_position.cc
@@ -26,7 +26,7 @@
 const AXPosition AXPosition::CreatePositionBeforeObject(
     const AXObject& child,
     const AXPositionAdjustmentBehavior adjustment_behavior) {
-  if (child.IsDetached())
+  if (child.IsDetached() || !child.AccessibilityIsIncludedInTree())
     return {};
 
   // If |child| is a text object, but not a text control, make behavior the same
@@ -37,6 +37,10 @@
     return CreateFirstPositionInObject(child, adjustment_behavior);
 
   const AXObject* parent = child.ParentObjectIncludedInTree();
+
+  if (!parent || parent->IsDetached())
+    return {};
+
   DCHECK(parent);
   AXPosition position(*parent);
   position.text_offset_or_child_index_ = child.IndexInParent();
@@ -51,7 +55,7 @@
 const AXPosition AXPosition::CreatePositionAfterObject(
     const AXObject& child,
     const AXPositionAdjustmentBehavior adjustment_behavior) {
-  if (child.IsDetached())
+  if (child.IsDetached() || !child.AccessibilityIsIncludedInTree())
     return {};
 
   // If |child| is a text object, but not a text control, make behavior the same
@@ -62,6 +66,10 @@
     return CreateLastPositionInObject(child, adjustment_behavior);
 
   const AXObject* parent = child.ParentObjectIncludedInTree();
+
+  if (!parent || parent->IsDetached())
+    return {};
+
   DCHECK(parent);
   AXPosition position(*parent);
   position.text_offset_or_child_index_ = child.IndexInParent() + 1;
diff --git a/third_party/blink/renderer/modules/accessibility/ax_position_test.cc b/third_party/blink/renderer/modules/accessibility/ax_position_test.cc
index 72314dd..31193ad 100644
--- a/third_party/blink/renderer/modules/accessibility/ax_position_test.cc
+++ b/third_party/blink/renderer/modules/accessibility/ax_position_test.cc
@@ -77,6 +77,12 @@
     </script>
     )HTML";
 
+constexpr char kMap[] = R"HTML(
+    <br id="br">
+    <map id="map">
+      <area shape="rect" coords="0,0,10,10" href="about:blank">
+    </map>
+    )HTML";
 }  // namespace
 
 //
@@ -1620,5 +1626,33 @@
   EXPECT_EQ(ax_after, ax_position_after_from_dom.ChildAfterTreePosition());
 }
 
+TEST_F(AccessibilityTest, PositionInInvalidMapLayout) {
+  SetBodyInnerHTML(kMap);
+
+  Node* br = GetElementById("br");
+  ASSERT_NE(nullptr, br);
+  Node* map = GetElementById("map");
+  ASSERT_NE(nullptr, map);
+
+  // Create an invalid layout by appending a child to the <br>
+  br->appendChild(map);
+  GetDocument().UpdateStyleAndLayoutTree();
+
+  const AXObject* ax_map = GetAXObjectByElementId("map");
+  ASSERT_NE(nullptr, ax_map);
+  ASSERT_EQ(ax::mojom::Role::kGenericContainer, ax_map->RoleValue());
+
+  const auto ax_position_before =
+      AXPosition::CreatePositionBeforeObject(*ax_map);
+  const auto position_before = ax_position_before.ToPositionWithAffinity();
+  EXPECT_EQ(nullptr, position_before.AnchorNode());
+  EXPECT_EQ(0, position_before.GetPosition().OffsetInContainerNode());
+
+  const auto ax_position_after = AXPosition::CreatePositionAfterObject(*ax_map);
+  const auto position_after = ax_position_after.ToPositionWithAffinity();
+  EXPECT_EQ(nullptr, position_after.AnchorNode());
+  EXPECT_EQ(0, position_after.GetPosition().OffsetInContainerNode());
+}
+
 }  // namespace test
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/BUILD.gn b/third_party/blink/renderer/modules/media_controls/BUILD.gn
index 0eb064e..cb8247d 100644
--- a/third_party/blink/renderer/modules/media_controls/BUILD.gn
+++ b/third_party/blink/renderer/modules/media_controls/BUILD.gn
@@ -101,38 +101,6 @@
     ":media_controls_resources",
     "//services/service_manager/public/cpp",
   ]
-
-  if (is_android && notouch_build) {
-    sources += [
-      "touchless/elements/media_controls_touchless_bottom_container_element.cc",
-      "touchless/elements/media_controls_touchless_bottom_container_element.h",
-      "touchless/elements/media_controls_touchless_element.cc",
-      "touchless/elements/media_controls_touchless_element.h",
-      "touchless/elements/media_controls_touchless_overlay_element.cc",
-      "touchless/elements/media_controls_touchless_overlay_element.h",
-      "touchless/elements/media_controls_touchless_play_button_element.cc",
-      "touchless/elements/media_controls_touchless_play_button_element.h",
-      "touchless/elements/media_controls_touchless_seek_button_element.cc",
-      "touchless/elements/media_controls_touchless_seek_button_element.h",
-      "touchless/elements/media_controls_touchless_time_display_element.cc",
-      "touchless/elements/media_controls_touchless_time_display_element.h",
-      "touchless/elements/media_controls_touchless_timeline_element.cc",
-      "touchless/elements/media_controls_touchless_timeline_element.h",
-      "touchless/elements/media_controls_touchless_volume_button_element.cc",
-      "touchless/elements/media_controls_touchless_volume_button_element.h",
-      "touchless/elements/media_controls_touchless_volume_container_element.cc",
-      "touchless/elements/media_controls_touchless_volume_container_element.h",
-      "touchless/media_controls_touchless_impl.cc",
-      "touchless/media_controls_touchless_impl.h",
-      "touchless/media_controls_touchless_media_event_listener.cc",
-      "touchless/media_controls_touchless_media_event_listener.h",
-      "touchless/media_controls_touchless_media_event_listener_observer.h",
-      "touchless/media_controls_touchless_resource_loader.cc",
-      "touchless/media_controls_touchless_resource_loader.h",
-    ]
-
-    deps += [ ":media_controls_touchless_resources" ]
-  }
 }
 
 grit("media_controls_resources") {
@@ -144,14 +112,3 @@
     "media_controls_resources_200_percent.pak",
   ]
 }
-
-if (is_android && notouch_build) {
-  grit("media_controls_touchless_resources") {
-    output_dir = "$blink_modules_output_dir/media_controls/touchless/resources/"
-    source = "touchless/resources/media_controls_touchless_resources.grd"
-    outputs = [
-      "grit/media_controls_touchless_resources.h",
-      "media_controls_touchless_resources.pak",
-    ]
-  }
-}
diff --git a/third_party/blink/renderer/modules/media_controls/media_controls_impl.cc b/third_party/blink/renderer/modules/media_controls/media_controls_impl.cc
index f9a138e..cefff9b 100644
--- a/third_party/blink/renderer/modules/media_controls/media_controls_impl.cc
+++ b/third_party/blink/renderer/modules/media_controls/media_controls_impl.cc
@@ -1464,7 +1464,7 @@
     ResetHideMediaControlsTimer();
   }
 
-  if (event.IsKeyboardEvent() &&
+  if (event.IsKeyboardEvent() && !event.defaultPrevented() &&
       !IsSpatialNavigationEnabled(GetDocument().GetFrame())) {
     const String& key = ToKeyboardEvent(event).key();
     if (key == "Enter" || ToKeyboardEvent(event).keyCode() == ' ') {
diff --git a/third_party/blink/renderer/modules/media_controls/media_controls_impl.h b/third_party/blink/renderer/modules/media_controls/media_controls_impl.h
index 5134c7c..eb976bb2 100644
--- a/third_party/blink/renderer/modules/media_controls/media_controls_impl.h
+++ b/third_party/blink/renderer/modules/media_controls/media_controls_impl.h
@@ -116,7 +116,6 @@
     // There is no update because only the overlay is expected to change.
     RefreshCastButtonVisibilityWithoutUpdate();
   }
-  void ShowContextMenu() override {}
 
   // Called by the fullscreen buttons to toggle fulllscreen on/off.
   void EnterFullscreen();
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_bottom_container_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_bottom_container_element.cc
deleted file mode 100644
index 4359bbc..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_bottom_container_element.cc
+++ /dev/null
@@ -1,79 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_bottom_container_element.h"
-
-#include "third_party/blink/renderer/core/css/properties/css_property.h"
-#include "third_party/blink/renderer/core/css_value_keywords.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_time_display_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_timeline_element.h"
-#include "third_party/blink/renderer/platform/wtf/functional.h"
-
-namespace blink {
-
-MediaControlsTouchlessBottomContainerElement::
-    MediaControlsTouchlessBottomContainerElement(
-        MediaControlsTouchlessImpl& media_controls)
-    : MediaControlsTouchlessElement(media_controls) {
-  SetShadowPseudoId(
-      AtomicString("-internal-media-controls-touchless-bottom-container"));
-
-  time_display_element_ =
-      MakeGarbageCollected<MediaControlsTouchlessTimeDisplayElement>(
-          media_controls);
-  timeline_element_ =
-      MakeGarbageCollected<MediaControlsTouchlessTimelineElement>(
-          media_controls);
-
-  ParserAppendChild(time_display_element_);
-  ParserAppendChild(timeline_element_);
-
-  event_listener_ =
-      MakeGarbageCollected<MediaControlsSharedHelpers::TransitionEventListener>(
-          this,
-          WTF::BindRepeating(&MediaControlsTouchlessBottomContainerElement::
-                                 HandleTransitionEndEvent,
-                             WrapWeakPersistent(this)));
-  event_listener_->Attach();
-}
-
-LayoutObject*
-MediaControlsTouchlessBottomContainerElement::TimelineLayoutObject() {
-  return timeline_element_->GetLayoutObject();
-}
-
-LayoutObject*
-MediaControlsTouchlessBottomContainerElement::TimeDisplayLayoutObject() {
-  return time_display_element_->GetLayoutObject();
-}
-
-void MediaControlsTouchlessBottomContainerElement::MakeOpaque(
-    bool should_hide) {
-  SetDisplayed(true);
-  MediaElement().MediaControlsDidBecomeVisible();
-  MediaControlsTouchlessElement::MakeOpaque(should_hide);
-}
-
-void MediaControlsTouchlessBottomContainerElement::HandleTransitionEndEvent() {
-  SetDisplayed(false);
-}
-
-void MediaControlsTouchlessBottomContainerElement::SetDisplayed(
-    bool displayed) {
-  if (displayed)
-    RemoveInlineStyleProperty(CSSPropertyID::kDisplay);
-  else
-    SetInlineStyleProperty(CSSPropertyID::kDisplay, CSSValueID::kNone);
-}
-
-void MediaControlsTouchlessBottomContainerElement::Trace(
-    blink::Visitor* visitor) {
-  visitor->Trace(timeline_element_);
-  visitor->Trace(time_display_element_);
-  visitor->Trace(event_listener_);
-  MediaControlsTouchlessElement::Trace(visitor);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_bottom_container_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_bottom_container_element.h
deleted file mode 100644
index e23acc5..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_bottom_container_element.h
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_BOTTOM_CONTAINER_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_BOTTOM_CONTAINER_ELEMENT_H_
-
-#include "third_party/blink/renderer/modules/media_controls/media_controls_shared_helper.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-namespace blink {
-
-class MediaControlsTouchlessImpl;
-class MediaControlsTouchlessTimelineElement;
-class MediaControlsTouchlessTimeDisplayElement;
-class LayoutObject;
-
-class MediaControlsTouchlessBottomContainerElement
-    : public MediaControlsTouchlessElement {
- public:
-  MediaControlsTouchlessBottomContainerElement(MediaControlsTouchlessImpl&);
-  LayoutObject* TimelineLayoutObject();
-  LayoutObject* TimeDisplayLayoutObject();
-
-  void MakeOpaque(bool);
-  void Trace(blink::Visitor*) override;
-
- private:
-  void HandleTransitionEndEvent();
-  void SetDisplayed(bool);
-
-  Member<MediaControlsTouchlessTimelineElement> timeline_element_;
-  Member<MediaControlsTouchlessTimeDisplayElement> time_display_element_;
-  Member<MediaControlsSharedHelpers::TransitionEventListener> event_listener_;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_BOTTOM_CONTAINER_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.cc
deleted file mode 100644
index 063c303..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.cc
+++ /dev/null
@@ -1,81 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-#include "third_party/blink/renderer/core/dom/document.h"
-#include "third_party/blink/renderer/core/dom/dom_token_list.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener.h"
-
-namespace blink {
-
-namespace {
-
-// Amount of time that media controls are visible.
-constexpr base::TimeDelta kTimeToHideControl =
-    base::TimeDelta::FromMilliseconds(3000);
-
-const char kTransparentCSSClass[] = "transparent";
-const char kTransparentImmediateCSSClass[] = "transparent-immediate";
-
-}  // namespace
-
-MediaControlsTouchlessElement::MediaControlsTouchlessElement(
-    MediaControlsTouchlessImpl& media_controls)
-    : HTMLDivElement(media_controls.GetDocument()),
-      media_controls_(media_controls) {
-  media_controls_->MediaEventListener().AddObserver(this);
-}
-
-HTMLMediaElement& MediaControlsTouchlessElement::MediaElement() const {
-  return media_controls_->MediaElement();
-}
-
-void MediaControlsTouchlessElement::MakeOpaque(bool should_hide) {
-  EnsureHideControlTimer();
-
-  removeAttribute("class");
-
-  if (hide_control_timer_->IsActive())
-    StopHideControlTimer();
-
-  if (should_hide)
-    StartHideControlTimer();
-}
-
-void MediaControlsTouchlessElement::MakeTransparent(bool hide_immediate) {
-  classList().Add(hide_immediate ? kTransparentImmediateCSSClass
-                                 : kTransparentCSSClass);
-}
-
-void MediaControlsTouchlessElement::EnsureHideControlTimer() {
-  if (!hide_control_timer_) {
-    hide_control_timer_ =
-        std::make_unique<TaskRunnerTimer<MediaControlsTouchlessElement>>(
-            MediaElement().GetDocument().GetTaskRunner(
-                TaskType::kInternalMedia),
-            this, &MediaControlsTouchlessElement::HideControlTimerFired);
-  }
-}
-
-void MediaControlsTouchlessElement::HideControlTimerFired(TimerBase*) {
-  MakeTransparent();
-}
-
-void MediaControlsTouchlessElement::StartHideControlTimer() {
-  hide_control_timer_->StartOneShot(kTimeToHideControl, FROM_HERE);
-}
-
-void MediaControlsTouchlessElement::StopHideControlTimer() {
-  hide_control_timer_->Stop();
-}
-
-void MediaControlsTouchlessElement::Trace(blink::Visitor* visitor) {
-  HTMLDivElement::Trace(visitor);
-  visitor->Trace(media_controls_);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h
deleted file mode 100644
index f5463bb..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h
+++ /dev/null
@@ -1,67 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_ELEMENT_H_
-
-#include "base/macros.h"
-#include "third_party/blink/renderer/core/html/html_div_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener_observer.h"
-#include "third_party/blink/renderer/platform/heap/member.h"
-#include "third_party/blink/renderer/platform/timer.h"
-
-namespace blink {
-
-class HTMLMediaElement;
-class MediaControlsTouchlessImpl;
-
-class MediaControlsTouchlessElement
-    : public HTMLDivElement,
-      public MediaControlsTouchlessMediaEventListenerObserver {
-  USING_GARBAGE_COLLECTED_MIXIN(MediaControlsTouchlessElement);
-
- public:
-  HTMLMediaElement& MediaElement() const;
-
-  void Trace(blink::Visitor* visitor) override;
-
-  void MakeOpaque(bool /** True if control should hide after timer fired */);
-  void MakeTransparent(bool = false /** True if hide immediately */);
-
-  // Non-touch media event listener observer implementation.
-  void OnFocusIn() override {}
-  void OnTimeUpdate() override {}
-  void OnDurationChange() override {}
-  void OnSeeking() override {}
-  void OnLoadingProgress() override {}
-  void OnPlay() override {}
-  void OnPause() override {}
-  void OnEnterFullscreen() override {}
-  void OnExitFullscreen() override {}
-  void OnError() override {}
-  void OnLoadedMetadata() override {}
-  void OnKeyPress(KeyboardEvent* event) override {}
-  void OnKeyDown(KeyboardEvent* event) override {}
-  void OnKeyUp(KeyboardEvent* event) override {}
-
- protected:
-  MediaControlsTouchlessElement(MediaControlsTouchlessImpl& media_controls);
-
- private:
-  void EnsureHideControlTimer();
-  void HideControlTimerFired(TimerBase*);
-  void StartHideControlTimer();
-  void StopHideControlTimer();
-
-  Member<MediaControlsTouchlessImpl> media_controls_;
-
-  std::unique_ptr<TaskRunnerTimer<MediaControlsTouchlessElement>>
-      hide_control_timer_;
-
-  DISALLOW_COPY_AND_ASSIGN(MediaControlsTouchlessElement);
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_overlay_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_overlay_element.cc
deleted file mode 100644
index c9fdf7d..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_overlay_element.cc
+++ /dev/null
@@ -1,62 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_overlay_element.h"
-
-#include "third_party/blink/public/strings/grit/blink_strings.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_play_button_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_seek_button_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_button_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h"
-#include "third_party/blink/renderer/platform/text/platform_locale.h"
-#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
-
-namespace blink {
-
-MediaControlsTouchlessOverlayElement::MediaControlsTouchlessOverlayElement(
-    MediaControlsTouchlessImpl& media_controls)
-    : MediaControlsTouchlessElement(media_controls) {
-  SetShadowPseudoId(AtomicString("-internal-media-controls-touchless-overlay"));
-
-  MediaControlsTouchlessPlayButtonElement* play_button =
-      MakeGarbageCollected<MediaControlsTouchlessPlayButtonElement>(
-          media_controls);
-
-  MediaControlsTouchlessVolumeButtonElement* volume_up_button =
-      MakeGarbageCollected<MediaControlsTouchlessVolumeButtonElement>(
-          media_controls, true);
-  MediaControlsTouchlessVolumeButtonElement* volume_down_button =
-      MakeGarbageCollected<MediaControlsTouchlessVolumeButtonElement>(
-          media_controls, false);
-
-  MediaControlsTouchlessSeekButtonElement* seek_forward_button =
-      MakeGarbageCollected<MediaControlsTouchlessSeekButtonElement>(
-          media_controls, true);
-  MediaControlsTouchlessSeekButtonElement* seek_backward_button =
-      MakeGarbageCollected<MediaControlsTouchlessSeekButtonElement>(
-          media_controls, false);
-
-  ParserAppendChild(volume_up_button);
-  ParserAppendChild(seek_backward_button);
-  ParserAppendChild(play_button);
-  ParserAppendChild(seek_forward_button);
-  ParserAppendChild(volume_down_button);
-
-  StringBuilder aria_label;
-  aria_label.Append(
-      GetLocale().QueryString(IDS_AX_MEDIA_TOUCHLESS_PLAY_PAUSE_ACTION));
-  aria_label.Append(" ");
-  aria_label.Append(
-      GetLocale().QueryString(IDS_AX_MEDIA_TOUCHLESS_SEEK_ACTION));
-  aria_label.Append(" ");
-  aria_label.Append(
-      GetLocale().QueryString(IDS_AX_MEDIA_TOUCHLESS_VOLUME_ACTION));
-  setAttribute(html_names::kAriaLabelAttr, aria_label.ToAtomicString());
-}
-
-void MediaControlsTouchlessOverlayElement::Trace(blink::Visitor* visitor) {
-  MediaControlsTouchlessElement::Trace(visitor);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_overlay_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_overlay_element.h
deleted file mode 100644
index 6c38453..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_overlay_element.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_OVERLAY_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_OVERLAY_ELEMENT_H_
-
-#include "third_party/blink/renderer/core/html/html_div_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-namespace blink {
-
-class MediaControlsTouchlessImpl;
-
-class MediaControlsTouchlessOverlayElement
-    : public MediaControlsTouchlessElement {
- public:
-  MediaControlsTouchlessOverlayElement(MediaControlsTouchlessImpl&);
-  void Trace(blink::Visitor*) override;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_OVERLAY_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_play_button_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_play_button_element.cc
deleted file mode 100644
index ed97243..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_play_button_element.cc
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_play_button_element.h"
-
-#include "third_party/blink/renderer/core/dom/dom_token_list.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h"
-
-namespace blink {
-
-namespace {
-
-const char kPlayingCSSClass[] = "playing";
-const char kPausedCSSClass[] = "paused";
-
-}  // namespace
-
-MediaControlsTouchlessPlayButtonElement::
-    MediaControlsTouchlessPlayButtonElement(
-        MediaControlsTouchlessImpl& controls)
-    : MediaControlsTouchlessElement(controls) {
-  SetShadowPseudoId(
-      AtomicString("-internal-media-controls-touchless-play-button"));
-
-  controls.MediaElement().paused() ? OnPause() : OnPlay();
-}
-
-void MediaControlsTouchlessPlayButtonElement::OnPlay() {
-  classList().setValue(kPlayingCSSClass);
-}
-
-void MediaControlsTouchlessPlayButtonElement::OnPause() {
-  classList().setValue(kPausedCSSClass);
-}
-
-void MediaControlsTouchlessPlayButtonElement::Trace(blink::Visitor* visitor) {
-  MediaControlsTouchlessElement::Trace(visitor);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_play_button_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_play_button_element.h
deleted file mode 100644
index 46eb44f..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_play_button_element.h
+++ /dev/null
@@ -1,27 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_PLAY_BUTTON_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_PLAY_BUTTON_ELEMENT_H_
-
-#include "third_party/blink/renderer/core/html/html_div_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-namespace blink {
-
-class MediaControlsTouchlessPlayButtonElement
-    : public MediaControlsTouchlessElement {
- public:
-  MediaControlsTouchlessPlayButtonElement(MediaControlsTouchlessImpl&);
-
-  // MediaControlsTouchlessMediaEventListenerObserver implementation.
-  void OnPlay() override;
-  void OnPause() override;
-
-  void Trace(blink::Visitor*) override;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_PLAY_BUTTON_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_seek_button_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_seek_button_element.cc
deleted file mode 100644
index 4d778eb..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_seek_button_element.cc
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_seek_button_element.h"
-
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h"
-
-namespace blink {
-
-MediaControlsTouchlessSeekButtonElement::
-    MediaControlsTouchlessSeekButtonElement(
-        MediaControlsTouchlessImpl& controls,
-        bool forward)
-    : MediaControlsTouchlessElement(controls) {
-  SetShadowPseudoId(AtomicString(
-      forward ? "-internal-media-controls-touchless-seek-forward-button"
-              : "-internal-media-controls-touchless-seek-backward-button"));
-}
-
-void MediaControlsTouchlessSeekButtonElement::Trace(blink::Visitor* visitor) {
-  MediaControlsTouchlessElement::Trace(visitor);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_seek_button_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_seek_button_element.h
deleted file mode 100644
index fa0acbf3..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_seek_button_element.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_SEEK_BUTTON_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_SEEK_BUTTON_ELEMENT_H_
-
-#include "third_party/blink/renderer/core/html/html_div_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-namespace blink {
-
-class MediaControlsTouchlessSeekButtonElement
-    : public MediaControlsTouchlessElement {
- public:
-  MediaControlsTouchlessSeekButtonElement(
-      MediaControlsTouchlessImpl&,
-      bool /** True if it is a seek forward button, false otherwise. */);
-  void Trace(blink::Visitor*) override;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_SEEK_BUTTON_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_time_display_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_time_display_element.cc
deleted file mode 100644
index b6f65741..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_time_display_element.cc
+++ /dev/null
@@ -1,64 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_time_display_element.h"
-
-#include "third_party/blink/public/strings/grit/blink_strings.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/modules/media_controls/media_controls_shared_helper.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h"
-#include "third_party/blink/renderer/platform/text/platform_locale.h"
-#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
-
-namespace blink {
-
-MediaControlsTouchlessTimeDisplayElement::
-    MediaControlsTouchlessTimeDisplayElement(
-        MediaControlsTouchlessImpl& media_controls)
-    : MediaControlsTouchlessElement(media_controls),
-      current_time_(0.0),
-      duration_(0.0) {
-  SetShadowPseudoId(
-      AtomicString("-internal-media-controls-touchless-time-display"));
-  UpdateTimeDisplay();
-}
-
-void MediaControlsTouchlessTimeDisplayElement::OnTimeUpdate() {
-  current_time_ = MediaElement().currentTime();
-  UpdateTimeDisplay();
-}
-
-void MediaControlsTouchlessTimeDisplayElement::OnSeeking() {
-  current_time_ = MediaElement().currentTime();
-  UpdateTimeDisplay();
-}
-
-void MediaControlsTouchlessTimeDisplayElement::OnDurationChange() {
-  duration_ = MediaElement().duration();
-  UpdateTimeDisplay();
-}
-
-void MediaControlsTouchlessTimeDisplayElement::Trace(blink::Visitor* visitor) {
-  MediaControlsTouchlessElement::Trace(visitor);
-}
-
-void MediaControlsTouchlessTimeDisplayElement::UpdateTimeDisplay() {
-  StringBuilder builder;
-  builder.Append(MediaControlsSharedHelpers::FormatTime(current_time_));
-  builder.Append(" / ");
-  builder.Append(MediaControlsSharedHelpers::FormatTime(duration_));
-  setInnerText(builder.ToAtomicString(), ASSERT_NO_EXCEPTION);
-
-  StringBuilder aria_label;
-  aria_label.Append(GetLocale().QueryString(
-      IDS_AX_MEDIA_CURRENT_TIME_DISPLAY,
-      MediaControlsSharedHelpers::FormatTime(current_time_)));
-  aria_label.Append(" ");
-  aria_label.Append(GetLocale().QueryString(
-      IDS_AX_MEDIA_TIME_REMAINING_DISPLAY,
-      MediaControlsSharedHelpers::FormatTime(duration_)));
-  setAttribute(html_names::kAriaLabelAttr, aria_label.ToAtomicString());
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_time_display_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_time_display_element.h
deleted file mode 100644
index 0134b091..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_time_display_element.h
+++ /dev/null
@@ -1,35 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_TIME_DISPLAY_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_TIME_DISPLAY_ELEMENT_H_
-
-#include "third_party/blink/renderer/core/html/html_div_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-namespace blink {
-
-class MediaControlsTouchlessTimeDisplayElement
-    : public MediaControlsTouchlessElement {
- public:
-  explicit MediaControlsTouchlessTimeDisplayElement(
-      MediaControlsTouchlessImpl&);
-
-  // MediaControlsTouchlessMediaEventListenerObserver overrides
-  void OnTimeUpdate() override;
-  void OnSeeking() override;
-  void OnDurationChange() override;
-
-  void Trace(blink::Visitor* visitor) override;
-
- private:
-  void UpdateTimeDisplay();
-
-  double current_time_;
-  double duration_;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_TIME_DISPLAY_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_timeline_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_timeline_element.cc
deleted file mode 100644
index 413ae227..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_timeline_element.cc
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_timeline_element.h"
-
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/core/html/time_ranges.h"
-#include "third_party/blink/renderer/modules/media_controls/elements/media_control_elements_helper.h"
-#include "third_party/blink/renderer/modules/media_controls/media_controls_shared_helper.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h"
-#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
-
-namespace blink {
-
-MediaControlsTouchlessTimelineElement::MediaControlsTouchlessTimelineElement(
-    MediaControlsTouchlessImpl& media_controls)
-    : MediaControlsTouchlessElement(media_controls) {
-  SetShadowPseudoId(
-      AtomicString("-internal-media-controls-touchless-timeline"));
-
-  loaded_bar_ = MediaControlElementsHelper::CreateDiv(
-      "-internal-media-controls-touchless-timeline-loaded", this);
-  progress_bar_ = MediaControlElementsHelper::CreateDiv(
-      "-internal-media-controls-touchless-timeline-progress", loaded_bar_);
-}
-
-void MediaControlsTouchlessTimelineElement::OnLoadingProgress() {
-  UpdateBarsCSS();
-}
-
-void MediaControlsTouchlessTimelineElement::OnTimeUpdate() {
-  current_time_ = MediaElement().currentTime();
-  UpdateBars();
-}
-
-void MediaControlsTouchlessTimelineElement::OnSeeking() {
-  current_time_ = MediaElement().currentTime();
-  UpdateBars();
-}
-
-void MediaControlsTouchlessTimelineElement::OnDurationChange() {
-  duration_ = MediaElement().duration();
-  UpdateBars();
-}
-
-void MediaControlsTouchlessTimelineElement::UpdateBars() {
-  if (std::isnan(duration_) || std::isinf(duration_) || !duration_ ||
-      std::isnan(current_time_)) {
-    progress_percent_ = 0;
-    loaded_percent_ = 0;
-    UpdateBarsCSS();
-    return;
-  }
-
-  progress_percent_ = current_time_ / duration_;
-  loaded_percent_ = progress_percent_;
-
-  base::Optional<unsigned> current_buffered_time_range =
-      MediaControlsSharedHelpers::GetCurrentBufferedTimeRange(MediaElement());
-  if (current_buffered_time_range) {
-    TimeRanges* buffered_time_ranges = MediaElement().buffered();
-    float end = buffered_time_ranges->end(current_buffered_time_range.value(),
-                                          ASSERT_NO_EXCEPTION);
-    loaded_percent_ = end / duration_;
-  }
-
-  UpdateBarsCSS();
-}
-
-void MediaControlsTouchlessTimelineElement::UpdateBarsCSS() {
-  SetBarWidth(loaded_bar_, loaded_percent_);
-
-  // Since progress bar is a child of loaded bar, we need to calculate
-  // the percentage accordingly.
-  double adjusted_width_percent = 0;
-  if (loaded_percent_ != 0)
-    adjusted_width_percent = progress_percent_ / loaded_percent_;
-
-  SetBarWidth(progress_bar_, adjusted_width_percent);
-}
-
-void MediaControlsTouchlessTimelineElement::SetBarWidth(HTMLDivElement* bar,
-                                                        double percent) {
-  StringBuilder builder;
-  builder.Append("width:");
-  builder.AppendNumber(percent * 100);
-  builder.Append("%");
-  bar->setAttribute("style", builder.ToAtomicString());
-}
-
-void MediaControlsTouchlessTimelineElement::Trace(blink::Visitor* visitor) {
-  visitor->Trace(loaded_bar_);
-  visitor->Trace(progress_bar_);
-  MediaControlsTouchlessElement::Trace(visitor);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_timeline_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_timeline_element.h
deleted file mode 100644
index c8a17e7..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_timeline_element.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_TIMELINE_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_TIMELINE_ELEMENT_H_
-
-#include "third_party/blink/renderer/core/html/html_div_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-namespace blink {
-
-class MediaControlsTouchlessTimelineElement
-    : public MediaControlsTouchlessElement {
- public:
-  explicit MediaControlsTouchlessTimelineElement(MediaControlsTouchlessImpl&);
-
-  // MediaControlsTouchlessMediaEventListenerObserver overrides
-  void OnTimeUpdate() override;
-  void OnSeeking() override;
-  void OnDurationChange() override;
-  void OnLoadingProgress() override;
-
-  void Trace(blink::Visitor*) override;
-
- private:
-  void SetBarWidth(HTMLDivElement* bar, double percent);
-
-  void UpdateBars();
-  void UpdateBarsCSS();
-
-  Member<HTMLDivElement> loaded_bar_;
-  Member<HTMLDivElement> progress_bar_;
-  double current_time_;
-  double duration_;
-
-  // Used for setting the width of the progress and loaded bars. This is
-  // a percentage of the duration of the media.
-  double progress_percent_;
-  double loaded_percent_;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_TIMELINE_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_button_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_button_element.cc
deleted file mode 100644
index b8c660b..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_button_element.cc
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_volume_button_element.h"
-
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h"
-
-namespace blink {
-
-MediaControlsTouchlessVolumeButtonElement::
-    MediaControlsTouchlessVolumeButtonElement(
-        MediaControlsTouchlessImpl& controls,
-        bool up)
-    : MediaControlsTouchlessElement(controls) {
-  SetShadowPseudoId(AtomicString(
-      up ? "-internal-media-controls-touchless-volume-up-button"
-         : "-internal-media-controls-touchless-volume-down-button"));
-}
-
-void MediaControlsTouchlessVolumeButtonElement::Trace(blink::Visitor* visitor) {
-  MediaControlsTouchlessElement::Trace(visitor);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_button_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_button_element.h
deleted file mode 100644
index ad7ae78..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_button_element.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_VOLUME_BUTTON_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_VOLUME_BUTTON_ELEMENT_H_
-
-#include "third_party/blink/renderer/core/html/html_div_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-namespace blink {
-
-class MediaControlsTouchlessVolumeButtonElement
-    : public MediaControlsTouchlessElement {
- public:
-  MediaControlsTouchlessVolumeButtonElement(
-      MediaControlsTouchlessImpl&,
-      bool /** True if it is a volume up button, false otherwise. */);
-  void Trace(blink::Visitor*) override;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_VOLUME_BUTTON_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_container_element.cc b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_container_element.cc
deleted file mode 100644
index 9e38e00..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_container_element.cc
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/elements/media_controls_touchless_volume_container_element.h"
-
-#include "third_party/blink/renderer/core/dom/dom_token_list.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/modules/media_controls/elements/media_control_elements_helper.h"
-#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
-
-namespace blink {
-
-namespace {
-
-const char kMutedCSSClass[] = "muted";
-
-}  // namespace
-
-MediaControlsTouchlessVolumeContainerElement::
-    MediaControlsTouchlessVolumeContainerElement(
-        MediaControlsTouchlessImpl& media_controls)
-    : MediaControlsTouchlessElement(media_controls) {
-  SetShadowPseudoId(
-      AtomicString("-internal-media-controls-touchless-volume-container"));
-
-  Element* volume_bar_background = MediaControlElementsHelper::CreateDiv(
-      "-internal-media-controls-touchless-volume-bar-background", this);
-  volume_bar_ = MediaControlElementsHelper::CreateDiv(
-      "-internal-media-controls-touchless-volume-bar", volume_bar_background);
-  volume_icon_ = MediaControlElementsHelper::CreateDiv(
-      "-internal-media-controls-touchless-volume-icon", this);
-}
-
-void MediaControlsTouchlessVolumeContainerElement::UpdateVolume() {
-  volume_ = MediaElement().volume();
-  UpdateCSSClass();
-  UpdateVolumeBarCSS();
-}
-
-void MediaControlsTouchlessVolumeContainerElement::UpdateCSSClass() {
-  if (volume_ > 0)
-    volume_icon_->classList().Remove(kMutedCSSClass);
-  else
-    volume_icon_->classList().Add(kMutedCSSClass);
-}
-
-void MediaControlsTouchlessVolumeContainerElement::UpdateVolumeBarCSS() {
-  StringBuilder builder;
-  builder.Append("height:");
-  builder.AppendNumber(volume_ * 100);
-  builder.Append("%");
-  volume_bar_->setAttribute("style", builder.ToAtomicString());
-}
-
-void MediaControlsTouchlessVolumeContainerElement::Trace(
-    blink::Visitor* visitor) {
-  visitor->Trace(volume_bar_);
-  visitor->Trace(volume_icon_);
-  MediaControlsTouchlessElement::Trace(visitor);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_container_element.h b/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_container_element.h
deleted file mode 100644
index 2b704c0e..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_container_element.h
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_VOLUME_CONTAINER_ELEMENT_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_VOLUME_CONTAINER_ELEMENT_H_
-
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_element.h"
-
-namespace blink {
-
-class MediaControlsTouchlessVolumeContainerElement
-    : public MediaControlsTouchlessElement {
- public:
-  explicit MediaControlsTouchlessVolumeContainerElement(
-      MediaControlsTouchlessImpl&);
-  void UpdateVolume();
-
-  void Trace(blink::Visitor*) override;
-
- private:
-  void UpdateCSSClass();
-  void UpdateVolumeBarCSS();
-
-  Member<HTMLDivElement> volume_bar_;
-  Member<HTMLDivElement> volume_icon_;
-  double volume_;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_ELEMENTS_MEDIA_CONTROLS_TOUCHLESS_VOLUME_CONTAINER_ELEMENT_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.cc b/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.cc
deleted file mode 100644
index 69c4ee0..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.cc
+++ /dev/null
@@ -1,541 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/media_controls_touchless_impl.h"
-
-#include <algorithm>
-
-#include "third_party/blink/public/common/browser_interface_broker_proxy.h"
-#include "third_party/blink/public/platform/task_type.h"
-#include "third_party/blink/public/platform/web_screen_info.h"
-#include "third_party/blink/renderer/core/css/properties/css_property.h"
-#include "third_party/blink/renderer/core/css_value_keywords.h"
-#include "third_party/blink/renderer/core/dom/dom_token_list.h"
-#include "third_party/blink/renderer/core/dom/events/event.h"
-#include "third_party/blink/renderer/core/dom/shadow_root.h"
-#include "third_party/blink/renderer/core/events/keyboard_event.h"
-#include "third_party/blink/renderer/core/frame/local_frame.h"
-#include "third_party/blink/renderer/core/frame/local_frame_client.h"
-#include "third_party/blink/renderer/core/fullscreen/fullscreen.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/core/html/media/html_video_element.h"
-#include "third_party/blink/renderer/core/html/track/text_track.h"
-#include "third_party/blink/renderer/core/html/track/text_track_list.h"
-#include "third_party/blink/renderer/core/page/chrome_client.h"
-#include "third_party/blink/renderer/modules/media_controls/elements/media_control_elements_helper.h"
-#include "third_party/blink/renderer/modules/media_controls/media_controls_orientation_lock_delegate.h"
-#include "third_party/blink/renderer/modules/media_controls/media_controls_shared_helper.h"
-#include "third_party/blink/renderer/modules/media_controls/media_controls_text_track_manager.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_bottom_container_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_overlay_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/elements/media_controls_touchless_volume_container_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_resource_loader.h"
-#include "third_party/blink/renderer/platform/keyboard_codes.h"
-#include "third_party/blink/renderer/platform/wtf/functional.h"
-
-namespace blink {
-
-namespace {
-
-// When specified as trackIndex, disable text tracks.
-constexpr int kTrackIndexOffValue = -1;
-
-// Number of seconds to jump when press left/right arrow.
-constexpr int kNumberOfSecondsToJumpForTouchless = 10;
-
-// Amount of volume to change when press up/down arrow.
-constexpr double kVolumeToChangeForTouchless = 0.05;
-
-const char kInlineCSSClass[] = "inline";
-
-const char kNoSourceCSSClass[] = "state-no-source";
-
-const char kUseDefaultPosterCSSClass[] = "use-default-poster";
-
-}  // namespace
-
-enum class MediaControlsTouchlessImpl::ArrowDirection {
-  kUp,
-  kDown,
-  kLeft,
-  kRight,
-};
-
-enum class MediaControlsTouchlessImpl::ControlsState {
-  kNoSource,
-  kPreReady,
-  kReady,
-};
-
-MediaControlsTouchlessImpl::MediaControlsTouchlessImpl(
-    HTMLMediaElement& media_element)
-    : HTMLDivElement(media_element.GetDocument()),
-      MediaControls(media_element),
-      overlay_(nullptr),
-      bottom_container_(nullptr),
-      media_event_listener_(
-          MakeGarbageCollected<MediaControlsTouchlessMediaEventListener>(
-              media_element)),
-      text_track_manager_(
-          MakeGarbageCollected<MediaControlsTextTrackManager>(media_element)),
-      orientation_lock_delegate_(nullptr) {
-  SetShadowPseudoId(AtomicString("-webkit-media-controls-touchless"));
-  media_event_listener_->AddObserver(this);
-}
-
-MediaControlsTouchlessImpl* MediaControlsTouchlessImpl::Create(
-    HTMLMediaElement& media_element,
-    ShadowRoot& shadow_root) {
-  MediaControlsTouchlessImpl* controls =
-      MakeGarbageCollected<MediaControlsTouchlessImpl>(media_element);
-  controls->bottom_container_ =
-      MakeGarbageCollected<MediaControlsTouchlessBottomContainerElement>(
-          *controls);
-  controls->overlay_ =
-      MakeGarbageCollected<MediaControlsTouchlessOverlayElement>(*controls);
-  controls->volume_container_ =
-      MakeGarbageCollected<MediaControlsTouchlessVolumeContainerElement>(
-          *controls);
-
-  MediaControlElementsHelper::CreateDiv(
-      "-internal-media-controls-touchless-info", controls);
-
-  controls->ParserAppendChild(controls->bottom_container_);
-  controls->ParserAppendChild(controls->overlay_);
-  controls->ParserAppendChild(controls->volume_container_);
-
-  // Controls start hidden.
-  if (!media_element.paused())
-    controls->bottom_container_->MakeTransparent();
-  controls->overlay_->MakeTransparent();
-  controls->volume_container_->MakeTransparent();
-
-  if (RuntimeEnabledFeatures::VideoFullscreenOrientationLockEnabled() &&
-      media_element.IsHTMLVideoElement()) {
-    // Initialize the orientation lock when going fullscreen feature.
-    controls->orientation_lock_delegate_ =
-        MakeGarbageCollected<MediaControlsOrientationLockDelegate>(
-            ToHTMLVideoElement(media_element));
-  }
-
-  MediaControlsTouchlessResourceLoader::
-      InjectMediaControlsTouchlessUAStyleSheet();
-
-  if (!media_element.IsFullscreen())
-    controls->classList().Add(kInlineCSSClass);
-
-  controls->UpdateCSSFromState();
-
-  shadow_root.ParserAppendChild(controls);
-  return controls;
-}
-
-Node::InsertionNotificationRequest MediaControlsTouchlessImpl::InsertedInto(
-    ContainerNode& root) {
-  media_event_listener_->Attach();
-
-  if (orientation_lock_delegate_)
-    orientation_lock_delegate_->Attach();
-
-  return HTMLDivElement::InsertedInto(root);
-}
-
-void MediaControlsTouchlessImpl::RemovedFrom(ContainerNode& insertion_point) {
-  HTMLDivElement::RemovedFrom(insertion_point);
-
-  Hide();
-
-  media_event_listener_->Detach();
-
-  if (orientation_lock_delegate_)
-    orientation_lock_delegate_->Detach();
-}
-
-void MediaControlsTouchlessImpl::MaybeShow() {
-  RemoveInlineStyleProperty(CSSPropertyID::kDisplay);
-}
-
-void MediaControlsTouchlessImpl::Hide() {
-  SetInlineStyleProperty(CSSPropertyID::kDisplay, CSSValueID::kNone);
-}
-
-void MediaControlsTouchlessImpl::NetworkStateChanged() {
-  UpdateCSSFromState();
-}
-
-LayoutObject* MediaControlsTouchlessImpl::PanelLayoutObject() {
-  return nullptr;
-}
-
-LayoutObject* MediaControlsTouchlessImpl::TimelineLayoutObject() {
-  return bottom_container_->TimelineLayoutObject();
-}
-
-LayoutObject* MediaControlsTouchlessImpl::ButtonPanelLayoutObject() {
-  return bottom_container_->TimeDisplayLayoutObject();
-}
-
-LayoutObject* MediaControlsTouchlessImpl::ContainerLayoutObject() {
-  return GetLayoutObject();
-}
-
-MediaControlsTouchlessMediaEventListener&
-MediaControlsTouchlessImpl::MediaEventListener() const {
-  return *media_event_listener_;
-}
-
-void MediaControlsTouchlessImpl::OnFocusIn() {
-  if (MediaElement().ShouldShowControls()) {
-    bottom_container_->MakeOpaque(!MediaElement().paused());
-    overlay_->MakeOpaque(true);
-  }
-}
-
-void MediaControlsTouchlessImpl::OnPlay() {
-  bottom_container_->MakeOpaque(true);
-}
-
-void MediaControlsTouchlessImpl::OnPause() {
-  bottom_container_->MakeOpaque(false);
-}
-
-void MediaControlsTouchlessImpl::OnEnterFullscreen() {
-  classList().Remove(kInlineCSSClass);
-}
-
-void MediaControlsTouchlessImpl::OnExitFullscreen() {
-  classList().Add(kInlineCSSClass);
-}
-
-void MediaControlsTouchlessImpl::OnKeyDown(KeyboardEvent* event) {
-  if (!MediaElement().ShouldShowControls())
-    return;
-
-  bool handled = true;
-  switch (event->keyCode()) {
-    case VKEY_RETURN:
-      volume_container_->MakeTransparent(true);
-      overlay_->MakeOpaque(true);
-      MediaElement().TogglePlayState();
-      break;
-    case VKEY_LEFT:
-      HandleOrientedArrowPress(OrientArrowPress(ArrowDirection::kLeft));
-      break;
-    case VKEY_RIGHT:
-      HandleOrientedArrowPress(OrientArrowPress(ArrowDirection::kRight));
-      break;
-    case VKEY_UP:
-      HandleOrientedArrowPress(OrientArrowPress(ArrowDirection::kUp));
-      break;
-    case VKEY_DOWN:
-      HandleOrientedArrowPress(OrientArrowPress(ArrowDirection::kDown));
-      break;
-    default:
-      handled = false;
-      break;
-  }
-
-  if (handled)
-    event->SetDefaultHandled();
-}
-
-void MediaControlsTouchlessImpl::EnsureMediaControlsMenuHost() {
-  if (!media_controls_host_) {
-    GetDocument().GetBrowserInterfaceBroker().GetInterface(
-        media_controls_host_.BindNewPipeAndPassReceiver(
-            GetExecutionContext()->GetTaskRunner(
-                blink::TaskType::kMediaElementEvent)));
-    media_controls_host_.set_disconnect_handler(WTF::Bind(
-        &MediaControlsTouchlessImpl::OnMediaControlsMenuHostConnectionError,
-        WrapWeakPersistent(this)));
-  }
-}
-
-mojom::blink::VideoStatePtr MediaControlsTouchlessImpl::GetVideoState() {
-  mojom::blink::VideoStatePtr video_state = mojom::blink::VideoState::New();
-  video_state->is_muted = MediaElement().muted();
-  video_state->is_fullscreen = MediaElement().IsFullscreen();
-  return video_state;
-}
-
-WTF::Vector<mojom::blink::TextTrackMetadataPtr>
-MediaControlsTouchlessImpl::GetTextTracks() {
-  WTF::Vector<mojom::blink::TextTrackMetadataPtr> text_tracks;
-  TextTrackList* track_list = MediaElement().textTracks();
-  for (unsigned i = 0; i < track_list->length(); i++) {
-    TextTrack* track = track_list->AnonymousIndexedGetter(i);
-    if (!track->CanBeRendered())
-      continue;
-
-    mojom::blink::TextTrackMetadataPtr text_track(
-        mojom::blink::TextTrackMetadata::New());
-    text_track->track_index = track->TrackIndex();
-    text_track->label = text_track_manager_->GetTextTrackLabel(track);
-    text_tracks.push_back(std::move(text_track));
-  }
-
-  if (!text_tracks.IsEmpty()) {
-    mojom::blink::TextTrackMetadataPtr text_track(
-        mojom::blink::TextTrackMetadata::New());
-    text_track->track_index = kTrackIndexOffValue;
-    text_track->label = text_track_manager_->GetTextTrackLabel(nullptr);
-    text_tracks.push_front(std::move(text_track));
-  }
-
-  return text_tracks;
-}
-
-void MediaControlsTouchlessImpl::ShowContextMenu() {
-  EnsureMediaControlsMenuHost();
-
-  mojom::blink::VideoStatePtr video_state = GetVideoState();
-  WTF::Vector<mojom::blink::TextTrackMetadataPtr> text_tracks = GetTextTracks();
-
-  WTF::Vector<mojom::blink::MenuItem> menu_items;
-
-  if (MediaControlsSharedHelpers::ShouldShowFullscreenButton(MediaElement()))
-    menu_items.push_back(mojom::blink::MenuItem::FULLSCREEN);
-
-  if (MediaElement().HasAudio())
-    menu_items.push_back(mojom::blink::MenuItem::MUTE);
-
-  if (MediaElement().SupportsSave())
-    menu_items.push_back(mojom::blink::MenuItem::DOWNLOAD);
-
-  if (!text_tracks.IsEmpty())
-    menu_items.push_back(mojom::blink::MenuItem::CAPTIONS);
-
-  media_controls_host_->ShowMediaMenu(
-      std::move(menu_items), std::move(video_state), std::move(text_tracks),
-      WTF::Bind(&MediaControlsTouchlessImpl::OnMediaMenuResult,
-                WrapWeakPersistent(this)));
-}
-
-void MediaControlsTouchlessImpl::OnMediaMenuResult(
-    mojom::blink::MenuResponsePtr response) {
-  if (response.is_null())
-    return;
-
-  switch (response->clicked) {
-    case mojom::blink::MenuItem::FULLSCREEN:
-      if (MediaElement().IsFullscreen())
-        Fullscreen::ExitFullscreen(GetDocument());
-      else
-        Fullscreen::RequestFullscreen(MediaElement());
-      break;
-    case mojom::blink::MenuItem::MUTE:
-      MediaElement().setMuted(!MediaElement().muted());
-      break;
-    case mojom::blink::MenuItem::DOWNLOAD:
-      Download();
-      break;
-    case mojom::blink::MenuItem::CAPTIONS:
-      text_track_manager_->DisableShowingTextTracks();
-      if (response->track_index >= 0)
-        text_track_manager_->ShowTextTrackAtIndex(response->track_index);
-      break;
-  }
-}
-
-void MediaControlsTouchlessImpl::Download() {
-  const KURL& url = MediaElement().currentSrc();
-  if (url.IsNull() || url.IsEmpty())
-    return;
-  ResourceRequest request(url);
-  request.SetSuggestedFilename(MediaElement().title());
-  request.SetRequestContext(mojom::RequestContextType::DOWNLOAD);
-  request.SetRequestorOrigin(SecurityOrigin::Create(GetDocument().Url()));
-  GetDocument().GetFrame()->Client()->DownloadURL(
-      request, DownloadCrossOriginRedirects::kFollow);
-}
-
-void MediaControlsTouchlessImpl::OnMediaControlsMenuHostConnectionError() {
-  media_controls_host_.reset();
-}
-
-MediaControlsTouchlessImpl::ArrowDirection
-MediaControlsTouchlessImpl::OrientArrowPress(ArrowDirection direction) {
-  switch (GetOrientation()) {
-    case kWebScreenOrientationUndefined:
-    case kWebScreenOrientationPortraitPrimary:
-      return direction;
-    case kWebScreenOrientationPortraitSecondary:
-      switch (direction) {
-        case ArrowDirection::kUp:
-          return ArrowDirection::kDown;
-        case ArrowDirection::kDown:
-          return ArrowDirection::kUp;
-        case ArrowDirection::kLeft:
-          return ArrowDirection::kRight;
-        case ArrowDirection::kRight:
-          return ArrowDirection::kLeft;
-      }
-    case kWebScreenOrientationLandscapePrimary:
-      switch (direction) {
-        case ArrowDirection::kUp:
-          return ArrowDirection::kLeft;
-        case ArrowDirection::kDown:
-          return ArrowDirection::kRight;
-        case ArrowDirection::kLeft:
-          return ArrowDirection::kDown;
-        case ArrowDirection::kRight:
-          return ArrowDirection::kUp;
-      }
-    case kWebScreenOrientationLandscapeSecondary:
-      switch (direction) {
-        case ArrowDirection::kUp:
-          return ArrowDirection::kRight;
-        case ArrowDirection::kDown:
-          return ArrowDirection::kLeft;
-        case ArrowDirection::kLeft:
-          return ArrowDirection::kUp;
-        case ArrowDirection::kRight:
-          return ArrowDirection::kDown;
-      }
-  }
-}
-
-void MediaControlsTouchlessImpl::HandleOrientedArrowPress(
-    ArrowDirection direction) {
-  switch (direction) {
-    case ArrowDirection::kUp:
-      HandleTopButtonPress();
-      break;
-    case ArrowDirection::kDown:
-      HandleBottomButtonPress();
-      break;
-    case ArrowDirection::kLeft:
-      HandleLeftButtonPress();
-      break;
-    case ArrowDirection::kRight:
-      HandleRightButtonPress();
-      break;
-  }
-}
-
-WebScreenOrientationType MediaControlsTouchlessImpl::GetOrientation() {
-  LocalFrame* frame = GetDocument().GetFrame();
-  if (!frame)
-    return kWebScreenOrientationUndefined;
-
-  return frame->GetChromeClient().GetScreenInfo().orientation_type;
-}
-
-void MediaControlsTouchlessImpl::HandleTopButtonPress() {
-  MaybeChangeVolume(kVolumeToChangeForTouchless);
-  volume_container_->UpdateVolume();
-  overlay_->MakeTransparent(true);
-  volume_container_->MakeOpaque(true);
-}
-
-void MediaControlsTouchlessImpl::HandleBottomButtonPress() {
-  MaybeChangeVolume(kVolumeToChangeForTouchless * -1);
-  volume_container_->UpdateVolume();
-  overlay_->MakeTransparent(true);
-  volume_container_->MakeOpaque(true);
-}
-
-void MediaControlsTouchlessImpl::HandleLeftButtonPress() {
-  if (!MediaElement().paused())
-    bottom_container_->MakeOpaque(true);
-  MaybeJump(kNumberOfSecondsToJumpForTouchless * -1);
-}
-
-void MediaControlsTouchlessImpl::HandleRightButtonPress() {
-  if (!MediaElement().paused())
-    bottom_container_->MakeOpaque(true);
-  MaybeJump(kNumberOfSecondsToJumpForTouchless);
-}
-
-void MediaControlsTouchlessImpl::MaybeChangeVolume(double volume_to_change) {
-  double new_volume = std::max(0.0, MediaElement().volume() + volume_to_change);
-  new_volume = std::min(new_volume, 1.0);
-  MediaElement().setVolume(new_volume);
-}
-
-void MediaControlsTouchlessImpl::MaybeJump(int seconds) {
-  double new_time = std::max(0.0, MediaElement().currentTime() + seconds);
-  new_time = std::min(new_time, MediaElement().duration());
-  MediaElement().setCurrentTime(new_time);
-}
-
-MediaControlsTouchlessImpl::ControlsState MediaControlsTouchlessImpl::State() {
-  HTMLMediaElement::NetworkState network_state =
-      MediaElement().getNetworkState();
-  HTMLMediaElement::ReadyState ready_state = MediaElement().getReadyState();
-
-  switch (network_state) {
-    case HTMLMediaElement::kNetworkEmpty:
-    case HTMLMediaElement::kNetworkNoSource:
-      return ControlsState::kNoSource;
-    case HTMLMediaElement::kNetworkLoading:
-      if (ready_state == HTMLMediaElement::kHaveNothing)
-        return ControlsState::kPreReady;
-      else
-        return ControlsState::kReady;
-    case HTMLMediaElement::kNetworkIdle:
-      if (ready_state == HTMLMediaElement::kHaveNothing)
-        return ControlsState::kPreReady;
-      break;
-  }
-
-  return ControlsState::kReady;
-}
-
-void MediaControlsTouchlessImpl::UpdateCSSFromState() {
-  ControlsState state = State();
-
-  if (state == ControlsState::kNoSource)
-    classList().Add(kNoSourceCSSClass);
-  else
-    classList().Remove(kNoSourceCSSClass);
-
-  if (!MediaElement().IsHTMLVideoElement())
-    return;
-
-  if (MediaElement().ShouldShowControls() &&
-      !VideoElement().HasAvailableVideoFrame() &&
-      VideoElement().PosterImageURL().IsEmpty() &&
-      state <= ControlsState::kPreReady) {
-    classList().Add(kUseDefaultPosterCSSClass);
-  } else {
-    classList().Remove(kUseDefaultPosterCSSClass);
-  }
-}
-
-HTMLVideoElement& MediaControlsTouchlessImpl::VideoElement() {
-  DCHECK(MediaElement().IsHTMLVideoElement());
-  return *ToHTMLVideoElement(&MediaElement());
-}
-
-void MediaControlsTouchlessImpl::OnError() {
-  UpdateCSSFromState();
-}
-
-void MediaControlsTouchlessImpl::OnLoadedMetadata() {
-  UpdateCSSFromState();
-}
-
-void MediaControlsTouchlessImpl::Trace(blink::Visitor* visitor) {
-  visitor->Trace(bottom_container_);
-  visitor->Trace(overlay_);
-  visitor->Trace(media_event_listener_);
-  visitor->Trace(text_track_manager_);
-  visitor->Trace(orientation_lock_delegate_);
-  visitor->Trace(volume_container_);
-  MediaControls::Trace(visitor);
-  HTMLDivElement::Trace(visitor);
-}
-
-void MediaControlsTouchlessImpl::SetMediaControlsMenuHostForTesting(
-    mojo::PendingRemote<mojom::blink::MediaControlsMenuHost> menu_host) {
-  media_controls_host_.Bind(std::move(menu_host));
-}
-
-void MediaControlsTouchlessImpl::MenuHostFlushForTesting() {
-  media_controls_host_.FlushForTesting();
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h b/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h
deleted file mode 100644
index 21d32a91..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h
+++ /dev/null
@@ -1,130 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_IMPL_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_IMPL_H_
-
-#include "mojo/public/cpp/bindings/remote.h"
-#include "third_party/blink/public/common/screen_orientation/web_screen_orientation_type.h"
-#include "third_party/blink/public/mojom/media_controls/touchless/media_controls.mojom-blink.h"
-#include "third_party/blink/renderer/core/html/html_div_element.h"
-#include "third_party/blink/renderer/core/html/media/media_controls.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener_observer.h"
-#include "third_party/blink/renderer/modules/modules_export.h"
-
-namespace blink {
-
-class MediaControlsOrientationLockDelegate;
-class MediaControlsTouchlessBottomContainerElement;
-class MediaControlsTouchlessOverlayElement;
-class MediaControlsTouchlessMediaEventListener;
-class MediaControlsTouchlessVolumeContainerElement;
-class MediaControlsTextTrackManager;
-
-class MODULES_EXPORT MediaControlsTouchlessImpl final
-    : public HTMLDivElement,
-      public MediaControls,
-      public MediaControlsTouchlessMediaEventListenerObserver {
-  USING_GARBAGE_COLLECTED_MIXIN(MediaControlsTouchlessImpl);
-
- public:
-  static MediaControlsTouchlessImpl* Create(HTMLMediaElement&, ShadowRoot&);
-
-  explicit MediaControlsTouchlessImpl(HTMLMediaElement&);
-
-  // Node override.
-  Node::InsertionNotificationRequest InsertedInto(ContainerNode&) override;
-  void RemovedFrom(ContainerNode&) override;
-
-  // MediaControls implementation.
-  void MaybeShow() override;
-  void Hide() override;
-  void Reset() override {}
-  void OnControlsListUpdated() override {}
-  void OnTrackElementFailedToLoad() override {}
-  void NetworkStateChanged() override;
-  LayoutObject* PanelLayoutObject() override;
-  LayoutObject* TimelineLayoutObject() override;
-  LayoutObject* ButtonPanelLayoutObject() override;
-  LayoutObject* ContainerLayoutObject() override;
-  void ShowContextMenu() override;
-  void SetTestMode(bool) override {}
-  HTMLDivElement* PanelElement() override { return nullptr; }
-  void OnMediaControlsEnabledChange() override {}
-
-  // MediaControlsTouchlessMediaEventListenerObserver implementation.
-  void OnFocusIn() override;
-  void OnTimeUpdate() override {}
-  void OnDurationChange() override {}
-  void OnSeeking() override {}
-  void OnLoadingProgress() override {}
-  void OnPlay() override;
-  void OnPause() override;
-  void OnEnterFullscreen() override;
-  void OnExitFullscreen() override;
-  void OnError() override;
-  void OnLoadedMetadata() override;
-  void OnKeyPress(KeyboardEvent* event) override {}
-  void OnKeyDown(KeyboardEvent* event) override;
-  void OnKeyUp(KeyboardEvent* event) override {}
-
-  MediaControlsTouchlessMediaEventListener& MediaEventListener() const;
-
-  // Test functions
-  void SetMediaControlsMenuHostForTesting(
-      mojo::PendingRemote<mojom::blink::MediaControlsMenuHost>);
-  void MenuHostFlushForTesting();
-
-  void Trace(blink::Visitor*) override;
-
- private:
-  friend class MediaControlsTouchlessImplTest;
-
-  enum class ArrowDirection;
-  enum class ControlsState;
-  ArrowDirection OrientArrowPress(ArrowDirection direction);
-  void HandleOrientedArrowPress(ArrowDirection direction);
-
-  WebScreenOrientationType GetOrientation();
-
-  ControlsState State();
-  void UpdateCSSFromState();
-
-  void HandleTopButtonPress();
-  void HandleBottomButtonPress();
-  void HandleLeftButtonPress();
-  void HandleRightButtonPress();
-
-  void MaybeJump(int);
-  void MaybeChangeVolume(double);
-
-  void Download();
-
-  HTMLVideoElement& VideoElement();
-
-  // Node
-  bool IsMediaControls() const override { return true; }
-
-  void EnsureMediaControlsMenuHost();
-  mojom::blink::VideoStatePtr GetVideoState();
-  WTF::Vector<mojom::blink::TextTrackMetadataPtr> GetTextTracks();
-  void OnMediaMenuResult(mojom::blink::MenuResponsePtr);
-  void OnMediaControlsMenuHostConnectionError();
-
-  Member<MediaControlsTouchlessOverlayElement> overlay_;
-  Member<MediaControlsTouchlessBottomContainerElement> bottom_container_;
-  Member<MediaControlsTouchlessVolumeContainerElement> volume_container_;
-
-  Member<MediaControlsTouchlessMediaEventListener> media_event_listener_;
-  Member<MediaControlsTextTrackManager> text_track_manager_;
-  Member<MediaControlsOrientationLockDelegate> orientation_lock_delegate_;
-
-  mojo::Remote<mojom::blink::MediaControlsMenuHost> media_controls_host_;
-
-  DISALLOW_COPY_AND_ASSIGN(MediaControlsTouchlessImpl);
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_IMPL_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl_test.cc b/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl_test.cc
deleted file mode 100644
index 0e68145..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl_test.cc
+++ /dev/null
@@ -1,637 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/media_controls_touchless_impl.h"
-
-#include <memory>
-
-#include "build/build_config.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "third_party/blink/public/mojom/media_controls/touchless/media_controls.mojom-blink.h"
-#include "third_party/blink/renderer/core/css/css_property_value_set.h"
-#include "third_party/blink/renderer/core/dom/dom_token_list.h"
-#include "third_party/blink/renderer/core/dom/element.h"
-#include "third_party/blink/renderer/core/dom/element_traversal.h"
-#include "third_party/blink/renderer/core/events/keyboard_event.h"
-#include "third_party/blink/renderer/core/frame/settings.h"
-#include "third_party/blink/renderer/core/fullscreen/fullscreen.h"
-#include "third_party/blink/renderer/core/geometry/dom_rect.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element_controls_list.h"
-#include "third_party/blink/renderer/core/html/media/html_media_test_helper.h"
-#include "third_party/blink/renderer/core/html/media/html_video_element.h"
-#include "third_party/blink/renderer/core/html/time_ranges.h"
-#include "third_party/blink/renderer/core/html/track/text_track.h"
-#include "third_party/blink/renderer/core/html/track/text_track_list.h"
-#include "third_party/blink/renderer/core/layout/layout_object.h"
-#include "third_party/blink/renderer/core/loader/empty_clients.h"
-#include "third_party/blink/renderer/core/testing/page_test_base.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/test_media_controls_menu_host.h"
-#include "third_party/blink/renderer/platform/keyboard_codes.h"
-#include "third_party/blink/renderer/platform/testing/empty_web_media_player.h"
-#include "third_party/blink/renderer/platform/testing/unit_test_helpers.h"
-
-namespace blink {
-
-namespace {
-
-const char kTextTracksOffString[] = "Off";
-
-class LocalePlatformSupport : public TestingPlatformSupport {
- public:
-  WebString QueryLocalizedString(int resource_id) override {
-    if (resource_id == IDS_MEDIA_TRACKS_OFF)
-      return kTextTracksOffString;
-    return TestingPlatformSupport::QueryLocalizedString(resource_id);
-  }
-};
-
-class MockWebMediaPlayerForTouchlessImpl : public EmptyWebMediaPlayer {
- public:
-  WebTimeRanges Seekable() const override { return seekable_; }
-  bool HasVideo() const override { return true; }
-  bool HasAudio() const override { return has_audio_; }
-  WebTimeRanges Buffered() const override { return buffered_; }
-
-  WebTimeRanges buffered_;
-  WebTimeRanges seekable_;
-  bool has_audio_ = false;
-};
-
-}  // namespace
-
-class MockChromeClientForTouchlessImpl : public EmptyChromeClient {
- public:
-  explicit MockChromeClientForTouchlessImpl()
-      : orientation_(kWebScreenOrientationPortraitPrimary) {}
-
-  WebScreenInfo GetScreenInfo() const override {
-    WebScreenInfo screen_info;
-    screen_info.orientation_type = orientation_;
-    return screen_info;
-  }
-
-  void EnterFullscreen(LocalFrame& frame, const FullscreenOptions*) final {
-    Fullscreen::DidEnterFullscreen(*frame.GetDocument());
-  }
-
-  void ExitFullscreen(LocalFrame& frame) final {
-    Fullscreen::DidExitFullscreen(*frame.GetDocument());
-  }
-
-  void SetOrientation(WebScreenOrientationType orientation_type) {
-    orientation_ = orientation_type;
-  }
-
- private:
-  WebScreenOrientationType orientation_;
-};
-
-class MediaControlsTouchlessImplTest : public PageTestBase {
- protected:
-  void SetUp() override { InitializePage(); }
-
-  void InitializePage() {
-    Page::PageClients clients;
-
-    FillWithEmptyClients(clients);
-    chrome_client_ = MakeGarbageCollected<MockChromeClientForTouchlessImpl>();
-    clients.chrome_client = chrome_client_;
-    SetupPageWithClients(
-        &clients, MakeGarbageCollected<test::MediaStubLocalFrameClient>(
-                      std::make_unique<MockWebMediaPlayerForTouchlessImpl>()));
-
-    GetDocument().write("<video controls>");
-    HTMLMediaElement& video =
-        ToHTMLVideoElement(*GetDocument().QuerySelector("video"));
-    media_controls_ =
-        static_cast<MediaControlsTouchlessImpl*>(video.GetMediaControls());
-
-    test_media_controls_host_ = std::make_unique<TestMediaControlsMenuHost>();
-
-    media_controls_->SetMediaControlsMenuHostForTesting(
-        test_media_controls_host_->CreateMediaControlsMenuHostRemote());
-
-    // Scripts are disabled by default which forces controls to be on.
-    GetFrame().GetSettings()->SetScriptEnabled(true);
-  }
-
-  MediaControlsTouchlessImpl& MediaControls() { return *media_controls_; }
-  HTMLMediaElement& MediaElement() { return MediaControls().MediaElement(); }
-
-  MockWebMediaPlayerForTouchlessImpl* WebMediaPlayer() {
-    return static_cast<MockWebMediaPlayerForTouchlessImpl*>(
-        MediaElement().GetWebMediaPlayer());
-  }
-
-  TestMenuHostArgList& GetMenuHostArgList() {
-    return test_media_controls_host_->GetMenuHostArgList();
-  }
-
-  void SetNetworkState(HTMLMediaElement::NetworkState state) {
-    MediaElement().SetNetworkState(state);
-  }
-
-  void SetReadyState(HTMLMediaElement::ReadyState state) {
-    MediaElement().SetReadyState(state);
-  }
-
-  void SimulateKeydownEvent(Element& element, int key_code) {
-    KeyboardEventInit* keyboard_event_init = KeyboardEventInit::Create();
-    keyboard_event_init->setKeyCode(key_code);
-
-    Event* keyboard_event =
-        MakeGarbageCollected<KeyboardEvent>("keydown", keyboard_event_init);
-    element.DispatchEvent(*keyboard_event);
-  }
-
-  void LoadMediaWithDuration(double duration) {
-    MediaElement().SetSrc("https://example.com/foo.mp4");
-    test::RunPendingTasks();
-    WebTimeRange time_range(0.0, duration);
-    WebMediaPlayer()->seekable_.Assign(&time_range, 1);
-    MediaElement().DurationChanged(duration, false /* requestSeek */);
-  }
-
-  void SetBufferedRange(double end) {
-    WebTimeRange time_range(0.0, end);
-    WebMediaPlayer()->buffered_.Assign(&time_range, 1);
-  }
-
-  bool IsControlsVisible(Element* element) {
-    return !element->classList().contains("transparent") &&
-           !element->classList().contains("transparent-immediate");
-  }
-
-  bool IsElementDisplayed(Element* element) {
-    if (!element->InlineStyle())
-      return true;
-
-    return element->InlineStyle()->GetPropertyValue(CSSPropertyID::kDisplay) !=
-           "none";
-  }
-
-  void SetHasAudio(bool has_audio) { WebMediaPlayer()->has_audio_ = has_audio; }
-
-  Element* GetControlByShadowPseudoId(const char* shadow_pseudo_id) {
-    for (Element& element : ElementTraversal::DescendantsOf(MediaControls())) {
-      if (element.ShadowPseudoId() == shadow_pseudo_id)
-        return &element;
-    }
-    return nullptr;
-  }
-
-  void SetScreenOrientation(WebScreenOrientationType orientation_type) {
-    chrome_client_->SetOrientation(orientation_type);
-  }
-
-  void SetMenuResponse(mojom::blink::MenuItem menu_item, int track_index = -1) {
-    test_media_controls_host_->SetMenuResponse(menu_item, track_index);
-  }
-
-  void SetMenuResponseAndShowMenu(mojom::blink::MenuItem menu_item,
-                                  int track_index = -1) {
-    SetMenuResponse(menu_item, track_index);
-    MediaControls().ShowContextMenu();
-    MediaControls().MenuHostFlushForTesting();
-  }
-
-  void CheckControlKeys(int seek_forward_key,
-                        int seek_backward_key,
-                        int volume_up_key,
-                        int volume_down_key) {
-    const int kNumberOfSecondsToJump = 10;
-    const double kVolumeToChange = 0.05;
-    const int initTime = 10;
-    const double initVolume = 0.5;
-    MediaElement().setCurrentTime(initTime);
-    MediaElement().setVolume(initVolume);
-
-    SimulateKeydownEvent(MediaElement(), seek_forward_key);
-    ASSERT_EQ(MediaElement().currentTime(), initTime + kNumberOfSecondsToJump);
-
-    SimulateKeydownEvent(MediaElement(), seek_backward_key);
-    ASSERT_EQ(MediaElement().currentTime(), initTime);
-
-    SimulateKeydownEvent(MediaElement(), volume_up_key);
-    ASSERT_EQ(MediaElement().volume(), initVolume + kVolumeToChange);
-
-    SimulateKeydownEvent(MediaElement(), volume_down_key);
-    ASSERT_EQ(MediaElement().volume(), initVolume);
-  }
-
- private:
-  Persistent<MediaControlsTouchlessImpl> media_controls_;
-  Persistent<MockChromeClientForTouchlessImpl> chrome_client_;
-  std::unique_ptr<TestMediaControlsMenuHost> test_media_controls_host_;
-};
-
-class MediaControlsTouchlessImplTestWithMockScheduler
-    : public MediaControlsTouchlessImplTest {
- public:
-  MediaControlsTouchlessImplTestWithMockScheduler() { EnablePlatform(); }
-
- protected:
-  void SetUp() override {
-    platform()->AdvanceClockSeconds(1);
-    MediaControlsTouchlessImplTest::SetUp();
-  }
-};
-
-TEST_F(MediaControlsTouchlessImplTest, PlayPause) {
-  MediaElement().SetFocused(true, WebFocusType::kWebFocusTypeNone);
-  MediaElement().Play();
-  ASSERT_FALSE(MediaElement().paused());
-
-  // Press center key and video should be paused.
-  SimulateKeydownEvent(MediaElement(), VKEY_RETURN);
-  ASSERT_TRUE(MediaElement().paused());
-
-  // Press center key and video should be played.
-  SimulateKeydownEvent(MediaElement(), VKEY_RETURN);
-  ASSERT_FALSE(MediaElement().paused());
-}
-
-TEST_F(MediaControlsTouchlessImplTest, HandlesOrientationForArrowInput) {
-  MediaElement().SetFocused(true, WebFocusType::kWebFocusTypeNone);
-
-  SetScreenOrientation(kWebScreenOrientationPortraitPrimary);
-  CheckControlKeys(VKEY_RIGHT, VKEY_LEFT, VKEY_UP, VKEY_DOWN);
-
-  SetScreenOrientation(kWebScreenOrientationLandscapePrimary);
-  CheckControlKeys(VKEY_DOWN, VKEY_UP, VKEY_RIGHT, VKEY_LEFT);
-
-  SetScreenOrientation(kWebScreenOrientationPortraitSecondary);
-  CheckControlKeys(VKEY_LEFT, VKEY_RIGHT, VKEY_DOWN, VKEY_UP);
-
-  SetScreenOrientation(kWebScreenOrientationLandscapeSecondary);
-  CheckControlKeys(VKEY_UP, VKEY_DOWN, VKEY_LEFT, VKEY_RIGHT);
-}
-
-TEST_F(MediaControlsTouchlessImplTest, ArrowInputEdgeCaseHandling) {
-  const double duration = 100;
-
-  LoadMediaWithDuration(duration);
-  MediaElement().SetFocused(true, WebFocusType::kWebFocusTypeNone);
-
-  // Seek backward at low current time
-  MediaElement().setCurrentTime(1);
-  SimulateKeydownEvent(MediaElement(), VKEY_LEFT);
-  ASSERT_EQ(MediaElement().currentTime(), 0);
-
-  // Seek forward at high current time
-  MediaElement().setCurrentTime(duration - 1);
-  SimulateKeydownEvent(MediaElement(), VKEY_RIGHT);
-  ASSERT_EQ(MediaElement().currentTime(), duration);
-
-  // Volume down at low volume
-  MediaElement().setVolume(0.01);
-  SimulateKeydownEvent(MediaElement(), VKEY_DOWN);
-  ASSERT_EQ(MediaElement().volume(), 0);
-
-  // Volume up at high volume
-  MediaElement().setVolume(0.99);
-  SimulateKeydownEvent(MediaElement(), VKEY_UP);
-  ASSERT_EQ(MediaElement().volume(), 1);
-}
-
-TEST_F(MediaControlsTouchlessImplTest, PlayPauseIcon) {
-  MediaElement().SetFocused(true, WebFocusType::kWebFocusTypeNone);
-
-  Element* play_button = GetControlByShadowPseudoId(
-      "-internal-media-controls-touchless-play-button");
-  ASSERT_NE(nullptr, play_button);
-
-  MediaElement().pause();
-
-  MediaElement().Play();
-  test::RunPendingTasks();
-  ASSERT_TRUE(play_button->classList().contains("playing"));
-  ASSERT_FALSE(play_button->classList().contains("paused"));
-
-  MediaElement().pause();
-  test::RunPendingTasks();
-  ASSERT_TRUE(play_button->classList().contains("paused"));
-  ASSERT_FALSE(play_button->classList().contains("playing"));
-}
-
-TEST_F(MediaControlsTouchlessImplTest, ProgressBar) {
-  const double duration = 100.0;
-  const double buffered = 60.0;
-  const double current_time = 15.0;
-
-  LoadMediaWithDuration(duration);
-  SetBufferedRange(buffered);
-  MediaElement().setCurrentTime(current_time);
-  test::RunPendingTasks();
-
-  MediaElement().DispatchEvent(*Event::Create(event_type_names::kTimeupdate));
-
-  Element* timeline =
-      GetControlByShadowPseudoId("-internal-media-controls-touchless-timeline");
-  Element* progress_bar = GetControlByShadowPseudoId(
-      "-internal-media-controls-touchless-timeline-progress");
-  Element* loaded_bar = GetControlByShadowPseudoId(
-      "-internal-media-controls-touchless-timeline-loaded");
-
-  ASSERT_NE(nullptr, timeline);
-  ASSERT_NE(nullptr, progress_bar);
-  ASSERT_NE(nullptr, loaded_bar);
-
-  double timeline_width = timeline->getBoundingClientRect()->width();
-  double progress_bar_width = progress_bar->getBoundingClientRect()->width();
-  double loaded_bar_width = loaded_bar->getBoundingClientRect()->width();
-  ASSERT_GT(timeline_width, 0);
-
-  EXPECT_DOUBLE_EQ(buffered / duration, loaded_bar_width / timeline_width);
-  EXPECT_DOUBLE_EQ(current_time / buffered,
-                   progress_bar_width / loaded_bar_width);
-
-  // Seek event should trigger a UI update as well.
-  SetBufferedRange(0);
-  MediaElement().setCurrentTime(0);
-  MediaElement().DispatchEvent(*Event::Create(event_type_names::kSeeking));
-
-  EXPECT_DOUBLE_EQ(progress_bar->getBoundingClientRect()->width(), 0);
-  EXPECT_DOUBLE_EQ(loaded_bar->getBoundingClientRect()->width(), 0);
-}
-
-TEST_F(MediaControlsTouchlessImplTest, TimeDisplay) {
-  const double duration = 4000;
-  const double current_time = 3599;
-  const char expect_display[] = "59:59 / 1:06:40";
-
-  Element* time_display = GetControlByShadowPseudoId(
-      "-internal-media-controls-touchless-time-display");
-
-  EXPECT_EQ(time_display->InnerHTMLAsString(), "0:00 / 0:00");
-
-  LoadMediaWithDuration(duration);
-  MediaElement().setCurrentTime(current_time);
-  test::RunPendingTasks();
-  MediaElement().DispatchEvent(*Event::Create(event_type_names::kTimeupdate));
-
-  EXPECT_EQ(time_display->InnerHTMLAsString(), expect_display);
-}
-
-TEST_F(MediaControlsTouchlessImplTest, VolumeDisplayTest) {
-  Element* volume_bar_background = GetControlByShadowPseudoId(
-      "-internal-media-controls-touchless-volume-bar-background");
-  Element* volume_bar = GetControlByShadowPseudoId(
-      "-internal-media-controls-touchless-volume-bar");
-  ASSERT_NE(nullptr, volume_bar_background);
-  ASSERT_NE(nullptr, volume_bar);
-
-  const double volume = 0.65;        // Initial volume.
-  const double volume_delta = 0.05;  // Volume change for each press.
-  const double error = 0.01;         // Allow precision error.
-  MediaElement().setVolume(volume);
-  SimulateKeydownEvent(MediaElement(), VK_UP);
-
-  double volume_bar_background_height =
-      volume_bar_background->getBoundingClientRect()->height();
-  double volume_bar_height = volume_bar->getBoundingClientRect()->height();
-
-  EXPECT_NEAR(volume + volume_delta,
-              volume_bar_height / volume_bar_background_height, error);
-}
-
-TEST_F(MediaControlsTouchlessImplTest, ContextMenuMojomTest) {
-  ScopedTestingPlatformSupport<LocalePlatformSupport> support;
-
-  MediaControls().MediaElement().SetSrc("https://example.com/foo.mp4");
-  std::unique_ptr<UserGestureIndicator> user_gesture_scope =
-      LocalFrame::NotifyUserActivation(GetDocument().GetFrame(),
-                                       UserGestureToken::kNewGesture);
-  test::RunPendingTasks();
-
-  WebKeyboardEvent web_keyboard_event(
-      WebInputEvent::kKeyUp, WebInputEvent::Modifiers::kNoModifiers,
-      WebInputEvent::GetStaticTimeStampForTests());
-  // TODO: Cleanup magic numbers once https://crbug.com/949766 lands.
-  web_keyboard_event.dom_key = 0x00200310;
-  Event* keyboard_event = KeyboardEvent::Create(web_keyboard_event, nullptr);
-
-  // Test fullscreen function.
-  SetMenuResponse(mojom::blink::MenuItem::FULLSCREEN);
-  MediaElement().DispatchEvent(*keyboard_event);
-  MediaControls().MenuHostFlushForTesting();
-  test::RunPendingTasks();
-
-  TestMenuHostArgList& arg_list = GetMenuHostArgList();
-  EXPECT_EQ((int)arg_list.menu_items.size(), 2);
-  EXPECT_EQ(arg_list.menu_items[0], mojom::blink::MenuItem::FULLSCREEN);
-  EXPECT_EQ(arg_list.menu_items[1], mojom::blink::MenuItem::DOWNLOAD);
-  EXPECT_FALSE(arg_list.video_state->is_fullscreen);
-  EXPECT_TRUE(MediaElement().IsFullscreen());
-
-  SetMenuResponseAndShowMenu(mojom::blink::MenuItem::FULLSCREEN);
-  test::RunPendingTasks();
-
-  EXPECT_TRUE(arg_list.video_state->is_fullscreen);
-  EXPECT_FALSE(MediaElement().IsFullscreen());
-
-  // Disable download and fullscreen, and show mute option.
-  MediaElement().ControlsListInternal()->Add("nofullscreen");
-  MediaElement().GetDocument().GetSettings()->SetHideDownloadUI(true);
-  SetHasAudio(true);
-
-  SetMenuResponseAndShowMenu(mojom::blink::MenuItem::MUTE);
-
-  EXPECT_EQ((int)arg_list.menu_items.size(), 1);
-  EXPECT_EQ(arg_list.menu_items[0], mojom::blink::MenuItem::MUTE);
-  EXPECT_FALSE(arg_list.video_state->is_muted);
-  EXPECT_TRUE(MediaElement().muted());
-
-  SetMenuResponseAndShowMenu(mojom::blink::MenuItem::MUTE);
-
-  EXPECT_TRUE(arg_list.video_state->is_muted);
-  EXPECT_FALSE(MediaElement().muted());
-
-  // Disable mute option and show text track option.
-  SetHasAudio(false);
-  TextTrack* track = MediaElement().addTextTrack("subtitles", "english", "en",
-                                                 ASSERT_NO_EXCEPTION);
-  SetMenuResponseAndShowMenu(mojom::blink::MenuItem::CAPTIONS, 0);
-
-  EXPECT_EQ((int)arg_list.menu_items.size(), 1);
-  EXPECT_EQ(arg_list.menu_items[0], mojom::blink::MenuItem::CAPTIONS);
-  EXPECT_EQ(arg_list.text_tracks[1]->label, "english");
-  EXPECT_EQ(track->mode(), TextTrack::ShowingKeyword());
-
-  SetMenuResponseAndShowMenu(mojom::blink::MenuItem::CAPTIONS, -1);
-  EXPECT_NE(track->mode(), TextTrack::ShowingKeyword());
-}
-
-TEST_F(MediaControlsTouchlessImplTest, NoSourceTest) {
-  EXPECT_TRUE(MediaControls().classList().contains("state-no-source"));
-
-  LoadMediaWithDuration(10);
-  EXPECT_FALSE(MediaControls().classList().contains("state-no-source"));
-}
-
-TEST_F(MediaControlsTouchlessImplTest, DefaultPosterTest) {
-  LoadMediaWithDuration(10);
-
-  SetNetworkState(HTMLMediaElement::NetworkState::kNetworkLoading);
-  test::RunPendingTasks();
-  EXPECT_TRUE(MediaControls().classList().contains("use-default-poster"));
-
-  SetNetworkState(HTMLMediaElement::NetworkState::kNetworkIdle);
-  SetReadyState(HTMLMediaElement::ReadyState::kHaveMetadata);
-  test::RunPendingTasks();
-  EXPECT_FALSE(MediaControls().classList().contains("use-default-poster"));
-}
-
-TEST_F(MediaControlsTouchlessImplTest, DoesNotHandleKeysWhenDisabled) {
-  // Disable the controls.
-  MediaElement().SetBooleanAttribute(html_names::kControlsAttr, false);
-
-  // Focus the video.
-  MediaElement().SetFocused(true, WebFocusType::kWebFocusTypeNone);
-  ASSERT_TRUE(MediaElement().paused());
-
-  // Enter should not play the video.
-  SimulateKeydownEvent(MediaElement(), VKEY_RETURN);
-  ASSERT_TRUE(MediaElement().paused());
-
-  // The arrow keys should also not be handled.
-  const int initTime = 10;
-  const double initVolume = 0.5;
-  MediaElement().setCurrentTime(initTime);
-  MediaElement().setVolume(initVolume);
-
-  SimulateKeydownEvent(MediaElement(), VKEY_RIGHT);
-  ASSERT_EQ(MediaElement().currentTime(), initTime);
-
-  SimulateKeydownEvent(MediaElement(), VKEY_LEFT);
-  ASSERT_EQ(MediaElement().currentTime(), initTime);
-
-  SimulateKeydownEvent(MediaElement(), VKEY_UP);
-  ASSERT_EQ(MediaElement().volume(), initVolume);
-
-  SimulateKeydownEvent(MediaElement(), VKEY_DOWN);
-  ASSERT_EQ(MediaElement().volume(), initVolume);
-}
-
-TEST_F(MediaControlsTouchlessImplTestWithMockScheduler,
-       MidOverlayHideTimerTest) {
-  Element* overlay =
-      GetControlByShadowPseudoId("-internal-media-controls-touchless-overlay");
-  ASSERT_NE(nullptr, overlay);
-
-  // Overlay should starts hidden.
-  EXPECT_FALSE(IsControlsVisible(overlay));
-
-  // Overlay should show when focus in.
-  MediaElement().SetFocused(true, WebFocusType::kWebFocusTypeNone);
-  MediaElement().DispatchEvent(*Event::Create(event_type_names::kFocusin));
-  EXPECT_TRUE(IsControlsVisible(overlay));
-
-  // Overlay should hide after 3 seconds.
-  platform()->RunForPeriodSeconds(2.99);
-  EXPECT_TRUE(IsControlsVisible(overlay));
-  platform()->RunForPeriodSeconds(0.01);
-  EXPECT_FALSE(IsControlsVisible(overlay));
-
-  // Overlay should show upon pressing return key.
-  SimulateKeydownEvent(MediaElement(), VKEY_RETURN);
-  EXPECT_TRUE(IsControlsVisible(overlay));
-
-  // Overlay should not disappear after 2 seconds.
-  platform()->RunForPeriodSeconds(2);
-  EXPECT_TRUE(IsControlsVisible(overlay));
-
-  // Overlay should hide 3 seconds after last key press.
-  platform()->RunForPeriodSeconds(1);
-  EXPECT_FALSE(IsControlsVisible(overlay));
-}
-
-TEST_F(MediaControlsTouchlessImplTestWithMockScheduler,
-       BottomContainerHideTimerTest) {
-  Element* bottom_container = GetControlByShadowPseudoId(
-      "-internal-media-controls-touchless-bottom-container");
-  ASSERT_NE(nullptr, bottom_container);
-
-  // Bottom container starts opaque since video is paused.
-  EXPECT_TRUE(IsControlsVisible(bottom_container));
-  EXPECT_TRUE(IsElementDisplayed(bottom_container));
-
-  MediaElement().Play();
-  platform()->RunForPeriodSeconds(3);
-  EXPECT_FALSE(IsControlsVisible(bottom_container));
-
-  MediaElement().pause();
-
-  // Pause after play should stop hide timer.
-  MediaElement().Play();
-  MediaElement().pause();
-  platform()->RunForPeriodSeconds(5);
-  EXPECT_TRUE(IsControlsVisible(bottom_container));
-
-  MediaElement().Play();
-  platform()->RunForPeriodSeconds(5);
-  EXPECT_FALSE(IsControlsVisible(bottom_container));
-
-  // Bottom container should show after focus in.
-  MediaElement().SetFocused(true, WebFocusType::kWebFocusTypeNone);
-  MediaElement().DispatchEvent(*Event::Create(event_type_names::kFocusin));
-  EXPECT_TRUE(IsControlsVisible(bottom_container));
-
-  // Hide after 3 seconds
-  platform()->RunForPeriodSeconds(3);
-  EXPECT_FALSE(IsControlsVisible(bottom_container));
-
-  // Display should be none after hide transition ends.
-  bottom_container->DispatchEvent(
-      *Event::Create(event_type_names::kTransitionend));
-  EXPECT_FALSE(IsElementDisplayed(bottom_container));
-
-  // Bottom container should show after pressing right/left arrow.
-  SimulateKeydownEvent(MediaElement(), VK_RIGHT);
-  EXPECT_TRUE(IsControlsVisible(bottom_container));
-
-  platform()->RunForPeriodSeconds(3);
-  EXPECT_FALSE(IsControlsVisible(bottom_container));
-
-  SimulateKeydownEvent(MediaElement(), VK_LEFT);
-  EXPECT_TRUE(IsControlsVisible(bottom_container));
-
-  platform()->RunForPeriodSeconds(3);
-  EXPECT_FALSE(IsControlsVisible(bottom_container));
-}
-
-TEST_F(MediaControlsTouchlessImplTestWithMockScheduler,
-       VolumeDisplayTimerTest) {
-  Element* volume_container = GetControlByShadowPseudoId(
-      "-internal-media-controls-touchless-volume-container");
-  Element* overlay =
-      GetControlByShadowPseudoId("-internal-media-controls-touchless-overlay");
-  ASSERT_NE(nullptr, volume_container);
-  ASSERT_NE(nullptr, overlay);
-
-  MediaElement().SetFocused(true, WebFocusType::kWebFocusTypeNone);
-  MediaElement().DispatchEvent(*Event::Create(event_type_names::kFocusin));
-  EXPECT_TRUE(IsControlsVisible(overlay));
-
-  // Press up button should bring up volume display and hide overlay
-  // immediately.
-  SimulateKeydownEvent(MediaElement(), VK_UP);
-  EXPECT_TRUE(IsControlsVisible(volume_container));
-  EXPECT_FALSE(IsControlsVisible(overlay));
-
-  platform()->RunForPeriodSeconds(3);
-  EXPECT_FALSE(IsControlsVisible(volume_container));
-
-  SimulateKeydownEvent(MediaElement(), VK_UP);
-  EXPECT_TRUE(IsControlsVisible(volume_container));
-
-  // Press mid key should bring up mid overlay and hide volume display
-  // immediately.
-  SimulateKeydownEvent(MediaElement(), VK_RETURN);
-  EXPECT_FALSE(IsControlsVisible(volume_container));
-  EXPECT_TRUE(IsControlsVisible(overlay));
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener.cc b/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener.cc
deleted file mode 100644
index 9077df3..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener.cc
+++ /dev/null
@@ -1,144 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/media_controls_touchless_media_event_listener.h"
-
-#include "third_party/blink/renderer/core/dom/document.h"
-#include "third_party/blink/renderer/core/dom/events/event.h"
-#include "third_party/blink/renderer/core/events/keyboard_event.h"
-#include "third_party/blink/renderer/core/html/media/html_media_element.h"
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener_observer.h"
-
-namespace blink {
-
-MediaControlsTouchlessMediaEventListener::
-    MediaControlsTouchlessMediaEventListener(HTMLMediaElement& media_element)
-    : media_element_(media_element) {
-  if (media_element.isConnected())
-    Attach();
-}
-
-void MediaControlsTouchlessMediaEventListener::AddObserver(
-    MediaControlsTouchlessMediaEventListenerObserver* observer) {
-  observers_.insert(observer);
-}
-
-void MediaControlsTouchlessMediaEventListener::RemoveObserver(
-    MediaControlsTouchlessMediaEventListenerObserver* observer) {
-  observers_.erase(observer);
-}
-
-void MediaControlsTouchlessMediaEventListener::Attach() {
-  DCHECK(media_element_->isConnected());
-
-  media_element_->addEventListener(event_type_names::kFocusin, this, false);
-  media_element_->addEventListener(event_type_names::kTimeupdate, this, false);
-  media_element_->addEventListener(event_type_names::kDurationchange, this,
-                                   false);
-  media_element_->addEventListener(event_type_names::kSeeking, this, false);
-  media_element_->addEventListener(event_type_names::kProgress, this, false);
-
-  media_element_->addEventListener(event_type_names::kPlay, this, false);
-  media_element_->addEventListener(event_type_names::kPause, this, false);
-
-  media_element_->addEventListener(event_type_names::kError, this, false);
-  media_element_->addEventListener(event_type_names::kLoadedmetadata, this,
-                                   false);
-
-  media_element_->addEventListener(event_type_names::kKeypress, this, false);
-  media_element_->addEventListener(event_type_names::kKeydown, this, false);
-  media_element_->addEventListener(event_type_names::kKeyup, this, false);
-
-  media_element_->addEventListener(event_type_names::kWebkitfullscreenchange,
-                                   this, false);
-  media_element_->GetDocument().addEventListener(
-      event_type_names::kFullscreenchange, this, false);
-}
-
-void MediaControlsTouchlessMediaEventListener::Detach() {
-  DCHECK(!media_element_->isConnected());
-}
-
-void MediaControlsTouchlessMediaEventListener::Invoke(
-    ExecutionContext* execution_context,
-    Event* event) {
-  if (event->type() == event_type_names::kFocusin) {
-    for (auto& observer : observers_)
-      observer->OnFocusIn();
-    return;
-  }
-  if (event->type() == event_type_names::kTimeupdate) {
-    for (auto& observer : observers_)
-      observer->OnTimeUpdate();
-    return;
-  }
-  if (event->type() == event_type_names::kDurationchange) {
-    for (auto& observer : observers_)
-      observer->OnDurationChange();
-    return;
-  }
-  if (event->type() == event_type_names::kSeeking) {
-    for (auto& observer : observers_)
-      observer->OnSeeking();
-    return;
-  }
-  if (event->type() == event_type_names::kProgress) {
-    for (auto& observer : observers_)
-      observer->OnLoadingProgress();
-    return;
-  }
-  if (event->type() == event_type_names::kPlay) {
-    for (auto& observer : observers_)
-      observer->OnPlay();
-    return;
-  }
-  if (event->type() == event_type_names::kPause) {
-    for (auto& observer : observers_)
-      observer->OnPause();
-    return;
-  }
-  if (event->type() == event_type_names::kError) {
-    for (auto& observer : observers_)
-      observer->OnError();
-    return;
-  }
-  if (event->type() == event_type_names::kLoadedmetadata) {
-    for (auto& observer : observers_)
-      observer->OnLoadedMetadata();
-    return;
-  }
-  if (event->type() == event_type_names::kKeypress) {
-    for (auto& observer : observers_)
-      observer->OnKeyPress(ToKeyboardEvent(event));
-    return;
-  }
-  if (event->type() == event_type_names::kKeydown) {
-    for (auto& observer : observers_)
-      observer->OnKeyDown(ToKeyboardEvent(event));
-    return;
-  }
-  if (event->type() == event_type_names::kKeyup) {
-    for (auto& observer : observers_)
-      observer->OnKeyUp(ToKeyboardEvent(event));
-    return;
-  }
-  if (event->type() == event_type_names::kFullscreenchange ||
-      event->type() == event_type_names::kWebkitfullscreenchange) {
-    if (media_element_->IsFullscreen()) {
-      for (auto& observer : observers_)
-        observer->OnEnterFullscreen();
-    } else {
-      for (auto& observer : observers_)
-        observer->OnExitFullscreen();
-    }
-  }
-}
-
-void MediaControlsTouchlessMediaEventListener::Trace(blink::Visitor* visitor) {
-  NativeEventListener::Trace(visitor);
-  visitor->Trace(media_element_);
-  visitor->Trace(observers_);
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener.h b/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener.h
deleted file mode 100644
index a290bd9..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener.h
+++ /dev/null
@@ -1,41 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_MEDIA_EVENT_LISTENER_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_MEDIA_EVENT_LISTENER_H_
-
-#include "third_party/blink/renderer/core/dom/events/native_event_listener.h"
-
-namespace blink {
-
-class HTMLMediaElement;
-class MediaControlsTouchlessMediaEventListenerObserver;
-
-class MediaControlsTouchlessMediaEventListener final
-    : public NativeEventListener {
- public:
-  explicit MediaControlsTouchlessMediaEventListener(HTMLMediaElement&);
-
-  void AddObserver(MediaControlsTouchlessMediaEventListenerObserver*);
-  void RemoveObserver(MediaControlsTouchlessMediaEventListenerObserver*);
-
-  void Attach();
-  void Detach();
-
-  void Trace(blink::Visitor*) override;
-  void Invoke(ExecutionContext*, Event*) override;
-
- private:
-  HTMLMediaElement& GetMediaElement();
-
-  HeapLinkedHashSet<Member<MediaControlsTouchlessMediaEventListenerObserver>>
-      observers_;
-  Member<HTMLMediaElement> media_element_;
-
-  DISALLOW_COPY_AND_ASSIGN(MediaControlsTouchlessMediaEventListener);
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_MEDIA_EVENT_LISTENER_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener_observer.h b/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener_observer.h
deleted file mode 100644
index cf07510..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_media_event_listener_observer.h
+++ /dev/null
@@ -1,35 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_MEDIA_EVENT_LISTENER_OBSERVER_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_MEDIA_EVENT_LISTENER_OBSERVER_H_
-
-#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
-
-namespace blink {
-
-class KeyboardEvent;
-
-class MediaControlsTouchlessMediaEventListenerObserver
-    : public GarbageCollectedMixin {
- public:
-  virtual void OnFocusIn() = 0;
-  virtual void OnTimeUpdate() = 0;
-  virtual void OnDurationChange() = 0;
-  virtual void OnSeeking() = 0;
-  virtual void OnLoadingProgress() = 0;
-  virtual void OnPlay() = 0;
-  virtual void OnPause() = 0;
-  virtual void OnEnterFullscreen() = 0;
-  virtual void OnExitFullscreen() = 0;
-  virtual void OnError() = 0;
-  virtual void OnLoadedMetadata() = 0;
-  virtual void OnKeyPress(KeyboardEvent* event) = 0;
-  virtual void OnKeyDown(KeyboardEvent* event) = 0;
-  virtual void OnKeyUp(KeyboardEvent* event) = 0;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_MEDIA_EVENT_LISTENER_OBSERVER_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_resource_loader.cc b/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_resource_loader.cc
deleted file mode 100644
index 1af1f09c2..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_resource_loader.cc
+++ /dev/null
@@ -1,38 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/media_controls_touchless_resource_loader.h"
-
-#include "third_party/blink/renderer/modules/media_controls/touchless/resources/grit/media_controls_touchless_resources.h"
-#include "third_party/blink/renderer/platform/data_resource_helper.h"
-
-namespace blink {
-
-MediaControlsTouchlessResourceLoader::MediaControlsTouchlessResourceLoader()
-    : UAStyleSheetLoader() {}
-
-MediaControlsTouchlessResourceLoader::~MediaControlsTouchlessResourceLoader() =
-    default;
-
-String MediaControlsTouchlessResourceLoader::GetMediaControlsTouchlessCSS()
-    const {
-  return UncompressResourceAsString(IDR_UASTYLE_MEDIA_CONTROLS_TOUCHLESS_CSS);
-}
-
-String MediaControlsTouchlessResourceLoader::GetUAStyleSheet() {
-  return GetMediaControlsTouchlessCSS();
-}
-
-void MediaControlsTouchlessResourceLoader::
-    InjectMediaControlsTouchlessUAStyleSheet() {
-  CSSDefaultStyleSheets& default_style_sheets =
-      CSSDefaultStyleSheets::Instance();
-  std::unique_ptr<MediaControlsTouchlessResourceLoader> loader =
-      std::make_unique<MediaControlsTouchlessResourceLoader>();
-
-  if (!default_style_sheets.HasMediaControlsStyleSheetLoader())
-    default_style_sheets.SetMediaControlsStyleSheetLoader(std::move(loader));
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_resource_loader.h b/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_resource_loader.h
deleted file mode 100644
index 74ed1ac..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_resource_loader.h
+++ /dev/null
@@ -1,28 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_RESOURCE_LOADER_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_RESOURCE_LOADER_H_
-
-#include "third_party/blink/renderer/core/css/css_default_style_sheets.h"
-
-namespace blink {
-
-// Builds the UA stylesheet for the touchless Media Controls.
-class MediaControlsTouchlessResourceLoader
-    : public CSSDefaultStyleSheets::UAStyleSheetLoader {
- public:
-  static void InjectMediaControlsTouchlessUAStyleSheet();
-
-  String GetUAStyleSheet() override;
-  MediaControlsTouchlessResourceLoader();
-  ~MediaControlsTouchlessResourceLoader() override;
-
- private:
-  String GetMediaControlsTouchlessCSS() const;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_MEDIA_CONTROLS_TOUCHLESS_RESOURCE_LOADER_H_
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/gradient_bg.png b/third_party/blink/renderer/modules/media_controls/touchless/resources/gradient_bg.png
deleted file mode 100644
index 25f2a02..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/gradient_bg.png
+++ /dev/null
Binary files differ
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_fast_forward.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_fast_forward.svg
deleted file mode 100644
index 09a9805..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_fast_forward.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#FFFFFF"><path d="M15 9.86L18.03 12 15 14.14V9.86m-9 0L9.03 12 6 14.14V9.86M13 6v12l8.5-6L13 6zM4 6v12l8.5-6L4 6z"/><path fill="none" d="M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z"/></svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_fast_rewind.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_fast_rewind.svg
deleted file mode 100644
index 384fdc4..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_fast_rewind.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#FFFFFF"><path d="M18 9.86v4.28L14.97 12 18 9.86m-9 0v4.28L5.97 12 9 9.86M20 6l-8.5 6 8.5 6V6zm-9 0l-8.5 6 8.5 6V6z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_mid_background.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_mid_background.svg
deleted file mode 100644
index 77cf41f..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_mid_background.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-<svg width="104" height="104" viewBox="0 0 104 104" fill="none" xmlns="http://www.w3.org/2000/svg">
-<path opacity="0.85" fill-rule="evenodd" clip-rule="evenodd" d="M32 0C14.3269 0 0 14.3269 0 32V72C0 89.6731 14.3269 104 32 104H72C89.6731 104 104 89.6731 104 72V32C104 14.3269 89.6731 0 72 0H32ZM46 30C37.1634 30 30 37.1634 30 46V58C30 66.8366 37.1634 74 46 74H58C66.8366 74 74 66.8366 74 58V46C74 37.1634 66.8366 30 58 30H46Z" fill="#202124"/>
-<rect opacity="0.85" x="32" y="32" width="40" height="40" rx="14" fill="#202124"/>
-</svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_music_note.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_music_note.svg
deleted file mode 100644
index bcabd88..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_music_note.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 3l.01 10.55c-.59-.34-1.27-.55-2-.55C7.79 13 6 14.79 6 17s1.79 4 4.01 4S14 19.21 14 17V7h4V3h-6z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>
\ No newline at end of file
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_no_source.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_no_source.svg
deleted file mode 100644
index 49b7eaf..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_no_source.svg
+++ /dev/null
@@ -1,5 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24" fill="#000000">
-    <path fill="none" d="M0 0h24v24H0zm0 0h24v24H0zm21 19c0 1.1-.9 2-2 2H5c-1.1 0-2-.9-2-2V5c0-1.1.9-2 2-2h14c1.1 0 2 .9 2 2"/>
-    <path fill="none" d="M0 0h24v24H0z"/>
-    <path d="M21 5v6.59l-3-3.01-4 4.01-4-4-4 4-3-3.01V5c0-1.1.9-2 2-2h14c1.1 0 2 .9 2 2zm-3 6.42l3 3.01V19c0 1.1-.9 2-2 2H5c-1.1 0-2-.9-2-2v-6.58l3 2.99 4-4 4 4 4-3.99z"/>
-</svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_pause.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_pause.svg
deleted file mode 100644
index bd17d16..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_pause.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#FFFFFF"><path d="M19 19h-6V5h6v14zm-4-2h2V7h-2v10zm-4 2H5V5h6v14zm-4-2h2V7H7v10z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_play_arrow.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_play_arrow.svg
deleted file mode 100644
index 10c1d08..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_play_arrow.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#FFFFFF"><path d="M10 8.64L15.27 12 10 15.36V8.64M8 5v14l11-7L8 5z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_down.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_down.svg
deleted file mode 100644
index 67af7988..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_down.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#FFFFFF"><path d="M16 7.97v8.05c1.48-.73 2.5-2.25 2.5-4.02 0-1.77-1.02-3.29-2.5-4.03zM5 9v6h4l5 5V4L9 9H5zm7-.17v6.34L9.83 13H7v-2h2.83L12 8.83z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_off.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_off.svg
deleted file mode 100644
index a8636be..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_off.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#FFFFFF"><path d="M21.19 21.19L14 14l-2-2-9.2-9.2-1.41 1.42 8.79 8.79c-.06 0-.12-.01-.18-.01-2.21 0-4 1.79-4 4s1.79 4 4.01 4S14 19.21 14 17v-.17l5.78 5.78 1.41-1.42zM14 11.17V7h4V3h-6v6.17z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_on.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_on.svg
deleted file mode 100644
index ba098e8..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_on.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#FFFFFF"><path d="M12 3v10.55c-.59-.34-1.27-.55-2-.55-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4V7h4V3h-6z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_up.svg b/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_up.svg
deleted file mode 100644
index 9c82fbc..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/ic_volume_up.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#FFFFFF"><path d="M3 9v6h4l5 5V4L7 9H3zm7-.17v6.34L7.83 13H5v-2h2.83L10 8.83zM16.5 12c0-1.77-1.02-3.29-2.5-4.03v8.05c1.48-.73 2.5-2.25 2.5-4.02zM14 3.23v2.06c2.89.86 5 3.54 5 6.71s-2.11 5.85-5 6.71v2.06c4.01-.91 7-4.49 7-8.77 0-4.28-2.99-7.86-7-8.77z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/mediaControlsTouchless.css b/third_party/blink/renderer/modules/media_controls/touchless/resources/mediaControlsTouchless.css
deleted file mode 100644
index 67a1913..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/mediaControlsTouchless.css
+++ /dev/null
@@ -1,370 +0,0 @@
-/* Copyright 2019 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. */
-
-audio {
-  width: 300px;
-  height: 180px;
-}
-
-audio::-webkit-media-controls-touchless,
-video::-webkit-media-controls-touchless {
-  width: inherit;
-  height: inherit;
-
-  position: relative;
-  direction: ltr;
-  display: flex;
-  flex-direction: column;
-  opacity: 1;
-
-  margin-top: env(safe-area-inset-top);
-  margin-left: env(safe-area-inset-left);
-  margin-right: env(safe-area-inset-right);
-  margin-bottom: env(safe-area-inset-bottom);
-}
-
-audio::-webkit-media-controls-touchless,
-video::-webkit-media-controls-touchless.use-default-poster {
-  background: #333;
-}
-
-audio::-internal-media-controls-touchless-info,
-video::-internal-media-controls-touchless-info {
-  display: none;
-  height: 72px;
-  width: 72px;
-  border-radius: 50%;
-  opacity: 0.3;
-  background-color: rgba(255, 255, 255, 0.9);
-  background-size: 50%;
-  background-position: center;
-  background-repeat: no-repeat;
-  position: absolute;
-  margin: auto;
-  top: 0;
-  left: 0;
-  bottom: 0;
-  right: 0;
-}
-
-audio::-internal-media-controls-touchless-info {
-  background-image: -webkit-image-set(url(ic_music_note.svg) 1x);
-  display: block;
-}
-
-audio::-webkit-media-controls-touchless.state-no-source [pseudo="-internal-media-controls-touchless-info"],
-video::-webkit-media-controls-touchless.state-no-source [pseudo="-internal-media-controls-touchless-info"] {
-  background-image: -webkit-image-set(url(ic_no_source.svg) 1x);
-  display: block;
-}
-
-audio::-internal-media-controls-touchless-overlay,
-video::-internal-media-controls-touchless-overlay {
-  width: 104px;
-  height: 104px;
-  background-image: -webkit-image-set(url(ic_mid_background.svg) 1x);
-  background-size: 104px;
-  background-position: center;
-  background-repeat: no-repeat;
-  position: absolute;
-  opacity: 1;
-  z-index: 1;
-  margin: auto;
-  top: 0;
-  left: 0;
-  bottom: 0;
-  right: 0;
-}
-
-audio::-webkit-media-controls-touchless.state-no-source [pseudo="-internal-media-controls-touchless-overlay"],
-video::-webkit-media-controls-touchless.state-no-source [pseudo="-internal-media-controls-touchless-overlay"] {
-  display: none;
-}
-
-audio::-internal-media-controls-touchless-overlay.transparent,
-video::-internal-media-controls-touchless-overlay.transparent {
-  opacity: 0;
-  transition: opacity .5s;
-}
-
-audio::-internal-media-controls-touchless-overlay.transparent-immediate,
-video::-internal-media-controls-touchless-overlay.transparent-immediate {
-  opacity: 0;
-}
-
-audio::-internal-media-controls-touchless-volume-up-button,
-video::-internal-media-controls-touchless-volume-up-button {
-  width: 30px;
-  height: 30px;
-  margin-left: 37px /* (overlay width -width) / 2 */;
-  background-image: -webkit-image-set(url(ic_volume_up.svg) 1x);
-  background-size: 20px;
-  background-position: center;
-  background-repeat: no-repeat;
-}
-
-audio::-internal-media-controls-touchless-seek-backward-button,
-video::-internal-media-controls-touchless-seek-backward-button {
-  width: 30px;
-  height: 30px;
-  margin-top: 7px /* (play button height - height) / 2 */;
-  float: left;
-  background-image: -webkit-image-set(url(ic_fast_rewind.svg) 1x);
-  background-size: 20px;
-  background-position: center;
-  background-repeat: no-repeat;
-}
-
-audio::-internal-media-controls-touchless-play-button,
-video::-internal-media-controls-touchless-play-button {
-  width: 44px;
-  height: 44px;
-  background-position: center;
-  background-size: 24px;
-  background-repeat: no-repeat;
-  float: left;
-}
-
-audio::-internal-media-controls-touchless-play-button.playing,
-video::-internal-media-controls-touchless-play-button.playing {
-  background-image: -webkit-image-set(url(ic_pause.svg) 1x);
-}
-
-audio::-internal-media-controls-touchless-play-button.paused,
-video::-internal-media-controls-touchless-play-button.paused {
-  background-image: -webkit-image-set(url(ic_play_arrow.svg) 1x);
-}
-
-audio::-internal-media-controls-touchless-seek-forward-button,
-video::-internal-media-controls-touchless-seek-forward-button {
-  width: 30px;
-  height: 30px;
-  margin-top: 7px /* (play button height - height) / 2 */;
-  float: left;
-  background-image: -webkit-image-set(url(ic_fast_forward.svg) 1x);
-  background-size: 20px;
-  background-position: center;
-  background-repeat: no-repeat;
-}
-
-audio::-internal-media-controls-touchless-volume-down-button,
-video::-internal-media-controls-touchless-volume-down-button {
-  width: 30px;
-  height: 30px;
-  margin-left: 37px /* (overlay width -width) / 2 */;
-  position: absolute;
-  bottom: 0;
-  background-image: -webkit-image-set(url(ic_volume_down.svg) 1x);
-  background-size: 20px;
-  background-position: center;
-  background-repeat: no-repeat;
-}
-
-audio::-internal-media-controls-touchless-bottom-container,
-video::-internal-media-controls-touchless-bottom-container {
-  position: absolute;
-  display: flex;
-  flex-direction: column;
-  justify-content: flex-end;
-  height: 100%;
-  width: 100%;
-  z-index: 0;
-
-  background:
-    -webkit-image-set(url('gradient_bg.png') 1x)
-    repeat-x bottom left;
-  background-size: auto 48px;
-}
-
-audio::-internal-media-controls-touchless-bottom-container.transparent,
-video::-internal-media-controls-touchless-bottom-container.transparent {
-  opacity: 0;
-  transition: opacity .5s;
-}
-
-audio::-internal-media-controls-touchless-time-display,
-video::-internal-media-controls-touchless-time-display {
-  color: #ffffff;
-  font-family: Roboto-Regular, Roboto, sans-serif;
-  font-size: 14px;
-  width: 100%;
-  bottom: auto;
-  padding-left: 8px;
-  padding-bottom: 8px;
-}
-
-audio::-internal-media-controls-touchless-timeline,
-video::-internal-media-controls-touchless-timeline {
-  width: 100%;
-  bottom: auto;
-  height: 4px;
-  background-color: rgba(0, 0, 0, 0.2);
-}
-
-audio::-internal-media-controls-touchless-timeline-loaded,
-video::-internal-media-controls-touchless-timeline-loaded {
-  height: 100%;
-  width: 0; /* We are using style attribute to override this. */
-  border-radius: 0 2px 2px 0;
-  background-color: rgba(255, 255, 255, 0.54);
-}
-
-audio::-internal-media-controls-touchless-timeline-progress,
-video::-internal-media-controls-touchless-timeline-progress {
-  height: 100%;
-  width: 0; /* We are using style attribute to override this. */
-  border-radius: 0 2px 2px 0;
-  background-color: rgba(255, 255, 255, 1.0);
-}
-
-audio::-internal-media-controls-touchless-volume-container,
-video::-internal-media-controls-touchless-volume-container {
-  width: 44px;
-  max-height: 152px;
-  height: 90%;
-  position: absolute;
-  top: 0;
-  left: 0;
-  right: 0;
-  bottom: 0;
-  margin: auto;
-  background-color: rgba(60,64,67,0.9);
-  border-radius: 22px;
-
-  display: flex;
-  flex-direction: column;
-  justify-content: flex-end;
-}
-
-audio::-internal-media-controls-touchless-volume-container.transparent,
-video::-internal-media-controls-touchless-volume-container.transparent {
-  opacity: 0;
-  transition: opacity .5s;
-}
-
-audio::-internal-media-controls-touchless-volume-container.transparent-immediate,
-video::-internal-media-controls-touchless-volume-container.transparent-immediate {
-  opacity: 0;
-}
-
-audio::-internal-media-controls-touchless-volume-bar-background,
-video::-internal-media-controls-touchless-volume-bar-background {
-  width: 4px;
-  margin-left: 20px;
-  margin-top: 12px;
-  margin-bottom: 8px;
-  background-color: rgba(255,255,255,0.54);
-  flex: 1 1 auto;
-  border-radius: 2px;
-  display: flex;
-  flex-direction: column;
-  justify-content: flex-end;
-}
-
-audio::-webkit-media-controls-touchless.inline [pseudo="-internal-media-controls-touchless-volume-bar-background"],
-video::-webkit-media-controls-touchless.inline [pseudo="-internal-media-controls-touchless-volume-bar-background"] {
-  margin-bottom: 12px;
-}
-
-audio::-internal-media-controls-touchless-volume-bar,
-video::-internal-media-controls-touchless-volume-bar {
-  background-color: #FFFFFF;
-  border-radius: 2px;
-}
-
-audio::-internal-media-controls-touchless-volume-icon,
-video::-internal-media-controls-touchless-volume-icon {
-  width: 24px;
-  height: 24px;
-  margin-left: 10px;
-  margin-bottom: 10px;
-  flex: 0 1 auto;
-  background-image: -webkit-image-set(url(ic_volume_on.svg) 1x);
-}
-
-audio::-internal-media-controls-touchless-volume-icon.muted,
-video::-internal-media-controls-touchless-volume-icon.muted {
-  background-image: -webkit-image-set(url(ic_volume_off.svg) 1x);
-}
-
-audio::-webkit-media-controls-touchless.inline div[pseudo="-internal-media-controls-touchless-volume-icon" i],
-video::-webkit-media-controls-touchless.inline div[pseudo="-internal-media-controls-touchless-volume-icon" i] {
-  display: none;
-}
-
-/**
- * Text Tracks
- */
-video::-webkit-media-text-track-container {
-    position: relative;
-    width: inherit;
-    height: inherit;
-    overflow: hidden;
-
-    font: 22px sans-serif;
-    text-align: center;
-    color: rgba(255, 255, 255, 1);
-
-    letter-spacing: normal;
-    word-spacing: normal;
-    text-transform: none;
-    text-indent: 0;
-    text-decoration: none;
-    pointer-events: none;
-    -webkit-user-select: none;
-    word-break: break-word;
-}
-
-video::cue {
-    display: inline;
-
-    background-color: rgba(0, 0, 0, 0.8);
-}
-
-video::-webkit-media-text-track-region {
-    position: absolute;
-    line-height: 5.33vh;
-    writing-mode: horizontal-tb;
-    background: rgba(0, 0, 0, 0.8);
-    color: rgba(255, 255, 255, 1);
-    word-wrap: break-word;
-    overflow-wrap: break-word;
-    overflow: hidden;
-}
-
-video::-webkit-media-text-track-region-container {
-    position: relative;
-
-    display: flex;
-    flex-flow: column;
-    flex-direction: column;
-}
-
-video::-webkit-media-text-track-region-container.scrolling {
-    transition: top 433ms linear;
-}
-
-video::-webkit-media-text-track-display {
-    position: absolute;
-    overflow: hidden;
-    white-space: pre-wrap;
-    -webkit-box-sizing: border-box;
-    flex: 0 0 auto;
-}
-
-video::cue(:future) {
-    color: gray;
-}
-
-video::cue(b) {
-    font-weight: bold;
-}
-
-video::cue(u) {
-    text-decoration: underline;
-}
-
-video::cue(i) {
-    font-style: italic;
-}
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/resources/media_controls_touchless_resources.grd b/third_party/blink/renderer/modules/media_controls/touchless/resources/media_controls_touchless_resources.grd
deleted file mode 100644
index 5f74e838..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/resources/media_controls_touchless_resources.grd
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<grit latest_public_release="0" current_release="1" output_all_resource_defines="false">
-  <outputs>
-    <output filename="grit/media_controls_touchless_resources.h" type="rc_header">
-      <emit emit_type='prepend'></emit>
-    </output>
-    <output filename="media_controls_touchless_resources.pak" type="data_package" />
-  </outputs>
-  <release seq="1">
-    <structures fallback_to_low_resolution="true">
-      <structure type="chrome_html" name="IDR_UASTYLE_MEDIA_CONTROLS_TOUCHLESS_CSS" file="mediaControlsTouchless.css" flattenhtml="true"  compress="gzip"/>
-    </structures>
-  </release>
-</grit>
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/test_media_controls_menu_host.cc b/third_party/blink/renderer/modules/media_controls/touchless/test_media_controls_menu_host.cc
deleted file mode 100644
index 25b68b98..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/test_media_controls_menu_host.cc
+++ /dev/null
@@ -1,45 +0,0 @@
-// Copyright 2019 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/modules/media_controls/touchless/test_media_controls_menu_host.h"
-
-namespace blink {
-
-mojo::PendingRemote<mojom::blink::MediaControlsMenuHost>
-TestMediaControlsMenuHost::CreateMediaControlsMenuHostRemote() {
-  return receiver_.BindNewPipeAndPassRemote();
-}
-
-void TestMediaControlsMenuHost::ShowMediaMenu(
-    const WTF::Vector<mojom::MenuItem>& menu_items,
-    mojo::PendingRemote<mojom::blink::VideoState> video_state,
-    base::Optional<WTF::Vector<mojom::blink::TextTrackMetadataPtr>> text_tracks,
-    ShowMediaMenuCallback callback) {
-  arg_list_.menu_items = WTF::Vector<mojom::MenuItem>(menu_items);
-
-  arg_list_.video_state = mojom::blink::VideoState::New();
-  arg_list_.video_state->is_fullscreen = video_state->is_fullscreen;
-  arg_list_.video_state->is_muted = video_state->is_muted;
-
-  arg_list_.text_tracks = WTF::Vector<mojom::blink::TextTrackMetadataPtr>(
-      std::move(text_tracks.value()));
-
-  std::move(callback).Run(std::move(response_));
-}
-
-TestMenuHostArgList& TestMediaControlsMenuHost::GetMenuHostArgList() {
-  return arg_list_;
-}
-
-void TestMediaControlsMenuHost::SetMenuResponse(
-    mojom::blink::MenuItem menu_item,
-    int track_index) {
-  if (response_.is_null())
-    response_ = mojom::blink::MenuResponse::New();
-
-  response_->clicked = menu_item;
-  response_->track_index = track_index;
-}
-
-}  // namespace blink
diff --git a/third_party/blink/renderer/modules/media_controls/touchless/test_media_controls_menu_host.h b/third_party/blink/renderer/modules/media_controls/touchless/test_media_controls_menu_host.h
deleted file mode 100644
index 018022f..0000000
--- a/third_party/blink/renderer/modules/media_controls/touchless/test_media_controls_menu_host.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright 2019 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_MODULES_MEDIA_CONTROLS_TOUCHLESS_TEST_MEDIA_CONTROLS_MENU_HOST_H_
-#define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_TEST_MEDIA_CONTROLS_MENU_HOST_H_
-
-#include "mojo/public/cpp/bindings/receiver.h"
-#include "mojo/public/cpp/bindings/remote.h"
-#include "third_party/blink/public/mojom/media_controls/touchless/media_controls.mojom-blink.h"
-
-namespace blink {
-
-struct TestMenuHostArgList {
-  WTF::Vector<mojom::MenuItem> menu_items;
-  mojom::blink::VideoStatePtr video_state;
-  WTF::Vector<mojom::blink::TextTrackMetadataPtr> text_tracks;
-};
-
-class TestMediaControlsMenuHost : public mojom::blink::MediaControlsMenuHost {
- public:
-  mojo::PendingRemote<mojom::blink::MediaControlsMenuHost>
-  CreateMediaControlsMenuHostRemote();
-  void ShowMediaMenu(
-      const WTF::Vector<mojom::MenuItem>& menu_items,
-      mojo::PendingRemote<mojom::blink::VideoState> video_state,
-      base::Optional<WTF::Vector<mojom::blink::TextTrackMetadataPtr>>
-          text_tracks,
-      ShowMediaMenuCallback callback) override;
-
-  TestMenuHostArgList& GetMenuHostArgList();
-  void SetMenuResponse(mojom::blink::MenuItem menu_item, int track_index);
-
- private:
-  mojo::Receiver<mojom::blink::MediaControlsMenuHost> receiver_{this};
-  TestMenuHostArgList arg_list_;
-  mojo::Remote<mojom::blink::MenuResponse> response_;
-};
-
-}  // namespace blink
-
-#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIA_CONTROLS_TOUCHLESS_TEST_MEDIA_CONTROLS_MENU_HOST_H_
diff --git a/third_party/blink/renderer/modules/modules_idl_files.gni b/third_party/blink/renderer/modules/modules_idl_files.gni
index b95055b..953f355 100644
--- a/third_party/blink/renderer/modules/modules_idl_files.gni
+++ b/third_party/blink/renderer/modules/modules_idl_files.gni
@@ -857,7 +857,7 @@
           "webgpu/gpu_origin_3d_dict.idl",
           "webgpu/gpu_pipeline_descriptor_base.idl",
           "webgpu/gpu_pipeline_layout_descriptor.idl",
-          "webgpu/gpu_pipeline_stage_descriptor.idl",
+          "webgpu/gpu_programmable_stage_descriptor.idl",
           "webgpu/gpu_rasterization_state_descriptor.idl",
           "webgpu/gpu_render_bundle_descriptor.idl",
           "webgpu/gpu_render_bundle_encoder_descriptor.idl",
diff --git a/third_party/blink/renderer/modules/modules_initializer.cc b/third_party/blink/renderer/modules/modules_initializer.cc
index 039e25f..039c2f5 100644
--- a/third_party/blink/renderer/modules/modules_initializer.cc
+++ b/third_party/blink/renderer/modules/modules_initializer.cc
@@ -97,10 +97,6 @@
 #include "third_party/blink/renderer/platform/wtf/functional.h"
 #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
 
-#if defined(TOUCHLESS_MEDIA_CONTROLS)
-#include "third_party/blink/renderer/modules/media_controls/touchless/media_controls_touchless_impl.h"
-#endif
-
 namespace blink {
 
 void ModulesInitializer::Initialize() {
@@ -205,11 +201,7 @@
 MediaControls* ModulesInitializer::CreateMediaControls(
     HTMLMediaElement& media_element,
     ShadowRoot& shadow_root) const {
-#if defined(TOUCHLESS_MEDIA_CONTROLS)
-  return MediaControlsTouchlessImpl::Create(media_element, shadow_root);
-#else
   return MediaControlsImpl::Create(media_element, shadow_root);
-#endif
 }
 
 PictureInPictureController*
diff --git a/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.cc b/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.cc
index 86034f0..78bdbdc2 100644
--- a/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.cc
+++ b/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.cc
@@ -1398,11 +1398,8 @@
 void ServiceWorkerGlobalScope::SetFetchHandlerExistence(
     FetchHandlerExistence fetch_handler_existence) {
   DCHECK(IsContextThread());
-  if (fetch_handler_existence == FetchHandlerExistence::EXISTS &&
-      base::FeatureList::IsEnabled(
-          features::kServiceWorkerIsolateInForeground)) {
+  if (fetch_handler_existence == FetchHandlerExistence::EXISTS)
     GetThread()->GetIsolate()->IsolateInForegroundNotification();
-  }
 }
 
 void ServiceWorkerGlobalScope::DispatchFetchEventForSubresource(
diff --git a/third_party/blink/renderer/modules/speech/speech_recognition.cc b/third_party/blink/renderer/modules/speech/speech_recognition.cc
index b1b94b6..ea507a2 100644
--- a/third_party/blink/renderer/modules/speech/speech_recognition.cc
+++ b/third_party/blink/renderer/modules/speech/speech_recognition.cc
@@ -64,13 +64,9 @@
   receiver_.set_disconnect_handler(WTF::Bind(
       &SpeechRecognition::OnConnectionError, WrapWeakPersistent(this)));
 
-  mojo::PendingReceiver<mojom::blink::SpeechRecognitionSession>
-      session_receiver = MakeRequest(
-          &session_, GetExecutionContext()->GetInterfaceInvalidator());
-
-  controller_->Start(std::move(session_receiver), std::move(session_client),
-                     *grammars_, lang_, continuous_, interim_results_,
-                     max_alternatives_);
+  controller_->Start(session_.BindNewPipeAndPassReceiver(),
+                     std::move(session_client), *grammars_, lang_, continuous_,
+                     interim_results_, max_alternatives_);
   started_ = true;
 }
 
@@ -189,6 +185,7 @@
 void SpeechRecognition::ContextDestroyed(ExecutionContext*) {
   controller_ = nullptr;
   receiver_.reset();
+  session_.reset();
 }
 
 bool SpeechRecognition::HasPendingActivity() const {
diff --git a/third_party/blink/renderer/modules/speech/speech_recognition.h b/third_party/blink/renderer/modules/speech/speech_recognition.h
index 46e890c..a849c046 100644
--- a/third_party/blink/renderer/modules/speech/speech_recognition.h
+++ b/third_party/blink/renderer/modules/speech/speech_recognition.h
@@ -27,6 +27,7 @@
 #define THIRD_PARTY_BLINK_RENDERER_MODULES_SPEECH_SPEECH_RECOGNITION_H_
 
 #include "mojo/public/cpp/bindings/receiver.h"
+#include "mojo/public/cpp/bindings/remote.h"
 #include "third_party/blink/public/mojom/speech/speech_recognizer.mojom-blink.h"
 #include "third_party/blink/public/platform/web_private_ptr.h"
 #include "third_party/blink/renderer/bindings/core/v8/active_script_wrappable.h"
@@ -37,7 +38,6 @@
 #include "third_party/blink/renderer/modules/speech/speech_grammar_list.h"
 #include "third_party/blink/renderer/modules/speech/speech_recognition_result.h"
 #include "third_party/blink/renderer/platform/heap/handle.h"
-#include "third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h"
 #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
 
 namespace blink {
@@ -136,7 +136,7 @@
   bool stopping_;
   HeapVector<Member<SpeechRecognitionResult>> final_results_;
   mojo::Receiver<mojom::blink::SpeechRecognitionSessionClient> receiver_;
-  RevocableInterfacePtr<mojom::blink::SpeechRecognitionSession> session_;
+  mojo::Remote<mojom::blink::SpeechRecognitionSession> session_;
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/webdatabase/sqlite/sandboxed_vfs_file.cc b/third_party/blink/renderer/modules/webdatabase/sqlite/sandboxed_vfs_file.cc
index 2762ed8..afc4438 100644
--- a/third_party/blink/renderer/modules/webdatabase/sqlite/sandboxed_vfs_file.cc
+++ b/third_party/blink/renderer/modules/webdatabase/sqlite/sandboxed_vfs_file.cc
@@ -146,6 +146,7 @@
 
 int SandboxedVfsFile::Close() {
   file_.Close();
+  delete this;
   return SQLITE_OK;
 }
 
diff --git a/third_party/blink/renderer/modules/webgpu/dawn_conversions.cc b/third_party/blink/renderer/modules/webgpu/dawn_conversions.cc
index 2728d91..b6a167c 100644
--- a/third_party/blink/renderer/modules/webgpu/dawn_conversions.cc
+++ b/third_party/blink/renderer/modules/webgpu/dawn_conversions.cc
@@ -9,7 +9,7 @@
 #include "third_party/blink/renderer/bindings/modules/v8/double_sequence_or_gpu_color_dict.h"
 #include "third_party/blink/renderer/bindings/modules/v8/unsigned_long_sequence_or_gpu_extent_3d_dict.h"
 #include "third_party/blink/renderer/bindings/modules/v8/unsigned_long_sequence_or_gpu_origin_3d_dict.h"
-#include "third_party/blink/renderer/modules/webgpu/gpu_pipeline_stage_descriptor.h"
+#include "third_party/blink/renderer/modules/webgpu/gpu_programmable_stage_descriptor.h"
 #include "third_party/blink/renderer/modules/webgpu/gpu_shader_module.h"
 #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
 
@@ -698,8 +698,8 @@
   return dawn_origin;
 }
 
-OwnedPipelineStageDescriptor AsDawnType(
-    const GPUPipelineStageDescriptor* webgpu_stage) {
+OwnedProgrammableStageDescriptor AsDawnType(
+    const GPUProgrammableStageDescriptor* webgpu_stage) {
   DCHECK(webgpu_stage);
 
   std::string entry_point = webgpu_stage->entryPoint().Ascii();
diff --git a/third_party/blink/renderer/modules/webgpu/dawn_conversions.h b/third_party/blink/renderer/modules/webgpu/dawn_conversions.h
index bffacb6..e6592f7 100644
--- a/third_party/blink/renderer/modules/webgpu/dawn_conversions.h
+++ b/third_party/blink/renderer/modules/webgpu/dawn_conversions.h
@@ -21,7 +21,7 @@
 
 class DoubleSequenceOrGPUColorDict;
 class GPUColorDict;
-class GPUPipelineStageDescriptor;
+class GPUProgrammableStageDescriptor;
 class UnsignedLongSequenceOrGPUExtent3DDict;
 class UnsignedLongSequenceOrGPUOrigin3DDict;
 
@@ -44,9 +44,10 @@
 DawnExtent3D AsDawnType(const UnsignedLongSequenceOrGPUExtent3DDict*);
 DawnOrigin3D AsDawnType(const UnsignedLongSequenceOrGPUOrigin3DDict*);
 
-using OwnedPipelineStageDescriptor =
+using OwnedProgrammableStageDescriptor =
     std::tuple<DawnPipelineStageDescriptor, std::unique_ptr<char[]>>;
-OwnedPipelineStageDescriptor AsDawnType(const GPUPipelineStageDescriptor*);
+OwnedProgrammableStageDescriptor AsDawnType(
+    const GPUProgrammableStageDescriptor*);
 
 // WebGPU objects are converted to Dawn objects by getting the opaque handle
 // which can be passed to Dawn.
diff --git a/third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline.cc b/third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline.cc
index e622ba54..4da7c3c 100644
--- a/third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline.cc
+++ b/third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline.cc
@@ -8,7 +8,7 @@
 #include "third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline_descriptor.h"
 #include "third_party/blink/renderer/modules/webgpu/gpu_device.h"
 #include "third_party/blink/renderer/modules/webgpu/gpu_pipeline_layout.h"
-#include "third_party/blink/renderer/modules/webgpu/gpu_pipeline_stage_descriptor.h"
+#include "third_party/blink/renderer/modules/webgpu/gpu_programmable_stage_descriptor.h"
 #include "third_party/blink/renderer/modules/webgpu/gpu_shader_module.h"
 
 namespace blink {
diff --git a/third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline_descriptor.idl b/third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline_descriptor.idl
index aefb71c1..6d6d8fd2 100644
--- a/third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline_descriptor.idl
+++ b/third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline_descriptor.idl
@@ -5,5 +5,5 @@
 // https://gpuweb.github.io/gpuweb/
 
 dictionary GPUComputePipelineDescriptor : GPUPipelineDescriptorBase {
-    required GPUPipelineStageDescriptor computeStage;
+    required GPUProgrammableStageDescriptor computeStage;
 };
diff --git a/third_party/blink/renderer/modules/webgpu/gpu_pipeline_stage_descriptor.idl b/third_party/blink/renderer/modules/webgpu/gpu_programmable_stage_descriptor.idl
similarity index 86%
rename from third_party/blink/renderer/modules/webgpu/gpu_pipeline_stage_descriptor.idl
rename to third_party/blink/renderer/modules/webgpu/gpu_programmable_stage_descriptor.idl
index dc75910..a2cdfd8 100644
--- a/third_party/blink/renderer/modules/webgpu/gpu_pipeline_stage_descriptor.idl
+++ b/third_party/blink/renderer/modules/webgpu/gpu_programmable_stage_descriptor.idl
@@ -4,7 +4,7 @@
 
 // https://gpuweb.github.io/gpuweb/
 
-dictionary GPUPipelineStageDescriptor {
+dictionary GPUProgrammableStageDescriptor {
     required GPUShaderModule module;
     required DOMString entryPoint;
 };
diff --git a/third_party/blink/renderer/modules/webgpu/gpu_render_pipeline.cc b/third_party/blink/renderer/modules/webgpu/gpu_render_pipeline.cc
index e59094d..658342c 100644
--- a/third_party/blink/renderer/modules/webgpu/gpu_render_pipeline.cc
+++ b/third_party/blink/renderer/modules/webgpu/gpu_render_pipeline.cc
@@ -215,10 +215,10 @@
     dawn_desc.label = webgpu_desc->label().Utf8().data();
   }
 
-  OwnedPipelineStageDescriptor vertex_stage_info =
+  OwnedProgrammableStageDescriptor vertex_stage_info =
       AsDawnType(webgpu_desc->vertexStage());
   dawn_desc.vertexStage = std::get<0>(vertex_stage_info);
-  OwnedPipelineStageDescriptor fragment_stage_info;
+  OwnedProgrammableStageDescriptor fragment_stage_info;
   if (webgpu_desc->hasFragmentStage()) {
     fragment_stage_info = AsDawnType(webgpu_desc->fragmentStage());
     dawn_desc.fragmentStage = &std::get<0>(fragment_stage_info);
diff --git a/third_party/blink/renderer/modules/webgpu/gpu_render_pipeline_descriptor.idl b/third_party/blink/renderer/modules/webgpu/gpu_render_pipeline_descriptor.idl
index 6541fca..0017094 100644
--- a/third_party/blink/renderer/modules/webgpu/gpu_render_pipeline_descriptor.idl
+++ b/third_party/blink/renderer/modules/webgpu/gpu_render_pipeline_descriptor.idl
@@ -5,8 +5,8 @@
 // https://gpuweb.github.io/gpuweb/
 
 dictionary GPURenderPipelineDescriptor : GPUPipelineDescriptorBase {
-    required GPUPipelineStageDescriptor vertexStage;
-    GPUPipelineStageDescriptor fragmentStage;
+    required GPUProgrammableStageDescriptor vertexStage;
+    GPUProgrammableStageDescriptor fragmentStage;
 
     required GPUPrimitiveTopology primitiveTopology;
     GPURasterizationStateDescriptor rasterizationState = {};
diff --git a/third_party/blink/renderer/modules/webgpu/gpu_vertex_buffer_descriptor.idl b/third_party/blink/renderer/modules/webgpu/gpu_vertex_buffer_descriptor.idl
index b6ab191..a696790 100644
--- a/third_party/blink/renderer/modules/webgpu/gpu_vertex_buffer_descriptor.idl
+++ b/third_party/blink/renderer/modules/webgpu/gpu_vertex_buffer_descriptor.idl
@@ -5,7 +5,7 @@
 // https://gpuweb.github.io/gpuweb/
 
 dictionary GPUVertexBufferDescriptor {
-    required unsigned long long stride;
+    required GPUBufferSize stride;
     GPUInputStepMode stepMode = "vertex";
     required sequence<GPUVertexAttributeDescriptor> attributeSet;
 };
diff --git a/third_party/blink/renderer/modules/xr/BUILD.gn b/third_party/blink/renderer/modules/xr/BUILD.gn
index d6dfe72..ac6f487 100644
--- a/third_party/blink/renderer/modules/xr/BUILD.gn
+++ b/third_party/blink/renderer/modules/xr/BUILD.gn
@@ -44,6 +44,8 @@
     "xr_input_source_event.h",
     "xr_input_sources_change_event.cc",
     "xr_input_sources_change_event.h",
+    "xr_native_origin_information.cc",
+    "xr_native_origin_information.h",
     "xr_object_space.h",
     "xr_plane.cc",
     "xr_plane.h",
diff --git a/third_party/blink/renderer/modules/xr/xr_anchor.cc b/third_party/blink/renderer/modules/xr/xr_anchor.cc
index d3b6f7ab..d8fde7a6 100644
--- a/third_party/blink/renderer/modules/xr/xr_anchor.cc
+++ b/third_party/blink/renderer/modules/xr/xr_anchor.cc
@@ -32,6 +32,10 @@
   }
 }
 
+uint32_t XRAnchor::id() const {
+  return id_;
+}
+
 XRSpace* XRAnchor::anchorSpace() const {
   if (!anchor_data_) {
     return nullptr;
diff --git a/third_party/blink/renderer/modules/xr/xr_anchor.h b/third_party/blink/renderer/modules/xr/xr_anchor.h
index 1fcb6373..4848022 100644
--- a/third_party/blink/renderer/modules/xr/xr_anchor.h
+++ b/third_party/blink/renderer/modules/xr/xr_anchor.h
@@ -28,6 +28,8 @@
            const device::mojom::blink::XRAnchorDataPtr& anchor_data,
            double timestamp);
 
+  uint32_t id() const;
+
   XRSpace* anchorSpace() const;
 
   TransformationMatrix poseMatrix() const;
diff --git a/third_party/blink/renderer/modules/xr/xr_bounded_reference_space.cc b/third_party/blink/renderer/modules/xr/xr_bounded_reference_space.cc
index 53535be3..e5a389a 100644
--- a/third_party/blink/renderer/modules/xr/xr_bounded_reference_space.cc
+++ b/third_party/blink/renderer/modules/xr/xr_bounded_reference_space.cc
@@ -111,6 +111,11 @@
   return bounds_geometry_;
 }
 
+base::Optional<XRNativeOriginInformation>
+XRBoundedReferenceSpace::NativeOrigin() const {
+  return XRNativeOriginInformation::Create(this);
+}
+
 void XRBoundedReferenceSpace::Trace(blink::Visitor* visitor) {
   visitor->Trace(bounds_geometry_);
   XRReferenceSpace::Trace(visitor);
diff --git a/third_party/blink/renderer/modules/xr/xr_bounded_reference_space.h b/third_party/blink/renderer/modules/xr/xr_bounded_reference_space.h
index 68054b6..8f871b2a9 100644
--- a/third_party/blink/renderer/modules/xr/xr_bounded_reference_space.h
+++ b/third_party/blink/renderer/modules/xr/xr_bounded_reference_space.h
@@ -25,6 +25,8 @@
 
   HeapVector<Member<DOMPointReadOnly>> boundsGeometry();
 
+  base::Optional<XRNativeOriginInformation> NativeOrigin() const override;
+
   void Trace(blink::Visitor*) override;
 
   void OnReset() override;
diff --git a/third_party/blink/renderer/modules/xr/xr_canvas_input_provider.cc b/third_party/blink/renderer/modules/xr/xr_canvas_input_provider.cc
index 65e1954..e40a41f 100644
--- a/third_party/blink/renderer/modules/xr/xr_canvas_input_provider.cc
+++ b/third_party/blink/renderer/modules/xr/xr_canvas_input_provider.cc
@@ -55,8 +55,7 @@
   canvas->addEventListener(event_type_names::kPointercancel, listener_);
 }
 
-XRCanvasInputProvider::~XRCanvasInputProvider() {
-}
+XRCanvasInputProvider::~XRCanvasInputProvider() {}
 
 void XRCanvasInputProvider::Stop() {
   if (!listener_) {
diff --git a/third_party/blink/renderer/modules/xr/xr_frame.cc b/third_party/blink/renderer/modules/xr/xr_frame.cc
index ca85f62..c8a138d 100644
--- a/third_party/blink/renderer/modules/xr/xr_frame.cc
+++ b/third_party/blink/renderer/modules/xr/xr_frame.cc
@@ -5,6 +5,7 @@
 #include "third_party/blink/renderer/modules/xr/xr_frame.h"
 
 #include "third_party/blink/renderer/core/dom/dom_exception.h"
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_source.h"
 #include "third_party/blink/renderer/modules/xr/xr_input_source.h"
 #include "third_party/blink/renderer/modules/xr/xr_reference_space.h"
 #include "third_party/blink/renderer/modules/xr/xr_session.h"
@@ -131,9 +132,10 @@
 }
 
 HeapVector<Member<XRHitTestResult>> XRFrame::getHitTestResults(
-    XRHitTestSource* hitTestSource,
-    XRSpace* relativeTo) {
-  return {};
+    XRHitTestSource* hit_test_source) {
+  if (!session_->ValidateHitTestSourceExists(hit_test_source))
+    return {};
+  return hit_test_source->Results();
 }
 
 void XRFrame::Trace(blink::Visitor* visitor) {
diff --git a/third_party/blink/renderer/modules/xr/xr_frame.h b/third_party/blink/renderer/modules/xr/xr_frame.h
index 36c0b11..30186c9 100644
--- a/third_party/blink/renderer/modules/xr/xr_frame.h
+++ b/third_party/blink/renderer/modules/xr/xr_frame.h
@@ -52,8 +52,7 @@
   }
 
   HeapVector<Member<XRHitTestResult>> getHitTestResults(
-      XRHitTestSource* hitTestSource,
-      XRSpace* relativeTo);
+      XRHitTestSource* hit_test_source);
 
   bool EmulatedPosition() const { return emulated_position_; }
 
diff --git a/third_party/blink/renderer/modules/xr/xr_frame.idl b/third_party/blink/renderer/modules/xr/xr_frame.idl
index 53851b1..90ed5d2 100644
--- a/third_party/blink/renderer/modules/xr/xr_frame.idl
+++ b/third_party/blink/renderer/modules/xr/xr_frame.idl
@@ -19,5 +19,5 @@
   [RaisesException] XRViewerPose? getViewerPose(XRReferenceSpace referenceSpace);
   [RaisesException] XRPose? getPose(XRSpace space, XRSpace relativeTo);
 
-  [RuntimeEnabled=WebXRHitTest] FrozenArray<XRHitTestResult> getHitTestResults(XRHitTestSource hitTestSource, [DefaultValue=Undefined] optional XRSpace relativeTo);
+  [RuntimeEnabled=WebXRHitTest] FrozenArray<XRHitTestResult> getHitTestResults(XRHitTestSource hitTestSource);
 };
diff --git a/third_party/blink/renderer/modules/xr/xr_grip_space.cc b/third_party/blink/renderer/modules/xr/xr_grip_space.cc
index 14a5f664..0eb6ff3e 100644
--- a/third_party/blink/renderer/modules/xr/xr_grip_space.cc
+++ b/third_party/blink/renderer/modules/xr/xr_grip_space.cc
@@ -47,6 +47,10 @@
                                       input_source_->emulatedPosition());
 }
 
+base::Optional<XRNativeOriginInformation> XRGripSpace::NativeOrigin() const {
+  return input_source_->nativeOrigin();
+}
+
 void XRGripSpace::Trace(blink::Visitor* visitor) {
   visitor->Trace(input_source_);
   XRSpace::Trace(visitor);
diff --git a/third_party/blink/renderer/modules/xr/xr_grip_space.h b/third_party/blink/renderer/modules/xr/xr_grip_space.h
index f24ad46f..0ffa42e6 100644
--- a/third_party/blink/renderer/modules/xr/xr_grip_space.h
+++ b/third_party/blink/renderer/modules/xr/xr_grip_space.h
@@ -13,10 +13,12 @@
 
 class XRGripSpace : public XRSpace {
  public:
-  XRGripSpace(XRSession*, XRInputSource*);
+  XRGripSpace(XRSession* session, XRInputSource* input_source);
   XRPose* getPose(XRSpace* other_space,
                   const TransformationMatrix* base_pose_matrix) override;
 
+  base::Optional<XRNativeOriginInformation> NativeOrigin() const override;
+
   void Trace(blink::Visitor*) override;
 
  private:
diff --git a/third_party/blink/renderer/modules/xr/xr_hit_test_options.cc b/third_party/blink/renderer/modules/xr/xr_hit_test_options.cc
index 90e870a..907b407 100644
--- a/third_party/blink/renderer/modules/xr/xr_hit_test_options.cc
+++ b/third_party/blink/renderer/modules/xr/xr_hit_test_options.cc
@@ -2,16 +2,39 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "xr_hit_test_options.h"
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_options.h"
+
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_options_init.h"
+#include "third_party/blink/renderer/modules/xr/xr_ray.h"
+#include "third_party/blink/renderer/modules/xr/xr_space.h"
 
 namespace blink {
 
+XRHitTestOptions::XRHitTestOptions(XRHitTestOptionsInit* options_init) {
+  DCHECK(options_init);
+  DCHECK(options_init->hasSpace());  // Is it enforced by generated bindings?
+
+  space_ = options_init->space();
+
+  if (options_init->hasOffsetRay()) {
+    ray_ = options_init->offsetRay();
+  } else {
+    ray_ = MakeGarbageCollected<XRRay>();
+  }
+}
+
+void XRHitTestOptions::Trace(blink::Visitor* visitor) {
+  visitor->Trace(space_);
+  visitor->Trace(ray_);
+  ScriptWrappable::Trace(visitor);
+}
+
 XRSpace* XRHitTestOptions::space() const {
-  return nullptr;
+  return space_;
 }
 
 XRRay* XRHitTestOptions::offsetRay() const {
-  return nullptr;
+  return ray_;
 }
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/xr/xr_hit_test_options.h b/third_party/blink/renderer/modules/xr/xr_hit_test_options.h
index 1c83d5e..0c671b1 100644
--- a/third_party/blink/renderer/modules/xr/xr_hit_test_options.h
+++ b/third_party/blink/renderer/modules/xr/xr_hit_test_options.h
@@ -11,13 +11,22 @@
 
 class XRRay;
 class XRSpace;
+class XRHitTestOptionsInit;
 
 class XRHitTestOptions : public ScriptWrappable {
   DEFINE_WRAPPERTYPEINFO();
 
  public:
+  explicit XRHitTestOptions(XRHitTestOptionsInit* options_init);
+
   XRSpace* space() const;
   XRRay* offsetRay() const;
+
+  void Trace(blink::Visitor* visitor) override;
+
+ private:
+  Member<XRSpace> space_;
+  Member<XRRay> ray_;
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/xr/xr_hit_test_result.cc b/third_party/blink/renderer/modules/xr/xr_hit_test_result.cc
index da4a2a0..dd3bc4c2 100644
--- a/third_party/blink/renderer/modules/xr/xr_hit_test_result.cc
+++ b/third_party/blink/renderer/modules/xr/xr_hit_test_result.cc
@@ -2,16 +2,41 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "xr_hit_test_result.h"
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_result.h"
+
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_source.h"
+#include "third_party/blink/renderer/modules/xr/xr_pose.h"
+#include "third_party/blink/renderer/modules/xr/xr_space.h"
 
 namespace blink {
 
+XRHitTestResult::XRHitTestResult(XRHitTestSource* hit_test_source,
+                                 const TransformationMatrix& pose)
+    : hit_test_source_(hit_test_source),
+      pose_(std::make_unique<TransformationMatrix>(pose)) {}
+
 XRHitTestOptions* XRHitTestResult::hitTestOptions() const {
-  return nullptr;
+  return hit_test_source_->hitTestOptions();
 }
 
-XRRigidTransform* XRHitTestResult::transform() const {
-  return nullptr;
+XRPose* XRHitTestResult::getPose(XRSpace* relative_to) {
+  DCHECK(relative_to->MojoFromSpace());
+
+  auto mojo_from_this = *pose_;
+
+  auto mojo_from_other = *relative_to->MojoFromSpace();
+  DCHECK(mojo_from_other.IsInvertible());
+
+  auto other_from_mojo = mojo_from_other.Inverse();
+
+  auto other_from_this = other_from_mojo * mojo_from_this;
+
+  return MakeGarbageCollected<XRPose>(other_from_this, false);
+}
+
+void XRHitTestResult::Trace(blink::Visitor* visitor) {
+  visitor->Trace(hit_test_source_);
+  ScriptWrappable::Trace(visitor);
 }
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/xr/xr_hit_test_result.h b/third_party/blink/renderer/modules/xr/xr_hit_test_result.h
index f1c96dc..37526c0 100644
--- a/third_party/blink/renderer/modules/xr/xr_hit_test_result.h
+++ b/third_party/blink/renderer/modules/xr/xr_hit_test_result.h
@@ -9,15 +9,28 @@
 
 namespace blink {
 
+class TransformationMatrix;
 class XRHitTestOptions;
-class XRRigidTransform;
+class XRHitTestSource;
+class XRPose;
+class XRSpace;
 
 class XRHitTestResult : public ScriptWrappable {
   DEFINE_WRAPPERTYPEINFO();
 
  public:
+  XRHitTestResult(XRHitTestSource* hit_test_source,
+                  const TransformationMatrix& pose);
+
   XRHitTestOptions* hitTestOptions() const;
-  XRRigidTransform* transform() const;
+
+  XRPose* getPose(XRSpace* relative_to);
+
+  void Trace(blink::Visitor* visitor) override;
+
+ private:
+  Member<XRHitTestSource> hit_test_source_;
+  std::unique_ptr<TransformationMatrix> pose_;
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/xr/xr_hit_test_result.idl b/third_party/blink/renderer/modules/xr/xr_hit_test_result.idl
index f286d65..7c3cd75e 100644
--- a/third_party/blink/renderer/modules/xr/xr_hit_test_result.idl
+++ b/third_party/blink/renderer/modules/xr/xr_hit_test_result.idl
@@ -5,5 +5,6 @@
 [SecureContext, Exposed=Window, RuntimeEnabled=WebXRHitTest]
 interface XRHitTestResult {
   readonly attribute XRHitTestOptions hitTestOptions;
-  readonly attribute XRRigidTransform transform;
+
+   XRPose? getPose(XRSpace relative_to);
 };
diff --git a/third_party/blink/renderer/modules/xr/xr_hit_test_source.cc b/third_party/blink/renderer/modules/xr/xr_hit_test_source.cc
index 1fe50a9..b3d8da4 100644
--- a/third_party/blink/renderer/modules/xr/xr_hit_test_source.cc
+++ b/third_party/blink/renderer/modules/xr/xr_hit_test_source.cc
@@ -2,12 +2,47 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "xr_hit_test_source.h"
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_source.h"
+
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_options.h"
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_result.h"
 
 namespace blink {
 
+XRHitTestSource::XRHitTestSource(uint32_t id, XRHitTestOptions* options)
+    : id_(id), options_(options) {}
+
+uint32_t XRHitTestSource::id() const {
+  return id_;
+}
+
 XRHitTestOptions* XRHitTestSource::hitTestOptions() const {
-  return nullptr;
+  return options_;
+}
+
+HeapVector<Member<XRHitTestResult>> XRHitTestSource::Results() {
+  HeapVector<Member<XRHitTestResult>> results;
+
+  for (const auto& result : last_frame_results_) {
+    results.emplace_back(MakeGarbageCollected<XRHitTestResult>(this, *result));
+  }
+
+  return results;
+}
+
+void XRHitTestSource::Update(
+    const WTF::Vector<device::mojom::blink::XRHitResultPtr>& hit_test_results) {
+  last_frame_results_.clear();
+
+  for (auto& result : hit_test_results) {
+    last_frame_results_.push_back(
+        std::make_unique<TransformationMatrix>(result->hit_matrix.matrix()));
+  }
+}
+
+void XRHitTestSource::Trace(blink::Visitor* visitor) {
+  visitor->Trace(options_);
+  ScriptWrappable::Trace(visitor);
 }
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/xr/xr_hit_test_source.h b/third_party/blink/renderer/modules/xr/xr_hit_test_source.h
index 2c7f2da..9dad80a 100644
--- a/third_party/blink/renderer/modules/xr/xr_hit_test_source.h
+++ b/third_party/blink/renderer/modules/xr/xr_hit_test_source.h
@@ -5,17 +5,43 @@
 #ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_XR_XR_HIT_TEST_SOURCE_H_
 #define THIRD_PARTY_BLINK_RENDERER_MODULES_XR_XR_HIT_TEST_SOURCE_H_
 
+#include <memory>
+
 #include "third_party/blink/renderer/platform/bindings/script_wrappable.h"
 
+#include "device/vr/public/mojom/vr_service.mojom-blink.h"
+#include "third_party/blink/renderer/platform/transforms/transformation_matrix.h"
+
 namespace blink {
 
 class XRHitTestOptions;
+class XRHitTestResult;
 
 class XRHitTestSource : public ScriptWrappable {
   DEFINE_WRAPPERTYPEINFO();
 
  public:
+  XRHitTestSource(uint32_t id, XRHitTestOptions* options);
+
+  uint32_t id() const;
+
   XRHitTestOptions* hitTestOptions() const;
+
+  // Returns a vector of XRHitTestResults that were obtained during last frame
+  // update. This method is not exposed to JavaScript.
+  HeapVector<Member<XRHitTestResult>> Results();
+
+  void Update(const WTF::Vector<device::mojom::blink::XRHitResultPtr>&
+                  hit_test_results);
+
+  void Trace(blink::Visitor*) override;
+
+ private:
+  const uint32_t id_;
+
+  Member<XRHitTestOptions> options_;
+
+  Vector<std::unique_ptr<TransformationMatrix>> last_frame_results_;
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/xr/xr_input_source.cc b/third_party/blink/renderer/modules/xr/xr_input_source.cc
index 7ed6f5b..66154cd 100644
--- a/third_party/blink/renderer/modules/xr/xr_input_source.cc
+++ b/third_party/blink/renderer/modules/xr/xr_input_source.cc
@@ -211,6 +211,10 @@
   }
 }
 
+base::Optional<XRNativeOriginInformation> XRInputSource::nativeOrigin() const {
+  return XRNativeOriginInformation::Create(this);
+}
+
 void XRInputSource::OnSelectStart() {
   // Discard duplicate events and ones after the session has ended.
   if (state_.primary_input_pressed || session_->ended())
diff --git a/third_party/blink/renderer/modules/xr/xr_input_source.h b/third_party/blink/renderer/modules/xr/xr_input_source.h
index c496b94..c05bac0 100644
--- a/third_party/blink/renderer/modules/xr/xr_input_source.h
+++ b/third_party/blink/renderer/modules/xr/xr_input_source.h
@@ -7,6 +7,7 @@
 
 #include "device/vr/public/mojom/vr_service.mojom-blink.h"
 #include "third_party/blink/renderer/modules/gamepad/gamepad.h"
+#include "third_party/blink/renderer/modules/xr/xr_native_origin_information.h"
 #include "third_party/blink/renderer/platform/bindings/script_wrappable.h"
 #include "third_party/blink/renderer/platform/heap/handle.h"
 #include "third_party/blink/renderer/platform/transforms/transformation_matrix.h"
@@ -81,6 +82,8 @@
     return input_from_pointer_.get();
   }
 
+  base::Optional<XRNativeOriginInformation> nativeOrigin() const;
+
   void OnSelectStart();
   void OnSelectEnd(UserActivation user_activation);
   void OnSelect();
diff --git a/third_party/blink/renderer/modules/xr/xr_native_origin_information.cc b/third_party/blink/renderer/modules/xr/xr_native_origin_information.cc
new file mode 100644
index 0000000..775a4c6
--- /dev/null
+++ b/third_party/blink/renderer/modules/xr/xr_native_origin_information.cc
@@ -0,0 +1,44 @@
+// Copyright 2019 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/modules/xr/xr_native_origin_information.h"
+
+#include "third_party/blink/renderer/modules/xr/type_converters.h"
+#include "third_party/blink/renderer/modules/xr/xr_anchor.h"
+#include "third_party/blink/renderer/modules/xr/xr_input_source.h"
+#include "third_party/blink/renderer/modules/xr/xr_plane.h"
+#include "third_party/blink/renderer/modules/xr/xr_reference_space.h"
+
+namespace blink {
+
+base::Optional<XRNativeOriginInformation> XRNativeOriginInformation::Create(
+    const XRAnchor* anchor) {
+  DCHECK(anchor);
+  return XRNativeOriginInformation(Type::Anchor, anchor->id());
+}
+
+base::Optional<XRNativeOriginInformation> XRNativeOriginInformation::Create(
+    const XRInputSource* input_source) {
+  DCHECK(input_source);
+  return XRNativeOriginInformation(Type::InputSource,
+                                   input_source->source_id());
+}
+
+base::Optional<XRNativeOriginInformation> XRNativeOriginInformation::Create(
+    const XRPlane* plane) {
+  DCHECK(plane);
+  return XRNativeOriginInformation(Type::Plane, plane->id());
+}
+
+base::Optional<XRNativeOriginInformation> XRNativeOriginInformation::Create(
+    const XRReferenceSpace* reference_space) {
+  DCHECK(reference_space);
+  // TODO(https://crbug.com/997369): Implement once mojo changes land.
+  return base::nullopt;
+}
+
+XRNativeOriginInformation::XRNativeOriginInformation(Type type, uint32_t id)
+    : id_(id) {}
+
+}  // namespace blink
diff --git a/third_party/blink/renderer/modules/xr/xr_native_origin_information.h b/third_party/blink/renderer/modules/xr/xr_native_origin_information.h
new file mode 100644
index 0000000..899556e
--- /dev/null
+++ b/third_party/blink/renderer/modules/xr/xr_native_origin_information.h
@@ -0,0 +1,47 @@
+// Copyright 2019 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_MODULES_XR_XR_NATIVE_ORIGIN_INFORMATION_H_
+#define THIRD_PARTY_BLINK_RENDERER_MODULES_XR_XR_NATIVE_ORIGIN_INFORMATION_H_
+
+#include <cstdint>
+
+#include "device/vr/public/mojom/vr_service.mojom-blink.h"
+
+namespace blink {
+
+class XRAnchor;
+class XRInputSource;
+class XRPlane;
+class XRReferenceSpace;
+
+class XRNativeOriginInformation {
+ public:
+  XRNativeOriginInformation(XRNativeOriginInformation&& other) = default;
+
+  static base::Optional<XRNativeOriginInformation> Create(
+      const XRAnchor* anchor);
+  static base::Optional<XRNativeOriginInformation> Create(
+      const XRInputSource* input_source);
+  static base::Optional<XRNativeOriginInformation> Create(const XRPlane* plane);
+  static base::Optional<XRNativeOriginInformation> Create(
+      const XRReferenceSpace* reference_space);
+
+ private:
+  enum class Type : int32_t { ReferenceSpace, InputSource, Anchor, Plane };
+
+  XRNativeOriginInformation() = delete;
+  XRNativeOriginInformation(const XRNativeOriginInformation& other) = delete;
+  void operator=(const XRNativeOriginInformation& other) = delete;
+
+  XRNativeOriginInformation(Type type, uint32_t id);
+
+  // TODO(https://crbug.com/997369): Add reference space category to the union
+  // once mojo changes land.
+  const union { uint32_t id_; };
+};
+
+}  // namespace blink
+
+#endif  // THIRD_PARTY_BLINK_RENDERER_MODULES_XR_XR_NATIVE_ORIGIN_INFORMATION_H_
diff --git a/third_party/blink/renderer/modules/xr/xr_object_space.h b/third_party/blink/renderer/modules/xr/xr_object_space.h
index c774488..a35b689 100644
--- a/third_party/blink/renderer/modules/xr/xr_object_space.h
+++ b/third_party/blink/renderer/modules/xr/xr_object_space.h
@@ -31,6 +31,10 @@
     return std::make_unique<TransformationMatrix>(object_from_mojo.Inverse());
   }
 
+  base::Optional<XRNativeOriginInformation> NativeOrigin() const override {
+    return XRNativeOriginInformation::Create(object_);
+  }
+
   void Trace(blink::Visitor* visitor) override {
     visitor->Trace(object_);
     XRSpace::Trace(visitor);
diff --git a/third_party/blink/renderer/modules/xr/xr_ray.cc b/third_party/blink/renderer/modules/xr/xr_ray.cc
index 9e695382..17139f4 100644
--- a/third_party/blink/renderer/modules/xr/xr_ray.cc
+++ b/third_party/blink/renderer/modules/xr/xr_ray.cc
@@ -13,13 +13,17 @@
 #include "third_party/blink/renderer/modules/xr/xr_rigid_transform.h"
 #include "third_party/blink/renderer/modules/xr/xr_utils.h"
 #include "third_party/blink/renderer/platform/bindings/exception_state.h"
-#include "third_party/blink/renderer/platform/transforms/transformation_matrix.h"
 #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
 #include "ui/gfx/geometry/quaternion.h"
 #include "ui/gfx/geometry/vector3d_f.h"
 
 namespace blink {
 
+XRRay::XRRay() {
+  origin_ = DOMPointReadOnly::Create(0.0, 0.0, 0.0, 1.0);
+  direction_ = DOMPointReadOnly::Create(0.0, 0.0, -1.0, 0.0);
+}
+
 XRRay::XRRay(const TransformationMatrix& matrix,
              ExceptionState& exception_state) {
   Set(matrix, exception_state);
@@ -60,7 +64,8 @@
 }
 
 // Sets member variables from passed in |origin| and |direction|.
-// All constructors eventually invoke this method.
+// All constructors with the exception of default constructor eventually invoke
+// this method.
 // If the |direction|'s length is 0, this method will initialize direction to
 // default vector (0, 0, -1).
 void XRRay::Set(FloatPoint3D origin,
@@ -184,12 +189,25 @@
     // onto translation (i.e. translation * rotation) in column-vector notation.
     // Step 8: Set ray’s internal matrix to matrix
     matrix_ = transformationMatrixToDOMFloat32Array(matrix);
+    if (!raw_matrix_) {
+      raw_matrix_ = std::make_unique<TransformationMatrix>(matrix);
+    } else {
+      *raw_matrix_ = matrix;
+    }
   }
 
   // Step 9: Return matrix
   return matrix_;
 }
 
+TransformationMatrix XRRay::RawMatrix() {
+  matrix();
+
+  DCHECK(raw_matrix_);
+
+  return *raw_matrix_;
+}
+
 void XRRay::Trace(blink::Visitor* visitor) {
   visitor->Trace(origin_);
   visitor->Trace(direction_);
diff --git a/third_party/blink/renderer/modules/xr/xr_ray.h b/third_party/blink/renderer/modules/xr/xr_ray.h
index 369fefe..f76b7ac 100644
--- a/third_party/blink/renderer/modules/xr/xr_ray.h
+++ b/third_party/blink/renderer/modules/xr/xr_ray.h
@@ -11,19 +11,20 @@
 #include "third_party/blink/renderer/platform/bindings/script_wrappable.h"
 #include "third_party/blink/renderer/platform/geometry/float_point_3d.h"
 #include "third_party/blink/renderer/platform/heap/member.h"
+#include "third_party/blink/renderer/platform/transforms/transformation_matrix.h"
 
 namespace blink {
 
 class DOMPointInit;
 class DOMPointReadOnly;
 class ExceptionState;
-class TransformationMatrix;
 class XRRigidTransform;
 
 class XRRay final : public ScriptWrappable {
   DEFINE_WRAPPERTYPEINFO();
 
  public:
+  XRRay();
   explicit XRRay(const TransformationMatrix& matrix,
                  ExceptionState& exception_state);
   explicit XRRay(XRRigidTransform* transform, ExceptionState& exception_state);
@@ -36,6 +37,10 @@
   DOMPointReadOnly* direction() const { return direction_; }
   DOMFloat32Array* matrix();
 
+  // Calling |RawMatrix()| is equivalent to calling |matrix()| w.r.t. the data
+  // that will be returned, the only difference is the returned type.
+  TransformationMatrix RawMatrix();
+
   static XRRay* Create(ExceptionState& exception_state);
   static XRRay* Create(DOMPointInit* origin, ExceptionState& exception_state);
   static XRRay* Create(DOMPointInit* origin,
@@ -55,6 +60,7 @@
   Member<DOMPointReadOnly> origin_;
   Member<DOMPointReadOnly> direction_;
   Member<DOMFloat32Array> matrix_;
+  std::unique_ptr<TransformationMatrix> raw_matrix_;
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/xr/xr_reference_space.cc b/third_party/blink/renderer/modules/xr/xr_reference_space.cc
index c1f1fa3..a4b669e 100644
--- a/third_party/blink/renderer/modules/xr/xr_reference_space.cc
+++ b/third_party/blink/renderer/modules/xr/xr_reference_space.cc
@@ -189,6 +189,10 @@
   return origin_offset_->InverseTransformMatrix();
 }
 
+XRReferenceSpace::Type XRReferenceSpace::GetType() const {
+  return type_;
+}
+
 XRReferenceSpace* XRReferenceSpace::getOffsetReferenceSpace(
     XRRigidTransform* additional_offset) {
   auto matrix =
@@ -204,6 +208,11 @@
                                                 type_);
 }
 
+base::Optional<XRNativeOriginInformation> XRReferenceSpace::NativeOrigin()
+    const {
+  return XRNativeOriginInformation::Create(this);
+}
+
 void XRReferenceSpace::Trace(blink::Visitor* visitor) {
   visitor->Trace(origin_offset_);
   XRSpace::Trace(visitor);
diff --git a/third_party/blink/renderer/modules/xr/xr_reference_space.h b/third_party/blink/renderer/modules/xr/xr_reference_space.h
index fec8220..dd112382 100644
--- a/third_party/blink/renderer/modules/xr/xr_reference_space.h
+++ b/third_party/blink/renderer/modules/xr/xr_reference_space.h
@@ -30,8 +30,10 @@
 
   static Type StringToReferenceSpaceType(const String& reference_space_type);
 
-  XRReferenceSpace(XRSession*, Type);
-  XRReferenceSpace(XRSession*, XRRigidTransform*, Type);
+  XRReferenceSpace(XRSession* session, Type type);
+  XRReferenceSpace(XRSession* session,
+                   XRRigidTransform* origin_offset,
+                   Type type);
   ~XRReferenceSpace() override;
 
   XRPose* getPose(XRSpace* other_space,
@@ -50,10 +52,14 @@
   TransformationMatrix OriginOffsetMatrix() override;
   TransformationMatrix InverseOriginOffsetMatrix() override;
 
+  Type GetType() const;
+
   XRReferenceSpace* getOffsetReferenceSpace(XRRigidTransform* transform);
 
   DEFINE_ATTRIBUTE_EVENT_LISTENER(reset, kReset)
 
+  base::Optional<XRNativeOriginInformation> NativeOrigin() const override;
+
   void Trace(blink::Visitor*) override;
 
   virtual void OnReset();
diff --git a/third_party/blink/renderer/modules/xr/xr_session.cc b/third_party/blink/renderer/modules/xr/xr_session.cc
index 57d7eb7..c61b7b89 100644
--- a/third_party/blink/renderer/modules/xr/xr_session.cc
+++ b/third_party/blink/renderer/modules/xr/xr_session.cc
@@ -29,6 +29,8 @@
 #include "third_party/blink/renderer/modules/xr/xr_frame.h"
 #include "third_party/blink/renderer/modules/xr/xr_frame_provider.h"
 #include "third_party/blink/renderer/modules/xr/xr_hit_result.h"
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_options.h"
+#include "third_party/blink/renderer/modules/xr/xr_hit_test_source.h"
 #include "third_party/blink/renderer/modules/xr/xr_input_source_event.h"
 #include "third_party/blink/renderer/modules/xr/xr_input_sources_change_event.h"
 #include "third_party/blink/renderer/modules/xr/xr_plane.h"
@@ -71,8 +73,6 @@
 
 const char kDeviceDisconnected[] = "The XR device has been disconnected.";
 
-const char kNotImplemented[] = "The operation has not been implemented yet.";
-
 const char kNonInvertibleMatrix[] =
     "The operation encountered non-invertible matrix and could not be "
     "completed.";
@@ -81,6 +81,12 @@
     "The operation was unable to decompose a matrix and could not be "
     "completed.";
 
+const char kUnableToRetrieveNativeOrigin[] =
+    "The operation was unable to retrieve the native origin from XRSpace and "
+    "could not be completed.";
+
+const char kHitTestSubscriptionFailed[] = "Hit test subscription failed.";
+
 const double kDegToRad = M_PI / 180.0;
 
 // Indices into the views array.
@@ -496,7 +502,7 @@
 }
 
 int XRSession::requestAnimationFrame(V8XRFrameRequestCallback* callback) {
-  TRACE_EVENT0("gpu", __FUNCTION__);
+  TRACE_EVENT0("gpu", __func__);
   // Don't allow any new frame requests once the session is ended.
   if (ended_)
     return 0;
@@ -526,6 +532,8 @@
                                         XRRay* ray,
                                         XRSpace* space,
                                         ExceptionState& exception_state) {
+  DVLOG(2) << __func__;
+
   if (ended_) {
     exception_state.ThrowDOMException(DOMExceptionCode::kInvalidStateError,
                                       kSessionEnded);
@@ -565,12 +573,63 @@
   return promise;
 }
 
-ScriptPromise XRSession::requestHitTestSource(ScriptState* script_state,
-                                              XRHitTestOptionsInit* options,
-                                              ExceptionState& exception_state) {
-  exception_state.ThrowDOMException(DOMExceptionCode::kInvalidStateError,
-                                    kNotImplemented);
-  return ScriptPromise();
+ScriptPromise XRSession::requestHitTestSource(
+    ScriptState* script_state,
+    XRHitTestOptionsInit* options_init,
+    ExceptionState& exception_state) {
+  DVLOG(2) << __func__;
+
+  DCHECK(options_init);  // is this enforced by generated bindings?
+
+  XRHitTestOptions* options =
+      MakeGarbageCollected<XRHitTestOptions>(options_init);
+
+  // 1. Grab the native origin from the passed in XRSpace.
+  base::Optional<XRNativeOriginInformation> maybe_native_origin =
+      options->space()->NativeOrigin();
+
+  if (!maybe_native_origin) {
+    exception_state.ThrowDOMException(DOMExceptionCode::kInvalidStateError,
+                                      kUnableToRetrieveNativeOrigin);
+    return {};
+  }
+
+  // 2. Convert the XRRay to be expressed in terms of passed in XRSpace. This
+  // should only matter for spaces whose transforms are not fully known on the
+  // device (for example any space containing origin-offset).
+  TransformationMatrix origin_from_space =
+      options->space()->OriginOffsetMatrix();
+
+  DVLOG(3) << __func__
+           << ": origin_from_space = " << origin_from_space.ToString(true);
+
+  // Transformation from passed in pose to |space|.
+  auto space_from_ray = options->offsetRay()->RawMatrix();
+  auto origin_from_ray = origin_from_space * space_from_ray;
+
+  DVLOG(3) << __func__
+           << ": space_from_ray = " << space_from_ray.ToString(true);
+
+  DVLOG(3) << __func__
+           << ": origin_from_ray = " << origin_from_ray.ToString(true);
+
+  device::mojom::blink::XRRayPtr ray_mojo = device::mojom::blink::XRRay::New();
+
+  ray_mojo->origin = WebFloatPoint3D(origin_from_ray.MapPoint({0, 0, 0}));
+
+  // Zero out the translation of origin_from_ray matrix to correctly map a 3D
+  // vector.
+  origin_from_ray.Translate3d(-origin_from_ray.M41(), -origin_from_ray.M42(),
+                              -origin_from_ray.M43());
+
+  auto direction = origin_from_ray.MapPoint({0, 0, -1});
+  ray_mojo->direction = {direction.X(), direction.Y(), direction.Z()};
+
+  // TODO(https://crbug.com/997369): Actually issue a call to the device once
+  // mojo interfaces land.
+  exception_state.ThrowDOMException(DOMExceptionCode::kOperationError,
+                                    kHitTestSubscriptionFailed);
+  return {};
 }
 
 void XRSession::OnHitTestResults(
@@ -631,12 +690,19 @@
     resolver->Reject(MakeGarbageCollected<DOMException>(
         DOMExceptionCode::kInvalidStateError, kDeviceDisconnected));
   }
+
+  HeapHashSet<Member<ScriptPromiseResolver>> request_hit_test_source_promises;
+  request_hit_test_source_promises_.swap(request_hit_test_source_promises);
+  for (ScriptPromiseResolver* resolver : request_hit_test_source_promises) {
+    resolver->Reject(MakeGarbageCollected<DOMException>(
+        DOMExceptionCode::kInvalidStateError, kDeviceDisconnected));
+  }
 }
 
 void XRSession::ProcessAnchorsData(
     const device::mojom::blink::XRAnchorsDataPtr& tracked_anchors_data,
     double timestamp) {
-  TRACE_EVENT0("xr", __FUNCTION__);
+  TRACE_EVENT0("xr", __func__);
 
   if (!tracked_anchors_data) {
     DVLOG(3) << __func__ << ": tracked_anchors_data is null";
@@ -926,15 +992,15 @@
     std::unique_ptr<TransformationMatrix> mojo_from_viewer,
     const device::mojom::blink::XRFrameDataPtr& frame_data,
     bool emulated_position) {
-  TRACE_EVENT0("gpu", __FUNCTION__);
-  DVLOG(2) << __FUNCTION__ << " : frame_data valid? "
+  TRACE_EVENT0("gpu", __func__);
+  DVLOG(2) << __func__ << " : frame_data valid? "
            << (frame_data ? true : false);
   // Don't process any outstanding frames once the session is ended.
   if (ended_)
     return;
 
   mojo_from_viewer_ = std::move(mojo_from_viewer);
-  DVLOG(2) << __FUNCTION__ << " : mojo_from_viewer_ valid? "
+  DVLOG(2) << __func__ << " : mojo_from_viewer_ valid? "
            << (mojo_from_viewer_ ? true : false);
 
   emulated_position_ = emulated_position;
@@ -944,17 +1010,23 @@
     world_information_->ProcessPlaneInformation(
         frame_data->detected_planes_data, timestamp);
     ProcessAnchorsData(frame_data->anchors_data, timestamp);
+    // TODO(https://crbug.com/997369): Implement processing hit test data once
+    // mojo change lands.
+    // ProcessHitTestData(frame_data->hit_test_subscription_results);
   } else {
     world_information_->ProcessPlaneInformation(nullptr, timestamp);
     ProcessAnchorsData(nullptr, timestamp);
+    // TODO(https://crbug.com/997369): Implement processing hit test data once
+    // mojo change lands.
+    // ProcessHitTestData(nullptr);
   }
 }
 
 void XRSession::OnFrame(
     double timestamp,
     const base::Optional<gpu::MailboxHolder>& output_mailbox_holder) {
-  TRACE_EVENT0("gpu", __FUNCTION__);
-  DVLOG(2) << __FUNCTION__;
+  TRACE_EVENT0("gpu", __func__);
+  DVLOG(2) << __func__;
   // Don't process any outstanding frames once the session is ended.
   if (ended_)
     return;
@@ -1080,7 +1152,7 @@
 
   if (orientation) {
     output_angle = orientation->angle();
-    DVLOG(2) << __FUNCTION__ << ": got angle=" << output_angle;
+    DVLOG(2) << __func__ << ": got angle=" << output_angle;
   }
 
   if (render_state_->baseLayer()) {
@@ -1225,6 +1297,21 @@
   }
 }
 
+bool XRSession::ValidateHitTestSourceExists(XRHitTestSource* hit_test_source) {
+  auto it =
+      hit_test_source_ids_to_hit_test_sources_.find(hit_test_source->id());
+  if (it == hit_test_source_ids_to_hit_test_sources_.end()) {
+    return false;
+  }
+
+  if (!it->value) {
+    hit_test_source_ids_to_hit_test_sources_.erase(it);
+    return false;
+  }
+
+  return true;
+}
+
 void XRSession::SetXRDisplayInfo(
     device::mojom::blink::VRDisplayInfoPtr display_info) {
   // We don't necessarily trust the backend to only send us display info changes
@@ -1329,9 +1416,11 @@
   visitor->Trace(callback_collection_);
   visitor->Trace(hit_test_promises_);
   visitor->Trace(create_anchor_promises_);
+  visitor->Trace(request_hit_test_source_promises_);
   visitor->Trace(reference_spaces_);
   visitor->Trace(anchor_ids_to_anchors_);
   visitor->Trace(prev_base_layer_);
+  visitor->Trace(hit_test_source_ids_to_hit_test_sources_);
   EventTargetWithInlineData::Trace(visitor);
 }
 
diff --git a/third_party/blink/renderer/modules/xr/xr_session.h b/third_party/blink/renderer/modules/xr/xr_session.h
index 2aa5680..ed6bd2e0 100644
--- a/third_party/blink/renderer/modules/xr/xr_session.h
+++ b/third_party/blink/renderer/modules/xr/xr_session.h
@@ -37,6 +37,7 @@
 class XRAnchorSet;
 class XRCanvasInputProvider;
 class XRHitTestOptionsInit;
+class XRHitTestSource;
 class XRPlane;
 class XRRay;
 class XRReferenceSpace;
@@ -125,7 +126,7 @@
 
   ScriptPromise requestHitTestSource(ScriptState* script_state,
                                      XRHitTestOptionsInit* options,
-                                     ExceptionState&);
+                                     ExceptionState& exception_state);
 
   ScriptPromise requestHitTest(ScriptState* script_state,
                                XRRay* ray,
@@ -213,6 +214,10 @@
   unsigned int DisplayInfoPtrId() const { return display_info_id_; }
   unsigned int StageParametersId() const { return stage_parameters_id_; }
 
+  // Returns true if the session recognizes passed in hit_test_source as still
+  // existing.
+  bool ValidateHitTestSourceExists(XRHitTestSource* hit_test_source);
+
   void SetXRDisplayInfo(device::mojom::blink::VRDisplayInfoPtr display_info);
 
   bool UsesInputEventing() { return uses_input_eventing_; }
@@ -295,6 +300,14 @@
   bool is_tracked_anchors_null_ = true;
   HeapHashMap<uint32_t, Member<XRAnchor>> anchor_ids_to_anchors_;
 
+  // Mapping of hit test source ids (aka hit test subscription ids) to hit test
+  // sources. Hit test source has to be stored via weak member - JavaScript side
+  // will communicate that it's no longer interested in the subscription by
+  // dropping all its references to the hit test source & we need to make sure
+  // that we don't keep the XRHitTestSources alive.
+  HeapHashMap<uint32_t, WeakMember<XRHitTestSource>>
+      hit_test_source_ids_to_hit_test_sources_;
+
   WTF::Vector<XRViewData> views_;
 
   Member<XRInputSourceArray> input_sources_;
@@ -305,6 +318,9 @@
   HeapHashSet<Member<ScriptPromiseResolver>> hit_test_promises_;
   // Set of promises returned from CreateAnchor that are still in-flight.
   HeapHashSet<Member<ScriptPromiseResolver>> create_anchor_promises_;
+  // Set of promises returned from requestHitTestSource that are still
+  // in-flight.
+  HeapHashSet<Member<ScriptPromiseResolver>> request_hit_test_source_promises_;
   HeapVector<Member<XRReferenceSpace>> reference_spaces_;
 
   bool is_external_ = false;
diff --git a/third_party/blink/renderer/modules/xr/xr_space.cc b/third_party/blink/renderer/modules/xr/xr_space.cc
index 1566125..3908681 100644
--- a/third_party/blink/renderer/modules/xr/xr_space.cc
+++ b/third_party/blink/renderer/modules/xr/xr_space.cc
@@ -114,6 +114,10 @@
   return event_target_names::kXRSpace;
 }
 
+base::Optional<XRNativeOriginInformation> XRSpace::NativeOrigin() const {
+  return base::nullopt;
+}
+
 void XRSpace::Trace(blink::Visitor* visitor) {
   visitor->Trace(session_);
   ScriptWrappable::Trace(visitor);
diff --git a/third_party/blink/renderer/modules/xr/xr_space.h b/third_party/blink/renderer/modules/xr/xr_space.h
index 4c1efd8..1ea887c 100644
--- a/third_party/blink/renderer/modules/xr/xr_space.h
+++ b/third_party/blink/renderer/modules/xr/xr_space.h
@@ -9,6 +9,7 @@
 
 #include "third_party/blink/renderer/core/dom/events/event_target.h"
 #include "third_party/blink/renderer/core/typed_arrays/dom_typed_array.h"
+#include "third_party/blink/renderer/modules/xr/xr_native_origin_information.h"
 #include "third_party/blink/renderer/platform/bindings/script_wrappable.h"
 #include "third_party/blink/renderer/platform/heap/handle.h"
 #include "third_party/blink/renderer/platform/transforms/transformation_matrix.h"
@@ -24,8 +25,10 @@
 class XRSpace : public EventTargetWithInlineData {
   DEFINE_WRAPPERTYPEINFO();
 
+ protected:
+  explicit XRSpace(XRSession* session);
+
  public:
-  explicit XRSpace(XRSession*);
   ~XRSpace() override;
 
   // Gets a default viewer pose appropriate for this space. This is an identity
@@ -74,10 +77,13 @@
   ExecutionContext* GetExecutionContext() const override;
   const AtomicString& InterfaceName() const override;
 
+  // Return origin offset matrix, aka native_origin_from_offset_space.
   virtual TransformationMatrix OriginOffsetMatrix();
   virtual TransformationMatrix InverseOriginOffsetMatrix();
 
-  void Trace(blink::Visitor*) override;
+  virtual base::Optional<XRNativeOriginInformation> NativeOrigin() const = 0;
+
+  void Trace(blink::Visitor* visitor) override;
 
  private:
   const Member<XRSession> session_;
diff --git a/third_party/blink/renderer/modules/xr/xr_target_ray_space.cc b/third_party/blink/renderer/modules/xr/xr_target_ray_space.cc
index c710ca9..90eedcf 100644
--- a/third_party/blink/renderer/modules/xr/xr_target_ray_space.cc
+++ b/third_party/blink/renderer/modules/xr/xr_target_ray_space.cc
@@ -107,6 +107,11 @@
                                       input_source_->emulatedPosition());
 }
 
+base::Optional<XRNativeOriginInformation> XRTargetRaySpace::NativeOrigin()
+    const {
+  return input_source_->nativeOrigin();
+}
+
 void XRTargetRaySpace::Trace(blink::Visitor* visitor) {
   visitor->Trace(input_source_);
   XRSpace::Trace(visitor);
diff --git a/third_party/blink/renderer/modules/xr/xr_target_ray_space.h b/third_party/blink/renderer/modules/xr/xr_target_ray_space.h
index afeafae3..8df09c58 100644
--- a/third_party/blink/renderer/modules/xr/xr_target_ray_space.h
+++ b/third_party/blink/renderer/modules/xr/xr_target_ray_space.h
@@ -13,10 +13,12 @@
 
 class XRTargetRaySpace : public XRSpace {
  public:
-  XRTargetRaySpace(XRSession*, XRInputSource*);
+  XRTargetRaySpace(XRSession* session, XRInputSource* input_space);
   XRPose* getPose(XRSpace* other_space,
                   const TransformationMatrix* base_pose_matrix) override;
 
+  base::Optional<XRNativeOriginInformation> NativeOrigin() const override;
+
   void Trace(blink::Visitor*) override;
 
  private:
diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.cc b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
index 17692db8..cfd7ae6f 100644
--- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
+++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
@@ -64,6 +64,14 @@
   RuntimeEnabledFeatures::SetFeatureEnabledFromString(name, enable);
 }
 
+void WebRuntimeFeatures::EnableForcedColors(bool enable) {
+  RuntimeEnabledFeatures::SetForcedColorsEnabled(enable);
+}
+
+bool WebRuntimeFeatures::IsForcedColorsEnabled() {
+  return RuntimeEnabledFeatures::ForcedColorsEnabled();
+}
+
 void WebRuntimeFeatures::EnableFractionalScrollOffsets(bool enable) {
   RuntimeEnabledFeatures::SetFractionalScrollOffsetsEnabled(enable);
 }
@@ -353,10 +361,6 @@
   RuntimeEnabledFeatures::SetPortalsEnabled(enable);
 }
 
-void WebRuntimeFeatures::EnableRasterInducingScroll(bool enable) {
-  RuntimeEnabledFeatures::SetRasterInducingScrollEnabled(enable);
-}
-
 void WebRuntimeFeatures::EnableScriptedSpeechRecognition(bool enable) {
   RuntimeEnabledFeatures::SetScriptedSpeechRecognitionEnabled(enable);
 }
diff --git a/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.cc b/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.cc
index 0212943..1327546 100644
--- a/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.cc
+++ b/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.cc
@@ -575,9 +575,10 @@
     cc::PaintCanvas* canvas = ResourceProvider()->Canvas();
     last_recording_ = recorder_->finishRecordingAsPicture();
     canvas->drawPicture(last_recording_);
-    if (!resource_host_ || !resource_host_->IsPrinting() ||
+    if (!clear_frame_ || !resource_host_ || !resource_host_->IsPrinting() ||
         !is_deferral_enabled_) {
       last_recording_ = nullptr;
+      clear_frame_ = false;
     }
     ResourceProvider()->FlushSkia();
   }
diff --git a/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.h b/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.h
index 21a4d5fed..8899ed6 100644
--- a/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.h
+++ b/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.h
@@ -172,6 +172,10 @@
 
   sk_sp<cc::PaintRecord> getLastRecord() { return last_recording_; }
 
+  // This is called when the Canvas element has cleared the frame, so the 2D
+  // bridge knows that there's no previous content on the resource.
+  void ClearFrame() { clear_frame_ = true; }
+
  private:
   friend class Canvas2DLayerBridgeTest;
   friend class CanvasRenderingContext2DTest;
@@ -199,6 +203,7 @@
   bool hibernation_scheduled_ = false;
   bool dont_use_idle_scheduling_for_testing_ = false;
   bool context_lost_ = false;
+  bool clear_frame_ = true;
 
   const AccelerationMode acceleration_mode_;
   const CanvasColorParams color_params_;
diff --git a/third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc b/third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc
index c818289..4d69ed7 100644
--- a/third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc
+++ b/third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc
@@ -602,6 +602,19 @@
       CanvasResourceType::kBitmap,
   });
 
+  static const Vector<CanvasResourceType> kAcceleratedDirect2DFallbackList({
+      // Needed for low latency canvas on Windows.
+      CanvasResourceType::kDirect2DSwapChain,
+      // The rest is equal to |kCompositedFallbackList|.
+      CanvasResourceType::kSharedImage,
+      CanvasResourceType::kSharedBitmap,
+      CanvasResourceType::kBitmap,
+  });
+  DCHECK(std::equal(kAcceleratedDirect2DFallbackList.begin() + 1,
+                    kAcceleratedDirect2DFallbackList.end(),
+                    kCompositedFallbackList.begin(),
+                    kCompositedFallbackList.end()));
+
   static const Vector<CanvasResourceType> kAcceleratedDirect3DFallbackList({
       // This is used with single-buffered WebGL where the resource comes
       // from an external source. The external site should take care of
@@ -632,7 +645,7 @@
       return kCompositedFallbackList;
     case CanvasResourceProvider::ResourceUsage::
         kAcceleratedDirect2DResourceUsage:
-      return kCompositedFallbackList;
+      return kAcceleratedDirect2DFallbackList;
     case CanvasResourceProvider::ResourceUsage::
         kAcceleratedDirect3DResourceUsage:
       return kAcceleratedDirect3DFallbackList;
diff --git a/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.cc b/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.cc
index e3ac284..65b672a 100644
--- a/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.cc
+++ b/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.cc
@@ -1063,33 +1063,9 @@
   AttachColorBufferToReadFramebuffer();
 
   if (WantExplicitResolve()) {
-    state_restorer_->SetFramebufferBindingDirty();
-    state_restorer_->SetRenderbufferBindingDirty();
-    gl_->BindFramebuffer(GL_FRAMEBUFFER, multisample_fbo_);
-    gl_->BindRenderbuffer(GL_RENDERBUFFER, multisample_renderbuffer_);
-    // Note that the multisample rendertarget will allocate an alpha channel
-    // based on |have_alpha_channel_|, not |allocate_alpha_channel_|, since it
-    // will resolve into the ColorBuffer.
-    GLenum internal_format = have_alpha_channel_ ? GL_RGBA8_OES : GL_RGB8_OES;
-    if (use_half_float_storage_) {
-      DCHECK(want_alpha_channel_);
-      internal_format = GL_RGBA16F_EXT;
-    }
-    if (has_eqaa_support) {
-      gl_->RenderbufferStorageMultisampleAdvancedAMD(
-          GL_RENDERBUFFER, sample_count_, eqaa_storage_sample_count_,
-          internal_format, size.Width(), size.Height());
-    } else {
-      gl_->RenderbufferStorageMultisampleCHROMIUM(
-          GL_RENDERBUFFER, sample_count_, internal_format, size.Width(),
-          size.Height());
-    }
-
-    if (gl_->GetError() == GL_OUT_OF_MEMORY)
+    if (!ReallocateMultisampleRenderbuffer(size)) {
       return false;
-
-    gl_->FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0,
-                                 GL_RENDERBUFFER, multisample_renderbuffer_);
+    }
   }
 
   if (WantDepthOrStencil()) {
@@ -1271,10 +1247,46 @@
 
   auto* gl = ContextProvider()->ContextGL();
   if (gl->DidGpuSwitch() == GL_TRUE) {
-    // TODO(crbug.com/681341): reallocate multi-sampled render buffer.
+    // TODO(crbug.com/681341): handle preserveDrawingBuffer:true, and
+    // user-allocated multisampled renderbuffers, by dispatching a context lost
+    // event.
+    if (WantExplicitResolve()) {
+      ReallocateMultisampleRenderbuffer(size_);
+    }
   }
 }
 
+bool DrawingBuffer::ReallocateMultisampleRenderbuffer(const IntSize& size) {
+  state_restorer_->SetFramebufferBindingDirty();
+  state_restorer_->SetRenderbufferBindingDirty();
+  gl_->BindFramebuffer(GL_FRAMEBUFFER, multisample_fbo_);
+  gl_->BindRenderbuffer(GL_RENDERBUFFER, multisample_renderbuffer_);
+  // Note that the multisample rendertarget will allocate an alpha channel
+  // based on |have_alpha_channel_|, not |allocate_alpha_channel_|, since it
+  // will resolve into the ColorBuffer.
+  GLenum internal_format = have_alpha_channel_ ? GL_RGBA8_OES : GL_RGB8_OES;
+  if (use_half_float_storage_) {
+    DCHECK(want_alpha_channel_);
+    internal_format = GL_RGBA16F_EXT;
+  }
+  if (has_eqaa_support) {
+    gl_->RenderbufferStorageMultisampleAdvancedAMD(
+        GL_RENDERBUFFER, sample_count_, eqaa_storage_sample_count_,
+        internal_format, size.Width(), size.Height());
+  } else {
+    gl_->RenderbufferStorageMultisampleCHROMIUM(GL_RENDERBUFFER, sample_count_,
+                                                internal_format, size.Width(),
+                                                size.Height());
+  }
+
+  if (gl_->GetError() == GL_OUT_OF_MEMORY)
+    return false;
+
+  gl_->FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0,
+                               GL_RENDERBUFFER, multisample_renderbuffer_);
+  return true;
+}
+
 void DrawingBuffer::RestoreFramebufferBindings() {
   client_->DrawingBufferClientRestoreFramebufferBinding();
 }
diff --git a/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.h b/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.h
index 67474c0..2aa58412 100644
--- a/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.h
+++ b/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.h
@@ -474,6 +474,10 @@
   bool SetupRGBEmulationForBlitFramebuffer(bool is_user_draw_framebuffer_bound);
   void CleanupRGBEmulationForBlitFramebuffer();
 
+  // Reallocate Multisampled renderbuffer, used by explicit resolve when resize
+  // and GPU switch
+  bool ReallocateMultisampleRenderbuffer(const IntSize&);
+
   // Weak, reset by beginDestruction.
   Client* client_ = nullptr;
 
diff --git a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
index ee5d41af..22df689 100644
--- a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
+++ b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
@@ -81,6 +81,54 @@
 // JPEG only supports a denominator of 8.
 const unsigned g_scale_denominator = 8;
 
+enum yuv_subsampling {
+  YUV_UNKNOWN,
+  YUV_410,
+  YUV_411,
+  YUV_420,
+  YUV_422,
+  YUV_440,
+  YUV_444
+};
+
+// Extracts the YUV subsampling format of an image given |info| which is assumed
+// to have gone through a jpeg_read_header() call.
+yuv_subsampling YuvSubsampling(const jpeg_decompress_struct& info) {
+  if (info.jpeg_color_space == JCS_YCbCr && info.num_components == 3 &&
+      info.comp_info && info.comp_info[1].h_samp_factor == 1 &&
+      info.comp_info[1].v_samp_factor == 1 &&
+      info.comp_info[2].h_samp_factor == 1 &&
+      info.comp_info[2].v_samp_factor == 1) {
+    const int h = info.comp_info[0].h_samp_factor;
+    const int v = info.comp_info[0].v_samp_factor;
+    if (v == 1) {
+      switch (h) {
+        case 1:
+          return YUV_444;
+        case 2:
+          return YUV_422;
+        case 4:
+          return YUV_411;
+        default:
+          break;
+      }
+    } else if (v == 2) {
+      switch (h) {
+        case 1:
+          return YUV_440;
+        case 2:
+          return YUV_420;
+        case 4:
+          return YUV_410;
+        default:
+          break;
+      }
+    }
+  }
+
+  return YUV_UNKNOWN;
+}
+
 // Extracts the JPEG color space of an image for UMA purposes given |info| which
 // is assumed to have gone through a jpeg_read_header(). When the color space is
 // YCbCr, we also extract the chroma subsampling. The caveat is that the
@@ -101,39 +149,23 @@
     case JCS_YCCK:
       return blink::BitmapImageMetrics::JpegColorSpace::kYCCK;
     case JCS_YCbCr:
-      // The following logic is mostly reused from YuvSubsampling(). However,
-      // here we use |info.comp_info| instead of |info.cur_comp_info| to read
-      // the components from the SOF instead of the first scan. We also don't
-      // care about |info.scale_denom|.
-      // TODO: can we use this same logic in YuvSubsampling()?
-      if (info.num_components == 3 && info.comp_info &&
-          info.comp_info[1].h_samp_factor == 1 &&
-          info.comp_info[1].v_samp_factor == 1 &&
-          info.comp_info[2].h_samp_factor == 1 &&
-          info.comp_info[2].v_samp_factor == 1) {
-        const int h = info.comp_info[0].h_samp_factor;
-        const int v = info.comp_info[0].v_samp_factor;
-        if (v == 1) {
-          switch (h) {
-            case 1:
-              return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr444;
-            case 2:
-              return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr422;
-            case 4:
-              return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr411;
-          }
-        } else if (v == 2) {
-          switch (h) {
-            case 1:
-              return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr440;
-            case 2:
-              return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr420;
-            case 4:
-              return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr410;
-          }
-        }
+      switch (YuvSubsampling(info)) {
+        case YUV_444:
+          return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr444;
+        case YUV_422:
+          return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr422;
+        case YUV_411:
+          return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr411;
+        case YUV_440:
+          return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr440;
+        case YUV_420:
+          return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr420;
+        case YUV_410:
+          return blink::BitmapImageMetrics::JpegColorSpace::kYCbCr410;
+        case YUV_UNKNOWN:
+          return blink::BitmapImageMetrics::JpegColorSpace::kYCbCrOther;
       }
-      return blink::BitmapImageMetrics::JpegColorSpace::kYCbCrOther;
+      NOTREACHED();
     default:
       return blink::BitmapImageMetrics::JpegColorSpace::kUnknown;
   }
@@ -164,16 +196,6 @@
   JPEG_DONE
 };
 
-enum yuv_subsampling {
-  YUV_UNKNOWN,
-  YUV_410,
-  YUV_411,
-  YUV_420,
-  YUV_422,
-  YUV_440,
-  YUV_444
-};
-
 void init_source(j_decompress_ptr jd);
 boolean fill_input_buffer(j_decompress_ptr jd);
 void skip_input_data(j_decompress_ptr jd, long num_bytes);
@@ -273,56 +295,13 @@
 
 static IntSize ComputeYUVSize(const jpeg_decompress_struct* info,
                               int component) {
-  return IntSize(info->cur_comp_info[component]->downsampled_width,
-                 info->cur_comp_info[component]->downsampled_height);
+  return IntSize(info->comp_info[component].downsampled_width,
+                 info->comp_info[component].downsampled_height);
 }
 
 static size_t ComputeYUVWidthBytes(const jpeg_decompress_struct* info,
                                    int component) {
-  return info->cur_comp_info[component]->width_in_blocks * DCTSIZE;
-}
-
-static yuv_subsampling YuvSubsampling(const jpeg_decompress_struct& info) {
-  if ((DCTSIZE == 8) && (info.num_components == 3) && (info.scale_denom <= 8) &&
-      (info.cur_comp_info[0]) && (info.cur_comp_info[1]) &&
-      (info.cur_comp_info[2]) && (info.cur_comp_info[1]->h_samp_factor == 1) &&
-      (info.cur_comp_info[1]->v_samp_factor == 1) &&
-      (info.cur_comp_info[2]->h_samp_factor == 1) &&
-      (info.cur_comp_info[2]->v_samp_factor == 1)) {
-    int h = info.cur_comp_info[0]->h_samp_factor;
-    int v = info.cur_comp_info[0]->v_samp_factor;
-    // 4:4:4 : (h == 1) && (v == 1)
-    // 4:4:0 : (h == 1) && (v == 2)
-    // 4:2:2 : (h == 2) && (v == 1)
-    // 4:2:0 : (h == 2) && (v == 2)
-    // 4:1:1 : (h == 4) && (v == 1)
-    // 4:1:0 : (h == 4) && (v == 2)
-    if (v == 1) {
-      switch (h) {
-        case 1:
-          return YUV_444;
-        case 2:
-          return YUV_422;
-        case 4:
-          return YUV_411;
-        default:
-          break;
-      }
-    } else if (v == 2) {
-      switch (h) {
-        case 1:
-          return YUV_440;
-        case 2:
-          return YUV_420;
-        case 4:
-          return YUV_410;
-        default:
-          break;
-      }
-    }
-  }
-
-  return YUV_UNKNOWN;
+  return info->comp_info[component].width_in_blocks * DCTSIZE;
 }
 
 static void ProgressMonitor(j_common_ptr info) {
@@ -483,8 +462,10 @@
         switch (info_.jpeg_color_space) {
           case JCS_YCbCr:
             // libjpeg can convert YCbCr image pixels to RGB.
+            // TODO(crbug.com/919627): is the info_.scale_denom <= 8 actually
+            // needed?
             info_.out_color_space = rgbOutputColorSpace();
-            if (decoder_->HasImagePlanes() &&
+            if (decoder_->HasImagePlanes() && (info_.scale_denom <= 8) &&
                 (YuvSubsampling(info_) != YUV_UNKNOWN))
               override_color_space = JCS_YCbCr;
             break;
diff --git a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder_test.cc b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder_test.cc
index e32ba35e..8d9c85f4c 100644
--- a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder_test.cc
+++ b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder_test.cc
@@ -250,6 +250,16 @@
   EXPECT_EQ(128u, output_uv_width);
   EXPECT_EQ(128u, output_uv_height);
 
+  // Each plane is in its own scan.
+  const char* jpeg_file_non_interleaved =
+      "/images/resources/cs-uma-ycbcr-420-non-interleaved.jpg";  // 64x64
+  ReadYUV(kLargeEnoughSize, &output_y_width, &output_y_height, &output_uv_width,
+          &output_uv_height, jpeg_file_non_interleaved);
+  EXPECT_EQ(64u, output_y_width);
+  EXPECT_EQ(64u, output_y_height);
+  EXPECT_EQ(32u, output_uv_width);
+  EXPECT_EQ(32u, output_uv_height);
+
   const char* jpeg_file_image_size_not_multiple_of8 =
       "/images/resources/cropped_mandrill.jpg";  // 439x154
   ReadYUV(kLargeEnoughSize, &output_y_width, &output_y_height, &output_uv_width,
@@ -493,7 +503,7 @@
     {"cs-uma-grayscale.jpg", true,
      BitmapImageMetrics::JpegColorSpace::kGrayscale},
     {"cs-uma-rgb.jpg", true, BitmapImageMetrics::JpegColorSpace::kRGB},
-    // Each component is in a separate plane. Should not make a difference.
+    // Each component is in a separate scan. Should not make a difference.
     {"cs-uma-rgb-non-interleaved.jpg", true,
      BitmapImageMetrics::JpegColorSpace::kRGB},
     {"cs-uma-cmyk.jpg", true, BitmapImageMetrics::JpegColorSpace::kCMYK},
@@ -515,7 +525,7 @@
      BitmapImageMetrics::JpegColorSpace::kYCbCr411},
     {"cs-uma-ycbcr-420.jpg", true,
      BitmapImageMetrics::JpegColorSpace::kYCbCr420},
-    // Each component is in a separate plane. Should not make a difference.
+    // Each component is in a separate scan. Should not make a difference.
     {"cs-uma-ycbcr-420-non-interleaved.jpg", true,
      BitmapImageMetrics::JpegColorSpace::kYCbCr420},
     // 3 components/both JFIF and Adobe markers, so we expect libjpeg_turbo to
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
index de70299..e012391 100644
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -700,6 +700,7 @@
     // For simulating Android's overlay fullscreen video in web tests on Linux.
     {
       name: "ForcedColors",
+      status: "experimental",
     },
     {
       name: "ForceDeferScriptIntervention",
@@ -1329,10 +1330,6 @@
       status: "experimental",
     },
     {
-      name: "RasterInducingScroll",
-      status: "experimental",
-    },
-    {
       name: "ReducedReferrerGranularity",
     },
     {
diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/web_tests/TestExpectations
index 7b381ff..c331bc5 100644
--- a/third_party/blink/web_tests/TestExpectations
+++ b/third_party/blink/web_tests/TestExpectations
@@ -3120,6 +3120,9 @@
 crbug.com/618969 external/wpt/css/css-grid/subgrid/ [ Skip ]
 
 # ====== New tests from wpt-importer added here ======
+crbug.com/626703 [ Linux ] external/wpt/clear-site-data/storage.https.html [ Timeout ]
+crbug.com/626703 [ Mac ] external/wpt/clear-site-data/storage.https.html [ Timeout ]
+crbug.com/626703 [ Win ] external/wpt/clear-site-data/storage.https.html [ Timeout ]
 crbug.com/626703 [ Linux ] external/wpt/webaudio/the-audio-api/processing-model/feedback-delay-time.html [ Timeout ]
 crbug.com/626703 [ Mac ] external/wpt/webaudio/the-audio-api/processing-model/feedback-delay-time.html [ Timeout ]
 crbug.com/626703 [ Win ] external/wpt/webaudio/the-audio-api/processing-model/feedback-delay-time.html [ Timeout ]
diff --git a/third_party/blink/web_tests/W3CImportExpectations b/third_party/blink/web_tests/W3CImportExpectations
index 5e1ff29..ec8f561 100644
--- a/third_party/blink/web_tests/W3CImportExpectations
+++ b/third_party/blink/web_tests/W3CImportExpectations
@@ -100,7 +100,6 @@
 external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/filters [ Skip ]
 external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/fonts3 [ Skip ]
 external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/images3 [ Skip ]
-external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/lists-3 [ Skip ]
 external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/masking [ Skip ]
 external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/multicol3 [ Skip ]
 external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/ruby [ Skip ]
diff --git a/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_6.json b/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_6.json
index b47f3b5..92cd775 100644
--- a/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_6.json
+++ b/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_6.json
@@ -124708,12 +124708,18 @@
    "clear-site-data/OWNERS": [
     []
    ],
+   "clear-site-data/support/controlled-endpoint.py": [
+    []
+   ],
    "clear-site-data/support/echo-clear-site-data.py": [
     []
    ],
    "clear-site-data/support/iframe_executionContexts.html": [
     []
    ],
+   "clear-site-data/support/page_using_service_worker.html": [
+    []
+   ],
    "clear-site-data/support/page_with_resource.sub.html": [
     []
    ],
@@ -161809,9 +161815,6 @@
    "import-maps/imported/resolving-builtins.tentative-expected.txt": [
     []
    ],
-   "import-maps/imported/resolving-scopes.tentative-expected.txt": [
-    []
-   ],
    "import-maps/imported/resolving.tentative-expected.txt": [
     []
    ],
@@ -337690,9 +337693,13 @@
    "testharness"
   ],
   "clear-site-data/storage.https.html": [
-   "35c9fd1a03bc2c6d01900454f1209a26d82ca2d1",
+   "4ca990ff33bd4ad53dca5c2545ed9ffcd5bf4325",
    "testharness"
   ],
+  "clear-site-data/support/controlled-endpoint.py": [
+   "5604be31672847998ee4f3d1ea369d2074f452c5",
+   "support"
+  ],
   "clear-site-data/support/echo-clear-site-data.py": [
    "f7c48bb39579c991af9945d2ac6e98b604b7113b",
    "support"
@@ -337701,6 +337708,10 @@
    "9c20c9e0db5861970e1f72245b47f128be4a4b3d",
    "support"
   ],
+  "clear-site-data/support/page_using_service_worker.html": [
+   "968a39a13207cd1825239e1b0643def7cd2c05f1",
+   "support"
+  ],
   "clear-site-data/support/page_with_resource.sub.html": [
    "703519a2f6f0e5d11a4fb4fb0e40e5fc3d8624fe",
    "support"
@@ -337710,11 +337721,11 @@
    "support"
   ],
   "clear-site-data/support/service_worker.js": [
-   "8504a030ddfc4dbae363e5b5fa6c5d158bb7cce3",
+   "a4e5709ee17cb5fb1624fe1148773aff027500f9",
    "support"
   ],
   "clear-site-data/support/test_utils.sub.js": [
-   "235273bd5ba4cbcc523faefdd65fcbdce9e65bf7",
+   "122c71c3d67d62349dfb5356fe3c7dbd3d87c734",
    "support"
   ],
   "client-hints/META.yml": [
@@ -459842,7 +459853,7 @@
    "testharness"
   ],
   "import-maps/imported/parsing-schema.tentative-expected.txt": [
-   "afb5a364707553f4249cc11466a95284b3ba7b76",
+   "d2f63ce9f9bf128a5692a3f733e43d3b2874812e",
    "support"
   ],
   "import-maps/imported/parsing-schema.tentative.html": [
@@ -459877,10 +459888,6 @@
    "7db5f29f892976720a145499d6e40ccb8959b006",
    "testharness"
   ],
-  "import-maps/imported/resolving-scopes.tentative-expected.txt": [
-   "9e08fefaefaaf23751642451971cd2f7e47ef4a3",
-   "support"
-  ],
   "import-maps/imported/resolving-scopes.tentative.html": [
    "4985249f4e2951965ad78321208ee08eca8617fa",
    "testharness"
@@ -490246,7 +490253,7 @@
    "support"
   ],
   "scroll-to-text-fragment/scroll-to-text-fragment.html": [
-   "85f07f38229404e45f0afbb413ea950241238ff4",
+   "ab4f8df0d0fa7716322ec6cd6f8a931dbc6fcc2a",
    "testharness"
   ],
   "secure-contexts/META.yml": [
@@ -508982,7 +508989,7 @@
    "testharness"
   ],
   "web-animations/animation-model/animation-types/interpolation-per-property-expected.txt": [
-   "fb915ff3a78b97b349bcd7d8073ea4f7a7cede0f",
+   "48cfbb42f420105ed308d399945ed56020859bf9",
    "support"
   ],
   "web-animations/animation-model/animation-types/interpolation-per-property.html": [
@@ -508994,7 +509001,7 @@
    "support"
   ],
   "web-animations/animation-model/animation-types/property-types.js": [
-   "75f7d61161a8569beef9b1104ce0e2c9b8e70a06",
+   "dba946d38869f925a990c8889a2eb06d0e2aeb21",
    "support"
   ],
   "web-animations/animation-model/animation-types/visibility.html": [
diff --git a/third_party/blink/web_tests/external/wpt/clear-site-data/storage.https.html b/third_party/blink/web_tests/external/wpt/clear-site-data/storage.https.html
index 35c9fd1a..4ca990ff 100644
--- a/third_party/blink/web_tests/external/wpt/clear-site-data/storage.https.html
+++ b/third_party/blink/web_tests/external/wpt/clear-site-data/storage.https.html
@@ -3,6 +3,7 @@
   <head>
     <script src="/resources/testharness.js"></script>
     <script src="/resources/testharnessreport.js"></script>
+    <script src="../service-workers/service-worker/resources/test-helpers.sub.js"></script>
     <script src="support/test_utils.sub.js"></script>
   </head>
 
@@ -13,6 +14,15 @@
         return datatype.name == "storage";
       })[0];
 
+      var serviceWorkerTestPageIFrame;
+      function fetchFromIFrame() {
+        return serviceWorkerTestPageIFrame.contentWindow
+          .fetch('support/controlled-endpoint.py')
+          .then((result) => {
+            return result.text();
+          });
+      }
+
       // The tests are set up asynchronously.
       setup({"explicit_done": true});
 
@@ -22,7 +32,41 @@
       test(function() {}, "Populate backends.");
 
       TestUtils.populateStorage()
+          .then(() => {
+            return new Promise(function(resolve, reject) {
+              promise_test(function(t) {
+                return navigator.serviceWorker.getRegistration("support/").then(function(reg) {
+                  return wait_for_state(t, reg.installing || reg.waiting || reg.active, 'activated');
+                }).then(resolve, reject);
+              });
+            });
+          })
+          .then(() => {
+            return new Promise(function (resolve) {
+              // Create iFrame in the service worker's scope. This page will make a request
+              // for another page that is only served by the service worker
+              serviceWorkerTestPageIFrame = document.createElement("iframe");
+              serviceWorkerTestPageIFrame.src = "support/page_using_service_worker.html";
+              serviceWorkerTestPageIFrame.onload = function() { resolve(); };
+              document.body.appendChild(serviceWorkerTestPageIFrame);
+            });
+          })
+          .then(() => {
+            const serviceWorkerResponseBody = fetchFromIFrame();
+
+            promise_test(function() {
+              return serviceWorkerResponseBody.then(function(body) {
+                assert_equals(body, "FROM_SERVICE_WORKER", "Response should be from service worker");
+              });
+            }, "Baseline: Service worker responds to request");
+
+            return serviceWorkerResponseBody;
+          })
           .then(function() {
+            const waitForControllerChange = new Promise(function(resolve) {
+              serviceWorkerTestPageIFrame.contentWindow
+                .navigator.serviceWorker.addEventListener("controllerchange", resolve);
+            });
             // Navigate to a resource with a Clear-Site-Data header in
             // an iframe, then verify that all backends of the "storage"
             // datatype have been deleted.
@@ -45,6 +89,19 @@
                 }, test_name);
               });
 
+              promise_test(function() {
+                return fetchFromIFrame().then(function(body) {
+                  assert_equals(body, "FROM_NETWORK", "Response should be from network and not from the service worker");
+                });
+              }, "Service worker no longer responds to requests");
+
+              promise_test(function() {
+                return waitForControllerChange.then(function() {
+                  assert_false(!!serviceWorkerTestPageIFrame.contentWindow.navigator.serviceWorker.controller,
+                    "Client should not have a controller");
+                });
+              }, "controllerchange event fires and client no longer has controller");
+
               done();
             });
           });
diff --git a/third_party/blink/web_tests/external/wpt/clear-site-data/support/controlled-endpoint.py b/third_party/blink/web_tests/external/wpt/clear-site-data/support/controlled-endpoint.py
new file mode 100644
index 0000000..5604be31
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/clear-site-data/support/controlled-endpoint.py
@@ -0,0 +1,3 @@
+def main(request, response):
+    return ([("Content-Type", "text/html")],
+            "FROM_NETWORK")
\ No newline at end of file
diff --git a/third_party/blink/web_tests/external/wpt/clear-site-data/support/page_using_service_worker.html b/third_party/blink/web_tests/external/wpt/clear-site-data/support/page_using_service_worker.html
new file mode 100644
index 0000000..968a39a
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/clear-site-data/support/page_using_service_worker.html
@@ -0,0 +1,6 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Clear-Site-Data + Service Workers Test Page</title>
+  </head>
+</html>
\ No newline at end of file
diff --git a/third_party/blink/web_tests/external/wpt/clear-site-data/support/service_worker.js b/third_party/blink/web_tests/external/wpt/clear-site-data/support/service_worker.js
index 8504a030..a4e5709 100644
--- a/third_party/blink/web_tests/external/wpt/clear-site-data/support/service_worker.js
+++ b/third_party/blink/web_tests/external/wpt/clear-site-data/support/service_worker.js
@@ -1 +1,6 @@
-/* This file is intentionally left blank. */
+self.addEventListener('fetch', (e) => {
+  const url = new URL(e.request.url);
+  if (url.pathname.match('controlled-endpoint.py')) {
+    e.respondWith(new Response('FROM_SERVICE_WORKER'));
+  }
+});
\ No newline at end of file
diff --git a/third_party/blink/web_tests/external/wpt/clear-site-data/support/test_utils.sub.js b/third_party/blink/web_tests/external/wpt/clear-site-data/support/test_utils.sub.js
index 235273b..122c71c3d 100644
--- a/third_party/blink/web_tests/external/wpt/clear-site-data/support/test_utils.sub.js
+++ b/third_party/blink/web_tests/external/wpt/clear-site-data/support/test_utils.sub.js
@@ -121,7 +121,7 @@
       "add": function() {
         return navigator.serviceWorker.register(
             "support/service_worker.js",
-            { scope: "support/scope-that-does-not-contain-this-test/"});
+            { scope: "support/"});
       },
       "isEmpty": function() {
         return new Promise(function(resolve, reject) {
diff --git a/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-shorthand-expected.txt b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-shorthand-expected.txt
new file mode 100644
index 0000000..d2c4b0fd
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-shorthand-expected.txt
@@ -0,0 +1,60 @@
+This is a testharness.js-based test.
+Found 56 tests; 31 PASS, 25 FAIL, 0 TIMEOUT, 0 NOTRUN.
+FAIL e.style['grid'] = "none" should set grid-auto-columns assert_equals: grid-auto-columns should be canonical expected "auto" but got "initial"
+FAIL e.style['grid'] = "none" should set grid-auto-flow assert_equals: grid-auto-flow should be canonical expected "row" but got "initial"
+FAIL e.style['grid'] = "none" should set grid-auto-rows assert_equals: grid-auto-rows should be canonical expected "auto" but got "initial"
+PASS e.style['grid'] = "none" should set grid-template-areas
+PASS e.style['grid'] = "none" should set grid-template-columns
+PASS e.style['grid'] = "none" should set grid-template-rows
+PASS e.style['grid'] = "none" should not set unrelated longhands
+FAIL e.style['grid'] = "10px / 20%" should set grid-auto-columns assert_equals: grid-auto-columns should be canonical expected "auto" but got "initial"
+FAIL e.style['grid'] = "10px / 20%" should set grid-auto-flow assert_equals: grid-auto-flow should be canonical expected "row" but got "initial"
+FAIL e.style['grid'] = "10px / 20%" should set grid-auto-rows assert_equals: grid-auto-rows should be canonical expected "auto" but got "initial"
+PASS e.style['grid'] = "10px / 20%" should set grid-template-areas
+PASS e.style['grid'] = "10px / 20%" should set grid-template-columns
+PASS e.style['grid'] = "10px / 20%" should set grid-template-rows
+PASS e.style['grid'] = "10px / 20%" should not set unrelated longhands
+FAIL e.style['grid'] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-auto-columns assert_equals: grid-auto-columns should be canonical expected "auto" but got "initial"
+FAIL e.style['grid'] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-auto-flow assert_equals: grid-auto-flow should be canonical expected "row" but got "initial"
+FAIL e.style['grid'] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-auto-rows assert_equals: grid-auto-rows should be canonical expected "auto" but got "initial"
+PASS e.style['grid'] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-areas
+PASS e.style['grid'] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-columns
+PASS e.style['grid'] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-rows
+PASS e.style['grid'] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should not set unrelated longhands
+FAIL e.style['grid'] = "[header-top] \"a a a\"     [header-bottom]  [main-top] \"b b b\" 1fr [main-bottom]           / auto 1fr auto" should set grid-auto-columns assert_equals: grid-auto-columns should be canonical expected "auto" but got "initial"
+FAIL e.style['grid'] = "[header-top] \"a a a\"     [header-bottom]  [main-top] \"b b b\" 1fr [main-bottom]           / auto 1fr auto" should set grid-auto-flow assert_equals: grid-auto-flow should be canonical expected "row" but got "initial"
+FAIL e.style['grid'] = "[header-top] \"a a a\"     [header-bottom]  [main-top] \"b b b\" 1fr [main-bottom]           / auto 1fr auto" should set grid-auto-rows assert_equals: grid-auto-rows should be canonical expected "auto" but got "initial"
+PASS e.style['grid'] = "[header-top] \"a a a\"     [header-bottom]  [main-top] \"b b b\" 1fr [main-bottom]           / auto 1fr auto" should set grid-template-areas
+PASS e.style['grid'] = "[header-top] \"a a a\"     [header-bottom]  [main-top] \"b b b\" 1fr [main-bottom]           / auto 1fr auto" should set grid-template-columns
+PASS e.style['grid'] = "[header-top] \"a a a\"     [header-bottom]  [main-top] \"b b b\" 1fr [main-bottom]           / auto 1fr auto" should set grid-template-rows
+PASS e.style['grid'] = "[header-top] \"a a a\"     [header-bottom]  [main-top] \"b b b\" 1fr [main-bottom]           / auto 1fr auto" should not set unrelated longhands
+FAIL e.style['grid'] = "  \"a a a\"  \"b b b\" 1fr/ auto 1fr auto" should set grid-auto-columns assert_equals: grid-auto-columns should be canonical expected "auto" but got "initial"
+FAIL e.style['grid'] = "  \"a a a\"  \"b b b\" 1fr/ auto 1fr auto" should set grid-auto-flow assert_equals: grid-auto-flow should be canonical expected "row" but got "initial"
+FAIL e.style['grid'] = "  \"a a a\"  \"b b b\" 1fr/ auto 1fr auto" should set grid-auto-rows assert_equals: grid-auto-rows should be canonical expected "auto" but got "initial"
+PASS e.style['grid'] = "  \"a a a\"  \"b b b\" 1fr/ auto 1fr auto" should set grid-template-areas
+PASS e.style['grid'] = "  \"a a a\"  \"b b b\" 1fr/ auto 1fr auto" should set grid-template-columns
+PASS e.style['grid'] = "  \"a a a\"  \"b b b\" 1fr/ auto 1fr auto" should set grid-template-rows
+PASS e.style['grid'] = "  \"a a a\"  \"b b b\" 1fr/ auto 1fr auto" should not set unrelated longhands
+FAIL e.style['grid'] = " [] \"a a a\"     [] [] \"b b b\" 1fr []  / [] auto 1fr [] auto []" should set grid-auto-columns assert_equals: grid-auto-columns should be canonical expected "auto" but got "initial"
+FAIL e.style['grid'] = " [] \"a a a\"     [] [] \"b b b\" 1fr []  / [] auto 1fr [] auto []" should set grid-auto-flow assert_equals: grid-auto-flow should be canonical expected "row" but got "initial"
+FAIL e.style['grid'] = " [] \"a a a\"     [] [] \"b b b\" 1fr []  / [] auto 1fr [] auto []" should set grid-auto-rows assert_equals: grid-auto-rows should be canonical expected "auto" but got "initial"
+PASS e.style['grid'] = " [] \"a a a\"     [] [] \"b b b\" 1fr []  / [] auto 1fr [] auto []" should set grid-template-areas
+PASS e.style['grid'] = " [] \"a a a\"     [] [] \"b b b\" 1fr []  / [] auto 1fr [] auto []" should set grid-template-columns
+PASS e.style['grid'] = " [] \"a a a\"     [] [] \"b b b\" 1fr []  / [] auto 1fr [] auto []" should set grid-template-rows
+PASS e.style['grid'] = " [] \"a a a\"     [] [] \"b b b\" 1fr []  / [] auto 1fr [] auto []" should not set unrelated longhands
+PASS e.style['grid'] = "10px / auto-flow dense 20px" should set grid-auto-columns
+PASS e.style['grid'] = "10px / auto-flow dense 20px" should set grid-auto-flow
+FAIL e.style['grid'] = "10px / auto-flow dense 20px" should set grid-auto-rows assert_equals: grid-auto-rows should be canonical expected "auto" but got "initial"
+FAIL e.style['grid'] = "10px / auto-flow dense 20px" should set grid-template-areas assert_equals: grid-template-areas should be canonical expected "none" but got "initial"
+FAIL e.style['grid'] = "10px / auto-flow dense 20px" should set grid-template-columns assert_equals: grid-template-columns should be canonical expected "none" but got "initial"
+PASS e.style['grid'] = "10px / auto-flow dense 20px" should set grid-template-rows
+PASS e.style['grid'] = "10px / auto-flow dense 20px" should not set unrelated longhands
+FAIL e.style['grid'] = "auto-flow dense 30px / 40px" should set grid-auto-columns assert_equals: grid-auto-columns should be canonical expected "auto" but got "initial"
+FAIL e.style['grid'] = "auto-flow dense 30px / 40px" should set grid-auto-flow assert_equals: grid-auto-flow should be canonical expected "dense" but got "row dense"
+PASS e.style['grid'] = "auto-flow dense 30px / 40px" should set grid-auto-rows
+FAIL e.style['grid'] = "auto-flow dense 30px / 40px" should set grid-template-areas assert_equals: grid-template-areas should be canonical expected "none" but got "initial"
+PASS e.style['grid'] = "auto-flow dense 30px / 40px" should set grid-template-columns
+FAIL e.style['grid'] = "auto-flow dense 30px / 40px" should set grid-template-rows assert_equals: grid-template-rows should be canonical expected "none" but got "initial"
+PASS e.style['grid'] = "auto-flow dense 30px / 40px" should not set unrelated longhands
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-shorthand.html b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-shorthand.html
new file mode 100644
index 0000000..91995608dd
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-shorthand.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: grid sets longhands</title>
+<link rel="help" href="https://drafts.csswg.org/css-grid/#grid-shorthand">
+<meta name="assert" content="grid supports the full grammar '<'grid-template'> | <'grid-template-rows'> / [ auto-flow && dense? ] <'grid-auto-columns'>? | [ auto-flow && dense? ] <'grid-auto-rows'>? / <'grid-template-columns'>'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/shorthand-testcommon.js"></script>
+</head>
+<body>
+<script>
+// <grid-template>
+test_shorthand_value('grid', 'none', {
+  'grid-template-rows': 'none',
+  'grid-template-columns': 'none',
+  'grid-template-areas': 'none',
+
+  'grid-auto-rows': 'auto',
+  'grid-auto-columns': 'auto',
+  'grid-auto-flow': 'row'
+});
+
+test_shorthand_value('grid', '10px / 20%', {
+  'grid-template-rows': '10px',
+  'grid-template-columns': '20%',
+  'grid-template-areas': 'none',
+
+  'grid-auto-rows': 'auto',
+  'grid-auto-columns': 'auto',
+  'grid-auto-flow': 'row'
+});
+
+test_shorthand_value('grid', 'fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))', {
+  'grid-template-rows': 'fit-content(calc(-0.5em + 10px))',
+  'grid-template-columns': 'fit-content(calc(0.5em + 10px))',
+  'grid-template-areas': 'none',
+
+  'grid-auto-rows': 'auto',
+  'grid-auto-columns': 'auto',
+  'grid-auto-flow': 'row'
+});
+
+test_shorthand_value('grid',
+                     '[header-top] "a a a"     [header-bottom]' +
+                     '  [main-top] "b b b" 1fr [main-bottom]' +
+                     '           / auto 1fr auto', {
+  'grid-template-rows': '[header-top] auto [header-bottom main-top] 1fr [main-bottom]',
+  'grid-template-columns': 'auto 1fr auto',
+  'grid-template-areas': '"a a a" "b b b"',
+
+  'grid-auto-rows': 'auto',
+  'grid-auto-columns': 'auto',
+  'grid-auto-flow': 'row'
+});
+
+test_shorthand_value('grid',
+                     '  "a a a"' +
+                     '  "b b b" 1fr' +
+                     '/ auto 1fr auto', {
+  'grid-template-rows': 'auto 1fr',
+  'grid-template-columns': 'auto 1fr auto',
+  'grid-template-areas': '"a a a" "b b b"',
+
+  'grid-auto-rows': 'auto',
+  'grid-auto-columns': 'auto',
+  'grid-auto-flow': 'row'
+});
+
+test_shorthand_value('grid',
+                     ' [] "a a a"     []' +
+                     ' [] "b b b" 1fr []' +
+                     '  / [] auto 1fr [] auto []', {
+  'grid-template-rows': 'auto 1fr',
+  'grid-template-columns': 'auto 1fr auto',
+  'grid-template-areas': '"a a a" "b b b"',
+
+  'grid-auto-rows': 'auto',
+  'grid-auto-columns': 'auto',
+  'grid-auto-flow': 'row'
+});
+
+// <'grid-template-rows'> / [ auto-flow && dense? ] <'grid-auto-columns'>?
+test_shorthand_value('grid',
+                     '10px' +
+                     ' / auto-flow dense' +
+                     ' 20px', {
+  'grid-template-rows': '10px',
+  'grid-template-columns': 'none',
+  'grid-template-areas': 'none',
+
+  'grid-auto-rows': 'auto',
+  'grid-auto-columns': '20px',
+  'grid-auto-flow': 'column dense'
+});
+
+// [ auto-flow && dense? ] <'grid-auto-rows'>? / <'grid-template-columns'>
+test_shorthand_value('grid',
+                     'auto-flow dense' +
+                     ' 30px /' +
+                     ' 40px', {
+  'grid-template-rows': 'none',
+  'grid-template-columns': '40px',
+  'grid-template-areas': 'none',
+
+  'grid-auto-rows': '30px',
+  'grid-auto-columns': 'auto',
+  'grid-auto-flow': 'dense'
+});
+</script>
+</body>
+</html>
diff --git a/third_party/blink/web_tests/external/wpt/css/css-multicol/parsing/column-rule-shorthand-expected.txt b/third_party/blink/web_tests/external/wpt/css/css-multicol/parsing/column-rule-shorthand-expected.txt
new file mode 100644
index 0000000..27cda6e
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-multicol/parsing/column-rule-shorthand-expected.txt
@@ -0,0 +1,15 @@
+This is a testharness.js-based test.
+PASS e.style['column-rule'] = "medium dotted green" should set column-rule-color
+PASS e.style['column-rule'] = "medium dotted green" should set column-rule-style
+PASS e.style['column-rule'] = "medium dotted green" should set column-rule-width
+PASS e.style['column-rule'] = "medium dotted green" should not set unrelated longhands
+FAIL e.style['column-rule'] = "100px" should set column-rule-color assert_equals: column-rule-color should be canonical expected "currentcolor" but got "initial"
+FAIL e.style['column-rule'] = "100px" should set column-rule-style assert_equals: column-rule-style should be canonical expected "none" but got "initial"
+PASS e.style['column-rule'] = "100px" should set column-rule-width
+PASS e.style['column-rule'] = "100px" should not set unrelated longhands
+PASS e.style['column-rule'] = "blue" should set column-rule-color
+FAIL e.style['column-rule'] = "blue" should set column-rule-style assert_equals: column-rule-style should be canonical expected "none" but got "initial"
+FAIL e.style['column-rule'] = "blue" should set column-rule-width assert_equals: column-rule-width should be canonical expected "medium" but got "initial"
+PASS e.style['column-rule'] = "blue" should not set unrelated longhands
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/css/css-multicol/parsing/column-rule-shorthand.html b/third_party/blink/web_tests/external/wpt/css/css-multicol/parsing/column-rule-shorthand.html
new file mode 100644
index 0000000..68e7582
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-multicol/parsing/column-rule-shorthand.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Multi-column Layout: column-rule sets longhands</title>
+<link rel="help" href="https://drafts.csswg.org/css-multicol/#propdef-column-rule">
+<meta name="assert" content="column-rule supports the full grammar '<column-rule-width> || <column-rule-style> || <column-rule-color>'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/shorthand-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_shorthand_value('column-rule', 'medium dotted green', {
+  'column-rule-width': 'medium',
+  'column-rule-style': 'dotted',
+  'column-rule-color': 'green'
+});
+
+test_shorthand_value('column-rule', '100px', {
+  'column-rule-width': '100px',
+  'column-rule-style': 'none',
+  'column-rule-color': 'currentcolor'
+});
+
+test_shorthand_value('column-rule', 'blue', {
+  'column-rule-width': 'medium',
+  'column-rule-style': 'none',
+  'column-rule-color': 'blue'
+});
+</script>
+</body>
+</html>
diff --git a/third_party/blink/web_tests/external/wpt/css/motion/parsing/offset-shorthand-expected.txt b/third_party/blink/web_tests/external/wpt/css/motion/parsing/offset-shorthand-expected.txt
new file mode 100644
index 0000000..740a2eca
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/motion/parsing/offset-shorthand-expected.txt
@@ -0,0 +1,21 @@
+This is a testharness.js-based test.
+PASS e.style['offset'] = "left bottom ray(0rad closest-side) 10px auto 30deg / right bottom" should set offset-anchor
+PASS e.style['offset'] = "left bottom ray(0rad closest-side) 10px auto 30deg / right bottom" should set offset-distance
+PASS e.style['offset'] = "left bottom ray(0rad closest-side) 10px auto 30deg / right bottom" should set offset-path
+PASS e.style['offset'] = "left bottom ray(0rad closest-side) 10px auto 30deg / right bottom" should set offset-position
+PASS e.style['offset'] = "left bottom ray(0rad closest-side) 10px auto 30deg / right bottom" should set offset-rotate
+PASS e.style['offset'] = "left bottom ray(0rad closest-side) 10px auto 30deg / right bottom" should not set unrelated longhands
+PASS e.style['offset'] = "top right / top left" should set offset-anchor
+FAIL e.style['offset'] = "top right / top left" should set offset-distance assert_equals: offset-distance should be canonical expected "0px" but got "initial"
+FAIL e.style['offset'] = "top right / top left" should set offset-path assert_equals: offset-path should be canonical expected "none" but got "initial"
+PASS e.style['offset'] = "top right / top left" should set offset-position
+FAIL e.style['offset'] = "top right / top left" should set offset-rotate assert_equals: offset-rotate should be canonical expected "auto" but got "initial"
+PASS e.style['offset'] = "top right / top left" should not set unrelated longhands
+FAIL e.style['offset'] = "path(\"M 0 0 H 2\") reverse 50%" should set offset-anchor assert_equals: offset-anchor should be canonical expected "auto" but got "initial"
+PASS e.style['offset'] = "path(\"M 0 0 H 2\") reverse 50%" should set offset-distance
+PASS e.style['offset'] = "path(\"M 0 0 H 2\") reverse 50%" should set offset-path
+FAIL e.style['offset'] = "path(\"M 0 0 H 2\") reverse 50%" should set offset-position assert_equals: offset-position should be canonical expected "auto" but got "initial"
+PASS e.style['offset'] = "path(\"M 0 0 H 2\") reverse 50%" should set offset-rotate
+PASS e.style['offset'] = "path(\"M 0 0 H 2\") reverse 50%" should not set unrelated longhands
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/css/motion/parsing/offset-shorthand.html b/third_party/blink/web_tests/external/wpt/css/motion/parsing/offset-shorthand.html
new file mode 100644
index 0000000..611a394
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/motion/parsing/offset-shorthand.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Motion Path Module Level 1: offset sets longhands</title>
+<link rel="help" href="https://drafts.fxtf.org/motion-1/#offset-shorthand">
+<meta name="assert" content="offset supports the full grammar from the spec.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/shorthand-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_shorthand_value('offset', 'left bottom ray(0rad closest-side) 10px auto 30deg / right bottom', {
+  'offset-position': 'left bottom',
+  'offset-path': 'ray(0rad closest-side)',
+  'offset-distance': '10px',
+  'offset-rotate': 'auto 30deg',
+  'offset-anchor': 'right bottom',
+});
+
+test_shorthand_value('offset', 'top right / top left', {
+  'offset-position': 'right top',
+  'offset-path': 'none',
+  'offset-distance': '0px',
+  'offset-rotate': 'auto',
+  'offset-anchor': 'left top',
+});
+
+test_shorthand_value('offset', 'path("M 0 0 H 2") reverse 50%', {
+  'offset-position': 'auto',
+  'offset-path': 'path("M 0 0 H 2")',
+  'offset-distance': '50%',
+  'offset-rotate': 'reverse',
+  'offset-anchor': 'auto',
+});
+</script>
+</body>
+</html>
diff --git a/third_party/blink/web_tests/external/wpt/css/support/shorthand-testcommon.js b/third_party/blink/web_tests/external/wpt/css/support/shorthand-testcommon.js
index 3298113..ab1f3794 100644
--- a/third_party/blink/web_tests/external/wpt/css/support/shorthand-testcommon.js
+++ b/third_party/blink/web_tests/external/wpt/css/support/shorthand-testcommon.js
@@ -28,6 +28,7 @@
         try {
             const expectedLength = div.style.length;
             div.style[property] = value;
+            assert_true(CSS.supports(property, value));
             for (let longhand of Object.keys(longhands).sort()) {
                 div.style[longhand] = "";
             }
diff --git a/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-addresses.tentative-expected.txt b/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-addresses.tentative-expected.txt
index 3e2db57..7d869b4 100644
--- a/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-addresses.tentative-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-addresses.tentative-expected.txt
@@ -5,7 +5,7 @@
 PASS Relative URL-like addresses / should ignore percent-encoded variants of ./, ../, or /
 PASS Built-in module addresses / should accept URLs using the built-in module scheme
 PASS Built-in module addresses / should ignore percent-encoded variants of the built-in module scheme
-FAIL Built-in module addresses / should allow built-in module URLs that contain "/" or "\" assert_equals: expected "{\"backslash\":[\"std:foo\\\baz\"],\"slashEnd\":[\"std:foo/\"],\"slashMiddle\":[\"std:foo/bar\"]}" but got "{\"backslash\":[\"std:foo\\baz\"],\"slashEnd\":[\"std:foo/\"],\"slashMiddle\":[\"std:foo/bar\"]}"
+PASS Built-in module addresses / should allow built-in module URLs that contain "/" or "\"
 FAIL Absolute URL addresses / should only accept absolute URL addresses with fetch schemes assert_equals: expected "{\"about\":[\"about:good\"],\"blob\":[\"blob:good\"],\"data\":[\"data:good\"],\"file\":[\"file:///good\"],\"filesystem\":[\"filesystem:good\"],\"ftp\":[\"ftp://good/\"],\"http\":[\"http://good/\"],\"https\":[\"https://good/\"],\"import\":[],\"javascript\":[],\"mailto\":[],\"wss\":[]}" but got "{\"about\":[\"about:good\"],\"blob\":[\"blob:good\"],\"data\":[\"data:good\"],\"file\":[\"file:///good\"],\"filesystem\":[],\"ftp\":[\"ftp://good/\"],\"http\":[\"http://good/\"],\"https\":[\"https://good/\"],\"import\":[\"import:bad\"],\"javascript\":[\"javascript:bad\"],\"mailto\":[\"mailto:bad\"],\"wss\":[\"wss://bad/\"]}"
 FAIL Absolute URL addresses / should only accept absolute URL addresses with fetch schemes inside arrays assert_equals: expected "{\"about\":[\"about:good\"],\"blob\":[\"blob:good\"],\"data\":[\"data:good\"],\"file\":[\"file:///good\"],\"filesystem\":[\"filesystem:good\"],\"ftp\":[\"ftp://good/\"],\"http\":[\"http://good/\"],\"https\":[\"https://good/\"],\"import\":[],\"javascript\":[],\"mailto\":[],\"wss\":[]}" but got "{\"about\":[\"about:good\"],\"blob\":[\"blob:good\"],\"data\":[\"data:good\"],\"file\":[\"file:///good\"],\"filesystem\":[],\"ftp\":[\"ftp://good/\"],\"http\":[\"http://good/\"],\"https\":[\"https://good/\"],\"import\":[\"import:bad\"],\"javascript\":[\"javascript:bad\"],\"mailto\":[\"mailto:bad\"],\"wss\":[\"wss://bad/\"]}"
 FAIL Absolute URL addresses / should parse absolute URLs, ignoring unparseable ones assert_equals: expected "{\"invalidButParseable1\":[\"https://example.org/\"],\"invalidButParseable2\":[\"https://example.com///\"],\"noPercentDecoding\":[\"https://example.com/%41\"],\"percentDecoding\":[\"https://example.com/\"],\"prettyNormal\":[\"https://example.net/\"],\"unparseable1\":[],\"unparseable2\":[],\"unparseable3\":[]}" but got "{\"invalidButParseable1\":[\"https://example.org/\"],\"invalidButParseable2\":[\"https://example.com///\"],\"noPercentDecoding\":[\"https://example.com/A\"],\"percentDecoding\":[\"https://example.com/\"],\"prettyNormal\":[\"https://example.net/\"],\"unparseable1\":[\"https://ex%20ample.org/\"],\"unparseable2\":[],\"unparseable3\":[]}"
diff --git a/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-schema.tentative-expected.txt b/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-schema.tentative-expected.txt
index afb5a364..d2f63ce 100644
--- a/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-schema.tentative-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-schema.tentative-expected.txt
@@ -2,12 +2,12 @@
 PASS Invalid JSON
 PASS Mismatching the top-level schema / should throw for top-level non-objects
 PASS Mismatching the top-level schema / should throw if imports is a non-object
-FAIL Mismatching the top-level schema / should throw if scopes is a non-object assert_throws: function "() => parseFromString(input, baseURL)" did not throw
+PASS Mismatching the top-level schema / should throw if scopes is a non-object
 FAIL Mismatching the top-level schema / should ignore unspecified top-level entries assert_object_equals: expected property "0" missing
 PASS Mismatching the specifier map schema / should ignore entries where the address is not a string, array, or null
 PASS Mismatching the specifier map schema / should ignore entries where the specifier key is an empty string
 PASS Mismatching the specifier map schema / should ignore members of an address array that are not strings
-FAIL Mismatching the specifier map schema / should throw if a scope's value is not an object assert_throws: function "() => parseFromString(input, baseURL)" did not throw
+PASS Mismatching the specifier map schema / should throw if a scope's value is not an object
 PASS Normalization / should normalize empty import maps to have imports and scopes keys
 PASS Normalization / should normalize an import map without imports to have imports
 PASS Normalization / should normalize an import map without scopes to have scopes
diff --git a/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-specifier-keys.tentative-expected.txt b/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-specifier-keys.tentative-expected.txt
index c07d36c..2c08065 100644
--- a/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-specifier-keys.tentative-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/import-maps/imported/parsing-specifier-keys.tentative-expected.txt
@@ -5,6 +5,6 @@
 PASS Relative URL-like specifier keys / should treat percent-encoded variants of ./, ../, or / as bare specifiers
 FAIL Absolute URL specifier keys / should only accept absolute URL specifier keys with fetch schemes, treating others as bare specifiers assert_equals: expected "{\"about:good\":[\"https://base.example/about\"],\"blob:good\":[\"https://base.example/blob\"],\"data:good\":[\"https://base.example/data\"],\"file:///good\":[\"https://base.example/file\"],\"filesystem:good\":[\"https://base.example/filesystem\"],\"ftp://good/\":[\"https://base.example/ftp/\"],\"http://good/\":[\"https://base.example/http/\"],\"https://good/\":[\"https://base.example/https/\"],\"import:bad\":[\"https://base.example/import\"],\"javascript:bad\":[\"https://base.example/javascript\"],\"mailto:bad\":[\"https://base.example/mailto\"],\"wss:bad\":[\"https://base.example/wss\"]}" but got "{\"about:good\":[\"https://base.example/about\"],\"blob:good\":[\"https://base.example/blob\"],\"data:good\":[\"https://base.example/data\"],\"file:///good\":[\"https://base.example/file\"],\"filesystem:good\":[\"https://base.example/filesystem\"],\"ftp://good/\":[\"https://base.example/ftp/\"],\"http://good/\":[\"https://base.example/http/\"],\"https://good/\":[\"https://base.example/https/\"],\"import:bad\":[\"https://base.example/import\"],\"javascript:bad\":[\"https://base.example/javascript\"],\"mailto:bad\":[\"https://base.example/mailto\"],\"wss://bad/\":[\"https://base.example/wss\"]}"
 FAIL Absolute URL specifier keys / should parse absolute URLs, treating unparseable ones as bare specifiers assert_equals: expected "{\"http://[www.example.com]/\":[\"https://base.example/unparseable3/\"],\"https://ex ample.org/\":[\"https://base.example/unparseable1/\"],\"https://example.com/\":[\"https://base.example/percentDecoding/\"],\"https://example.com/%41\":[\"https://base.example/noPercentDecoding\"],\"https://example.com///\":[\"https://base.example/invalidButParseable2/\"],\"https://example.com:demo\":[\"https://base.example/unparseable2\"],\"https://example.net/\":[\"https://base.example/prettyNormal/\"],\"https://example.org/\":[\"https://base.example/invalidButParseable1/\"]}" but got "{\"http://[www.example.com]/\":[\"https://base.example/unparseable3/\"],\"https://ex%20ample.org/\":[\"https://base.example/unparseable1/\"],\"https://example.com/\":[\"https://base.example/percentDecoding/\"],\"https://example.com///\":[\"https://base.example/invalidButParseable2/\"],\"https://example.com/A\":[\"https://base.example/noPercentDecoding\"],\"https://example.com:demo\":[\"https://base.example/unparseable2\"],\"https://example.net/\":[\"https://base.example/prettyNormal/\"],\"https://example.org/\":[\"https://base.example/invalidButParseable1/\"]}"
-FAIL Absolute URL specifier keys / should parse built-in module specifier keys, including with a "/" assert_equals: expected "{\"std:blank\":[\"https://base.example/blank\"],\"std:blank/\":[\"https://base.example/blank/\"],\"std:blank/foo\":[\"https://base.example/blank/foo\"],\"std:blank\\\foo\":[\"https://base.example/blank/backslashfoo\"]}" but got "{\"std:blank\":[\"https://base.example/blank\"],\"std:blank\\foo\":[\"https://base.example/blank/backslashfoo\"],\"std:blank/\":[\"https://base.example/blank/\"],\"std:blank/foo\":[\"https://base.example/blank/foo\"]}"
+PASS Absolute URL specifier keys / should parse built-in module specifier keys, including with a "/"
 Harness: the test ran to completion.
 
diff --git a/third_party/blink/web_tests/external/wpt/import-maps/imported/resolving-scopes.tentative-expected.txt b/third_party/blink/web_tests/external/wpt/import-maps/imported/resolving-scopes.tentative-expected.txt
deleted file mode 100644
index 9e08fef..0000000
--- a/third_party/blink/web_tests/external/wpt/import-maps/imported/resolving-scopes.tentative-expected.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-This is a testharness.js-based test.
-PASS Mapped using scope instead of "imports" / should fail when the mapping is to an empty array
-FAIL Mapped using scope instead of "imports" / Exact vs. prefix based matching / should match correctly when both are in the map Failed to resolve module specifier moment: Relative references must start with either "/", "./", or "../".
-FAIL Mapped using scope instead of "imports" / Exact vs. prefix based matching / should match correctly when only an exact match is in the map Failed to resolve module specifier moment: Relative references must start with either "/", "./", or "../".
-FAIL Mapped using scope instead of "imports" / Exact vs. prefix based matching / should match correctly when only a prefix match is in the map Failed to resolve module specifier moment: Relative references must start with either "/", "./", or "../".
-FAIL Mapped using scope instead of "imports" / Package-like scenarios / should resolve scoped assert_equals: expected "https://example.com/app/node_modules_2/lodash-es/lodash.js" but got "https://example.com/app/node_modules/lodash-es/lodash.js"
-FAIL Mapped using scope instead of "imports" / Package-like scenarios / should apply best scope match assert_equals: expected "https://example.com/node_modules_3/moment/src/moment.js" but got "https://example.com/node_modules/moment/src/moment.js"
-PASS Mapped using scope instead of "imports" / Package-like scenarios / should fallback to "imports"
-PASS Mapped using scope instead of "imports" / Package-like scenarios / should still fail for package-like specifiers that are not declared
-PASS Mapped using scope instead of "imports" / The scope inheritance example from the README / should fall back to "imports" when none match
-FAIL Mapped using scope instead of "imports" / The scope inheritance example from the README / should use a direct scope override assert_equals: expected "https://example.com/a-2.mjs" but got "https://example.com/a-1.mjs"
-FAIL Mapped using scope instead of "imports" / The scope inheritance example from the README / should use an indirect scope override assert_equals: expected "https://example.com/a-2.mjs" but got "https://example.com/a-1.mjs"
-FAIL Mapped using scope instead of "imports" / Relative URL scope keys / should resolve an empty string scope using the import map URL assert_equals: expected "https://example.com/a-empty-string.mjs" but got "https://example.com/a-1.mjs"
-FAIL Mapped using scope instead of "imports" / Relative URL scope keys / should resolve a ./ scope using the import map URL's directory assert_equals: expected "https://example.com/b-dot-slash.mjs" but got "https://example.com/b-1.mjs"
-FAIL Mapped using scope instead of "imports" / Relative URL scope keys / should resolve a ../ scope using the import map URL's directory assert_equals: expected "https://example.com/c-dot-dot-slash.mjs" but got "https://example.com/c-1.mjs"
-Harness: the test ran to completion.
-
diff --git a/third_party/blink/web_tests/external/wpt/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt b/third_party/blink/web_tests/external/wpt/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt
index fb915ff..48cfbb4 100644
--- a/third_party/blink/web_tests/external/wpt/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 690 tests; 656 PASS, 34 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 690 tests; 657 PASS, 33 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS Setup
 PASS align-content (type: discrete) has testInterpolation function
 PASS align-content uses discrete animation when animating between "flex-start" and "flex-end" with linear easing
@@ -251,7 +251,7 @@
 PASS filter: percentage or numeric-specifiable functions (percentage value)
 PASS filter: interpolate different length of filter-function-list with function which lacuna value is 1
 PASS filter: interpolate different length of filter-function-list with function which lacuna value is 0
-FAIL filter: interpolate different length of filter-function-list with drop-shadow function assert_equals: The value should be blur(5px) drop-shadow(rgba(0, 0, 255, 0.4) 5px 5px 5px at 500ms expected "blur(5px) drop-shadow(rgba(0, 0, 255, 0.4) 5px 5px 5px" but got "blur(5px) drop-shadow(rgba(0, 0, 255, 0.4) 5px 5px 5px)"
+PASS filter: interpolate different length of filter-function-list with drop-shadow function
 PASS filter: interpolate from none
 PASS filter: url function (interpoalte as discrete)
 PASS flex-basis (type: lengthPercentageOrCalc) has testInterpolation function
diff --git a/third_party/blink/web_tests/external/wpt/web-animations/animation-model/animation-types/property-types.js b/third_party/blink/web_tests/external/wpt/web-animations/animation-model/animation-types/property-types.js
index 75f7d61..dba946d 100644
--- a/third_party/blink/web_tests/external/wpt/web-animations/animation-model/animation-types/property-types.js
+++ b/third_party/blink/web_tests/external/wpt/web-animations/animation-model/animation-types/property-types.js
@@ -2205,7 +2205,7 @@
         [{ time: 500,
            // Per the spec: The initial value for interpolation is all length values
            // set to 0 and the used color set to transparent.
-           expected: 'blur(5px) drop-shadow(rgba(0, 0, 255, 0.4) 5px 5px 5px' }]);
+           expected: 'blur(5px) drop-shadow(rgba(0, 0, 255, 0.4) 5px 5px 5px)' }]);
     }, `${property}: interpolate different length of filter-function-list`
        + ' with drop-shadow function');
 
diff --git a/third_party/blink/web_tests/fast/forms/controls-new-ui/color/color-picker-no-tab-character.html b/third_party/blink/web_tests/fast/forms/controls-new-ui/color/color-picker-no-tab-character.html
new file mode 100644
index 0000000..bc6eaf98
--- /dev/null
+++ b/third_party/blink/web_tests/fast/forms/controls-new-ui/color/color-picker-no-tab-character.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src='../../../../resources/testharness.js'></script>
+<script src='../../../../resources/testharnessreport.js'></script>
+<script src='../../../forms/resources/picker-common.js'></script>
+</head>
+<body>
+<input type='color' id='color' value='#80d9ff'>
+<script>
+'use strict';
+
+let t = async_test('Color picker: Tabbing into a color value container should not insert a tab character.');
+t.step(() => {
+  let colorControl = document.getElementById('color');
+  openPicker(colorControl, t.step_func_done(() => {
+    popupWindow.focus();
+    const popupDocument = popupWindow.document;
+    const rValueContainer = popupDocument.getElementById('rValueContainer');
+    const gValueContainer = popupDocument.getElementById('gValueContainer');
+    const bValueContainer = popupDocument.getElementById('bValueContainer');
+    assert_equals(rValueContainer.value, '128');
+    assert_equals(gValueContainer.value, '217');
+    assert_equals(bValueContainer.value, '255');
+    const hueSliderSelectionRing = popupDocument.querySelector('hue-slider > color-selection-ring');
+    hueSliderSelectionRing.focus();
+    assert_equals(popupDocument.activeElement, hueSliderSelectionRing);
+    eventSender.keyDown('Tab');
+    assert_equals(popupDocument.activeElement, rValueContainer, 'rValueContainer should be the active element');
+    assert_equals(rValueContainer.value, '128', 'rValueContainer\'s value should not have changed');
+    eventSender.keyDown('Tab');
+    assert_equals(popupDocument.activeElement, gValueContainer, 'gValueContainer should be the active element');
+    assert_equals(gValueContainer.value, '217', 'gValueContainer\'s value should not have changed');
+    eventSender.keyDown('Tab');
+    assert_equals(popupDocument.activeElement, bValueContainer, 'bValueContainer should be the active element');
+    assert_equals(bValueContainer.value, '255', 'bValueContainer\'s value should not have changed');
+  }), t.step_func_done(() => {
+    assert_false(internals.runtimeFlags.formControlsRefreshEnabled, "Popup should only not open when the formControlsRefresh flag is disabled.");
+  }));
+});
+</script>
+</body>
+</html>
\ No newline at end of file
diff --git a/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..56d31c3
--- /dev/null
+++ b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown.html b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown.html
new file mode 100644
index 0000000..6d7e211
--- /dev/null
+++ b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<script>
+testRunner.waitUntilDone();
+</script>
+<script src="../../../forms/resources/picker-common.js"></script>
+<input type="time" id="time" value="14:15">
+<script>
+openPicker(document.getElementById('time'), () => {
+  // change hours value
+  for (let i = 0; i < 26; i++)
+    eventSender.keyDown('ArrowDown');
+  testRunner.notifyDone()
+}, () => testRunner.notifyDone());
+</script>
\ No newline at end of file
diff --git a/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..56d31c3
--- /dev/null
+++ b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup.html b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup.html
new file mode 100644
index 0000000..d21f6ba
--- /dev/null
+++ b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<script>
+testRunner.waitUntilDone();
+</script>
+<script src="../../../forms/resources/picker-common.js"></script>
+<input type="time" id="time" value="14:15">
+<script>
+openPicker(document.getElementById('time'), () => {
+  // change hours value
+  for (let i = 0; i < 26; i++)
+    eventSender.keyDown('ArrowUp');
+  testRunner.notifyDone()
+}, () => testRunner.notifyDone());
+</script>
\ No newline at end of file
diff --git a/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-cancel-select-value-with-keyboard.html b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-cancel-select-value-with-keyboard.html
new file mode 100644
index 0000000..9542a06
--- /dev/null
+++ b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-cancel-select-value-with-keyboard.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src="../../../../resources/testharness.js"></script>
+<script src="../../../../resources/testharnessreport.js"></script>
+<script src="../../../forms/resources/common.js"></script>
+<script src="../../../forms/resources/picker-common.js"></script>
+<script src="../../../forms/calendar-picker/resources/calendar-picker-common.js"></script>
+</head>
+<body>
+<input type="time" id="time" value="14:15">
+<script>
+
+let t = async_test('Test cancel select value with keyboard in time popup');
+
+function cancelSelectValue() {
+  // change hours value
+  eventSender.keyDown('ArrowDown');
+  eventSender.keyDown('ArrowDown');
+
+  // move to minutes column
+  eventSender.keyDown('ArrowRight');
+  // change minutes value
+  eventSender.keyDown('ArrowDown');
+  eventSender.keyDown('ArrowDown');
+  eventSender.keyDown('ArrowDown');
+
+  // move to seconds column
+  eventSender.keyDown('ArrowRight');
+  // change seconds value
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+
+  // move to ampm column
+  eventSender.keyDown('ArrowRight');
+  // change ampm value
+  eventSender.keyDown('ArrowDown');
+
+  // close the popup
+  eventSender.keyDown('Escape');
+
+  let timeElement = document.getElementById("time");
+  assert_equals(timeElement.value, "14:15");
+  assert_equals(internals.pagePopupWindow, null);
+
+  t.done();
+}
+
+t.step(() => {
+  openPicker(document.getElementById('time'), t.step_func(cancelSelectValue),  t.step_func_done(() => {
+    assert_false(internals.runtimeFlags.formControlsRefreshEnabled, "Popup did not open.");
+  }));
+});
+</script>
+</body>
+</html>
\ No newline at end of file
diff --git a/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-select-value-with-keyboard.html b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-select-value-with-keyboard.html
new file mode 100644
index 0000000..29101f1
--- /dev/null
+++ b/third_party/blink/web_tests/fast/forms/controls-new-ui/time-picker/time-picker-select-value-with-keyboard.html
@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src="../../../../resources/testharness.js"></script>
+<script src="../../../../resources/testharnessreport.js"></script>
+<script src="../../../forms/resources/common.js"></script>
+<script src="../../../forms/resources/picker-common.js"></script>
+<script src="../../../forms/calendar-picker/resources/calendar-picker-common.js"></script>
+</head>
+<body>
+<input type="time" id="time" value="14:15:00" step="1">
+<script>
+
+let t = async_test('Test select value in time popup using keyboard');
+
+function selectValue() {
+  let timeElement = document.getElementById("time");
+  timeElement.addEventListener("change", t.step_func_done(() => {
+    assert_equals(timeElement.value, "00:18:54");
+  }));
+  // change hours value
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+
+  // move to minutes column
+  eventSender.keyDown('ArrowRight');
+  // change minutes value
+  eventSender.keyDown('ArrowDown');
+  eventSender.keyDown('ArrowDown');
+  eventSender.keyDown('ArrowDown');
+
+  // move to seconds column
+  eventSender.keyDown('ArrowRight');
+  // change seconds value
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+  eventSender.keyDown('ArrowUp');
+
+  // move to ampm column
+  eventSender.keyDown('ArrowRight');
+  // change ampm value
+  eventSender.keyDown('ArrowDown');
+
+  // submit the new value
+  eventSender.keyDown('Enter');
+}
+
+t.step(() => {
+  openPicker(document.getElementById('time'), t.step_func(selectValue),  t.step_func_done(() => {
+    assert_false(internals.runtimeFlags.formControlsRefreshEnabled, "Popup did not open.");
+  }));
+});
+</script>
+</body>
+</html>
\ No newline at end of file
diff --git a/third_party/blink/web_tests/media/controls/keynav-preventdefault.html b/third_party/blink/web_tests/media/controls/keynav-preventdefault.html
new file mode 100644
index 0000000..0807224
--- /dev/null
+++ b/third_party/blink/web_tests/media/controls/keynav-preventdefault.html
@@ -0,0 +1,51 @@
+<DOCTYPE html>
+  <title>Test media controls video keyboard navigation with preventDefault()</title>
+  <script src="../../resources/testharness.js"></script>
+  <script src="../../resources/testharnessreport.js"></script>
+  <script src="../media-controls.js"></script>
+  <script>
+  test(_ => {
+    assert_true('eventSender' in window);
+  }, 'eventSender required');
+
+  async_test(function(t) {
+      var video = document.createElement('video');
+      video.src = "../content/test.ogv";
+      video.controls = true;
+      assert_equals(video.volume, 1);
+      assert_equals(video.currentTime, 0);
+
+      video.addEventListener('keydown', e => { e.preventDefault() });
+      video.addEventListener('keypress', e => { e.preventDefault() });
+      video.addEventListener('keyup', e => { e.preventDefault() });
+
+      video.oncanplaythrough = t.step_func_done(function() {
+        // Focus the video.
+        video.focus();
+
+        // 'Enter' does not play the video.
+        eventSender.keyDown("Enter");
+        assert_true(video.paused);
+
+        // 'Down' does not reduce volume.
+        eventSender.keyDown("ArrowDown");
+        assert_equals(video.volume, 1);
+
+        // 'Space' also does not pauses/plays the video.
+        eventSender.keyDown(" ");
+        assert_true(video.paused);
+
+        var cur = video.currentTime;
+
+        // 'Right' does not scrub the timeline forward.
+        eventSender.keyDown("ArrowRight");
+        assert_equals(video.currentTime, cur);
+
+        // 'End' does not set the timeline to end.
+        eventSender.keyDown("End");
+        assert_equals(video.currentTime, cur);
+      });
+
+      document.body.appendChild(video);
+  });
+  </script>
diff --git a/third_party/blink/web_tests/platform/linux/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/linux/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..d1493eff
--- /dev/null
+++ b/third_party/blink/web_tests/platform/linux/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/linux/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..d1493eff
--- /dev/null
+++ b/third_party/blink/web_tests/platform/linux/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
index 74a68d7b3..45d95fe 100644
--- a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
index e17aa47..7861d0459 100644
--- a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
index 6bd9481..5d264060 100644
--- a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..0e52d0f4
--- /dev/null
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..e9f2078
--- /dev/null
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
index 26d0ee45..3999bd5 100644
--- a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
index 5f1c7c5..22541a0 100644
--- a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
index 8fd360d8..c525139c 100644
--- a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
index c9d1cdcc..e5b5df7 100644
--- a/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
+++ b/third_party/blink/web_tests/platform/linux/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..c4eebf6
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..c4eebf6
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
index 140a596..1147736 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
index eb003ed..7cfdf1f 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
index 905ce85..b97021a 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..f5e8f0a
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..e3f8731
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
index c715380f..f7111d6 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
index 47d77cd..13df557 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
index 7c695cab..9add0dce 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
index bb5cc44..5f8708b 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.10/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
index 9758875..451d263 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
index 79c5b68..fa57757 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
index 13f5ecd..5fb54f2 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..bd0ffa4e
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..c3321e1
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
index 99816c3..d5a9fcd3 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
index 2a48053d..5b34f9e 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
index 004d040..f6c0942 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
index 9b0ac7a..530732e 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.11/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
index 9758875..451d263 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
index 79c5b68..fa57757 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
index 13f5ecd..5fb54f2 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..bd0ffa4e
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..c3321e1
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
index 99816c3..d5a9fcd3 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
index 2a48053d..5b34f9e 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
index 004d040..f6c0942 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
index 9b0ac7a..530732e 100644
--- a/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
+++ b/third_party/blink/web_tests/platform/mac-mac10.12/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
index 68ae5d2..b041444 100644
--- a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
index ea9d1c4..ba3950e 100644
--- a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
index 339ca1a..fe6543a8 100644
--- a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..3831958
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..18a9f5af
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
index 0463dc58..76b2ea0 100644
--- a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
index 1197cb4..ab136ff 100644
--- a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
index b2dde20..9c2329d 100644
--- a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
index bd556f0..85466fc2 100644
--- a/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
+++ b/third_party/blink/web_tests/platform/mac-retina/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/mac/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..7dad078d
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/mac/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..7dad078d
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
index 68ae5d2..b041444 100644
--- a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
index ea9d1c4..ba3950e 100644
--- a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
index 339ca1a..fe6543a8 100644
--- a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..3831958
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..18a9f5af
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
index 0463dc58..76b2ea0 100644
--- a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
index 1197cb4..ab136ff 100644
--- a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
index b2dde20..9c2329d 100644
--- a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
index bd556f0..85466fc2 100644
--- a/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
+++ b/third_party/blink/web_tests/platform/mac/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/win7/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png b/third_party/blink/web_tests/platform/win7/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
index c351dcc..8d09bb0 100644
--- a/third_party/blink/web_tests/platform/win7/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
+++ b/third_party/blink/web_tests/platform/win7/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
index d1344e1..c47fa87 100644
--- a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-AM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
index 0a4dc3d..6ad7140 100644
--- a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-12-PM-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
index db48182e..ee3a517 100644
--- a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-24-hour-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
new file mode 100644
index 0000000..8fbcbfd
--- /dev/null
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowdown-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
new file mode 100644
index 0000000..c89e47f
--- /dev/null
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-arrowup-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
index eaf74d1..f0a326ea 100644
--- a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
index afeec17b..6c69c2c 100644
--- a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-ko-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
index 826729f..acbba44 100644
--- a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-milliseconds-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
index 5813df14..b45e448b 100644
--- a/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
+++ b/third_party/blink/web_tests/virtual/controls-refresh/fast/forms/controls-new-ui/time-picker/time-picker-appearance-seconds-pm-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt b/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
index 70889ae..93f47cc8 100644
--- a/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
+++ b/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
@@ -10928,8 +10928,8 @@
 interface XRHitTestResult
     attribute @@toStringTag
     getter hitTestOptions
-    getter transform
     method constructor
+    method getPose
 interface XRHitTestSource
     attribute @@toStringTag
     getter hitTestOptions
diff --git a/third_party/bouncycastle/OWNERS b/third_party/bouncycastle/OWNERS
index 7fcd92b..df1ed5b 100644
--- a/third_party/bouncycastle/OWNERS
+++ b/third_party/bouncycastle/OWNERS
@@ -1,3 +1,5 @@
 jbudorick@chromium.org
 mikecase@chromium.org
-yolandyan@chromium.org
\ No newline at end of file
+yolandyan@chromium.org
+
+# COMPONENT: Test>Android
diff --git a/third_party/checkstyle/OWNERS b/third_party/checkstyle/OWNERS
index cf39ee7..efb02801b 100644
--- a/third_party/checkstyle/OWNERS
+++ b/third_party/checkstyle/OWNERS
@@ -1,3 +1,5 @@
 agrieve@chromium.org
 jbudorick@chromium.org
 nyquist@chromium.org
+
+# COMPONENT: Build
diff --git a/third_party/espresso/OWNERS b/third_party/espresso/OWNERS
index e44d585..aa28a39f 100644
--- a/third_party/espresso/OWNERS
+++ b/third_party/espresso/OWNERS
@@ -1 +1,3 @@
 jbudorick@chromium.org
+
+# COMPONENT: Test>Android
diff --git a/third_party/gson/OWNERS b/third_party/gson/OWNERS
index 7fcd92b..df1ed5b 100644
--- a/third_party/gson/OWNERS
+++ b/third_party/gson/OWNERS
@@ -1,3 +1,5 @@
 jbudorick@chromium.org
 mikecase@chromium.org
-yolandyan@chromium.org
\ No newline at end of file
+yolandyan@chromium.org
+
+# COMPONENT: Test>Android
diff --git a/third_party/guava/OWNERS b/third_party/guava/OWNERS
index 502ba10..ec79990 100644
--- a/third_party/guava/OWNERS
+++ b/third_party/guava/OWNERS
@@ -1,3 +1,5 @@
 jbudorick@chromium.org
 wnwen@chromium.org
 yolandyan@chromium.org
+
+# COMPONENT: Test>Android
\ No newline at end of file
diff --git a/third_party/hamcrest/OWNERS b/third_party/hamcrest/OWNERS
index 2cfd26c3..df1ed5b 100644
--- a/third_party/hamcrest/OWNERS
+++ b/third_party/hamcrest/OWNERS
@@ -1,3 +1,5 @@
 jbudorick@chromium.org
 mikecase@chromium.org
 yolandyan@chromium.org
+
+# COMPONENT: Test>Android
diff --git a/third_party/intellij/OWNERS b/third_party/intellij/OWNERS
index 7fcd92b..df1ed5b 100644
--- a/third_party/intellij/OWNERS
+++ b/third_party/intellij/OWNERS
@@ -1,3 +1,5 @@
 jbudorick@chromium.org
 mikecase@chromium.org
-yolandyan@chromium.org
\ No newline at end of file
+yolandyan@chromium.org
+
+# COMPONENT: Test>Android
diff --git a/third_party/javalang/OWNERS b/third_party/javalang/OWNERS
index f6adf2b..75998dd 100644
--- a/third_party/javalang/OWNERS
+++ b/third_party/javalang/OWNERS
@@ -1,2 +1,4 @@
 tiborg@chromium.org
-wnwen@chromium.org
\ No newline at end of file
+wnwen@chromium.org
+
+# COMPONENT: Build
diff --git a/third_party/node/OWNERS b/third_party/node/OWNERS
index ca467ff7f..037058ea 100644
--- a/third_party/node/OWNERS
+++ b/third_party/node/OWNERS
@@ -1,2 +1,4 @@
 dbeam@chromium.org
 dpapad@chromium.org
+
+# COMPONENT: Build
diff --git a/third_party/objenesis/OWNERS b/third_party/objenesis/OWNERS
index 7fcd92b..df1ed5b 100644
--- a/third_party/objenesis/OWNERS
+++ b/third_party/objenesis/OWNERS
@@ -1,3 +1,5 @@
 jbudorick@chromium.org
 mikecase@chromium.org
-yolandyan@chromium.org
\ No newline at end of file
+yolandyan@chromium.org
+
+# COMPONENT: Test>Android
diff --git a/third_party/ow2_asm/OWNERS b/third_party/ow2_asm/OWNERS
index 61cee31..14322cf 100644
--- a/third_party/ow2_asm/OWNERS
+++ b/third_party/ow2_asm/OWNERS
@@ -1,3 +1,5 @@
 jbudorick@chromium.org
 estevenson@chromium.org
 yolandyan@chromium.org
+
+# COMPONENT: Build
diff --git a/third_party/r8/OWNERS b/third_party/r8/OWNERS
index fffc56f..1da7995b 100644
--- a/third_party/r8/OWNERS
+++ b/third_party/r8/OWNERS
@@ -1,3 +1,5 @@
 smaier@chromium.org
 estevenson@chromium.org
 agrieve@chromium.org
+
+# COMPONENT: Build
diff --git a/third_party/wayland-protocols/BUILD.gn b/third_party/wayland-protocols/BUILD.gn
index 919cd38..9ca1dc8 100644
--- a/third_party/wayland-protocols/BUILD.gn
+++ b/third_party/wayland-protocols/BUILD.gn
@@ -142,3 +142,9 @@
     "src/unstable/linux-explicit-synchronization/linux-explicit-synchronization-unstable-v1.xml",
   ]
 }
+
+wayland_protocol("wayland_drm_protocol") {
+  sources = [
+    "mesa/wayland-drm/wayland-drm.xml",
+  ]
+}
diff --git a/third_party/wayland-protocols/mesa/wayland-drm/README b/third_party/wayland-protocols/mesa/wayland-drm/README
new file mode 100644
index 0000000..03283e4e
--- /dev/null
+++ b/third_party/wayland-protocols/mesa/wayland-drm/README
@@ -0,0 +1,4 @@
+Wayland DRM protocol
+
+Maintainers:
+Maksim Sisov <msisov@igalia.com>
diff --git a/third_party/wayland-protocols/mesa/wayland-drm/wayland-drm.xml b/third_party/wayland-protocols/mesa/wayland-drm/wayland-drm.xml
new file mode 100644
index 0000000..eaf2654
--- /dev/null
+++ b/third_party/wayland-protocols/mesa/wayland-drm/wayland-drm.xml
@@ -0,0 +1,189 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<protocol name="drm">
+
+  <copyright>
+    Copyright © 2008-2011 Kristian Høgsberg
+    Copyright © 2010-2011 Intel Corporation
+
+    Permission to use, copy, modify, distribute, and sell this
+    software and its documentation for any purpose is hereby granted
+    without fee, provided that\n the above copyright notice appear in
+    all copies and that both that copyright notice and this permission
+    notice appear in supporting documentation, and that the name of
+    the copyright holders not be used in advertising or publicity
+    pertaining to distribution of the software without specific,
+    written prior permission.  The copyright holders make no
+    representations about the suitability of this software for any
+    purpose.  It is provided "as is" without express or implied
+    warranty.
+
+    THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
+    SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+    FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
+    SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
+    AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+    ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
+    THIS SOFTWARE.
+  </copyright>
+
+  <!-- drm support. This object is created by the server and published
+       using the display's global event. -->
+  <interface name="wl_drm" version="2">
+    <enum name="error">
+      <entry name="authenticate_fail" value="0"/>
+      <entry name="invalid_format" value="1"/>
+      <entry name="invalid_name" value="2"/>
+    </enum>
+
+    <enum name="format">
+      <!-- The drm format codes match the #defines in drm_fourcc.h.
+           The formats actually supported by the compositor will be
+           reported by the format event. New codes must not be added,
+           unless directly taken from drm_fourcc.h. -->
+      <entry name="c8" value="0x20203843"/>
+      <entry name="rgb332" value="0x38424752"/>
+      <entry name="bgr233" value="0x38524742"/>
+      <entry name="xrgb4444" value="0x32315258"/>
+      <entry name="xbgr4444" value="0x32314258"/>
+      <entry name="rgbx4444" value="0x32315852"/>
+      <entry name="bgrx4444" value="0x32315842"/>
+      <entry name="argb4444" value="0x32315241"/>
+      <entry name="abgr4444" value="0x32314241"/>
+      <entry name="rgba4444" value="0x32314152"/>
+      <entry name="bgra4444" value="0x32314142"/>
+      <entry name="xrgb1555" value="0x35315258"/>
+      <entry name="xbgr1555" value="0x35314258"/>
+      <entry name="rgbx5551" value="0x35315852"/>
+      <entry name="bgrx5551" value="0x35315842"/>
+      <entry name="argb1555" value="0x35315241"/>
+      <entry name="abgr1555" value="0x35314241"/>
+      <entry name="rgba5551" value="0x35314152"/>
+      <entry name="bgra5551" value="0x35314142"/>
+      <entry name="rgb565" value="0x36314752"/>
+      <entry name="bgr565" value="0x36314742"/>
+      <entry name="rgb888" value="0x34324752"/>
+      <entry name="bgr888" value="0x34324742"/>
+      <entry name="xrgb8888" value="0x34325258"/>
+      <entry name="xbgr8888" value="0x34324258"/>
+      <entry name="rgbx8888" value="0x34325852"/>
+      <entry name="bgrx8888" value="0x34325842"/>
+      <entry name="argb8888" value="0x34325241"/>
+      <entry name="abgr8888" value="0x34324241"/>
+      <entry name="rgba8888" value="0x34324152"/>
+      <entry name="bgra8888" value="0x34324142"/>
+      <entry name="xrgb2101010" value="0x30335258"/>
+      <entry name="xbgr2101010" value="0x30334258"/>
+      <entry name="rgbx1010102" value="0x30335852"/>
+      <entry name="bgrx1010102" value="0x30335842"/>
+      <entry name="argb2101010" value="0x30335241"/>
+      <entry name="abgr2101010" value="0x30334241"/>
+      <entry name="rgba1010102" value="0x30334152"/>
+      <entry name="bgra1010102" value="0x30334142"/>
+      <entry name="yuyv" value="0x56595559"/>
+      <entry name="yvyu" value="0x55595659"/>
+      <entry name="uyvy" value="0x59565955"/>
+      <entry name="vyuy" value="0x59555956"/>
+      <entry name="ayuv" value="0x56555941"/>
+      <entry name="xyuv8888" value="0x56555958"/>
+      <entry name="nv12" value="0x3231564e"/>
+      <entry name="nv21" value="0x3132564e"/>
+      <entry name="nv16" value="0x3631564e"/>
+      <entry name="nv61" value="0x3136564e"/>
+      <entry name="yuv410" value="0x39565559"/>
+      <entry name="yvu410" value="0x39555659"/>
+      <entry name="yuv411" value="0x31315559"/>
+      <entry name="yvu411" value="0x31315659"/>
+      <entry name="yuv420" value="0x32315559"/>
+      <entry name="yvu420" value="0x32315659"/>
+      <entry name="yuv422" value="0x36315559"/>
+      <entry name="yvu422" value="0x36315659"/>
+      <entry name="yuv444" value="0x34325559"/>
+      <entry name="yvu444" value="0x34325659"/>
+      <entry name="abgr16f" value="0x48344241"/>
+      <entry name="xbgr16f" value="0x48344258"/>
+    </enum>
+
+    <!-- Call this request with the magic received from drmGetMagic().
+         It will be passed on to the drmAuthMagic() or
+         DRIAuthConnection() call.  This authentication must be
+         completed before create_buffer could be used. -->
+    <request name="authenticate">
+      <arg name="id" type="uint"/>
+    </request>
+
+    <!-- Create a wayland buffer for the named DRM buffer.  The DRM
+         surface must have a name using the flink ioctl -->
+    <request name="create_buffer">
+      <arg name="id" type="new_id" interface="wl_buffer"/>
+      <arg name="name" type="uint"/>
+      <arg name="width" type="int"/>
+      <arg name="height" type="int"/>
+      <arg name="stride" type="uint"/>
+      <arg name="format" type="uint"/>
+    </request>
+
+    <!-- Create a wayland buffer for the named DRM buffer.  The DRM
+         surface must have a name using the flink ioctl -->
+    <request name="create_planar_buffer">
+      <arg name="id" type="new_id" interface="wl_buffer"/>
+      <arg name="name" type="uint"/>
+      <arg name="width" type="int"/>
+      <arg name="height" type="int"/>
+      <arg name="format" type="uint"/>
+      <arg name="offset0" type="int"/>
+      <arg name="stride0" type="int"/>
+      <arg name="offset1" type="int"/>
+      <arg name="stride1" type="int"/>
+      <arg name="offset2" type="int"/>
+      <arg name="stride2" type="int"/>
+    </request>
+
+    <!-- Notification of the path of the drm device which is used by
+         the server.  The client should use this device for creating
+         local buffers.  Only buffers created from this device should
+         be be passed to the server using this drm object's
+         create_buffer request. -->
+    <event name="device">
+      <arg name="name" type="string"/>
+    </event>
+
+    <event name="format">
+      <arg name="format" type="uint"/>
+    </event>
+
+    <!-- Raised if the authenticate request succeeded -->
+    <event name="authenticated"/>
+
+    <enum name="capability" since="2">
+      <description summary="wl_drm capability bitmask">
+        Bitmask of capabilities.
+      </description>
+      <entry name="prime" value="1" summary="wl_drm prime available"/>
+    </enum>
+
+    <event name="capabilities">
+      <arg name="value" type="uint"/>
+    </event>
+
+    <!-- Version 2 additions -->
+
+    <!-- Create a wayland buffer for the prime fd.  Use for regular and planar
+         buffers.  Pass 0 for offset and stride for unused planes. -->
+    <request name="create_prime_buffer" since="2">
+      <arg name="id" type="new_id" interface="wl_buffer"/>
+      <arg name="name" type="fd"/>
+      <arg name="width" type="int"/>
+      <arg name="height" type="int"/>
+      <arg name="format" type="uint"/>
+      <arg name="offset0" type="int"/>
+      <arg name="stride0" type="int"/>
+      <arg name="offset1" type="int"/>
+      <arg name="stride1" type="int"/>
+      <arg name="offset2" type="int"/>
+      <arg name="stride2" type="int"/>
+    </request>
+
+  </interface>
+
+</protocol>
diff --git a/third_party/win_build_output/OWNERS b/third_party/win_build_output/OWNERS
index 11e77e5..a5de7f0 100644
--- a/third_party/win_build_output/OWNERS
+++ b/third_party/win_build_output/OWNERS
@@ -1,2 +1,4 @@
 scottmg@chromium.org
 thakis@chromium.org
+
+# COMPONENT: Build
diff --git a/third_party/xstream/OWNERS b/third_party/xstream/OWNERS
index 00f4219..e0a816c 100644
--- a/third_party/xstream/OWNERS
+++ b/third_party/xstream/OWNERS
@@ -1,2 +1,4 @@
 mikecase@chromium.org
 yolandyan@chromium.org
+
+# COMPONENT: Test>Android
diff --git a/third_party/yasm/OWNERS b/third_party/yasm/OWNERS
index 26cc994..6a04c1b 100644
--- a/third_party/yasm/OWNERS
+++ b/third_party/yasm/OWNERS
@@ -1 +1,3 @@
 dalecurtis@chromium.org
+
+# COMPONENT: Build
diff --git a/tools/flags/generate_expired_list.py b/tools/flags/generate_expired_list.py
index f9b8337..33d7edc 100755
--- a/tools/flags/generate_expired_list.py
+++ b/tools/flags/generate_expired_list.py
@@ -32,7 +32,7 @@
     for line in f.readlines():
       key, value = line.strip().split('=')
       if key == 'MAJOR':
-        return value
+        return int(value)
   return None
 
 
diff --git a/tools/gritsettings/resource_ids b/tools/gritsettings/resource_ids
index 1c53b18..8bc95fb57 100644
--- a/tools/gritsettings/resource_ids
+++ b/tools/gritsettings/resource_ids
@@ -400,9 +400,6 @@
   "third_party/blink/public/blink_resources.grd": {
     "includes": [25200],
   },
-  "third_party/blink/renderer/modules/media_controls/touchless/resources/media_controls_touchless_resources.grd": {
-    "structures": [25290],
-  },
   "third_party/blink/renderer/modules/media_controls/resources/media_controls_resources.grd": {
     "includes": [25300],
     "structures": [25400],
diff --git a/tools/mb/mb_config.pyl b/tools/mb/mb_config.pyl
index 56398c3..f83dcb4 100644
--- a/tools/mb/mb_config.pyl
+++ b/tools/mb/mb_config.pyl
@@ -727,7 +727,9 @@
       'chromeos-betty-chrome': 'official_cros_chrome_sdk_headless_ozone',
       'chromeos-betty-pi-arc-chrome': 'official_cros_chrome_sdk_headless_ozone',
       'chromeos-eve-chrome': 'official_cros_chrome_sdk_headless_ozone',
+      'chromeos-eve-compile-chrome': 'official_cros_chrome_sdk_headless_ozone',
       'chromeos-kevin-chrome': 'official_cros_chrome_sdk_headless_ozone',
+      'chromeos-kevin-compile-chrome': 'official_cros_chrome_sdk_headless_ozone',
       'linux-chrome': 'official_goma',
       'linux-chromeos-chrome': 'official_goma_chromeos_minimal_symbols',
       'win_chrome_official': 'official_goma_x86',
diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml
index b89546b..c9d36c9 100644
--- a/tools/metrics/histograms/enums.xml
+++ b/tools/metrics/histograms/enums.xml
@@ -5075,6 +5075,7 @@
   <int value="217" label="AUTH_INVALID_ICON_URL"/>
   <int value="218" label="MDDH_INVALID_STREAM_SELECTION_INFO"/>
   <int value="219" label="REGISTER_PROTOCOL_HANDLER_INVALID_URL"/>
+  <int value="220" label="NC_SAME_DOCUMENT_POST_COMMIT_ERROR"/>
 </enum>
 
 <enum name="BadMessageReasonExtensions">
@@ -18206,6 +18207,8 @@
   <int value="620" label="ShelfAlignment"/>
   <int value="621" label="PrintingAllowedBackgroundGraphicsModes"/>
   <int value="622" label="PrintingBackgroundGraphicsDefault"/>
+  <int value="623" label="LegacySameSiteCookieBehaviorEnabled"/>
+  <int value="624" label="LegacySameSiteCookieBehaviorEnabledForDomainList"/>
 </enum>
 
 <enum name="EnterprisePolicyInvalidations">
@@ -35894,6 +35897,7 @@
   <int value="-892428689" label="ManualPasswordGenerationAndroid:enabled"/>
   <int value="-891856063" label="MidiManagerAndroid:enabled"/>
   <int value="-889670978" label="AssistantRoutines:disabled"/>
+  <int value="-887094098" label="ForcedColors:enabled"/>
   <int value="-886912558" label="ChromeHomePromo:enabled"/>
   <int value="-886898803" label="CooperativeScheduling:enabled"/>
   <int value="-885601782" label="enable-contextual-search"/>
@@ -36764,6 +36768,7 @@
   <int value="297095559" label="ShowBluetoothDebugLogToggle:disabled"/>
   <int value="299792415" label="OmniboxSuggestionTransparencyOptions:enabled"/>
   <int value="300095239" label="FCMInvalidations:enabled"/>
+  <int value="301630312" label="ForcedColors:disabled"/>
   <int value="301869874" label="NTPPhysicalWebPageSuggestions:disabled"/>
   <int value="303058039" label="AccountConsistency:disabled"/>
   <int value="303252119" label="AutofillExpandedPopupViews:disabled"/>
@@ -37374,6 +37379,7 @@
   <int value="1138349838" label="EnableMDRoundedCornersOnDialogs:disabled"/>
   <int value="1139226452" label="enable-nacl-debug"/>
   <int value="1139363314" label="disable-supervised-user-blacklist"/>
+  <int value="1140541604" label="WinrtGeolocationImplementation:enabled"/>
   <int value="1142515376" label="enable-nacl"/>
   <int value="1142788238" label="FontCacheScaling:disabled"/>
   <int value="1142970266"
@@ -37575,6 +37581,7 @@
   <int value="1382500494" label="disable-drive-apps-in-app-list"/>
   <int value="1383591631" label="enable-gesture-typing"/>
   <int value="1384614036" label="disable-unified-media-pipeline"/>
+  <int value="1385833812" label="WinrtGeolocationImplementation:disabled"/>
   <int value="1386300777"
       label="OmniboxUIExperimentHideSuggestionUrlTrivialSubdomains:disabled"/>
   <int value="1387356699" label="PolicyAtomicGroup:enabled"/>
@@ -48852,6 +48859,7 @@
   <int value="35" label="DateAndTime"/>
   <int value="36" label="Display"/>
   <int value="37" label="ActiveDirectoryManagement"/>
+  <int value="38" label="LegacySameSiteCookieBehaviorSettings"/>
 </enum>
 
 <enum name="PolicyLoadStatus">
@@ -49879,6 +49887,7 @@
   <int value="11" label="The chrome-proxy header is invalid"/>
   <int value="12" label="The network probe has not completed yet"/>
   <int value="13" label="The network probe completed and failed"/>
+  <int value="14" label="Preview is disabled for API navigations"/>
 </enum>
 
 <enum name="PreviewsServerLitePageServerResponse">
diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml
index 7d24ecd..d7dd034 100644
--- a/tools/metrics/histograms/histograms.xml
+++ b/tools/metrics/histograms/histograms.xml
@@ -95335,6 +95335,17 @@
   </summary>
 </histogram>
 
+<histogram name="OptimizationGuide.HintsFetcher.GetHintsRequest.FetchLatency"
+    units="ms" expires_after="M85">
+  <owner>sophiechang@chromium.org</owner>
+  <owner>mcrouse@chromium.org</owner>
+  <summary>
+    The duration of a request to fetch hints from the remote Optimization Guide
+    Service starts until it completes. Recorded every time hints are fetched and
+    parsed successfully.
+  </summary>
+</histogram>
+
 <histogram name="OptimizationGuide.HintsFetcher.GetHintsRequest.HintCount"
     units="units" expires_after="M85">
   <owner>mcrouse@chromium.org</owner>
diff --git a/tools/symsrc/OWNERS b/tools/symsrc/OWNERS
new file mode 100644
index 0000000..6b72bfb
--- /dev/null
+++ b/tools/symsrc/OWNERS
@@ -0,0 +1,2 @@
+brucedawson@chromium.org
+sebmarchand@chromium.org
diff --git a/tools/symsrc/README.chromium b/tools/symsrc/README.chromium
index 0398fe0c..77bdf95 100644
--- a/tools/symsrc/README.chromium
+++ b/tools/symsrc/README.chromium
@@ -1,14 +1,8 @@
 These files are related to the symbol and source server.
 
-This requires some Microsoft utilities.  From a 32-bit WinDbg installation with
-source server support, copy the following files to this directory:
-  dbghelp.dll
-  pdbstr.exe
-  srctool.exe
-
 The follow files were copied from the BSD licensed pefile-1.2.9.1:
   COPYING-pefile
   pefile.py
 
 pefile is available from:
-  http://code.google.com/p/pefile/
+  https://github.com/erocarrera/pefile
diff --git a/ui/accelerated_widget_mac/BUILD.gn b/ui/accelerated_widget_mac/BUILD.gn
index e7526c6..8ae3e48 100644
--- a/ui/accelerated_widget_mac/BUILD.gn
+++ b/ui/accelerated_widget_mac/BUILD.gn
@@ -9,7 +9,6 @@
     "accelerated_widget_mac.h",
     "accelerated_widget_mac.mm",
     "accelerated_widget_mac_export.h",
-    "availability_macros.h",
     "ca_layer_frame_sink.h",
     "ca_layer_frame_sink.mm",
     "ca_layer_tree_coordinator.h",
diff --git a/ui/accelerated_widget_mac/availability_macros.h b/ui/accelerated_widget_mac/availability_macros.h
deleted file mode 100644
index bc0bfe7..0000000
--- a/ui/accelerated_widget_mac/availability_macros.h
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// AVSampleBufferDisplayLayer has incorrectly been marked as available from
-// macOS 10.10, whereas it's been available since at least macOS 10.9. This
-// macro allows us to use AVSampleBufferDisplayLayer109 in its place.
-// Since we don't deploy to lower than 10.9, just disabling the warning is fine.
-#define AVSampleBufferDisplayLayer109                                  \
-  _Pragma("clang diagnostic push")                                     \
-      _Pragma("clang diagnostic ignored \"-Wunguarded-availability\"") \
-          AVSampleBufferDisplayLayer _Pragma("clang diagnostic pop")
diff --git a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm
index d13adf7..c86751a 100644
--- a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm
+++ b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm
@@ -8,7 +8,6 @@
 
 #include "base/mac/mac_util.h"
 #include "base/trace_event/trace_event.h"
-#include "ui/accelerated_widget_mac/availability_macros.h"
 #include "ui/base/cocoa/animation_utils.h"
 
 namespace ui {
diff --git a/ui/accelerated_widget_mac/ca_layer_tree_unittest_mac.mm b/ui/accelerated_widget_mac/ca_layer_tree_unittest_mac.mm
index 19071de..edf0b6d 100644
--- a/ui/accelerated_widget_mac/ca_layer_tree_unittest_mac.mm
+++ b/ui/accelerated_widget_mac/ca_layer_tree_unittest_mac.mm
@@ -10,7 +10,6 @@
 #include "testing/gtest/include/gtest/gtest.h"
 #include "testing/gtest_mac.h"
 #include "third_party/skia/include/core/SkColor.h"
-#include "ui/accelerated_widget_mac/availability_macros.h"
 #include "ui/accelerated_widget_mac/ca_renderer_layer_tree.h"
 #include "ui/gfx/geometry/dip_util.h"
 #include "ui/gfx/mac/io_surface.h"
diff --git a/ui/accelerated_widget_mac/ca_renderer_layer_tree.h b/ui/accelerated_widget_mac/ca_renderer_layer_tree.h
index 08057cb..b1ef3ec7 100644
--- a/ui/accelerated_widget_mac/ca_renderer_layer_tree.h
+++ b/ui/accelerated_widget_mac/ca_renderer_layer_tree.h
@@ -15,7 +15,6 @@
 #include "base/mac/scoped_nsobject.h"
 #include "base/memory/ref_counted.h"
 #include "ui/accelerated_widget_mac/accelerated_widget_mac_export.h"
-#include "ui/accelerated_widget_mac/availability_macros.h"
 #include "ui/gfx/geometry/rect.h"
 #include "ui/gfx/geometry/rect_f.h"
 #include "ui/gfx/mac/io_surface.h"
@@ -191,7 +190,7 @@
 
     // If this layer's contents can be represented as an
     // AVSampleBufferDisplayLayer, then |ca_layer| will point to |av_layer|.
-    base::scoped_nsobject<AVSampleBufferDisplayLayer109> av_layer;
+    base::scoped_nsobject<AVSampleBufferDisplayLayer> av_layer;
     bool use_av_layer = false;
 
    private:
diff --git a/ui/accelerated_widget_mac/ca_renderer_layer_tree.mm b/ui/accelerated_widget_mac/ca_renderer_layer_tree.mm
index 8cf753ed..5bc5c08 100644
--- a/ui/accelerated_widget_mac/ca_renderer_layer_tree.mm
+++ b/ui/accelerated_widget_mac/ca_renderer_layer_tree.mm
@@ -15,7 +15,6 @@
 #include "base/mac/sdk_forward_declarations.h"
 #include "base/trace_event/trace_event.h"
 #include "third_party/skia/include/core/SkColor.h"
-#include "ui/accelerated_widget_mac/availability_macros.h"
 #include "ui/base/cocoa/animation_utils.h"
 #include "ui/base/ui_base_switches.h"
 #include "ui/gfx/geometry/dip_util.h"
@@ -29,7 +28,7 @@
 // This will enqueue |io_surface| to be drawn by |av_layer|. This will
 // retain |cv_pixel_buffer| until it is no longer being displayed.
 bool AVSampleBufferDisplayLayerEnqueueCVPixelBuffer(
-    AVSampleBufferDisplayLayer109* av_layer,
+    AVSampleBufferDisplayLayer* av_layer,
     CVPixelBufferRef cv_pixel_buffer) {
   OSStatus os_status = noErr;
 
@@ -103,7 +102,7 @@
 // |io_surface| in a CVPixelBuffer. This will increase the in-use count
 // of and retain |io_surface| until it is no longer being displayed.
 bool AVSampleBufferDisplayLayerEnqueueIOSurface(
-    AVSampleBufferDisplayLayer109* av_layer,
+    AVSampleBufferDisplayLayer* av_layer,
     IOSurfaceRef io_surface) {
   CVReturn cv_return = kCVReturnSuccess;
 
@@ -766,7 +765,7 @@
     update_ca_filter = old_layer->ca_filter != ca_filter;
   } else {
     if (use_av_layer) {
-      av_layer.reset([[AVSampleBufferDisplayLayer109 alloc] init]);
+      av_layer.reset([[AVSampleBufferDisplayLayer alloc] init]);
       ca_layer.reset([av_layer retain]);
       [av_layer setVideoGravity:AVLayerVideoGravityResize];
     } else {
diff --git a/ui/accessibility/extensions/strings/accessibility_extensions_strings_ml.xtb b/ui/accessibility/extensions/strings/accessibility_extensions_strings_ml.xtb
index 8bad86c6..b3b6bdd 100644
--- a/ui/accessibility/extensions/strings/accessibility_extensions_strings_ml.xtb
+++ b/ui/accessibility/extensions/strings/accessibility_extensions_strings_ml.xtb
@@ -24,7 +24,7 @@
 <translation id="3435896845095436175">തയ്യാറാക്കുക</translation>
 <translation id="3622586652998721735">ഡിഫോൾട്ട് സ്‌കീമായി സജ്ജീകരിക്കുക</translation>
 <translation id="3812541808639806898">ചിത്ര Alt ടെക്‌സ്‌റ്റ് വ്യൂവർ</translation>
-<translation id="381767806621926835">ഏതിന്റെയെങ്കിലും ദൈഘ്യമുള്ള വിവരണത്തിലേക്ക് ആക്‌സസ് ചെയ്യുന്നതിന് "aria-describedat" അല്ലെങ്കിൽ "longdesc" എന്ന ആട്രി‌ബ്യൂട്ടിനൊപ്പം അതിൽ വലത് ക്ലിക്ക് ചെയ്യുക.</translation>
+<translation id="381767806621926835">ഏതിന്‍റെയെങ്കിലും ദൈർഘ്യമുള്ള വിവരണത്തിലേക്ക് ആക്‌സസ് ചെയ്യുന്നതിന് "aria-describedat" അല്ലെങ്കിൽ "longdesc" എന്ന ആട്രി‌ബ്യൂട്ടിനൊപ്പം അതിൽ വലത് ക്ലിക്ക് ചെയ്യുക.</translation>
 <translation id="4023902424053835668">അമ്പടയാള കീകൾ ഉപയോഗിച്ച് വെബ് പേജുകളുടെ ടെക്‌സ്റ്റ് ബ്രൗസ് ചെയ്യുക.</translation>
 <translation id="4388820049312272371">പെട്ടെന്നുള്ള ഒരു ഫ്ലാഷ് ഉപയോഗിച്ച് കഴ്‌സറിന്റെ സ്ഥാനം ഹൈലൈറ്റുചെയ്യുക.</translation>
 <translation id="4394049700291259645">അപ്രാപ്‌തമാക്കുക</translation>
diff --git a/ui/accessibility/platform/ax_platform_node_base.cc b/ui/accessibility/platform/ax_platform_node_base.cc
index 488e6e49..5f672836 100644
--- a/ui/accessibility/platform/ax_platform_node_base.cc
+++ b/ui/accessibility/platform/ax_platform_node_base.cc
@@ -494,7 +494,9 @@
   return value;
 }
 
-base::string16 AXPlatformNodeBase::GetRoleDescription() const {
+base::string16
+AXPlatformNodeBase::GetRoleDescriptionFromImageAnnotationStatusOrFromAttribute()
+    const {
   if (GetData().GetImageAnnotationStatus() ==
           ax::mojom::ImageAnnotationStatus::kEligibleForAnnotation ||
       GetData().GetImageAnnotationStatus() ==
@@ -502,8 +504,13 @@
     return GetDelegate()->GetLocalizedRoleDescriptionForUnlabeledImage();
   }
 
+  return GetString16Attribute(ax::mojom::StringAttribute::kRoleDescription);
+}
+
+base::string16 AXPlatformNodeBase::GetRoleDescription() const {
   base::string16 role_description =
-      GetString16Attribute(ax::mojom::StringAttribute::kRoleDescription);
+      GetRoleDescriptionFromImageAnnotationStatusOrFromAttribute();
+
   if (!role_description.empty()) {
     return role_description;
   }
@@ -813,7 +820,8 @@
     AddAttributeToList("autocomplete", "list", attributes);
   }
 
-  base::string16 role_description = GetRoleDescription();
+  base::string16 role_description =
+      GetRoleDescriptionFromImageAnnotationStatusOrFromAttribute();
   if (!role_description.empty() ||
       HasStringAttribute(ax::mojom::StringAttribute::kRoleDescription)) {
     AddAttributeToList("roledescription", base::UTF16ToUTF8(role_description),
diff --git a/ui/accessibility/platform/ax_platform_node_base.h b/ui/accessibility/platform/ax_platform_node_base.h
index e272093..e545591 100644
--- a/ui/accessibility/platform/ax_platform_node_base.h
+++ b/ui/accessibility/platform/ax_platform_node_base.h
@@ -293,6 +293,8 @@
   // Get the role description from the node data or from the image annotation
   // status.
   base::string16 GetRoleDescription() const;
+  base::string16 GetRoleDescriptionFromImageAnnotationStatusOrFromAttribute()
+      const;
 
   // Cast a gfx::NativeViewAccessible to an AXPlatformNodeBase if it is one,
   // or return NULL if it's not an instance of this class.
diff --git a/ui/accessibility/platform/ax_platform_node_win.cc b/ui/accessibility/platform/ax_platform_node_win.cc
index 729aaf2..e6d3de4 100644
--- a/ui/accessibility/platform/ax_platform_node_win.cc
+++ b/ui/accessibility/platform/ax_platform_node_win.cc
@@ -1448,7 +1448,8 @@
   COM_OBJECT_VALIDATE_1_ARG(localized_extended_role);
   AXPlatformNode::NotifyAddAXModeFlags(kScreenReaderAndHTMLAccessibilityModes);
 
-  base::string16 role_description = GetRoleDescription();
+  base::string16 role_description =
+      GetRoleDescriptionFromImageAnnotationStatusOrFromAttribute();
   if (base::ContainsOnlyChars(role_description, base::kWhitespaceUTF16))
     return S_FALSE;
 
diff --git a/ui/aura/test/ui_controls_factory_aurax11.cc b/ui/aura/test/ui_controls_factory_aurax11.cc
index 6334c74..07a047e 100644
--- a/ui/aura/test/ui_controls_factory_aurax11.cc
+++ b/ui/aura/test/ui_controls_factory_aurax11.cc
@@ -66,7 +66,8 @@
                                   bool alt,
                                   bool command,
                                   base::OnceClosure closure) override {
-    XEvent xevent = {0};
+    XEvent xevent;
+    xevent.xkey = {};
     xevent.xkey.type = KeyPress;
     if (control)
       SetKeycodeAndSendThenMask(&xevent, XK_Control_L, ControlMask);
@@ -119,7 +120,8 @@
       // current mouse position as a result of XGrabPointer()
       host_->window()->MoveCursorTo(root_location);
     } else {
-      XEvent xevent = {0};
+      XEvent xevent;
+      xevent.xmotion = {};
       XMotionEvent* xmotion = &xevent.xmotion;
       xmotion->type = MotionNotify;
       xmotion->x = root_location.x();
@@ -142,7 +144,8 @@
                                      int button_state,
                                      base::OnceClosure closure,
                                      int accelerator_state) override {
-    XEvent xevent = {0};
+    XEvent xevent;
+    xevent.xbutton = {};
     XButtonEvent* xbutton = &xevent.xbutton;
     gfx::Point mouse_loc = Env::GetInstance()->last_mouse_location();
     aura::client::ScreenPositionClient* screen_position_client =
diff --git a/ui/base/resource/resource_bundle_android.cc b/ui/base/resource/resource_bundle_android.cc
index 8ae718b7..3cdeb75a9 100644
--- a/ui/base/resource/resource_bundle_android.cc
+++ b/ui/base/resource/resource_bundle_android.cc
@@ -192,6 +192,14 @@
   }
 }
 
+void LoadPackFileFromApk(const std::string& path) {
+  base::MemoryMappedFile::Region region;
+  int fd = base::android::OpenApkAsset(path, &region);
+  CHECK_GE(fd, 0) << "Could not find " << path << " in APK.";
+  ui::ResourceBundle::GetSharedInstance().AddDataPackFromFileRegion(
+      base::File(fd), region, ui::SCALE_FACTOR_NONE);
+}
+
 int GetMainAndroidPackFd(base::MemoryMappedFile::Region* out_region) {
   DCHECK_GE(g_resources_pack_fd, 0);
   *out_region = g_resources_pack_region;
diff --git a/ui/base/resource/resource_bundle_android.h b/ui/base/resource/resource_bundle_android.h
index 68eb454..b6febd3e 100644
--- a/ui/base/resource/resource_bundle_android.h
+++ b/ui/base/resource/resource_bundle_android.h
@@ -25,6 +25,9 @@
     const char* path_within_apk,
     const base::FilePath& disk_file_path);
 
+// Loads a PAK file from the APK and makes the contained resources accessible.
+UI_BASE_EXPORT void LoadPackFileFromApk(const std::string& path);
+
 // Returns the file descriptor and region for resources.pak.
 UI_BASE_EXPORT int GetMainAndroidPackFd(
     base::MemoryMappedFile::Region* out_region);
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ar.xtb b/ui/chromeos/translations/ui_chromeos_strings_ar.xtb
index 19cd042..970b35b3 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_ar.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_ar.xtb
@@ -223,7 +223,7 @@
 <translation id="3645531960514756307">إزالة تثبيت علامة تبويب المجلد</translation>
 <translation id="3678559383040232393">لوحة المفاتيح المالطية</translation>
 <translation id="3685122418104378273">‏يتم إيقاف مزامنة Google Drive بشكل تلقائي، عند استخدام بيانات الجوّال.</translation>
-<translation id="3689865792480713551">إلغاء <ph name="ACTIVITY_DESCRIPTION" />.</translation>
+<translation id="3689865792480713551">إلغاء <ph name="ACTIVITY_DESCRIPTION" /></translation>
 <translation id="3726463242007121105">لا يمكن فتح الجهاز لأن نظام الملفات غير متوافق.</translation>
 <translation id="3741243925913727067">‏يمكنك نسخ الصور والفيديوهات بجهاز الوسائط احتياطيًا على Google Drive.</translation>
 <translation id="3749289110408117711">اسم الملف</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_el.xtb b/ui/chromeos/translations/ui_chromeos_strings_el.xtb
index 2ef51f6..226f8f51 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_el.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_el.xtb
@@ -477,7 +477,7 @@
 <translation id="6339145975392024142">Διεθνές ΗΠΑ (PC)</translation>
 <translation id="6346310558342052870">Περιορισμένη πρόσβαση</translation>
 <translation id="6353618411602605519">Πληκτρολόγιο με κροατικούς χαρακτήρες</translation>
-<translation id="6356685157277930264">Παράθυρο σχολίων για αρχεία</translation>
+<translation id="6356685157277930264">Παράθυρο πληροφοριών αρχείων</translation>
 <translation id="6358884629796491903">Δράκος</translation>
 <translation id="637062427944097960">Αυτό το αρχείο άνοιξε σε διαφορετικό προφίλ. Μεταβείτε στο προφίλ <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) για να το δείτε.</translation>
 <translation id="6395575651121294044"><ph name="NUMBER_OF_FILES" /> στοιχεία</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_hi.xtb b/ui/chromeos/translations/ui_chromeos_strings_hi.xtb
index 95f14bd3..8adf905a 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_hi.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_hi.xtb
@@ -223,6 +223,7 @@
 <translation id="3645531960514756307">फ़ोल्डर को अनपिन करें</translation>
 <translation id="3678559383040232393">माल्‍टीज़ कीबोर्ड</translation>
 <translation id="3685122418104378273">मोबाइल डेटा का उपयोग करते समय, Google डिस्‍क समन्‍वयन डिफ़ॉल्‍ट रूप से अक्षम रहता है.</translation>
+<translation id="3689865792480713551"><ph name="ACTIVITY_DESCRIPTION" /> रद्द करें.</translation>
 <translation id="3726463242007121105">यह डिवाइस नहीं खोला जा सकता क्‍योंकि इसका फ़ाइल सिस्‍टम समर्थित नहीं है.</translation>
 <translation id="3741243925913727067">अपने मीडिया डिवाइस की फ़ोटो और वीडियो का Google डिस्‍क पर बैक अप लें.</translation>
 <translation id="3749289110408117711">फ़ाइल नाम</translation>
@@ -463,6 +464,7 @@
 <translation id="6339145975392024142">यू.एस. अंतर्राष्ट्रीय (पीसी)</translation>
 <translation id="6346310558342052870">एक्सेस पर रोक लगी है</translation>
 <translation id="6353618411602605519">क्रोएशियाई कीबोर्ड</translation>
+<translation id="6356685157277930264">फ़ाइलों के सुझाव वाली विंडो</translation>
 <translation id="6358884629796491903">ड्रैगन</translation>
 <translation id="637062427944097960">यह फ़ाइल किसी अलग डेस्कटॉप पर खुली है. उसे देखने के लिए <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) पर जाएं.</translation>
 <translation id="6395575651121294044"><ph name="NUMBER_OF_FILES" /> आइटम</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ml.xtb b/ui/chromeos/translations/ui_chromeos_strings_ml.xtb
index fe68440..af8f59a 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_ml.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_ml.xtb
@@ -112,7 +112,7 @@
 <translation id="2291538123825441971"><ph name="NUMBER_OF_FILES" /> ഫയലുകൾ തുറക്കുന്നു.</translation>
 <translation id="2303301624314357662"><ph name="FILE_NAME" /> ഫയൽ തുറക്കുന്നു.</translation>
 <translation id="2305020378527873881"><ph name="VOLUME_NAME" /> ഒഴിവാക്കി.</translation>
-<translation id="2325650632570794183">ഈ ഫയൽ തരം പിന്തുണയ്‌ക്കുന്നില്ല. ഈ ഫയൽ തരം തുറക്കാൻ കഴിയുന്ന ഒരു അപ്ലിക്കേഷൻ കണ്ടെത്തുന്നതിന് ഒരു Chrome വെബ് സ്റ്റോർ കണ്ടെത്തുക.</translation>
+<translation id="2325650632570794183">ഈ ഫയൽ തരം പിന്തുണയ്‌ക്കുന്നില്ല. ഈ ഫയൽ തരം തുറക്കാൻ കഴിയുന്ന ഒരു ആപ്പ് കണ്ടെത്തുന്നതിന് ഒരു Chrome വെബ് സ്റ്റോർ കണ്ടെത്തുക.</translation>
 <translation id="23434688402327542">കസാഖ് കീബോർഡ്</translation>
 <translation id="2352947182261340447">ലോക്കൽ സ്‌‌റ്റോറേജിൽ മതിയായ ഇടം ലഭ്യമല്ല</translation>
 <translation id="2377319039870049694">ലിസ്റ്റ് കാഴ്‌ചയിലേക്ക് മാറുക</translation>
@@ -188,7 +188,7 @@
 <translation id="3241720467332021590">ഐറിഷ്</translation>
 <translation id="3245321423178950146">അറിയപ്പെടാത്ത കലാകാരൻ</translation>
 <translation id="3252266817569339921">ഫ്രഞ്ച്</translation>
-<translation id="3254434849914415189"><ph name="FILE_TYPE" /> ഫയലുകൾക്കായി ഡിഫോൾട്ട് ആപ്പ് തിരഞ്ഞെടുക്കുക:</translation>
+<translation id="3254434849914415189"><ph name="FILE_TYPE" /> ഫയലുകൾക്കായി സ്ഥിരസ്ഥിതി ആപ്പ് തിരഞ്ഞെടുക്കുക:</translation>
 <translation id="3264582393905923483">സന്ദർഭം</translation>
 <translation id="3280431534455935878">തയ്യാറെടുക്കുന്നു</translation>
 <translation id="3280987981688031357">വിനൈൽ റെക്കോർഡ്</translation>
@@ -229,12 +229,12 @@
 <translation id="3749289110408117711">ഫയല്‍ നാമം</translation>
 <translation id="3780536599611287598">'<ph name="FOLDER_NAME" />'-ലേക്ക് ഫയലുകൾ നീക്കാൻ നിങ്ങൾക്ക് അനുമതിയില്ല.</translation>
 <translation id="3786301125658655746">നിങ്ങൾ ഓഫ്‌ലൈനിലാണ്</translation>
-<translation id="3789841737615482174">ഇന്‍സ്റ്റാളുചെയ്യുക</translation>
+<translation id="3789841737615482174">ഇന്‍സ്റ്റാൾ ചെയ്യുക</translation>
 <translation id="3798449238516105146">പതിപ്പ്</translation>
 <translation id="3801082500826908679">ഫാറോസി</translation>
 <translation id="3809272675881623365">മുയൽ</translation>
 <translation id="3811494700605067549">ഒരു ഫയൽ തിരഞ്ഞെടുത്തു</translation>
-<translation id="3815016854028376614">സുയിൻ ടൈപ്പുചെയ്യൽ രീതി</translation>
+<translation id="3815016854028376614">Zhuyin ഇൻപുട്ട് രീതി</translation>
 <translation id="3825863595139017598">മംഗോളിയൻ കീബോർഡ്</translation>
 <translation id="38275787300541712">ചെയ്‌തുകഴിയുമ്പോൾ Enter അമർത്തുക</translation>
 <translation id="3830674330436234648">പ്ലേബാക്ക് ലഭ്യമല്ല</translation>
@@ -254,7 +254,7 @@
 <translation id="3958548648197196644">കിവി</translation>
 <translation id="3966388904776714213">ഓഡിയോ പ്ലേയർ</translation>
 <translation id="4002066346123236978">ശീർഷകം</translation>
-<translation id="4070370845051020638">കാന്റണീസ് ടൈപ്പുചെയ്യൽ രീതി</translation>
+<translation id="4070370845051020638">Cantonese ഇൻപുട്ട് രീതി</translation>
 <translation id="4072248638558688893">തമിഴ് കീബോർഡ് (സ്വരസൂചകം)</translation>
 <translation id="4124935795427217608">യൂണികോൺ</translation>
 <translation id="4158739975813877944">പ്ലേ ലിസ്‌റ്റ് തുറക്കുക</translation>
@@ -297,7 +297,7 @@
 <translation id="4694604912444486114">കുരങ്ങൻ</translation>
 <translation id="4697043402264950621">ആരോഹണ ക്രമത്തിൽ <ph name="COLUMN_NAME" /> അടുക്കിയ ഫയൽ ലിസ്‌റ്റ്.</translation>
 <translation id="4711094779914110278">ടര്‍ക്കിഷ്</translation>
-<translation id="4713544552769165154">ഈ ഫയൽ, Macintosh സോഫ്റ്റ്‌വെയർ ഉപയോഗിക്കുന്ന ഒരു കമ്പ്യൂട്ടറിനായി രൂപകൽപ്പന ചെയ്തിരിക്കുന്നതാണ്. Chrome OS പ്രവർത്തിപ്പിക്കുന്ന നിങ്ങളുടെ ഉപകരണത്തിന് ഇത് അനുയോജ്യമല്ല. അനുയോജ്യമായ മറ്റൊരു ആപ്പിനായി <ph name="BEGIN_LINK" />Chrome വെബ് സ്റ്റോറിൽ<ph name="END_LINK" /> തിരയുക.<ph name="BEGIN_LINK_HELP" />കൂടുതലറിയുക<ph name="END_LINK_HELP" /></translation>
+<translation id="4713544552769165154">ഈ ഫയൽ, Macintosh സോഫ്റ്റ്‌വെയർ ഉപയോഗിക്കുന്ന ഒരു കമ്പ്യൂട്ടറിനായി രൂപകൽപ്പന ചെയ്തിരിക്കുന്നു. Chrome OS പ്രവർത്തിപ്പിക്കുന്ന നിങ്ങളുടെ ഉപകരണത്തിന് ഇത് അനുയോജ്യമല്ല. അനുയോജ്യമായ മറ്റൊരു ആപ്പിനായി <ph name="BEGIN_LINK" />Chrome വെബ് സ്റ്റോറിൽ<ph name="END_LINK" /> തിരയുക.<ph name="BEGIN_LINK_HELP" />കൂടുതലറിയുക<ph name="END_LINK_HELP" /></translation>
 <translation id="4724850507808590449"><ph name="FILE_COUNT" /> ഫോട്ടോകൾ ബാക്കപ്പുചെയ്‌തു</translation>
 <translation id="4725511304875193254">പട്ടിക്കുട്ടി</translation>
 <translation id="4732760563705710320">ക്ഷമിക്കണം, ഈ വീഡിയോയെ നിങ്ങളുടെ കാസ്‌റ്റ് ഉപകരണം പിന്തുണയ്‌ക്കുന്നില്ല.</translation>
@@ -351,7 +351,7 @@
 <translation id="5158593464696388225">ചിത്രം സംരക്ഷിക്കുന്നത് പരാജയപ്പെട്ടു</translation>
 <translation id="5159383109919732130"><ph name="BEGIN_BOLD" />നിങ്ങളുടെ ഉപകരണം ഇപ്പോൾ നീക്കം ചെയ്യരുത്!<ph name="END_BOLD" />
    <ph name="LINE_BREAKS" />
-   ഉപയോഗത്തിലിരിക്കുന്ന നിങ്ങളുടെ ഉപകരണം നീക്കംചെയ്യുന്നത് ഡാറ്റ നഷ്‌ടത്തിന് കാരണമാകാം. പ്രവർത്തനം പൂർത്തിയാകുന്നതുവരെ കാത്തിരിക്കുക, തുടർന്ന് ഫയലുകളുടെ ആപ്പ് ഉപയോഗിച്ച് ഉപകരണം ഒഴിവാക്കുക.</translation>
+   ഉപയോഗത്തിലിരിക്കുന്ന നിങ്ങളുടെ ഉപകരണം നീക്കംചെയ്യുന്നത് ഡാറ്റ നഷ്‌ടത്തിന് കാരണമാകാം. പ്രവർത്തനം പൂർത്തിയാകുന്നതുവരെ കാത്തിരിക്കുക, തുടർന്ന് ഫയൽ ആപ്പ് ഉപയോഗിച്ച് ഉപകരണം ഒഴിവാക്കുക.</translation>
 <translation id="5163869187418756376">പങ്കിടൽ പരാജയപ്പെട്ടു. നിങ്ങളുടെ കണക്ഷൻ പരിശോധിച്ച് പിന്നീട് വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="516592729076796170">യുഎസ് പ്രോഗ്രാമർ ഡൊറാക്ക്</translation>
 <translation id="5167131699331641907">നെതർലാൻഡ്‌സ് കീബോർഡ്</translation>
@@ -421,7 +421,7 @@
 <translation id="5833610766403489739">നിങ്ങളുടെ ഫയൽ മറ്റെവിടെയോ ആണ്. നിങ്ങളുടെ ഡൗൺലോഡ് ലൊക്കേഷൻ ക്രമീകരണം പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക.</translation>
 <translation id="5838451609423551646">തിരഞ്ഞെടുക്കലിൽ നിന്ന് എല്ലാ എൻട്രികളും നീക്കം ചെയ്‌തു.</translation>
 <translation id="5838825566232597749">യുഎസ് വർക്ക്‌മാൻ ഇന്റർനാഷണൽ</translation>
-<translation id="5850516540536751549">ഈ ഫയൽ തരം പിന്തുണയ്‌ക്കുന്നില്ല. ഈ ഫയൽ തരം തുറക്കാൻ കഴിയുന്ന ഒരു അപ്ലിക്കേഷൻ കണ്ടെത്തുന്നതിന് ഒരു <ph name="BEGIN_LINK" />Chrome വെബ് സ്റ്റോർ<ph name="END_LINK" /> സന്ദർശിക്കുക.
+<translation id="5850516540536751549">ഈ ഫയൽ തരം പിന്തുണയ്‌ക്കുന്നില്ല. ഈ ഫയൽ തരം തുറക്കാൻ കഴിയുന്ന ഒരു ആപ്പ് കണ്ടെത്തുന്നതിന് ഒരു <ph name="BEGIN_LINK" />Chrome വെബ് സ്റ്റോർ<ph name="END_LINK" /> സന്ദർശിക്കുക.
     <ph name="BEGIN_LINK_HELP" />കൂടുതലറിയുക<ph name="END_LINK_HELP" /></translation>
 <translation id="5851063901794976166">ഇവിടെ കാണാൻ ഒന്നുമില്ല...</translation>
 <translation id="5857774240076772505"><ph name="FOLDER_NAME" />ഫോൾഡറിലെ ഫയലുകൾ പരിഷ്‌ക്കരിക്കാൻ, Linux ആപ്പുകൾക്ക് അനുമതി നൽകുക.</translation>
@@ -517,7 +517,7 @@
 <translation id="696203921837389374">മൊബൈൽ ഡാറ്റയിലൂടെയുള്ള സമന്വയം പ്രവർത്തനക്ഷമമാക്കുക</translation>
 <translation id="6965382102122355670">ശരി</translation>
 <translation id="6970230597523682626">ബള്‍ഗേറിയന്‍</translation>
-<translation id="6978611942794658017">ഈ ഫയൽ, Windows സോഫ്‌റ്റ്‌വെയർ ഉപയോഗിക്കുന്ന PC-‌യ്ക്കായി രൂപകൽപ്പന ചെയ്‌തതാണ്. ഇത് Chrome OS പ്രവർത്തിക്കുന്ന നിങ്ങളുടെ ഉപകരണത്തിന് അനുയോജ്യമല്ല. അനുയോജ്യമായ മറ്റൊരു ആപ്പിനായി Chrome വെബ് സ്‌റ്റോറിൽ തിരയുക.</translation>
+<translation id="6978611942794658017">ഈ ഫയൽ, Windows സോഫ്‌റ്റ്‌വെയർ ഉപയോഗിക്കുന്ന PC-‌യ്ക്കായി രൂപകൽപ്പന ചെയ്‌തിരിക്കുന്നു. ഇത് Chrome OS പ്രവർത്തിക്കുന്ന നിങ്ങളുടെ ഉപകരണത്തിന് അനുയോജ്യമായതല്ല. അനുയോജ്യമായ മറ്റൊരു ആപ്പിനായി Chrome വെബ് സ്‌റ്റോറിൽ തിരയുക.</translation>
 <translation id="6979158407327259162">Google ഡ്രൈവ്</translation>
 <translation id="6990081529015358884">നിങ്ങൾക്ക് മാതിയായ ഇടമില്ല</translation>
 <translation id="6998711733709403587"><ph name="SELCTED_FOLDERS_COUNT" /> ഫോൾഡറുകൾ തിരഞ്ഞെടുത്തു</translation>
@@ -536,7 +536,7 @@
 <translation id="7191454237977785534">ഇതായി ഫയൽ സംരക്ഷിക്കുക</translation>
 <translation id="7222624196722476520">ബൾഗേറിയൻ ഫൊണറ്റിക് കീബോർഡ്</translation>
 <translation id="7238097264433196391">ഡ്രൈവിൻ്റെ പേര്</translation>
-<translation id="7248671827512403053">അപ്ലിക്കേഷന്‍</translation>
+<translation id="7248671827512403053">ആപ്പ്</translation>
 <translation id="7268659760406822741">ലഭ്യമായ സേവനങ്ങൾ</translation>
 <translation id="7283041136720745563">നിങ്ങളുടെ Google ഡ്രൈവ് ക്വോട്ടയ്ക്ക് ആവശ്യമായ വലിപ്പമില്ല.</translation>
 <translation id="7295662345261934369">മറ്റുള്ളവരുമായി പങ്കിടുക</translation>
@@ -617,9 +617,9 @@
 <translation id="8079530767338315840">ആവർത്തിക്കുക</translation>
 <translation id="8106045200081704138">ഞാനുമായി പങ്കിട്ടവ</translation>
 <translation id="8116072619078571545">ഐസ് വെള്ളം</translation>
-<translation id="8117957376775388318">ഡായി ടൈപ്പുചെയ്യൽ രീതി</translation>
+<translation id="8117957376775388318">Dayi ടൈപ്പുചെയ്യൽ രീതി</translation>
 <translation id="8137331602592933310">നിങ്ങളുമായി "<ph name="FILENAME" />" എന്നത് പങ്കിട്ടിരിക്കുന്നു. ഇത് നിങ്ങളുടേതല്ലാത്തതിനാൽ നിങ്ങൾക്ക് അത് ഇല്ലാതാക്കാനാകില്ല.</translation>
-<translation id="8145409227593688472">വുബി ടൈപ്പുചെയ്യൽ രീതി</translation>
+<translation id="8145409227593688472">Wubi ഇൻപുട്ട് രീതി</translation>
 <translation id="8148264977957212129">Pinyin ഇന്‍‌പുട്ട് രീതി</translation>
 <translation id="8151638057146502721">കോൺഫിഗർ ചെയ്യുക</translation>
 <translation id="8153607920959057464">ഈ ഫയൽ പ്രദർശിപ്പിക്കാൻ കഴിഞ്ഞില്ല.</translation>
@@ -647,13 +647,13 @@
 <translation id="8382450452152102026"><ph name="FOLDER_NAME" /> എന്ന ഫോൾഡറിലേക്ക്</translation>
 <translation id="8391950649760071442">ലിപ്യന്തരണം (emandi → ఏమండీ)</translation>
 <translation id="8395901698320285466">തലങ്ങൾ</translation>
-<translation id="8412586565681117057">ക്വിക്ക് ടൈപ്പുചെയ്യൽ രീതി</translation>
+<translation id="8412586565681117057">Quick ഇൻപുട്ട് രീതി</translation>
 <translation id="8418113698656761985">റൊമാനിയന്‍ കീബോര്‍ഡ്</translation>
 <translation id="8432745813735585631">യുഎസ് കോള്‍മാക്ക് കീബോര്‍ഡ്</translation>
 <translation id="8437209419043462667">യുഎസ്</translation>
 <translation id="8456681095658380701">അസാധുവായ പേര്</translation>
 <translation id="8466234950814670489">Tar ആർക്കൈവ്</translation>
-<translation id="8467473010914675605">കൊറിയന്‍‌ ഇന്‍‌പുട്ട് രീതി</translation>
+<translation id="8467473010914675605">Korean ഇന്‍‌പുട്ട് രീതി</translation>
 <translation id="8475647382427415476">Google ഡ്രൈവിന് ഇപ്പോൾ "<ph name="FILENAME" />" സമന്വയിപ്പിക്കായില്ല. Google ഡ്രൈവ് പിന്നീട് വീണ്ടും ശ്രമിക്കുന്നതാണ്.</translation>
 <translation id="8477649328507734757">സ്പിൻ</translation>
 <translation id="8487700953926739672">ഓഫ്‌ലൈനില്‍ ലഭ്യമാണ്</translation>
@@ -671,7 +671,7 @@
 <translation id="8719721339511222681">തിരഞ്ഞെടുത്ത <ph name="ENTRY_NAME" />.</translation>
 <translation id="8722421161699219904">യുഎസ് ഇന്റർനാഷണൽ കീബോർഡ്</translation>
 <translation id="872537912056138402">ക്രൊയേഷ്യന്‍</translation>
-<translation id="874420130893181774">പരമ്പരാഗത പിൻയിൻ ടൈപ്പുചെയ്യൽ രീതി</translation>
+<translation id="874420130893181774">Traditional Pinyin ഇൻപുട്ട് രീതി</translation>
 <translation id="8775404590947523323">നിങ്ങളുടെ എഡിറ്റുകൾ യാന്ത്രികമായി സംരക്ഷിച്ചു.<ph name="BREAKS" />യഥാർത്ഥ ചിത്രത്തിന്റെ ഒരു പകർപ്പ് സൂക്ഷിക്കുന്നതിന്, "യഥാർത്ഥമായത് പുനരാലേഖനം ചെയ്യുക" എന്നത് അൺചെക്ക് ചെയ്യുക</translation>
 <translation id="8803496343472038847">റഷ്യൻ ഫൊണറ്റിക് കീബോർഡ്</translation>
 <translation id="8808686172382650546">പൂച്ച</translation>
@@ -700,9 +700,9 @@
 <translation id="9134524245363717059">ഈ ഫയൽ, Macintosh സോഫ്റ്റ്‌വെയർ ഉപയോഗിക്കുന്ന ഒരു കമ്പ്യൂട്ടറിനായി രൂപകൽപ്പന ചെയ്തിരിക്കുന്നു. Chrome OS പ്രവർത്തിപ്പിക്കുന്ന നിങ്ങളുടെ ഉപകരണത്തിന് ഇത് അനുയോജ്യമല്ല. അനുയോജ്യമായ മറ്റൊരു ആപ്പിനായി Chrome വെബ് സ്റ്റോറിൽ തിരയുക.</translation>
 <translation id="913758436357682283">മ്യാൻമാർ മ്യാൻസൻ കീബോർഡ്</translation>
 <translation id="9148058034647219655">പുറത്തുകടക്കുക</translation>
-<translation id="9153744823707037316">അറേ ടൈപ്പുചെയ്യൽ രീതി</translation>
+<translation id="9153744823707037316">Array ഇൻപുട്ട് രീതി</translation>
 <translation id="9154418932169119429">ഈ ചിത്രം ഓഫ്‌ലൈനിൽ ലഭ്യമാകില്ല.</translation>
-<translation id="9206487995878691001">സാങ്‌ചി ടൈപ്പുചെയ്യൽ രീതി</translation>
+<translation id="9206487995878691001">Cangjie ഇൻപുട്ട് രീതി</translation>
 <translation id="9213073329713032541">ഇൻസ്‌റ്റലേഷൻ ആരംഭിച്ചു.</translation>
 <translation id="9219103736887031265">ചിത്രങ്ങൾ‌</translation>
 <translation id="9219908252191632183">ലൂണാർ</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_uk.xtb b/ui/chromeos/translations/ui_chromeos_strings_uk.xtb
index efa59fdd..d89afac 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_uk.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_uk.xtb
@@ -223,7 +223,7 @@
 <translation id="3645531960514756307">Відкріпити папку</translation>
 <translation id="3678559383040232393">Мальтійська клавіатура</translation>
 <translation id="3685122418104378273">Коли використовується мобільний Інтернет, синхронізацію Google Диска вимкнено за умовчанням.</translation>
-<translation id="3689865792480713551">Скасувати: <ph name="ACTIVITY_DESCRIPTION" />.</translation>
+<translation id="3689865792480713551">Скасувати <ph name="ACTIVITY_DESCRIPTION" />.</translation>
 <translation id="3726463242007121105">Не вдається відкрити пристрій, оскільки його файлова система не підтримується.</translation>
 <translation id="3741243925913727067">Створення резервних копій фотографій і відео з носія на Google Диску.</translation>
 <translation id="3749289110408117711">Ім’я файлу</translation>
@@ -464,7 +464,7 @@
 <translation id="6339145975392024142">Американська міжнародна клавіатура (ПК)</translation>
 <translation id="6346310558342052870">Доступ обмежено</translation>
 <translation id="6353618411602605519">Хорватська розкладка</translation>
-<translation id="6356685157277930264">Вікно інформації про файли</translation>
+<translation id="6356685157277930264">Вікно відгуку про файли</translation>
 <translation id="6358884629796491903">Дракон</translation>
 <translation id="637062427944097960">Цей файл відкрито на іншому робочому столі. Перейдіть до <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />), щоб переглянути його.</translation>
 <translation id="6395575651121294044">Елементів: <ph name="NUMBER_OF_FILES" /></translation>
diff --git a/ui/compositor/compositor.cc b/ui/compositor/compositor.cc
index 3fa7f14..37e903b 100644
--- a/ui/compositor/compositor.cc
+++ b/ui/compositor/compositor.cc
@@ -155,7 +155,6 @@
 
   settings.initial_debug_state.SetRecordRenderingStats(
       command_line->HasSwitch(cc::switches::kEnableGpuBenchmarking));
-  settings.enable_surface_synchronization = true;
   settings.build_hit_test_data = features::IsVizHitTestingSurfaceLayerEnabled();
 
   settings.use_zero_copy = IsUIZeroCopyEnabled();
diff --git a/ui/events/BUILD.gn b/ui/events/BUILD.gn
index d5f3805..aee2895 100644
--- a/ui/events/BUILD.gn
+++ b/ui/events/BUILD.gn
@@ -585,9 +585,6 @@
     if (is_android) {
       sources += [ "android/motion_event_android_unittest.cc" ]
       deps += [ "//ui/android:ui_full_java" ]
-      if (notouch_build) {
-        defines += [ "NOTOUCH_BUILD" ]
-      }
     } else {
       data_deps = [
         "//third_party/mesa_headers",
diff --git a/ui/events/keycodes/keyboard_code_conversion_x.cc b/ui/events/keycodes/keyboard_code_conversion_x.cc
index 581e0b2b..9ff13d96 100644
--- a/ui/events/keycodes/keyboard_code_conversion_x.cc
+++ b/ui/events/keycodes/keyboard_code_conversion_x.cc
@@ -581,7 +581,8 @@
   // 8. If not found, fallback to find with the hardware code in US layout.
 
   KeySym keysym = NoSymbol;
-  XEvent xkeyevent = {0};
+  XEvent xkeyevent;
+  xkeyevent.xkey = {};
   if (xev->type == GenericEvent) {
     // Convert the XI2 key event into a core key event so that we can
     // continue to use XLookupString() until crbug.com/367732 is complete.
@@ -962,7 +963,8 @@
 }
 
 uint16_t GetCharacterFromXEvent(const XEvent* xev) {
-  XEvent xkeyevent = {0};
+  XEvent xkeyevent;
+  xkeyevent.xkey = {};
   const XKeyEvent* xkey = NULL;
   if (xev->type == GenericEvent) {
     // Convert the XI2 key event into a core key event so that we can
@@ -978,7 +980,8 @@
 }
 
 DomKey GetDomKeyFromXEvent(const XEvent* xev) {
-  XEvent xkeyevent = {0};
+  XEvent xkeyevent;
+  xkeyevent.xkey = {};
   XKeyEvent xkey;
   if (xev->type == GenericEvent) {
     // Convert the XI2 key event into a core key event so that we can
diff --git a/ui/events/platform/x11/x11_event_source_default.cc b/ui/events/platform/x11/x11_event_source_default.cc
index 154fe79..96e3e3c8 100644
--- a/ui/events/platform/x11/x11_event_source_default.cc
+++ b/ui/events/platform/x11/x11_event_source_default.cc
@@ -79,7 +79,8 @@
   switch (event_type) {
     case ET_KEY_PRESSED:
     case ET_KEY_RELEASED: {
-      XEvent xkeyevent = {0};
+      XEvent xkeyevent;
+      xkeyevent.xkey = {};
       InitXKeyEventFromXIDeviceEvent(xev, &xkeyevent);
       return CreateKeyEvent(xkeyevent);
     }
diff --git a/ui/ozone/platform/scenic/vulkan_implementation_scenic.cc b/ui/ozone/platform/scenic/vulkan_implementation_scenic.cc
index 0053a62..b4b52d7 100644
--- a/ui/ozone/platform/scenic/vulkan_implementation_scenic.cc
+++ b/ui/ozone/platform/scenic/vulkan_implementation_scenic.cc
@@ -81,7 +81,7 @@
   constexpr base::StringPiece image_pipe_swapchain(
       "VK_LAYER_FUCHSIA_imagepipe_swapchain");
   for (const VkLayerProperties& layer_property :
-       vulkan_instance_.layer_properties()) {
+       vulkan_instance_.vulkan_info().instance_layers) {
     if (image_pipe_swapchain != layer_property.layerName)
       continue;
     image_pipe_swapchain_implementation_version =
diff --git a/ui/ozone/platform/wayland/BUILD.gn b/ui/ozone/platform/wayland/BUILD.gn
index 6c553dd..2f07492b 100644
--- a/ui/ozone/platform/wayland/BUILD.gn
+++ b/ui/ozone/platform/wayland/BUILD.gn
@@ -65,6 +65,8 @@
     "host/wayland_data_offer.h",
     "host/wayland_data_source.cc",
     "host/wayland_data_source.h",
+    "host/wayland_drm.cc",
+    "host/wayland_drm.h",
     "host/wayland_input_method_context.cc",
     "host/wayland_input_method_context.h",
     "host/wayland_input_method_context_factory.cc",
@@ -127,6 +129,7 @@
     "//third_party/wayland-protocols:linux_dmabuf_protocol",
     "//third_party/wayland-protocols:presentation_time_protocol",
     "//third_party/wayland-protocols:text_input_protocol",
+    "//third_party/wayland-protocols:wayland_drm_protocol",
     "//third_party/wayland-protocols:xdg_shell_protocol",
     "//ui/base",
     "//ui/base:buildflags",
diff --git a/ui/ozone/platform/wayland/common/wayland_object.cc b/ui/ozone/platform/wayland/common/wayland_object.cc
index 859b8d8..798169a 100644
--- a/ui/ozone/platform/wayland/common/wayland_object.cc
+++ b/ui/ozone/platform/wayland/common/wayland_object.cc
@@ -9,6 +9,7 @@
 #include <presentation-time-client-protocol.h>
 #include <text-input-unstable-v1-client-protocol.h>
 #include <wayland-client.h>
+#include <wayland-drm-client-protocol.h>
 #include <xdg-shell-unstable-v5-client-protocol.h>
 #include <xdg-shell-unstable-v6-client-protocol.h>
 
@@ -108,6 +109,9 @@
 void (*ObjectTraits<wl_data_source>::deleter)(wl_data_source*) =
     &wl_data_source_destroy;
 
+const wl_interface* ObjectTraits<wl_drm>::interface = &wl_drm_interface;
+void (*ObjectTraits<wl_drm>::deleter)(wl_drm*) = &wl_drm_destroy;
+
 const wl_interface* ObjectTraits<wl_display>::interface = &wl_display_interface;
 void (*ObjectTraits<wl_display>::deleter)(wl_display*) = &wl_display_disconnect;
 
diff --git a/ui/ozone/platform/wayland/common/wayland_object.h b/ui/ozone/platform/wayland/common/wayland_object.h
index bac3dbe6..b3155df 100644
--- a/ui/ozone/platform/wayland/common/wayland_object.h
+++ b/ui/ozone/platform/wayland/common/wayland_object.h
@@ -19,6 +19,7 @@
 struct wl_data_device;
 struct wl_data_offer;
 struct wl_data_source;
+struct wl_drm;
 struct wl_keyboard;
 struct wl_output;
 struct wl_pointer;
@@ -117,6 +118,12 @@
 };
 
 template <>
+struct ObjectTraits<wl_drm> {
+  static const wl_interface* interface;
+  static void (*deleter)(wl_drm*);
+};
+
+template <>
 struct ObjectTraits<wl_display> {
   static const wl_interface* interface;
   static void (*deleter)(wl_display*);
diff --git a/ui/ozone/platform/wayland/common/wayland_util.h b/ui/ozone/platform/wayland/common/wayland_util.h
index 4b69969..368f3d9 100644
--- a/ui/ozone/platform/wayland/common/wayland_util.h
+++ b/ui/ozone/platform/wayland/common/wayland_util.h
@@ -10,6 +10,7 @@
 #include <wayland-client.h>
 
 #include "base/callback.h"
+#include "base/containers/flat_map.h"
 #include "base/files/scoped_file.h"
 #include "base/macros.h"
 #include "ui/ozone/platform/wayland/common/wayland_object.h"
@@ -22,6 +23,7 @@
 }  // namespace ui
 
 namespace gfx {
+enum class BufferFormat;
 class Size;
 }  // namespace gfx
 
@@ -32,6 +34,9 @@
 using OnRequestBufferCallback =
     base::OnceCallback<void(wl::Object<struct wl_buffer>)>;
 
+using BufferFormatsWithModifiersMap =
+    base::flat_map<gfx::BufferFormat, std::vector<uint64_t>>;
+
 // Identifies the direction of the "hittest" for Wayland. |connection|
 // is used to identify whether values from shell v5 or v6 must be used.
 uint32_t IdentifyDirection(const ui::WaylandConnection& connection,
diff --git a/ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.cc b/ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.cc
index 2702f30..5d2a047 100644
--- a/ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.cc
+++ b/ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.cc
@@ -8,7 +8,6 @@
 #include "base/task_runner_util.h"
 #include "ui/ozone/platform/wayland/host/wayland_buffer_manager_host.h"
 #include "ui/ozone/platform/wayland/host/wayland_connection.h"
-#include "ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.h"
 
 namespace ui {
 
@@ -34,9 +33,8 @@
 }  // namespace
 
 WaylandBufferManagerConnector::WaylandBufferManagerConnector(
-    WaylandConnection* wayland_connection)
-    : buffer_manager_(wayland_connection->buffer_manager_host()),
-      wayland_connection_(wayland_connection) {}
+    WaylandBufferManagerHost* buffer_manager_host)
+    : buffer_manager_host_(buffer_manager_host) {}
 
 WaylandBufferManagerConnector::~WaylandBufferManagerConnector() = default;
 
@@ -47,7 +45,7 @@
     base::RepeatingCallback<void(IPC::Message*)> send_callback) {}
 
 void WaylandBufferManagerConnector::OnChannelDestroyed(int host_id) {
-  buffer_manager_->OnChannelDestroyed();
+  buffer_manager_host_->OnChannelDestroyed();
 }
 
 void WaylandBufferManagerConnector::OnMessageReceived(
@@ -69,12 +67,12 @@
   auto on_terminate_gpu_cb =
       base::BindOnce(&WaylandBufferManagerConnector::OnTerminateGpuProcess,
                      base::Unretained(this));
-  buffer_manager_->SetTerminateGpuCallback(std::move(on_terminate_gpu_cb));
+  buffer_manager_host_->SetTerminateGpuCallback(std::move(on_terminate_gpu_cb));
 
   base::PostTaskAndReplyWithResult(
       ui_runner.get(), FROM_HERE,
       base::BindOnce(&WaylandBufferManagerHost::BindInterface,
-                     base::Unretained(buffer_manager_)),
+                     base::Unretained(buffer_manager_host_)),
       base::BindOnce(
           &WaylandBufferManagerConnector::OnBufferManagerHostPtrBinded,
           base::Unretained(this)));
@@ -83,25 +81,20 @@
 void WaylandBufferManagerConnector::OnBufferManagerHostPtrBinded(
     mojo::PendingRemote<ozone::mojom::WaylandBufferManagerHost>
         buffer_manager_host) const {
-  mojo::Remote<ozone::mojom::WaylandBufferManagerGpu> buffer_manager_gpu;
-  auto receiver = buffer_manager_gpu.BindNewPipeAndPassReceiver();
+  mojo::Remote<ozone::mojom::WaylandBufferManagerGpu> buffer_manager_gpu_remote;
+  auto receiver = buffer_manager_gpu_remote.BindNewPipeAndPassReceiver();
   BindInterfaceInGpuProcess(std::move(receiver), binder_);
-  DCHECK(buffer_manager_gpu);
+  DCHECK(buffer_manager_gpu_remote);
 
-  WaylandZwpLinuxDmabuf::BufferFormatsWithModifiersMap
-      buffer_formats_with_modifiers;
+  wl::BufferFormatsWithModifiersMap buffer_formats_with_modifiers =
+      buffer_manager_host_->GetSupportedBufferFormats();
   bool supports_dma_buf = false;
 #if defined(WAYLAND_GBM)
-  auto* zwp_linux_dmabuf = wayland_connection_->zwp_dmabuf();
-  if (zwp_linux_dmabuf) {
-    supports_dma_buf = true;
-    buffer_formats_with_modifiers =
-        zwp_linux_dmabuf->supported_buffer_formats();
-  }
+  supports_dma_buf = buffer_manager_host_->SupportsDmabuf();
 #endif
-  buffer_manager_gpu->Initialize(std::move(buffer_manager_host),
-                                 buffer_formats_with_modifiers,
-                                 supports_dma_buf);
+  buffer_manager_gpu_remote->Initialize(std::move(buffer_manager_host),
+                                        buffer_formats_with_modifiers,
+                                        supports_dma_buf);
 }
 
 void WaylandBufferManagerConnector::OnTerminateGpuProcess(std::string message) {
diff --git a/ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.h b/ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.h
index a67623f..24db6b7 100644
--- a/ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.h
+++ b/ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.h
@@ -13,14 +13,14 @@
 namespace ui {
 
 class WaylandBufferManagerHost;
-class WaylandConnection;
 
 // A connector class which instantiates a connection between
 // WaylandBufferManagerGpu on the GPU side and the WaylandBufferManagerHost
 // object on the browser process side.
 class WaylandBufferManagerConnector : public GpuPlatformSupportHost {
  public:
-  explicit WaylandBufferManagerConnector(WaylandConnection* wayland_connection);
+  explicit WaylandBufferManagerConnector(
+      WaylandBufferManagerHost* buffer_manager_host);
   ~WaylandBufferManagerConnector() override;
 
   // GpuPlatformSupportHost:
@@ -47,10 +47,7 @@
 
   // Non-owned pointer, which is used to bind a mojo pointer to the
   // WaylandBufferManagerHost.
-  WaylandBufferManagerHost* const buffer_manager_;
-
-  // Non-owned.
-  WaylandConnection* const wayland_connection_;
+  WaylandBufferManagerHost* const buffer_manager_host_;
 
   GpuHostBindInterfaceCallback binder_;
   GpuHostTerminateCallback terminate_callback_;
diff --git a/ui/ozone/platform/wayland/host/wayland_buffer_manager_host.cc b/ui/ozone/platform/wayland/host/wayland_buffer_manager_host.cc
index d86284d..b14fca5 100644
--- a/ui/ozone/platform/wayland/host/wayland_buffer_manager_host.cc
+++ b/ui/ozone/platform/wayland/host/wayland_buffer_manager_host.cc
@@ -14,6 +14,7 @@
 #include "mojo/public/cpp/system/platform_handle.h"
 #include "ui/ozone/common/linux/drm_util_linux.h"
 #include "ui/ozone/platform/wayland/host/wayland_connection.h"
+#include "ui/ozone/platform/wayland/host/wayland_drm.h"
 #include "ui/ozone/platform/wayland/host/wayland_shm.h"
 #include "ui/ozone/platform/wayland/host/wayland_window.h"
 #include "ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.h"
@@ -541,6 +542,21 @@
   anonymous_buffers_.clear();
 }
 
+wl::BufferFormatsWithModifiersMap
+WaylandBufferManagerHost::GetSupportedBufferFormats() const {
+  if (connection_->zwp_dmabuf())
+    return connection_->zwp_dmabuf()->supported_buffer_formats();
+  else if (connection_->drm())
+    return connection_->drm()->supported_buffer_formats();
+  else
+    return {};
+}
+
+bool WaylandBufferManagerHost::SupportsDmabuf() const {
+  return !!connection_->zwp_dmabuf() ||
+         (connection_->drm() && connection_->drm()->SupportsDrmPrime());
+}
+
 void WaylandBufferManagerHost::SetWaylandBufferManagerGpu(
     mojo::PendingAssociatedRemote<ozone::mojom::WaylandBufferManagerGpu>
         buffer_manager_gpu_associated) {
@@ -578,9 +594,19 @@
   auto callback =
       base::BindOnce(&WaylandBufferManagerHost::OnCreateBufferComplete,
                      weak_factory_.GetWeakPtr(), widget, buffer_id);
-  connection_->zwp_dmabuf()->CreateBuffer(std::move(fd), size, strides, offsets,
-                                          modifiers, format, planes_count,
-                                          std::move(callback));
+  if (connection_->zwp_dmabuf()) {
+    connection_->zwp_dmabuf()->CreateBuffer(std::move(fd), size, strides,
+                                            offsets, modifiers, format,
+                                            planes_count, std::move(callback));
+  } else if (connection_->drm()) {
+    connection_->drm()->CreateBuffer(std::move(fd), size, strides, offsets,
+                                     modifiers, format, planes_count,
+                                     std::move(callback));
+  } else {
+    // This method must never be called if neither zwp_linux_dmabuf or wl_drm
+    // are supported.
+    NOTREACHED();
+  }
 }
 
 void WaylandBufferManagerHost::CreateShmBasedBuffer(
diff --git a/ui/ozone/platform/wayland/host/wayland_buffer_manager_host.h b/ui/ozone/platform/wayland/host/wayland_buffer_manager_host.h
index 166100f..58f848e 100644
--- a/ui/ozone/platform/wayland/host/wayland_buffer_manager_host.h
+++ b/ui/ozone/platform/wayland/host/wayland_buffer_manager_host.h
@@ -101,6 +101,11 @@
   // destroyed.
   void OnChannelDestroyed();
 
+  // Returns supported buffer formats either from zwp_linux_dmabuf or wl_drm.
+  wl::BufferFormatsWithModifiersMap GetSupportedBufferFormats() const;
+
+  bool SupportsDmabuf() const;
+
   // ozone::mojom::WaylandBufferManagerHost overrides:
   //
   // These overridden methods below are invoked by the GPU when hardware
diff --git a/ui/ozone/platform/wayland/host/wayland_connection.cc b/ui/ozone/platform/wayland/host/wayland_connection.cc
index 03d575a..3ee5fa5 100644
--- a/ui/ozone/platform/wayland/host/wayland_connection.cc
+++ b/ui/ozone/platform/wayland/host/wayland_connection.cc
@@ -22,6 +22,7 @@
 #include "ui/gfx/swap_result.h"
 #include "ui/ozone/platform/wayland/common/wayland_object.h"
 #include "ui/ozone/platform/wayland/host/wayland_buffer_manager_host.h"
+#include "ui/ozone/platform/wayland/host/wayland_drm.h"
 #include "ui/ozone/platform/wayland/host/wayland_input_method_context.h"
 #include "ui/ozone/platform/wayland/host/wayland_output_manager.h"
 #include "ui/ozone/platform/wayland/host/wayland_shm.h"
@@ -42,6 +43,7 @@
 constexpr uint32_t kMaxDeviceManagerVersion = 3;
 constexpr uint32_t kMaxWpPresentationVersion = 1;
 constexpr uint32_t kMaxTextInputManagerVersion = 1;
+constexpr uint32_t kMinWlDrmVersion = 2;
 constexpr uint32_t kMinWlOutputVersion = 2;
 }  // namespace
 
@@ -387,6 +389,11 @@
       LOG(ERROR) << "Failed to bind to zwp_text_input_manager_v1 global";
       return;
     }
+  } else if (!connection->drm_ && (strcmp(interface, "wl_drm") == 0) &&
+             version >= kMinWlDrmVersion) {
+    auto wayland_drm = wl::Bind<struct wl_drm>(registry, name, version);
+    connection->drm_ =
+        std::make_unique<WaylandDrm>(wayland_drm.release(), connection);
   }
 
   connection->ScheduleFlush();
diff --git a/ui/ozone/platform/wayland/host/wayland_connection.h b/ui/ozone/platform/wayland/host/wayland_connection.h
index a241c70c..309bbe4c 100644
--- a/ui/ozone/platform/wayland/host/wayland_connection.h
+++ b/ui/ozone/platform/wayland/host/wayland_connection.h
@@ -34,6 +34,7 @@
 class WaylandBufferManagerHost;
 class WaylandOutputManager;
 class WaylandWindow;
+class WaylandDrm;
 class WaylandZwpLinuxDmabuf;
 class WaylandShm;
 
@@ -99,6 +100,8 @@
 
   WaylandZwpLinuxDmabuf* zwp_dmabuf() const { return zwp_dmabuf_.get(); }
 
+  WaylandDrm* drm() const { return drm_.get(); }
+
   WaylandShm* shm() const { return shm_.get(); }
 
   WaylandWindowManager* wayland_window_manager() {
@@ -191,6 +194,7 @@
   std::unique_ptr<WaylandTouch> touch_;
   std::unique_ptr<WaylandCursorPosition> wayland_cursor_position_;
   std::unique_ptr<WaylandZwpLinuxDmabuf> zwp_dmabuf_;
+  std::unique_ptr<WaylandDrm> drm_;
   std::unique_ptr<WaylandShm> shm_;
   std::unique_ptr<WaylandBufferManagerHost> buffer_manager_host_;
 
diff --git a/ui/ozone/platform/wayland/host/wayland_drm.cc b/ui/ozone/platform/wayland/host/wayland_drm.cc
new file mode 100644
index 0000000..7b55154
--- /dev/null
+++ b/ui/ozone/platform/wayland/host/wayland_drm.cc
@@ -0,0 +1,151 @@
+// Copyright 2019 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 <wayland-drm-client-protocol.h>
+
+#include <fcntl.h>
+#include <xf86drm.h>
+
+#include "base/files/scoped_file.h"
+#include "ui/gfx/buffer_format_util.h"
+#include "ui/ozone/common/linux/drm_util_linux.h"
+#include "ui/ozone/platform/wayland/host/wayland_connection.h"
+#include "ui/ozone/platform/wayland/host/wayland_drm.h"
+
+namespace ui {
+
+WaylandDrm::WaylandDrm(wl_drm* drm, WaylandConnection* connection)
+    : wl_drm_(drm), connection_(connection) {
+  static const wl_drm_listener kDrmListener = {
+      &WaylandDrm::Device,
+      &WaylandDrm::Format,
+      &WaylandDrm::Authenticated,
+      &WaylandDrm::Capabilities,
+  };
+  wl_drm_add_listener(wl_drm_.get(), &kDrmListener, this);
+  connection_->ScheduleFlush();
+
+  // A roundtrip after binding guarantees that the client has received all
+  // supported formats and capabilities of the device.
+  wl_display_roundtrip(connection_->display());
+}
+
+WaylandDrm::~WaylandDrm() = default;
+
+bool WaylandDrm::SupportsDrmPrime() const {
+  return authenticated_ && !!wl_drm_;
+}
+
+void WaylandDrm::CreateBuffer(base::ScopedFD fd,
+                              const gfx::Size& size,
+                              const std::vector<uint32_t>& strides,
+                              const std::vector<uint32_t>& offsets,
+                              const std::vector<uint64_t>& modifiers,
+                              uint32_t format,
+                              uint32_t planes_count,
+                              wl::OnRequestBufferCallback callback) {
+  // If the |planes_count| less than the maximum sizes of these arrays and the
+  // number of offsets and strides that |wl_drm| can receive, just initialize
+  // them to 0, which is totally ok.
+  uint32_t stride[3] = {0};
+  uint32_t offset[3] = {0};
+  for (size_t i = 0; i < planes_count; i++) {
+    stride[i] = strides[i];
+    offset[i] = offset[i];
+  }
+
+  wl::Object<wl_buffer> buffer(wl_drm_create_prime_buffer(
+      wl_drm_.get(), fd.get(), size.width(), size.height(), format, offset[0],
+      stride[0], offset[1], stride[1], offset[2], stride[2]));
+  connection_->ScheduleFlush();
+
+  std::move(callback).Run(std::move(buffer));
+}
+
+void WaylandDrm::HandleDrmFailure(const std::string& error) {
+  LOG(WARNING) << error;
+  wl_drm_.reset();
+}
+
+void WaylandDrm::AddSupportedFourCCFormat(uint32_t fourcc_format) {
+  // Return on unsupported fourcc formats.
+  if (!IsValidBufferFormat(fourcc_format))
+    return;
+
+  gfx::BufferFormat format = GetBufferFormatFromFourCCFormat(fourcc_format);
+  // Modifiers are not supported by the |wl_drm|, but for consistency with the
+  // WaylandZwpLinuxDmabuf we use the same map type, which is passed to the
+  // WaylandBufferManagerGpu later during initialization stage of the GPU
+  // process.
+  std::vector<uint64_t> modifiers;
+  supported_buffer_formats_.emplace(format, std::move(modifiers));
+}
+
+void WaylandDrm::Authenticate(const char* drm_device_path) {
+  if (!wl_drm_)
+    return;
+
+  DCHECK(drm_device_path);
+  base::ScopedFD drm_fd(open(drm_device_path, O_RDWR));
+  if (!drm_fd.is_valid()) {
+    HandleDrmFailure("Drm open failed: " + std::string(drm_device_path));
+    return;
+  }
+
+  drm_magic_t magic;
+  memset(&magic, 0, sizeof(magic));
+  if (drmGetMagic(drm_fd.get(), &magic)) {
+    HandleDrmFailure("Failed to get drm magic");
+    return;
+  }
+
+  wl_drm_authenticate(wl_drm_.get(), magic);
+  connection_->ScheduleFlush();
+
+  // Do the roundtrip to make sure the server processes this request and
+  // authenticates us.
+  wl_display_roundtrip(connection_->display());
+}
+
+void WaylandDrm::DrmDeviceAuthenticated(struct wl_drm* wl_drm) {
+  DCHECK(wl_drm_ && wl_drm_.get() == wl_drm);
+  authenticated_ = true;
+}
+
+void WaylandDrm::HandleCapabilities(uint32_t value) {
+  if ((value & WL_DRM_CAPABILITY_PRIME) == 0)
+    HandleDrmFailure("Drm prime capability is not supported");
+}
+
+// static
+void WaylandDrm::Device(void* data, struct wl_drm* wl_drm, const char* path) {
+  auto* wayland_drm = static_cast<WaylandDrm*>(data);
+  DCHECK(wayland_drm && wayland_drm->wl_drm_.get() == wl_drm);
+  wayland_drm->Authenticate(path);
+}
+
+// static
+void WaylandDrm::Format(void* data, struct wl_drm* wl_drm, uint32_t format) {
+  auto* wayland_drm = static_cast<WaylandDrm*>(data);
+  DCHECK(wayland_drm && wayland_drm->wl_drm_.get() == wl_drm);
+  wayland_drm->AddSupportedFourCCFormat(format);
+}
+
+// static
+void WaylandDrm::Authenticated(void* data, struct wl_drm* wl_drm) {
+  auto* wayland_drm = static_cast<WaylandDrm*>(data);
+  DCHECK(wayland_drm);
+  wayland_drm->DrmDeviceAuthenticated(wl_drm);
+}
+
+// static
+void WaylandDrm::Capabilities(void* data,
+                              struct wl_drm* wl_drm,
+                              uint32_t value) {
+  auto* wayland_drm = static_cast<WaylandDrm*>(data);
+  DCHECK(wayland_drm && wayland_drm->wl_drm_.get() == wl_drm);
+  wayland_drm->HandleCapabilities(value);
+}
+
+}  // namespace ui
diff --git a/ui/ozone/platform/wayland/host/wayland_drm.h b/ui/ozone/platform/wayland/host/wayland_drm.h
new file mode 100644
index 0000000..cf010e9
--- /dev/null
+++ b/ui/ozone/platform/wayland/host/wayland_drm.h
@@ -0,0 +1,101 @@
+// Copyright 2019 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 UI_OZONE_PLATFORM_WAYLAND_HOST_WAYLAND_DRM_H_
+#define UI_OZONE_PLATFORM_WAYLAND_HOST_WAYLAND_DRM_H_
+
+#include <wayland-drm-client-protocol.h>
+
+#include <vector>
+
+#include "base/containers/flat_map.h"
+#include "base/files/scoped_file.h"
+#include "base/macros.h"
+#include "ui/ozone/platform/wayland/common/wayland_object.h"
+#include "ui/ozone/platform/wayland/common/wayland_util.h"
+
+struct wl_drm;
+
+namespace gfx {
+enum class BufferFormat;
+class Size;
+}  // namespace gfx
+
+namespace ui {
+
+class WaylandConnection;
+
+// Wrapper around |wl_drm| Wayland factory, which creates
+// |wl_buffer|s backed by dmabuf prime file descriptors.
+class WaylandDrm {
+ public:
+  WaylandDrm(wl_drm* drm, WaylandConnection* connection);
+  ~WaylandDrm();
+
+  // Says if can create dmabuf based wl_buffers.
+  bool SupportsDrmPrime() const;
+
+  // Requests to create a wl_buffer backed by the dmabuf prime |fd| descriptor.
+  // The result is sent back via the |callback|. If buffer creation failed,
+  // nullptr is sent back via the callback. Otherwise, a pointer to the
+  // |wl_buffer| is sent.
+  void CreateBuffer(base::ScopedFD fd,
+                    const gfx::Size& size,
+                    const std::vector<uint32_t>& strides,
+                    const std::vector<uint32_t>& offsets,
+                    const std::vector<uint64_t>& modifiers,
+                    uint32_t format,
+                    uint32_t planes_count,
+                    wl::OnRequestBufferCallback callback);
+
+  // Returns supported buffer formats received from the Wayland compositor.
+  wl::BufferFormatsWithModifiersMap supported_buffer_formats() const {
+    return supported_buffer_formats_;
+  }
+
+ private:
+  // Resets the |wl_drm| and prints the error.
+  void HandleDrmFailure(const std::string& error);
+
+  // Receives supported |fourcc_format| from either ::Format call.
+  void AddSupportedFourCCFormat(uint32_t fourcc_format);
+
+  // Authenticates the drm device passed in the |drm_device_path|.
+  void Authenticate(const char* drm_device_path);
+
+  // Completes the drm device authentication.
+  void DrmDeviceAuthenticated(struct wl_drm* wl_drm);
+
+  // Checks the capabilities of the drm device.
+  void HandleCapabilities(uint32_t value);
+
+  // wl_drm_listener:
+  static void Device(void* data,
+                     struct wl_drm* wl_drm,
+                     const char* drm_device_path);
+  static void Format(void* data, struct wl_drm* wl_drm, uint32_t format);
+  static void Authenticated(void* data, struct wl_drm* wl_drm);
+  static void Capabilities(void* data, struct wl_drm* wl_drm, uint32_t value);
+
+  // Holds pointer to the wl_drm Wayland factory.
+  wl::Object<wl_drm> wl_drm_;
+
+  // Non-owned.
+  WaylandConnection* const connection_;
+
+  // Holds supported DRM formats translated to gfx::BufferFormat. Note that
+  // |wl_drm| neither announces modifiers nor allows to create buffers with
+  // modifiers. Thus, they are always empty.
+  wl::BufferFormatsWithModifiersMap supported_buffer_formats_;
+
+  // Says if the drm device passed by the Wayland compositor authenticates this
+  // client.
+  bool authenticated_ = false;
+
+  DISALLOW_COPY_AND_ASSIGN(WaylandDrm);
+};
+
+}  // namespace ui
+
+#endif  // UI_OZONE_PLATFORM_WAYLAND_HOST_WAYLAND_DRM_H_
diff --git a/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.h b/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.h
index a4ed3a81..9ecb0b7 100644
--- a/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.h
+++ b/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.h
@@ -7,7 +7,6 @@
 
 #include <vector>
 
-#include "base/containers/flat_map.h"
 #include "base/files/scoped_file.h"
 #include "base/macros.h"
 #include "base/optional.h"
@@ -27,19 +26,17 @@
 class WaylandConnection;
 
 // Wrapper around |zwp_linux_dmabuf_v1| Wayland factory, which creates
-// |wl_buffer|s backed by dmabuf |file| descriptor.
+// |wl_buffer|s backed by dmabuf prime file descriptor.
 class WaylandZwpLinuxDmabuf {
  public:
-  using BufferFormatsWithModifiersMap =
-      base::flat_map<gfx::BufferFormat, std::vector<uint64_t>>;
-
   WaylandZwpLinuxDmabuf(zwp_linux_dmabuf_v1* zwp_linux_dmabuf,
                         WaylandConnection* connection);
   ~WaylandZwpLinuxDmabuf();
 
-  // Requests to create a wl_buffer backed by the |file| descriptor. The result
-  // is sent back via the |callback|. If buffer creation failed, nullptr is sent
-  // back via the callback. Otherwise, a pointer to the |wl_buffer| is sent.
+  // Requests to create a wl_buffer backed by the dmabuf prime |fd| descriptor.
+  // The result is sent back via the |callback|. If buffer creation failed,
+  // nullptr is sent back via the callback. Otherwise, a pointer to the
+  // |wl_buffer| is sent.
   void CreateBuffer(base::ScopedFD fd,
                     const gfx::Size& size,
                     const std::vector<uint32_t>& strides,
@@ -50,7 +47,7 @@
                     wl::OnRequestBufferCallback callback);
 
   // Returns supported buffer formats received from the Wayland compositor.
-  BufferFormatsWithModifiersMap supported_buffer_formats() const {
+  wl::BufferFormatsWithModifiersMap supported_buffer_formats() const {
     return supported_buffer_formats_with_modifiers_;
   }
 
@@ -94,7 +91,7 @@
   WaylandConnection* const connection_;
 
   // Holds supported DRM formats translated to gfx::BufferFormat.
-  BufferFormatsWithModifiersMap supported_buffer_formats_with_modifiers_;
+  wl::BufferFormatsWithModifiersMap supported_buffer_formats_with_modifiers_;
 
   // Contains callbacks for requests to create |wl_buffer|s using
   // |zwp_linux_dmabuf_| factory.
diff --git a/ui/ozone/platform/wayland/ozone_platform_wayland.cc b/ui/ozone/platform/wayland/ozone_platform_wayland.cc
index 200bbc3..0906ee2 100644
--- a/ui/ozone/platform/wayland/ozone_platform_wayland.cc
+++ b/ui/ozone/platform/wayland/ozone_platform_wayland.cc
@@ -18,15 +18,16 @@
 #include "ui/events/ozone/layout/keyboard_layout_engine_manager.h"
 #include "ui/gfx/linux/client_native_pixmap_dmabuf.h"
 #include "ui/ozone/common/stub_overlay_manager.h"
+#include "ui/ozone/platform/wayland/common/wayland_util.h"
 #include "ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.h"
 #include "ui/ozone/platform/wayland/gpu/wayland_buffer_manager_gpu.h"
 #include "ui/ozone/platform/wayland/gpu/wayland_surface_factory.h"
 #include "ui/ozone/platform/wayland/host/wayland_buffer_manager_connector.h"
+#include "ui/ozone/platform/wayland/host/wayland_buffer_manager_host.h"
 #include "ui/ozone/platform/wayland/host/wayland_connection.h"
 #include "ui/ozone/platform/wayland/host/wayland_input_method_context_factory.h"
 #include "ui/ozone/platform/wayland/host/wayland_output_manager.h"
 #include "ui/ozone/platform/wayland/host/wayland_window.h"
-#include "ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.h"
 #include "ui/ozone/public/gpu_platform_support_host.h"
 #include "ui/ozone/public/input_controller.h"
 #include "ui/ozone/public/ozone_platform.h"
@@ -162,16 +163,15 @@
     if (!connection_->Initialize())
       LOG(FATAL) << "Failed to initialize Wayland platform";
 
-    buffer_manager_connector_ =
-        std::make_unique<WaylandBufferManagerConnector>(connection_.get());
+    buffer_manager_connector_ = std::make_unique<WaylandBufferManagerConnector>(
+        connection_->buffer_manager_host());
     cursor_factory_ = std::make_unique<BitmapCursorFactoryOzone>();
     overlay_manager_ = std::make_unique<StubOverlayManager>();
     input_controller_ = CreateStubInputController();
     gpu_platform_support_host_.reset(CreateStubGpuPlatformSupportHost());
 
-    auto* zwp_dmabuf = connection_->zwp_dmabuf();
-    if (zwp_dmabuf)
-      supported_buffer_formats_ = zwp_dmabuf->supported_buffer_formats();
+    supported_buffer_formats_ =
+        connection_->buffer_manager_host()->GetSupportedBufferFormats();
 
     // Instantiate and set LinuxInputMethodContextFactory unless it is already
     // set (e.g: tests may have already set it).
@@ -242,8 +242,7 @@
 
   // Provides supported buffer formats for native gpu memory buffers
   // framework.
-  WaylandZwpLinuxDmabuf::BufferFormatsWithModifiersMap
-      supported_buffer_formats_;
+  wl::BufferFormatsWithModifiersMap supported_buffer_formats_;
 
   // This is used both in the gpu and browser processes to find out if a drm
   // render node is available.
diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn
index 1b7d70e8..5df7333 100644
--- a/ui/views/BUILD.gn
+++ b/ui/views/BUILD.gn
@@ -101,7 +101,6 @@
     "color_chooser/color_chooser_listener.h",
     "color_chooser/color_chooser_view.h",
     "context_menu_controller.h",
-    "controls/animated_image_view.h",
     "controls/button/button.h",
     "controls/button/button_controller.h",
     "controls/button/button_controller_delegate.h",
@@ -126,7 +125,6 @@
     "controls/focusable_border.h",
     "controls/highlight_path_generator.h",
     "controls/image_view.h",
-    "controls/image_view_base.h",
     "controls/label.h",
     "controls/link.h",
     "controls/link_listener.h",
@@ -325,7 +323,6 @@
     "button_drag_utils.cc",
     "color_chooser/color_chooser_view.cc",
     "context_menu_controller.cc",
-    "controls/animated_image_view.cc",
     "controls/button/button.cc",
     "controls/button/button_controller.cc",
     "controls/button/checkbox.cc",
@@ -345,7 +342,6 @@
     "controls/focusable_border.cc",
     "controls/highlight_path_generator.cc",
     "controls/image_view.cc",
-    "controls/image_view_base.cc",
     "controls/label.cc",
     "controls/link.cc",
     "controls/menu/menu_closure_animation_mac.mm",
diff --git a/ui/views/controls/animated_image_view.cc b/ui/views/controls/animated_image_view.cc
deleted file mode 100644
index aca500c..0000000
--- a/ui/views/controls/animated_image_view.cc
+++ /dev/null
@@ -1,146 +0,0 @@
-// Copyright 2018 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 "ui/views/controls/animated_image_view.h"
-
-#include <utility>
-
-#include "base/logging.h"
-#include "cc/paint/skottie_wrapper.h"
-#include "ui/gfx/canvas.h"
-#include "ui/views/widget/widget.h"
-
-namespace views {
-namespace {
-
-bool AreAnimatedImagesEqual(const gfx::SkiaVectorAnimation& animation_1,
-                            const gfx::SkiaVectorAnimation& animation_2) {
-  // In rare cases this may return false, even if the animated images are backed
-  // by the same resource file.
-  return animation_1.skottie() == animation_2.skottie();
-}
-
-}  // namespace
-
-AnimatedImageView::AnimatedImageView() = default;
-
-AnimatedImageView::~AnimatedImageView() = default;
-
-void AnimatedImageView::SetAnimatedImage(
-    std::unique_ptr<gfx::SkiaVectorAnimation> animated_image) {
-  if (animated_image_ &&
-      AreAnimatedImagesEqual(*animated_image, *animated_image_)) {
-    Stop();
-    return;
-  }
-
-  gfx::Size preferred_size(GetPreferredSize());
-  animated_image_ = std::move(animated_image);
-
-  // Stop the animation to reset it.
-  Stop();
-
-  if (preferred_size != GetPreferredSize())
-    PreferredSizeChanged();
-  SchedulePaint();
-}
-
-void AnimatedImageView::Play() {
-  DCHECK(animated_image_);
-  DCHECK_EQ(state_, State::kStopped);
-
-  state_ = State::kPlaying;
-
-  SetCompositorFromWidget();
-
-  animated_image_->Start();
-}
-
-void AnimatedImageView::Stop() {
-  if (state_ == State::kStopped)
-    return;
-
-  DCHECK(animated_image_);
-  ClearCurrentCompositor();
-
-  animated_image_->Stop();
-  state_ = State::kStopped;
-}
-
-gfx::Size AnimatedImageView::GetImageSize() const {
-  return image_size_.value_or(
-      animated_image_ ? animated_image_->GetOriginalSize() : gfx::Size());
-}
-
-void AnimatedImageView::OnPaint(gfx::Canvas* canvas) {
-  View::OnPaint(canvas);
-  if (!animated_image_)
-    return;
-  canvas->Save();
-  canvas->Translate(GetImageBounds().origin().OffsetFromOrigin());
-
-  // OnPaint may be called before clock tick was received; in that case just
-  // paint the first frame.
-  if (!previous_timestamp_.is_null() && state_ != State::kStopped)
-    animated_image_->Paint(canvas, previous_timestamp_, GetImageSize());
-  else
-    animated_image_->PaintFrame(canvas, 0, GetImageSize());
-
-  canvas->Restore();
-}
-
-
-void AnimatedImageView::NativeViewHierarchyChanged() {
-  ui::Compositor* compositor = GetWidget()->GetCompositor();
-  DCHECK(compositor);
-  if (compositor_ != compositor) {
-    ClearCurrentCompositor();
-
-    // Restore the Play() state with the new compositor.
-    if (state_ == State::kPlaying)
-      SetCompositorFromWidget();
-  }
-}
-
-void AnimatedImageView::RemovedFromWidget() {
-  if (compositor_) {
-    Stop();
-    ClearCurrentCompositor();
-  }
-}
-
-void AnimatedImageView::OnAnimationStep(base::TimeTicks timestamp) {
-  previous_timestamp_ = timestamp;
-  SchedulePaint();
-}
-
-void AnimatedImageView::OnCompositingShuttingDown(ui::Compositor* compositor) {
-  if (compositor_ == compositor) {
-    Stop();
-    ClearCurrentCompositor();
-  }
-}
-
-void AnimatedImageView::SetCompositorFromWidget() {
-  DCHECK(!compositor_);
-  auto* widget = GetWidget();
-  DCHECK(widget);
-  compositor_ = widget->GetCompositor();
-  DCHECK(!compositor_->HasAnimationObserver(this));
-  compositor_->AddAnimationObserver(this);
-}
-
-void AnimatedImageView::ClearCurrentCompositor() {
-  if (compositor_) {
-    DCHECK(compositor_->HasAnimationObserver(this));
-    compositor_->RemoveAnimationObserver(this);
-    compositor_ = nullptr;
-  }
-}
-
-BEGIN_METADATA(AnimatedImageView)
-METADATA_PARENT_CLASS(ImageViewBase)
-END_METADATA()
-
-}  // namespace views
diff --git a/ui/views/controls/animated_image_view.h b/ui/views/controls/animated_image_view.h
deleted file mode 100644
index 58ea3ee..0000000
--- a/ui/views/controls/animated_image_view.h
+++ /dev/null
@@ -1,95 +0,0 @@
-// Copyright 2018 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 UI_VIEWS_CONTROLS_ANIMATED_IMAGE_VIEW_H_
-#define UI_VIEWS_CONTROLS_ANIMATED_IMAGE_VIEW_H_
-
-#include <memory>
-
-#include "base/macros.h"
-#include "ui/gfx/skia_vector_animation.h"
-#include "ui/views/controls/image_view_base.h"
-
-namespace gfx {
-class SkiaVectorAnimation;
-class Canvas;
-}  // namespace gfx
-
-namespace ui {
-class Compositor;
-}
-
-namespace views {
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// AnimatedImageView class.
-//
-// An AnimatedImageView can display a skia vector animation. The animation paint
-// size can be set via SetImageSize. The animation is stopped by default.
-// Use this over AnimatedIconView if you want to play a skottie animation file.
-//
-/////////////////////////////////////////////////////////////////////////////
-class VIEWS_EXPORT AnimatedImageView : public ImageViewBase,
-                                       public ui::CompositorAnimationObserver {
- public:
-  METADATA_HEADER(AnimatedImageView);
-
-  enum class State {
-    kPlaying,  // The animation is currently playing.
-    kStopped   // The animation is stopped and paint will raster the first
-               // frame.
-  };
-
-  AnimatedImageView();
-  ~AnimatedImageView() override;
-
-  // Set the animated image that should be displayed. Setting an animated image
-  // will result in stopping the current animation.
-  void SetAnimatedImage(
-      std::unique_ptr<gfx::SkiaVectorAnimation> animated_image);
-
-  // Plays the animation in loop and must only be called when this view has
-  // access to a widget.
-  void Play();
-
-  // Stops any animation and resets it to the start frame.
-  void Stop();
-
- private:
-  friend class AnimatedImageViewTest;
-
-  // Overridden from View:
-  void OnPaint(gfx::Canvas* canvas) override;
-  void NativeViewHierarchyChanged() override;
-  void RemovedFromWidget() override;
-
-  // Overridden from ui::CompositorAnimationObserver:
-  void OnAnimationStep(base::TimeTicks timestamp) override;
-  void OnCompositingShuttingDown(ui::Compositor* compositor) override;
-
-  void SetCompositorFromWidget();
-  void ClearCurrentCompositor();
-
-  // Overridden from ImageViewBase:
-  gfx::Size GetImageSize() const override;
-
-  // The current state of the animation.
-  State state_ = State::kStopped;
-
-  // The compositor associated with the widget of this view.
-  ui::Compositor* compositor_ = nullptr;
-
-  // The most recent timestamp at which a paint was scheduled for this view.
-  base::TimeTicks previous_timestamp_;
-
-  // The underlying skia vector animation.
-  std::unique_ptr<gfx::SkiaVectorAnimation> animated_image_;
-
-  DISALLOW_COPY_AND_ASSIGN(AnimatedImageView);
-};
-
-}  // namespace views
-
-#endif  // UI_VIEWS_CONTROLS_ANIMATED_IMAGE_VIEW_H_
diff --git a/ui/views/controls/image_view.cc b/ui/views/controls/image_view.cc
index 8ca173c..feeac87 100644
--- a/ui/views/controls/image_view.cc
+++ b/ui/views/controls/image_view.cc
@@ -9,6 +9,8 @@
 #include "base/logging.h"
 #include "cc/paint/paint_flags.h"
 #include "skia/ext/image_operations.h"
+#include "ui/accessibility/ax_enums.mojom.h"
+#include "ui/accessibility/ax_node_data.h"
 #include "ui/gfx/canvas.h"
 
 namespace views {
@@ -49,10 +51,60 @@
   }
 }
 
+void ImageView::SetImageSize(const gfx::Size& image_size) {
+  image_size_ = image_size;
+  PreferredSizeChanged();
+}
+
+void ImageView::ResetImageSize() {
+  image_size_.reset();
+  PreferredSizeChanged();
+}
+
+gfx::Rect ImageView::GetImageBounds() const {
+  return gfx::Rect(image_origin_, GetImageSize());
+}
+
 const gfx::ImageSkia& ImageView::GetImage() const {
   return image_;
 }
 
+void ImageView::SetHorizontalAlignment(Alignment alignment) {
+  if (alignment != horizontal_alignment_) {
+    horizontal_alignment_ = alignment;
+    UpdateImageOrigin();
+    OnPropertyChanged(&horizontal_alignment_, kPropertyEffectsPaint);
+  }
+}
+
+ImageView::Alignment ImageView::GetHorizontalAlignment() const {
+  return horizontal_alignment_;
+}
+
+void ImageView::SetVerticalAlignment(Alignment alignment) {
+  if (alignment != vertical_alignment_) {
+    vertical_alignment_ = alignment;
+    UpdateImageOrigin();
+    OnPropertyChanged(&horizontal_alignment_, kPropertyEffectsPaint);
+  }
+}
+
+ImageView::Alignment ImageView::GetVerticalAlignment() const {
+  return vertical_alignment_;
+}
+
+void ImageView::SetAccessibleName(const base::string16& accessible_name) {
+  if (accessible_name_ == accessible_name)
+    return;
+
+  accessible_name_ = accessible_name;
+  OnPropertyChanged(&accessible_name_, kPropertyEffectsNone);
+}
+
+const base::string16& ImageView::GetAccessibleName() const {
+  return accessible_name_.empty() ? tooltip_text_ : accessible_name_;
+}
+
 bool ImageView::IsImageEqual(const gfx::ImageSkia& img) const {
   // Even though we copy ImageSkia in SetImage() the backing store
   // (ImageSkiaStorage) is not copied and may have changed since the last call
@@ -64,6 +116,49 @@
       last_painted_bitmap_pixels_ == GetBitmapPixels(img, last_paint_scale_);
 }
 
+void ImageView::UpdateImageOrigin() {
+  gfx::Size image_size = GetImageSize();
+  gfx::Insets insets = GetInsets();
+
+  int x = 0;
+  // In order to properly handle alignment of images in RTL locales, we need
+  // to flip the meaning of trailing and leading. For example, if the
+  // horizontal alignment is set to trailing, then we'll use left alignment for
+  // the image instead of right alignment if the UI layout is RTL.
+  Alignment actual_horizontal_alignment = horizontal_alignment_;
+  if (base::i18n::IsRTL() && (horizontal_alignment_ != Alignment::kCenter)) {
+    actual_horizontal_alignment = (horizontal_alignment_ == Alignment::kLeading)
+                                      ? Alignment::kTrailing
+                                      : Alignment::kLeading;
+  }
+  switch (actual_horizontal_alignment) {
+    case Alignment::kLeading:
+      x = insets.left();
+      break;
+    case Alignment::kTrailing:
+      x = width() - insets.right() - image_size.width();
+      break;
+    case Alignment::kCenter:
+      x = (width() - insets.width() - image_size.width()) / 2 + insets.left();
+      break;
+  }
+
+  int y = 0;
+  switch (vertical_alignment_) {
+    case Alignment::kLeading:
+      y = insets.top();
+      break;
+    case Alignment::kTrailing:
+      y = height() - insets.bottom() - image_size.height();
+      break;
+    case Alignment::kCenter:
+      y = (height() - insets.height() - image_size.height()) / 2 + insets.top();
+      break;
+  }
+
+  image_origin_ = gfx::Point(x, y);
+}
+
 gfx::Size ImageView::GetImageSize() const {
   return image_size_.value_or(image_.size());
 }
@@ -73,6 +168,49 @@
   OnPaintImage(canvas);
 }
 
+void ImageView::GetAccessibleNodeData(ui::AXNodeData* node_data) {
+  const base::string16& name = GetAccessibleName();
+  if (name.empty()) {
+    node_data->role = ax::mojom::Role::kIgnored;
+    return;
+  }
+
+  node_data->role = ax::mojom::Role::kImage;
+  node_data->SetName(name);
+}
+
+base::string16 ImageView::GetTooltipText(const gfx::Point& p) const {
+  return tooltip_text_;
+}
+
+gfx::Size ImageView::CalculatePreferredSize() const {
+  gfx::Size size = GetImageSize();
+  size.Enlarge(GetInsets().width(), GetInsets().height());
+  return size;
+}
+
+views::PaintInfo::ScaleType ImageView::GetPaintScaleType() const {
+  // ImageViewBase contains an image which is rastered at the device scale
+  // factor. By default, the paint commands are recorded at a scale factor
+  // slightly different from the device scale factor. Re-rastering the image at
+  // this paint recording scale will result in a distorted image. Paint
+  // recording scale might also not be uniform along the x & y axis, thus
+  // resulting in further distortion in the aspect ratio of the final image.
+  // |kUniformScaling| ensures that the paint recording scale is uniform along
+  // the x & y axis and keeps the scale equal to the device scale factor.
+  // See http://crbug.com/754010 for more details.
+  return views::PaintInfo::ScaleType::kUniformScaling;
+}
+
+void ImageView::OnBoundsChanged(const gfx::Rect& previous_bounds) {
+  UpdateImageOrigin();
+}
+
+void ImageView::PreferredSizeChanged() {
+  View::PreferredSizeChanged();
+  UpdateImageOrigin();
+}
+
 void ImageView::OnPaintImage(gfx::Canvas* canvas) {
   last_paint_scale_ = canvas->image_scale();
   last_painted_bitmap_pixels_ = nullptr;
@@ -123,8 +261,17 @@
   return scaled_image_;
 }
 
+DEFINE_ENUM_CONVERTERS(
+    ImageView::Alignment,
+    {ImageView::Alignment::kLeading, base::ASCIIToUTF16("kLeading")},
+    {ImageView::Alignment::kCenter, base::ASCIIToUTF16("kCenter")},
+    {ImageView::Alignment::kTrailing, base::ASCIIToUTF16("kTrailing")})
+
 BEGIN_METADATA(ImageView)
-METADATA_PARENT_CLASS(ImageViewBase)
+METADATA_PARENT_CLASS(View)
+ADD_PROPERTY_METADATA(ImageView, Alignment, HorizontalAlignment)
+ADD_PROPERTY_METADATA(ImageView, Alignment, VerticalAlignment)
+ADD_PROPERTY_METADATA(ImageView, base::string16, AccessibleName)
 END_METADATA()
 
 }  // namespace views
diff --git a/ui/views/controls/image_view.h b/ui/views/controls/image_view.h
index 0df833d..84b358e 100644
--- a/ui/views/controls/image_view.h
+++ b/ui/views/controls/image_view.h
@@ -7,7 +7,7 @@
 
 #include "base/macros.h"
 #include "ui/gfx/image/image_skia.h"
-#include "ui/views/controls/image_view_base.h"
+#include "ui/views/view.h"
 
 namespace gfx {
 class Canvas;
@@ -25,10 +25,12 @@
 // provided image size.
 //
 /////////////////////////////////////////////////////////////////////////////
-class VIEWS_EXPORT ImageView : public ImageViewBase {
+class VIEWS_EXPORT ImageView : public View {
  public:
   METADATA_HEADER(ImageView);
 
+  enum class Alignment { kLeading, kCenter, kTrailing };
+
   ImageView();
   ~ImageView() override;
 
@@ -40,16 +42,46 @@
   // image.
   void SetImage(const gfx::ImageSkia* image_skia);
 
+  // Sets the desired size of the image to be displayed.
+  void SetImageSize(const gfx::Size& size);
+
+  // Reset the image size to the current image dimensions.
+  void ResetImageSize();
+
+  // Returns the actual bounds of the visible image inside the view.
+  gfx::Rect GetImageBounds() const;
+
   // Returns the image currently displayed, which can be empty if not set.
   // The returned image is still owned by the ImageView.
   const gfx::ImageSkia& GetImage() const;
 
+  // Set / Get the horizontal alignment.
+  void SetHorizontalAlignment(Alignment ha);
+  Alignment GetHorizontalAlignment() const;
+
+  // Set / Get the vertical alignment.
+  void SetVerticalAlignment(Alignment va);
+  Alignment GetVerticalAlignment() const;
+
+  // Set / Get the accessible name text.
+  void SetAccessibleName(const base::string16& name);
+  const base::string16& GetAccessibleName() const;
+
+  // Set the tooltip text.
+  void set_tooltip_text(const base::string16& tooltip) {
+    tooltip_text_ = tooltip;
+  }
+
   // Overridden from View:
   void OnPaint(gfx::Canvas* canvas) override;
+  void GetAccessibleNodeData(ui::AXNodeData* node_data) override;
+  base::string16 GetTooltipText(const gfx::Point& p) const override;
+  gfx::Size CalculatePreferredSize() const override;
+  views::PaintInfo::ScaleType GetPaintScaleType() const override;
+  void OnBoundsChanged(const gfx::Rect& previous_bounds) override;
+  void PreferredSizeChanged() override;
 
  protected:
-  // Overridden from ImageViewBase:
-  gfx::Size GetImageSize() const override;
 
  private:
   friend class ImageViewTest;
@@ -64,6 +96,26 @@
   // for this to return false even though the images are in fact equal.
   bool IsImageEqual(const gfx::ImageSkia& img) const;
 
+  // Recomputes and updates the |image_origin_|.
+  void UpdateImageOrigin();
+
+  gfx::Size GetImageSize() const;
+
+  // The origin of the image.
+  gfx::Point image_origin_;
+
+  // The current tooltip text.
+  base::string16 tooltip_text_;
+
+  // The current accessible name text.
+  base::string16 accessible_name_;
+
+  // Horizontal alignment.
+  Alignment horizontal_alignment_ = Alignment::kCenter;
+
+  // Vertical alignment.
+  Alignment vertical_alignment_ = Alignment::kCenter;
+
   // The underlying image.
   gfx::ImageSkia image_;
 
@@ -77,6 +129,9 @@
   // safe to cache.
   void* last_painted_bitmap_pixels_ = nullptr;
 
+  // The requested image size.
+  base::Optional<gfx::Size> image_size_;
+
   DISALLOW_COPY_AND_ASSIGN(ImageView);
 };
 
diff --git a/ui/views/controls/image_view_base.cc b/ui/views/controls/image_view_base.cc
deleted file mode 100644
index c3602db..0000000
--- a/ui/views/controls/image_view_base.cc
+++ /dev/null
@@ -1,170 +0,0 @@
-// Copyright 2018 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 "ui/views/controls/image_view_base.h"
-
-#include <utility>
-
-#include "base/logging.h"
-#include "ui/accessibility/ax_enums.mojom.h"
-#include "ui/accessibility/ax_node_data.h"
-#include "ui/gfx/geometry/insets.h"
-#include "ui/views/metadata/metadata_impl_macros.h"
-
-namespace views {
-
-ImageViewBase::ImageViewBase() = default;
-
-ImageViewBase::~ImageViewBase() = default;
-
-void ImageViewBase::SetImageSize(const gfx::Size& image_size) {
-  image_size_ = image_size;
-  PreferredSizeChanged();
-}
-
-gfx::Rect ImageViewBase::GetImageBounds() const {
-  return gfx::Rect(image_origin_, GetImageSize());
-}
-
-void ImageViewBase::ResetImageSize() {
-  image_size_.reset();
-  PreferredSizeChanged();
-}
-
-void ImageViewBase::GetAccessibleNodeData(ui::AXNodeData* node_data) {
-  const base::string16& name = GetAccessibleName();
-  if (name.empty()) {
-    node_data->role = ax::mojom::Role::kIgnored;
-    return;
-  }
-
-  node_data->role = ax::mojom::Role::kImage;
-  node_data->SetName(name);
-}
-
-void ImageViewBase::SetHorizontalAlignment(Alignment alignment) {
-  if (alignment != horizontal_alignment_) {
-    horizontal_alignment_ = alignment;
-    UpdateImageOrigin();
-    OnPropertyChanged(&horizontal_alignment_, kPropertyEffectsPaint);
-  }
-}
-
-ImageViewBase::Alignment ImageViewBase::GetHorizontalAlignment() const {
-  return horizontal_alignment_;
-}
-
-void ImageViewBase::SetVerticalAlignment(Alignment alignment) {
-  if (alignment != vertical_alignment_) {
-    vertical_alignment_ = alignment;
-    UpdateImageOrigin();
-    OnPropertyChanged(&horizontal_alignment_, kPropertyEffectsPaint);
-  }
-}
-
-ImageViewBase::Alignment ImageViewBase::GetVerticalAlignment() const {
-  return vertical_alignment_;
-}
-
-void ImageViewBase::SetAccessibleName(const base::string16& accessible_name) {
-  if (accessible_name_ == accessible_name)
-    return;
-
-  accessible_name_ = accessible_name;
-  OnPropertyChanged(&accessible_name_, kPropertyEffectsNone);
-}
-
-const base::string16& ImageViewBase::GetAccessibleName() const {
-  return accessible_name_.empty() ? tooltip_text_ : accessible_name_;
-}
-
-base::string16 ImageViewBase::GetTooltipText(const gfx::Point& p) const {
-  return tooltip_text_;
-}
-
-gfx::Size ImageViewBase::CalculatePreferredSize() const {
-  gfx::Size size = GetImageSize();
-  size.Enlarge(GetInsets().width(), GetInsets().height());
-  return size;
-}
-
-views::PaintInfo::ScaleType ImageViewBase::GetPaintScaleType() const {
-  // ImageViewBase contains an image which is rastered at the device scale
-  // factor. By default, the paint commands are recorded at a scale factor
-  // slightly different from the device scale factor. Re-rastering the image at
-  // this paint recording scale will result in a distorted image. Paint
-  // recording scale might also not be uniform along the x & y axis, thus
-  // resulting in further distortion in the aspect ratio of the final image.
-  // |kUniformScaling| ensures that the paint recording scale is uniform along
-  // the x & y axis and keeps the scale equal to the device scale factor.
-  // See http://crbug.com/754010 for more details.
-  return views::PaintInfo::ScaleType::kUniformScaling;
-}
-
-void ImageViewBase::OnBoundsChanged(const gfx::Rect& previous_bounds) {
-  UpdateImageOrigin();
-}
-
-void ImageViewBase::UpdateImageOrigin() {
-  gfx::Size image_size = GetImageSize();
-  gfx::Insets insets = GetInsets();
-
-  int x = 0;
-  // In order to properly handle alignment of images in RTL locales, we need
-  // to flip the meaning of trailing and leading. For example, if the
-  // horizontal alignment is set to trailing, then we'll use left alignment for
-  // the image instead of right alignment if the UI layout is RTL.
-  Alignment actual_horizontal_alignment = horizontal_alignment_;
-  if (base::i18n::IsRTL() && (horizontal_alignment_ != Alignment::kCenter)) {
-    actual_horizontal_alignment = (horizontal_alignment_ == Alignment::kLeading)
-                                      ? Alignment::kTrailing
-                                      : Alignment::kLeading;
-  }
-  switch (actual_horizontal_alignment) {
-    case Alignment::kLeading:
-      x = insets.left();
-      break;
-    case Alignment::kTrailing:
-      x = width() - insets.right() - image_size.width();
-      break;
-    case Alignment::kCenter:
-      x = (width() - insets.width() - image_size.width()) / 2 + insets.left();
-      break;
-  }
-
-  int y = 0;
-  switch (vertical_alignment_) {
-    case Alignment::kLeading:
-      y = insets.top();
-      break;
-    case Alignment::kTrailing:
-      y = height() - insets.bottom() - image_size.height();
-      break;
-    case Alignment::kCenter:
-      y = (height() - insets.height() - image_size.height()) / 2 + insets.top();
-      break;
-  }
-
-  image_origin_ = gfx::Point(x, y);
-}
-
-void ImageViewBase::PreferredSizeChanged() {
-  View::PreferredSizeChanged();
-  UpdateImageOrigin();
-}
-
-DEFINE_ENUM_CONVERTERS(
-    ImageViewBase::Alignment,
-    {ImageViewBase::Alignment::kLeading, base::ASCIIToUTF16("kLeading")},
-    {ImageViewBase::Alignment::kCenter, base::ASCIIToUTF16("kCenter")},
-    {ImageViewBase::Alignment::kTrailing, base::ASCIIToUTF16("kTrailing")})
-
-BEGIN_METADATA(ImageViewBase)
-METADATA_PARENT_CLASS(View)
-ADD_PROPERTY_METADATA(ImageViewBase, Alignment, HorizontalAlignment)
-ADD_PROPERTY_METADATA(ImageViewBase, Alignment, VerticalAlignment)
-ADD_PROPERTY_METADATA(ImageViewBase, base::string16, AccessibleName)
-END_METADATA()
-
-}  // namespace views
diff --git a/ui/views/controls/image_view_base.h b/ui/views/controls/image_view_base.h
deleted file mode 100644
index e8bc0b2..0000000
--- a/ui/views/controls/image_view_base.h
+++ /dev/null
@@ -1,95 +0,0 @@
-// Copyright 2018 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 UI_VIEWS_CONTROLS_IMAGE_VIEW_BASE_H_
-#define UI_VIEWS_CONTROLS_IMAGE_VIEW_BASE_H_
-
-#include "base/macros.h"
-#include "base/optional.h"
-#include "ui/views/view.h"
-
-namespace gfx {
-class Canvas;
-}
-
-namespace views {
-
-class VIEWS_EXPORT ImageViewBase : public View {
- public:
-  METADATA_HEADER(ImageViewBase);
-
-  enum class Alignment { kLeading, kCenter, kTrailing };
-
-  ImageViewBase();
-  ~ImageViewBase() override;
-
-  // Set the desired image size for the receiving ImageView.
-  void SetImageSize(const gfx::Size& image_size);
-
-  // Returns the actual bounds of the visible image inside the view.
-  gfx::Rect GetImageBounds() const;
-
-  // Reset the image size to the current image dimensions.
-  void ResetImageSize();
-
-  // Set / Get the horizontal alignment.
-  void SetHorizontalAlignment(Alignment ha);
-  Alignment GetHorizontalAlignment() const;
-
-  // Set / Get the vertical alignment.
-  void SetVerticalAlignment(Alignment va);
-  Alignment GetVerticalAlignment() const;
-
-  // Set the tooltip text.
-  void set_tooltip_text(const base::string16& tooltip) {
-    tooltip_text_ = tooltip;
-  }
-
-  // Set / Get the accessible name text.
-  void SetAccessibleName(const base::string16& name);
-  const base::string16& GetAccessibleName() const;
-
-  // Overridden from View:
-  void OnPaint(gfx::Canvas* canvas) override = 0;
-  void GetAccessibleNodeData(ui::AXNodeData* node_data) override;
-  base::string16 GetTooltipText(const gfx::Point& p) const override;
-  gfx::Size CalculatePreferredSize() const override;
-  views::PaintInfo::ScaleType GetPaintScaleType() const override;
-  void OnBoundsChanged(const gfx::Rect& previous_bounds) override;
-  void PreferredSizeChanged() override;
-
- protected:
-  // Returns the size the image will be painted.
-  virtual gfx::Size GetImageSize() const = 0;
-
-  // The requested image size.
-  base::Optional<gfx::Size> image_size_;
-
- private:
-  friend class ImageViewTest;
-
-  // Recomputes and updates the |image_origin_|.
-  void UpdateImageOrigin();
-
-  // The origin of the image.
-  gfx::Point image_origin_;
-
-  // Horizontal alignment.
-  Alignment horizontal_alignment_ = Alignment::kCenter;
-
-  // Vertical alignment.
-  Alignment vertical_alignment_ = Alignment::kCenter;
-
-  // The current tooltip text.
-  base::string16 tooltip_text_;
-
-  // The current accessible name text.
-  base::string16 accessible_name_;
-
-  DISALLOW_COPY_AND_ASSIGN(ImageViewBase);
-};
-
-}  // namespace views
-
-#endif  // UI_VIEWS_CONTROLS_IMAGE_VIEW_BASE_H_
diff --git a/ui/views/controls/webview/web_dialog_view.cc b/ui/views/controls/webview/web_dialog_view.cc
index e9bac15..2952e8d 100644
--- a/ui/views/controls/webview/web_dialog_view.cc
+++ b/ui/views/controls/webview/web_dialog_view.cc
@@ -15,6 +15,7 @@
 #include "content/public/browser/notification_types.h"
 #include "content/public/browser/render_frame_host.h"
 #include "content/public/browser/web_contents.h"
+#include "content/public/common/resource_load_info.mojom.h"
 #include "ui/events/event.h"
 #include "ui/events/keycodes/keyboard_codes.h"
 #include "ui/views/controls/webview/webview.h"
@@ -52,6 +53,18 @@
     delegate_->OnWebContentsFinishedLoad();
 }
 
+void ObservableWebView::ResourceLoadComplete(
+    content::RenderFrameHost* render_frame_host,
+    const content::GlobalRequestID& request_id,
+    const content::mojom::ResourceLoadInfo& resource_load_info) {
+  // Only listen to the main frame.
+  if (render_frame_host->GetParent())
+    return;
+
+  if (delegate_)
+    delegate_->OnMainFrameResourceLoadComplete(resource_load_info);
+}
+
 ////////////////////////////////////////////////////////////////////////////////
 // WebDialogView, public:
 
@@ -378,15 +391,22 @@
   *proceed_to_fire_unload = proceed;
 }
 
-bool WebDialogView::IsWebContentsCreationOverridden(
+bool WebDialogView::ShouldCreateWebContents(
+    content::WebContents* web_contents,
+    content::RenderFrameHost* opener,
     content::SiteInstance* source_site_instance,
+    int32_t route_id,
+    int32_t main_frame_route_id,
+    int32_t main_frame_widget_route_id,
     content::mojom::WindowContainerType window_container_type,
     const GURL& opener_url,
     const std::string& frame_name,
-    const GURL& target_url) {
+    const GURL& target_url,
+    const std::string& partition_id,
+    content::SessionStorageNamespace* session_storage_namespace) {
   if (delegate_)
-    return delegate_->HandleShouldOverrideWebContentsCreation();
-  return false;
+    return delegate_->HandleShouldCreateWebContents();
+  return true;
 }
 
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/ui/views/controls/webview/web_dialog_view.h b/ui/views/controls/webview/web_dialog_view.h
index 4286608..7e6755c 100644
--- a/ui/views/controls/webview/web_dialog_view.h
+++ b/ui/views/controls/webview/web_dialog_view.h
@@ -25,6 +25,7 @@
 namespace content {
 class BrowserContext;
 class RenderFrameHost;
+struct GlobalRequestID;
 }
 
 namespace views {
@@ -39,6 +40,10 @@
   // content::WebContentsObserver
   void DidFinishLoad(content::RenderFrameHost* render_frame_host,
                      const GURL& validated_url) override;
+  void ResourceLoadComplete(
+      content::RenderFrameHost* render_frame_host,
+      const content::GlobalRequestID& request_id,
+      const content::mojom::ResourceLoadInfo& resource_load_info) override;
 
  private:
   ui::WebDialogDelegate* delegate_;
@@ -140,12 +145,19 @@
   void BeforeUnloadFired(content::WebContents* tab,
                          bool proceed,
                          bool* proceed_to_fire_unload) override;
-  bool IsWebContentsCreationOverridden(
+  bool ShouldCreateWebContents(
+      content::WebContents* web_contents,
+      content::RenderFrameHost* opener,
       content::SiteInstance* source_site_instance,
+      int32_t route_id,
+      int32_t main_frame_route_id,
+      int32_t main_frame_widget_route_id,
       content::mojom::WindowContainerType window_container_type,
       const GURL& opener_url,
       const std::string& frame_name,
-      const GURL& target_url) override;
+      const GURL& target_url,
+      const std::string& partition_id,
+      content::SessionStorageNamespace* session_storage_namespace) override;
 
  private:
   FRIEND_TEST_ALL_PREFIXES(WebDialogBrowserTest, WebContentRendered);
diff --git a/ui/views/examples/BUILD.gn b/ui/views/examples/BUILD.gn
index 90e1df27..f83ef04 100644
--- a/ui/views/examples/BUILD.gn
+++ b/ui/views/examples/BUILD.gn
@@ -9,8 +9,6 @@
   testonly = true
 
   sources = [
-    "animated_image_view_example.cc",
-    "animated_image_view_example.h",
     "box_layout_example.cc",
     "box_layout_example.h",
     "bubble_example.cc",
diff --git a/ui/views/examples/animated_image_view_example.cc b/ui/views/examples/animated_image_view_example.cc
deleted file mode 100644
index 1d8cdbe..0000000
--- a/ui/views/examples/animated_image_view_example.cc
+++ /dev/null
@@ -1,139 +0,0 @@
-// Copyright 2018 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 "ui/views/examples/animated_image_view_example.h"
-
-#include <memory>
-
-#include "base/files/file_path.h"
-#include "base/files/file_util.h"
-#include "base/macros.h"
-#include "base/memory/ref_counted.h"
-#include "base/strings/string_number_conversions.h"
-#include "base/strings/utf_string_conversions.h"
-#include "base/threading/thread_restrictions.h"
-#include "build/build_config.h"
-#include "cc/paint/skottie_wrapper.h"
-#include "ui/gfx/geometry/insets.h"
-#include "ui/views/border.h"
-#include "ui/views/controls/animated_image_view.h"
-#include "ui/views/controls/button/button.h"
-#include "ui/views/controls/button/md_text_button.h"
-#include "ui/views/controls/textfield/textfield.h"
-#include "ui/views/controls/textfield/textfield_controller.h"
-#include "ui/views/layout/box_layout.h"
-#include "ui/views/layout/fill_layout.h"
-#include "ui/views/view.h"
-
-namespace views {
-namespace examples {
-
-namespace {
-
-// This class can load a skottie(and lottie) animation file from disk and play
-// it in a view as AnimatedImageView.
-// See https://skia.org/user/modules/skottie for more info on skottie.
-class AnimationGallery : public View,
-                         public TextfieldController,
-                         public ButtonListener {
- public:
-  AnimationGallery() {
-    auto image_view_container = std::make_unique<views::View>();
-    animated_image_view_ = image_view_container->AddChildView(
-        std::make_unique<AnimatedImageView>());
-    image_view_container->SetLayoutManager(std::make_unique<FillLayout>());
-    animated_image_view_->SetBorder(
-        CreateSolidSidedBorder(1, 1, 1, 1, SK_ColorBLACK));
-    image_view_container_ = AddChildView(std::move(image_view_container));
-
-    BoxLayout* box = SetLayoutManager(std::make_unique<BoxLayout>(
-        BoxLayout::Orientation::kVertical, gfx::Insets(10), 10));
-    box->SetFlexForView(image_view_container_, 1);
-
-    auto file_chooser = std::make_unique<Textfield>();
-    file_chooser->SetPlaceholderText(
-        base::ASCIIToUTF16("Enter path to lottie JSON file"));
-    auto file_container = std::make_unique<View>();
-    BoxLayout* file_box =
-        file_container->SetLayoutManager(std::make_unique<BoxLayout>(
-            BoxLayout::Orientation::kHorizontal, gfx::Insets(10), 10));
-    file_chooser_ = file_container->AddChildView(std::move(file_chooser));
-    file_go_button_ = file_container->AddChildView(
-        MdTextButton::Create(this, base::ASCIIToUTF16("Render")));
-    file_box->SetFlexForView(file_chooser_, 1);
-    AddChildView(std::move(file_container));
-
-    size_input_->SetPlaceholderText(
-        base::ASCIIToUTF16("Size in dip (Empty for default)"));
-    size_input_->set_controller(this);
-  }
-
-  ~AnimationGallery() override = default;
-
-  // TextfieldController:
-  void ContentsChanged(Textfield* sender,
-                       const base::string16& new_contents) override {
-    if (sender == size_input_) {
-      if (!base::StringToInt(new_contents, &size_) && (size_ > 0)) {
-        size_ = 0;
-        size_input_->SetText(base::string16());
-      }
-      Update();
-    }
-  }
-
-  // ButtonListener:
-  void ButtonPressed(Button* sender, const ui::Event& event) override {
-    DCHECK_EQ(file_go_button_, sender);
-    std::string json;
-    base::ScopedAllowBlockingForTesting allow_blocking;
-#if defined(OS_POSIX)
-    base::FilePath path(base::UTF16ToUTF8(file_chooser_->GetText()));
-#else
-    base::FilePath path(file_chooser_->GetText());
-#endif  // defined(OS_POSIX)
-    base::ReadFileToString(path, &json);
-
-    auto skottie = base::MakeRefCounted<cc::SkottieWrapper>(
-        base::RefCountedString::TakeString(&json));
-    animated_image_view_->SetAnimatedImage(
-        std::make_unique<gfx::SkiaVectorAnimation>(skottie));
-    animated_image_view_->Play();
-    Update();
-  }
-
- private:
-  void Update() {
-    if (size_ > 24)
-      animated_image_view_->SetImageSize(gfx::Size(size_, size_));
-    else
-      animated_image_view_->ResetImageSize();
-    InvalidateLayout();
-  }
-
-  AnimatedImageView* animated_image_view_;
-  View* image_view_container_;
-  Textfield* size_input_ = AddChildView(std::make_unique<Textfield>());
-  Textfield* file_chooser_;
-  Button* file_go_button_;
-
-  int size_ = 0;
-
-  DISALLOW_COPY_AND_ASSIGN(AnimationGallery);
-};
-
-}  // namespace
-
-AnimatedImageViewExample::AnimatedImageViewExample()
-    : ExampleBase("Animated Image View") {}
-
-AnimatedImageViewExample::~AnimatedImageViewExample() = default;
-
-void AnimatedImageViewExample::CreateExampleView(View* container) {
-  container->SetLayoutManager(std::make_unique<FillLayout>());
-  container->AddChildView(std::make_unique<AnimationGallery>());
-}
-
-}  // namespace examples
-}  // namespace views
diff --git a/ui/views/examples/animated_image_view_example.h b/ui/views/examples/animated_image_view_example.h
deleted file mode 100644
index 8bf30b5..0000000
--- a/ui/views/examples/animated_image_view_example.h
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2018 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 UI_VIEWS_EXAMPLES_ANIMATED_IMAGE_VIEW_EXAMPLE_H_
-#define UI_VIEWS_EXAMPLES_ANIMATED_IMAGE_VIEW_EXAMPLE_H_
-
-#include "base/macros.h"
-#include "ui/views/examples/example_base.h"
-
-namespace views {
-namespace examples {
-
-class VIEWS_EXAMPLES_EXPORT AnimatedImageViewExample : public ExampleBase {
- public:
-  AnimatedImageViewExample();
-  ~AnimatedImageViewExample() override;
-
-  // ExampleBase:
-  void CreateExampleView(View* container) override;
-
- private:
-  DISALLOW_COPY_AND_ASSIGN(AnimatedImageViewExample);
-};
-
-}  // namespace examples
-}  // namespace views
-
-#endif  // UI_VIEWS_EXAMPLES_ANIMATED_IMAGE_VIEW_EXAMPLE_H_
diff --git a/ui/views/examples/examples_window.cc b/ui/views/examples/examples_window.cc
index 9c72520..fac970d 100644
--- a/ui/views/examples/examples_window.cc
+++ b/ui/views/examples/examples_window.cc
@@ -19,7 +19,6 @@
 #include "ui/views/background.h"
 #include "ui/views/controls/combobox/combobox.h"
 #include "ui/views/controls/label.h"
-#include "ui/views/examples/animated_image_view_example.h"
 #include "ui/views/examples/box_layout_example.h"
 #include "ui/views/examples/bubble_example.h"
 #include "ui/views/examples/button_example.h"
@@ -62,7 +61,6 @@
 // Creates the default set of examples.
 ExampleVector CreateExamples() {
   ExampleVector examples;
-  examples.push_back(std::make_unique<AnimatedImageViewExample>());
   examples.push_back(std::make_unique<BoxLayoutExample>());
   examples.push_back(std::make_unique<BubbleExample>());
   examples.push_back(std::make_unique<ButtonExample>());
diff --git a/ui/views/test/ui_controls_factory_desktop_aurax11.cc b/ui/views/test/ui_controls_factory_desktop_aurax11.cc
index 4f86580..a258860 100644
--- a/ui/views/test/ui_controls_factory_desktop_aurax11.cc
+++ b/ui/views/test/ui_controls_factory_desktop_aurax11.cc
@@ -92,7 +92,8 @@
 
     aura::WindowTreeHost* host = window->GetHost();
 
-    XEvent xevent = {0};
+    XEvent xevent;
+    xevent.xkey = {};
     xevent.xkey.type = KeyPress;
     if (control) {
       SetKeycodeAndSendThenMask(host, &xevent, XK_Control_L, ControlMask);
@@ -152,7 +153,8 @@
       // current mouse position as a result of XGrabPointer()
       root_window->MoveCursorTo(root_location);
     } else {
-      XEvent xevent = {0};
+      XEvent xevent;
+      xevent.xmotion = {};
       XMotionEvent* xmotion = &xevent.xmotion;
       xmotion->type = MotionNotify;
       xmotion->x = root_location.x();
@@ -175,7 +177,8 @@
                                      int button_state,
                                      base::OnceClosure closure,
                                      int accelerator_state) override {
-    XEvent xevent = {0};
+    XEvent xevent;
+    xevent.xbutton = {};
     XButtonEvent* xbutton = &xevent.xbutton;
     gfx::Point mouse_loc = aura::Env::GetInstance()->last_mouse_location();
     aura::Window* root_window = RootWindowForPoint(mouse_loc);
diff --git a/ui/web_dialogs/web_dialog_delegate.cc b/ui/web_dialogs/web_dialog_delegate.cc
index 0d0e20d60..60add58 100644
--- a/ui/web_dialogs/web_dialog_delegate.cc
+++ b/ui/web_dialogs/web_dialog_delegate.cc
@@ -54,8 +54,8 @@
   return false;
 }
 
-bool WebDialogDelegate::HandleShouldOverrideWebContentsCreation() {
-  return false;
+bool WebDialogDelegate::HandleShouldCreateWebContents() {
+  return true;
 }
 
 std::vector<Accelerator> WebDialogDelegate::GetAccelerators() {
diff --git a/ui/web_dialogs/web_dialog_delegate.h b/ui/web_dialogs/web_dialog_delegate.h
index 0c53c125..7e2587e 100644
--- a/ui/web_dialogs/web_dialog_delegate.h
+++ b/ui/web_dialogs/web_dialog_delegate.h
@@ -10,6 +10,7 @@
 
 #include "base/strings/string16.h"
 #include "content/public/browser/web_contents_delegate.h"
+#include "content/public/common/resource_load_info.mojom.h"
 #include "ui/base/ui_base_types.h"
 #include "ui/base/window_open_disposition.h"
 #include "ui/web_dialogs/web_dialogs_export.h"
@@ -141,8 +142,8 @@
                                     content::WebContents** out_new_contents);
 
   // A callback to control whether a WebContents will be created. Returns
-  // true to disallow the creation. Return false to use the default handler.
-  virtual bool HandleShouldOverrideWebContentsCreation();
+  // false to disallow the creation. Return true to use the default handler.
+  virtual bool HandleShouldCreateWebContents();
 
   // Stores the dialog bounds.
   virtual void StoreDialogSize(const gfx::Size& dialog_size) {}
@@ -154,6 +155,8 @@
   virtual bool AcceleratorPressed(const Accelerator& accelerator);
 
   virtual void OnWebContentsFinishedLoad() {}
+  virtual void OnMainFrameResourceLoadComplete(
+      const content::mojom::ResourceLoadInfo& resource_load_info) {}
 
   virtual ~WebDialogDelegate() {}
 };
diff --git a/ui/webui/resources/cr_elements/cr_toggle/cr_toggle.html b/ui/webui/resources/cr_elements/cr_toggle/cr_toggle.html
index f1859fb..0e81d5d 100644
--- a/ui/webui/resources/cr_elements/cr_toggle/cr_toggle.html
+++ b/ui/webui/resources/cr_elements/cr_toggle/cr_toggle.html
@@ -33,6 +33,16 @@
           --cr-toggle-unchecked-ink-color: var(--google-grey-refresh-300);
         }
       }
+      /* Keep the prefers-color-scheme and [dark] rules the same. */
+      :host([dark]) {
+        --cr-toggle-checked-bar-color: var(--google-blue-refresh-300);
+        --cr-toggle-checked-button-color: var(--google-blue-refresh-300);
+        --cr-toggle-checked-ink-color: var(--google-blue-refresh-300);
+        --cr-toggle-ripple-opacity: .4;
+        --cr-toggle-unchecked-bar-color: var(--google-grey-refresh-500);
+        --cr-toggle-unchecked-button-color: var(--google-grey-refresh-300);
+        --cr-toggle-unchecked-ink-color: var(--google-grey-refresh-300);
+      }
 
       :host([disabled]) {
         cursor: initial;
diff --git a/ui/webui/resources/cr_elements/cr_toggle/cr_toggle.js b/ui/webui/resources/cr_elements/cr_toggle/cr_toggle.js
index 4eb58ff..6b8f1d9 100644
--- a/ui/webui/resources/cr_elements/cr_toggle/cr_toggle.js
+++ b/ui/webui/resources/cr_elements/cr_toggle/cr_toggle.js
@@ -22,6 +22,12 @@
       notify: true,
     },
 
+    dark: {
+      type: Boolean,
+      value: false,
+      reflectToAttribute: true,
+    },
+
     disabled: {
       type: Boolean,
       value: false,
diff --git a/weblayer/public/java/BUILD.gn b/weblayer/public/java/BUILD.gn
index c065895..f9fdcd58 100644
--- a/weblayer/public/java/BUILD.gn
+++ b/weblayer/public/java/BUILD.gn
@@ -19,39 +19,57 @@
   android_manifest_dep = ":weblayer_client_manifest"
 }
 
-android_library("java") {
-  java_files = [
-    "org/chromium/weblayer/BrowserController.java",
-    "org/chromium/weblayer/BrowserFragment.java",
-    "org/chromium/weblayer/BrowserFragmentController.java",
-    "org/chromium/weblayer/BrowserObserver.java",
-    "org/chromium/weblayer/Callback.java",
-    "org/chromium/weblayer/ListenableFuture.java",
-    "org/chromium/weblayer/ListenableResult.java",
-    "org/chromium/weblayer/Navigation.java",
-    "org/chromium/weblayer/NavigationController.java",
-    "org/chromium/weblayer/NavigationObserver.java",
-    "org/chromium/weblayer/ObserverList.java",
-    "org/chromium/weblayer/Profile.java",
-    "org/chromium/weblayer/WebLayer.java",
-    "org/chromium/weblayer/ChildProcessService.java",
-    "org/chromium/weblayer/UnsupportedVersionException.java",
-  ]
+template("weblayer_java") {
+  android_library(target_name) {
+    java_files = [
+      "org/chromium/weblayer/BrowserController.java",
+      "org/chromium/weblayer/BrowserFragment.java",
+      "org/chromium/weblayer/BrowserFragmentController.java",
+      "org/chromium/weblayer/BrowserObserver.java",
+      "org/chromium/weblayer/Callback.java",
+      "org/chromium/weblayer/ListenableFuture.java",
+      "org/chromium/weblayer/ListenableResult.java",
+      "org/chromium/weblayer/Navigation.java",
+      "org/chromium/weblayer/NavigationController.java",
+      "org/chromium/weblayer/NavigationObserver.java",
+      "org/chromium/weblayer/ObserverList.java",
+      "org/chromium/weblayer/Profile.java",
+      "org/chromium/weblayer/WebLayer.java",
+      "org/chromium/weblayer/ChildProcessService.java",
+      "org/chromium/weblayer/UnsupportedVersionException.java",
+    ]
 
+    deps = [
+      "//third_party/android_deps:com_android_support_support_fragment_java",
+      "//weblayer/browser/java:client_java",
+    ]
+    deps += invoker.deps
+
+    # Needed for android.webkit.WebViewDelegate.
+    alternative_android_sdk_dep =
+        "//third_party/android_sdk:public_framework_system_java"
+  }
+}
+
+# This target should be used by client apps in the chromium repo that want to
+# include the client library code and manifest.
+weblayer_java("java") {
   deps = [
+    # This dep is needed to include the manifest that should be merged into the
+    # client app's manifest.
     ":client_resources",
-    "//third_party/android_deps:com_android_support_support_fragment_java",
-    "//weblayer/browser/java:client_java",
   ]
+}
 
-  # Needed for android.webkit.WebViewDelegate.
-  alternative_android_sdk_dep =
-      "//third_party/android_sdk:public_framework_system_java"
+# This target should only be used when generating the aar. The dist_aar rule
+# adds the client manifest separately.
+weblayer_java("aar_java") {
+  deps = []
 }
 
 dist_aar("client_aar") {
   deps = [
-    ":java",
+    ":aar_java",
     ":weblayer_client_manifest",
   ]