Pārlūkot izejas kodu

Release 84.0.4147.119

csagan5 5 gadi atpakaļ
vecāks
revīzija
96671ab221

+ 5 - 0
CHANGELOG.md

@@ -1,3 +1,8 @@
+# 84.0.4147.119
+* update zh_CN translations
+* disable CORS RFC1918 (fixes https://github.com/bromite/bromite/issues/664)
+* restore duet flags (fixes https://github.com/bromite/bromite/issues/667)
+
 # 84.0.4147.113
 * block gateway attacks via websockets (fixes https://github.com/bromite/bromite/issues/590)
 * enable prefetch-privacy-changes by default (fixes https://github.com/bromite/bromite/issues/659)

+ 1 - 0
README.md

@@ -74,6 +74,7 @@ Flags which have been retired from upstream Chromium but are still available in
 * `#enable-horizontal-tab-switcher`
 * `#pull-to-refresh`
 * `#enable-search-ready-omnibox`
+* `#enable-chrome-duet` and `#enable-duet-tabstrip-integration`
 
 New flags:
 

+ 1 - 1
build/RELEASE

@@ -1 +1 @@
-84.0.4147.113
+84.0.4147.119

+ 1 - 0
build/bromite_patches_list.txt

@@ -145,4 +145,5 @@ Enable-legacy-TLS-interstitital-warning.patch
 Block-gateway-attacks-via-websockets.patch
 Enable-prefetch-privacy-changes-by-default.patch
 Enable-reduced-referrer-granularity-by-default.patch
+Restore-duet-flags.patch
 Automated-domain-substitution.patch

+ 1 - 1746
build/patches/Automated-domain-substitution.patch

@@ -51,7 +51,6 @@ Subject: Automated domain substitution
  .../extensions/external_pref_loader.cc        |   2 +-
  chrome/browser/extensions/install_signer.cc   |   2 +-
  .../updater/chrome_update_client_config.cc    |   2 +-
- chrome/browser/flag-metadata.json             | 468 ++++-----
  .../importer/edge_importer_browsertest_win.cc |   8 +-
  .../importer/ie_importer_browsertest_win.cc   |  30 +-
  .../cast/cast_media_route_provider.cc         |   2 +-
@@ -508,7 +507,7 @@ Subject: Automated domain substitution
  .../account_picker/user_pod_template.html     |   2 +-
  ui/webui/resources/cr_elements/icons.html     |   4 +-
  .../weblayer/shell/WebLayerShellActivity.java |   2 +-
- 505 files changed, 2701 insertions(+), 2701 deletions(-)
+ 504 files changed, 2467 insertions(+), 2467 deletions(-)
 
 diff --git a/.gn b/.gn
 --- a/.gn
@@ -1435,1750 +1434,6 @@ diff --git a/chrome/browser/extensions/updater/chrome_update_client_config.cc b/
              }));
    }
    return network_fetcher_factory_;
-diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
---- a/chrome/browser/flag-metadata.json
-+++ b/chrome/browser/flag-metadata.json
-@@ -3,7 +3,7 @@
- // of the review process and to clean up flags that have become obsolete or
- // unused. For more details, see:
- //
--//    https://chromium.googlesource.com/chromium/src/+/master/docs/flag_ownership.md
-+//    https://chromium.9oo91esource.qjz9zk/chromium/src/+/master/docs/flag_ownership.md
- //
- // This file is a list of json objects; each object contains these keys:
- //
-@@ -18,7 +18,7 @@
- //     - A string beginning with '//', which is treated as a path to a file
- //       containing a list of owners for this flag (commonly an OWNERS file);
- //     - Any other string, which is treated as the username part of an
--//       @chromium.org email address;
-+//       @ch40m1um.qjz9zk email address;
- //
- //   expiry_milestone: the last milestone in which this flag should be present.
- //   Specifically, once the trunk milestone number is larger than this
-@@ -89,7 +89,7 @@
-   },
-   {
-     "name": "allow-sync-xhr-in-page-dismissal",
--    "owners": [ "kdillon@chromium.org" ],
-+    "owners": [ "kdillon@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-@@ -99,7 +99,7 @@
-   },
-   {
-     "name": "android-multiple-display",
--    "owners": [ "lazzzis@google.com", "twellington" ],
-+    "owners": [ "lazzzis@9oo91e.qjz9zk", "twellington" ],
-     "expiry_milestone": 87
-   },
-   {
-@@ -134,7 +134,7 @@
-   },
-   {
-     "name": "app-service-intent-handling",
--    "owners": [ "chromeos-apps-foundation-team@google.com" ],
-+    "owners": [ "chromeos-apps-foundation-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -169,14 +169,14 @@
-   },
-   {
-     "name": "arc-native-bridge-toggle",
--    "owners": [ "levarum@google.com" ],
-+    "owners": [ "levarum@9oo91e.qjz9zk" ],
-     // Used on ChromeOS to compare and debug different ARC native-bridge
-     // implementations which are normally used on different platforms.
-     "expiry_milestone": -1
-   },
-   {
-     "name": "arc-print-spooler-experiment",
--    "owners": [ "jschettler@google.com", "bmgordon@google.com" ],
-+    "owners": [ "jschettler@9oo91e.qjz9zk", "bmgordon@9oo91e.qjz9zk" ],
-     "expiry_milestone": 84
-   },
-   {
-@@ -245,7 +245,7 @@
-   },
-   {
-     "name": "autofill-always-return-cloud-tokenized-card",
--    "owners": [ "aneeshali@google.com", "annelim@google.com", "jsaul@google.com" ],
-+    "owners": [ "aneeshali@9oo91e.qjz9zk", "annelim@9oo91e.qjz9zk", "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-@@ -265,7 +265,7 @@
-   },
-   {
-     "name": "autofill-enable-card-nickname-management",
--    "owners": [ "siyua", "sujiezhu@google.com" ],
-+    "owners": [ "siyua", "sujiezhu@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-@@ -285,7 +285,7 @@
-   },
-   {
-     "name": "autofill-enable-surfacing-server-card-nickname",
--    "owners": [ "sujiezhu@google.com", "jsaul@google.com" ],
-+    "owners": [ "sujiezhu@9oo91e.qjz9zk", "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -295,7 +295,7 @@
-   },
-   {
-     "name": "autofill-enable-virtual-card",
--    "owners": [ "siyua", "jsaul@google.com" ],
-+    "owners": [ "siyua", "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-@@ -320,12 +320,12 @@
-   },
-   {
-     "name": "autofill-keyboard-accessory-view",
--    "owners": [ "fhorschig@chromium.org" ],
-+    "owners": [ "fhorschig@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "autofill-no-local-save-on-unmask-success",
--    "owners": [ "jsaul@google.com" ],
-+    "owners": [ "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 84
-   },
-   {
-@@ -390,12 +390,12 @@
-   },
-   {
-     "name": "avatar-toolbar-button",
--    "owners": [ "droger", "my-chrome-everywhere@google.com" ],
-+    "owners": [ "droger", "my-chrome-everywhere@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "back-forward-cache",
--    "owners": [ "bfcache-dev@chromium.org" ],
-+    "owners": [ "bfcache-dev@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-@@ -410,12 +410,12 @@
-   },
-   {
-     "name": "bluetooth-aggressive-appearance-filter",
--    "owners": [ "hansberry", "cros-system-services@google.com" ],
-+    "owners": [ "hansberry", "cros-system-services@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "bluetooth-fix-a2dp-packet-size",
--    "owners": [ "michaelfsun", "chromeos-bluetooth@google.com" ],
-+    "owners": [ "michaelfsun", "chromeos-bluetooth@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -435,7 +435,7 @@
-   },
-   {
-     "name": "camera-system-web-app",
--    "owners": [ "chromeos-camera-eng@google.com" ],
-+    "owners": [ "chromeos-camera-eng@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -480,7 +480,7 @@
-   },
-   {
-     "name": "chromeos-video-decoder",
--    "owners": [ "chromeos-video-eng@google.com" ],
-+    "owners": [ "chromeos-video-eng@9oo91e.qjz9zk" ],
-     // This flag should expire once all VDA-based ChromeOS video decoders have
-     // been removed.
-     "expiry_milestone": 90
-@@ -542,7 +542,7 @@
-   },
-   {
-     "name": "compositor-threaded-scrollbar-scrolling",
--    "owners": [ "arakeri@microsoft.com" ],
-+    "owners": [ "arakeri@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -677,7 +677,7 @@
-   },
-   {
-     "name": "crostini-port-forwarding",
--    "owners": [ "danielng", "davidmunro@google.com", "hollingum@google.com" ],
-+    "owners": [ "danielng", "davidmunro@9oo91e.qjz9zk", "hollingum@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -697,17 +697,17 @@
-   },
-   {
-     "name": "crostini-use-buster-image",
--    "owners": [ "davidmunro@google.com", "benwells" ],
-+    "owners": [ "davidmunro@9oo91e.qjz9zk", "benwells" ],
-     "expiry_milestone": 82
-   },
-   {
-     "name": "crostini-username",
--    "owners": [ "davidmunro@google.com", "lxj" ],
-+    "owners": [ "davidmunro@9oo91e.qjz9zk", "lxj" ],
-     "expiry_milestone": 83
-   },
-   {
-     "name": "crostini-webui-upgrader",
--    "owners": [ "nverne", "davidmunro@google.com", "benwells" ],
-+    "owners": [ "nverne", "davidmunro@9oo91e.qjz9zk", "benwells" ],
-     "expiry_milestone": 84
-   },
-   {
-@@ -737,7 +737,7 @@
-   },
-   {
-     "name": "darken-websites-checkbox-in-themes-setting",
--    "owners": [ "lazzzis@google.com", "twellington" ],
-+    "owners": [ "lazzzis@9oo91e.qjz9zk", "twellington" ],
-     "expiry_milestone": 83
-   },
-   {
-@@ -760,17 +760,17 @@
-   },
-   {
-     "name": "decode-jpeg-images-to-yuv",
--    "owners": [ "sashamcintosh", "chromeos-gfx@google.com" ],
-+    "owners": [ "sashamcintosh", "chromeos-gfx@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "decode-webp-images-to-yuv",
--    "owners": [ "andrescj", "chromeos-gfx@google.com" ],
-+    "owners": [ "andrescj", "chromeos-gfx@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "delegate-overscroll-swipes",
--    "owners": [ "chrome-android-app@chromium.org" ],
-+    "owners": [ "chrome-android-app@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-@@ -800,7 +800,7 @@
-   },
-   {
-     "name": "dice-web-signin-interception",
--    "owners": [ "droger", "my-chrome-everywhere@google.com" ],
-+    "owners": [ "droger", "my-chrome-everywhere@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -825,21 +825,21 @@
-   },
-   {
-     "name": "disable-accelerated-mjpeg-decode",
--    "owners": [ "chromeos-camera-eng@google.com" ],
-+    "owners": [ "chromeos-camera-eng@9oo91e.qjz9zk" ],
-     // This flag does not expire because it allows users to disable HW mjpeg
-     // decoding for debugging purpose and temporary workaround for some issues.
-     "expiry_milestone": -1
-   },
-   {
-     "name": "disable-accelerated-video-decode",
--    "owners": [ "chromeos-video-eng@google.com" ],
-+    "owners": [ "chromeos-video-eng@9oo91e.qjz9zk" ],
-     // This flag does not expire because it allows users to disable HW video
-     // decoding for debugging purpose and temporary workaround for some issues.
-     "expiry_milestone": -1
-   },
-   {
-     "name": "disable-accelerated-video-encode",
--    "owners": [ "chromeos-video-eng@google.com" ],
-+    "owners": [ "chromeos-video-eng@9oo91e.qjz9zk" ],
-     // This flag does not expire because it allows users to disable HW video
-     // encoding for debugging purpose and temporary workaround for some issues.
-     "expiry_milestone": -1
-@@ -851,11 +851,11 @@
-   },
-   {
-     "name": "disable-best-effort-tasks",
--    "owners": [ "catan-team@chromium.org" ],
-+    "owners": [ "catan-team@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 75
-   },
-   { "name": "disable-cancel-all-touches",
--    "owners": [ "chrome-knowledge-eng@google.com" ],
-+    "owners": [ "chrome-knowledge-eng@9oo91e.qjz9zk" ],
-     // This flag is use to disable CancelAllTouches() function, which enable the
-     // testing for implementation of canceling single touches.
-     "expiry_milestone": 86
-@@ -877,7 +877,7 @@
-   },
-   {
-     "name": "disable-explicit-dma-fences",
--    "owners": [ "chromeos-gfx@google.com" ],
-+    "owners": [ "chromeos-gfx@9oo91e.qjz9zk" ],
-     // This flag is used for QA & debugging on ChromeOS, which has no way to
-     // customize switches.
-     "expiry_milestone": -1
-@@ -907,8 +907,8 @@
-   {
-     "name": "disable-office-editing-component-app",
-     "owners": [
--      "chrome-apps-platform-rationalization@google.com",
--      "quickoffice-chrome-eng@google.com" ],
-+      "chrome-apps-platform-rationalization@9oo91e.qjz9zk",
-+      "quickoffice-chrome-eng@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-@@ -925,7 +925,7 @@
-   },
-   {
-     "name": "disable-webrtc-hw-decoding",
--    "owners": [ "hiroh", "chromeos-video-eng@google.com" ],
-+    "owners": [ "hiroh", "chromeos-video-eng@9oo91e.qjz9zk" ],
-     // This flag does not expire because it allows users to disable HW video
-     // decoding only in webrtc usecase for debugging purpose and temporary
-     // workaround for some issues.
-@@ -933,7 +933,7 @@
-   },
-   {
-     "name": "disable-webrtc-hw-encoding",
--    "owners": [ "hiroh", "chromeos-video-eng@google.com" ],
-+    "owners": [ "hiroh", "chromeos-video-eng@9oo91e.qjz9zk" ],
-     // This flag does not expire because it allows users to disable HW video
-     // encoding only in webrtc usecase for debugging purpose and temporary
-     // workaround for some issues.
-@@ -962,12 +962,12 @@
-   },
-   {
-     "name": "display-identification",
--    "owners": [ "baileyberro", "cros-peripherals@google.com" ],
-+    "owners": [ "baileyberro", "cros-peripherals@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "dlc-settings-ui",
--    "owners": [ "cros-customization@google.com", "hsuregan" ],
-+    "owners": [ "cros-customization@9oo91e.qjz9zk", "hsuregan" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -977,12 +977,12 @@
-   },
-   {
-     "name": "dns-over-https",
--    "owners": [ "ericorth", "doh-core@google.com" ],
-+    "owners": [ "ericorth", "doh-core@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "double-buffer-compositing",
--    "owners": [ "chromeos-gfx@google.com" ],
-+    "owners": [ "chromeos-gfx@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -1007,12 +1007,12 @@
-   },
-   {
-     "name": "drag-to-snap-in-clamshell-mode",
--    "owners": [ "amusbach@chromium.org", "xdai@chromium.org" ],
-+    "owners": [ "amusbach@ch40m1um.qjz9zk", "xdai@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "draw-vertically-edge-to-edge",
--    "owners": [ "chrome-android-app@chromium.org" ],
-+    "owners": [ "chrome-android-app@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-@@ -1033,7 +1033,7 @@
-   },
-   {
-     "name": "elastic-overscroll-win",
--    "owners": [ "arakeri@microsoft.com" ],
-+    "owners": [ "arakeri@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -1044,12 +1044,12 @@
-   },
-   {
-     "name": "enable-accessibility-expose-aria-annotations",
--    "owners": [ "aleventhal@chromium.org", "//third_party/blink/renderer/modules/accessibility/OWNERS", "//ui/accessibility/OWNERS" ],
-+    "owners": [ "aleventhal@ch40m1um.qjz9zk", "//third_party/blink/renderer/modules/accessibility/OWNERS", "//ui/accessibility/OWNERS" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-accessibility-expose-display-none",
--    "owners": [ "adettenb@microsoft.com", "//third_party/blink/renderer/modules/accessibility/OWNERS", "//ui/accessibility/OWNERS" ],
-+    "owners": [ "adettenb@m1cr050ft.qjz9zk", "//third_party/blink/renderer/modules/accessibility/OWNERS", "//ui/accessibility/OWNERS" ],
-     "expiry_milestone": 82
-   },
-   {
-@@ -1074,12 +1074,12 @@
-   },
-   {
-     "name": "enable-ambient-authentication-in-guest-session",
--    "owners": ["rhalavati", "chrome-privacy-core@google.com"],
-+    "owners": ["rhalavati", "chrome-privacy-core@9oo91e.qjz9zk"],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "enable-ambient-authentication-in-incognito",
--    "owners": ["rhalavati", "chrome-privacy-core@google.com"],
-+    "owners": ["rhalavati", "chrome-privacy-core@9oo91e.qjz9zk"],
-     "expiry_milestone": 87
-   },
-   {
-@@ -1189,27 +1189,27 @@
-   },
-   {
-     "name": "enable-autofill-account-wallet-storage",
--    "owners": [ "treib", "jsaul@google.com", "butter-team@google.com" ],
-+    "owners": [ "treib", "jsaul@9oo91e.qjz9zk", "butter-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-autofill-cache-server-card-info",
--    "owners": [ "annelim@google.com", "jsaul@google.com" ],
-+    "owners": [ "annelim@9oo91e.qjz9zk", "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-autofill-credit-card-ablation-experiment",
--    "owners": [ "jsaul@google.com" ],
-+    "owners": [ "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-autofill-credit-card-authentication",
--    "owners": [ "jsaul@google.com", "manasverma@google.com" ],
-+    "owners": [ "jsaul@9oo91e.qjz9zk", "manasverma@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "enable-autofill-credit-card-upload",
--    "owners": [ "jsaul@google.com" ],
-+    "owners": [ "jsaul@9oo91e.qjz9zk" ],
-     // This flag is heavily used by the testing team that can't easily use the
-     // commandline, and can't be enabled by default.
-     // http://g/chrome-flags/s2RTQCvcRRs
-@@ -1217,27 +1217,27 @@
-   },
-   {
-     "name": "enable-autofill-credit-card-upload-editable-cardholder-name",
--    "owners": [ "jsaul@google.com" ],
-+    "owners": [ "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 83
-   },
-   {
-     "name": "enable-autofill-credit-card-upload-editable-expiration-date",
--    "owners": [ "jsaul@google.com" ],
-+    "owners": [ "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 83
-   },
-   {
-     "name": "enable-autofill-credit-card-upload-feedback",
--    "owners": [ "siyua@chromium.org, payments-autofill-team@google.com" ],
-+    "owners": [ "siyua@ch40m1um.qjz9zk, payments-autofill-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-autofill-manual-fallback",
--    "owners": [ "fhorschig@chromium.org" ],
-+    "owners": [ "fhorschig@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "enable-autofill-refresh-style",
--    "owners": [ "tmartino@chromium.org" ],
-+    "owners": [ "tmartino@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 78
-   },
-   {
-@@ -1282,12 +1282,12 @@
-   },
-   {
-     "name": "enable-chromeos-account-manager",
--    "owners": [ "sinhak@chromium.org" ],
-+    "owners": [ "sinhak@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 79
-   },
-   {
-     "name": "enable-clipboard-provider-image-suggestions",
--    "owners": [ "rkgibson", "gangwu", "chrome-omnibox-team@google.com"],
-+    "owners": [ "rkgibson", "gangwu", "chrome-omnibox-team@9oo91e.qjz9zk"],
-     "expiry_milestone": 90
-   },
-   {
-@@ -1297,7 +1297,7 @@
-   },
-   {
-     "name": "enable-close-tab-suggestions",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -1314,7 +1314,7 @@
-   },
-   {
-     "name": "enable-conditional-tabstrip",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -1324,7 +1324,7 @@
-   },
-   {
-     "name": "enable-core-location-implementation",
--    "owners": [ "jameshollyer@google.com" ],
-+    "owners": [ "jameshollyer@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -1339,52 +1339,52 @@
-   },
-   {
-     "name": "enable-cros-ime-assist-autocorrect",
--    "owners": [ "jopalmer", "essential-inputs-team@google.com" ],
-+    "owners": [ "jopalmer", "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "enable-cros-ime-assist-personal-info",
--    "owners": [ "jiwan", "essential-inputs-team@google.com" ],
-+    "owners": [ "jiwan", "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "enable-cros-ime-emoji-suggest-addition",
--    "owners": [ "myy", "essential-inputs-team@google.com" ],
-+    "owners": [ "myy", "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "enable-cros-ime-input-logic-fst",
--    "owners": [ "essential-inputs-team@google.com" ],
-+    "owners": [ "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-cros-ime-input-logic-hmm",
--    "owners": [ "essential-inputs-team@google.com" ],
-+    "owners": [ "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-cros-ime-input-logic-mozc",
--    "owners": [ "essential-inputs-team@google.com" ],
-+    "owners": [ "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "enable-cros-ime-mozc-proto",
--    "owners": [ "essential-inputs-team@google.com" ],
-+    "owners": [ "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-cros-ime-native-decoder",
--    "owners": [ "essential-inputs-team@google.com" ],
-+    "owners": [ "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-cros-virtual-keyboard-bordered-key",
--    "owners": [ "essential-inputs-team@google.com" ],
-+    "owners": [ "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "enable-cros-virtual-keyboard-floating-resizable",
--    "owners": [ "essential-inputs-team@google.com" ],
-+    "owners": [ "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -1430,42 +1430,42 @@
-   },
-   {
-     "name": "enable-desktop-pwas-app-icon-shortcuts-menu",
--    "owners": [ "rahsin@microsoft.com", "cmumford@google.com" ],
-+    "owners": [ "rahsin@m1cr050ft.qjz9zk", "cmumford@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-desktop-pwas-local-updating",
--    "owners": [ "desktop-pwas-team@google.com" ],
-+    "owners": [ "desktop-pwas-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-desktop-pwas-tab-strip",
--    "owners": [ "desktop-pwas-team@google.com" ],
-+    "owners": [ "desktop-pwas-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-desktop-pwas-tab-strip-link-capturing",
--    "owners": [ "desktop-pwas-team@google.com" ],
-+    "owners": [ "desktop-pwas-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-desktop-pwas-without-extensions",
--    "owners": [ "desktop-pwas-team@google.com" ],
-+    "owners": [ "desktop-pwas-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-duet-tabstrip-integration",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 84
-   },
-   {
-     "name": "enable-edu-coexistence",
--    "owners": [ "anastasiian@chromium.org", "sinhak@chromium.org" ],
-+    "owners": [ "anastasiian@ch40m1um.qjz9zk", "sinhak@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-edu-coexistence-consent-log",
--    "owners": [ "anastasiian@chromium.org", "sinhak@chromium.org" ],
-+    "owners": [ "anastasiian@ch40m1um.qjz9zk", "sinhak@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -1510,12 +1510,12 @@
-   },
-   {
-     "name": "enable-experimental-accessibility-switch-access",
--    "owners": [ "anastasi@google.com", "//ui/accessibility/OWNERS" ],
-+    "owners": [ "anastasi@9oo91e.qjz9zk", "//ui/accessibility/OWNERS" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-experimental-accessibility-switch-access-text",
--    "owners": [ "anastasi@google.com", "//ui/accessibility/OWNERS" ],
-+    "owners": [ "anastasi@9oo91e.qjz9zk", "//ui/accessibility/OWNERS" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -1528,7 +1528,7 @@
-   },
-   {
-     "name": "enable-experimental-fling-animation",
--    "owners": [ "sarsha@microsoft.com" ],
-+    "owners": [ "sarsha@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 89
-   },
-   {
-@@ -1538,7 +1538,7 @@
-   },
-   {
-     "name": "enable-experimental-productivity-features",
--    "owners": [ "feature-control@chromium.org" ],
-+    "owners": [ "feature-control@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -1567,12 +1567,12 @@
-   },
-   {
-     "name": "enable-force-dark",
--    "owners": [ "gilmanmh@google.com" ],
-+    "owners": [ "gilmanmh@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-fs-nosymfollow",
--    "owners": [ "mortonm@chromium.org" ],
-+    "owners": [ "mortonm@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-@@ -1594,7 +1594,7 @@
-   },
-   {
-     "name": "enable-generic-sensor-extra-classes",
--    "owners": [ "reillyg@chromium.org", "raphael.kubo.da.costa@intel.com" ],
-+    "owners": [ "reillyg@ch40m1um.qjz9zk", "raphael.kubo.da.costa@intel.com" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -1640,7 +1640,7 @@
-   },
-   {
-     "name": "enable-high-resolution-mouse-scrolling",
--    "owners": [ "hcutts", "chromeos-tango@google.com" ],
-+    "owners": [ "hcutts", "chromeos-tango@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -1655,12 +1655,12 @@
-   },
-   {
-     "name": "enable-home-page-location-policy",
--    "owners": [ "wenyufu", "chrome-android-app@chromium.org" ],
-+    "owners": [ "wenyufu", "chrome-android-app@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 83
-   },
-   {
-     "name": "enable-horizontal-tab-switcher",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": -1
-   },
-   {
-@@ -1701,7 +1701,7 @@
-   },
-   {
-     "name": "enable-layout-ng",
--    "owners": [ "layout-dev@chromium.org" ],
-+    "owners": [ "layout-dev@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 80
-   },
-   {
-@@ -1775,17 +1775,17 @@
-   },
-   {
-     "name": "enable-mygoogle",
--    "owners": [ "fernandex", "chrome-ios-signin@google.com" ],
-+    "owners": [ "fernandex", "chrome-ios-signin@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "enable-nacl",
--    "owners": [ "dschuff", "native-client-dev@googlegroups.com" ],
-+    "owners": [ "dschuff", "native-client-dev@9oo91egroups.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "enable-native-controls",
--    "owners": [ "chrome-media-ux@google.com" ],
-+    "owners": [ "chrome-media-ux@9oo91e.qjz9zk" ],
-     "expiry_milestone": 75
-   },
-   {
-@@ -1835,7 +1835,7 @@
-   },
-   {
-     "name": "enable-offer-store-unmasked-wallet-cards",
--    "owners": [ "jsaul@google.com" ],
-+    "owners": [ "jsaul@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -1863,7 +1863,7 @@
-   },
-   {
-     "name": "enable-palm-suppression",
--    "owners": ["robsc", "napper", "hcutts", "chromeos-tango@google.com"],
-+    "owners": ["robsc", "napper", "hcutts", "chromeos-tango@9oo91e.qjz9zk"],
-     // Added feature, for testing. expiry deep in future.
-     "expiry_milestone": 95
-   },
-@@ -1950,7 +1950,7 @@
-   },
-   {
-     "name": "enable-query-in-omnibox",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -1975,7 +1975,7 @@
-   },
-   {
-     "name": "enable-reader-mode",
--    "owners": [ "gilmanmh@google.com" ],
-+    "owners": [ "gilmanmh@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -2044,7 +2044,7 @@
-   },
-   {
-     "name": "enable-service-worker-imported-script-update-check",
--    "owners": [ "worker-dev@chromium.org" ],
-+    "owners": [ "worker-dev@ch40m1um.qjz9zk" ],
-     // It's still in development. Tentatively set to M76 as the expiry_milestone.
-     "expiry_milestone": 76
-   },
-@@ -2152,12 +2152,12 @@
-   },
-   {
-     "name": "enable-sync-trusted-vault",
--    "owners": [ "mastiz@chromium.org", "//components/sync/OWNERS" ],
-+    "owners": [ "mastiz@ch40m1um.qjz9zk", "//components/sync/OWNERS" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "enable-sync-uss-nigori",
--    "owners": [ "mmoskvitin@google.com", "//components/sync/OWNERS" ],
-+    "owners": [ "mmoskvitin@9oo91e.qjz9zk", "//components/sync/OWNERS" ],
-     "expiry_milestone": 83
-   },
-   {
-@@ -2167,37 +2167,37 @@
-   },
-   {
-     "name": "enable-tab-engagement-reporting",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "enable-tab-grid-layout",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "enable-tab-groups",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "enable-tab-groups-continuation",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "enable-tab-groups-ui-improvements",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "enable-tab-switcher-on-return",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "enable-tab-to-gts-animation",
--    "owners": [ "memex-team@google.com" ],
-+    "owners": [ "memex-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -2224,7 +2224,7 @@
-   },
-   {
-     "name": "enable-translate-sub-frames",
--    "owners": [ "dougarnett", "chrome-language@google.com" ],
-+    "owners": [ "dougarnett", "chrome-language@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -2261,12 +2261,12 @@
-   },
-   {
-     "name": "enable-vaapi-jpeg-image-decode-acceleration",
--    "owners": [ "chromeos-gfx@google.com" ],
-+    "owners": [ "chromeos-gfx@9oo91e.qjz9zk" ],
-     "expiry_milestone": 83
-   },
-   {
-     "name": "enable-vaapi-webp-image-decode-acceleration",
--    "owners": [ "chromeos-gfx@google.com" ],
-+    "owners": [ "chromeos-gfx@9oo91e.qjz9zk" ],
-     "expiry_milestone": 83
-   },
-   {
-@@ -2282,66 +2282,66 @@
-   },
-   {
-     "name": "enable-web-authentication-cable-v2-support",
--    "owners": [ "webauthn-team@google.com" ],
-+    "owners": [ "webauthn-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "enable-web-bluetooth-new-permissions-backend",
--    "owners": [ "web-bluetooth@google.com" ],
-+    "owners": [ "web-bluetooth@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "enable-web-payments-experimental-features",
--    "owners": [ "danyao", "rouslan", "paymentrequest@google.com" ],
-+    "owners": [ "danyao", "rouslan", "paymentrequest@9oo91e.qjz9zk" ],
-     // This flag is used by early adoption partners to test new Web Payments
-     // features in each release.
-     "expiry_milestone": -1
-   },
-   {
-     "name": "enable-web-payments-minimal-ui",
--    "owners": [ "rouslan", "web-payments-team@google.com" ],
-+    "owners": [ "rouslan", "web-payments-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "enable-webassembly-baseline",
--    "owners": [ "clemensb", "wasm-team@google.com" ],
-+    "owners": [ "clemensb", "wasm-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "enable-webassembly-code-cache",
--    "owners": [ "bbudge", "hablich", "wasm-team@google.com" ],
-+    "owners": [ "bbudge", "hablich", "wasm-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 83
-   },
-   {
-     "name": "enable-webassembly-lazy-compilation",
--    "owners": [ "clemensb", "wasm-team@google.com" ],
-+    "owners": [ "clemensb", "wasm-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "enable-webassembly-simd",
--    "owners": [ "gdeepti", "wasm-team@google.com" ],
-+    "owners": [ "gdeepti", "wasm-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "enable-webassembly-threads",
--    "owners": [ "binji", "hablich", "wasm-team@google.com" ],
-+    "owners": [ "binji", "hablich", "wasm-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "enable-webassembly-tiering",
--    "owners": [ "clemensb", "wasm-team@google.com" ],
-+    "owners": [ "clemensb", "wasm-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "enable-webgl-draft-extensions",
--    "owners": [ "webgl-team@google.com" ],
-+    "owners": [ "webgl-team@9oo91e.qjz9zk" ],
-     // This flag is the only way for end users to test upcoming WebGL
-     // extensions on Android. It must not be removed.
-     "expiry_milestone": -1
-   },
-   {
-     "name": "enable-webgl2-compute-context",
--    "owners": [ "webgl-team@google.com" ],
-+    "owners": [ "webgl-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -2366,7 +2366,7 @@
-   },
-   {
-     "name": "enable-webrtc-pipewire-capturer",
--    "owners": [ "tomas.popela@gmail.com" ],
-+    "owners": [ "tomas.popela@9ma1l.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -2386,22 +2386,22 @@
-   },
-   {
-     "name": "enable-webrtc-use-min-max-vea-dimensions",
--    "owners": [ "mcasas", "chromeos-gfx-video@google.com" ],
-+    "owners": [ "mcasas", "chromeos-gfx-video@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "enable-winrt-geolocation-implementation",
--    "owners": [ "pelavall@microsoft.com" ],
-+    "owners": [ "pelavall@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "enable-winrt-sensor-implementation",
--    "owners": [ "wensh@microsoft.com" ],
-+    "owners": [ "wensh@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 84
-   },
-  {
-     "name": "enable-zero-copy",
--    "owners": [ "ccameron", "chrome-gpu@google.com" ],
-+    "owners": [ "ccameron", "chrome-gpu@9oo91e.qjz9zk" ],
-     // This flag is commonly used when asking users to help gather debug info.
-     "expiry_milestone": -1
-   },
-@@ -2432,7 +2432,7 @@
-   },
-   {
-     "name": "exo-pointer-lock",
--    "owners": [ "hollingum@google.com" ],
-+    "owners": [ "hollingum@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-@@ -2479,7 +2479,7 @@
-   },
-   {
-     "name": "file-handling-api",
--    "owners": ["mgiuca@chromium.org", "oyiptong@chromium.org"],
-+    "owners": ["mgiuca@ch40m1um.qjz9zk", "oyiptong@ch40m1um.qjz9zk"],
-     "expiry_milestone": 82
-   },
-   {
-@@ -2509,7 +2509,7 @@
-   },
-   {
-     "name": "focus-mode",
--    "owners": [ "dfried", "pbos", "yiningwang@google.com" ],
-+    "owners": [ "dfried", "pbos", "yiningwang@9oo91e.qjz9zk" ],
-     "expiry_milestone": 82
-   },
-   {
-@@ -2575,12 +2575,12 @@
-   },
-   {
-     "name": "forced-colors",
--    "owners": [ "weblayout@microsoft.com" ],
-+    "owners": [ "weblayout@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "form-controls-refresh",
--    "owners": [ "iopopesc@microsoft.com", "//third_party/blink/renderer/core/OWNERS" ],
-+    "owners": [ "iopopesc@m1cr050ft.qjz9zk", "//third_party/blink/renderer/core/OWNERS" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -2611,7 +2611,7 @@
-   },
-   {
-     "name": "gaia-action-buttons",
--    "owners": [ "jeroendh@google.com", "rsorokin" ],
-+    "owners": [ "jeroendh@9oo91e.qjz9zk", "rsorokin" ],
-     "expiry_milestone": 79
-   },
-   {
-@@ -2621,7 +2621,7 @@
-   },
-   {
-     "name": "gesture-properties-dbus-service",
--    "owners": [ "hcutts", "chromeos-tango@google.com" ],
-+    "owners": [ "hcutts", "chromeos-tango@9oo91e.qjz9zk" ],
-     // Used by developers for debugging and input device tuning.
-     "expiry_milestone": -1
-   },
-@@ -2632,7 +2632,7 @@
-   },
-   {
-     "name": "global-media-controls-for-cast",
--    "owners": [ "takumif", "openscreen-eng@google.com" ],
-+    "owners": [ "takumif", "openscreen-eng@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -2647,7 +2647,7 @@
-   },
-   {
-     "name": "handwriting-gesture",
--    "owners": [ "essential-inputs-team@google.com" ],
-+    "owners": [ "essential-inputs-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -2665,17 +2665,17 @@
-   },
-   {
-     "name": "happiness-tracking-surveys-for-desktop-migration",
--    "owners": [ "msramek", "chrome-friendly-settings@google.com" ],
-+    "owners": [ "msramek", "chrome-friendly-settings@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "happiness-tracking-surveys-for-desktop-settings",
--    "owners": [ "msramek", "chrome-friendly-settings@google.com" ],
-+    "owners": [ "msramek", "chrome-friendly-settings@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "happiness-tracking-surveys-for-desktop-settings-privacy",
--    "owners": [ "msramek", "chrome-friendly-settings@google.com" ],
-+    "owners": [ "msramek", "chrome-friendly-settings@9oo91e.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -2695,12 +2695,12 @@
-   },
-   {
-     "name": "homepage-promo-card",
--    "owners": [ "wenyufu", "chrome-android-app@chromium.org" ],
-+    "owners": [ "wenyufu", "chrome-android-app@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "homepage-settings-ui-conversion",
--    "owners": [ "wenyufu", "chrome-android-app@chromium.org" ],
-+    "owners": [ "wenyufu", "chrome-android-app@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -2739,7 +2739,7 @@
-   },
-   {
-     "name": "impulse-scroll-animations",
--    "owners": [ "dlibby@microsoft.com", "sarsha@microsoft.com" ],
-+    "owners": [ "dlibby@m1cr050ft.qjz9zk", "sarsha@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 89
-   },
-   {
-@@ -2776,7 +2776,7 @@
-   },
-   {
-     "name": "instant-tethering",
--    "owners": [ "hansberry", "khorimoto", "vecore", "cros-system-services@google.com" ],
-+    "owners": [ "hansberry", "khorimoto", "vecore", "cros-system-services@9oo91e.qjz9zk" ],
-     // Though Instant Tethering is now a launched feature, it is only marked enabled on select,
-     // approved boards which have passed hardware verification and received server config seeds
-     // marking it as enabled. This means it is actually disabled-by-default, and since test machines
-@@ -2786,12 +2786,12 @@
-   },
-   {
-     "name": "intent-picker-pwa-persistence",
--    "owners": [ "chromeos-apps-foundation-team@google.com" ],
-+    "owners": [ "chromeos-apps-foundation-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "interest-feed-content-suggestions",
--    "owners": [ "//chrome/android/feed/OWNERS", "feed@chromium.org" ],
-+    "owners": [ "//chrome/android/feed/OWNERS", "feed@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -2806,7 +2806,7 @@
-   },
-   {
-     "name": "interest-feed-v2",
--    "owners": [ "//chrome/android/feed/OWNERS", "feed@chromium.org" ],
-+    "owners": [ "//chrome/android/feed/OWNERS", "feed@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 95
-   },
-   {
-@@ -2831,7 +2831,7 @@
-   },
-   {
-     "name" : "lacros-support",
--    "owners": [ "jamescook", "erikchen", "lacros-team@google.com" ],
-+    "owners": [ "jamescook", "erikchen", "lacros-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-@@ -2867,7 +2867,7 @@
-   },
-   {
-     "name": "mac-syscall-sandbox",
--    "owners": [ "kerrnel@google.com" ],
-+    "owners": [ "kerrnel@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-@@ -2877,7 +2877,7 @@
-   },
-   {
-     "name": "mac-v2-gpu-sandbox",
--    "owners": [ "kerrnel@google.com" ],
-+    "owners": [ "kerrnel@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-@@ -2998,7 +2998,7 @@
-   },
-   {
-     "name": "multi-display-overview-and-split-view",
--    "owners": [ "amusbach@chromium.org", "xdai@chromium.org" ],
-+    "owners": [ "amusbach@ch40m1um.qjz9zk", "xdai@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -3008,7 +3008,7 @@
-   },
-   {
-     "name": "nearby-sharing",
--    "owners": [ "vecore@google.com", "cros-system-services@google.com", "cross-device-team@google.com"],
-+    "owners": [ "vecore@9oo91e.qjz9zk", "cros-system-services@9oo91e.qjz9zk", "cross-device-team@9oo91e.qjz9zk"],
-     "expiry_milestone":  90
-   },
-   {
-@@ -3028,7 +3028,7 @@
-   },
-   {
-     "name": "new-os-settings-search",
--    "owners": ["cros-customization@google.com", "hsuregan", "khorimoto" ],
-+    "owners": ["cros-customization@9oo91e.qjz9zk", "hsuregan", "khorimoto" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -3038,7 +3038,7 @@
-   },
-   {
-     "name": "new-signin-architecture",
--    "owners": ["chrome-ios-signin@google.com", "fernandex"],
-+    "owners": ["chrome-ios-signin@9oo91e.qjz9zk", "fernandex"],
-     "expiry_milestone": 86
-   },
-   {
-@@ -3048,7 +3048,7 @@
-   },
-   {
-     "name": "new-usb-backend",
--    "owners": [ "reillyg@chromium.org" ],
-+    "owners": [ "reillyg@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -3113,7 +3113,7 @@
-   },
-   {
-     "name": "offline-indicator-v2",
--    "owners": [ "sinansahin@google.com", "twellington", "offline-dev" ],
-+    "owners": [ "sinansahin@9oo91e.qjz9zk", "twellington", "offline-dev" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -3183,197 +3183,197 @@
-   },
-   {
-     "name": "omnibox-adaptive-suggestions-count",
--    "owners": [ "ender", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "ender", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "omnibox-assistant-voice-search",
--    "owners": [ "wylieb", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "wylieb", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-autocomplete-titles",
--    "owners": [ "manukh", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "manukh", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-compact-suggestions",
--    "owners": [ "ender", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "ender", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "omnibox-context-menu-show-full-urls",
--    "owners": [ "livvielin", "chrome-security-enamel@google.com" ],
-+    "owners": [ "livvielin", "chrome-security-enamel@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-deferred-keyboard-popup",
--    "owners": [ "ender", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "ender", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-     "name": "omnibox-disable-instant-extended-limit",
--    "owners": [ "pnoland", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "pnoland", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-display-title-for-current-url",
--    "owners": [ "chrome-omnibox-team@google.com" ],
-+    "owners": [ "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-     "name": "omnibox-drive-suggestions",
--    "owners": [ "manukh", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "manukh", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-experimental-keyword-mode",
--    "owners": [ "orinj", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "orinj", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "omnibox-experimental-suggest-scoring",
--    "owners": [ "jdonnelly", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "jdonnelly", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-history-quick-provider-allow-but-do-not-score-midword-terms",
--    "owners": [ "manukh", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "manukh", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "omnibox-history-quick-provider-allow-midword-continuations",
--    "owners": [ "manukh", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "manukh", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "omnibox-local-entity-suggestions",
--    "owners": [ "manukh", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "manukh", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-loose-max-limit-on-dedicated-rows",
--    "owners": [ "orinj", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "orinj", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 93
-   },
-   {
-     "name": "omnibox-max-url-matches",
--    "owners": [ "orinj", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "orinj", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "omnibox-on-device-head-suggestions-incognito",
--    "owners": [ "cechen", "suggest-2g@google.com" ],
-+    "owners": [ "cechen", "suggest-2g@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-on-device-head-suggestions-non-incognito",
--    "owners": [ "cechen", "suggest-2g@google.com" ],
-+    "owners": [ "cechen", "suggest-2g@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-on-focus-suggestions",
--    "owners": [ "chrome-omnibox-team@google.com" ],
-+    "owners": [ "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-on-focus-suggestions-contextual-web",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "omnibox-pedal-suggestions",
--    "owners": [ "orinj", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "orinj", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-preserve-default-match-against-async-update",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-reverse-answers",
--    "owners": [ "jdonnelly", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "jdonnelly", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-     "name": "omnibox-rich-autocompletion",
--    "owners": [ "manukh", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "manukh", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 95
-   },
-   {
-     "name": "omnibox-search-engine-logo",
--    "owners": [ "wylieb", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "wylieb", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "omnibox-short-bookmark-suggestions",
--    "owners": [ "orinj", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "orinj", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "omnibox-spare-renderer",
--    "owners": [ "chrome-omnibox-team@google.com" ],
-+    "owners": [ "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-     "name": "omnibox-suggestion-button-row",
--    "owners": [ "orinj", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "orinj", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 89
-   },
-   {
-     "name": "omnibox-suggestion-transparency-options",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-suggestions-recycler-view",
--    "owners": [ "fgorski", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "fgorski", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 89
-   },
-   {
-     "name": "omnibox-tab-switch-suggestions",
--    "owners": [ "orinj", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "orinj", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "omnibox-tab-switch-suggestions-dedicated-row",
--    "owners": [ "orinj", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "orinj", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 92
-   },
-   {
-     "name": "omnibox-ui-cues-for-search-history-matches",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 78
-   },
-   {
-     "name": "omnibox-ui-hide-steady-state-url-path-query-and-ref",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-     "name": "omnibox-ui-hide-steady-state-url-scheme",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-     "name": "omnibox-ui-hide-steady-state-url-trivial-subdomains",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-     "name": "omnibox-ui-max-autocomplete-matches",
--    "owners": [ "jdonnelly", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "jdonnelly", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "omnibox-ui-swap-title-and-url",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-     "name": "omnibox-zero-suggestions-on-ntp",
--    "owners": [ "tommycli", "chrome-omnibox-team@google.com" ],
-+    "owners": [ "tommycli", "chrome-omnibox-team@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -3418,7 +3418,7 @@
-   },
-   {
-     "name": "overlay-strategies",
--    "owners": [ "chromeos-gfx@google.com" ],
-+    "owners": [ "chromeos-gfx@9oo91e.qjz9zk" ],
-     // This flag is used for QA & debugging on ChromeOS, which has no way to
-     // customize switches.
-     "expiry_milestone": -1
-@@ -3500,7 +3500,7 @@
-   },
-   {
-     "name": "pdf-annotations",
--    "owners": [ "dstockwell@google.com" ],
-+    "owners": [ "dstockwell@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-@@ -3520,7 +3520,7 @@
-   },
-   {
-     "name": "percent-based-scrolling",
--    "owners": [ "dlibby@microsoft.com", "sarsha@microsoft.com" ],
-+    "owners": [ "dlibby@m1cr050ft.qjz9zk", "sarsha@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 89
-   },
-   {
-@@ -3560,7 +3560,7 @@
-   },
-   {
-     "name": "print-job-management-app",
--    "owners": [ "jimmyxgong", "cros-peripherals@google.com"],
-+    "owners": [ "jimmyxgong", "cros-peripherals@9oo91e.qjz9zk"],
-     "expiry_milestone": 85
-   },
-   {
-@@ -3570,13 +3570,13 @@
-   },
-   {
-     "name": "printer-status",
--    "owners": [ "gavinwill", "cros-peripherals@google.com" ],
-+    "owners": [ "gavinwill", "cros-peripherals@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "privacy-settings-redesign",
-     "owners": ["harrisonsean", "msramek",
--      "chrome-friendly-settings@google.com"],
-+      "chrome-friendly-settings@9oo91e.qjz9zk"],
-     "expiry_milestone": 86
-   },
-   {
-@@ -3712,7 +3712,7 @@
-   },
-   {
-     "name": "report-feed-user-actions",
--    "owners": [ "//chrome/android/feed/OWNERS", "feed@chromium.org" ],
-+    "owners": [ "//chrome/android/feed/OWNERS", "feed@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -3738,7 +3738,7 @@
-   {
-     "name": "safety-check-android",
-     "owners": [ "andzaytsev", "harrisonsean", "msramek",
--      "chrome-friendly-settings@google.com"],
-+      "chrome-friendly-settings@9oo91e.qjz9zk"],
-     "expiry_milestone": 88
-   },
-   {
-@@ -3763,12 +3763,12 @@
-   },
-   {
-     "name": "scroll-unification",
--    "owners": ["bokan@chromium.org", "input-dev@chromium.org"],
-+    "owners": ["bokan@ch40m1um.qjz9zk", "input-dev@ch40m1um.qjz9zk"],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "scrollable-tabstrip",
--    "owners": ["chrome-desktop-ui-seattle@google.com", "tbergquist"],
-+    "owners": ["chrome-desktop-ui-seattle@9oo91e.qjz9zk", "tbergquist"],
-     "expiry_milestone": 82
-   },
-   {
-@@ -3889,7 +3889,7 @@
-   },
-   {
-     "name": "show-bluetooth-device-battery",
--    "owners": [ "hansberry", "cros-system-services@google.com" ],
-+    "owners": [ "hansberry", "cros-system-services@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -3899,7 +3899,7 @@
-   },
-   {
-     "name": "show-overdraw-feedback",
--    "owners": [ "andrescj", "chromeos-gfx@google.com" ],
-+    "owners": [ "andrescj", "chromeos-gfx@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -3985,7 +3985,7 @@
-   },
-   {
-     "name": "split-settings-sync",
--    "owners": [ "jamescook", "cros-system-services@google.com" ],
-+    "owners": [ "jamescook", "cros-system-services@9oo91e.qjz9zk" ],
-     "expiry_milestone": 87
-   },
-   {
-@@ -3995,7 +3995,7 @@
-   },
-   {
-     "name": "stop-in-background",
--    "owners": [ "chrome-catan@google.com" ],
-+    "owners": [ "chrome-catan@9oo91e.qjz9zk" ],
-     "expiry_milestone": 76
-   },
-   {
-@@ -4005,7 +4005,7 @@
-   },
-   {
-     "name": "storage-access-api",
--    "owners": [ "brandm@microsoft.com" ],
-+    "owners": [ "brandm@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -4035,7 +4035,7 @@
-   },
-   {
-     "name": "sync-wifi-configurations",
--    "owners": ["jonmann", "cros-system-services@google.com"],
-+    "owners": ["jonmann", "cros-system-services@9oo91e.qjz9zk"],
-     "expiry_milestone": 85
-   },
-   {
-@@ -4050,17 +4050,17 @@
-   },
-   {
-     "name": "tab-groups",
--    "owners": [ "chrome-desktop-ui-seattle@google.com", "bsep" ],
-+    "owners": [ "chrome-desktop-ui-seattle@9oo91e.qjz9zk", "bsep" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "tab-groups-collapse",
--    "owners": [ "chrome-desktop-ui-seattle@google.com", "xialinyan" ],
-+    "owners": [ "chrome-desktop-ui-seattle@9oo91e.qjz9zk", "xialinyan" ],
-     "expiry_milestone": 86
-   },
-   {
-     "name": "tab-groups-feedback",
--    "owners": [ "chrome-desktop-ui-seattle@google.com", "xialinyan" ],
-+    "owners": [ "chrome-desktop-ui-seattle@9oo91e.qjz9zk", "xialinyan" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -4100,12 +4100,12 @@
-     },
-   {
-     "name": "texture-layer-skip-wait-for-activation",
--    "owners": [ "fserb@chromium.org", "aaronhk@chromium.org" ],
-+    "owners": [ "fserb@ch40m1um.qjz9zk", "aaronhk@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-     "name": "tint-gl-composited-content",
--    "owners": [ "chromeos-gfx@google.com" ],
-+    "owners": [ "chromeos-gfx@9oo91e.qjz9zk" ],
-     // This flag is used for QA & development on ChromeOS, which has no way to
-     // customize switches.
-     "expiry_milestone": -1
-@@ -4127,7 +4127,7 @@
-   },
-   {
-     "name": "top-chrome-touch-ui",
--    "owners": [ "pbos", "chrome-desktop-ui-sea@google.com" ],
-+    "owners": [ "pbos", "chrome-desktop-ui-sea@9oo91e.qjz9zk" ],
-     // This flag is used to easily swap into touch-mode for UI development where
-     // the UI differs significantly between touch/non-touch modes. This is
-     // exposed in chrome://flags to allow QA and UXers to verify touch-related
-@@ -4161,14 +4161,14 @@
-   },
-   {
-     "name": "translate-android-manual-trigger",
--    "owners": [ "anthonyvd", "frechette", "chrome-language@google.com" ],
-+    "owners": [ "anthonyvd", "frechette", "chrome-language@9oo91e.qjz9zk" ],
-     // This flag is used to force manual Translate IPH to trigger on Android,
-     // which has no way to set command-line flags.
-     "expiry_milestone": -1
-   },
-   {
-     "name": "translate-force-trigger-on-english",
--    "owners": [ "anthonyvd", "frechette", "chrome-language@google.com" ],
-+    "owners": [ "anthonyvd", "frechette", "chrome-language@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
-@@ -4198,7 +4198,7 @@
-   },
-   {
-     "name": "turn-off-streaming-media-caching",
--    "owners": [ "shawnpi@microsoft.com" ],
-+    "owners": [ "shawnpi@m1cr050ft.qjz9zk" ],
-     "expiry_milestone": 86
-   },
-   {
-@@ -4247,7 +4247,7 @@
-   },
-   {
-     "name": "updated_cellular_activation_ui",
--    "owners": [ "azeemarshad", "khorimoto", "vecore", "cros-system-services@google.com" ],
-+    "owners": [ "azeemarshad", "khorimoto", "vecore", "cros-system-services@9oo91e.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-@@ -4257,12 +4257,12 @@
-   },
-   {
-     "name": "usage-stats",
--    "owners": [ "pnoland", "chromeshine@google.com" ],
-+    "owners": [ "pnoland", "chromeshine@9oo91e.qjz9zk" ],
-     "expiry_milestone": 80
-   },
-   {
-     "name": "use-angle",
--    "owners": [ "angle-team@google.com" ],
-+    "owners": [ "angle-team@9oo91e.qjz9zk" ],
-     // This flag is used by certain customers to set ANGLE to use its OpenGL
-     // backend on Windows. Its usage is small enough that it isn't worth
-     // promoting this to a chrome://settings entry, but it needs to be readily
-@@ -4277,7 +4277,7 @@
-   },
-   {
-     "name": "use-fake-device-for-media-stream",
--    "owners": [ "mcasas", "chromeos-gfx@google.com" ],
-+    "owners": [ "mcasas", "chromeos-gfx@9oo91e.qjz9zk" ],
-     // This flag is used for ChromeOS media testing to mock a source device.
-     "expiry_milestone": -1
-   },
-@@ -4346,7 +4346,7 @@
-   },
-   {
-     "name": "wallet-service-use-sandbox",
--    "owners": [ "jsaul@google.com", "payments-autofill-team@google.com" ],
-+    "owners": [ "jsaul@9oo91e.qjz9zk", "payments-autofill-team@9oo91e.qjz9zk" ],
-     // This flag is used by testing teams to run Google Payments calls against
-     // the development server environment.
-     "expiry_milestone": -1
-@@ -4393,12 +4393,12 @@
-   },
-   {
-     "name": "webxr-incubations",
--    "owners": [ "//third_party/blink/renderer/modules/xr/OWNERS", "xr-dev@chromium.org" ],
-+    "owners": [ "//third_party/blink/renderer/modules/xr/OWNERS", "xr-dev@ch40m1um.qjz9zk" ],
-     "expiry_milestone": 85
-   },
-   {
-     "name": "webxr-runtime",
--    "owners": [ "//third_party/blink/renderer/modules/xr/OWNERS", "xr-dev@chromium.org" ],
-+    "owners": [ "//third_party/blink/renderer/modules/xr/OWNERS", "xr-dev@ch40m1um.qjz9zk" ],
-     // This flag allows QA and Developers to force running on a particular
-     // runtime, even if ordinarily Chrome would prefer a different runtime for
-     // the particular hardware. Useful to debug user issues or multiple runtimes
-@@ -4407,18 +4407,18 @@
-   },
-   {
-     "name": "win-use-hybrid-spellchecker",
--    "owners": [ "gujen@google.com", "chrome-language@google.com" ],
-+    "owners": [ "gujen@9oo91e.qjz9zk", "chrome-language@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "win-use-native-spellchecker",
--    "owners": [ "gujen@google.com", "chrome-language@google.com" ],
-+    "owners": [ "gujen@9oo91e.qjz9zk", "chrome-language@9oo91e.qjz9zk" ],
-     "expiry_milestone": 88
-   },
-   {
-     "name": "zero-copy-video-capture",
--    "owners": [ "chromeos-camera-eng@google.com",
--                "chromeos-gfx-video@google.com" ],
-+    "owners": [ "chromeos-camera-eng@9oo91e.qjz9zk",
-+                "chromeos-gfx-video@9oo91e.qjz9zk" ],
-     "expiry_milestone": 90
-   },
-   {
 diff --git a/chrome/browser/importer/edge_importer_browsertest_win.cc b/chrome/browser/importer/edge_importer_browsertest_win.cc
 --- a/chrome/browser/importer/edge_importer_browsertest_win.cc
 +++ b/chrome/browser/importer/edge_importer_browsertest_win.cc

+ 94 - 55
build/patches/Block-gateway-attacks-via-websockets.patch

@@ -2,19 +2,19 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
 Date: Tue, 28 Jul 2020 12:28:58 +0200
 Subject: Block gateway attacks via websockets
 
-Enable CORS-RFC1918
 ---
  services/network/public/cpp/features.cc       |  2 +-
  .../renderer/core/loader/base_fetch_context.h |  1 +
- .../core/loader/frame_fetch_context.cc        | 20 +++++++++++++
+ .../core/loader/frame_fetch_context.cc        | 18 ++++++++++
  .../core/loader/frame_fetch_context.h         |  1 +
- .../core/loader/worker_fetch_context.cc       | 21 ++++++++++++++
+ .../core/loader/worker_fetch_context.cc       | 19 +++++++++++
  .../core/loader/worker_fetch_context.h        |  1 +
- .../websockets/websocket_channel_impl.cc      |  5 ++++
- .../modules/websockets/websocket_common.cc    | 29 +++++++++++++++++++
+ .../background_fetch_manager.cc               | 34 +++++++++----------
+ .../websockets/websocket_channel_impl.cc      |  5 +++
+ .../modules/websockets/websocket_common.cc    | 27 +++++++++++++++
  .../modules/websockets/websocket_common.h     |  4 +++
- .../platform/runtime_enabled_features.json5   |  1 +
- 10 files changed, 84 insertions(+), 1 deletion(-)
+ .../platform/runtime_enabled_features.json5   |  2 +-
+ 11 files changed, 94 insertions(+), 20 deletions(-)
 
 diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
 --- a/services/network/public/cpp/features.cc
@@ -42,26 +42,24 @@ diff --git a/third_party/blink/renderer/core/loader/base_fetch_context.h b/third
 diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/third_party/blink/renderer/core/loader/frame_fetch_context.cc
 --- a/third_party/blink/renderer/core/loader/frame_fetch_context.cc
 +++ b/third_party/blink/renderer/core/loader/frame_fetch_context.cc
-@@ -763,6 +763,26 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
+@@ -763,6 +763,24 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
    return should_block_request;
  }
  
 +bool FrameFetchContext::ShouldBlockGateWayAttacks(network::mojom::IPAddressSpace requestor_space, const KURL& request_url) const {
-+  if (RuntimeEnabledFeatures::CorsRFC1918Enabled()) {
-+    // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
-+    // all this up to //net and //content in order to have any real impact on
-+    // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
-+    network::mojom::IPAddressSpace target_space =
-+        network::mojom::IPAddressSpace::kPublic;
-+    if (network_utils::IsReservedIPAddress(request_url.Host()))
-+      target_space = network::mojom::IPAddressSpace::kPrivate;
-+    if (SecurityOrigin::Create(request_url)->IsLocalhost())
-+      target_space = network::mojom::IPAddressSpace::kLocal;
++  // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
++  // all this up to //net and //content in order to have any real impact on
++  // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
++  network::mojom::IPAddressSpace target_space =
++      network::mojom::IPAddressSpace::kPublic;
++  if (network_utils::IsReservedIPAddress(request_url.Host()))
++    target_space = network::mojom::IPAddressSpace::kPrivate;
++  if (SecurityOrigin::Create(request_url)->IsLocalhost())
++    target_space = network::mojom::IPAddressSpace::kLocal;
 +
-+    bool is_external_request = requestor_space > target_space;
-+    if (is_external_request)
-+      return true;
-+  }
++  bool is_external_request = requestor_space > target_space;
++  if (is_external_request)
++    return true;
 +
 +  return false;
 +}
@@ -91,26 +89,24 @@ diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.cc b/th
  #include "third_party/blink/renderer/platform/runtime_enabled_features.h"
  #include "third_party/blink/renderer/platform/supplementable.h"
  #include "third_party/blink/renderer/platform/weborigin/security_policy.h"
-@@ -95,6 +96,26 @@ bool WorkerFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
+@@ -95,6 +96,24 @@ bool WorkerFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
    return should_block_request;
  }
  
 +bool WorkerFetchContext::ShouldBlockGateWayAttacks(network::mojom::IPAddressSpace requestor_space, const KURL& request_url) const {
-+  if (RuntimeEnabledFeatures::CorsRFC1918Enabled()) {
-+    // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
-+    // all this up to //net and //content in order to have any real impact on
-+    // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
-+    network::mojom::IPAddressSpace target_space =
-+        network::mojom::IPAddressSpace::kPublic;
-+    if (network_utils::IsReservedIPAddress(request_url.Host()))
-+      target_space = network::mojom::IPAddressSpace::kPrivate;
-+    if (SecurityOrigin::Create(request_url)->IsLocalhost())
-+      target_space = network::mojom::IPAddressSpace::kLocal;
++  // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
++  // all this up to //net and //content in order to have any real impact on
++  // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
++  network::mojom::IPAddressSpace target_space =
++      network::mojom::IPAddressSpace::kPublic;
++  if (network_utils::IsReservedIPAddress(request_url.Host()))
++    target_space = network::mojom::IPAddressSpace::kPrivate;
++  if (SecurityOrigin::Create(request_url)->IsLocalhost())
++    target_space = network::mojom::IPAddressSpace::kLocal;
 +
-+    bool is_external_request = requestor_space > target_space;
-+    if (is_external_request)
-+      return true;
-+  }
++  bool is_external_request = requestor_space > target_space;
++  if (is_external_request)
++    return true;
 +
 +  return false;
 +}
@@ -129,6 +125,50 @@ diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.h b/thi
    bool ShouldBlockFetchByMixedContentCheck(
        mojom::blink::RequestContextType request_context,
        ResourceRequest::RedirectStatus redirect_status,
+diff --git a/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc b/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
+--- a/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
++++ b/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
+@@ -105,24 +105,22 @@ bool ShouldBlockDanglingMarkup(const KURL& request_url) {
+ 
+ bool ShouldBlockGateWayAttacks(ExecutionContext* execution_context,
+                                const KURL& request_url) {
+-  if (RuntimeEnabledFeatures::CorsRFC1918Enabled()) {
+-    network::mojom::IPAddressSpace requestor_space =
+-        execution_context->GetSecurityContext().AddressSpace();
+-
+-    // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
+-    // all this up to //net and //content in order to have any real impact on
+-    // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
+-    network::mojom::IPAddressSpace target_space =
+-        network::mojom::IPAddressSpace::kPublic;
+-    if (network_utils::IsReservedIPAddress(request_url.Host()))
+-      target_space = network::mojom::IPAddressSpace::kPrivate;
+-    if (SecurityOrigin::Create(request_url)->IsLocalhost())
+-      target_space = network::mojom::IPAddressSpace::kLocal;
+-
+-    bool is_external_request = requestor_space > target_space;
+-    if (is_external_request)
+-      return true;
+-  }
++  network::mojom::IPAddressSpace requestor_space =
++      execution_context->GetSecurityContext().AddressSpace();
++
++  // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
++  // all this up to //net and //content in order to have any real impact on
++  // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
++  network::mojom::IPAddressSpace target_space =
++      network::mojom::IPAddressSpace::kPublic;
++  if (network_utils::IsReservedIPAddress(request_url.Host()))
++    target_space = network::mojom::IPAddressSpace::kPrivate;
++  if (SecurityOrigin::Create(request_url)->IsLocalhost())
++    target_space = network::mojom::IPAddressSpace::kLocal;
++
++  bool is_external_request = requestor_space > target_space;
++  if (is_external_request)
++    return true;
+ 
+   return false;
+ }
 diff --git a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
 --- a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
 +++ b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
@@ -163,26 +203,24 @@ diff --git a/third_party/blink/renderer/modules/websockets/websocket_common.cc b
    if (!execution_context->GetContentSecurityPolicyForWorld()
             ->AllowConnectToSource(url_)) {
      state_ = kClosed;
-@@ -135,6 +144,26 @@ WebSocketCommon::ConnectResult WebSocketCommon::Connect(
+@@ -135,6 +144,24 @@ WebSocketCommon::ConnectResult WebSocketCommon::Connect(
    return ConnectResult::kSuccess;
  }
  
 +bool WebSocketCommon::ShouldBlockGateWayAttacks(network::mojom::IPAddressSpace requestor_space, const KURL& request_url) const {
-+  if (RuntimeEnabledFeatures::CorsRFC1918Enabled()) {
-+    // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
-+    // all this up to //net and //content in order to have any real impact on
-+    // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
-+    network::mojom::IPAddressSpace target_space =
-+        network::mojom::IPAddressSpace::kPublic;
-+    if (network_utils::IsReservedIPAddress(request_url.Host()))
-+      target_space = network::mojom::IPAddressSpace::kPrivate;
-+    if (SecurityOrigin::Create(request_url)->IsLocalhost())
-+      target_space = network::mojom::IPAddressSpace::kLocal;
++  // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
++  // all this up to //net and //content in order to have any real impact on
++  // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
++  network::mojom::IPAddressSpace target_space =
++      network::mojom::IPAddressSpace::kPublic;
++  if (network_utils::IsReservedIPAddress(request_url.Host()))
++    target_space = network::mojom::IPAddressSpace::kPrivate;
++  if (SecurityOrigin::Create(request_url)->IsLocalhost())
++    target_space = network::mojom::IPAddressSpace::kLocal;
 +
-+    bool is_external_request = requestor_space > target_space;
-+    if (is_external_request)
-+      return true;
-+  }
++  bool is_external_request = requestor_space > target_space;
++  if (is_external_request)
++    return true;
 +
 +  return false;
 +}
@@ -214,11 +252,12 @@ diff --git a/third_party/blink/renderer/modules/websockets/websocket_common.h b/
 diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
-@@ -386,6 +386,7 @@
+@@ -385,7 +385,7 @@
+       name: "CooperativeScheduling"
      },
      {
-       name: "CorsRFC1918",
-+      status: "stable",
+-      name: "CorsRFC1918",
++      name: "CorsRFC1918"
      },
      {
        name: "CSS3Text",

+ 34 - 0
build/patches/Restore-duet-flags.patch

@@ -0,0 +1,34 @@
+From: csagan5 <32685696+csagan5@users.noreply.github.com>
+Date: Tue, 4 Aug 2020 07:58:21 +0200
+Subject: Restore duet flags
+
+---
+ chrome/browser/flag-metadata.json | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
+--- a/chrome/browser/flag-metadata.json
++++ b/chrome/browser/flag-metadata.json
+@@ -1273,7 +1273,7 @@
+   {
+     "name": "enable-chrome-duet",
+     "owners": [ "mdjones" ],
+-    "expiry_milestone": 82
++    "expiry_milestone": -1
+   },
+   {
+     "name": "enable-chrome-duet-labels",
+@@ -1455,8 +1455,8 @@
+   },
+   {
+     "name": "enable-duet-tabstrip-integration",
+-    "owners": [ "memex-team@google.com" ],
+-    "expiry_milestone": 84
++    "owners": [ "memex-team@9oo91e.qjz9zk" ],
++    "expiry_milestone": -1
+   },
+   {
+     "name": "enable-edu-coexistence",
+-- 
+2.17.1
+

+ 23 - 14
build/patches/Update-i18n-zh_CN-support.patch

@@ -1,12 +1,24 @@
 From: mars <gzhqyz@gmail.com>
-Date: Sun, 2 Aug 2020 00:37:49 +0800
+Date: Wed, 13 May 2020 11:28:04 +0800
 Subject: Update i18n zh_CN support
 
 ---
- .../resources/generated_resources_zh-CN.xtb   |  6 +++++-
- .../android_chrome_strings_zh-CN.xtb          | 21 ++++++++++++++++++-
- 2 files changed, 25 insertions(+), 2 deletions(-)
+ .../app/resources/chromium_strings_zh-CN.xtb   |  3 ++-
+ .../resources/generated_resources_zh-CN.xtb    |  6 +++++-
+ .../android_chrome_strings_zh-CN.xtb           | 18 ++++++++++++++++++
+ 3 files changed, 25 insertions(+), 2 deletions(-)
 
+diff --git a/chrome/app/resources/chromium_strings_zh-CN.xtb b/chrome/app/resources/chromium_strings_zh-CN.xtb
+--- a/chrome/app/resources/chromium_strings_zh-CN.xtb
++++ b/chrome/app/resources/chromium_strings_zh-CN.xtb
+@@ -245,4 +245,5 @@ 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>
+-</translationbundle>
+\ No newline at end of file
++<translation id="9090881409075599658">关于 Bromite</translation>
++</translationbundle>
 diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/resources/generated_resources_zh-CN.xtb
 --- a/chrome/app/resources/generated_resources_zh-CN.xtb
 +++ b/chrome/app/resources/generated_resources_zh-CN.xtb
@@ -24,13 +36,10 @@ diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/res
 diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb
 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb
 +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb
-@@ -994,4 +994,23 @@
- <translation id="981121421437150478">离线</translation>
- <translation id="983192555821071799">关闭所有标签页</translation>
- <translation id="987264212798334818">常规</translation>
--</translationbundle>
-\ No newline at end of file
-+<translation id="5334844597069022743">查看源代码</translation>
+@@ -1011,4 +1011,22 @@
+ <translation id="666268767214822976">当您在地址栏中输入查询内容时,使用联想查询服务显示相关查询和热门网站</translation>
+ <translation id="8283853025636624853">正在同步到 <ph name="SYNC_ACCOUNT_USER_NAME" /></translation>
+ <translation id="8981454092730389528">Google 活动控件</translation>
 +<translation id="9090881409075599658">关于 Bromite</translation>
 +<translation id="9148058034647219655">退出</translation>
 +<translation id="6544149167512551709">保留 Cookies 直到您退出浏览器</translation>
@@ -49,7 +58,7 @@ diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strin
 +<translation id="3544784763752062458">编辑过滤器地址</translation>
 +<translation id="4456370887631736415">过滤器地址</translation>
 +<translation id="8189997785233370573">访问帮助页面</translation>
-+</translationbundle>
---
-2.28.0
+ </translationbundle>
+-- 
+2.17.1